vhdl硬件描述语言四位加法器实验报告

vhdl硬件描述语言四位加法器实验报告

ID:14375759

大小:66.00 KB

页数:10页

时间:2018-07-28

vhdl硬件描述语言四位加法器实验报告_第1页
vhdl硬件描述语言四位加法器实验报告_第2页
vhdl硬件描述语言四位加法器实验报告_第3页
vhdl硬件描述语言四位加法器实验报告_第4页
vhdl硬件描述语言四位加法器实验报告_第5页
资源描述:

《vhdl硬件描述语言四位加法器实验报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、题目:硬件描述语言实验四:四位加法器姓名:*****学号:******地点:主楼402时间:3月21日一、实验目的:进一步练习VHDL语言设计工程的建立与仿真的步骤和方法、熟悉VHDL语言基本设计实体的编写方法。二、实验环境:PC个人计算机、WindowsXP操作系统、QuartusII集成开发环境软件。三、设计要求:采用三种方式设计一个四位加法器,实体名称分别为“adder4”、“adder4_2”、和“adder_3”,四位加法器的引脚与功能如下表。端口模式端口名数据类型说明in(输入)astd_logic_vector(3downto0)加数b加数cistd_logi

2、c低位进位out(输出)sstd_logic_vector(3downto0)和costd_logic高位进位四、实验步骤:1、采用寄存器传输的描述方式:首先新建一个工程,命名为“adder4”,然后编辑代码。注意在模块内部(构造体说明部分)需要定义三个连接线,定义语句为:signalc0,c1,c2:std_logic代码如下:libraryieee;useieee.std_logic_1164.all;entityadder4isport(a,b:instd_logic_vector(3downto0);ci:instd_logic;s:outstd_logic_vec

3、tor(3downto0);co:outstd_logic);endentity;architecturertlofadder4issignalc0,c1,c2:std_logic;begins(0)<=a(0)xorb(0)xorci;c0<=(a(0)andb(0))or(a(0)andci)or(b(0)andci);s(1)<=a(1)xorb(1)xorc0;c1<=(a(1)andb(1))or(a(1)andc0)or(b(1)andc0);s(2)<=a(2)xorb(2)xorc1;c2<=(a(2)andb(2))or(a(2)andc1)or(b(2)

4、andc1);s(3)<=a(3)xorb(3)xorc2;co<=(a(3)andb(3))or(a(3)andc2)or(b(3)andc2);endrtl;仿真波形图如下:仿真电路图如下:由上图可知设计是正确的。2、采用行为描述方式:首先新建一个工程,命名为“adder4_2”,然后编辑代码。在编写代码过程中应注意以下几个要点:1、VHDL语言可以进行高层次抽象的行为描述,而不用描述硬件电路的具体逻辑关系。例如在描述加法器时,可以用如下语句:s<=a+b+ci;上述描述方法需要用到ieee库中的ieee.std_logic_unsigned.all。2、为了能够生成进

5、位,四位加法器在内部应得到五位的和,因此两个加数也应扩充为五位。扩充字长可应用并置运算完成。如下语句将四位信号a在最高端并置一个’0’而成为五位信号aa:aa<=‘0’&a;将五位信号ss的低四位赋值给四位信号s的语句如下:s<=ss(3downto0);和的最高位作为加法器的进位输出。代码如下:libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityadder4_2isport(a,b:instd_logic_vector(3downto0);ci:instd_logic;s:

6、outstd_logic_vector(3downto0);co:outstd_logic);endentity;architecturertlofadder4_2issignalaa,bb,ss:std_logic_vector(4downto0);beginaa<='0'&a;bb<='0'&b;ss<=aa+bb+ci;s<=ss(3downto0);co<=ss(4);endrtl;仿真波形图如下:仿真电路图如下:由上图可知设计是正确的。2、采用构造体的结构描述方式:首先新建一个工程,命名为“adder4_3”,然后编辑代码。(附加要求:应用一位全加器按如下电路图通

7、过结构描述方式构造四位加法器)代码如下:libraryieee;useieee.std_logic_1164.all;entityfull_adderisport(a:instd_logic;b:instd_logic;ci:instd_logic;s:outstd_logic;co:outstd_logic);endentity;architecturertloffull_adderisbegins<=axorbxorci;co<=(aandb)or(aandci)or(bandci);endrtl;librar

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。