数字逻辑第六章5_第1页
数字逻辑第六章5_第2页
数字逻辑第六章5_第3页
数字逻辑第六章5_第4页
数字逻辑第六章5_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Chapter6

CombinationalLogicDesignPractices

(组合逻辑设计实践)DocumentationStandardandCircuitTiming(文档标准和电路定时)CommonlyUsedMSICombinationalLogicDevice(常用的中规模组合逻辑器件)DigitalLogicDesignandApplication(数字逻辑设计及应用)1Decoder(译码器)CascadingBinaryDecoders(译码器的级联)RealizeaLogicCircuitbyUsingDecoder

(利用译码器实现逻辑电路)ReviewofLastClass(内容回顾)DigitalLogicDesignandApplication(数字逻辑设计及应用)2N0N1N2N3EN_L+5VD0_LD7_LD8_LD15_L用74x138设计4-16译码器思路:16个输出需要

片74x138?Y0Y7ABCG1G2AG2BY0Y7ABCG1G2AG2BU1U2任何时刻只有一片在工作。4个输入中,哪些位控制片选哪些位控制输入CascadingBinaryDecoders

(级联二进制译码器)3Consider:Howtomakea5-to-32Decoderwith3-to-8Decoder?

(思考:用74x138设计5-32译码器)Howmany74x138chipstobeusedwith32outputs?(32个输出需要多少片74x138?)Controlthatonlyonechipworksinanytime(控制任何时刻只有一片工作)——UsetheEnableInputs(利用使能端)DigitalLogicDesignandApplication(数字逻辑设计及应用)4Consider:Howtomakea5-to-32Decoderwith3-to-8Decoder?

(思考:用74x138设计5-32译码器)Controlinputsofthreelow-orderbitsofa5-bitcodeword(5个输入的低3位控制输入)Controlchipsoftwohigh-orderbitsofa5-bitcodeword

(5个输入的高2位控制片选)——Use2-to-4Decoder(利用2-4译码器)图6-37DigitalLogicDesignandApplication(数字逻辑设计及应用)5用译码器和逻辑门实现逻辑函数ZYXABCG1G2AG2BY0Y1Y2Y3Y4Y5Y6Y774x138F+5VF=(X,Y,Z)(0,3,6,7)当使能端有效时Yi=miDigitalLogicDesignandApplication(数字逻辑设计及应用)6用译码器和逻辑门实现逻辑函数ZYXABCG1G2AG2BY0Y1Y2Y3Y4Y5Y6Y774x138+5VFF=(X,Y,Z)(0,3,6,7)DigitalLogicDesignandApplication(数字逻辑设计及应用)7Decoder(译码器)Encoder

(编码器)(优先编码器的级联和应用)ReviewofLastClass(内容回顾)CascadingPriorityEncodersDigitalLogicDesignandApplication(数字逻辑设计及应用)8A2A1A0GSEOEII7I0A2A1A0GSEOEII7I0Q15_LQ8_LQ7_LQ0_LY0Y1Y2Y3GS2个74x148级联为16-4优先编码器9输入:由864,需8片74x148每片优先级不同(怎样实现?)保证高位无输入时,次高位才工作——高位芯片的EO端接次高位芯片的EI端用8-3优先编码器74x148级联为64-6优先编码器A2A1A0GSEOEII7I0片间优先级的编码——利用第9片74x148

每片的GS端接到第9片的输入端

第9片的输出作为高3位(RA5~RA3)片内优先级片间优先级输出:6位低3位高3位8片输出A2~A0通过或门作为最终输出的低3位RA2~RA0DigitalLogicDesignandApplication(数字逻辑设计及应用)10Decoders

(译码器)Encoders

(编码器)Three-StateDevices

(三态器件)Multiplexer(多路复用器)标准MSI多路复用器74x151、74x153、74x157

扩展多路复用器利用多路复用器实现逻辑函数多路分配器(Demultiplexer)——利用带使能端的译码器使能端作为数据输入端ReviewofLastClass(内容回顾)11当使能端有效时,最小项之和形式ENABCD0D1D2D3D4D5D6D7YY74x151实现逻辑函数F=(A,B,C)(0,1,3,7)CBAVCCF用多路复用器设计组合逻辑电路DigitalLogicDesignandApplication(数字逻辑设计及应用)12思考:利用74x151实现逻辑函数F=(W,X,Y,Z)(0,1,3,7,9,13,14)降维:由4维3维Shannon’sexpansiontheorems

