




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第第 6 章组合逻辑电路章组合逻辑电路 组合逻辑电路组合逻辑电路及特点及特点组合逻辑电路中的竞争冒险组合逻辑电路中的竞争冒险MSIMSI构成的组合逻辑电路的分析与设计构成的组合逻辑电路的分析与设计常用组合逻辑电路常用组合逻辑电路组合逻辑电路的组合逻辑电路的分析和设计方法分析和设计方法本章小结本章小结主要内容主要内容本章目标本章目标 本章目标本章目标n了解全加器、译码器、编码器、数据选择了解全加器、译码器、编码器、数据选择器的器的vhdl描述;描述;n掌握组合逻辑电路的分析与设计方法;掌握组合逻辑电路的分析与设计方法;n掌握常用中规模组合逻辑器件的基本结构掌握常用中规模组合逻辑器件的基本结构及扩
2、展应用;及扩展应用;n掌握基于掌握基于QuartusII的图形输入法设计仿真的图形输入法设计仿真组合逻辑电路。组合逻辑电路。关键术语:关键术语: SSI组合逻辑电路组合逻辑电路MSI组合逻辑电路组合逻辑电路6.1组合逻辑电路特点与功能描述组合逻辑电路特点与功能描述组合逻辑电路组合逻辑电路 电路在任一时刻的输出状态仅取决于该时刻输入信号的状态,而与电路原有状态无关 一个封装内部的逻辑门个数小于12个的集成电路 一个封装内部有12100个等效逻辑门的集成电路。 1. 1.组合逻辑电路示意图组合逻辑电路示意图000111101111011()()()nnmmnFfAAAFf AAAFfAAA, ,
3、, ,2.2.组合逻辑电路的特点与描述方法组合逻辑电路的特点与描述方法 组合逻辑电路的逻辑功能特点:组合逻辑电路的逻辑功能特点: 没有存储和记忆作用。没有存储和记忆作用。 组合逻辑电路的组成特点:组合逻辑电路的组成特点: 由门电路构成,不含存储元件,只存在从输入到输出由门电路构成,不含存储元件,只存在从输入到输出的通路,没有反馈回路。的通路,没有反馈回路。 组合逻辑电路的描述方法:组合逻辑电路的描述方法: 逻辑表达式、真值表、卡诺图和逻辑图,还可以逻辑表达式、真值表、卡诺图和逻辑图,还可以用硬件描述语言用硬件描述语言VHDL和和VerilogHDL来描述。来描述。主要要求:主要要求:掌握组合逻
4、辑电路掌握组合逻辑电路分析与设计的基本方法分析与设计的基本方法。熟练掌握熟练掌握逻辑表达式、真值表、卡诺图和逻逻辑表达式、真值表、卡诺图和逻辑图辑图表示法。表示法。 SSI SSI构成的组合逻辑电路构成的组合逻辑电路 的分析与设计的分析与设计 6.2 6.2.1 6.2.1 组合逻辑电路的基本分析方法组合逻辑电路的基本分析方法分析思路:分析思路:基本步骤:基本步骤:根据给定逻辑电路,找出输出输入间的逻辑关系,根据给定逻辑电路,找出输出输入间的逻辑关系,从而确定电路的逻辑功能。从而确定电路的逻辑功能。 根据给定逻辑图根据给定逻辑图写出输出逻辑式写出输出逻辑式,并进行必要的化简,并进行必要的化简列
5、真值表列真值表分析逻辑功能分析逻辑功能 例例6-1 6-1 分析下图所示电路的逻辑功能。分析下图所示电路的逻辑功能。解:解: ( (1) )写出输出逻辑函数式写出输出逻辑函数式( (3) )分析逻辑功能分析逻辑功能( (2) )列逻辑函数真值表列逻辑函数真值表1111000YBA输输 出出输输 入入00根据同或功能可列出真值表如上表;根据同或功能可列出真值表如上表;也可先求标准与或式,然后得真值表。后也可先求标准与或式,然后得真值表。后者是分析电路的常用方法,下面介绍之。者是分析电路的常用方法,下面介绍之。通过分析真值表通过分析真值表特点来说明功能。特点来说明功能。 A、B 两个输入变量的状态
6、相同时,输出两个输入变量的状态相同时,输出为为 1,否则输出为,否则输出为 0。因此,图示电路为同或。因此,图示电路为同或电路,实现了两个变量的同或逻辑功能。电路,实现了两个变量的同或逻辑功能。01112131FABFAFAABABFBFB ABB A423FF FAB BAABABAB4FFA BA B 初学者一般从输入向输出逐级写出各初学者一般从输入向输出逐级写出各个门的输出逻辑式。熟练后可从输出向输个门的输出逻辑式。熟练后可从输出向输入直接推出整个电路的输出逻辑式。入直接推出整个电路的输出逻辑式。 由由 Si 表达式可知,表达式可知,当输入有奇数个当输入有奇数个 1 时,时,Si = 1
7、,否则,否则 Si = 0。 例例 分析下图电路的逻辑功能。分析下图电路的逻辑功能。解:解:( (2) )列真值表列真值表( (1) )写出输出逻辑函数式写出输出逻辑函数式AiBiCi-1CiSiiiiiiiBACBAC 1)(iiiiiiiiBACBACBA 11AiBi Ci-10100 01 11 10 1 1 1 1111011101001110010100000CiSiCi-1BiAi输输 出出输输 入入11110000由由 Ci-1 表达表达式可画出其式可画出其卡诺图为:卡诺图为:11101000可列出真值表为可列出真值表为1 iiiiCBAS( (3) )分析逻辑功能分析逻辑功能
8、将两个一位二进制数将两个一位二进制数 Ai 、Bi 与低位来的进与低位来的进位位 Ci- -1 相加,相加,Si 为本位和,为本位和,Ci 为向高位产生的为向高位产生的进位。这种功能的电路称为全加器。进位。这种功能的电路称为全加器。6.2.2 SSI6.2.2 SSI构成组合逻辑电路的设计构成组合逻辑电路的设计基本步骤:基本步骤: 分析设计要求并分析设计要求并列出真值表列出真值表求最简输出求最简输出逻辑式逻辑式画逻辑图。画逻辑图。 首先分析给定问题,弄清楚输入变量和输出变量是首先分析给定问题,弄清楚输入变量和输出变量是哪些,并规定它们的符号与逻辑取值哪些,并规定它们的符号与逻辑取值( (即规定
9、它们何时即规定它们何时取值取值 0 ,何时取值,何时取值1) ) 。然后分析输出变量和输入变量。然后分析输出变量和输入变量间的逻辑关系,列出真值表。间的逻辑关系,列出真值表。根据真值表用代数法或卡诺图法求最简与或式,根据真值表用代数法或卡诺图法求最简与或式,然后根据题中对门电路类型的要求,将最简与或式变然后根据题中对门电路类型的要求,将最简与或式变换为与门类型对应的最简式。换为与门类型对应的最简式。 根据简化或变换后的逻辑函数表达式画出逻辑电路图。下面通过例题学习下面通过例题学习如何设计组合逻辑电路如何设计组合逻辑电路 ( (一一) )单输出组合逻辑电路设计举例单输出组合逻辑电路设计举例 例例
10、 设计一个设计一个A、B、C三人表决电路。当表决某个提案时,三人表决电路。当表决某个提案时,多数人同意,则提案通过,但多数人同意,则提案通过,但A具有否决权。用与非门实现。具有否决权。用与非门实现。解:解: ( (1) )分析设计要求,列出真值表分析设计要求,列出真值表设设 A、B、C 同意提案时取值同意提案时取值为为 1,不同意时取值为,不同意时取值为 0;Y 表示表示表决结果,提案通过则取值为表决结果,提案通过则取值为 1,否则取值为否则取值为 0。可得真值表如右。可得真值表如右。A、B、C三人表决电路三人表决电路多数人同意,则提案通过,但多数人同意,则提案通过,但A具有否决权具有否决权1
11、11011101001110010100000YCBA输出输出输输 入入0000000011111111110( (2) )化简输出函数化简输出函数Y=AC+ABABC0100 01 11 10 1 1 1 0 0 0 0 0用与非门实现用与非门实现,并求最简与非式,并求最简与非式=AC+AB=ACAB( (3) )根据输出逻辑式画逻辑图根据输出逻辑式画逻辑图YABCY =ACAB【例例6-36-3】某大楼电梯系统设有某大楼电梯系统设有3 3部电梯,为了监测电梯运行情况,需要设部电梯,为了监测电梯运行情况,需要设计一个电梯运行情况监测电路,规定只要有计一个电梯运行情况监测电路,规定只要有2 2
12、部以上电梯运行,则监测电路部以上电梯运行,则监测电路输出电梯系统正常工作信号,否则输出电梯系统故障信号。试用与非门和或输出电梯系统正常工作信号,否则输出电梯系统故障信号。试用与非门和或非门分别设计该电梯系统运行情况监测电路。非门分别设计该电梯系统运行情况监测电路。解:(解:(1 1)根据题意,输入变量用)根据题意,输入变量用A,B.CA,B.C分别表示分别表示3 3部电梯的运行状态,输部电梯的运行状态,输出变量用出变量用F F表示监测电路输出信号状态。输入变量用逻辑表示监测电路输出信号状态。输入变量用逻辑1 1表示电梯正在运行表示电梯正在运行,用逻辑,用逻辑0 0表示电梯停止运行;输出变量用逻
13、辑表示电梯停止运行;输出变量用逻辑1 1表示系统运行正常,用逻辑表示系统运行正常,用逻辑0 0表示系统运行故障。由此可列出如下所示真值表。表示系统运行故障。由此可列出如下所示真值表。FABCABCABCABCFBCACAB (4) 画逻辑图画逻辑图(2)根据真值表写出输出逻辑函数表达式)根据真值表写出输出逻辑函数表达式(3)用卡诺图进行化简。可得简化的逻辑表达式)用卡诺图进行化简。可得简化的逻辑表达式实现实现【例【例6-36-3】设计的电路可有多个不同的方案。下面介绍设计的电路可有多个不同的方案。下面介绍两种常用的方案两种常用的方案。 方案一:用与非门实现方案一:用与非门实现将简化后表达式变换
14、为与非将简化后表达式变换为与非- -与非表达式与非表达式FBCACABBC AC AB方案二:用或非门实现方案二:用或非门实现由卡诺图圈由卡诺图圈0 0,化简出最简或与式,进而变换为或非,化简出最简或与式,进而变换为或非- -或非表或非表达式达式)()()FBCACABBCACAB( ( (二二) )多多输出组合逻辑电路设计举例输出组合逻辑电路设计举例 【例【例6-4】试分别用逻辑门和】试分别用逻辑门和VHDL语言设计一个语言设计一个8421码转码转换成换成5421码的码组变换电路。码的码组变换电路。 用逻辑门设计用逻辑门设计 解解(1)根据题意列出真值表根据题意列出真值表(2 2)用卡诺图化
15、筒)用卡诺图化筒由卡诺图化简由卡诺图化简 ( (注意无关项的使用注意无关项的使用) )可得如下逻辑函数表达式:可得如下逻辑函数表达式:3210YABCBDYADBC DYADBCCDYADABDBC D(3 3)根据逻辑函数表达式画出逻辑图)根据逻辑函数表达式画出逻辑图 利用上面已推出的逻辑函数表达式,结构体采用数据流描述。利用上面已推出的逻辑函数表达式,结构体采用数据流描述。3210YABCBDYADBC DYADBCCDYADABDBC D2用用VHDL实现实现library ieee; use ieee.std_logic_1164.all;entity xiti309 is port(
16、a,b,c,d:in std_logic;y3,y2,y1,y0:out std_logic);end;architecture xiti309ar of xiti309 is begin y3=a or (b and c) or (b and d); y2=(a and d) or (b and (not c) and (not d); y1=(a and (not d) or (not b) and c) or (c and d); y0=(a and (not d) or (not a) and (not b) and d) or (b and c and (not d);end xit
17、i309ar;* *【例例6-56-5】在只有原变量输入、没有反变量输入条件下,用最在只有原变量输入、没有反变量输入条件下,用最少与非门实现下列函数。少与非门实现下列函数。()(4 5 6 7 8 9 10 11 12 13 14)F ABCDm, , , , , , ,解:(解:(1 1)用卡诺图对函数进行化简,得到最简与或式。)用卡诺图对函数进行化简,得到最简与或式。FABABBCAD由式画出的逻辑电路如由式画出的逻辑电路如下下图图所示所示(2 2)对简化式做如下变换)对简化式做如下变换: :FABABBCAD 利用冗余项定理利用冗余项定理,ABACBCABAC添加多余项(生成项)添加多余
18、项(生成项) ABADABADBDABBCABBCACFABABADBCBDAC原式变为原式变为()()FA BCDB ACDABCDB ACDAABCDB ABCD合并尾部因子合并尾部因子FAABCDB ABCDAABCD B ABCD变为与非变为与非-与非式与非式画逻电路辑图画逻电路辑图6.3 常用组合逻辑电路常用组合逻辑电路6.3.1加法器加法器超前进位:超前进位:电路进行二进制加法运算时,通过快速进位电路几电路进行二进制加法运算时,通过快速进位电路几 乎同时产生进位信号。乎同时产生进位信号。 半加器半加器:只考虑本位两个二进制数相加,而不考虑来自低位:只考虑本位两个二进制数相加,而不考
19、虑来自低位 进位数相加的运算电路进位数相加的运算电路全加器:全加器:除考虑本位两个二进制数相加外,还考虑来自低位除考虑本位两个二进制数相加外,还考虑来自低位 进位数相加的运算电路。进位数相加的运算电路。串行进位:串行进位:电路进行二进制加法运算时,各全加器由低位到电路进行二进制加法运算时,各全加器由低位到高高 位逐位传递进位信号。位逐位传递进位信号。 1.1.半加器半加器(加法器基本单元)加法器基本单元)半加器半加器 Half Adder,简称,简称 HA。它只将两个。它只将两个 1 位位二进制数相加,而不考虑低位来的进位。二进制数相加,而不考虑低位来的进位。1011010101100000C
20、iSiBiAi输输 出出输输 入入AiBiSiCiCO ABCBABABASSiCiAiBi半加器电路能用半加器电路能用与非门实现吗?与非门实现吗?用与非门实现的半加器电路为用与非门实现的半加器电路为AiBiSiCi1 iiiBAC iiBA iiiiiBABAS iiiiBABA iiiiiiABABBA. . 此式虽非最简,但这样可利用此式虽非最简,但这样可利用 Ci 中的中的信号信号 Ai Bi ,省去实现省去实现 Ai 和和 Bi 的两个非门,的两个非门,从而使整体电路最简。从而使整体电路最简。全加器全加器Full Adder,简称,简称FA。能将本位的两个。能将本位的两个二进制数和邻
21、低位来的进位数进行相加。二进制数和邻低位来的进位数进行相加。1111110011101010100110110010100110000000CiSiCi-1BiAi输输 出出输入输入AiBiSiCiCOCICi-11 iiiiCBASiiiiiiBACBAC 1)( 用用VHDL描述一位全加器描述一位全加器library ieee;use ieee.std_logic_1164.all;entity adder is port (ai, bi, ci : in std_logic; si, co : out std_logic); end adder;architecture adder of
22、 adder is beginiiiiSABC()iiiiiiCAB CAB si= ai xor bi xor ci;co= (ai xor bi) and ci or ai and bi); end adder;AiBiSiCOCOCICi3. 加法器加法器 实现多位加法运算的电路实现多位加法运算的电路其低位进位输出端依次连至相邻高其低位进位输出端依次连至相邻高位的进位输入端,最低位进位输入端接位的进位输入端,最低位进位输入端接地。因此,高位数的相加必须等到低位地。因此,高位数的相加必须等到低位运算完成后才能进行,这种进位方式称运算完成后才能进行,这种进位方式称为串行进位。运算速度较慢。为
23、串行进位。运算速度较慢。其进位数直接由加数、被加数其进位数直接由加数、被加数和最低位进位数形成。各位运算并和最低位进位数形成。各位运算并行进行。运算速度快。行进行。运算速度快。串行进位加法器串行进位加法器超前进位加法器超前进位加法器(1) (1) 串行进位加法器串行进位加法器A3B3C4S3COCIS2S1S0A2B2A1B1A0B0COCICOCICOCICI加数加数 A 输入输入A3A2A1A0B3B2B1B0B3B2B1B0加数加数 B 输入输入低位的进位输出低位的进位输出 CO 依次加到相邻高位依次加到相邻高位的进位输入端的进位输入端 CI 。相加结果读数为相加结果读数为 C4S3S2
24、S1S0和数和数进位数进位数特点:特点: 电路简单,运算速度较慢电路简单,运算速度较慢(2) 超前进位加法器超前进位加法器 CT74LS283相加结果读数相加结果读数为为 C3S3S2S1S0 4 位二进制加位二进制加数数 B 输入端输入端 4 位二进制加位二进制加数数 A 输入端输入端低位片进位输入端低位片进位输入端本位和输出端本位和输出端向高位片的向高位片的进位输出进位输出A3A2A1A0B3B2B1B0CI0CO4F3F2F1F0S3S2S1S0C3CT74LS283逻辑符号逻辑符号100000211111322222433333()()()()()()()()CCA BABCCA BA
25、BCCA BABCCA BAB1()()()iiiiiiiiiiiCCA BABA BCAB0000111122223333SABCSABCSABCSABC各进位位表达式各进位位表达式各位和数表达式各位和数表达式283结构示意图结构示意图应用实例应用实例1 由四位超前进位加法器由四位超前进位加法器74LS283和异或门和异或门74LS86组成的组成的可控的四位并行二进制加法减法运算电路。可控的四位并行二进制加法减法运算电路。 当当 的时候,的时候, 以反变量形式以反变量形式 输入到并行加法器,输入到并行加法器,进位输入端进位输入端 ,这样加法器完这样加法器完成成 , 为为 的补码,的补码,运算
26、结果为运算结果为 。 当当 的时候,的时候, 以原变量形式输入到并行加法器,以原变量形式输入到并行加法器,进位输入端进位输入端 ,运算结果,运算结果为为 。该电路可以对。该电路可以对4位有符位有符号或无符号二进制数作加减运算。号或无符号二进制数作加减运算。/1ADD SUB B1CI (1)AB()AB/0ADD SUB (1)BBB0CI ()AB6.3.2编码器编码器 主要要求:主要要求: 理解编码的概念。理解编码的概念。 理解常用编码器的类型、逻辑功能和使用方法。理解常用编码器的类型、逻辑功能和使用方法。编码器的概念与类型编码器的概念与类型 编码编码 将具有特定含义的信息编将具有特定含义
27、的信息编成相应二进制代码的过程。成相应二进制代码的过程。 实现编码功能的电路实现编码功能的电路 编码器编码器 二进制普通编码器二进制普通编码器 二二- -十进制普通编码器十进制普通编码器 优先编码器优先编码器 编码器编码器( (即即Encoder) ) 被编被编信号信号 二进制二进制代码代码 编编码码器器 I1I2I3I4I5I6I7Y0Y1Y23 位二进制位二进制编码器编码器用用 n 位二进制数码对位二进制数码对 2n 个个输入信号进行编码的电路。输入信号进行编码的电路。 1.1.二进制编码器二进制编码器由图可写出编码器由图可写出编码器的输出逻辑函数为的输出逻辑函数为由上式可列出真值表为由上
28、式可列出真值表为原原码码输输出出Y0=I1I3I5I7Y2=I4I5I6I7Y1=I2I3I6I7Y0=I1I3I5I7I0省略不画省略不画 8 个需要编码个需要编码的输入信号的输入信号输出输出 3 位位二进制码二进制码I1I2I3I4I5I6I7Y0Y1Y21111000000001101000000101001000000010001000011000001000010000001001000000001000000000001Y0Y1Y2I7I6I5I4I3I2I1I0输输 出出输输 入入被编信号高电平有效。被编信号高电平有效。 8 线线 3 线编码器线编码器I1I2I3I4I5I6I7
29、Y0Y1Y2I8I9Y38421BCD 码编码器码编码器2. 2. 二十进制编码器二十进制编码器将将 0 9 十个十十个十进制数转换为二进制进制数转换为二进制代码的电路。又称代码的电路。又称十十进制编码器进制编码器。 I0省略不画省略不画输出输出 4 位位二进制代码二进制代码原码输出原码输出I1I2I3I4I5I6I7Y0Y1Y2I8I9Y310011000000000000101000000001110001000000001100001000000101000001000000010000001000011000000001000010000000001001000000000001000
30、000000000001Y0Y1Y2Y3I9I8I7I6I5I4I3I2I1I0输出输出输入输入10 线线 4 线线编码器编码器被编信号被编信号高电平有效高电平有效为何要使用为何要使用优先编码器?优先编码器?3.3.优先编码器优先编码器 ( (即即 Priority Encoder) ) 1111000000001101000000101001000000010001000011000001000010000001001000000001000000000001Y0Y1Y2I7I6I5I4I3I2I1I0输输 出出输输 入入允许同时输入数个编码信号,并只对允许同时输入数个编码信号,并只对其中优
31、先权最高的信号进行编码输出的电其中优先权最高的信号进行编码输出的电路。路。 普通编码器在普通编码器在任何时刻只允许一任何时刻只允许一个输入端请求编码,个输入端请求编码,否则输出发生混乱。否则输出发生混乱。CT74LS147I8I1I2I3I4I5I6I7Y0Y1Y2Y3I9二二 - - 十进制优先编码器十进制优先编码器 CT74LS147I9 = 1,I8 = 0 时时,不论不论 I0 I7 为为 0 还是还是 1,电路只,电路只对对 I8 进行编进行编码,输出反码码,输出反码 0111。反码输出反码输出被编信号输入,被编信号输入,( (省省略了略了 I0) ),低电平有效。,低电平有效。01
32、11111111110101111111110001111111101101111110010111110100111100001110111010011001111111111111Y0Y1Y2Y3I9I8I7I6I5I4I3I2I1输出输出输入输入 I9 = 0 时时,不论其他,不论其他 Ii 为为 0 还是还是 1,电路只,电路只对对 I9 进行编进行编码码,输出,输出 Y3Y2Y1Y0 = 0110,为反码,其原码为为反码,其原码为 1001。111010011001111111111111无编码请求无编码请求Y3Y2Y1Y0=1111依依次次类类推推CT74LS147I8I1I2I3
33、I4I5I6I7Y0Y1Y2Y3I9被编信号优先级别从高到被编信号优先级别从高到低依次为低依次为 I9、I8、I7、I6、I5、 I4、I3、I2、I1、I0。用用VHDL描述描述4线线-2线优先编码器线优先编码器nlibrary ieee;nuse ieee.std_logic_1164.all; nentity encoder isn port(n a:in std_logic_vector(3 downto 0); n y:out std_logic_vector(1 downto 0); n eo:out std_logic);nend encoder;narchitecture en
34、coderp of encoder is nbeginn process(a) nbeginn if a(3)=1 thenn y=11; n eo=1; a0a1a2a3编码器Y1Y0e0n elsif a(2)=1 thenn y=10; n eo=1; n elsif a(1)=1 thenn y=01; n eo=1; n elsif a(0)=1 thenn y=00; n eo=1; n elsif a=0000 thenn y=00; n eooutpoutpoutpoutpoutpoutpoutpoutpoutpled7 led7 led7 led7 led7 led7 led
35、7 led7 led7 led7 led7 =0000000; -不显示 end case; end process;end behv;应用实例应用实例3【例【例6-16】 水箱水位监测显示电路设计水箱水位监测显示电路设计 已知一个水箱高已知一个水箱高10米,为了监测水箱水位的变化情况,试米,为了监测水箱水位的变化情况,试设计一个水箱中水面高度监测显示电路。显示分辨率以整数米设计一个水箱中水面高度监测显示电路。显示分辨率以整数米(m)为单位。)为单位。编码和译码的对应转换真值表编码和译码的对应转换真值表水箱水位监测显示电路原理水箱水位监测显示电路原理图图1T9T 图中图中 为水箱水位监测探头,
36、其给出的数据作为优为水箱水位监测探头,其给出的数据作为优先编码器的输入,优先编码器的输出经非门反相后送给七段显先编码器的输入,优先编码器的输出经非门反相后送给七段显示译码器,译码器输出直接驱动数码管显示水位高度。示译码器,译码器输出直接驱动数码管显示水位高度。数据分配器数据分配器: : 根据地址码的要求,将一路数据根据地址码的要求,将一路数据 分配到指定输出通道上去的电路。分配到指定输出通道上去的电路。Demultiplexer,简称简称DMUXY0DY1Y2Y34 路数据分配器工作示意图路数据分配器工作示意图A1A0一路输入一路输入多路输出多路输出地址码输入地址码输入10Y1 = DD6.3
37、.4 数据分配器数据分配器010110210010YDA AYDA AYDA AYDA A用用VHDL语言描述语言描述1分分4路数据分配器路数据分配器library ieee;use ieee.std_logic_1164.all;entity mux4t1 is port ( s1, s2:in std_logic; datain:in std_logic; a, b, c, d:out std_logic);end mux4t1;architecture one of mux4t1 issignal s:std_logic_vector( 1 downto 0 );signal datao
38、ut:std_logic_vector( 3 downto 0 );begin s dataout dataout dataout dataout dataout = zzzz;end case;end process;a=dataout(0);b=dataout(1);c=dataout(2);d=dataout(3);end architecture one; 下下图是用图是用3线线-8线译码器线译码器74LS138构成的构成的1路路-8路反码或原码输出的数据分配器。路反码或原码输出的数据分配器。图(图(b)原码输)原码输出的数据分配器出的数据分配器图(图(a)反码输)反码输出的数据分配器
39、出的数据分配器主要要求:主要要求:理解数据选择器和数据分配器的作用。理解数据选择器和数据分配器的作用。理解常用理解常用数据选择器的逻辑功能及其使用数据选择器的逻辑功能及其使用。掌握用掌握用数据选择器实现组合逻辑电路数据选择器实现组合逻辑电路的方法。的方法。6.3.5数据选择器数据选择器D0YD1D2D34 选选 1 数据选择器工作示意图数据选择器工作示意图A1A01.1.数据选择器数据选择器数据选择器数据选择器: : 根据地址码的要求,从多路输入信号中根据地址码的要求,从多路输入信号中 选择其中一路输出的电路选择其中一路输出的电路. .又称多路选择器又称多路选择器( (Multiplexer,
40、简称,简称MUX) )或多路开关。或多路开关。多路输入多路输入一路输出一路输出地址码输入地址码输入10Y=D1D1常用常用 2 选选 1、4 选选 1、8 选选 1和和 16 选选 1 等数据选择器。等数据选择器。 数据选择器的输入信号个数数据选择器的输入信号个数 N 与地址与地址码个数码个数 n 的关系为的关系为 N = 2n 【例【例6-17】 试设计一个试设计一个4选选1的数据选择器,具有使能控的数据选择器,具有使能控制端。当控制信号为制端。当控制信号为1时,数据选择器不工作。当控制信号时,数据选择器不工作。当控制信号为为0时,数据选择器处于工作状态,用与或门实现。其逻辑时,数据选择器处
41、于工作状态,用与或门实现。其逻辑功能示意图如图功能示意图如图(a)所示。所示。图图(a)4选选1数据选择器的功能表数据选择器的功能表10010110210300112233()()YST A A DA A DA A DA A DST m Dm Dm Dm D10010110210300112233YA A DA A DA A DA A Dm Dm Dm Dm D用用VHDL语言描述语言描述4选选1数据选择器数据选择器library ieee;use ieee.std_logic_1164.all;entity mux41 is port (inp: in std_logic_vector(3
42、downto 0); a,b:in std_logic; y:out std_logic);end entity mux41;architecture art of mux41 is signal sel:std_logic_vector(1 downto 0); Begin inp0数据选择器abYinp1inp2inp3 sel=b&a; process(inp,sel) is begin if (sel=00) then y=inp(0); elsif (sel=01) then y=inp(1); elsif (sel=11) then y=inp(2); else yB)Y(
43、AB)Y(A=B)00001010101010011001ABAABABBY(AB) BAABBABAYBABAYBAAAY=+=)=(=)( 2.2.多位数值比较器多位数值比较器可利用可利用 1 位数值比较器构成位数值比较器构成比较原理:从最高位开始逐步向低位进行比较。比较原理:从最高位开始逐步向低位进行比较。例如例如 比较比较 A = A3A2A1A0 和和 B = B3B2B1B0 的大小:的大小: 若若 A3 B3,则,则 A B;若;若 A3 B3,则,则 A B2,则,则 A B;若;若 A2 B2,则,则 A n(代数法)(代数法)【例例6-25】 用一个用一个4选选1数据选择器
44、(数据选择器(1/2 74LSl53)和门电路)和门电路实现逻辑函数。实现逻辑函数。FABAC解:解: 写出逻辑函数写出逻辑函数 的与的与-或表达式或表达式()FABACABCABCABCABCABCABCAB CCABCABCY10010110210310010110210311(1111)1111YST A ADA ADA ADA ADA ADA ADA ADA AD 比较比较 和和 两式两式F1Y10AABA、1FY可得可得 ,且,且设设012311111DCDDCDC 画逻辑图。根据上式可画出图所示的逻辑图画逻辑图。根据上式可画出图所示的逻辑图(3)用具有)用具有 个地址输入端的数据选
45、择器实现个地址输入端的数据选择器实现 变量逻变量逻辑函数(降维图)辑函数(降维图) 一般将卡诺图的变量数称为该图的维数。如果把某些变量也一般将卡诺图的变量数称为该图的维数。如果把某些变量也作为卡诺图小方格内的值,则会减少卡诺图的维数,这种卡诺图作为卡诺图小方格内的值,则会减少卡诺图的维数,这种卡诺图称为降维卡诺图,简称降维图。填入降维图中小方格的值为称为降维卡诺图,简称降维图。填入降维图中小方格的值为Xm,其值为如下表达式的值。其值为如下表达式的值。XmxFxG 其中:其中: x为记图变量为记图变量 。对于原卡诺图。对于原卡诺图(或降维图或降维图)中,当中,当 x=0 时,原图单元值为时,原图
46、单元值为F ,X=1 时,原图单元值为时,原图单元值为G ,则在,则在新的降维图对应单元中填入子函数新的降维图对应单元中填入子函数 。其中。其中 F和和G 可可以为以为0,可以为,可以为1,可以为某另一变量,也可以为某一函数。,可以为某另一变量,也可以为某一函数。xFxG 降维图示例00000011000111100001CDAB01100111111000DD011D0001111001ABC(a) F函数的卡诺图函数的卡诺图(b) 3变量降维图变量降维图0CD+CDCC+D0101AB(c) 2变量降维图变量降维图CDC 通过降维以后,相当于减少了逻辑函数的变量数目。当降通过降维以后,相当
47、于减少了逻辑函数的变量数目。当降维卡诺图的维卡诺图的维数与数据选择器的地址输入端数目相等维数与数据选择器的地址输入端数目相等时,即可时,即可按照按照用具有用具有n个地址输入端的数据选择器实现个地址输入端的数据选择器实现n变量逻辑函数变量逻辑函数的的方法来实现方法来实现m变量的逻辑函数。变量的逻辑函数。【例例6-26】分别用一片分别用一片8选数据选择器和一片选数据选择器和一片4选数据选择器选数据选择器实现以下函数实现以下函数FACABDABCDABC D解:解: 作出作出 的卡诺图和降维图,如图的卡诺图和降维图,如图6-65中中(a)、(b)、(c)所示,其中把所示,其中把 D和和C 分别作为分
48、别作为3变量降维图和变量降维图和2变量降维图变量降维图的记图变量。的记图变量。画出画出8选选1和和4选选1数据选择器卡诺图数据选择器卡诺图 将函数降维图将函数降维图(b)和和(c)分别与分别与8选选1和和4选选1数据选择器卡诺数据选择器卡诺图比较可得:图比较可得:0571324601DDDDDDDDDD采用采用8选选1数据选择器时数据选择器时0123DCDDCCDDC DDCD采用采用4选选1数据选择器时数据选择器时 由上两式分别画出逻辑电路,如图所示。由上两式分别画出逻辑电路,如图所示。(a)用用8选选1数据选择器实现数据选择器实现 (b) 用用4选选1数据选择器实数据选择器实课堂练习:用8
49、选1数据选择器实现函数 F(A,B,C,D) = m(1,5,6,7,9,11,12,13,14) 8选选1数据选择器只有数据选择器只有3个地址输入端,而将要实现的是个地址输入端,而将要实现的是4变变量的逻辑函数,所以需要将量的逻辑函数,所以需要将4变量卡诺图降维变成变量卡诺图降维变成3变量降维卡变量降维卡诺图。这里选择诺图。这里选择D为记图变量。为记图变量。解解第一步:第一步:将将4变量卡诺图降维变成变量卡诺图降维变成3变量降维卡诺图。变量降维卡诺图。00101111000111100001CDAB010101101110DD1D01DD0001111001ABC(a) 卡诺图卡诺图(b)
50、降维图降维图0 1 2 3 4 5 6 7G07MUXYA0ENCBAF1D注意:注意:可以选择不同的变量作为记图变量,不同的选择方可以选择不同的变量作为记图变量,不同的选择方案会有不同的结果。要得到最佳方案,必须对原始卡诺图进行案会有不同的结果。要得到最佳方案,必须对原始卡诺图进行仔细分析,以选择子函数最少或最简单的方案。仔细分析,以选择子函数最少或最简单的方案。第二步:第二步:画逻辑图,确定数据输入端记图变量及二值电平。画逻辑图,确定数据输入端记图变量及二值电平。 .1用8选1MUX实现例4-7A1A2ST6.4.2 中规模集成器件构成的组合电路的中规模集成器件构成的组合电路的分析分析基本
51、分析步骤如下:基本分析步骤如下:(1)对给定的逻辑电路图加以分析,根据)对给定的逻辑电路图加以分析,根据电路的复杂程度和器件类型,将电路划分为电路的复杂程度和器件类型,将电路划分为一个或多个逻辑功能块;一个或多个逻辑功能块;(2)写出功能块的逻辑函数表达式;)写出功能块的逻辑函数表达式;(3)由逻辑函数式列真值表;)由逻辑函数式列真值表;(4)根据逻辑函数表达式或真值表分析出)根据逻辑函数表达式或真值表分析出功能块的逻辑功能;功能块的逻辑功能;(5)如果有多个逻辑功能块,则在各功能)如果有多个逻辑功能块,则在各功能块电路分析的基础上,对整个电路进行整体块电路分析的基础上,对整个电路进行整体功能
52、的分析。功能的分析。【例【例6-27】 试分析试分析下下图所示电路的逻辑功图所示电路的逻辑功能。能。解:该电路就一个译码器模块解:该电路就一个译码器模块(1 1)根据电路图可以写出表达式)根据电路图可以写出表达式20356035603561124712471247FY Y Y Ym m m mmmmmABCABCABCABCFY Y Y Ym m m mmmmmABCABCABCABC (2)根据表达式,可以列出如表所示真值表)根据表达式,可以列出如表所示真值表。1F2F (3 3)由真值表可知,)由真值表可知,电路实现的是奇、偶校验电路实现的是奇、偶校验功能。功能。实现的是奇校验功能,实现的
53、是偶校验功能。【例【例6-28】 试分析试分析下下图所示电路的逻辑功能。图所示电路的逻辑功能。解:解:(1)分析图示电路,得到双)分析图示电路,得到双4选选1数据选择器数据输入端数据。数据选择器数据输入端数据。1SY时有 03121111CIDDCIDD时有12032220,21CIDDDD1001011021031001011021031111122222YA ADA ADA ADA ADYA ADA ADA ADA ADSABCIABCIABCIABCICOABCIABCIABCIABCI(2)双双4选选1数据选择器输出端逻辑表达式数据选择器输出端逻辑表达式、 10,AABA令令SCO的逻
54、辑表达式的逻辑表达式 得得 ,(3)由式列出功能表。)由式列出功能表。(4)根据功能表可以看出,电路)根据功能表可以看出,电路是是由双由双4选选1数据选择器构成的一位二进制数全加器数据选择器构成的一位二进制数全加器。2COY主要要求:主要要求: 了解竞争冒险现象及其产生的原因和消除措施。了解竞争冒险现象及其产生的原因和消除措施。4.7 组合逻辑电路中的竞争冒险组合逻辑电路中的竞争冒险一、竞争冒险现象及其危害一、竞争冒险现象及其危害当信号通过导线和门电路时,将产生时间延迟。当信号通过导线和门电路时,将产生时间延迟。因此,因此,同一个门的一组输入信号,同一个门的一组输入信号,由于它们在此前通由于它
55、们在此前通过不同数目的门,经过不同长度导线的传输,过不同数目的门,经过不同长度导线的传输,到达门到达门输入端的时间会有先有后,这种现象称为竞争。输入端的时间会有先有后,这种现象称为竞争。逻辑门因输入端的逻辑门因输入端的竞争而导致输出产生竞争而导致输出产生不应有的不应有的尖峰干扰脉冲的现象,称为冒险。尖峰干扰脉冲的现象,称为冒险。可能导致错误动作可能导致错误动作二、竞争冒险的产生原因及消除方法二、竞争冒险的产生原因及消除方法负尖峰脉冲冒险举例负尖峰脉冲冒险举例 可见,在组合逻辑电路中,当一个门电路可见,在组合逻辑电路中,当一个门电路( (如如 G2) )输入两个向相反方向变化的互补信号时,输入两
56、个向相反方向变化的互补信号时,则在输出端则在输出端可能会产生尖峰干扰脉冲。可能会产生尖峰干扰脉冲。正尖峰脉冲冒险举例正尖峰脉冲冒险举例G2G1AYY=A+AA理理想想考虑门延时考虑门延时AY11AY1tpdG2G1AYY=AAA理理想想考虑门延时考虑门延时Y0AAY1tpd由于尖峰干扰脉冲的宽度很窄,在由于尖峰干扰脉冲的宽度很窄,在可能产生尖可能产生尖峰干扰脉冲的门电路输出端与地之间接入峰干扰脉冲的门电路输出端与地之间接入一个容量一个容量为为几十皮法的电容几十皮法的电容就可吸收掉尖峰干扰脉冲。就可吸收掉尖峰干扰脉冲。1. 加封锁脉冲加封锁脉冲2. 加选通脉冲加选通脉冲3. 修改逻辑设计修改逻辑设计4. 接入滤波电容接入滤波电容消除冒险的方法:消除冒险的方法:例例5-2: 用用3-8线译码器线译码器74138和一个和一个8选选1数据选择器设数据选择器设计一个计一个3位二进制数等值比较器位二进制数等值比较器(包括原理图输入、编包括原理图输入、编译、综合、适配、仿真译、综合、适配、仿真) 解:根据在Quartus Il平台上使用
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年房地产投资分析师资格考试试卷及答案
- 小动物的冒险故事童话故事11篇
- 传承文化走进民间艺术展览话题6篇
- 电商平台技术升级与服务协议
- 语言学概论中的语言与文化关系研究试题
- 2025年阴极铜项目申请报告
- 云朵上的奇思妙想童话作文(9篇)
- 2025年辅导员职位选拔考试:学生活动策划与活动策划效果评估案例分析试题
- 2025年度企业人力资源管理师(研究员)技能操作试题详解
- 旅游目的地开发及推广合作协议
- 2024-2030年中国氯化聚醚行业市场运行状况及前景趋势分析报告
- 眼科结膜病诊疗规范2023版
- 甘肃省兰州市2023-2024学年八年级下学期期末考试英语试卷
- 小小科学家《物理》模拟试卷A(附答案)
- 用S7200编写摇臂钻床PLC程序梯形图
- 2023年北京朝阳初二(下)期末物理试卷及答案
- 2024届山西省太原市重点中学高三适应性调研考试生物试题含解析
- 心脏瓣膜病疑难病例讨论
- 护理人文关怀模版
- 财务内控与风险管理
- 四年级语文 囊萤夜读 说课一等奖
评论
0/150
提交评论