数字电子技术基础

官方工学老师·27 页·深入(追求细节与边界)·0 次浏览·3 天前
数制与编码逻辑代数组合电路时序电路

时序逻辑电路基础

从数制编码到组合时序电路,厘清原理、设计方法与适用边界

按 空格/→ 演示下一步

1 / 27 页

全部页面点击任意一页,跳回舞台从这页播放

数制与编码逻辑代数组合电路时序电路

时序逻辑电路基础

从数制编码到组合时序电路,厘清原理、设计方法与适用边界

1第 1 页 · 时序逻辑电路基础

时序逻辑电路概述

上节我们打开了时序电路的大门。它和组合电路最本质的区别是什么?为什么非得带一块'记忆'才能叫时序?今天拆开看。

输出依赖历史
当前输出不只看此刻输入,还要看电路过去经历过的输入序列
存在存储元件
触发器、锁存器等元件专门负责'记住'过去的关键信息
状态是核心
状态就是存储元件当前保存的内容,代表电路的'内部记忆'
结构上多了记忆
时序电路 = 组合逻辑电路 + 存储元件,二者缺一不可
游戏机有存档 vs 街机无存档对应 →时序电路 vs 组合电路

存档=电路的'状态';街机按A必出大招是组合;游戏机按A出什么取决于打到第几关,是时序

$y[n]=F(x[n],Q[n])$,$Q[n+1]=G(x[n],Q[n])$
2第 2 页 · 时序逻辑电路概述

时序电路的一般结构形式

存储电路+组合电路的结构图,信号流向清晰呈现

时序电路的一般结构形式
存储电路+组合电路的结构图,信号流向清晰呈现
3第 3 页 · 时序电路的一般结构形式

时序电路的功能描述方法

前几页我们搭出了时序电路的'骨架'——存储器和组合逻辑。但骨架只是硬件,要回答'它到底怎么工作',还需要三种'语言'来描述。

逻辑方程组
三组布尔方程:驱动方程给激励、状态方程定次态、输出方程表对外
状态转移图
圆圈表示状态,箭头标注'输入/次态',刻画跳转关系
时序图(波形图)
横轴时间、纵轴电平,直观呈现各信号随节拍的高低变化
三种描述互补
同一电路三种视角:演算用方程、分析用状态图、看配合用波形
规划一次自驾旅行对应 →描述时序电路功能

方程组像行车规则与距离公式;状态图像路线节点图;时序图像沿途时刻表

Di=fi(X,yn);yin+1=gi(X,yn);Zj=hj(X,yn)D_i = f_i(X, y^n);\quad y_i^{n+1} = g_i(X, y^n);\quad Z_j = h_j(X, y^n)
4第 4 页 · 时序电路的功能描述方法

时序电路的分类

两条分类轴容易混:同步/异步看存储元件如何被推动,Mealy/Moore看输出依赖什么。

同步与异步
  • 判据|多个存储元件是否受同一时钟控制
  • 表达|仅在有效时钟边沿改变状态
  • 代价|时钟偏斜与关键路径限制工作频率
  • 适用|规则控制、易做时序分析的系统
Mealy与Moore
  • 判据|输出是否显式依赖当前输入
  • 表达|Mealy看X、Q;Moore只看Q
  • 代价|Mealy输入路径影响定时;Moore可能多状态
  • 适用|输入直接参与输出可看Mealy;按状态输出可看Moore
先判同步/异步,再判Mealy/Moore;两轴彼此独立,同一电路可同时属于同步Mealy型。
5第 5 页 · 时序电路的分类

同步时序电路分析步骤

给一个同步时序电路,按这五步走完,就能完整描述它的行为。

1
写方程式
列出输出方程、状态方程和驱动方程
2
列状态表
把方程翻译成现态/输入对应次态/输出的真值表
3
画状态图
用圆圈和箭头画出所有状态之间的转移关系
4
画时序图
按时钟节拍逐拍画出各点波形以验证分析
5
说明功能
从状态图读出电路的逻辑功能并用文字描述
6第 6 页 · 同步时序电路分析步骤

同步时序电路分析实例

上一节列出了同步时序电路分析的五步框架。本节以两 D 触发器电路为例,把整套流程实操一遍,看每步究竟把电路「翻译」成了什么。

选定电路
两 D 触发器共用同步时钟,D1=非(Q1+Q2),D2=Q1
写方程式
驱动方程描述输入端逻辑,状态方程给出次态(公式所示)
状态转换表与图
把四种现态代入驱动方程,逐一求出次态,画出有向图
时序图与功能
按时钟节拍画出 Q1、Q2 波形,判定为模 3 自启动计数器
侦探破案对应 →五步分析法

