《电子科大数电数字逻辑设计第五章.ppt》由会员分享,可在线阅读,更多相关《电子科大数电数字逻辑设计第五章.ppt(31页珍藏版)》请在三一办公上搜索。
1、1,第5章 组合逻辑设计实践,文档标准和电路定时常用的中规模组合逻辑器件,数字逻辑设计及应用,2,内 容 回 顾,译码器编码器三态器件多路复用器奇偶校验器比较器,标准MSI多路复用器 74x151、74x153、74x157 扩展多路复用器 利用多路复用器实现逻辑函数 多路分配器 利用带使能端的译码器 使能端作为数据输入端,3,内 容 回 顾,译码器编码器三态器件多路复用器奇偶校验器比较器,奇校验:输入有奇数个1,输出为1 偶校验:输入有偶数个1,输出为1 利用异或运算实现 9位奇偶发生器74x280 奇偶校验的应用 检测代码在传输和存储 过程中是否出现差错。,4,内 容 回 顾,译码器编码器
2、三态器件多路复用器奇偶校验器比较器,一位等值比较器(异或/同或)多位等值比较器 每一位都相等,一位数值比较器,等值比较器,数值比较器,多位数值比较器 4位比较器74x85 8位比较器74x682,5,5.10 加法器,半加器(half adder)和 全加器(full adder),相加的和:S=AB+AB=A B向高位的进位:CO=AB,6,5.10 加法器,S=X Y CI,XY,半加器(half adder)和 全加器(full adder),XCI,CO=+,YCI,=XY+(X+Y)CI,7,串行进位加法器,缺点:运算速度慢,有较大的传输延迟tADD=tXYCout+(n-2)*tC
3、inCout+tCinS,=0,回顾:串行比较器,提高速度:并行加法器,8,串行加法器,边界输入,边界输出,9,迭代电路(iterative circuit),Iterative:重复的,反复的,数迭代的,边界输入,边界输出,级联输出,P297,10,并行进位加法器,先行进位法:第 i 位的进位输入信号可以由该位以前的各位状态决定。,Ci+1=(XiYi)+(Xi+Yi)Ci,=Gi+Pi Ci,11,并行进位加法器,先行进位法:第 i 位的进位输入信号可以由该位以前的各位状态决定。,C0=0,Ci+1=Gi+Pi Ci,C0=0 C1=G0+P0C0 C2=G1+P1C1=G1+P1(G0+
4、P0C0)=G1+P1G0+P1P0C0 Cn=Gn+PnCn(P307),展开为“与-或”式:三级延迟,MSI加法器74x283P309图5-91,12,MSI算术逻辑单元,ALU,arithmetic and logic unit,对2个b位的操作数进行若干不同的算术和逻辑运算,输入数据,0算术/1逻辑,选择特定操作,P310 表5-52,13,设计函数发生器,其功能表如下:,1、填写真值表,2、选择器件,用基本门电路实现 利用卡诺图化简 用译码器实现 转换为最小项之和 用数据选择器实现,3、电路处理,注意有效电平,14,第6章 组合电路设计实例,桶式移位器简单浮点编码器双优先级编码器级联
5、比较器关模比较器,15,桶式移位器,具有n个数据输入和n个数据输出控制输入:指定输入输出之间如何移动数据(移位方向、移位类型、移动的位数)设计一个简单16位桶式移位器(向左移位),若输入:0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15,则输出:5 6 7 8 9 10 11 12 13 14 15 0 1 2 3 4,用4位控制输入S3:0指定移动位数,例:S=0101,,思路:输出的每一位都是从16个输入中选出的。多路复用器(数据选择器),16,方案一:利用74x151,1、如何扩展路复用器?16个输入端;4个地址选择端;,当S=0101时 Y=D5,17,方案一
6、:利用74x151,2、当S=0101时,如何使输出为 DIN6,DIN15,DIN4?,当S=0101时 Y=D5,DIN8:1,DIN0,15:9,通过控制数据输入端的连接,18,P334图6-1,19,利用三态输出74x251,基本原理:利用多路复用器,通过控制数据输入端的连接使输出产生移位。,负载太大,20,方案二:利用74x157,如何利用2输入4位多路复用控制移位?,基本原理:利用多路复用器,通过控制数据输入端的连接使输出产生移位。,当S=0时,Y=A,不移位当S=1时,Y=B,相当于右移一位 改变A端输入数据的连接顺序 可以使输出:左/右移动一或多位,21,通过S0控制16位多路
7、复用器移位,22,Si=1:,移动1位,移动2位,移动4位,移动8位,Si=0:,不移动,节省器件,延迟大,P335 图6-2,23,首先解决的几个问题:如何确定第一个“1”的位置?如何确定3位指数?如何从第一个“1”开始选出4位?,浮点编码器,11010110100 110127 011010000100101111 100125 0111100000000010 001020 0,211121012000,由第一个“1”的位置决定,浮点数的表示:B M 2E T,截位误差,优先编码器,优先编码器的输出,数据选择器,24,(1)如何确定第一个“1”的位置?,优先编码器,11010110100
8、 0010010111100000000010B M2ET,通常 M3=1只有B10_LB3_L都无效M3=0,(3)如何从第一个“1”开始选出4位M3M2M1M0?,(2)如何确定3位指数?,(由GS端获得),25,(1)如何确定第一个“1”的位置?,多路复用器 只需要选出 M2 M1 M0,(3)如何从第一个“1”开始选出4位M3M2M1M0?,(2)如何确定3位指数?,M2_L,E0_LE1_LE2_L,B9_LB8_LB2_L,同样的,通过改变数据输入端的连接可以得到M2M1M0,通常 M3=1只有B10_LB3_L都无效M3=0(由GS端获得),P337 图6-3,26,双优先级编码
9、器,如何找第二高优先级?先“排除”最高优先输入 再用74x148找一次,利用译码器和“与门”实现(注意有效电平),可以找出最高和第二高优先级的编码器,需要2个优先编码器1个译码器、若干“与门”,27,B2:0BVALID,28,关模比较器,输入:两个8位无符号二进制整数 X 和 Y 一个控制信号 M输出:8位无符号二进制整数 Z逻辑功能:M=1,Z=min(X,Y)M=0,Z=max(X,Y),思路:(核心问题)(1)比较X,Y的大小(2)使Z为X,Y之一(3)控制逻辑,比较器(8位),多路复用器(二选一),根据M和X,Y大小控制 多路复用器的地址选择端。,29,关模比较器原理框图,30,S=0 Y=AS=1 Y=B,31,S=0 Y=AS=1 Y=B,0110,P341图6-8,M=1,min(X,Y)M=0,max(X,Y),