资源描述:
《eda实验报告(四位全加器的实现)》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、计算机09-3班郑秀枫09081311实验一四位全加器的实现一、实验目的1、掌握Quartus9.0图形编辑输入法2、掌握Quartus环境下文件的编译、仿真及下载方法3、了解VHDL语言的设计流程4、掌握quartus环境下VHDL的使用方法二、实验内容1、用图形/原理图法实现4位全加器。2、用VHDL语言实现4位全加器,必须使用元件例化。3、仿真并通过。3、下载到实验板,并验收三、实验步骤1、图形编辑发设计4位加法器(1)新建图形文件,设计一位全加器,逻辑电路图如下图(图1-1)所示。图1-1(2)将设计好的一位全加器进行例化,操作为fileà
2、Create/UpdateàCreatesymbolfilesforcurrentfile,完成此操作后会在元器件符号表里找到刚刚做好的一位全加器。(3)再新建一个图形文件,用四个已经做好的一位全加器级联成一个四位全加器,其逻辑原理图如图1-2所示。编辑好后保存文件,在文件列表里找到该文件,右键àSetasTop-levelEntity,将其设置为顶层文件,点击编译按钮就行编译。4计算机09-3班郑秀枫09081311图1-2(1)新建波形文件,赋予每个输入端口某种输入信号,保存波形文件,进行功能仿真,观察输出端波形与输入信号关系是否正确。若不正确
3、,查找问题所在并解决问题;若正确,则进行管脚分配,分配完毕后再编译一次使分配生效,连接DE2开发板到电脑,将文件下载到开发板进行验证。1、用VHDL语言设计4位加法器(1)新建一个VHDL源文件,文件名为adder1.vhd,使用VHDL实现一位全加器,其VHDL代码如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYadde1rISPORT(A,B,Ci:INSTD_LOGIC;S,Co:OUTSTD_LOGIC);ENDadder1;ARCHITECTUREqadderOFadder1ISBEGINP
4、ROCESS(A,B,Ci)VARIABLEn1,n2,n3:STD_LOGIC;BEGINn1:=AANDB;4计算机09-3班郑秀枫09081311n2:=AXORB;n3:=CiANDn2;Co<=n3ORn1;S<=n2XORCi;ENDPROCESS;ENDqadder;(1)再新建一个VHDL源文件,命名为adder4.vhd,在这里将adder一位全加器例化并使用它,做成四位全加器,代码如下:libraryieee;useieee.std_logic_1164.all;entityadder4isport(A,B:instd_logi
5、c_vector(3downto0);S:outstd_logic_vector(3downto0);Co:outstd_logic;Ci:instd_logic);endadder4;architectureadder_4ofadder4iscomponentadderport(A:instd_logic;B:instd_logic;Ci:instd_logic;Co:outstd_logic;S:outstd_logic);endcomponent;signalc1,c2,c3:std_logic;beginu1:adderportmap(A(
6、0),B(0),Ci,c1,S(0));u2:adderportmap(A(1),B(1),c1,c2,S(1));u3:adderportmap(A(2),B(2),c2,c3,S(2));u4:adderportmap(A(3),B(3),c3,Co,S(3));endadder_4;(2)保存文件后将adder4设置为顶层文件并编译,编译通过后按照与图形编辑发一样的仿真、管脚分配方式进行操作,最后下载到开发板验证一、实验现象两种方式实现的四位加法器下载到DE2开发板后都可正常工作,其中使用SW0作为低位的进位,SW4~1作为数据B,SW8~5
7、作为数据A,LDG3~0作为输出的结果,LEDG4作为输出的进位。当SW4~1闭合4计算机09-3班郑秀枫09081311SW8~5和SW0断开时,只有LEDG3~0这四个灯亮;当SW8~0全闭合时,LEDG4~0灯全亮。中国石油大学(华东)实验报告课题名称EDA设计实验项目名称实验一四位全加器的设计专业计算机科学与技术姓名孙文吉4