modelsim-脚本仿真流程 lattice库文件编译及相关问题解决

1.建立modelsim.bat文件

vsim -do sim.do

2.建立sim.do文件

vlog +incdir+ ./../src/video_process_top/vga_ctr.v \
              ./sim_tb.v

vsim -novopt +nowarnPCDPC -L ecp3 -t 1ns work.sim_tb

view structure
view signals
view wave
radix -decimal

add wave -noupdate -divider {Global Signals}
add wave -noupdate -format Logic /sim_tb/U0_vga_ctr_inst/*



run 3ms

modelsim调试时,将需要查看的信号拉在一起并排序,若需要重新仿真,可直接选择信号复制黏贴到do文件中,前面加上add wave -dev ,就可以在重新仿真出来的波形中直接看到需要查看的信号及其排序

3.建立sim_tb.v文件

`timescale 1 ns / 100 ps
module  sim_tb();
    reg             clk;
    reg                rst_n;
    wire            sof_test;
    wire            eof_test;
    wire            sol_test;
    wire            eol_test;
    wire            valid_test;
    wire    [23:0]    dout_test;

vga_ctr U0_vga_ctr_inst(
                .rst_n           (rst_n            ),
                .vid_clk         (clk        ),
                .sof            (sof_test        ),
                .eof            (eof_test        ),
                .sol            (sol_test        ),
                .eol            (eol_test        ),
                .dout_valid     (valid_test        ),
                .dout            (dout_test        )
);
initial
begin
clk = 1'd1;
rst_n = 1'd0;
#1000 rst_n = 1'd1;
end
always
begin
#10 clk = ~clk;
end
endmodule

4.常用modelsim命令

quit -sim 不需要执行,可直接执行do sim.do

do sim.do

run 3ms

5.编译lattice器件库

①在X:\modeltech_10.0c下建立文件夹Lattice
②去掉modelsim安装根目录下modelsim.ini的只读属性
③打开modelsim,File >> change directory,选择新建的文件夹“Lattice”

④若为ECP3器件, File >> New >> Library中的Library Name中输入ECP3
(选项为a new library and a logical mapping to it)
⑤Compile >> Compile,库选择ECP3,文件选择X:\lscc\diamond\3.9\cae_library\simulation\verilog下的ecp3和pmi中的所有文件进行编译,无报错即可

⑥打开modelsim.ini,会发现有一行:ECP3 = ECP3,修改为ECP3 = X:\modeltech_10.0c\Lattice\ECP3即可;
⑦增加modelsim.ini只读属性即可

6.lattice modelsim仿真时调用IP仿真报错

# ELAB2: Fatal Error: ELAB2_0036 Unresolved hierarchical reference to “PUR_INST.PURNET”

from module “FifoTest_tb.rom.rom_0_3” (module not found).

ELAB2: Fatal Error: ELAB2_0036 Unresolved hierarchical reference to “PUR_INST.PURNET”

from module “FifoTest_tb.fifo.FifoMacro_0_3” (module not found).

问题解决,在仿真tb顶层文件中加

GSR GSR_INST (.GSR (1’b1));
PUR PUR_INST (.PUR (1’b1));即可

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ModelSim 2019编译文件12110指的是在使用ModelSim 2019进行仿真时,编译和链接一个名为"library 12110"的文件编译文件是将文件中的源代码转换为可执行文件的过程。在ModelSim中,使用VHDL或Verilog语言编写的源代码文件需要经过编译才能进行仿真编译文件12110是将文件中的源代码转换为可执行文件,以便后续进行仿真编译文件的过程一般包括以下步骤: 1. 打开ModelSim 2019软件,在工程目录下找到要编译文件12110所在的路径。 2. 在ModelSim的命令行界面中输入编译命令,例如使用VHDL语言编译文件的命令是`vcom`,使用Verilog语言编译文件的命令是`vlog`。 3. 在编译命令后面加上要编译文件的路径和文件名,以及其他需要的参数。例如,编译VHDL语言的文件12110的命令可以是`vcom -work library12110 library12110.vhd`,编译Verilog语言的文件12110的命令可以是`vlog -work library12110 library12110.v`。 4. 执行编译命令后,ModelSim会开始编译文件12110。在编译过程中,ModelSim会检查源代码中的语法错误和逻辑错误,并生成相应的报告。 5. 如果编译成功,ModelSim会生成一个可执行文件,该文件可以用于后续的仿真过程。 通过编译文件12110,我们可以将源代码转换为可执行文件,以便使用ModelSim 2019进行仿真并验证设计的正确性。编译过程中出现的错误需要仔细查看和修正,以确保编译成功并生成有效的可执行文件

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值