數位邏輯與基本元件

鎖存器(latch)

鎖存器是能記住單一位元的最簡單電路——記憶在硬體中第一次出現的地方。訣竅在於回授:拿兩個閘,把每一個的輸出接進另一個的輸入,讓它們互相強化、握住它們穩定下來的值。這就像兩個人各自堅持「是你先說的」:即使原本的提示早已消失,這個迴圈仍讓故事活著。鎖存器儲存一個位元(0 或 1),並一直握住,直到有東西刻意去改變它。

經典的 SR 鎖存器是兩個交叉耦合的 NOR 閘,有一個 Set 輸入和一個 Reset 輸入。給 Set 一個脈衝,輸出鎖定為 1;給 Reset 一個脈衝,鎖定為 0;兩個輸入都閒置時,交叉耦合無限期地握住最後的值。一個更友善的版本是閘控 D 鎖存器:它有一個資料輸入 D 和一個致能輸入。當致能為高時,鎖存器是「透明的」——它的輸出單純跟隨 D;當致能轉低,鎖存器凍結,記住那一瞬間 D 的值。所以 D 鎖存器在致能的控制下捕捉並握住一個位元。

它為何重要與它的問題:鎖存器是一切記憶的概念種子——正反器、暫存器和 SRAM 單元都從這個交叉耦合的想法長出來。但純粹的鎖存器是位準敏感的,意思是它在致能為高的整段期間都保持透明,所以它的輸出在那個窗口裡可能反覆改變。這讓回授密集電路的時序變得難以推理。誠實的修正是邊緣觸發的正反器,它在單一時脈瞬間、而非整段區間內捕捉輸入——這正是為什麼同步設計多半由正反器、而非裸鎖存器構成。

一盞按一下開、按一下關的桌燈,行為就像 SR 鎖存器。輕碰「開」開關,即使放開手,燈仍亮著——狀態被握住了。碰「關」它就保持黑暗。開關動作是瞬間的,但燈記得最後一道命令。輸入結束後仍持續的這份記憶,正是鎖存器所貢獻的。

兩個彼此餵入的閘,在輸入消失後仍握住一個位元——回授就是記憶的誕生。

鎖存器是位準觸發的(致能為高的整段期間都作用);正反器是邊緣觸發的(只在時脈改變的那一瞬間作用)。把兩者搞混是時序錯誤的典型來源——這個區別不是小細節。

又称
閂鎖SR latchD latch位準觸發鎖存器