组合逻辑电路设计_第1页
组合逻辑电路设计_第2页
组合逻辑电路设计_第3页
组合逻辑电路设计_第4页
组合逻辑电路设计_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

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

文档简介

,第五章组合逻辑电路设计,5.1门电路5.2编码器5.3优先编码器5.4译码器5.5多路选择器5.6数值比较器5.7加法器,在前面的各章里,分别介绍了VHDL语言的语句、语法以及利用VHDL语言设计硬件电路的基本方法,本章重点介绍利用VHDL语言设计基本组合逻辑模块的方法。,5.1门电路,二输入异或门二输入异或门的逻辑表达式如下所示:,二输入异或门的逻辑符号如图所示,真值表如下表所示:,aby000011101110,例:采用行为描述方式设计的异或门(依据逻辑表达式)LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYxor2_v1ISPORT(a,b:INSTD_LOGIC;y:OUTSTD_LOGIC);ENDxor2_v1;ARCHITECTUREbehaveOFxor2_v1ISBEGINyyyyyy=X;ENDCASE;ENDPROCESS;ENDdataflow;,二输入异或门的仿真波形,5.2编码器,用一组二进制代码按一定规则表示给定字母、数字、符号等信息的方法称为编码,能够实现这种编码功能的逻辑电路称为编码器。,I0I1I2I3I4I5I6I7A2A1A0000000000001000000001001000000100001000001100001000100000001001010000001011000000001111,8线3线编码器真值表,输入输出,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);ENDcoder83_v1;ARCHITECTUREbehaveOFcoder83_v1ISBEGIN,A2=I4ORI5ORI6ORI7;A1=I2ORI3ORI6ORI7;A0AAAAAAAA=000;ENDCASE;ENDPROCESS;ENDdataflow;,采用数据流描述方式的8线3线编码器仿真波形(总线显示方式),5.3优先编码器,EII0I1I2I3I4I5I6I7A2A1A0GSEO11111101111111111110000000100100101001101001001110110100111110001001111110101001111111100100111111111101,输入输出,74148优先编码器真值表(反码编码方案),各输出端的逻辑方程,以74148逻辑表达式为依据,按行为描述方式编写的VHDL源代码如下:,LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYprioritycoder83_v1ISPORT(I7,I6,I5,I4,I3,I2,I1,I0:INSTD_LOGIC;EI:INSTD_LOGIC;A2,A1,A0:OUTSTD_LOGIC;GS,EO:OUTSTD_LOGIC);ENDprioritycoder83_v1;ARCHITECTUREbehaveOFprioritycoder83_v1ISBEGINA2=EIOR(I7ANDI6ANDI5ANDI4);A1=EIOR(I7ANDI6ANDI3ANDI2)OR(I7ANDI6ANDNOTI5)OR(I7ANDI6ANDNOTI4);,A0=EIOR(I7ANDNOTI6)OR(I7ANDI5ANDNOTI4)OR(I7ANDI5ANDI3ANDI1)OR(I7ANDI5ANDI3ANDNOTI2);GS=EIOR(I7ANDI6ANDI5ANDI4ANDI3ANDI2ANDI1ANDI0);EOA=“000”;因此不能用CASE语句来描述74148。采用IF语句对74148进行了逻辑描述如下:,LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYprioritycoder83_v2ISPORT(I:INSTD_LOGIC_VECTOR(7DOWNTO0);EI:INSTD_LOGIC;A:OUTSTD_LOGIC_VECTOR(2DOWNTO0);GS,EO:OUTSTD_LOGIC);ENDprioritycoder83_v2;,ARCHITECTUREdataflowOFprioritycoder83_v2ISBEGINPROCESS(EI,I)BEGINIF(EI=1)THENA=111;GS=1;EO=1;ELSIF(I=11111111ANDEI=0)THENA=111;GS=1;EO=0;,ELSIF(I(7)=0ANDEI=0)THENA=000;GS=0;EO=1;ELSIF(I(6)=0ANDEI=0)THENA=001;GS=0;EO=1;ELSIF(I(5)=0ANDEI=0)THENA=010;GS=0;EO=1;,ELSIF(I(4)=0ANDEI=0)THENA=011;GS=0;EO=1;ELSIF(I(3)=0ANDEI=0)THENA=100;GS=0;EO=1;ELSIF(I(2)=0ANDEI=0)THENA=101;GS=0;EO=1;,ELSIF(I(1)=0ANDEI=0)THENA=110;GS=0;EO=1;ELSE(I(0)=0ANDEI=0)THENA=111;GS=0;EOYYYYYYYY=01111111;ENDCASE;ELSEY=11111111;ENDIF;ENDPROCESS;ENDdataflow;,总线显示方式的3线8线译码器74138仿真波形图,5.5多路选择器,使能地址选择YYbGA2A1A01010000D0D00001D1D10010D2D20011D3D30100D4D40101D5D50110D6D60111D7D7,输入输出,741518选1数据选择器真值表,参考74151的真值表,采用IF语句结构编写的VHDL源代码如下:,LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYmux8_v2ISPORT(A:INSTD_LOGIC_VECTOR(2DOWNTO0);D0,D1,D2,D3,D4,D5,D6,D7:INSTD_LOGIC;G:INSTD_LOGIC;Y:OUTSTD_LOGIC;YB:OUTSTD_LOGIC);ENDmux8_v2;ARCHITECTUREdataflowOFmux8_v2ISBEGINPROCESS(A,D0,D1,D2,D3,D4,D5,D6,D7,G),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;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;ENDdataflow;,IF语句结构8选1数据选择器仿真波形,参考74151的真值表,采用CASE语句结构编写的VHDL源代码如下,LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYmux8_v3ISPORT(A2,A1,A0:INSTD_LOGIC;D0,D1,D2,D3,D4,D5,D6,D7:INSTD_LOGIC;G:INSTD_LOGIC;Y:OUTSTD_LOGIC;YB:OUTSTD_LOGIC);ENDmux8_v3;ARCHITECTUREdataflowOFmux8_v3ISSIGNALcomb:STD_LOGIC_VECTOR(3DOWNTO0);,BEGINcombYYY=D2;YBYYYY=D6;YBYY=0;YBB、AB)THENYA=1;YB=0;YC=0;,ELSIF(AB)THENYA=0;YB=1;YC=0;ELSEYA=0;YB=0;YC=1;ENDIF;ENDPROCESS;ENDbehave;,两个4位二进制数比较器的仿真波形,5.7加法器,加法器是数字电路中的基本运算单元,下例是直接利用VHDL运算符“+”实现加法运算的8位加法器源代码。其中A和B是两个相加的8位二进制数,Cin是低位进位位,S是A、B相加之和,Co是A、B相加之后的进位位。,LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYadder8_vISPORT(A:INSTD_LOGIC_VECTOR(7DOWNTO0);B:INSTD_LOGIC_VECTOR(7DOWNTO0)

温馨提示

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

评论

0/150

提交评论