作者:電子工程師小李
1)鎖存器
鎖存器(latch)是電平觸發的存儲單元,數據存儲的動作取決于輸入時鐘(或者使能)信號的電平值,僅當鎖存器處于使能狀態時,輸出才會隨著數據輸入發生變化。
簡單地說,鎖存器有兩個輸入,一個是有效信號EN,一個是輸入數據信號DATA_IN,有一個輸出Q,它的功能就是在EN有效的時候把DATA_IN的值傳給Q,也就是鎖存的過程。
2)觸發器
觸發器(Flip-Flop,簡寫為FF)也叫雙穩態門,又稱雙穩態觸發器,是一種可以在兩種狀態下運行的數字邏輯電路。觸發器一直保持它們的狀態,直到它們收到輸入脈沖,又稱為觸發。當收到輸入脈沖時,觸發器輸出就會根據規則改變狀態,然后保持這種狀態直到收到下一個觸發。觸發器對脈沖邊沿敏感,其狀態只在時鐘脈沖的上升沿或下降沿的瞬間改變。
3)鎖存器與觸發器的區別
鎖存器和觸發器是具有記憶功能的二進制存儲器件,是組成各種時序邏輯電路的基本器件之一。其區別在于,latch同其所有的輸入信號相關,當輸入信號變化時latch就變化,沒有時鐘端;flip-flop受時鐘控制,只有在時鐘觸發時才采樣當前的輸入,產生輸出。當然,因為latch和flip-flop都是時序邏輯,所以輸出不但同當前的輸入相關還同上一時間的輸出相關。
(1)latch由電平觸發,非同步控制。在使能信號有效時latch相當于通路,在使能信號無效時latch保持輸出狀態。DFF由時鐘沿觸發,同步控制。
(2)latch對輸入電平敏感,受布線延遲影響較大,很難保證輸出沒有毛刺產生,而DFF則不易產生毛刺。
(3)如果使用門電路來搭建latch和DFF,則latch消耗的門資源比DFF要少,這是latch比DFF優越的地方。所以,在ASIC中使用latch的集成度比DFF高,但在FPGA中正好相反,因為FPGA中沒有標準的latch單元,但有DFF單元,一個LATCH需要多個LE才能實現。latch是電平觸發,相當于有一個使能端,且在激活之后(在使能電平有效的時候)隨輸入而變化。在非使能狀態下latch保持原來的信號,這就可以看出其和flip-flop的差別,其實很多時候latch是不能代替FF的。
(4)latch將靜態時序分析變得極為復雜。
一般的設計規則是在絕大多數設計中避免產生latch。latch會讓設計的時序混亂,并且它的隱蔽性很強,很難檢查。latch最大的危害在于不能過濾毛刺,這對于下一級電路是極其危險的。所以,只要能用D觸發器的地方,就不用latch。
有些地方沒有時鐘,也只能用latch了。比如現在將一個clk接到latch的使能端(假設是高電平使能),這樣需要的setup時間,就是數據在時鐘的下降沿之前需要的時間,但是如果是一個DFF,那么setup時間就是在時鐘的上升沿需要的時間。這就說明如果數據晚于控制信號的情況下,只能用latch,這種情況就是,前面所提到的latch timing borrow。基本上相當于借了一個高電平時間。也就是說,latch借的時間也是有限的。
編輯:hfy
-
鎖存器
+關注
關注
8文章
906瀏覽量
41552 -
觸發器
+關注
關注
14文章
2000瀏覽量
61219
發布評論請先 登錄
相關推薦
評論