先用现代数字设计视角建立清晰主线,再把教材中的写法放回这套框架中解释。

总体框架

flowchart TD
 A[1 bit 存储单元] --> B[按更新时间分类]
 A --> C[按状态转移功能分类]
 A --> D[按内部结构分类]

 B --> B1[Latch: 电平敏感]
 B --> B2[Flip-Flop: 边沿敏感]

 C --> C1[SR]
 C --> C2[D]
 C --> C3[JK]
 C --> C4[T]

 D --> D1[交叉耦合门]
 D --> D2[门控锁存器]
 D --> D3[主从结构]
 D --> D4[脉冲锁存结构]
分类维度关注的问题典型分类
更新时间什么时候允许状态变化?电平敏感、边沿敏感
状态功能下一状态 Q+Q^+ 怎么算?SR、D、JK、T
内部结构电路怎么搭出来?基本锁存器、门控锁存器、主从结构、脉冲结构

第一部分:分类方式

2. Latch 和 Flip-Flop

名称中文常用名敏感方式行为
latch锁存器电平敏感使能有效期间,输入可能影响输出
flip-flop触发器边沿敏感只在时钟边沿采样输入

3. 电平敏感和边沿敏感

类型有效时间输入什么时候影响输出典型器件
电平敏感一整个高电平或低电平期间有效电平期间都可能影响输出D latch、SR latch
边沿敏感上升沿或下降沿附近只在边沿采样一次D flip-flop、JK flip-flop、T flip-flop

示意图:

电平敏感 latch:

EN: ___--------___
 ↑↑↑↑
 这整段时间透明


边沿敏感 flip-flop:

CLK: ___----____

 只在这里采样

4. 功能分类:SR、D、JK、T

这些名字描述的是:

Q 的下一状态 Q⁺ 如何由输入和当前 Q 决定
类型输入主要功能核心方程
SRS、R置位、复位、保持Q+=S+RQQ^+ = S + \overline{R}Q
DD直接装入数据Q+=DQ^+ = D
JKJ、K保持、置位、复位、翻转Q+=JQ+KQQ^+ = J\overline{Q} + \overline{K}Q
TT保持、翻转Q+=TQQ^+ = T \oplus Q

锁存器与触发器结构对比

第二部分:各种器件详解

5. SR 锁存器

5.1 名字含义

符号英文含义
SSet置 1
RReset置 0

SR 锁存器是最基础的 1 bit 存储结构。

5.2 功能表

默认讨论高电平有效 SR 锁存器:

SRQ+Q^+功能
00QQ保持
010复位
101置位
11非法禁止

5.3 特性方程

Q+=S+RQQ^+ = S + \overline{R}Q

附加条件:

SR=0SR = 0

也就是:

S 和 R 不能同时为 1

5.4 结构示意

以高电平有效 NOR 型 SR 锁存器为例:

 ┌─────┐
 R ────▶│ NOR │──── Q
 └──┬──┘

 │ feedback

 ┌─────┐
 S ────▶│ NOR │──── Q'
 └─────┘

SR latch = 两个互相反馈的逻辑门

6. 门控 SR 锁存器

普通 SR 锁存器会随时响应输入。 为了控制它什么时候响应,需要加入使能信号 ENEN

6.1 结构关系

S=ENSS' = EN \cdot S R=ENRR' = EN \cdot R

示意图:

S ──┬── AND ── S'
EN ─┘

R ──┬── AND ── R'
EN ─┘

S', R' 再进入 SR latch

6.2 功能表

ENSRQ+Q^+功能
0xxQQ保持
100QQ保持
1010复位
1101置位
111非法禁止

6.3 重点

项目内容
类型latch
敏感方式电平敏感
本质SR latch 外面加 EN 控制
问题仍然有 S=R=1S=R=1 的非法输入
教材中可能叫法门控 SR 锁存器、电平触发 SR 触发器

7. D 锁存器

D 锁存器的想法是:只给一个数据输入 DD,避免 SR 的非法状态。

7.1 从 SR 得到 D

令:

S=DS = D R=DR = \overline{D}

于是:

DSRQ+Q^+
0010
1101

这样永远不会出现:

S=R=1S=R=1

所以 D 锁存器消除了 SR 锁存器的非法输入。

7.2 重点

项目内容
类型latch
敏感方式电平敏感
输入D、EN
解决的问题消除了 SR 的非法输入
行为EN 有效期间,Q 可能跟随 D
教材中可能叫法D 锁存器、电平触发 D 触发器

8. D 触发器

D flip-flop 是现代数字电路中最常用的触发器。

8.1 D latch 和 D flip-flop 对比

器件更新时间方程关键区别
D latchEN 有效电平期间Q+=DQ^+ = D电平敏感
D flip-flopCLK 边沿Q+=DQ^+ = D边沿敏感

注意:

它们的状态功能都可以写成 Q⁺ = D,
区别主要是"什么时候装入 D"。

8.2 正边沿 D 触发器

时刻行为
非上升沿Q 保持
CLK 上升沿Q 采样 D

