数字逻辑课件第4章更新_第1页
数字逻辑课件第4章更新_第2页
数字逻辑课件第4章更新_第3页
数字逻辑课件第4章更新_第4页
数字逻辑课件第4章更新_第5页
已阅读5页,还剩53页未读 继续免费阅读

下载本文档

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

文档简介

1、 第三章 组合逻辑电路的分析与设计3.1 组合电路的特点及有关问题3.2 组合逻辑电路的分析3.3 组合逻辑电路的设计3.4 组合逻辑电路中的竞争与险象3.5 常用MSI组合逻辑器件及其应用 译码器、编码器、三态缓冲器、 多路选择器、奇偶校验电路、 比较器、加法器3.1 组合电路的特点及有关问题 数字系统中的逻辑电路按其结构可分为组合逻辑电路和时序逻辑电路两大类型。本章研究组合逻辑电路。组合电路x1x2xnF1F2Fm组合电路的特点:(1)由逻辑门电路组成,不含任何记忆元件。(2)信号是单向传输的,不存任何反馈回路。 组合电路是指电路在任何时刻产生的稳态输出仅仅取决于该时刻输入变量取值组合,而

2、与过去的输入值无关。3.1.1 逻辑门符号标准(1)长方形符号:所有的门采用相同的长方形形状,用内部 标志区分门的类型我国国标和I EC(International Electrotechnical Commission,国际电工委员会)标准中,采用长方形符号。(2)变形符号:不同类型的门采用不同的形状,用形状区分 门的类型。国外技术资料中较广泛地使用变形符号。I EEE ( Institute of Electrical and Electronics Engineers,电气和电子工程师学会 ) 标准中,允许使用上述两种符号。应避免两种逻辑门符号出现在同一电路图中。常用逻辑门的两种符号名称

3、长方形符号变形符号跟随器非门与门或门与非门或非门与或非门异或门11&1&1=1 1&3.1.2 逻辑门的等效符号&ABF&ABF运用摩根定律,并将反相器用“”代表1ABF1ABF运用摩根定律,并将反相器用“”代表门的等效符号主要用于正、负逻辑的表达及有效级的变换。根据摩根定理得到的门的等效符号名称原符号等效符号跟随器非门与门或门与非门或非门11&1&1111&1&3.1.3 信号名和有效级1. 信号命名逻辑电路的输入、输出信号最好按照其功能和用途来命名。数据信号用 D0、D1、D2 地址信号用 A0、A1、A2 控制信号中的片选信号用 CS,使能信号用 EN 无特殊含义时,输入信号常用 A,

4、B, C, D X0, X1, X2 I0, I1, I2 输出信号常用 F0, F1, F2 Y0, Y1, Y2 Z0, Z1, Z2 2. 信号的有效级 一个逻辑电路,只有在一定的信号逻辑状态下,才能正确地表现出给定的逻辑功能。即:它的控制条件、测试信号都有一个与之对应的有效级,只有信号处在有效级时,逻辑电路才能正确地执行其功能。 例如,某个译码器只有在使能信号为高电平时,才能表现出译码的功能。 再例如,某个片选信号低有效的存储器芯片,只有在片选信号为低电平时,才能正确实现其读、写功能。信号的有效级仅分为高有效或低有效:高有效信号为高电平或逻辑“1”时有效。低有效信号为低电平或逻辑“0”

5、时有效。 按照约定,信号的有效级应反映在信号名上。即:将表示有效级的符号作为信号名的前缀或后缀。信号有效级的约定组号低电平有效高电平有效1ACK-ACK+2ERROR .LERROR .H3ACS(L)ACS(H)4CS*CS5/ENEN6RESET#RESET3.1.4 引端的有效级EN DO RDY SID b c d a器件的符号框符号框内实现了给定的逻辑功能,称为内部逻辑状态。(EN,DO,RDY,SID)符号框外的引端是器件的外部输入、输出线,表现的逻辑关系称为外部逻辑状态。(a,b,c,d) 逻辑非符号体制 图形符号上有带逻辑非符号(即小圆圈)和不带逻辑非符号的输入、输出。只表示输

6、入、输出的内部逻辑状态和外部逻辑状态之间的关系,而外部逻辑状态和物理量(逻辑电平)之间的关系是用正、负逻辑来规定的。引端的有效级是指输入、输出上的物理量(逻辑电平)与其内部逻辑状态的对应关系。3.1.5 引端有效级的变换(混合逻辑变换)例:设输入信号为REY,当信号REQ到达,则产生输出信号BUSY。 要求输入均有效时,输出才有效。解:这无疑是一个与操作。表达式为 BUSY = REY REQ 但是,如果考虑输入、输出有效级的要求,可用不同类型的 逻辑门完成这个“与”功能。&REYREQBUSY高有效输入、输出(与门)&REYREQ/ BUSY高有效输入、低有效输出(与非门)&/ REY/ R