列线索→理证据→画关系→核验→结案,每步都是上一步推理的产物

Q1n+1=Q1+Q2,Q2n+1=Q1Q_1^{n+1} = \overline{Q_1 + Q_2},\quad Q_2^{n+1} = Q_1
7第 7 页 · 同步时序电路分析实例

异步时序电路分析要点

异步电路里各触发器各有自己的时钟,关键是把每个时钟的"有效边沿"先认清楚。

1
标时钟端
每个触发器都有自己的CP端,依次记为CP1、CP2…
2
判边沿类型
看CP端符号:带小圆圈为下降沿,无圆圈为上升沿
3
标有效跳变
在波形图时间轴上标出每个CP的有效边沿时刻
4
区分谁翻转
只有CP出现有效沿的触发器才更新,其余保持原态
8第 8 页 · 异步时序电路分析要点

同步与异步时序电路对比

上两页分别走完了同步和异步电路的分析流程,回头看分析方法差很多。这种差究竟从哪来?下面从三个维度拆开。

时钟控制方式
同步靠统一clk脉冲;异步各触发器看自己的CP沿
电路结构
同步无需额外脉冲线;异步需前后级串接脉冲形成电路
分析复杂度
同步按节拍逐组算;异步要推各级脉冲到达的先后
交响乐团齐奏对应 →同步时序电路

所有乐手听指挥一拍齐动,对应电路共用一个clk

9第 9 页 · 同步与异步时序电路对比

触发器动态特性

上页讲到时序电路靠触发器锁存状态。但触发器不是开关一拨就立刻翻转——数据什么时候必须就位、稳多久、Q 端多久才反应过来,这三个时序参数直接决定了电路能跑多快。

建立时间 t_su
数据 D 必须先于时钟有效沿到达并稳定的最短时间
保持时间 t_h
时钟有效沿之后 D 必须继续保持稳定的最短时间
时钟到Q延迟 t_cq
时钟有效沿到 Q 端稳定输出的时间差
接力赛交棒对应 →触发器时序约束

接棒队员必须提前就位(建立),抓住后不能立刻松手(保持),接稳到起跑还有反应时间(clk→Q)

fmax=1tcq+tcomb,max+tsuf_{max}=\dfrac{1}{t_{cq}+t_{comb,max}+t_{su}}
10第 10 页 · 触发器动态特性

触发器时序参数详解

从左到右读:数据先稳定Tsu,经CLK边沿,再保持Th,Q延迟Tco后输出

图解渲染中…
a2Tsu:CLK前数据须稳定的最短时间a3触发时刻,触发器采样D并启动Q更新a4Th:CLK后数据须保持的最短时间a5Tco:CLK边沿到Q变化的固有延迟
11第 11 页 · 触发器时序参数详解

寄存器

n位寄存器的基本结构、并行写入/读取的工作原理

寄存器
n位寄存器的基本结构、并行写入/读取的工作原理
12第 12 页 · 寄存器

移位寄存器工作模式

串入串出、串入并出、并入串出三种数据移位方式

移位寄存器工作模式
串入串出、串入并出、并入串出三种数据移位方式
13第 13 页 · 移位寄存器工作模式

移位寄存器扩展应用

移位寄存器不止于移位存数,三个扩展方向让它变身数据转换器、序列源与延时链。

1
串行转并行
一位一位串行移入,N拍后并行取出,完成数据格式转换
2
序列发生器
特定位输出反馈到串行输入,循环生成指定序列或伪随机码
3
延时电路
从不同级抽头取信号,得到1拍到N拍的可调延时
4
灵活配置
按数据率、序列长度、延时精度选择移位方向与抽头位置
14第 14 页 · 移位寄存器扩展应用

计数器概述

前面学过触发器能存一位 0 或 1。把多个触发器级联起来,每次收到一个脉冲,状态就跳一下:000→001→010→011…一路往上数——这就是计数器。描述它必须说清三件事。

模值 M
一个计数循环所经历的独立状态总数,决定计数器的周期长度
计数容量
从 0 起计能到达的最大数(模值为 M 时为 M−1)
计数方向
加法(递增)、减法(递减)、可逆(方向可控)三种
银行柜台手拨计数器对应 →模值与计数方向

按一下加 1,到 9999 再按就归零——模值 M=10000,容量 9999;只能往上拨就是加法

M2n(n 为触发器位数)M \leq 2^n \quad\text{(n 为触发器位数)}
15第 15 页 · 计数器概述

同步二进制加法计数器