可以写成:

Q+=DQ^+ = D

但要补充条件:

只在 CLK 上升沿更新

8.3 主从结构理解

D flip-flop 可以概念性地理解为两个 D latch 串联:

D → Master latch → Slave latch → Q
 ┌────────────┐ ┌────────────┐
D ────▶ │ Master │ ───▶ │ Slave │ ───▶ Q
 │ D latch │ │ D latch │
 └────────────┘ └────────────┘
 ▲ ▲
 │ │
 CLK CLK'

一种典型过程:

CLKMaster latchSlave latchQ
1打开,接收 D关闭,保持不变
0关闭,保持打开,更新改变

从外面看,Q 只在时钟翻转附近更新,因此表现为边沿触发。

9. JK 触发器

JK 可以看成改良版 SR。

SR 的问题是:

S = R = 1 非法

JK 的改进是:

J = K = 1 时规定为翻转

9.1 功能表

JKQ+Q^+功能
00QQ保持
010复位
101置位
11Q\overline{Q}翻转

9.2 特性方程

Q+=JQ+KQQ^+ = J\overline{Q} + \overline{K}Q

9.3 重点

项目内容
类型flip-flop
敏感方式通常作为边沿敏感或脉冲 / 主从结构来讨论
优点功能最全
功能保持、置位、复位、翻转
教学意义很适合讲触发器之间的转换
工程地位现代 RTL 中不如 D flip-flop 常用

10. T 触发器

T 是 Toggle,意思是翻转。

10.1 功能表

TQ+Q^+功能
0QQ保持
1Q\overline{Q}翻转

10.2 特性方程

Q+=TQQ^+ = T \oplus Q

也可以写成:

Q+=TQ+TQQ^+ = \overline{T}Q + T\overline{Q}

10.3 重点

项目内容
类型flip-flop
输入T
功能控制是否翻转
常见用途计数器、分频器

第三部分:教材中的分类放到这套框架中

教材叫法与现代理解对照

11. 三个分类维度的关系

教材同时混用了三个分类维度,造成了很多困惑。这一节把它们的关系理清楚。

11.1 三个维度分别是什么

维度回答的问题典型分类
触发方式什么时候允许状态变化?电平触发、边沿触发、脉冲触发
逻辑功能下一状态 Q+Q^+ 怎么算?SR、D、JK、T
内部结构电路怎么实现?基本锁存器、门控锁存器、主从结构、脉冲结构

11.2 为什么教材会造成困惑

教材的讲法是:

  1. 先讲最基础结构:SR 锁存器
  2. 再按触发方式讲:电平触发、边沿触发、脉冲触发
  3. 又按逻辑功能讲:SR、JK、T、D

于是会造成一种错觉:

电平触发下面有 SR 和 D;
边沿触发下面只有 D;
脉冲触发下面有 SR 和 JK;
逻辑功能下面又有 SR、JK、T、D。

但正确理解应该是:

  • 电平 / 边沿 / 脉冲 是什么时候更新
  • SR / D / JK / T 是更新成什么
  • 门控 / 主从 / 脉冲结构 是怎么实现

这三个维度是互相独立的,可以自由组合。

11.3 更清晰的二维整理方式

把”触发方式”和”逻辑功能”分开排成二维表:

逻辑功能 \ 控制方式电平敏感 latch边沿敏感 flip-flop脉冲 / 主从实现
SRSR latch、gated SR latchedge-triggered SR FFpulse / master-slave SR FF
DD latchD FFpulse D structure
JKJK latch 较少强调edge-triggered JK FFpulse / master-slave JK FF
TT latch 较少强调T FFpulse / master-slave T FF

这个表最重要。它说明:

SR、D、JK、T 可以和不同控制方式组合。 教材只是选了一部分典型器件来讲,不代表其他组合不存在。

12. 教材叫法与现代视角对照表

教材中的说法现代视角下更推荐的理解说明
SR 锁存器SR latch最基础的双稳态存储结构
门控 SR 锁存器gated SR latchSR latch 外面加 EN 控制
电平触发的 SR 触发器level-sensitive SR latch传统教材把它叫”触发器”,现代更倾向叫 latch
电平触发的 D 触发器D latchEN / CLK 有效电平期间透明
边沿触发的 D 触发器D flip-flop只在时钟边沿采样 D
脉冲触发的 SR 触发器pulse-triggered / master-slave SR flip-flop内部可能用主从或脉冲方式,外部效果接近边沿触发
脉冲触发的 JK 触发器pulse-triggered / master-slave JK flip-flop教材常用 JK 讲脉冲 / 主从,因为 JK 功能更全
按逻辑功能分 SR、JK、T、DSR、JK、T、D 是状态转移功能分类和电平 / 边沿 / 脉冲不是同一维度

13. 脉冲触发和边沿触发的关系

类型本质有效时间你可以怎么想
电平触发门打开一整段电平时间较长门开着,输入能进来
脉冲触发门只打开一个很窄的时间窗口很短一段时间门快速开一下又关上
边沿触发理想化为只在边沿采样一次一个时刻拍一张照片
三个分类维度与结构演化

