在數位電子學中,鎖存器和觸發器是可以存儲狀態信息的電路,這些電路擁有兩個穩定狀態,稱為雙穩定多振動器。這種電路可以透過信號的控制來改變其狀態,並能輸出當前的狀態及其邏輯補數。它是順序邏輯中的基本儲存元件,廣泛應用於計算機、通信及其他許多系統中。
鎖存器和觸發器的主要功能是在數位電路中作為數據儲存元素,每個鎖存器可以儲存一位二進制數據,其中一個狀態代表“1”,而另一个代表“0”,這使得它們在狀態儲存上扮演著重要角色。當在有限狀態機中使用時,輸出和下一狀態不僅取決於當前輸入,還取決於當前狀態及先前輸入的歷史。這些電路也被用來計數脈衝以及將變時號的輸入信號與某一基準時鐘信號進行同步。
由於歷史原因,“觸發器”這個術語通常包含了四種類型:SR(設置-重置)、D(數據)、T(翻轉)和JK等。當前的技術文獻中已經將“觸發器”這一術語專指邊沿觸發的儲存元件,而將“鎖存器”則保留給水平觸發的元件。指示“邊沿觸發”和“水平觸發”的術語可以幫助減少混淆。
1918年,英國物理學家威廉·埃克爾斯與F.W.喬丹共同發明的首個電子鎖存器,名為埃克爾斯-喬丹觸發電路,這一設計對現代電子技術的發展影響深遠。
埃克爾斯和喬丹的電子鎖存器由兩個活性元件(真空管)組成,這一設計在1943年英國的科羅蘇斯解碼電腦中得到了應用。即使在集成電路面世之後,這些電路及其晶體管版本也仍然在計算機中普遍存在。早期的鎖存器被稱為觸發電路或多振動器。文獻顯示,SR、D、T和JK這幾種觸發器的概念首次在1954年的加州大學洛杉磯分校一門有關計算機設計的課程中被詳細討論,隨後同樣的概念出現在蒙哥馬利·菲斯特的書籍《數字計算機的邏輯設計》中。
當提到鎖存器的實現時,透明鎖存器或非同步鎖存器可以圍繞一對交叉耦合的反相元件進行設計。各類真空管、雙極型晶體管、場效應晶體管及反相邏輯閘都可以用於實際電路中。時鐘觸發的觸發器被專門設計為用於同步系統,其在專用時鐘信號的邊緣上忽略其輸入,改變或保持其輸出信號以迎合輸入值的變化。
觸發器的類別可以分為多種類型,例如SR(設定-重置),D(數據),T(翻轉),以及JK等,其中SR鎖存器是最基本的形式。
SR鎖存器的兩個輸入S和R,分別能夠將內部狀態設置為1或重置為0。這個鎖存器可以透過一對交叉耦合的NOR或NAND邏輯閘來構建。在此過程中,鎖存器儲存的位存在於標記為Q的輸出端。這一電路的行為可以通過其特性方程來表述,以獲得“下一”輸出Q_next的值。對於SR鎖存器來說,使用的公式是Q_next = ¬R · Q + ¬R · S,其中¬符號表示邏輯非的操作。
鎖存器的互斥性也促使了JK鎖存器的發展,該鎖存器在接收到輸入組合“11”時會翻轉其輸出,這樣的設計不僅有效地避免了狀態不一致的情況,還提高了數位電路的穩定性。
值得注意的是,K型鎖存器在實際運用中不如K型觸發器常見,這是因為其缺乏一個直接指導翻轉的時鐘信號。
隨著時間的推進,設計者們在鎖存器中添加了額外的邏輯元素,使其擁有條件透明性。這些改良能讓鎖存器在使能信號未驗證時保持不透明狀態。而在多個透明鎖存器連續運作時,如果它們同時處於透明狀態,信號會在這些鎖存器之間傳播。
在當今的電子產品中,鎖存器與觸發器仍然是不可或缺的部分,無論是在大型計算機系統還是微小的嵌入式設備中。你是否想過,這些看似簡單的電路在數位電子學中實際上承擔了多麼重要的角色呢?