前页我们认识了计数器的家族。这一页聚焦最经典的同步二进制加法计数器——它的设计哲学优雅而对称:所有JK触发器并接时钟,组成一条AND门链,让高位的翻转严格受制于低位。

n个JK触发器级联
n级JK触发器水平排开,所有时钟端CP并接同一脉冲,构成同步链。
最低位J=K=1
LSB的JK触发器处于翻转态,每个时钟沿都翻一次,等于在数CP个数。
高位受AND链控制
第k位的J=K=Q₀·Q₁·…·Q_{k-1},只有所有低位都为1时本级才翻。
同步=同沿动作
各FF时钟端并接,CP上升沿到达时满足条件的全部同时翻,无累积延迟。
翻牌接龙对应 →同步二进制加法计数器

拍掌=时钟脉冲;翻牌=FF翻转;右人都正面=AND链给高位开门。

Jk=Kk=Q0Q1Qk1,k=1,2,,n1J_k = K_k = Q_0 \cdot Q_1 \cdots Q_{k-1}, \quad k = 1, 2, \ldots, n-1
16第 16 页 · 同步二进制加法计数器

二进制加法计数器时序图

时序图横看状态序列,箭头标注该次CLK上升沿触发哪位触发器翻转。

图解渲染中…
a1位序 Q3Q2Q1Q0(高位在左)a9Q3 翻起的那一拍,状态进入高位
17第 17 页 · 二进制加法计数器时序图

同步二进制减法计数器

加法和减法电路结构几乎一样,差别只在触发器J端接的是Q还是Q'——接线一变,计数方向就反了。

同步加法计数器
  • 计数方向:从0000逐个递增到1111
  • 高位FF翻转条件:低位Q全为1
  • J/K端接各低位FF的Q端
  • 1111加1归零,进位端产生上升沿
同步减法计数器
  • 计数方向:从1111逐个递减到0000
  • 高位FF翻转条件:低位Q全为0
  • J/K端接各低位FF的 Q' 端
  • 0000减1回到1111,借位端产生上升沿
电路结构镜像对称,唯一差别就是J端取Q还是取Q'。实际很少单独搭减法器,常用加法器+反码预置等效实现。
18第 18 页 · 同步二进制减法计数器

同步可逆计数器

前面分别看了同步加法、减法计数器,能不能合二为一?加一个控制信号切换方向,就成了同步可逆计数器。

加减控制信号
M=1 时加法计数,M=0 时减法计数;切换方向就靠这一路
单时钟结构
共用一路时钟,各级 T_i 由 M 异或低位进位/借位链得到
双时钟结构
两路时钟 CK_up 与 CK_down 互斥,仅一路有效时计数器翻转
两种结构对比
单时钟同步性好、便于级联;双时钟抗干扰强、但要防两路重叠
电梯的上下方向按钮对应 →加减控制信号切换计数方向

两按钮互斥——按上往上走、按下往下走;M=1 往上数、M=0 往下数

Ti=(MQi1)(MQi2)(MQ0)T_i = (M \oplus Q_{i-1})(M \oplus Q_{i-2}) \cdots (M \oplus Q_0)
19第 19 页 · 同步可逆计数器

同步十进制加法计数器

前页的四位二进制计数器每个有效沿加1;十进制只保留0000~1001对应的0~9。因此要在1001时安排下一拍回到0000,核心是终态译码与同步反馈。

8421码序
Q₃Q₂Q₁Q₀按8、4、2、1权位,0000~1001表示0~9;1010~1111禁用
同步计数
四个触发器共用时钟;其他状态按四位二进制加1形成各位D输入
终态检测
状态1001时Y=Q₃·\overline{Q₀}=1,并保持到下一有效边沿
反馈装载
把Y接同步并行装载使能,零码接D₃D₂D₁D₀;下一边沿回零
汽车里程表对应 →8421BCD十进制计数

四个位同步加一,9后整体回0;10~15对应不显示的位形

