fpga心得-第1部分
按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!
学习心得; FPGA
同步复位和异步复位比较
同步复位 sync
异步复位 async
特点
复位信号只有在时钟上升沿到来时才能有效。
无论时钟沿是否到来,只要复位信号有效,就进行复位。
Verilog描述
always@(posedge CLK)
always@(posedge CLK ; negedge Rst_n)
优点
1) 利于仿真器仿真。
2) 因为只有在时钟有效电平到来时才有效,所以可以滤除高于时钟频率的毛刺。
3) 可以使所设计的系统成为100%的同步时序电路,有利于时序分析。
1) 设计相对简单。
2) 因为大多数目标器件库的dff都有异步复位端口,因此采用异步复位可以节省资源。
3) 异步复位信号识别方便,而且可以很方便的使用FPGA的全局复位端口GSR。
缺点
1) 复位信号的有效时长必须大于时钟周期,才能真正被系统识别并完成复位任务。同时还要考虑,诸如:clk skew;组合逻辑路径延时;复位延时等因素。
2)由于大多数的逻辑器件的目标库内的DFF都只有异步复位端口,所以,倘若采用同步复位的话,综合器就会在寄存器的数据输入端口插入组合逻辑,这样就会耗费较多的逻辑资源。
1) 复位信号容易受到毛刺的影响。
2)在复位信号释放(release)的时候容易出现问题。具体就是说:若复位释放刚好在时钟有效沿附近时,很容易使寄存器输出出现亚稳态,从而导致亚稳态。
总结
推荐使用异步复位,同步释放的方式,而且复位信号低电平有效。
一个简单的异步复位的例子
always @ (posedge clk or negedge rst_n)
if(!rst_n) b