同步復位和異步復位二者各自的優缺點
一、同步復位:當時鐘上升沿檢測到復位信號,執行復位操作(有效的時鐘沿是前提)。
always @ ( posedge clk );
1.1 優點:
a、有利於仿真器的仿真;
b、可以使所設計的系統成爲 100% 的同步時序電路,有利於時序分析,而且可綜合出較高的 Fmax;
c、由於只在時鐘有效電平到來時纔有效,所以可以濾除高於時鐘頻率的復位毛刺。
1.2 缺點:
a、復位信號的有效時長必須大於時鐘週期,才能真正被系統識別並完成復位任務。同時還要考慮諸如 clk skew 、組合邏輯路徑延時 、復位延時等因素(所以復位信號有時需要脈衝展寬,用以保證時鐘有效期間有足夠的復位寬度);
b、由於大多數的邏輯器件的目標庫內的 DFF 都只有異步復位端口,所以,倘若採用同步復位的話,綜合器就會在寄存器的數據輸入端口插入組合邏輯,這樣就會一方面額外增加FPGA內部的邏輯資源,另一方面也增加了相應的組合邏輯門時延。
二、異步復位:它是指無論時鐘沿是否到來,只要復位信號有效,就對系統進行復位。
always @ ( posedge clk or negedge rst_n );