打印

VerilogHDL语法疑问

[复制链接]
1695|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
sukejia|  楼主 | 2008-6-22 20:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
always @(posedge clk or negedge rst)
begin

if(!rst)
  clk_div<=0;
else
  clk_div<=clk_div+1;
end

可在电路上rst是接在VCC上的,按道理else是永远不会执行的??
我想知道为什么这么写啊??求高手帮我解释一下,非常感谢

相关帖子

沙发
crtled| | 2008-6-23 10:26 | 只看该作者

低电平复位,rst肯定接有按键

低电平复位,rst肯定接有按键

使用特权

评论回复
板凳
sukejia|  楼主 | 2008-6-24 11:14 | 只看该作者

谢谢你

是接按键了那在不按按键的时候着段程序就是不工作了是吧?

可是如果我去掉着
if(!rst)
  clk_div<=0;
段程序后,变成
always @(posedge clk or negedge rst)
begin
  clk_div<=clk_div+1;
end
程序再运行就和以前不一样啦,着是为什么??

使用特权

评论回复
地板
dzcn_hh| | 2008-6-26 09:53 | 只看该作者

always语句是无限循环语句

你这样写,只要posedge clk or negedge rst这个条件符合,他就一直会执行clk_div<=clk_div+1;生成锁存器了

使用特权

评论回复
5
zhqinglong| | 2008-6-26 22:30 | 只看该作者

不知理解的对不对

rst接VCC,没有按键时(常态)为高(1),恰恰是在执行else语句!
if(!rst) //意为如果rst=0

使用特权

评论回复
6
jackychao| | 2008-8-23 22:53 | 只看该作者

jacky

顶5楼,一直在执行ELSE语句

使用特权

评论回复
7
shyfish| | 2008-8-29 15:48 | 只看该作者

......

如果没有if(!rst)你的初始化赋值在什么地方啊?
也就是你的clk_div为任意值?
if会发生上电复位时执行

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

30

帖子

0

粉丝