产品图片

产品分类

技术文章
主页 > 技术文章 > 图形和VHDL混合输入的电路设计
2024-05-23 06:56

图形和VHDL混合输入的电路设计

一、      实验目的
1、   学习在QUARTUSII软件中模块符号文件的生成与调用。
2、   掌握模块符号与模块符号之间的连线规则与方法。
3、   掌握从设计文件到模块符号的创建过程。
二、   实验原理
在层次化的设计文件中,经常需要将已经设计好的工程文件生成一个模块符号文件作为自己的功能模块符号在顶层调用,该符号就像图形设计文件中的任何其它宏功能符号一样可被高层设计重复调用。本实验的实验原理就是将前面设计的实验三、四、五通过QUARTUSII软件合并成一个设计文件。实现实验三、四、五中的所有功能。
三、   实验内容
本实验要求完成的任务与实验三、四、五的实验内容基本一致。在实验中,时钟信号选取1464HZ做为数码管的扫描时钟,拨动开关输入一个预置的八位数据,经过数控分频电路(实验五)分频后得到一个较低的频率做为加法计数器(实验三)的时钟频率进行计数器的加法运算。得到的值给数码显示译码电路(实验四)在数码管上显示出来。
四、   实验步骤
1、 打开QUARTUSII软件,新建一个工程。
2、 将以前编写的实验三、四、五的源程序代码复制到当前工作目录下保存起来。
3、 选择File>Open命令,如图4-6-1所示,打开复制到当前工作目录下和其中一个源程序代码,如EXP3.VHD程序。
 
 
打开一个设计文件
图4-6-1  打开一个设计文件
4、 在File菜单中选择Create/Update项,进而选择Create Symbol for Current File,点击确定按钮,即可创建一个代表刚才打开的设计文件功能的符号(.bsf),如图4-6-2所示。如果该文件对应的符号文件已经创建过,则执行该操作时会弹出提示信息,询问是否要覆盖现存的符号文件。用户可以根据自己的意愿进行选择。
从现行文件创建模块符号文件
 
图4-6-2  从现行文件创建模块符号文件
5、 用同样的方法对其它设计文件(EXP4.VHD、EXP5.VHD)进行模块符号文件的创建。
6、 模块符号文件创建完成后,再新建一个图形编辑文件,打开图形编辑器对话框。在图形编辑器窗口的工件区双击鼠标的左键,或点击图中的符号工具按钮,或选择菜单Edit>Insert Symbol则弹出如图4-6-3所示的Symbol对话框。
Symbol对话框
 
图4-6-3   Symbol对话框
7、 在Symbol对话框(图6-3)中的Project项下会出现前面创建的模块符号文件(EXP3、EXP4、EXP5),我们现在就可以任意调用这些功能模块符号文件。
8、 选取这些模块符号文件放置到工作区,调入需要的模块符号以后,进行符号之间的连线,以及放置输入、输出或双向引脚。需要说明的是,在这个实验中,因为输入的数据占用了十二位的拨动开关,所以做为同步使能端的信号EN我们加入了一个VCC信号,使使能端信号EN有效。所有设计完成后的电路如图4-6-4所示。
 
设计图形符号文件
图4-6-4  设计图形符号文件
9、 对自己编写的图形符号输入文件程序进行保存,然后编译并仿真,对程序的错误进行修改。
10、  编译仿真无误后,根据用户自己的要求进行管脚分配。分配完成后,再进行全编译一次,以使管脚分配生效。
如果是调用的本书提供的VHDL代码,则实验连线如下:
CLK:FPGA时钟信号,接数字时钟CLOCK3,并将这组时钟设为1464HZ。
DATA[7..0]:分频数据输入信号,分别接拨动开关的K8-K1。
COUT:计数进位输出信号,接一个LED灯D1。
RET:计数复位信号,接核心板RST复位按键。
LEDAG[6..0]:数码管显示信号,接数码管的G、F、E、D、C、B、A。
SEL[2..0]:数码管的位选信号,接数码管的SEL2、SEL1、SEL0。
11、  根据实验内容用实验导线将上面管脚分配的FPGA管脚与对应的模块连接起来。
12、    用下载电缆通过JTAG口将对应的sof文件加载到FPGA中。观察实验结果是否与自己的编程思想一致。
五、   实验现象与结果
以设计的参考示例为例,当设计文件加载到目标器件后,确认信号连接线已正确连接,拨动八位拨动开关,使其为一个数值,则八位数码管按一定的速率开始显示“0-F”,当数码管显示A-F时LED灯LED1开始被点亮,显示其它数值时熄灭。按核心板复位键显示的数值又从0开始,拨动八位拨动开关,置于其它数据,数码管的显示速率会发生改变。
六、   实验报告
1、 出仿真波形,并作说明。
2、 自己设计文件,然后通过设计文件到模块符号文件的转换,设计自己的电路并在实验系统中验证。进一步掌握这种方法。
3、 写出在软件中通过其它方法从设计文件到模块符号文件的转换过程。