verilog 编写代码的顺序问题

来源:互联网 发布:无印良品淘宝假货 编辑:程序博客网 时间:2024/06/05 19:19

项目中遇到需要3个计数器依次依赖计数

具体如下:puse_cnt==N 触发ck_cnt++;

                    ck_cnt==M      触发f_cnt++;

贴上代码:

但实际出来的波形是这样:


在网上找到了防止FPGA设计综合后优化的文章,转载一下:http://blog.csdn.net/qingfengtsing/article/details/7089236

于是代码变成这样:

结果是一样,计数效果没有出来。


----------------------------------------------------------------------------------------分割线--------------------------------------------------------------------------------------------------------------

好吧,此时怀疑是否代码位置会对结果造成影响,

果断调换位置:


果然如此,贴上最终效果:




PS:看来verilog还是有一定的顺序要求的。

非常讨厌quartus的变量定义和modulesim的变量定义要求,前者不限制位置,后者强制限制位置。

把一堆变量全部放在一个地方,不知道你喜不喜欢,反正我不喜欢!






0 0
原创粉丝点击