7、EQBUSY低有效输入、高有效输出(或非门)&/ REY/ REQ/ BUSY低有效输入、低有效输出(或门) 当输入信号具有不同的有效级,且与可用门的输入端有效级不一致时,可采用非门改变输入信号的有效级。例如:给定输入信号为 /REY、REQ,输出信号为BUSY,可用下面 的电路产生输出信号。1&/REYREQBUSY用一个与门1&/REYREQBUSY用一个或非门带逻辑非符号的门(如或非门)比不带逻辑非符号的门(如与门)速度更快。 如果逻辑图上给出的信号有效级与器件对应端的有效级不一致,常使某一部分电路的逻辑功能含糊不清,且难以判断逻辑图中某点的信号极性,为读图及测试带来困难。&1&ASEL

8、BDATA&11AASELBDATABSEL信号的有效级与器件输出端不一致不能立即判断选择哪一路将图改画后,逻辑功能一目了然:当ASEL有效,DATA=A;反之,DATA=B。 在保持输入与输出逻辑功能不变的条件下,对逻辑图进行任意变换的规则如下: (混合逻辑变换定理)规则1:任何输入、输出端加上或删去逻辑非符号(小圆圈),且其 对应的信号有效级变反,则逻辑图的功能不变。&/A/BF& A/BF&/A B/F规则2:逻辑图内部连线的两端,同时加上或删去逻辑非符号,则逻辑 图的功能不变。&1FABCD&1FABCD规则3:单个逻辑非符号在内部连线两端移动时,逻辑图的功能不变。&1&FABCD&1

9、&FABCD规则4:若一个门的输入、输出端同时加上或删去逻辑非符号,或输入、 输出信号有效级同时取反,且门的符号“与”、“或”互变后,得到 的新的逻辑图的功能不变。&ABF1ABF1/ A/ B/ F应用上述规则,可使逻辑图上的逻辑功能表达清晰,信号有效级标注准确。3.2 组合逻辑电路的分析分析目的: (1)确定输入变量的不同取值时,电路的逻辑功能是否 满足要求。 (2)得到输出函数的标准与或表达式,以便采用可编程 逻辑器件实现之。 (3)利用该电路的逻辑功能描述,建立硬件描述语言模 型。分析方法: (1)根据给定的逻辑图写出输出函数的逻辑表达式; (2)化简输出函数的逻辑表达式; (3)列出

10、输出函数的真值表; (4)电路逻辑功能评述。例1:试分析图示逻辑电路的功能,并建Verilog HDL模型。&ABCFA B CF0 0 000 0 100 1 000 1 111 0 001 0 111 1 011 1 11电路功能:多数变量取值为1,则F为1;否则,F为0。 该电路为少数服从多数电路表决电路。w1w2w3&ABCF/Verilog HDL门级建模module example( a,b,c,f ); input a,b,c; output f; wire w1,w2,w3; nand u1 (w1,a,b), u2 (w2,b,c), u3 (w3,a,c), u4 (f,w

11、1,w2,w3);endmodule自行构造了一个3人多数表决“逻辑器件”。Verilog HDL门级建模建立Verilog HDL的数据流描述模型/Verilog HDL数据流模型module example( a,b,c,f ); input a,b,c; output f; wire w1,w2,w3; assign w1=a&b; assign w2=b&c; assign w3=a&c; assign f = w1|w2|w3;endmodule建立Verilog HDL的行为模型A B CF0 0 000 0 100 1 000 1 111 0 001 0 111 1 011 1

12、11module example( a,b,c,f ); input a,b,c; output f ; reg f ; always (a or b or c) begin case (a,b,c) 3b011 : f=1; 3b101 : f=1; 3b110 : f=1; 3b111 : f=1; default : f=0; endcase end endmodule例2:试分析图示逻辑电路的功能=1=1=1B3B2B1B0G3G2G1G0B3 B2 B1 B0G3 G2 G1 G00 0 0 00 0 0 00 0 0 10 0 0 10 0 1 00 0 1 10 0 1 10 0

13、 1 00 1 0 00 1 1 00 1 0 10 1 1 10 1 1 00 1 0 10 1 1 10 1 0 01 0 0 01 1 0 01 0 0 11 1 0 11 0 1 01 1 1 11 0 1 11 1 1 01 1 0 01 0 1 01 1 0 11 0 1 11 1 1 01 0 0 11 1 1 11 0 0 0功能描述:自然二进制码转换成 格雷码(循环码)例3:试分析图示逻辑电路的功能 1 & 1ABF功能描述:由化简后的输出函数表达式可看出,原电路实现 A、B的异或功能,可用一个异或门实现。=1ABF例4:试对图示电路的P、Q点进行故障诊断。 (故障不是同时发

14、生的)&=1BACFPQ试问:1.哪些测试信号可从输出F中判别P点出现了故障, 是何种性质的故障? 2.哪些测试信号可从输出F中判别Q点出现了故障, 是何种性质的故障? 3.那些信号不能作测试用?解:首先假设故障有两类:0 故障故障点始终为逻辑“0” 1 故障故障点始终为逻辑“1” 方法:写出无故障时和发生各种故障时,电路的输出表达式, 列出真值表。 判别:使各输出函数值不相等的那些输入变量组合可用于测 试对应的故障。&=1BACFPQ1. 列出各种情况下,函数的表达式无故障时PQ&=1BACFPQP点出现 1 故障时P点出现 0 故障时Q点出现 1 故障时Q点出现 0 故障时2. 列出各函数

