在quartusii下使用vhdl语言编程实现模块间相互调用的步骤

在quartusii下使用vhdl语言编程实现模块间相互调用的步骤

ID:34753478

大小:303.13 KB

页数:8页

时间:2019-03-10

在quartusii下使用vhdl语言编程实现模块间相互调用的步骤_第1页
在quartusii下使用vhdl语言编程实现模块间相互调用的步骤_第2页
在quartusii下使用vhdl语言编程实现模块间相互调用的步骤_第3页
在quartusii下使用vhdl语言编程实现模块间相互调用的步骤_第4页
在quartusii下使用vhdl语言编程实现模块间相互调用的步骤_第5页
资源描述:

《在quartusii下使用vhdl语言编程实现模块间相互调用的步骤》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、在QuartusII下使用VHDL语言编程实现元件例化为了有效应用现有开发资源,往往需要实现模块间的调用。即实现元件的声明和例化。作为示例,这里建立了两个模块:一个是两个1位数相加的半加器h_adder,另一个是两个2位数相加的全加器twobit_addr,twobit_addr需要调用h_dder。步骤如下:第一步:首先在D:建立一个文件夹,命名为job1:图1第二步:打开QuartusII,点击file—newprojectwizard,在出现的对话框里面,选择job1作为工程路径,并在下面的工程名处输入

2、“h_adder”。如图3所示。图2图3第三步:点击file—new,在出现的对话框里面选择VHDL文件,如图4所示。界面上将会出现一个空白的.vhd的文件,点击“保存按钮”,将该文件的文件名取为“h_adder”(必须与工程名一致)。图4第四步:在h-adder.vhd文档中,键入如下程序(可复制粘贴):libraryieee;useieee.std_logic_1164.all;entityh_adderisport(X:instd_logic;Y:instd_logic;C_in:instd_logic;

3、Sum:outstd_logic;C_out:outstd_logic);endh_adder;--Thearchitecturebody:architecturebehavofh_dderisbeginprocess(X,Y,C_in)beginSum<=(XxorY)xorC_in;C_out<=(XandY)or(C_inandX)or(C_inandY);endprocess;endBehav;上述程序主要是实现X与Y的相加,同时包括进位输入C_in、进位输出C_out、相加的和Sum。第五步:点击“编

4、译”按钮(紫色的图标)进行编译。直至编译成功(该过程需持续30s左右。)图5第六步:点击file—new,建立波形文件,并将其命名为h_adder.vwf.图6第七步:加入仿真节点(node),设置好输入后,点击simulation按钮,可进行仿真。这里应将endtime(edit下拉菜单)设置为1000us,将时钟设置为1us。最终的仿真结果如图7所示。图7至此为止,被调用模块h_adder的编写全部完毕。第八步:按照上述过程,在D:建立一个文件夹,命名为job2.重新打开QuartusII,选择job2文

5、件夹,建立工程名twobit_addr。点击file—new新建twobit_addr.vhd文件。并敲入如下代码:libraryieee;useieee.std_logic_1164.all;entitytwobit_addrisport(X:instd_logic_vector(1downto0);Y:instd_logic_vector(1downto0);C_in:instd_logic;Sum:outstd_logic_vector(1downto0);C_out:outstd_logic);endt

6、wobit_addr;--Thearchitecturebody:architectureBehavofTwobit_Addriscomponenth_adderport(X:instd_logic;Y:instd_logic;C_in:instd_logic;Sum:outstd_logic;C_out:outstd_logic);endcomponent;signalC_temp:std_logic;begin--Sum<=(X(0)xorY(0));--C_out<=(X(0)andY(1));--wai

7、tonX,Y;A1:h_adderportmap(X(0),Y(0),C_in,sum(0),C_temp);A2:h_adderportmap(X(1),Y(1),C_temp,sum(1),C_out);endBehav;注意:上面程序中的黄色部分就是调用h_adder模块的语句。为了实现调用,需要添加包含h_adder的文件夹job1,具体过程如下:(1)点击assignment下拉菜单中的settings选项,并选中userlibraries选项,则出现图8界面:图8(1)在图8界面中,点击librar

8、yname后面的“…”按钮,找到job1文件夹,点击Add,则出现图9所示界面。至此,完成h_adder库的添加。图9第九步:点击编译按钮,对twobit_addr工程进行编译(设置好的话,这一过程不会有错误)。第十步:点击file—new,建立波形文件,并将其命名为twobit_addr.vwf。加入仿真节点(node),设置好输入后,点击simulation按钮,可进行仿真。这里应

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

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

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