欢迎来到天天文库
浏览记录
ID:57401106
大小:178.50 KB
页数:27页
时间:2020-08-18
《EDA-第3章-VHDL语言-3.3全加器的VHDL描述课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、目的:进一步学习VHDL的语法重点:1、CASE语句的用法2、标准逻辑矢量数据类型3、例化语句3.3全加器的VHDL描述半加器和全加器是算术运算电路中的基本单元,它们是完成1位二进制数相加的一种组合逻辑电路。半加器只考虑两个加数本身,而没有考虑由低位进来的进位。全加器能进行加数、被加数和低位来的进位信号相加,并根据求和结果给出该位的进位信号。3.3全加器的VHDL描述3.3全加器的VHDL描述3.3.1半加器描述图3-9全加器f_adder电路图及其实体模块全加器电路图图3-10半加器h_adder电路图
2、及其真值表3.3全加器的VHDL描述3.3.1半加器描述【例3-15】LIBRARYIEEE;--半加器描述(1):布尔方程描述方法USEIEEE.STD_LOGIC_1164.ALL;ENTITYh_adderISPORT(a,b:INSTD_LOGIC;co,so:OUTSTD_LOGIC);ENDENTITYh_adder;ARCHITECTUREfh1OFh_adderisBEGINso<=NOT(aXOR(NOTb));co<=aANDb;ENDARCHITECTUREfh1;3.3全加器的VH
3、DL描述【例3-16】LIBRARYIEEE;--半加器描述(2):真值表描述方法USEIEEE.STD_LOGIC_1164.ALL;ENTITYh_adderISPORT(a,b:INSTD_LOGIC;co,so:OUTSTD_LOGIC);ENDENTITYh_adder;ARCHITECTUREfh1OFh_adderisSIGNALabc:STD_LOGIC_VECTOR(1DOWNTO0);--定义标准逻辑位矢量数据类型BEGINabc<=a&b;--a相并b,即a与b并置操作PROCESS
4、(abc)BEGINCASEabcIS--类似于真值表的CASE语句WHEN"00"=>so<='0';co<='0';WHEN"01"=>so<='1';co<='0';WHEN"10"=>so<='1';co<='0';WHEN"11"=>so<='0';co<='1';WHENOTHERS=>NULL;ENDCASE;ENDPROCESS;ENDARCHITECTUREfh1;3.3全加器的VHDL描述3.3.1半加器描述–真值表描述方法【例3-17】LIBRARYIEEE;--或门逻辑描述USEI
5、EEE.STD_LOGIC_1164.ALL;ENTITYor2aISPORT(a,b:INSTD_LOGIC;c:OUTSTD_LOGIC);ENDENTITYor2a;ARCHITECTUREoneOFor2aISBEGINc<=aORb;ENDARCHITECTUREone;3.3全加器的VHDL描述3.3全加器的VHDL描述【例3-18】LIBRARYIEEE;--1位二进制全加器顶层设计描述USEIEEE.STD_LOGIC_1164.ALL;ENTITYf_adderISPORT(ain,bi
6、n,cin:INSTD_LOGIC;cout,sum:OUTSTD_LOGIC);ENDENTITYf_adder;ARCHITECTUREfd1OFf_adderISCOMPONENTh_adder--调用半加器声明语句PORT(a,b:INSTD_LOGIC;co,so:OUTSTD_LOGIC);ENDCOMPONENT;COMPONENTor2aPORT(a,b:INSTD_LOGIC;c:OUTSTD_LOGIC);ENDCOMPONENT;SIGNALd,e,f:STD_LOGIC;--定义3
7、个信号作为内部的连接线。BEGINu1:h_adderPORTMAP(a=>ain,b=>bin,co=>d,so=>e);--例化语句u2:h_adderPORTMAP(a=>e,b=>cin,co=>f,so=>sum);u3:or2aPORTMAP(a=>d,b=>f,c=>cout);ENDARCHITECTUREfd1;双横线“--”是注释符,在VHDL程序的任何一行中,双横线“--”后的文字都不参加编译和综合。注:C语言的注释符是以“/*”开头并以“*/”结尾的串C++中,//为单行注释符,而
8、/*......*/为多行注释符汇编语言:注释符用分号;与其它部分相隔3.3全加器的VHDL描述【例3-16】LIBRARYIEEE;--半加器描述(2):真值表描述方法USEIEEE.STD_LOGIC_1164.ALL;ENTITYh_adderISPORT(a,b:INSTD_LOGIC;co,so:OUTSTD_LOGIC);ENDENTITYh_adder;ARCHITECTUREfh1OFh_adderisSIGN
此文档下载收益归作者所有