(香农展开定理)1、F(1,X2,X3,…,Xn)=F(0,X2,X3,…,Xn)=0,填02、F(1,X2,X3,…,Xn)=F(0,X2,X3,…,Xn)=1,填13、F(1,X2,X3,…,Xn)=1,F(0,X2,X3,…,Xn)=0,填X14、F(1,X2,X3,…,Xn)=0,F(0,X2,X3,…,Xn)=1,填X1’DigitalLogicDesignandApplication(数字逻辑设计及应用)13YZWX00

01

11

10000111101111111YWX000111100110ZZZZZ’0思考:利用74x151实现逻辑函数F=(W,X,Y,Z)(0,1,3,7,9,13,14)降维:由4维3维DigitalLogicDesignandApplication(数字逻辑设计及应用)14ENABCD0D1D2D3D4D5D6D7YY74x151VCCYXWFZ利用74x151实现F=(W,X,Y,Z)(0,1,3,7,9,13,14)0

2

6

41

3

7

5YWX000111100110ZZZZZ’0DigitalLogicDesignandApplication(数字逻辑设计及应用)15Abinarydecoderwithanenableinputcanbeusedasademultiplexer(利用带使能端的二进制译码器作为多路分配器)ABCG1G2AG2BY0Y1Y2Y3Y4Y5Y6Y774x138DST0_LDST7_L数据输入SRCEN_L利用74x139实现2位4输出多路分配器(Figure6-65)DSTSEL0DSTSEL1DSTSEL2地址选择——Enableinputisconnectedtothedataline

(利用使能端作为数据输入端)数据输入SRCEN_L16译码器编码器三态器件多路复用器ParityCircuit

(奇偶校验器)Comparator

(比较器)奇校验:输入有奇数个1,输出为1偶校验:输入有偶数个1,输出为1利用异或运算实现9位奇偶发生器74x280

