第 8章 时序逻辑设计实践 (一 )
数字逻辑设计及应用
SSI型锁存器和触发器
MSI器件:计数器、移位寄存器其它:文档、迭代、故障和亚稳定性第 8章 时序逻辑设计实践
SSI型锁存器和触发器
MSI器件:计数器、移位寄存器其它:文档、迭代、故障和亚稳定性数字逻辑设计及应用
8.1 时序电路文档标准
一般要求,( P479)
逻辑符号:
边沿触发、主从输出
异步预置(顶端)、异步清零(底端)
状态机描述
文字、状态表、状态图、状态转移列表
时序图及其规范( P481)
CLOCK
Ht Lt
clkt
触发器输出
ffpdt
combt
组合电路输出触发器输入
holdt
setupt建立时间容限
s e t u pc o m b ( m a x )( m a x )f f p dc l k tttt --- 保持时间容限
h o l dc o m b ( m i n ))m i n(f f p d ttt -+
8.2 锁存器和触发器
SSI锁存器和触发器
1Q
1Q
2Q
2Q
3Q
3Q
4Q
4Q
1,2C
1D
2D
3,4C
3D
4D
74x375
D锁存器
PR
D Q
CLK Q
CLR
74x74
PR
J Q
CLK
K Q
CLR
74x109
PR
J Q
CLK
K Q
CLR
74x112
P484图 8-3
引脚开关消抖
+5V
SW_L DSW
开关闭合
SW_L
DSW
开关打开闭合第 1次接触 触点抖动
SW_L
DSW
理想情况
SW_L
SW
0
0
1
1
SW_L
SW
0
0
1
1
开关闭合
0
0
1
1SW_L
SW
0
0
1
1
SW_L
SW
1
1
0
0
SW_L
SW
DSW开关闭合
P486 图 8-5
问题:
为什么不应该同高速 CMOS器件一起使用?
Q
QL
S Q
R Q
+5V
总线保持电路
A
B
C
G1
G2A
G2B
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
74x138
EN1
EN2_L
EN3_L
SRC0
SRC1
SRC2
P0
P1
P7
SDATA
D Q
C Q
D Q
C Q
D Q
C Q
D Q
C Q
DIN[3:0] WR DOUT[3:0]RD
多位锁存器和寄存器回顾:
锁存器的应用
—— 多位锁存器寄存器( register)
共用同一时钟的多个
D 触发器组合在一起通常用来存储一组相关的二进制数。
4位寄存器 74x175
6位寄存器 74x174
P488图 8-9
1D
2D
3D
4D
CLK
CLR_L
8位寄存器
74x374( 三态输出)
P489图 8-10
OE
输出使能
74x377
(时钟使能)
74x273
( 异步清零)
CLK
74x374
( 输出使能)
74x377( 时钟使能)
EN
EN’
二选一多路复用结构寄存器( register) 和锁存器( latch) 有什么区别?
寄存器:边沿触发特性
锁存器,C有效期间输出跟随输入变化
74x374
输出使能
8位寄存器
74x373
输出使能
8位锁存器
8.4 计数器
模( modulus),循环中的状态个数
模 m计数器(又称 m分频计数器)
n位二进制计数器状态图中包含有一个循环的任何时钟时序电路
S1 S2
S3
Sm
S5
S4
EN
EN EN
EN EN
EN
EN
EN’ EN’
EN’
EN’
EN’
EN’
计数器的分类
按时钟:同步、异步
按计数方式:加法、减法、可逆
按编码方式:二进制、十进制 BCD码、循环码
计数器的功能
计数、分频、定时、产生脉冲序列、数字运算
本节内容
行波计数器、同步计数器
MSI型计数器及其应用
二进制计数器状态的译码行波计数器( ripple counter)
利用 T 触发器实现:
Q* = Q’
Q
QT
考虑二进制计数顺序:
只有当第 i-1 位由 1?0时,
第 i 位才翻转。
CLK
Q
QT
Q
QT
Q
QT
Q
QT
Q0 Q1 Q2 Q3
CLK
Q0
Q1
Q2
CLK
Q
QT
Q
QT
Q
QT
Q
QT
Q0 Q1 Q2 Q3
速度慢,最坏情况,第 n位要经过 n× tTQ 的延迟时间
—— 异步时序同步二进制加法计数器
1 0 1 1 0 1 1
+ 1
1 0 1 1 1 0 0
在多位二进制数的末位加 1,
仅当第 i 位以下的各位都为 1 时,
第 i 位的状态才会改变。
最低位的状态每次加 1都要改变。
EN Q
T Q
利用有使能端的 T 触发器实现:
Q* = EN·Q’ + EN’·Q = EN? Q
通过 EN端进行控制,
需要翻转时,使 EN = 1
ENi = Qi-1 · Qi-2 · … · Q 1 · Q0EN0 =? 1
同步计数器
1
CLK
Q0
Q1
Q2
C
如何加入使能端?
有使能端的同步计数器
CNTEN
低位 LSB
高位 MSB
串行使能
CNTEN
有使能端的同步计数器并行使能高位 MSB
低位 LSB
同步二进制加法计数器
1 0 1 1 0 1 1
+ 1
1 0 1 1 1 0 0
在多位二进制数的末位加 1,
仅当第 i 位以下的各位都为 1 时,
第 i 位的状态才会改变。
最低位的状态每次加 1都要改变。
对于 D触发器,Q* = D
Di = (Qi-1 · … · Q 1 · Q0)? Q
D Q
CLK Q = EN? Q
考虑 T 触发器,Q* = EN? Q
利用 D 触发器实现:
D0 = 1?Q = Q’
CLK
EN
同步清零和预置数 Q0
Q1
Q2
Q3
D0
D1
D2
D3
LD_L
CLR_L
A
计数功能的电路
Qi* = (Qi-1 · … · Q 1 · Q0)? Q
QA
同步清零和预置数功能
P508 图 8-31
4位二进制计数器 74x163
CLR同步清零
LD同步预置数
RCO 进位输出
ENP
ENT使能端进位输出清零
4位二进制计数器 74x163
74x163的功能表
0
1
1
1
1
CLK 工作状态同步清零同步置数保持保持,RCO=0
计数
CLR_L LD_L ENP ENT
0
1
1
1


0 1
0
1 1
74x161异步清零
74x163工作于自由运行模式时的接线方法自由运行的 ’ 163可以用作
2,4,8和 16分频计数器
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0
其它 MSI计数器
74x160,74x162
1位十进制( BCD) 加法计数器(异、同步清零)
0 1 2 3 4 5 6 7 8 9 0
QA
QB
QC
QD
QC,QD都是十分频,但占空比不是 50%
其它 MSI计数器
74x169
可逆计数器
74x160,74x162
1位十进制( BCD) 加法计数器(异、同步清零)
UP/DN
UP/DN = 1
加法计数(升序)
UP/DN = 0
减法计数(降序)
使能输入进位输出低电平有效
A
B
C
G1
G2A
G2B
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
74x138
EN1
EN2_L
EN3_L
SRC0
SRC1
SRC2
P0
P1
P7
SDATA
如何控制地址端自动轮流选择输出 Y0~ Y7 —— 计数器的应用二进制计数器状态的译码若在一次状态转移中有 2位或多位计数位同时变化,
译码器输出端可能会产生,尖峰脉冲,—— 功能性冒险
0 1 2 3 4 5 6 7 0 1 2
CLK
8位寄存器还有更好的办法。。。
改进:消除,毛刺,
任意模值计数器
利用 SSI器件构成
—— 时钟同步状态机设计
利用 MSI计数芯片构成
—— 利用 n位二进制计数器实现模 m计数器分两种情况考虑:
m < 2n
m > 2n
清零法、置数法用 4位二进制计数器 74x163实现模 11计数器
清零法
S0 S1 S2 S3 S4
S12 S11 S10 S9 S8
S7
S6
S5
S13
S14
S15
计数到 1010时,
利用同步清零端强制为 0000。
—— m<2n 情况
清零法计数到 1010时,
利用同步清零端强制为 0000。
—— m<2n 情况用 4位二进制计数器 74x163实现模 11计数器
CLK
Q0
Q1
Q2
Q3
思考:
如果是 74x161
(异步清零)
可以这样连接吗?
—— 利用 1011状态异步清零,会出现,毛刺,
用 4位二进制计数器 74x163实现模 11计数器
置数法 —— m<2
n 情况
S0 S1 S2 S3 S4
S12 S11 S10 S9 S8
S7
S6
S5
S13
S14
S15
计数到 1111时,
利用同步预置数端强制输出为 0101
用 4位二进制计数器 74x163实现模 11计数器
置数法 —— m<2
n 情况
CLK
Q0
Q1
Q2
Q3
计数到 1111时,
利用同步预置数端强制输出为 0101
74x163用作余 3码计数器
S0 S1 S2 S3 S4
S12 S11 S10 S9 S8
S7
S6
S5
S13
S14
S15
0011
1100
74x163用作余 3码计数器
1
1
0
0
当计数输出为 1100时,置数,
置为 0011,如 DCBA所接
CLK
Q0
Q1
Q2
Q3
COUNT 3 4 5 6 7 8 9 10 11 12 3
Q3,十分频,
占空比 50%
计数器的级联
CLOCK
RESET_L
LOAD_L
CNTEN
D0
D1
D2
D3
Q4
Q5
Q6
Q7
74x163 74x163x162 x162
个位 十位计数范围,0~ 99,两位 BCD
模 m计数器( m > 2n)
先进行级联,再整体置零或预置数
例:用 74x163构造模 193计数器两片 163级联得 8位二进制计数器( 0~ 255)
—— 采用整体清零法,0~ 192
—— 采用整体预置数法,63~ 255
256- 193= 63 ( P512图 8-40)
若 m 可以分解,m = m1?m2
分别实现 m1和 m2,再级联计数器的级联
CLOCK
RESET_L
LOAD_L
CNTEN
D0
D1
D2
D3
Q4
Q5
Q6
Q7
74x163 74x163
思考:利用低位的进位控制高位的时钟行不行?
6310 = ( 0011 1111 )2
CLK
CLR
LD
ENP
ENT
A QA
B QB
C QC
D QD
RCO
74x163
CLK
CLR
LD
ENP
ENT
A QA
B QB
C QC
D QD
RCO
74x163
1
1
0
0
1
1
1
1
+5V
CLOCK
CLR_L
CLK
CLR
LD
ENP
ENT
A QA
B QB
C QC
D QD
RCO
74x163
CLK
CLR
LD
ENP
ENT
A QA
B QB
C QC
D QD
RCO
74x163
1
1
0
0
1
1
1
1
CLOCK
CLR_L
+5V
Q4
Q5
Q6
Q7
EN
分析下面的电路的模为多少?
CLK
CLR
LD
ENP
ENT
A QA
B QB
C QC
D QD
RCO
74x163
0
1
1
+5V
CLOCK QD QC QB QA
0 0 0 0
0 1 1 0
0 1 1 1
1 0 0 0
1 1 1 0
1 1 1 1
练习:分析下面的电路的模为多少?
CLK
CLR
LD
ENP
ENT
A QA
B QB
C QC
D QD
RCO
74x163
0
1
+5V
CLOCK 模 12计数器
QD,12分频占空比 50%