数字电路与逻辑设计b第3章.ppt
3.26基于MSI的组合电路设计v例3.2.5 试用一片7485 和若干门电路实现两个5 位二进制数A4A3A2A1A0 和B4B3B2B1B0的比较。1例:用一片例:用一片7485实现两个实现两个5位二进制数位二进制数A4A3A2A1A0和和B4B3B2B1B0的比较。的比较。解:关键在最低位的比较解:关键在最低位的比较 0 0 01 1 01 1 00 0 00 0 10 0 10 0 10 1 10 0 11 0 10 0 11 1 10 1 00 1 01 0 01 0 0FAB FAB)i(AB)i=A0(A4;(2)A3A2A1A0=1001;若若F1表示条件表示条件1,F2表示条件表示条件2,则,则F=F1F2。9函数函数F2真值表真值表F2=A3A010图图 4.2.35 113.3 竞争和冒险竞争和冒险 1.竞争竞争 (1)由于连线和集成门有一定的延迟时间,致使由于连线和集成门有一定的延迟时间,致使同一输入信号经过不同路径到达输出端有先有后同一输入信号经过不同路径到达输出端有先有后(1个或个或1个以上输入信号变化);个以上输入信号变化);(2)多个输入信号同时变化,由于变化的快慢不多个输入信号同时变化,由于变化的快慢不同,致使多个输入信号到达输出端有先有后(同,致使多个输入信号到达输出端有先有后(2个或个或2个以上输入信号变化)。个以上输入信号变化)。3.3.1 竞争和冒险的概念竞争和冒险的概念12例例1:F=AC+AB。图图 3.3.1(d)(g)(e)对于对于A信号变量而言,它在不同路径上传输,传信号变量而言,它在不同路径上传输,传输到达输出或门的输入端的时间不一样,而这种现象输到达输出或门的输入端的时间不一样,而这种现象就称为就称为变量的竞争变量的竞争。冒险:冒险:由于竞争的存在,使数字电路输出出现由于竞争的存在,使数字电路输出出现非预期信号的现象。非预期信号的现象。13图图 3.3.2 冒险的产生冒险的产生(d)(g)(e)A(d)B=C=1 时时A(g)1tpd1tpdA(e)2tpd2tpdF1tpd11011 A AA1 可看出冒险可看出冒险发生在输入信发生在输入信号号动态变化的动态变化的瞬间瞬间。14 按短暂尖峰极性按短暂尖峰极性 AFA0 1 0(a)1型冒险型冒险 冒险的分类冒险的分类AFA1 0 1(b)0型冒险型冒险 15按产生的原因分为逻辑冒险和功能冒险。按产生的原因分为逻辑冒险和功能冒险。逻辑冒险:逻辑冒险:由于输入信号经过的路径不同而引起的由于输入信号经过的路径不同而引起的冒险;冒险;功能冒险:功能冒险:由于若干个信号同时变化,变化的快慢由于若干个信号同时变化,变化的快慢不同而引起的冒险。不同而引起的冒险。16例例1:用代数法判断是否存在逻辑冒险:用代数法判断是否存在逻辑冒险:解:解:A是具有竞争条件的变量。是具有竞争条件的变量。3.3.2 逻辑冒险逻辑冒险 判断方法:代数法和卡诺图法判断方法:代数法和卡诺图法17例例3:判断:判断F=(A+C)(B+C)是否存在逻辑冒险。是否存在逻辑冒险。解:当解:当A=B=0时,时,F=C C,在在C发生跳变时,可能出现发生跳变时,可能出现“1”型冒险。型冒险。例例2:用代数法判断电路是否存在逻辑冒险现象。:用代数法判断电路是否存在逻辑冒险现象。解:解:A和和C是具有竞争条件的变量。是具有竞争条件的变量。变量变量C不存在冒险现象。不存在冒险现象。18判断方法:判断方法:1.观察表达式是否某个变量同时以原、反变量的形观察表达式是否某个变量同时以原、反变量的形式存在。式存在。2.若有则将其余变量取固定值,是否能得到若有则将其余变量取固定值,是否能得到F=A+A或或F=A A的形式,若有,则可能存在逻的形式,若有,则可能存在逻辑冒险。辑冒险。结论:结论:与或表达式得到与或表达式得到“0”型冒险;型冒险;或与表达式得到或与表达式得到“1”型冒险。型冒险。192)卡诺图法)卡诺图法例:判断例:判断F=AC+B C是否存在逻辑冒险?是否存在逻辑冒险?A BC 11111010110100结论:结论:取值在两个相切卡诺圈变化时,逻辑冒取值在两个相切卡诺圈变化时,逻辑冒险可能发生。险可能发生。20判断方法:判断方法:只要有两个存在部分相切,且相切部分只要有两个存在部分相切,且相切部分没有被另外的卡诺圈包围,则可能存在冒险。没有被另外的卡诺圈包围,则可能存在冒险。冒险发生在其中一个卡诺圈中的最小项对应的取值冒险发生在其中一个卡诺圈中的最小项对应的取值变为另一卡诺圈中任一最小项对应取值的时刻。变为另一卡诺圈中任一最小项对应取值的时刻。21例例:F=B C+A B+A C D。试判断是否存在逻。试判断是否存在逻辑冒险。辑冒险。AB CD 11011111110111110010110100在在 AC=00 时,或时,或在在 ABD=111 时,时,在在 BCD=011 时,或时,或存在存在0型逻辑冒险。型逻辑冒险。222 功能冒险功能冒险 例:判断例:判断F=AC+B C是否存在功能冒险?是否存在功能冒险?A BC 11111010110100111110(C先于先于A变化)变化)010 对应的输出函数值对应的输出函数值为为111。111011(A先于先于C变化)变化)010 对应的输出函数值对应的输出函数值为为101,出现了,出现了“0”型冒险。型冒险。231.输入变量变化前后,函数值相同;输入变量变化前后,函数值相同;2.有有p(2)个变量同时变化;)个变量同时变化;3.不变的(不变的(n-p)个输入变量组成的乘积项所对)个输入变量组成的乘积项所对应的卡诺圈中,有应的卡诺圈中,有“1”也有也有“0”。则电路中存在功能冒险。则电路中存在功能冒险。判断方法判断方法:24111111010110100ABC例例6 已知已知 F=A C+B C+A C,当,当ABC 从从101变为变为110时,是否会出现功能冒险。时,是否会出现功能冒险。1.F(1,0,1)=F(1,1,0);2.B和和C 2个变量同时变化;个变量同时变化;3.A对应的卡诺圈中有对应的卡诺圈中有“0”也有也有“1”。所以,电路中存在功能冒险。所以,电路中存在功能冒险。25 CDB DA CF例:分析下图所示组合电路,当输入信号例:分析下图所示组合电路,当输入信号ABCD从从0100变化到变化到1101、从、从0111变化到变化到1110以及从以及从1001变变化到化到1011时,是否由冒险现象发生。时,是否由冒险现象发生。解:该组合逻辑电路的逻辑函数表达式为:解:该组合逻辑电路的逻辑函数表达式为:F=CD+B D+A C 26AB CD 111101111111110110010110100F=CD+B D+A C(1)01001101可能存在可能存在0型功能冒险型功能冒险 不存在逻辑冒险不存在逻辑冒险(2)01111110 不存在功能冒险不存在功能冒险,可能存在可能存在0型逻辑冒险型逻辑冒险 (3)10011011可能存在可能存在0型逻辑冒险型逻辑冒险,不存在功能冒险。不存在功能冒险。274.3.4 冒险的消除方法冒险的消除方法 1)增加多余项,可消除逻辑冒险)增加多余项,可消除逻辑冒险 例例3:F=AC+B C+A C,试用增加多余项的方法,试用增加多余项的方法消除逻辑冒险。消除逻辑冒险。111111010110100ABCF=AC+B C+A C+AB在卡诺圈内部取值变化,不会存在逻辑冒险,在卡诺圈内部取值变化,不会存在逻辑冒险,因此可以用增加多余卡诺圈的方法,消除逻辑冒险。因此可以用增加多余卡诺圈的方法,消除逻辑冒险。28例例9 F=B C+A B+A C D。试用增加多余项。试用增加多余项 的方法消除逻辑冒险。的方法消除逻辑冒险。AB CD 11011111110111110010110100 F=B C+A B+A C D+AC+ABD+BCD292)加滤波电容)加滤波电容(对输出波形边沿要求不高的情(对输出波形边沿要求不高的情况下运用况下运用)A A F 图图 4.3.5 加电容消除冒险加电容消除冒险30其中,其中,F和和F*分别表示组合电路加取样脉冲之前、分别表示组合电路加取样脉冲之前、之后的输出。之后的输出。00111正确正确输出输出F取样取样脉冲脉冲F*3)加取样脉冲)加取样脉冲3132例例10 已知已知 F=A B+A C,用,用74138实现该函数,实现该函数,电路图如下所示。试分析电路是否存在逻电路图如下所示。试分析电路是否存在逻辑冒险,若存在,加取样脉冲避免之。辑冒险,若存在,加取样脉冲避免之。33解:解:由图可知,存在相切的卡诺圈,该电路可能存由图可知,存在相切的卡诺圈,该电路可能存在在0型逻辑冒险。型逻辑冒险。取样脉冲加在取样脉冲加在74138的的使能端使能端上,如下图所示:上,如下图所示:F=m2 m3 m5 m7=m2+m3+m5+m711111010110100ABC3435作业题作业题3.173.203.2236