在test目录下创建工程fulladder然后直接finish; 2.编写VHDL:
New一个VHDL FILE,输入代码:
library ieee;
use ieee.std_logic_1164.all;
ENTITY fulladder IS PORT( a,b,cin : IN STD_LOGIC; s,cout: OUT STD_LOGIC); END fulladder;
ARCHITECTURE fulladder OF fulladder IS BEGIN s<= a XOR b XOR cin;
cout <=(a AND b) OR (a AND cin) OR (b AND cin); END fulladder;
保存在test目录下,文件名为默认fulladder。
3. 在Quartes II 11.0界面菜单栏中选择 Tools-->options选项卡中选中EDA tool options,在该选项 卡中下面的ModelSim-Altera一项指 定安装路径为(如d:/Altera/11.0/modelsim_ae/win32aloem)
4.在Quartes II 11.0界面菜单栏中选择Assignments->Settings。
选中该界面下EDA Tool settings中的Simulation一项;Tool name中选择ModelSim-Altera;
Format for output netlist中选择开发语言的类型VHDL或其它,如图:
然后点击APPLY应用和OK。
5.设置完成后,编译工程:在Quartus II 11.0界面菜单栏中选择菜单栏选择
Processing-->start Compilation,等待编译,无错后会在test目录下生成simulation目录,执行下一步。
6.在Quartus II 11.0界面菜单栏中选择菜单栏Tools中的Run EDA Simulation Tool-->
EDA RTL Simulation 进行行为级仿真,接下来就可以看到ModelSim-Altera 6.6d的运行界面
7.modelsim界面菜单栏中选择Compile-->compile... ,弹出窗口中选择 test/simulation/modelsim/fulladder.vho文件,点击compile,然后点击done.在Library窗口中可以展 开work/fulladder可以看到:
8.双击fulladder载入
9.此时,在作为输入的端口对象上点右键,选择create wave创建波形,作为输出的端口上点右键选择
add-->to wave-->slected signals,添加到波形窗口中,然后运算即可仿真
方法2:在quartus ii 11.0环境下,调用modelsim仿真,并修改quartus生成的test bench文件,提供激励形成波形。 具体步骤:(前5步同上) 1.新建工程 2.编写VHDL
3. 在Quartes II 11.0界面菜单栏中选择 Tools-->options选项卡中选中EDA tool options,在该选项 卡中下面的ModelSim-Altera一项指 定安装路径为(如d:/Altera/11.0/modelsim_ae/win32aloem)
4.在Quartes II 11.0界面菜单栏中选择Assignments->Settings。
选中该界面下EDA Tool settings中的Simulation一项;Tool name中选择ModelSim-Altera;
Format for output netlist中选择开发语言的类型VHDL或其它。
5.设置完成后,编译工程:在Quartus II 11.0界面菜单栏中选择菜单栏选择
Processing-->start Compilation,等待编译,无错后会在test目录下生成simulation目录,执行下一步。
6.生成test bench文件,Processing-->start-->start test bench template write执行如图:
会在 test/simulation/modelsim下生成fulladder.vht 文件
7.打开test/simulation/modelsim/fulladder.vht文件(注意文件类型) LIBRARY ieee; USE ieee.std_logic_1164.all;
ENTITY fulladder_vhd_tst IS END fulladder_vhd_tst;
ARCHITECTURE fulladder_arch OF fulladder_vhd_tst IS -- constants -- signals SIGNAL a : STD_LOGIC; SIGNAL b : STD_LOGIC; SIGNAL cin : STD_LOGIC; SIGNAL cout : STD_LOGIC; SIGNAL s : STD_LOGIC; COMPONENT fulladder PORT (
a : IN STD_LOGIC; b : IN STD_LOGIC; cin : IN STD_LOGIC; cout : OUT STD_LOGIC; s : OUT STD_LOGIC );
END COMPONENT; BEGIN
i1 : fulladder PORT MAP (
-- list connections between master ports and signals a => a, b => b, cin => cin, cout => cout, s => s );
init : PROCESS -- variable declarations BEGIN -- code that executes only once a<='0'; b<='0'; cin<='0'; wait for 1ns;
a <=NOT a after 4ns; b <=NOT b after 2ns; cin <=NOT cin after 1ns;
WAIT;
END PROCESS init; always : PROCESS -- optional sensitivity list -- ( )
-- variable declarations BEGIN
-- code executes for every event on sensitivity list WAIT;
END PROCESS always; END fulladder_arch;
在代码中加入红字代码部分,然后保存;
8.在Quartes II 11.0界面菜单栏中选择Assignments->Settings。
选中该界面下EDA Tool settings中:
选择compile test bench,点击test benches...,弹出窗口
点击New...
在file name选择文件fulladder.vht,然后点击add,点击OK设置完成。
9.在Quartus II 11.0界面菜单栏中选择菜单栏Tools中的Run EDA Simulation Tool--> EDA RTL Simulation 进行行为级仿真,接下来就可以看到ModelSim-Altera 6.6d的运行界面及仿真图形。
因篇幅问题不能全部显示,请点此查看更多更全内容