15、的真值表3. 逻辑分析0、1、2、3、4 五种输入组合,可判断Q点是否存在1故障第5种输入组合,可判断P点或Q点是否存在0故障,但不能确定故障点。第7种输入组合,可判定P点是否出现1故障第6种输入组合,不能判断故障。注:数字系统的故障诊断是一门独立的课程,通过本例只了解初浅概念解毕作业10:P166167 3.2(1, 3)化简,用与非门实现 3.2(4, 6)化简,建Verilog HDL数据流模型 3.3(1)化简,用或非门实现 3.3(2)建Verilog HDL行为模型3.3 组合逻辑电路的设计完成对逻辑功能的描述,建立逻辑命题按照逻辑命题的输入输出关系,构造真值表依照真值表写出逻辑表

16、达式,并进行化简根据物理条件变换逻辑表达式,给出原理图检查3.3.1 根据逻辑问题的描述写出逻辑表达式一. 逻辑问题描述真值表逻辑表达式例1:半加器的设计。 半加器是能实现两个一位二进制数相加,求得和数及向高位进位的逻辑电路。输入输出加数A加数B和数S进位C0000011010101101半加器真值表=1&ABSC如果用与非门实现替代尾因子,消除反变量&ABSCAiBiSiCiCO半加器逻辑符号半加器的Verilog HDL描述module subadd(a,b,s,c); input a,b; output s,c; assign c,s=a+b;endmoduleAiBiSiCiCO半加器

17、逻辑符号其他描述方式?仿真验证例2:全加器的设计。 全加器是能实现三个一位二进制数相加(两个本位加数,一个低位向本位的进位),求得和数及向高位进位的逻辑电路。输入输出AiBiCi-1SiCi0000000110010100110110010101011100111111全加器真值表解:设输入端Ai被加数; Bi加数; Ci-1低位向本位的 进位;输出端 Si本位和; Ci本位向高位的 进位。AiBiCi-100 01 11 1001SiAiBiCi-100 01 11 1001Ci最简与或式对应电路图见教材P98用两个半加器写出逻辑表达式:1全加器的逻辑符号用全加器构成四位二进制数加法器:0向

18、上进位全加器的Verilog HDL描述module add(a,b,cin,s,cout); input a,b,cin; output s,cout; assign cout,s=a+b+cin;endmodule注意“+”的含义不用拼接,该如何?仿真?同学可到EDA平台上试一下!例3:代码转换电路的设计。试设计8421码转换成余3码的逻辑电路。解:设输入的8421码为B3B2B1B0, 输出的余3码为Y3Y2Y1Y0。8421码余3码B3B2B1B0Y3Y2Y1Y00 0 0 00 0 0 10 0 1 00 0 1 10 1 0 00 1 0 10 1 1 00 1 1 11 0 0

19、01 0 0 11 0 1 01 0 1 11 1 0 01 1 0 11 1 1 01 1 1 1 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 d d d d d d d d d d d d d d d d d d d d d d d dB3B2B1B000 01 11 1000011110B3B2B1B000 01 11 1000011110B3B2B1B000 01 11 1000011110B3B2B1B000 01 11 10000111108421码余3码B3B2B1

20、B0Y3Y2Y1Y00 0 0 00 0 0 10 0 1 00 0 1 10 1 0 00 1 0 10 1 1 00 1 1 11 0 0 01 0 0 11 0 1 01 0 1 11 1 0 01 1 0 11 1 1 01 1 1 1 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 d d d d d d d d d d d d d d d d d d d d d d d d请同学自己画出用逻辑电路图8421码余3码B3B2B1B0Y3Y2Y1Y00 0 0 00 0 0

21、10 0 1 00 0 1 10 1 0 00 1 0 10 1 1 00 1 1 11 0 0 01 0 0 11 0 1 01 0 1 11 1 0 01 1 0 11 1 1 01 1 1 1 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 d d d d d d d d d d d d d d d d d d d d d d d d建立8421码转换成余3码的Verilog HDL行为模型。思路:余3码 = 8421码 + 0011 控制输入伪码module ch8421_y

22、u3(Bin,Yout); input 3:0 Bin; output 3:0 Yout; reg 3:0 Yout; always(Bin) if (Biny) begin F1=1 ; F2=0 ; F3=0 ; end else if (x=y) begin F1=0 ; F2=0 ; F3=1 ; end else if (xy) begin F1=0 ; F2=1 ; F3=0 ; endendmodule修改,任意位宽,体现优势!仿真验证,符号,应用三. 逻辑问题描述逻辑表达式有时,可由逻辑问题的描述直接写出表达式。例:测得某电路输出F与输入A、B、C的波形关系如下,试写出 逻辑表达式并画出与非门实现的逻辑图。CBAF10011101011111111&FABC基于Verilog HDL的组合逻辑行

温馨提示

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

评论

0/150

提交评论