4.
进行功能仿真
(1)设置仿真器进行功能仿真:
•
Assignments—>setting,选择simulation
setting,在simulation mode中选择functional
•
在对话框中的simulation input中选择half_adder.vwf,指定激励文件
•
由Processing—>generat functional simulation
netlist得到功能仿真的网表文件
•
由Processing—>start simulation得到功能仿真波形
(2)设置仿真器进行时序仿真:
•
改变仿真器的设置,Assignments—>setting
•
选择仿真器设置,更改仿真模式,选择timing
•
由Processing—>start Compilation对设计进行编译
•
由Processing—>start simulation得到时序仿真波形
5.
封装
6.
编辑全加器的原理图
由file->new,打开原理图文件,并存盘为full_adder.bdf
在原理图中调用半加器与或门模块,按照图1.1所示连接电路,完成后另保存full_adder。
7.
对设计进行全编译,如出现错误请按照错误提示进行修改。
•
由Processing->Start Compilation对设计进行全编译。
•
编辑波形文件对全加器模块进行功能仿真和时序仿真。
8.
锁定引脚,下载
实验采用模式5,锁定引脚对照表如下
执行ASSIGNMENT-PINS,设置完成后,执行下载。
下载:采用JATG方式进行下载,通过键1、键2与键3的输入,观察D1,D2的亮灭验证全加器的逻辑功能。(此时,电脑与下载线都要连接到实验箱上,且每次连线都必须先关掉电源)
四、
思考题
1.为什么在实验步骤3中,将半加器保存为half_adder,可否保存为full_adder?
答:不能保存为full_adder,因为VHDL语言中,要求程序名与实体名一致,否则会出现错误;而且这个程序是生成半加器模块的程序,统一命名对模块理解也容易得多。
2.对电路进行功能仿真与时序仿真时,发现二者有什么样的区别?
答:功能仿真就是将综合后的VHDL网表文件再送到VHDL仿真器中所进行仿真。这时的仿真仅对VHDL描述的逻辑功能进行测试模拟,以了解其实现的功能是否满足原设计的要求,仿真过程不涉及具体器件特性,如延时特性。时序仿真就是将布线器/适配器所产生的VHDL网表文件送到VHDL仿真器中所进行的仿真。该仿真已将器件特性考虑进去了,因此可以得到xx的时序仿真结果。
3.为什么要进行引脚锁定?
答:进行引脚锁定,是为了对硬件进行检测,就是FPGA/CPLD直接应用与系统设计中,将下载文件下载到芯片后,对系统的设计进行的功能检测的过程。
4.采用层次结构法描述电路有什么样的优点?
答:可以大大降低设计成本,缩短设计周期;极大地简化设计文档的管理;提高大规模系统电子设计的自动化程度;设计者拥有xx的自主权,再无受制于人之虞;良好的可移植与可测试性,为系统开发提供可靠的保证;能将所有设计环节纳入统一的自顶向下的设计方案中;在系统板设计结束后仍可利用计算机对硬件系统进行完整的测试。