Y=Q3Q0,Q+={0000,Q=1001Q+1(mod16),otherwiseY=Q_3\overline{Q_0},\quad Q^+=\begin{cases}0000,&Q=1001\\Q+1\pmod{16},&\text{otherwise}\end{cases}
20第 20 页 · 同步十进制加法计数器

十进制减法与可逆计数器

十进制减法从9到0单向递减,可逆计数器则能根据控制信号双向计数——核心差异在于方向是否可切换。

十进制减法器
  • 计数方向:只能递减,9→0
  • 计数起点:固定从9开始倒数
  • 控制信号:无方向控制端
  • 溢出输出:仅产生借位信号
可逆十进制计数器
  • 计数方向:加/减可切换
  • 计数起点:0→9或9→0皆可
  • 控制信号:有加/减控制端
  • 溢出输出:进位与借位均输出
只需单向倒计时(如分频、定时)选前者;需按外部条件正/反计数(如电梯楼层、产量累加/回退)必须选可逆计数器。
21第 21 页 · 十进制减法与可逆计数器

异步计数器工作原理

同步计数器里所有触发器同时听同一个时钟。现在换个思路:只让最低位接外部时钟,让它『翻完再去推下一级』——这就是异步计数器,也叫行波计数器。

单一时钟入口
仅最低位触发器CLK端接外部时钟,其余各级CLK接前一级Q或Q̄输出
逐级延迟触发
前一级Q先翻转才产生边沿,下一级才被触发;信号像水波逐级传开
行波式传播
n级计数器总翻转延迟约 n·tpd,级数越多延迟越长,最高频率受限
硬件极简
无需组合逻辑门控时钟,仅靠连线级联,门电路最少、成本最低
多米诺骨牌连锁倒下对应 →异步计数器级联触发

第一张被推倒(外部时钟)后,依次撞倒后续骨牌,每张倒下都有时间差——对应每一级的传输延迟

TtotalntpdT_{total} \approx n \cdot t_{pd}
22第 22 页 · 异步计数器工作原理

异步二进制计数器时序图

从左到右看进位链:CLK 触发 FF0,每级用前级输出当时钟,延迟逐级向右传;虚线汇总 tp,串到右侧后果。

图解渲染中…
DL每级触发器都有传播延迟 tp,全部叠加导致最高位滞后RC若下一时钟到来时低位尚未稳定,就会产生错误计数LIM因此异步计数器最高工作频率远低于同步计数器
23第 23 页 · 异步二进制计数器时序图

异步vs同步计数器对比

同为计数器,为何有快慢之分、繁简之别?时钟接法是分水岭。

同步计数器
  • 结构复杂度:时钟同时接入所有触发器,需组合控制逻辑
  • 工作速度:所有触发器同步翻转,速度取决于最慢一级
  • 可靠性:各级同步动作,无级联毛刺,可靠性高
  • 应用场景:高速计数、精密定时、PLC等严格场合
异步计数器
  • 结构复杂度:前级输出作下级时钟,几乎无需控制门
  • 工作速度:逐级串行传递,最高位延迟累加,速度慢
  • 可靠性:存在级联毛刺与竞争冒险,需选通消解
  • 应用场景:低速分频、成本敏感、对毛刺不敏感场合
高速高可靠场合选同步;低速低成本场合选异步——取舍即决策
24第 24 页 · 异步vs同步计数器对比

时序电路知识总览

  • 时序电路 = 组合逻辑 + 存储,输出由现态与输入共同决定
  • 同步靠统一时钟规整快速,异步靠级间延迟省逻辑却慢
  • 从状态表而非门级入手设计,是时序电路的正确起点
  • 建立/保持时间决定触发器速度上限,亦即系统上限
  • 触发器→寄存器→计数器,本质是层层叠加控制逻辑
延伸主题:时序电路设计完整流程Mealy与Moore状态机对比竞争与冒险分析
25第 25 页 · 时序电路知识总览

核心概念自测

点击作答

异步二进制加法计数器中,除最低位触发器外,其余各级触发器的时钟信号来源于?

26第 26 页 · 核心概念自测

课后思考

先独立思考再看参考答案——三个问题分别指向核心概念、实际设计与跨场景迁移。

1同步计数器的所有触发器虽共用时钟,为何仍存在进位延迟?这与异步计数器逐级传递的本质区别是什么?

参考答案同步计数器的进位延迟来自进位组合逻辑(与或门)的传播延时,时钟沿到来时新状态需先稳定再写入;异步则是各级触发器时钟串行驱动,本质是「时钟级联」对「组合逻辑 + 并行时钟」。

2若用 JK 触发器设计模 6 计数器,应如何选择状态编码?同步与异步方案在触发器数量上有何差别?

参考答案模 6 需要 3 个触发器提供 2³=8 个状态,再丢弃 2 个无效态。同步与异步所用触发器数相同,差别在组合逻辑:同步需进位门但速度并行;异步省组合逻辑但状态逐级延迟。

3移位寄存器既能串入并出、又能并入串出,能否直接当作一个「序列检测器」使用?还需要补充什么逻辑?

参考答案移位寄存器本身只做「延迟 + 移位」,要检测序列还需组合比较逻辑(如异或门、与门阵列)把当前寄存值与目标序列比较;可视为 Moore 型检测器的存储部分,完整检测还需状态转移与复位逻辑。

27第 27 页 · 课后思考