Verilog代码优化之for语句
这回来谈谈for语句,硬件里的for语句不像软件那样频繁的使用。一方面是因为for语句的使用是很占用硬件资源的,另一方面是因为在设计中往往是采用时序逻辑设计用到for循环的地方不多。
下面是一个用到for循环设计的代码:
这段代码的用意是在一个时钟周期内计算出13路脉冲信号为高电平的个数,一般人都会感觉这个任务交给for循环来做再合适不过了,但是for循环能完成这个任务吗?
我们来看看仿真的结果:
相信你已经发现问题了,为什么每个时钟周期for循环只执行一次num <= num+1呢?笔者也很困惑,或许综合工具遇到for也无能为力了吧!所以,慎用for语句!
文章评论(0条评论)
登录后参与讨论