您的位置:首页 > 其它

Verilog学习笔记(三):计数器的设计

2018-02-14 11:58 1256 查看

计数器

●同步计数器:所有寄存器共享一个时钟
●异步计数器(行波计数器):不断地分频
         下图就是一个行波计数器的实例:



example:5-bit up-by-one down-by-two counter


小结:上述代码实现的就是最简单的同步计数器。
Example: 用LFSR(线性反馈移位寄存器)实现的13倍分频计数器●XNOR 4bit LFSR设计:



●XNOR 4bit LFSR状态转移图示(16进制):
0->2->6->e->d->b->7->c->9->3->4->a->5->8->1->0
         从e开始,到0结束,即可实现13个时钟周期的计数
●代码:



●仿真结果:



Example:用行波计数器设计16倍分频器●代码:



小结:在代码的最后有一个和时钟重新同步的过程,左边的代码写到了Div16,而右边的图只画到了Div4。
Example: 用行波计数器设计13倍分频器


小结:使用行波计数器的好处是在电路比较简单的情况下,计数器的值还会按顺序增加(用移位寄存器的话计数器的值不是按顺序增加的),不好的地方是D触发器之间数据传输会有延迟,以至于最后还需要与时钟重新同步,如果累计延迟超过一个时钟周期就会出问题。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Verilog 计数器设计