在数字电路理论中,时序逻辑电路是指电路任何时刻的稳态输出不仅取决于当前的输入,还与前一时刻输入形成的状态有关。这跟组合逻辑电路相反,组合逻辑的输出只会跟目前的输入成一种函数关系。换句话说,时序逻辑拥有储存元件(记忆体)来存储信息,而组合逻辑则没有。
从时序逻辑电路中,可以建出两种形式的有限状态机:
- 摩尔型有限状态机:输出只跟内部的状态有关。(因为内部的状态只会在时脉触发边缘的时候改变,输出的值只会在时脉边缘有改变)
- 米利型有限状态机:输出不只跟目前内部状态有关,也跟现在的输入有关系。
时序逻辑因此被用来建构某些形式的电脑的记忆体,延迟跟储存单元,以及有限状态自动机。大部分现实的电脑电路都是混用组合逻辑跟时序逻辑。
同步时序电路中所有存储元件都在时钟脉冲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边沿触发器
- 从触发方式分:
- 电位触发:
- 高电位触发
- 低电位触发
- 边沿触发:
- 上升沿触发
- 下降沿触发
非同步时序逻辑是循序逻辑的普遍本质,但是由于它的弹性关系,他也是设计上困难度最高的。最基本的储存元件是锁存器。锁存器可以在任何时间改变它的状态,依照其他的锁存器讯号的变动,他们新的状态就会被产生出来。非同步电路的复杂度随著逻辑闸的增加,而复杂性也快速的增加,因此他们大部分仅仅使用在小的应用。然而,电脑辅助设计工具渐渐的可以简化这些工作,允许更复杂的设计。
也可能建造出混合的电路,包含有同步的触发器和异步的锁存器(它们都是双稳态元件)。