原创 基于XILINX FPGA 的嵌入式系统设计与开发-第二章节选一

2013-4-4 00:06 1109 10 10 分类: FPGA/CPLD

 

2.2.2 Modelsim的使用

对于FPGA设计人员来说,调用脚本进行批出来,比直接使用GUI更方便,后续的例程我们都将采用脚本进行仿真,因此,在本书中,将Modelsim中常用的脚本进行详细介绍。

在使用之前,我们需要将Xilinx ISE库文件加载至Modelsim中,在库编译结束后,在C:\Xilinx\13.2\ISE_DS\ISE\bin\nt找到modelsim.ini文件,将库路径复制到Modelsim目录下modelsim.ini(去掉只读属性),保存即可。

 

 

33.jpg
 
44.jpg
55.jpg

 

常用命令介绍

;编译本地库//注释符号;

vlib work

;编译verilog

vlog +acc"../src/rxa.v"

;编译IPCORE

vlog +acc"../core/abc.v"

;编译顶层文件

vlog +acc"../sim/tb_tb.v"

;编译本地库

;这部分是XILINX 调用方法,对于Altera需要更改

vlog +acc"C:/Xilinx/12.3/ISE_DS/ISE/verilog/src/glbl.v"

;加载激励以及仿真库

vsim -novopt -t 1ps -L xilinxcorelib_ver -L unisims_ver -L unimacro_ver -L secureio -lib work rxta_tb glbl

;加载波形, *符号表示所有的信号,类似于通配符

add wave /*

;运行加上时间与单位

run 100us

 

 

2.2.3 Modelsim实例

下面以加法器来进行说明,测试顶层文件为add.v,激励文件为tb_add.v。

add.v文件包含下述代码

`timescale 1ns / 1ps

module add(

           clk,

           rst,

           din1,

           din2,

           dout

           );

    input        clk ;

    input        rst ;

    input  [2:0] din1;

    input  [2:0] din2;

    output [3:0] dout;

    

    reg [3:0] dout; 

    always @(posedge clk)

    begin

        if(rst)

            dout <= 4'd0;

        else

            dout <= din1 + din2;

    end

endmodule

tb_add.v文件包含下述代码

代码见附件

详细操作步骤如下。

步骤1:打开Modelsim,在命令窗口输入路径切换命令,cd {D:\Book_Examples\Lab2_1\sim},此路径为工程目录sim的路径。

 

 

66.jpg

步骤2:运行.do文件,即批处理脚本文件。在批处理中,如果HDL语言出现语法等错误,编译器会报错,如下图所示,根据提示修改后,再次运行。

 

77..jpg
88.jpg
99.jpg

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
10
关闭 站长推荐上一条 /1 下一条