数字设计设计总结基础篇
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
S2/0 010
S3/0 011 S4/0 100
18
3、构造转移/输出表,求取 状态转移方程 和 输出方程
Q2 Q1 Q0 Q2*Q1*Q0* C 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 0 1 Q0* = Q0’ Q0* Q Q 1 0 00 01 Q2 0 1 1 1 0 0
= (Q1·Q3’·A’ + Q1·Q3·A)·Q2’ + (Q1·Q3’·A’ + Q1·Q3·A + Q1·B)·Q2
K2 = (Q1·Q3’·A’ + Q1·Q3·A + Q1·B)’
= (Q1’+Q3+A)·(Q1’+Q3’+A’)·(Q1’+B’) J1 = Q2’·Q3’ K1 = 0 = Q1’ + Q3’·A·B’ + Q3·A’·B’ J2 = Q1·Q3’·A’ + Q1·Q3·A K2 = Q1’ + Q3’·A·B’ + Q3·A’·B’
d0,1d,0d d0,1d,0d d0,0d,1d d0,0d,1d
d0,0d,d1 d0,0d,d1 d0,1d,d0 d0,1d,d0 d0,d0,0d d0,d0,0d d0,d0,1d d0,d1,1d d0,d1,d1 d0,d0,d1 d0,d0,d0 d0,d0,d0
110 100
101 111
逻辑电路分为两大类:
基本概念
组合逻辑电路(combinational logic circuit)
任何时刻的输出仅取决与当时的输入
电路特点:无反馈回路、无记忆元件
时序逻辑电路(sequential logic circuit)
任一时刻的输出不仅取决与当时的输入, 还取决于过去的输入序列
电路特点:有反馈回路、有记忆元件
WX 00 01 11 10
0 1 1 Z 0 Z Z
00
01 11 10
1
1 1 1 1 1 1
Z
Z’
0
10
F = (W,X,Y,Z)(0,1,3,7,9,13,14)
74x151
利用74x151实现
说明:用具有n位地址 VCC
Y X W
EN
A B C D0 D1 D2 D3 D4 D5 D6 D7
+5V
F
4
2个74x148级联为16-4优先编码器
EI A2 A1 A0 GS EO
Y3 Y2 Y1
Q15_L
Q8_L
I7 I0
EI
Q7_L
Qwk.baidu.com_L
I7
I0
A2 A1 A0 GS EO
Y0
GS
5
扩展多路复用器
扩展位
如何实现8输入,16位多路复用器?
由8输入1位8输入16位 需要16片74x151,
Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
DST0_L
DST7_L
利用74x139实现2位4输出多路分配器(P285)
12
用于检测代码在传输和存储过程中是否出现差错
DB[0:7] 74x280
A
EVEN H I ODD H I
奇偶校验的应用
发 端 收 端
DB[0:7] 74x280
A
EVEN ODD
n 1
VCC
C B A
A B C
最小项之和形式
实现逻辑函数 F = (A,B,C)(0,1,3,7)
D0 D1 D2 D3 D4 D5 D6 D7
Y Y
F
9
思考:利用74x151实现逻辑函数 F = (W,X,Y,Z)(0,1,3,7,9,13,14) 降维:由4维3维
YZ Y WX
00 01 11 10
Q1* Q Q 1 0 00 01 Q2
0 1 0 0 1 1
11 10 0 0 1 1
20
3、构造转移/输出表,求取 状态转移方程 和 输出方程
Q2 Q1 Q0 Q2*Q1*Q0* C 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 0 1 Q0* = Q0’ Q1* = Q1’·Q0 + Q1·Q0’ Q2* = Q2’·Q1·Q0 + Q2·Q1’ + Q2·Q0’ 11 10 1 0 0 1
一 组合电路的综合
根据给出的实际问题,
求出实现这一逻辑功能的电路。
进行逻辑抽象,得到真值表或逻辑函数式 选择器件的类型
逻辑化简或变换成适当的形式
电路处理,得到电路图
2
用74x138设计4-16译码器
+5V G1 G2A G2B N0 N1 N2 N3 EN_L A B C G1 G2A G2B A B C Y0 D0_L
11 10
0 0 1 1
19
3、构造转移/输出表,求取 状态转移方程 和 输出方程
Q2 Q1 Q0 Q2*Q1*Q0* C 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 0 1 Q0* = Q0’ Q1* = Q1’·Q0 + Q1·Q0’
P=Q
P>Q P=Q P>Q PEQQ
[7:0]
[15:8]
P338 6.1.4 P340 图6-7 PGTQ
[23:16]
P=Q P>Q
15
二 时钟同步状态机设计
根据命题构造状态/输出表
状态化简(状态最小化)
状态编码(选择状态变量)
建立转移/输出表,得到状态和输出方程 选择触发器作为状态存储器 构造激励表,得到激励方程 画逻辑电路图
EN A B C D0 D7
Y Y
7
用双4选1数据选择器构成8选1数据选择器
A0 A1 A2 D0 D1 D2 D3 Y D4 D5 D6 D7
8
用数据选择器设计组合逻辑电路
Y EN mi Di
i 0 n 1
74x151
EN
当使能端有效时,
Y m i Di
i 0
26
Q3* = Q2’·Q3’·A + Q1·A = Q2’·Q3’·A + Q1·A·(Q3’+Q3) = (Q2’·A + Q1·A)·Q3’+ Q1·A·Q3
Q2* = Q1·Q3’·A’ + Q1·Q3·A + Q1·Q2·B
= (Q1·Q3’·A’ + Q1·Q3·A)·(Q2’+Q2) + Q1·Q2·B
21
Q2* Q Q 1 0 00 01 Q2 0 1 0 1 0 1
输出方程:C = Q3· Q2· Q1
4、触发器选型,得到激励方程
Q0* = Q0’ EN0 = 1 Q1* = Q1’· ’·Q Q0 + Q1·Q0’ EN1 = Q0 Q2* = Q2’·Q1·Q0 + Q2·Q1’ + Q2·Q0’ 翻转 Q* = Q’(T触发器)
27
J3 = Q2’·A + Q1·A K3 = Q1·A
利用激励表进行J-K触发器设计
Q1Q2Q3 000 100 101 110 111 AB 00 100 01 100 110 100 110 11 101 10 101 101 Z 0 0 0 1 1
1d,0d,0d 1d,0d,0d 1d,0d,1d 1d,0d,1d
Q* = EN·Q’ + EN’·Q
选择有使能端的T触发器
= Q2’·Q1·Q0 + Q2· (Q1’+Q0’)
= Q2’·Q1·Q0 + Q2· (Q1·Q0’)’ EN2 = Q1·Q0
22
5、画逻辑电路图
1 Q0
CLK
EN0 = 1 EN1 = Q0 Q1
EN2 = Q1·Q0
C = Q3· Q2· Q1 Q2
每片处理输入输出中的1位
选择端连接到每片的C,B,A 注意:选择端的扇出能力
EN A B C D0 D7
Y Y
(驱动16个负载)
6
扩展多路复用器
扩展数据输入端的数目
如何实现32输入,1位多路复用器?
数据输入由832,需4片 如何控制选择输入端?
—— 分为:高位+低位
高位+译码器进行片选 低位接到每片的C,B,A 4片输出用或门得最终输出
C
23
方法一 方法二
用J-K触发器设计
利用状态方程和触发器特征方程得到激励方程 利用状态转移表和激励表得到激励方程
功能表 J K Q 激励表 Q Q* J K
0 0 1 1
0 保持 1 清0 0 置1 1 翻转
0 0 1 1
0 1 0 1
0 1 d d
d d 1 0
24
利用状态方程和特征方程设计
思路:
16个输出需要
Y7 D7_L
片74x138? 任何时刻只有 一片在工作。
U1
Y0 D8_L
4个输入中, 哪些位控制片选
Y7
D15_L 哪些位控制输入
U2
3
用译码器和逻辑门实现逻辑函数
F = (X,Y,Z) (0,3,6,7)
74x138 G1 G2A G2B Z Y X A B C
Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7
16
1、逻辑抽象,得到状态图(表)
设计一个3位二进制模8计数器
对时钟信号计数,可不用输入 000 S0/0 —— Moore机 取进位信号为输出变量 需要8个有效状态 111 S7/1 110 S6/0 101 S5/0 S1/0 001
S2/0 010
S3/0 011 S4/0 100
17
2、状态编码
WX 输入端的多路复用器, 00 01 11 10 Y 0 2 6 4 可以产生任何形式的输 1 0 Z Z 0 1 3 7 5的 入变量数不大于 n+1 1 Z Z Z’ 0 组合逻辑函数。
Y Y
F
Z
11
利用带使能端的二进制译码器作为多路分配器 —— 利用使能端作为数据输入端
74x138
数据输入 SRC EN_L EN_L 数据输入 SRC 地址 选择 DSTSEL0 DSTSEL1 DSTSEL2 G1 G2A G2B A B C
取自然二进制数 000~111 作为 S0 ~ S7 的编码
3、构造转移/输出表,求取 状态转移方程 和 输出方程
Q2 Q1 Q0 Q2*Q1*Q0* C S0 S1 S2 S3 S4 S5 S6 S7 0 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 0 0 1 1 1 1 0 0 1 1 0 0 1 1 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 0 1 000 S0/0 111 S7/1 110 S6/0 101 S5/0 S1/0 001
[3:0]
A0~A3 B0~B3 XD[11:0] YD[11:0]
[7:4]
A0~A3 B0~B3
[11:8]
X<Y X=Y X>Y
A0~A3 B0~B3
14
Q[23:0] P[23:0]
比较器的并行扩展
P0~P7
Q0~Q7 P0~P7 Q0~Q7 P0~P7 Q0~Q7
3片74x682构成24位比较器
ERROR
发端保证有偶数个1 奇数
收端 ODD 有效表示出错 EVEN
13
比较器的串行扩展
+5V
3片74x85构成12位比较器
低位
74x85
A<BI A=BI A>BI A<BO A=BO A>BO
高位
74x85
A<BI A=BI A>BI A<BO A=BO A>BO
74x85
A<BI A=BI A>BI A<BO A=BO A>BO
J-K触发器特征方程:Q* = J·Q’ + K’·Q Q1* = Q2’·Q3’ + Q1 状态方程 Q2* = Q1·Q3’·A’ + Q1·Q3·A + Q1·Q2·B Q3* = Q2’·Q3’·A + Q1·A J1 = Q2’·Q3’ K1 = 0 Q1* = Q2’·Q3’ + Q1 = Q2’·Q3’·(Q1’+Q1) + Q1 = Q2’·Q3’·Q1’+ Q2’·Q3’·Q1 + Q1
= Q2’·Q3’·Q1’ + Q1
25
利用状态方程和特征方程设计
J-K触发器特征方程:Q* = J·Q’ + K’·Q Q1* = Q2’·Q3’ + Q1 状态方程 Q2* = Q1·Q3’·A’ + Q1·Q3·A + Q1·Q2·B Q3* = Q2’·Q3’·A + Q1·A J1 = Q2’·Q3’ K1 = 0 J3 = Q2’·A + Q1·A K3 = Q1’ + A
111 101
110
111 111
100
110
111
J1K1 Q1*Q2*Q3* , J2K2 , J3K3
28
雷鸟车尾灯
输入:左转L、右转R、应急闪烁H(hazard)、时钟 输出:控制6个灯亮或灭 —— 可以完全由状态控制