请教滤波程序仿真不对,请高手帮忙分析
本帖最后由 fpgaw 于 2010-7-18 11:15 编辑--------------------------------------------------------------------------------
滤波程序仿真结果不对,请大侠帮助分析
module filter(pass,lag,pass_out,lag_out);
input pass,lag;
output pass_out,lag_out;
reg pass_reg,lag_reg;
parameter N=8;
reg count;
reg temp;
always@(pass or lag)
begin
temp=pass | lag ;
end
always@(posedge temp)
begin
if(temp==1)
begin
if(pass==1)
begin
count=count+1;
if(count==5'b10000)
begin
count=N;
pass_reg='b1;
end
else
pass_reg=0;
end
if(lag==1)
begin
count=count-1;
if(count==0)
begin
lag_reg='b1;
count=N;
end
else
lag_reg=0;
end
end
end
assign pass_out=pass_reg;
assign lag_out=lag_reg;
endmodule
Sample Text此程序中,输入超前和滞后两个脉冲,当超前脉冲个数达到8个时,输出一个超前脉冲,当滞后脉冲达到8个时,输出一个滞后脉冲,类似消抖的程序,仿真的结果是count不变,pass_out,lag_out均得不到说得到得脉冲,请大侠帮助分析原因,改如何修改 楼主的代码有冗余逻辑,容易修正.顺便问一下:程序中信号count为什么没有初值?<br>
<br>
仿真结果count应该是不定态吧? 楼主的代码有冗余逻辑,容易修正.顺便问一下:程序中信号count为什么没有初值?<br>
<br>
仿真结果count应该是不定态吧?
页:
[1]