系统:win10
软件编辑和程序下载平台:Quartus II
仿真平台:modelsim
FPGA:EP4CE6
总结仿真流程:
1 Tools->EDA->Modelsim添加软件路径
2 Ass->setting->EDA->Sim->Mod/Vlog 设置EDA
3 Pro->Start->test Bench 选择模板
4 Ass->Set->Sim->Test B->name…->vt文件->add->OK
5 RTL SIm开始仿真
1 Modelsim安装和激活
首先安装软件,一路OK,最后有一个安全选项,选择NO,(就是问是否需要重启)
其他都是YES
激活工具链接
激活简介:
1 D:\XXX\modeltech64_10.4\win64\mgls64.dll 设置文件取消只读
2 文件MentorKG.exe和patch_dll.bat复制到Modelsim软件安装目录下的win64文件夹
3 双击运行patch_dll.bat,稍等一下会直接生成并打开LICENSE.TXT文件
4 另存LICENSE.TXT文件到D:\XXX\modeltech64_10.4\win64\下
5 D:\XXX\modeltech64_10.4\win64\mgls64.dll 设置文件只读
6 配置环境变量
用户变量中新建
名字: MGLS_LICENSE_FILE
路径: D:\XXX\modeltech64_10.4\win64\LICENSE.TXT
7 打开软件,选择再也不提示,然后OK就好了
注意上面的路径主要看你的软件安装到哪里了
激活教程网址
http://openedv.com/forum.php?mod=viewthread&tid=275980&extra=page%3D1
2 使用
在布局布线后进行的仿真称为布局布线后仿真,也称为后仿真或时序仿真。时序仿真可以
真实地反映了逻辑的时延与功能,综合考虑电路的路径延迟与门延迟的影响,验证电路能否在
一定时序条件下满足设计构想的过程,是否存在时序违规。
两种仿真情况:
手动仿真和自动(联合)仿真
步骤:
(1) 新建工程。
(2) 编写Verilog文件和Testbench仿真文件。
(3) 编译工程
(4) 启动仿真器并加载设计顶层
(5) 执行仿真。
功能仿真需要的文件:
1.设计HDL源代码:可以使VHDL语言或Verilog语言。
2.测试激励代码,也被称为TestBench:根据设计要求输入/输出的激励程序,由于不需
要进行综合,书写具有很大的灵活性。
3.仿真模型/库:根据设计内调用的器件供应商提供的模块而定,如:FIFO、ADD_SUB等。
3 仿真流程
打开QuartusII, 进入程序界面
向工程添加仿真软件目录
设置EDA
此时此刻,Quartus和modelsim已经联合到一起了接下来选择test Bench模板
找到生成的test Bench
修改仿真文件.vt,文件代码如下:
//仿真单位和和仿真精度
//精度太高了,所以修改一下
`timescale 1 ns/ 1 ns
//`timescale 1 ps/ 1 ps
module flow_led_vlg_tst();
// constants
// general purpose registers
reg eachvec;
// test vector input registers
reg sys_clk;
reg sys_rst_n;
// wires
wire [3:0] led; //3个LED的信号需要显示
// assign statements (if any)
flow_led i1 (
// port map - connection between master ports and signals/registers
.led(led),
.sys_clk(sys_clk),
.sys_rst_n(sys_rst_n)
);
initial //仿真信号初始化
begin
sys_clk = 1'b0;
sys_rst_n = 1'b0;
#100 sys_rst_n = 1'b1; //延时100ns 复位信号拉高
#1000 $stop;
end
always #10 sys_clk = ~sys_clk; //延时10ns反转
endmodule
添加.vt文件到仿真
设置好后,点击开始仿真
就会自动打开modelsim软件,进行仿真
模拟仿真:理想情况
时序仿真:近似于硬件运行