|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?注册
x
本帖最后由 ruiruio4 于 2009-10-29 13:25 编辑
CPLD实现功能的板子在仪器里边, 不太可能像我们用的开发板一样,偶尔按一下开关按钮来人工手动复位,所以用了上电复位。可是在VERILOG HDL代码实现上,我是不是就不要对复位端reset 这样的语句(negedge reset)操作,[email=always@ (posedge]always@ (posedge[/email] clk or negedge reset)应该直接该成[email=always@ ( posedge]always@ ( posedge[/email] clk) 呢?
我的考虑不知道是不是太宏观了,觉得在扫描列表信号中,没必要针对复位reset信号扫描了,因为它不可能在上电后有下降沿操作,所以,只这样编写代码:
[email=always@ ( posedge]always @ ( posedge[/email] clk)
begin
if(!reset)
dout<=0;
b<=0;
xxxxxxxxxxx;
xxxxxxxxxxx?
else if ( xxx)
xxxxxxxxxxxx;
end
endmodule
也就是说,对于这种没有手动复位的实现,代码上用同步实现,而非异步。
请高手帮我看看,你们是不是遇到过类似的问题,又是如何编写代码的呢?谢谢!
哎,发完帖子后,发现系统给我的帖子添了什么"[email = ]"东西呀,循环扫描always 扫描信号列表里面只有posedge clk 或者是 posedge clk or negedge reset , |
|