第四部分:互相转化

14. 从 SR latch 演化出其他器件

flowchart TD
 A[基本 SR latch] --> B[门控 SR latch]
 B --> C[D latch]
 C --> D[D flip-flop]

 D --> E[D = T ⊕ Q<br/>T 功能]
 D --> F[D = JQ' + K'Q<br/>JK 功能]
 D --> G[D = S + R'Q<br/>SR 功能]

文字版:

SR latch
→ gated SR latch
→ D latch
→ D flip-flop
→ 用 D flip-flop + 组合逻辑实现 SR / JK / T

15. 用 JK 触发器变成其他触发器

JK 功能最全,所以可以通过约束输入变成 SR、D、T。

15.1 JK 变 SR

令:

J=SJ = S K=RK = R

注意:用 JK 模拟 SR 时,必须禁止 S = R = 1

15.2 JK 变 D

D 触发器要求:

D = 0 → Q⁺ = 0
D = 1 → Q⁺ = 1

JK 中:

置 0:J = 0, K = 1
置 1:J = 1, K = 0

所以令:

J=DJ = D K=DK = \overline{D}

15.3 JK 变 T

T 触发器要求:

T = 0:保持
T = 1:翻转

JK 中:

J = K = 0:保持
J = K = 1:翻转

所以令:

J=K=TJ = K = T

15.4 JK 转换总表

目标器件JK 输入连接方式注意
SRJ=S, K=RJ=S,\ K=R禁止 S=R=1S=R=1
DJ=D, K=DJ=D,\ K=\overline{D}无非法状态
TJ=K=TJ=K=TT=1 时翻转

16. 用 D 触发器实现其他功能

现代工程里更常用这种思路:

D flip-flop + 组合逻辑 = 其他触发器功能

因为 D flip-flop 本身满足:

Q+=DQ^+ = D

所以只要把目标触发器的 Q+Q^+ 接到 D 输入即可。

16.1 D 实现 SR

SR 需要:

Q+=S+RQQ^+ = S + \overline{R}Q

所以令:

D=S+RQD = S + \overline{R}Q

并且仍然要求:

SR=0SR = 0

16.2 D 实现 JK

JK 需要:

Q+=JQ+KQQ^+ = J\overline{Q} + \overline{K}Q

所以令:

D=JQ+KQD = J\overline{Q} + \overline{K}Q

16.3 D 实现 T

T 需要:

Q+=TQQ^+ = T \oplus Q

所以令:

D=TQD = T \oplus Q

结构示意:

 ┌───────┐
T ─────▶│ XOR │──── D ───▶ DFF ───▶ Q
Q ─────▶│ │ │
 └───────┘ │
 ▲ │
 └─────────────────┘

16.4 D 实现其他触发器总表

目标功能目标方程D 输入接什么
DQ+=DQ^+ = DDD
SRQ+=S+RQQ^+ = S + \overline{R}QS+RQS + \overline{R}Q
JKQ+=JQ+KQQ^+ = J\overline{Q} + \overline{K}QJQ+KQJ\overline{Q} + \overline{K}Q
TQ+=TQQ^+ = T \oplus QTQT \oplus Q

第五部分:总表整理

17. 器件对比总表

器件类型敏感方式输入特性方程主要用途
SR latch锁存器直接反馈 / 电平敏感S、RQ+=S+RQQ^+ = S+\overline{R}Q基础存储
gated SR latch锁存器EN 电平敏感S、R、ENEN=1 时按 SR 工作可控 SR 存储
D latch锁存器EN 电平敏感D、ENQ+=END+ENQQ^+=EN\cdot D+\overline{EN}\cdot Q电平透明存储
D flip-flop触发器边沿敏感D、CLKQ+=DQ^+=D寄存器
JK flip-flop触发器边沿敏感 / 脉冲实现J、K、CLKQ+=JQ+KQQ^+=J\overline{Q}+\overline{K}Q功能转换
T flip-flop触发器边沿敏感T、CLKQ+=TQQ^+=T\oplus Q计数器、分频器

18. 名字含义总表

名称英文名字含义核心想法
SRSet-Reset置位 / 复位直接控制 Q 置 1 或置 0
DData数据把 D 存进去
JKJ-K改良版 SRJ=K=1J=K=1 时翻转
TToggle翻转控制是否翻转
latchLatch锁住、扣住电平有效期间透明
flip-flopFlip-Flop状态翻转器件边沿采样并保持

19. 方程总表

器件特性方程约束
SRQ+=S+RQQ^+ = S + \overline{R}QSR=0SR=0
DQ+=DQ^+ = D
JKQ+=JQ+KQQ^+ = J\overline{Q} + \overline{K}Q
TQ+=TQQ^+ = T \oplus Q
D latchQ+=END+ENQQ^+ = EN\cdot D+\overline{EN}\cdot Q
gated SR latchEN=1 时:Q+=S+RQQ^+ = S+\overline{R}QSR=0SR=0