跳到主要内容

组合逻辑与时序逻辑

数字电路按输出是否依赖历史状态,分为组合逻辑与时序逻辑两大类。前者输出仅由当前输入决定,后者则依赖存储的内部状态。

组合逻辑

输出 = f(当前输入),无记忆元件,典型电路如下:

  • 加法器:半加器实现 1 位加法,S = A⊕B, C = A·B;全加器再考虑低位进位。多位串行进位加法器由多个全加器级联,超前进位 可提升速度。
  • 编码器:将 2^n 个输入信号中有效的 1 路编码为 n 位二进制输出(如 8-3 编码器)。
  • 译码器:与编码器相反,将 n 位输入译成 2^n 路互斥输出(如 3-8 译码器),常用于地址选通。
  • 数据选择器 (MUX):在多路输入中按选择信号选 1 路输出,等效可控开关,常用作函数发生器。

时序逻辑:锁存器与触发器

输出 = f(当前输入, 内部状态),含存储元件,依赖时钟同步。

  • SR 锁存器:由两个与非门交叉耦合,S=1,R=0 置 1,R=1,S=0 置 0,同时为 1 非法。
  • D 锁存器:电平敏感,Enable=1 时 D 透传;Enable=0 保持。
  • D 触发器:边沿敏感(常用上升沿),在时钟沿采样 D,常用于寄存器与同步设计。
  • T 触发器:每来一个时钟,T=1 时翻转一次,用于二分频与计数器。
  • JK 触发器:功能最全,J=K=0 保持,J=K=1 翻转,可由 D 触发器 + 反馈实现。

寄存器与移位寄存器

寄存器 是由多个 D 触发器并行组成的 n 位存储单元,通常受同一时钟控制,用于暂存数据、地址或状态字。

移位寄存器 在每个时钟沿将数据左移或右移一位,典型应用:

  • 串入并出 (SIPO):将串行数据转为并行字节,如 UART 接收。
  • 并入串出 (PISO):常用于 UART 发送。
  • 循环移位:用于 CRC 校验、伪随机序列、桶形移位器基础。
4 位右移寄存器初始 1010,串行输入 1
时钟 1: 1101
时钟 2: 1110
时钟 3: 1111
时钟 4: 1111

移位寄存器的级联深度决定延迟,常用于流水线中的数据对齐与串并转换。