EX1基于QUARTUS MODELSIM波形器仿真.docx
- 文档编号:7905336
- 上传时间:2023-01-27
- 格式:DOCX
- 页数:74
- 大小:162.93KB
EX1基于QUARTUS MODELSIM波形器仿真.docx
《EX1基于QUARTUS MODELSIM波形器仿真.docx》由会员分享,可在线阅读,更多相关《EX1基于QUARTUS MODELSIM波形器仿真.docx(74页珍藏版)》请在冰豆网上搜索。
EX1基于QUARTUSMODELSIM波形器仿真
实验M3-1基于QUARTUS/MODELSIM波形发生器仿真
实验目的:
采用第三方软件实现FPGA仿真。
实验内容:
将基于QUARTUS产生的方波,锯齿波,三角波等波形用MODELSIM进行仿真。
实验素材:
exwave目录下文件
实验要求:
按以下指导做出正弦波仿真后,将方波,锯齿波,三角波前、后仿真做出来
QUARTUSMODELSIM仿真准备
1.打开exwave的工程文件
2.Asignment->device->edatoolssetting->simulate->
a)Toolsname:
MODELSIM
b)Formatforoutputnetlist:
VHDL
c)Outputdirctory:
simulation/modelsim
d)设置完毕,编译,退出
第三方仿真软件MODELSIM准备
1安装仿真环境:
MODELSIMse6.5
2建立工程
建立MODELSIMALTERA库文件
进入MODELSIM之后,在transcript窗键入如下命令即可建立名为cycloneii的modelsimALTERA仿真文件。
vlibcycloneii
vmapcycloneiicycloneii
vcom-workcycloneiic:
/altera/80/quartus/eda/sim_lib/cycloneii_atoms.vhd
vcom-workcycloneiic:
/altera/80/quartus/eda/sim_lib/cycloneii_components.vhd
vcom-workcycloneiic:
/altera/80/quartus/eda/sim_lib/altera_mf_components.vhd
vcom-workcycloneiic:
/altera/80/quartus/eda/sim_lib/altera_mf.vhd
vlibcycloneii
vmapcycloneiicycloneii
vcom-workcycloneiid:
/altera/80/quartus/eda/sim_lib/cycloneii_atoms.vhd
vcom-workcycloneiid:
/altera/80/quartus/eda/sim_lib/cycloneii_components.vhd
vcom-workcycloneiid:
/altera/80/quartus/eda/sim_lib/altera_mf_components.vhd
vcom-workcycloneiid:
/altera/80/quartus/eda/sim_lib/altera_mf.vhd
注:
第一次在新建计算机上运行QUARTUS与MODELSIM时进行
220model.vhd是work.lpm_components
路径要根据实际安装目录来定,有的计算机可能是d:
/altera/80/quartus/eda/sim_lib/……
设计步骤
1建立工程
2在project窗口导入wave.vho
3编译wave.vho文件
其由QUARTUS生成
4建立测试台文件
以WAVE.VHO为源生成并编辑WAVE_TB.VHD文件,仿真WAVE_TB文件
图1建立工程
altera库仿真库放在modelsim安装目录下的\cycloneii下,要映射cycloneii库到modelsim安装目录下的\cycloneii。
图2建立altera仿真库
图3开始仿真
选中SDF选项,导入延时文件*.sdo(后仿真)
在transcript窗键入
Vsim>addwave*
Vsim>run140us
选择dout信号,选择format->analog,REDIX->UNSIGNED
可以用analog(custom)改变数据范围等
图4前仿真结果
附录1
源文件:
见附录2
测试台文件如下:
LIBRARYcycloneii
LIBRARYieee;
USEIEEE.STD_LOGIC_SIGNED.ALL;
USEcycloneii.cycloneii_components.all;
USEieee.std_logic_1164.all;
ENTITYwave_tbIS
END;
--cyclone为MODELSIM中ALTERA库的名称
ARCHITECTUREwave_tb_archOFwave_tbIS
SIGNALdout:
std_logic_vector(7downto0);
SIGNALdac_wr:
std_logic;
SIGNALdac_cs:
std_logic;
SIGNALswitch:
std_logic_vector(2downto0):
="000";
SIGNALdac_ab:
std_logic;
SIGNALclk:
std_logic:
='0';
COMPONENTwave
PORT(
dout:
outstd_logic_vector(7downto0);
dac_wr:
outstd_logic;
dac_cs:
outstd_logic;
switch:
instd_logic_vector(2downto0);
dac_ab:
outstd_logic;
clk:
instd_logic);
ENDCOMPONENT;
BEGIN
DUT:
wave
PORTMAP(
dout=>dout,
dac_wr=>dac_wr,
dac_cs=>dac_cs,
switch=>switch,
dac_ab=>dac_ab,
clk=>clk);
process(clk)
begin
clk<=notclkafter10ns;
endprocess;
END;
附录2
设计源文件
LIBRARYIEEE,cycloneii;
USEIEEE.STD_LOGIC_SIGNED.ALL;
USEIEEE.std_logic_1164.all;
USEcycloneii.cycloneii_components.all;
ENTITYwaveIS
PORT(
dac_wr:
OUTstd_logic;
clk:
INstd_logic;
dac_cs:
OUTstd_logic;
dac_ab:
OUTstd_logic;
dout:
OUTstd_logic_vector(7DOWNTO0);
switch:
INstd_logic_vector(2DOWNTO0)
);
ENDwave;
ARCHITECTUREstructureOFwaveIS
SIGNALgnd:
std_logic:
='0';
SIGNALvcc:
std_logic:
='1';
SIGNALdevoe:
std_logic:
='1';
SIGNALdevclrn:
std_logic:
='1';
SIGNALdevpor:
std_logic:
='1';
SIGNALww_devoe:
std_logic;
SIGNALww_devclrn:
std_logic;
SIGNALww_devpor:
std_logic;
SIGNALww_dac_wr:
std_logic;
SIGNALww_clk:
std_logic;
SIGNALww_dac_cs:
std_logic;
SIGNALww_dac_ab:
std_logic;
SIGNALww_dout:
std_logic_vector(7DOWNTO0);
SIGNALww_switch:
std_logic_vector(2DOWNTO0);
SIGNAL\inst|altsyncram_component|auto_generated|ram_block1a0_PORTAADDR_bus\:
std_logic_vector(5DOWNTO0);
SIGNAL\inst|altsyncram_component|auto_generated|ram_block1a0_PORTADATAOUT_bus\:
std_logic_vector(7DOWNTO0);
SIGNAL\clk~clkctrl_INCLK_bus\:
std_logic_vector(3DOWNTO0);
SIGNAL\inst2|clk1~clkctrl_INCLK_bus\:
std_logic_vector(3DOWNTO0);
SIGNAL\inst4|Add1~114_combout\:
std_logic;
SIGNAL\inst4|Add1~117\:
std_logic;
SIGNAL\inst4|Add1~118_combout\:
std_logic;
SIGNAL\inst4|Add0~357_combout\:
std_logic;
SIGNAL\inst4|Add0~363_combout\:
std_logic;
SIGNAL\inst6|Add0~60_combout\:
std_logic;
SIGNAL\inst6|Add0~61\:
std_logic;
SIGNAL\inst6|Add0~62_combout\:
std_logic;
SIGNAL\inst6|Add0~63\:
std_logic;
SIGNAL\inst6|Add0~64_combout\:
std_logic;
SIGNAL\inst6|Add0~65\:
std_logic;
SIGNAL\inst6|Add0~66_combout\:
std_logic;
SIGNAL\inst6|Add0~67\:
std_logic;
SIGNAL\inst6|Add0~68_combout\:
std_logic;
SIGNAL\inst2|Add0~67\:
std_logic;
SIGNAL\inst2|Add0~68_combout\:
std_logic;
SIGNAL\inst7|Mux0~158_combout\:
std_logic;
SIGNAL\inst7|Mux1~54_combout\:
std_logic;
SIGNAL\inst7|Mux2~54_combout\:
std_logic;
SIGNAL\inst6|clk1~regout\:
std_logic;
SIGNAL\inst4|Add0~374_combout\:
std_logic;
SIGNAL\inst6|Equal0~41_combout\:
std_logic;
SIGNAL\inst6|clk1~27_combout\:
std_logic;
SIGNAL\inst6|coun~83_combout\:
std_logic;
SIGNAL\inst6|coun~84_combout\:
std_logic;
SIGNAL\inst2|coun~83_combout\:
std_logic;
SIGNAL\clk~clkctrl_outclk\:
std_logic;
SIGNAL\clk~combout\:
std_logic;
SIGNAL\inst3|q~2_combout\:
std_logic;
SIGNAL\inst3|q~regout\:
std_logic;
SIGNAL\inst7|Mux0~156_combout\:
std_logic;
SIGNAL\inst5|num[3]~312_combout\:
std_logic;
SIGNAL\inst5|num[0]~_wirecell_combout\:
std_logic;
SIGNAL\inst5|num[3]~313\:
std_logic;
SIGNAL\inst5|num[4]~314_combout\:
std_logic;
SIGNAL\inst5|num[4]~315\:
std_logic;
SIGNAL\inst5|num[5]~316_combout\:
std_logic;
SIGNAL\inst5|num[5]~317\:
std_logic;
SIGNAL\inst5|num[6]~318_combout\:
std_logic;
SIGNAL\inst5|num[7]~322_combout\:
std_logic;
SIGNAL\inst5|Equal0~52_combout\:
std_logic;
SIGNAL\inst5|num[7]~323_combout\:
std_logic;
SIGNAL\inst5|num~324_combout\:
std_logic;
SIGNAL\inst5|num[6]~319\:
std_logic;
SIGNAL\inst5|num[7]~320_combout\:
std_logic;
SIGNAL\inst4|LessThan0~102_combout\:
std_logic;
SIGNAL\inst4|LessThan0~103_combout\:
std_logic;
SIGNAL\inst4|Add0~377_combout\:
std_logic;
SIGNAL\inst4|Add0~358\:
std_logic;
SIGNAL\inst4|Add0~359_combout\:
std_logic;
SIGNAL\inst4|Add0~376_combout\:
std_logic;
SIGNAL\inst4|Add0~360\:
std_logic;
SIGNAL\inst4|Add0~361_combout\:
std_logic;
SIGNAL\inst4|Add0~375_combout\:
std_logic;
SIGNAL\inst4|Add0~362\:
std_logic;
SIGNAL\inst4|Add0~364\:
std_logic;
SIGNAL\inst4|Add0~365_combout\:
std_logic;
SIGNAL\inst4|Add0~373_combout\:
std_logic;
SIGNAL\inst4|Add0~366\:
std_logic;
SIGNAL\inst4|Add0~368\:
std_logic;
SIGNAL\inst4|Add0~369_combout\:
std_logic;
SIGNAL\inst4|Add0~371_combout\:
std_logic;
SIGNAL\inst7|Mux0~159_combout\:
std_logic;
SIGNAL\inst7|Mux0~160_combout\:
std_logic;
SIGNAL\inst7|Mux0~157_combout\:
std_logic;
SIGNAL\inst4|Add0~367_combout\:
std_logic;
SIGNAL\inst4|Add0~372_combout\:
std_logic;
SIGNAL\inst4|Add1~105_cout\:
std_logic;
SIGNAL\inst4|Add1~107\:
std_logic;
SIGNAL\inst4|Add1~109\:
std_logic;
SIGNAL\inst4|Add1~111\:
std_logic;
SIGNAL\inst4|Add1~113\:
std_logic;
SIGNAL\inst4|Add1~115\:
std_logic;
SIGNAL\inst4|Add1~116_combout\:
std_logic;
SIGNAL\inst7|Mux1~55_combout\:
std_logic;
SIGNAL\inst7|Mux1~56_combout\:
std_logic;
SIGNAL\inst7|Mux2~55_combout\:
std_logic;
SIGNAL\inst7|Mux2~56_combout\:
std_logic;
SIGNAL\inst7|Mux3~54_combout\:
std_logic;
SIGNAL\inst4|Add1~112_combout\:
std_logic;
SIGNAL\inst7|Mux3~55_combout\:
std_logic;
SIGNAL\inst7|Mux3~56_combout\:
std_logic;
SIGNAL\inst4|Add1~110_combout\:
std_logic;
SIGNAL\inst2|Add0~60_combout\:
std_logic;
SIGNAL\inst2|coun~84_combout\:
std_logic;
SIGNAL\inst2|Add0~61\:
std_logic;
SIGNAL\inst2|Add0~63\:
std_logic;
SIGNAL\inst2|Add0~64_combout\:
std_logic;
SIGNAL\inst2|Add0~62_combout\:
std_logic;
SIGNAL\inst2|Add0~65\:
std_logic;
SIGNAL\inst2|Add0~66_combout\:
std_logic;
SIGNAL\inst2|Equal0~41_combout\:
std_logic;
SIGNAL\inst2|clk1~27_combout\:
std_logic;
SIGNAL\inst2|clk1~regout\:
std_logic;
SIGNAL\inst2|clk1~clkctrl_outclk\:
std_logic;
SIGNAL\inst1|lpm_counter_component|auto_generated|counter_comb_bita0~combout\:
std_logic;
SIGNAL\inst1|lpm_counter_component|auto_generated|counter_comb_bita0~COUT\:
std_logic;
SIGNAL\inst1|lpm_counter_component|auto_generated|counter_comb_bita1~combout\:
std_logic;
SIGNAL\inst1|lpm_counter_component|auto_generated|counter_comb_bita1~COUT\:
std_logic;
SIGNAL\inst1|lpm_counter_component|auto_generated|counter_comb_bita2~combout\:
std_logic;
SIGNAL\inst1|lpm_counter_component|auto_generated|counter_comb_bita2~COUT\:
std_logic;
SIGNAL\inst1|lpm_counter_component|auto_generated|counter_comb_bita3~combout\:
std_logic;
SIGNAL\inst1|lpm_counter_component|auto_generated|counter_comb_bita3~COUT\:
std_logic;
SIGNAL\inst1|lpm_counter_component|auto_generated|counter_comb_bita4~combout\:
std_logic;
SIGNAL\inst1|lpm_counter_component|auto_generated|counter_comb_bita4~COUT\:
std_logic;
SIGNAL\inst1|lpm_counter_component|auto_generated|counter_comb_bita5~combout\:
std_logic;
SIGNAL\inst7|Mux4~54_combout\:
std_logic;
SIGNAL\inst7|Mux4~55_combout\:
std_logic;
SIGNAL\inst7|Mux4~56_combout\:
std_logic;
SIGNAL\inst4|Add1~108_combout\:
std_logic;
SIGNAL\inst7|Mux0~161_combout\:
std_logic;
SIGNAL\inst7|Mux5~15_combout\:
std_logic;
SIGNAL\inst7|Mux5~16_combout\:
std_logic;
SIGNAL\inst4|Add1~106_combout\:
std_logic;
SIGNAL\inst7|Mux6~15_combout\:
std_logic;
SIGNAL\inst7|Mux6~16_combout\:
std_logic;
SIGNAL\inst7|Mux7~31_combout\:
std_logic;
SIGNAL\inst4|temp[0]~111_combout\:
std_logic;
SIGNAL\inst7|Mux7~32_combout\:
std_logic;
SIGNAL\inst5|num\:
std_logic_vector(7DOWNTO0);
SIGNAL\inst4|temp\:
std_logic_vector(7DOWNTO0);
SIGNAL\inst1|lpm_counter_component|auto_generated|safe_q\:
std_logic_vector(5DOWNTO0);
SIGNAL\inst2|coun\:
std_logic_vector(4DOWNTO0);
SIGNAL
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- EX1基于QUARTUS MODELSIM波形器仿真 EX1 基于 QUARTUS MODELSIM 波形 仿真