用verilog写计数器cnt的几点注意事项

1、计数器信号cnt ,除了复位信号,最好有个信号能够使cnt 恢复为初始的计数值,这么做的目的是为了在系统在某种影响下导致跑飞一小段时间,导致cnt 计数到了不合理的值区间,过了这段异常影响后,回到正常工作环境,需要有个信号将cnt 恢复到初始值,重新开始工作。若没有这个信号,就不能自动恢复,需要给芯片的一个复位信号才行。

2、在没有其他特殊的情况下,计数器代码在最后可以加一个如下代码
else
cnt<=0
即在不满足之前所有分支的情况下,让cnt 赋值为0,也是为了保险起见,不然cnt 跑飞

3、在使用计数器的值做比较时,无特殊情况下,比如cnt是由0计数到100的,步长为1,使用比较条件
如,
if(cnt ==100)
cnt<=0;
上诉的这种代码的if中的语句,最好改为if(cnt>=100)
因为当某种异常环境,例如温度过高什么的,导致cnt从99跳变到了101,此时cnt 不会回到0值,导致cnt 跑飞,如果改为>=100,则在计数跳到101,也可以使cnt回到0值,重新计数。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值