奇偶校验的应用——检测代码在传输和存储过程中是否出现差错。ReviewofLastClass(内容回顾)179-bitOdd/EvenParityGenerator74x280(9位奇偶校验发生器74x280(P291图5-75)ABCDEFGHIEVENODD74x280DigitalLogicDesignandApplication(数字逻辑设计及应用)18Parity-CheckingApplications

(奇偶校验的应用)用于检测代码在传输和存储过程中是否出现差错AEVENODD74x280HIAEVENODD74x280HI发端收端DB[0:7]DB[0:7]ERROR发端保证有偶数个1收端ODD有效表示出错奇数EVEN196.9Comparator(比较器)ComparetwoBinarywordsandindicatewhethertheyareequal(比较2个二进制数值并指示其是否相等的电路)Comparator:CheckiftwoBinarywordsareequal

(等值比较器:检验数值是否相等)MagnitudeComparator:Comparetheirmagnitude(Greaterthan,Equal,Lessthan)(数值比较器:比较数值的大小(>,=,<))DigitalLogicDesignandApplication(数字逻辑设计及应用)206.9Comparator(比较器)Howtobuilda1-bitComparator?

(如何构造1位等值比较器??)——UseXOR(XNOR)

(利用异或门(同或门))ABDIFFABEQDIFF:differentEQ:equalDigitalLogicDesignandApplication(数字逻辑设计及应用)21DIFFA0B0A1B1A2B2A3B3给出足够的异或门和宽度足够的或门,可以搭建任意输入位数的等值比较器。HowtoBuildaN-bitComparator?

(如何构造多位等值比较器??)必须每位都相等——并行比较——串行比较4位等值比较器DigitalLogicDesignandApplication(数字逻辑设计及应用)22AnIterativeComparator

(迭代比较电路)XYCMPEQIEQOX0Y0X1Y1XN-1YN-1EQ1EQ2EQNEQN-11XYCMPEQIEQOXYCMPEQIEQO——每位串行比较ABEQEQOEQI迭代的方法可能节省费用,但速度慢用于级联的输入DigitalLogicDesignandApplication(数字逻辑设计及应用)Figure6-7723EQ_LABLT_LGT_L1-BitMagnitudeComparator

(一位数值比较器)①A>B(A=1,B=0)则A·B’=1可作为输出信号②A<B(A=0,B=1)则A’·B=1可作为输出信号③A=B,则A⊙B=1,可作为输出信号输出低电平有效EQ_L=A·B’+A’·B=AB=(A⊙B)’LT:LessThanEQ:EqualGT:GreaterThan(A’·B)’(A·B’)’DigitalLogicDesignandApplication(数字逻辑设计及应用)24n-BitMagnitudeComparator

(多位数值比较器)A(A3A2A1A0)

B(B3B2B1B0)自高而低逐位比较EQ=(A3⊙B3)·(A2⊙B2)·(A1⊙B1)·(A0⊙B0)GT=(A3>B3)LT=EQ’·GT’=(EQ+GT)’或(A3=

B3)·(A2=

B2)·

(A1>B1)或(A3=

B3)·(A2=

B2)·(A1=

B1)·

(A0>B0)或(A3=

B3)·

(A2>B2)A3·

B3’A2·

B2’A1·

B1’A0·

B0’⊙⊙⊙⊙⊙⊙+++DigitalLogicDesignandApplication(数字逻辑设计及应用)2574x854-BitComparator74x85

(4位比较器74x85)A0A1A2A3ALTBINAEQBINAGTBIN级联输入,用于扩展ALTBOUT=(A<B)+(A=B)·ALTBIN通常低位的输出接高位的输入A=B:低位和高位都相等A高位>B高位A高位=B高位&A低位>B低位A>BAEQBOUT=(A=B)·AEQBINAGTBOUT=(A>B)+(A=B)·AGTBINDigitalLogicDesignandApplication(数字逻辑设计及应用)26SerialExpandingComparators

(比较器的串行扩展)XD[11:0]YD[11:0][3:0][7:4][11:8]X<YX=YX>Y+5VA<BIA=BIA>BIA<BOA=BOA>BOA0~A3B0~B374x85A<BIA=BIA>BIA<BOA=BOA>BOA0~A3B0~B374x85A<BIA=BIA>BIA<BOA=BOA>BOA0~A3B0~B374x853片74x85构成12位比较器低位高位DigitalLogicDesignandApplication(数字逻辑设计及应用)27P0P1P2P3P4P5P6P78位比较器74x682内部逻辑图:图6-82问题1:怎样表示以下输出?高电平有效:PDIFFQ高电平有效:PEQQ高电平有效:PGEQ高电平有效:PLTQ(图6-81)GELT问题2:能否扩展??注意:没有级联输入端DigitalLogicDesignandApplication(数字逻辑设计及应用)283片74x682构成24位比较器P0~P7P=QQ0~Q7P>QP0~P7P=QQ0~Q7P>QP0~P7P=QQ0~Q7P>Q[7:0][15:8][23:16]P[23:0]Q[23:0]PEQQPGTQParalelExpandingComparators

(比较器的并行扩展)296.10Adder(加法器)HalfAdderand

FullAdder(半加器和全加器)0000010110011110ABSCO(半加器真值表)Sum(相加的和):

S=A’·B+A·B’=ABCarry(向高位的进位):CO=A·B0000000101010010111010001101101101011111CIXYSCO(全加器真值表)TruthTableofHalfAdderTruthTableofFullAdderDigitalLogicDesignandApplication(数字逻辑设计及应用)30SCOXYCIS=XYCIX·Y00100111CIXY0001111001COX·CICO=

+

+Y·CI=X·Y+(X+Y)·CI0000000101010010111010001101101101011111CIXYSCO全加器真值表6.10Adder(加法器)6.10.1HalfAddersand

FullAdders(半加器和全加器)TruthTableofFullAdderDigitalLogicDesignandApplication(数字逻辑设计及应用)316.10.2RippleAdders(串行进位加法器)(缺点:运算速度慢,有较大的传输延迟)tADD=tXYCout+(n-2)*tCinCout+tCinSXYCICOSXYCICOSXYCICOSXYCICOSC1C2C3C4C0S0S1S2S3X0Y0X1Y1X2Y2X3Y3=0回顾:串行比较器——ImproveSpeed:ParallelAdder

(提高速度:并行加法器)Disadvantage:Slow,MorePropagationDelayDigitalLogicDesignandApplication(数字逻辑设计及应用)32XYCICOSXYCICOSXYCICOSXYCICOSC1C2C3C4C0S0S1S2S3X0Y0X1Y1X2Y2X3Y3XYCMPEQIEQOX0Y0X1Y1XN-1YN-1EQ1EQ2EQNEQN-11XYCMPEQIEQOXYCMPEQIEQOAnIterativeComparator(串行比较器)RippleAdder(串行加法器)PrimaryInputs(主输入)PrimaryOutputs(主输出)BoundaryInputs(边界输入)BoundaryOutputs(边界输出)级联输出33AnIterativeCircuit(迭代电路)Iterative:重复的,反复的,[数]迭代的PICICOPOPICICOPOPICICOPOC0C1C2CnPO0PO1POn-1主输出PI0PI1PIn-1主输入边界输入边界输出级联输出DigitalLogicDesignandApplication(数字逻辑设计及应用)346.10.3Subtractors(减法器)

方法一:利用真值表化简设计减法器二进制减法表(表2-3)D=XYBI

BO=X’·Y+X’·BI+Y·BI

方法二:利用加法器设计减法器(X-Y)相当于(X+Y补)对Y求补:逐位求反+11XYCICOSXYCICOSXYCICOSB_LX0Y0X1Y1XnYnD0D1DnDigitalLogicDesignandApplication(数字逻辑设计及应用)35一位全加器:S=XYCiCi+1=X·Y+(X+Y)·Ci6.10.4Carry-LockaheadAdders

(先行进位加法器)先行进位法:第i

位的进位输入信号可以由该位以前的各位状态决定。Ci+1=(Xi·Yi)+(Xi+Yi)·

Ci=Gi

+Pi

·Ci进位产生信号进位传递信号0000000101010010111010001101101101011111CiXYSCi+1全加器真值表DigitalLogicDesignandApplication(数字逻辑设计及应用)36先行进位法:第i

位的进位输入信号可以由该位以前的各位状态决定。C0=0Ci+1=Gi+Pi

·CiC0=0C1=G0+P0·C0C2=G1+P1·C1=G1+P1·(G0+P0·C0)=G1+P1·G0+P1·P0·C0……Cn=Gn+Pn·Cn(图6-89)展开为“与-或”式:三级延迟MSI加法器74x283图6-876-88DigitalLogicDesignandApplication(数字逻辑设计及应用)6.10.4Carry-LockaheadAdders

(先行进位加法器)376.10.6MSIArithmeticandLogicUnits

(ALU,MSI算术逻辑单元)Performanyofanumberofdifferentarithmeticandlogicaloperationsonapairofb-bitoperands.(对2个b位的操作数进行若干不同的算术和逻辑运算)S0~S3MCINA0~A3B0~B3GPF0~F3COUTA=B74x181输入数据输出数据0算术/1逻辑选择特定操作Table6-70Figure6-906-916-926-93DigitalLogicDesignandApplication(数字逻辑设计及应用)38S1S0Y00011011A·BA+BABA’功能表设计函数发生器,其功能表如下:S1S0ABY00000001真值表1、填写真值表2、选择器件用基本门电路实现利用卡诺图化简用译码器实现转换为最小项之和用数据选择器实现3、电路处理注意有效电平DigitalLogicDesignandApplication(数字逻辑设计及应用)39组合逻辑部分小结第4章组合逻辑设计原理第6章组合逻辑设计实践DigitalLogicDesignandApplication(数字逻辑设计及应用)40第4章基本原理开关代数基础组合逻辑的基本分析、综合方法冒险开关代数的公理、定理对偶、反演规则逻辑函数的表示法

分析步骤,利用公式进行化简

设计方法、步骤利用卡诺图化简,电路处理无关项的化简、多输出函数的化简——冒险的检查和消除DigitalLogicDesignandApplication(数字逻辑设计及应用)41组合电路的分析分析的目的:确定给定电路的逻辑功能分析步骤:由输入到输出逐级写出逻辑函数表达式对输出逻辑函数表达式进行化简判断逻辑功能(列真值表或画波形图)DigitalLogicDesignandApplication(数字逻辑设计及应用)42分析图示逻辑电路的功能B3B2B1B0G3G2G1G0解:1、写表达式2、列真值表3、分析功能0000000100100011010001010110011110001001101010111100110111101111B3B2B1B0G3G2G1G0000000010011G3=B3G2=B3B2G1=B2B1G0=B1B0二进制码至格雷码的转换电路0010011001110101010011001101111111101010101110011000DigitalLogicDesignandApplication(数字逻辑设计及应用)43组合电路的综合问题描述逻辑抽象选定器件类型函数化简电路处理将函数式变换电路实现真值表或函数式用门电路用MSI组合电路或PLDDigitalLogicDesignandApplication(数字逻辑设计及应用)440000000001010101101010101111111100011011000110110001101100011011X1X0Y1Y00000000000000000000000010010001100000010010001100000001101101001P3P2P1P0设计2位数乘法器1、列真值表输入:X、Y(2位)输出:乘积P(4位)P3=X1·X0·Y1·Y0Y1Y0X1X0000111

1000011110P21112、用门电路实现利用卡诺图化简

注意:多输出函数3、电路处理45Y1Y0X1X0000111

10000111100111111111111111Y1Y0X1X0000111

10000111101111Y1Y0X1X0000111

1000011110P2111P3=X1·X0·Y1·Y0P2=X1·Y1·(X1·X0·Y1·Y0)’=X1·Y1·P3’46Y1Y0X1X0000111

1000011110P1111111Y1Y0X1X0000111

1000011110P01111P3=X1·X0·Y1·Y0P2=X1·Y1·P3’P1=X1·Y0·P3’+X0·Y1·P3’P0=X0·Y0Y1Y0X1X0000111

1000011110P21111147比较:按多输出化简(蓝色)按单个卡诺图化简(黑色)P3=X1·

X0·

Y1·

Y0P2=X1·X0·Y1+X1·Y1·Y0’P1=X1·Y1’·Y0+X1·X0’·Y0+

X0·Y1·Y0’

+X1’·X0·Y1P0=X0·

Y0P3=X1·X0·Y1·Y0P2=X1·Y1·P3’P1=X1·Y0·P3’+X0·Y1·P3’P0=X0·Y0考虑:用译码器实现——直接表示为标准和形式DigitalLogicDesignandApplication(数字逻辑设计及应用)48人的血型有A、B、AB、O四种,输血者的血型与受血者的血型必须符合下面的关系。设计逻辑电路判断输血者与受血者的血型是否符合规定。ABABOABABO输血者受血者解:1、逻辑抽象,得真值表

用X1X0对应输血者的血型(00~11)用Y1Y0对应受血者的血型(00~11)输出F,1表示可以输血,0表示不行000110110001101100

00000100

1000

1101

00X1X0

Y1Y0F101002、用门电路实现卡诺图化简(略)利用译码器利用多路复用器49第6章组合逻辑设计实践常用的中规模集成电路(MSI)编码器、译码器、多路复用器、奇偶校验、比较器、加法器、三态器件掌握基本功能,级联的方法综合应用:利用基本MSI器件作为基本单元设计更复杂的组合逻辑电路文档标准和电路定时(了解)DigitalLogicDesignandApplication(数字逻辑设计及应用)50设计减法器

方法一:利用真值表化简二进制减法表(表2-3)D=XYBI

BO=X’·Y+X’·BI+Y·BI

方法二:利用加法器设计减法器(X-Y)相当于(X+Y补)对Y求补:逐位求反+11XYCICOSXYCICOSXYCICOSB_LX0Y0X1Y1XnYnD0D1DnDigitalLogicDesignandApplication(数字逻辑设计及应用)51设计将BCD码转换成余3码的码制转换电路方案一:利用基本门电路(SSI)实现1、列真值表001101000101011001111000100110101011110000000001001000110100010101100111100010011010……1111X3~X0F3~F0d2、卡诺图化简(多输出函数)3、电路处理,得到电路图“与-或”式“与非-与非”式“或-与”式“或非-或非”式方案二:利用中规模集成电路MSI实现——译码器实现多输出函数思考:有没有更好的方法???DigitalLogicDesignandApplication(数字逻辑设计及应用)52X1X0X3X2000111

1000011110F311111ddddddX1X0X3X2000111

1000011110F211111ddddddX1X0X3X2000111

1000011110F111111ddddddX1X0X3X2000111

1000011110F011111dddddd53设计将BCD码转换成余3码的码制转换电路一个更好的方法:余3码=BCD码+3——利用加法器(MSI)实现A0A1A2A3B0B1B2B3C0S0S1S2S3C474x283X0X1X2X3F0F1F2F3VCC1100DigitalLogicDesignandApplication(数字逻辑设计及应用)54实现两个BCD码的加法运算思考:两个BCD码与两个4位二进制数相加的区别如果(X+Y)产生进位信号C或在1010~1111之间需要进行修正——结果加6利用F表示是否需要修正F=C+S3·S2·S1·S0+S3·S2·S1·S0’+S3·S2·S1’·S0+S3·S2·S1’·S0’+S3·S2’·S1·S0+S3·S2’·S1·S0’X1X0X3X2000111

1000011110111111F=C+S3·S2+S3·S1DigitalLogicDesignandApplication(数字逻辑设计及应用)55相加判别修正A0S0A1S1A2S2A3S3B0B1B2B3C0

C474x283A0S0A

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论