




已阅读5页,还剩45页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第七章组合逻辑电路设计,定义:任一时刻的输出仅仅取决于当时的输入,与电路原来的状态无关,这样的数字电路叫做组合逻辑电路。,常用组合逻辑电路有以下几种:,概述,1、各种基本门电路(与门、或门、非门、异或门)2、多选器(二选一、四选一、八选一、)3、编码器4、译码器5、奇偶校验器6、三态门7、缓冲器,用自下至上的设计方法设计一个三人表决器,第一步,选择逻辑元、器件。我们选择与非门。,第二步,进行电路设计。,列真值表,画卡诺图化简并写出逻辑函数表达式,画逻辑电路图,组合逻辑电路设计方法(补充),设计步骤:(1)建立描述逻辑问题的真值表分析题目所给的条件找出问题的条件与目的及因果关系确定输入、输出变量列出真值表(2)由真值表写出逻辑函数表达式;(如:用最小项积之和的形式)(3)对输出逻辑函数进行化简(4)画出逻辑电路图,基本的门电路包括有“与”门、“或”门、“非”门、“与非”门、“或非”门、“异或”门等等,它门是构成逻辑电路的基础。,7.1简单门电路,设计实例1:2输入“与非”门电路设计,ab,y,USEieee.std_logic_1164.all;ENTITYnand2_1ISPORT(a,b:INSTD_LOGIC;y:OUTSTD_LOGIC);ENDENTITYnand2_1;ARCHITECTUREnandOFnand2_1ISBEGINy顺序处理语句;when分支条件=顺序处理语句;when分支条件=顺序处理语句;endcase;,并置运算符“ENDCASE;ELSEY顺序处理语句;when分支条件=顺序处理语句;when分支条件=顺序处理语句;endcase;,7.2编码器,用一组二进制代码按一定规则表示给定字母、数字、符号等信息的方法称为编码,能够实现这种编码功能的逻辑电路称为编码器。,输入输出I0I1I2I3I4I5I6I7A2A1A01000000000001000000001001000000100001000001100001000100000001001010000001011000000001111,8线3线编码器真值表,A2=I4+I5+I6+I7A1=I2+I3+I6+I7A0=I1+I3+I5+I7,逻辑表达式:,例:采用行为描述方式的8线3线编码器VHDL源代码(依据逻辑表达式),LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYcoder83_v1ISPORT(I0,I1,I2,I3,I4,I5,I6,I7:INSTD_LOGIC;A0,A1,A2:OUTSTD_LOGIC);ENDENTITYcoder83_v1;ARCHITECTUREbehaveOFcoder83_v1ISBEGINA2=I4ORI5ORI6ORI7;A1=I2ORI3ORI6ORI7;A0AAAAAAAA=000;ENDCASE;ENDPROCESS;ENDARCHITECTUREdataflow;,优先编码器,优先编码器常用于中断的优先控制。当其某一个输入有效时,就可以输出一个对应的3位二进制码。另外,当同时有几个输入有效时,将输出优先级最高的那个输入所对应的二进制码。,低电平有效,input(0)优先级最高,input(1)优先级次之,如此类推,input(7)优先级最低,LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYpriorityencoderISPORT(input:INSTD_LOGIC_VECTOR(7DOWNTO0);y:OUTSTD_LOGIC_VECTOR(2DOWNTO0);ENDENTITYpriorityencoder;ARCHITECTURErtlOFpriorityencoderISBEGINPROCESS(input)ISBEGINIF(input(0)=0)THENy=“111”;ELSIF(input(1)=0)THENy=“110”;,按行为数据流方式编写优先编码器的VHDL源代码如下:,方法:利用if多选择语句自顶向下的优先特性,input(0)优先级最高,input(1)优先级次之,如此类推,input(7)优先级最低,ELSIF(input(2)=0)THENy=“101”;ELSIF(input(3)=0)THENy=“100”;ELSIF(input(4)=0)THENy=“011”;ELSIF(input(5)=0)THENy=“010”;ELSIF(input(6)=0)THENy=“001”;ELSEyA=“000”;,因此不能用CASE语句来描述74148,而采用IF语句对74148进行了逻辑描述。,7.3选择器,在多路数据传送过程中,能够根据需要将其中任意一路选出来的电路,叫做数据选择器,也称多路选择器或多路开关。,8选1数据选择器设计,741518选1数据选择器真值表,参考74151的真值表,采用IF语句结构编写的VHDL源代码如下:,LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYmux8ISPORT(A:INSTD_LOGIC_VECTOR(2DOWNTO0);D0,D1,D2,D3,D4,D5,D6,D7:INSTD_LOGIC;G:INSTD_LOGIC;Y:OUTSTD_LOGIC;YB:OUTSTD_LOGIC);ENDENTITYmux8;ARCHITECTUREdataflowOFmux8ISBEGINPROCESS(A,D0,D1,D2,D3,D4,D5,D6,D7,G)IS,用IF语句设计8选1选择器,BEGINIF(G=1)THENY=0;YB=1;ELSIF(G=0ANDA=000)THENY=D0;YB=NOTD0;ELSIF(G=0ANDA=001)THENY=D1;YB=NOTD1;ELSIF(G=0ANDA=010)THENY=D2;YB=NOTD2;ELSIF(G=0ANDA=011)THENY=D3;YB=NOTD3;,用IF语句设计8选1选择器(续),多选择控制的IF语句格式:IF条件THEN顺序处理语句;ELSIF条件THEN顺序处理语句;ELSIF条件THEN顺序处理语句;ELSE顺序处理语句;ENDIF;,ELSIF(G=0ANDA=100)THENY=D4;YB=NOTD4;ELSIF(G=0ANDA=101)THENY=D5;YB=NOTD5;ELSIF(G=0ANDA=110)THENY=D6;YB=NOTD6;ELSEY=D7;YB=NOTD7;ENDIF;ENDPROCESS;ENDARCHITECTUREdataflow;,用IF语句设计8选1选择器(续),参考74151的真值表,采用CASE语句结构编写的VHDL源代码如下,LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYmux8ISPORT(A2,A1,A0:INSTD_LOGIC;D0,D1,D2,D3,D4,D5,D6,D7:INSTD_LOGIC;G:INSTD_LOGIC;Y:OUTSTD_LOGIC;YB:OUTSTD_LOGIC);ENDENTITYmux8;ARCHITECTUREdataflowOFmux8ISSIGNALcomb:STD_LOGIC_VECTOR(3DOWNTO0);BEGINcombYYYYYY=D5;YBYYY=0;YB=1;ENDCASE;ENDPROCESS;ENDARCHITECTUREdataflow;,用CASE语句设计8选1选择器(续),其中:A和B是两个相加的8位二进制数;Cin是低位进位位;S是A、B相加之和;Co是A、B相加之后的进位位。,7.4加法器,加法器是数字电路中的基本运算单元,下例是直接利用VHDL运算符“+”实现加法运算的8位加法器源代码。,全加器真值表,LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYadder8ISPORT(A:INSTD_LOGIC_VECTOR(7DOWNTO0);B:INSTD_LOGIC_VECTOR(7DOWNTO0);Cin:INSTD_LOGIC;Co:OUTSTD_LOGIC;S:OUTSTD_LOGIC_VECTOR(7DOWNTO0);ENDENTITYadder8;,声明了IEEE库中的包集合STD_LOGIC_UNSIGNED,才能对STD_LOGIC_VECTOR类型数据进行加减运算,把两位输入A,B分别定义成8位二进制数,输出S也定义成8位二进制数,低位进位和高位进位定义为1位逻辑位,带进位的8位加法器设计,ARCHITECTUREbehaveOFadder8ISSIGNALSint:STD_LOGIC_VECTOR(8DOWNTO0);SIGNALAA,BB:STD_LOGIC_VECTOR(8DOWNTO0);BEGINAA=0,将8位加数矢量扩展为9位,为进位提供空间,带进位的8位加法器设计(续),7.5求补器,求二进制数的补码,直接用RTL描述比较简洁方便:,7.6三态门,三态门,是指逻辑门的输出除有高、低电平两种状态外,还有第三种状态高阻状态的门电路。高阻态相当于隔断状态。三态门都有一个EN控制使能端,来控制门电路的通断。利用三态门可以方便地将输出端连接到总线。,三态门电路,结构体中是一个进程语句,而进程语句中利用IF语句的二选择语句来描述三态门。en是使能端口。高阻状态Z,必须大写。,if条件then顺序处理语句;else顺序处理语句;endif;,卫式块结构描述三态门:,CASE语句描述三态门:,注意:一个实体可以对应多种构造体。,卫式块语句的格式:BLOCK卫式布尔表达式当卫式表达式为真时,该BLOCK语句被启动执行。注意:BLOCK语句中所描述的各个语句是可以并行执行的。,7.7单向总线缓冲器,在计算机的总线驱动中经常用单向总线缓冲器,通常由多个三态门组成,用于驱动地址总线和控制总线。,左图是一个8位单向总线缓冲器。它由8个三态门组成,具有8个输入端和8个输出端。所有三态门的控制端连一起,由一个控制输入端en控制。,“ZZZZZZZZ”是高阻总线状态,卫式块描述单向总线缓冲器:,CASE语句描述单向缓冲器:,在编写上述程序时候应注意,不能将“Z”值赋予变量,否则就不能进行逻辑综合。另外,对信号赋值时“Z”和“0”或“1”不能混合使用,如:dout=“Z001ZZZZ”;-错误但如果变化赋值表达式,分开赋值时可以的。将上例分开赋值如下:dout(7)=“Z”;dout(6DOWNTO4)=“001”;dout(3DOWNTO0)=“ZZZZ”;,7.7双向总线缓冲器
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 现场处置方案编制课件
- 2025年能源行业CCS项目经济性研究报告:市场前景与投资建议
- 2025年物流行业物流园区智能化改造对物流行业行业政策法规的适应报告
- 山西省晋中市左权县2022-2023五年级上学期期中科学试题(含答案)
- 2026届贵州省贵阳市清镇北大培文学校贵州校区化学高一上期末考试试题含解析
- 2025年导游资格证专项训练试卷:导游业务与法规冲刺押题
- 2025年Python大数据处理培训试卷:实战演练与冲刺押题
- 2025年秋季初级经济师职业资格考试 经济基础知识模拟试卷及答案
- 2025年注册会计师(CPA)考试 会计科目历2025年真题解析与模拟试卷
- 江西省白鹭洲中学2026届高二化学第一学期期中学业水平测试试题含解析
- 企业信息化项目建设进度和成果汇报课件
- 高等数学期末试卷及答案
- 从0开始跨境电商-第三章-阿里巴巴国际站入门-OK
- 新能源电站远程监控系统建设方案
- 《紫藤萝瀑布》《丁香结》《好一朵木槿花》
- 2023柔性棚洞防护结构技术规程
- 河流地貌的发育 - 侵蚀地貌
- 离网光伏发电系统详解
- 广告文案写作(第二版)全套教学课件
- 《国家电网公司电力安全工作规程(配电部分)》
- 金融学黄达ppt课件9.金融市场
评论
0/150
提交评论