时序逻辑电路

在数字电路理論中，时序逻辑电路是指电路任何时刻的稳态输出不仅取决于当前的输入，还与前一时刻输入形成的状态有关。這跟組合邏輯電路相反，組合邏輯的輸出只會跟目前的輸入成一種函數關係。換句話說，时序邏輯擁有儲存元件（記憶體）来存储信息，而組合邏輯則没有。 從时序邏輯電路中，可以建出兩種形式的有限狀態機： 摩尔型有限状态机：輸出只跟內部的狀態有關。（因為內部的狀態只會在時脈觸發邊緣的時候改變，輸出的值只會在時脈邊緣有改變） 米利型有限状态机：輸出不只跟目前內部狀態有關，也跟現在的輸入有關係。 时序邏輯因此被用來建構某些形式的電腦的記憶體，延遲跟儲存單元，以及有限状态自动机。大部分現實的電腦電路都是混用組合邏輯跟时序邏輯。 功能特点：电路在某采样周期内的稳态输出Y(n)，不仅取决于该采样周期内的“即刻输入X(n)”，而且还与电路原来的状态Q(n)有关。（通常Q(n)记录了以前若干周期内的输入情况） 结构特点：除含有组合电路外，时序电路必须含有存储信息的有记忆能力的电路：触发器、寄存器、计数器等。 逻辑表达式 输出方程组 { y 1 = f 1 ( x 1 , x 2 , . . . x i , q 1 , q 2 , . . . q k ) y 2 = f 2 ( x 1 , x 2 , . . . x i , q 1 , q 2 , . . . q k ) . . . y j = f j ( x 1 , x 2 , . . . x i , q 1 , q 2 , . . . q k ) {\displaystyle {\begin{cases}y_{1}=f_{1}(x_{1},x_{2},...x_{i},q_{1},q_{2},...q_{k})\\y_{2}=f_{2}(x_{1},x_{2},...x_{i},q_{1},q_{2},...q_{k})\\...\\y_{j}=f_{j}(x_{1},x_{2},...x_{i},q_{1},q_{2},...q_{k})\end{cases}}} 驱动（激励）方程组 { z 1 = g 1 ( x 1 , x 2 , . . . x i , q 1 , q 2 , . . . q k ) z 2 = g 2 ( x 1 , x 2 , . . . x i , q 1 , q 2 , . . . q k ) . . . z j = g j ( x 1 , x 2 , . . . x i , q 1 , q 2 , . . . q k ) {\displaystyle {\begin{cases}z_{1}=g_{1}(x_{1},x_{2},...x_{i},q_{1},q_{2},...q_{k})\\z_{2}=g_{2}(x_{1},x_{2},...x_{i},q_{1},q_{2},...q_{k})\\...\\z_{j}=g_{j}(x_{1},x_{2},...x_{i},q_{1},q_{2},...q_{k})\end{cases}}} 状态（次态）方程组 { q 1 ( n + 1 ) = h 1 ( z 1 , z 2 , . . . z k , q 1 ( n ) , q 2 ( n ) , . . . q k ( n ) ) q 2 ( n + 1 ) = h 2 ( z 1 , z 2 , . . . z k , q 1 ( n ) , q 2 ( n ) , . . . q k ( n ) ) . . . q k ( n + 1 ) = h k ( z 1 , z 2 , . . . z k , q 1 ( n ) , q 2 ( n ) , . . . q k ( n ) ) {\displaystyle {\begin{cases}q_{1_{(n+1)}}=h_{1}(z_{1},z_{2},...z_{k},q_{1_{(n)}},q_{2_{(n)}},...q_{k_{(n)}})\\q_{2_{(n+1)}}=h_{2}(z_{1},z_{2},...z_{k},q_{1_{(n)}},q_{2_{(n)}},...q_{k_{(n)}})\\...\\q_{k_{(n+1)}}=h_{k}(z_{1},z_{2},...z_{k},q_{1_{(n)}},q_{2_{(n)}},...q_{k_{(n)}})\end{cases}}} 按“功能、用途”分为： 寄存器； 计数（分频）器； 顺序（序列）脉冲发生器； 顺序脉冲检测器； 码组变换器；… 按各触发器的“动作特性”分为： 同步时序电路：电路中所有触发器的状态变化同步进行。其时钟方程：CP1= CP2=…= CPK= CP↓（或CP↑）。即：所有CP端联在一起，由CP信号同一有效沿触发。 异步时序电路： 电路中根本没有CP同步信号。 各触发器不是用同一CP脉冲的同一有效沿触发的。 摩尔（Moore）型和米里（Mealy）型 摩尔型：电路的输出Yn，只取决于各触发器的输出Q n，而与外输入X n无关。即：Yn＝F（Q n）。 米里型：电路的输出Yn，不仅取决于各触发器的输出Q n，而且还与外输入X n有关。即：Yn＝F（Q n，X n）。 “完全描述的”和“非完全描述的”含有K个状态变量（K个触发器）的时序电路，最多可描述K个不同状态。 若电路功能必须用个状态来描述，则称之为“完全描述的”（二进制的）； 若只用个状态中的一部分来描述，则称之为“非完全描述的”（非二进制的）。 同步时序电路中所有存储元件都在时钟脉冲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边沿触发器 从触发方式分： 电位触发： 高电位触发 低电位触发 边沿触发： 上升沿触发 下降沿触发 非同步时序邏輯是循序邏輯的普遍本質，但是由於它的彈性關係，他也是設計上困難度最高的。最基本的儲存元件是锁存器。锁存器可以在任何時間改變它的狀態，依照其他的锁存器訊號的變動，他們新的狀態就會被產生出來。非同步電路的複雜度隨著邏輯閘的增加，而複雜性也快速的增加，因此他們大部分僅僅使用在小的應用。然而，電腦輔助設計工具漸漸的可以簡化這些工作，允許更複雜的設計。 也可能建造出混合的電路，包含有同步的触发器和异步的锁存器（它们都是双稳态元件）。 Katz, R, and Boriello, G. Contemporary Logic Design. 2nd ed. Prentice Hall. 2005. ISBN 0-201-30857-6. Zvi Kohavi, Niraj K. Jha. Switching and Finite Automata Theory. 3rd ed. Cambridge University Press. 2009. ISBN 978-0-521-85748-2 V. O. Vasyukevich. (2009). Asynchronous logic elements. Venjunction and sequention — 118 p. 时序收敛