在數位電路理論中,序向邏輯電路是指電路任何時刻的穩態輸出不僅取決於當前的輸入,還與前一時刻輸入形成的狀態有關。這跟組合邏輯電路相反,組合邏輯的輸出只會跟目前的輸入成一種函數關係。換句話說,時序邏輯擁有儲存元件(記憶體)來存儲信息,而組合邏輯則沒有。
從時序邏輯電路中,可以建出兩種形式的有限狀態機:
- 摩爾型有限狀態機:輸出只跟內部的狀態有關。(因為內部的狀態只會在時脈觸發邊緣的時候改變,輸出的值只會在時脈邊緣有改變)
- 米利型有限狀態機:輸出不只跟目前內部狀態有關,也跟現在的輸入有關係。
時序邏輯因此被用來建構某些形式的電腦的記憶體,延遲跟儲存單元,以及有限狀態自動機。大部分現實的電腦電路都是混用組合邏輯跟時序邏輯。
同步時序電路中所有存儲元件都在時鐘脈衝CP的統一控制下,用正反器作為存儲元件。幾乎現在所有的時序邏輯都是「同步邏輯」:有一個「時鐘」訊號,所有的內部記憶體('內部狀態')只會在時鐘的邊沿時候改變。在時序邏輯中最基本的儲存元件是正反器。
同步邏輯最主要的優點是它很簡單。每一個電路裡的運算必須要在時鐘的兩個脈衝之間固定的間隔內完成,稱為一個 '時鐘週期'。只有在這個條件滿足下(不考慮其他的某些細節),電路才能保證是可靠的。
同步邏輯也有兩個主要的缺點:
- 時鐘訊號必須要分佈到電路上的每一個正反器。而時鐘通常都是高頻率的訊號,這會導致功率的消耗,也就是產生熱量。即使每個正反器沒有做任何的事情,也會消耗少量的能量,因此會導致廢熱產生。
- 最大的可能時鐘頻率是由電路中最慢的邏輯路徑決定,也就是關鍵路徑。意思就是說每個邏輯的運算,從最簡單的到最複雜的,都要在每一個時脈的周期中完成。一種用來消除這種限制的方法,是將複雜的運算分開成為數個簡單的運算,這種技術稱為「流水線」。這種技術在微處理器中非常的顯著,用來幫處提升現今處理器的時鐘頻率。
正反器是一種具有記憶能力、構成序向邏輯的基本單元電路。一個正反器能「存儲」一位二進制數位信息:「0」或「1」。
- 一個正反器有兩個穩定狀態:
- 「0」狀態:Q=0,=1;
- 「1」狀態:Q=1,=0。
- 正反器(FF)應具有以下功能:
- 在新數據輸入之前(無觸發訊號)時,正反器一直保持原來的狀態(原數據)不變。
- 輸入訊號觸發下,它能從一種狀態轉換為另一種狀態。即:FF能夠「接收」「保持」並「輸出」數位信息。
- 正反器(FF)的分類:
- 從功能分:
- RS正反器(置0、置1正反器)
- JK正反器(多功能正反器)
- D正反器(延遲正反器)
- T正反器(翻轉正反器)
- 從結構分:
- 基本RS正反器
- 同步正反器(時鐘CP-FF)
- 主從正反器
- 維持-阻塞正反器(WZ-FF)
- CMOS邊沿正反器
- 從觸發方式分:
- 電位觸發:
- 高電位觸發
- 低電位觸發
- 邊沿觸發:
- 上升沿觸發
- 下降沿觸發
非同步時序邏輯是循序邏輯的普遍本質,但是由於它的彈性關係,他也是設計上困難度最高的。最基本的儲存元件是閂鎖。閂鎖可以在任何時間改變它的狀態,依照其他的閂鎖訊號的變動,他們新的狀態就會被產生出來。非同步電路的複雜度隨著邏輯閘的增加,而複雜性也快速的增加,因此他們大部分僅僅使用在小的應用。然而,電腦輔助設計工具漸漸的可以簡化這些工作,允許更複雜的設計。
也可能建造出混合的電路,包含有同步的正反器和異步的閂鎖(它們都是雙穩態元件)。