触发器完整复习手册 — 交互演示
触发器完整复习手册 — 交互演示
从 SR 锁存器到负边沿 JK 触发器,包含交互仿真电路,可直接在浏览器中操作每个触发器的输入并观察输出变化。
触发器完整复习手册:从SR锁存器到负边沿JK触发器,包含交互仿真电路
SR 锁存器(基本 RS 触发器)
最基础的存储单元,由两个交叉耦合的与非门(或或非门)构成,无时钟控制,输入直接影响输出。
与非门构成(低电平有效):S̄=0 置位,R̄=0 复位
S̄
R̄
Q
1
Q̄
0
S̄=0, R̄=1:置位状态,Q 被强制为 1,Q̄ 为 0。
| S̄ | R̄ | Q | Q̄ | 功能 |
|---|---|---|---|---|
| 0 | 0 | × | × | 禁止(不定) |
| 0 | 1 | 1 | 0 | 置位 Set |
| 1 | 0 | 0 | 1 | 复位 Reset |
| 1 | 1 | Q | Q̄ | 保持 Hold |
钟控 SR 触发器(同步 SR)
在 SR 锁存器前加入时钟门控,只有 CLK=1 时输入才有效;CLK=0 时输出保持不变。仍存在 S=R=1 的禁止态。
CLK
S
R
Q
0
Q̄
1
CLK=0:时钟门关闭,无论 S、R 如何变化,输出 Q 保持不变。
| CLK | S | R | Q⁺ | 功能 |
|---|---|---|---|---|
| 0 | × | × | Q | 保持 |
| 1 | 0 | 0 | Q | 保持 |
| 1 | 0 | 1 | 0 | 复位 |
| 1 | 1 | 0 | 1 | 置位 |
| 1 | 1 | 1 | × | 禁止! |
D 触发器(数据触发器)
将 S 和 R 合并为一路输入 D,并强制 R = D̄,彻底消除禁止态。在时钟有效沿到来时,Q 直接跟随 D。
正边沿触发 D 触发器,点击"上升沿"模拟时钟触发
D
Q
0
Q̄
1
当前 D=0:修改 D 的值,然后点击"↑ 上升沿"观察 Q 的变化。
| CLK 边沿 | D | Q⁺ | 功能 |
|---|---|---|---|
| ↑ | 0 | 0 | 清零 |
| ↑ | 1 | 1 | 置 1 |
| 非上升沿 | × | Q | 保持 |
特征方程:
Q⁺ = D
优点:无禁止态,逻辑最简洁,广泛用于寄存器、移位寄存器。
缺点:只能透传数据,不能直接实现翻转功能。
Q⁺ = D
优点:无禁止态,逻辑最简洁,广泛用于寄存器、移位寄存器。
缺点:只能透传数据,不能直接实现翻转功能。
JK 触发器(电平/脉冲触发)
将 J 连接到 SR 的 S 端、K 连接到 R 端,并将 J=K=1 的禁止态改为"翻转"功能,是功能最完整的触发器。
脉冲触发型 JK — CLK 高电平期间采样,下降沿更新(主从结构)
J
K
Q
0
Q̄
1
J=0, K=0:保持状态,时钟到来后 Q 不变。
| J | K | Q⁺ | 功能 |
|---|---|---|---|
| 0 | 0 | Q | 保持 |
| 0 | 1 | 0 | 复位 Reset |
| 1 | 0 | 1 | 置位 Set |
| 1 | 1 | Q̄ | 翻转 Toggle |
主从 JK 触发器(Master-Slave)
在 JK 触发器内部采用主从两级结构,彻底解决脉冲触发 JK 的"一次变化"(空翻)问题。CLK=1 时主锁存器采样,CLK↓ 时从锁存器输出,确保每个时钟周期只翻转一次。
主从结构 — 设置 J、K 后点击"CLK 脉冲"观察两级传递
J
K
Qm (主)
0
Q (从/输出)
0
Q̄
1
CLK=1 阶段:主锁存器(Master)打开,采样 J,K 值 → Qm 更新。CLK=0 阶段:主锁存器锁定,从锁存器(Slave)将 Qm 传递到 Q。输出仅在下降沿改变。
两级结构:
Master(主) ← J, K, CLK
↳ CLK=1:透明,采样 J,K
↳ CLK=0:锁存,保持 Qm
Slave(从) ← Qm, Qm̄, CLK̄
↳ CLK=0:透明,跟随 Qm
↳ CLK=1:锁存,输出不变
为什么解决空翻:Master 在 CLK=1 期间只采样一次(第一个边沿锁定的值),即使 J,K 在 CLK=1 期间变化,Qm 也不变。Slave 在下降沿才将 Qm 传递到输出。
Master(主) ← J, K, CLK
↳ CLK=1:透明,采样 J,K
↳ CLK=0:锁存,保持 Qm
Slave(从) ← Qm, Qm̄, CLK̄
↳ CLK=0:透明,跟随 Qm
↳ CLK=1:锁存,输出不变
为什么解决空翻:Master 在 CLK=1 期间只采样一次(第一个边沿锁定的值),即使 J,K 在 CLK=1 期间变化,Qm 也不变。Slave 在下降沿才将 Qm 传递到输出。
时序逻辑:
① CLK↑:Master 透明,采样 J,K → Qm 可能变化
② CLK=1 期间:Master 锁存首次采样值,Qm 固定
③ CLK↓:Master 锁存 → Slave 透明,Qm → Q
④ CLK=0 期间:输出 Q 保持稳定
每次 CLK 脉冲仅产生一次有效输出变化。
① CLK↑:Master 透明,采样 J,K → Qm 可能变化
② CLK=1 期间:Master 锁存首次采样值,Qm 固定
③ CLK↓:Master 锁存 → Slave 透明,Qm → Q
④ CLK=0 期间:输出 Q 保持稳定
每次 CLK 脉冲仅产生一次有效输出变化。
| CLK 阶段 | Master | Slave | J | K | Q⁺ | 功能 |
|---|---|---|---|---|---|---|
| — | 锁存 | 锁存 | 0 | 0 | Q | 保持 |
| — | 锁存 | 锁存 | 0 | 1 | 0 | 复位 |
| — | 锁存 | 锁存 | 1 | 0 | 1 | 置位 |
| — | 锁存 | 锁存 | 1 | 1 | Q̄ | 翻转 |
负边沿 JK 触发器
在 JK 触发器基础上,改为在时钟下降沿(高→低)采样并更新输出。其他时刻输出完全锁定,抗干扰性更强。
设置 J、K 后点击"↓ 下降沿"触发
J
K
Q
0
Q̄
1
J=1, K=0:下降沿到来时执行置位,Q→1。
时序波形(最近 6 次下降沿)
特征方程:Q⁺ = J·Q̄ + K̄·Q
负边沿 vs 正边沿:逻辑功能相同,仅触发时刻不同。符号上,负边沿触发器的 CLK 输入端有一个小圆圈 ○ 表示反相。
J=K=1 时的分频应用:每个下降沿 Q 翻转一次,输出频率 = 时钟频率 ÷ 2,可直接用作二分频器。
负边沿 vs 正边沿:逻辑功能相同,仅触发时刻不同。符号上,负边沿触发器的 CLK 输入端有一个小圆圈 ○ 表示反相。
J=K=1 时的分频应用:每个下降沿 Q 翻转一次,输出频率 = 时钟频率 ÷ 2,可直接用作二分频器。
触发器演化总结
每一步演化都在解决上一代的缺陷,逐步走向功能完整、时序可控。
SR 锁存器
→
钟控 SR
→
D 触发器
→
JK(脉冲)
→
主从 JK
→
负边沿 JK
SR 锁存器
无时钟 · 直接控制 · 存在 S=R=1 禁止态 · 输出随输入实时变化
缺陷:无时序控制,S=R=1 输出不确定
缺陷:无时序控制,S=R=1 输出不确定
钟控 SR 触发器
CLK=1 时有效 · 同步控制 · 仍存在 S=R=1 禁止态
缺陷:高电平期间仍然透明(空翻问题),存在禁止态
缺陷:高电平期间仍然透明(空翻问题),存在禁止态
D 触发器
单输入 · Q⁺=D · 无禁止态 · 边沿触发
解决了禁止态,逻辑简单 · 缺陷:无翻转功能,不能自循环
解决了禁止态,逻辑简单 · 缺陷:无翻转功能,不能自循环
JK 触发器(脉冲/电平触发)
J=K=1 → 翻转 · 功能最全 · 存在"一次变化"问题
消除禁止态,增加翻转 · 缺陷:高电平期间多次翻转(空翻)
消除禁止态,增加翻转 · 缺陷:高电平期间多次翻转(空翻)
主从 JK 触发器(Master-Slave)
两级锁存 · Master 在 CLK=1 采样 · Slave 在 CLK↓ 输出 · 每周期仅一次变化
解决空翻:采样后立即锁定主锁存器 · 缺陷:CLK=1 期间 J,K 抖动会捕获错误值
解决空翻:采样后立即锁定主锁存器 · 缺陷:CLK=1 期间 J,K 抖动会捕获错误值
负边沿 JK 触发器 ← 终点
仅在时钟下降沿采样 · 全功能(保持/置位/复位/翻转) · 无禁止态 · 无空翻
Q⁺ = J·Q̄ + K̄·Q · 可用作二分频器
解决了所有前代缺陷,是最完整的触发器形式
Q⁺ = J·Q̄ + K̄·Q · 可用作二分频器
解决了所有前代缺陷,是最完整的触发器形式
| 触发器 | 时钟 | 输入 | 功能数 | 禁止态 | 空翻 |
|---|---|---|---|---|---|
| SR 锁存器 | 无 | S, R | 3 | 有 | — |
| 钟控 SR | 电平 | S, R | 3 | 有 | 有 |
| D 触发器 | 边沿 | D | 2 | 无 | 无 |
| JK(脉冲) | 脉冲 | J, K | 4 | 无 | 有 |
| 主从 JK | 脉冲(主从) | J, K | 4 | 无 | 无 |
| 负边沿 JK | 下降沿 | J, K | 4 | 无 | 无 |
This post is licensed under
CC BY 4.0
by the author.