在quartus ii怎么进行 VHDL仿真

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在quartus ii怎么进行 VHDL仿真相关的知识,希望对你有一定的参考价值。

仿真分功能仿真和时序仿真,
一两种仿真都需要在编译源*.vhd,程序后,新建一个与源程序同名的,
二在*.vwf文件中,由Insert Node or bus 进入,导入全部I/O.
三在主菜单里的Tools-----Simulator Tool 进入,弹出对话框, 有Simulation Mode 和Simulation Input 两个在上面的对话框,
①选择仿真为 Functional ,则右边的Generate Functional Simulation Netlist 字体变黑,先点击,生成Netlist,再点 START进行仿真
②选择时序仿真Timing ,则右边按钮为灰色,无法点击,可直接进行时序仿真,而不用先生成Netlist.
参考技术A 要先建立一个波形文件,然后再把需要的引脚加载进去即可,这个软件在仿真上比Actel Libero IDE好用多了,还有什么不知道的继续追加吧

还需注意的是,此软件对命名是很讲究的,一般最好是几个文件名字都跟工程名相同

使用Quartus13进行VHDL工程的编写与仿真

使用Quartus13进行VHDL工程的编写与仿真


四川师范大学工学院·徐浩宇

2021.4.19


编写代码

  • 点击新建一个工程



  • 选择工程保存的路径,填写工程名称,注意,三个圈起来的应该相同


  • 与上一步的文件名也相同;


  • 选择设备类型,一定要进行选择,否则后面编译仿真时可能会出错

    我们使用的开发板芯片为EP4CE10F17C8


  • EDA Tools Settings中的仿真工具选择None,不需要自动进行波形仿真。


  • 点击Finish


  • 点击新建文件,选择 vhdl file



  • 编写vhdl语言程序,以我们上次实验做的七段显示译码器为例(注意文件名和器件名一定要一致)



    附上本次实验的实验代码:

LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;

ENTITY	yimaqi IS
	PORT( bcd: IN STD_LOGIC_VECTOR( 3 DOWNTO 0 );
	      a,b,c,d,e,f,g: OUT STD_LOGIC);
END yimaqi ;

ARCHITECTURE work1 OF yimaqi IS
	SIGNAL dout: STD_LOGIC_VECTOR( 6 DOWNTO 0 );
BEGIN
	WITH bcd SELECT
		dout <= "0111111" WHEN "0000",
				"0000110" WHEN "0001",
				"1011011" WHEN "0010",
				"1001111" WHEN "0011",   --教材有误!
				"1100110" WHEN "0100",  				
                "1101101" WHEN "0101",
				"1111101" WHEN "0110",
				"0000111" WHEN "0111",
				"1111111" WHEN "1000",
				"1101111" WHEN "1001",
				"0000000" WHEN OTHERS;
		a <= dout( 6 );
		b <= dout( 5 );
		c <= dout( 4 );
		d <= dout( 3 );
		e <= dout( 2 );
		f <= dout( 1 );
		g <= dout( 0 );

END work1 ;
  • 如果刚刚新建的VHDL没有保存,可以再File里选择另存为;


  • VHDL文件名和工程名相同;


  • 右键单击将写好的文件设置为顶层文件


  • 点击编译,没有报错即VHDL文件编写成功


  • 如出现以下内容,是因为项目名称叫做test,但是找不到这个名称叫test。顶级模块的名称必须与项目名称一致。


  • 故更正程序如下所示


生成部件

  • 将刚才的vhdl文件生成为部件,并用它进行画图,进行如下操作:

  • 点击 File->Create/Update->Create symbol files for current file,没有报错即可




生成顶层图

  • 如果你想用上面的部件画一个顶层图,那么就新建一个Block Diagram/Schematic File


  • 双击空白处可调出Symbol界面,在这里可以看到自己工程文件生成的部件


  • 选中后点击OK即可放置在原理图上,然后进行保存即可。



仿真测试

  • 对生成的部件进行仿真测试,则进行如下操作:

  • 点击Processing->Start->Start Test Bench Template Writer,没有报错即可



  • 新建一个University Program VWF文件


  • 双击左侧空白处,可调出Insert Node or Bus窗口


  • 点击list按钮就会显示出Entity(实体)定义的所有变量,之后全部导入即可;

  • 分别给四个输入信号加上激励波形,分别为10、20、40、80,满足BCD码条件


  • 保存后点击Run Functional Simulation,稍等即可弹出仿真后的界面


  • 【注】此处仿真不出图,很麻烦,需要新建仿真库https://blog.csdn.net/u013753393/article/details/50350138<> 参考本文

  • 另一简便途径是,下载ModelSim-Altera。附上下载链接:https://pan.baidu.com/s/16nEjS6Tx1NHKpU_e4ale1g 提取码:1234

  • 【注】想对哪个文件进行仿真,就需将哪个文件设置为顶层文件,并进行组建编译,然后重新建立一个VWF文件。


这样一个编写代码->生成部件->生成顶层图->仿真测试的流程就完成了。


下一篇:如何将写的程序下入正点原子_新起点开发板

以上是关于在quartus ii怎么进行 VHDL仿真的主要内容,如果未能解决你的问题,请参考以下文章

Quartus系列:Quartus II 原理图调用ModelSim进行仿真

使用Quartus13进行VHDL工程的编写与仿真

关于quartus ii 7.2的使用问题

Quartus 波形仿真

软件:Quartus II,语言:VHDL或verilog HDL?

在quartus ii9.0中进行波形仿真 时间轴的单位怎么调 现在是ns太小了 怎么调大点啊 请大侠们指教啊