找回密码
 注册
关于网站域名变更的通知
查看: 437|回复: 1
打印 上一主题 下一主题

[FPGA博客大赛]建立XILINX FPGA开发中的ModelSim仿真环境

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-4-19 11:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
简介:FPGA的开发中,仿真环节是必不可少的,而ISE自带的仿真工具只能仿真一些简单的HDL代码,无法仿真使用Coregen生成的IP,这个时候最简单的方式就是使用ModelSim。本文介绍如何在Xilinx FPGA开发环境中,建立ModelSim仿真环境。其实方法有多种,这里使用ISE的命令行方式以及图像界面方式,分别针对ISE/EDK9.1.X和ISE10.1.03/EDK10.1.X,介绍将ModelSim的仿真环境搭建起来。
$ a0 m8 k; {, g+ W6 T" o
1)命令行方式,ISE/EDK9.1.0X与ModelSim6.3se
    编译xilinx公司的库,编译方法如下:3 }3 A9 u* W( i) [: `) c
    (1)安装ModelSim。比如我安装到了E:\Software\modelsim63se\ 这个目录里。2 u/ M' M2 F" I7 B3 X8 Z: z& ~& d
    (2)建两个空目录用来存放编译好的库。我的目录是E:\xilinx_lib_me\ise\和E:\xilinx_lib_me\edk\。
+ k3 G7 A1 @) z% T7 b    (3)编译ISE的库。进入Dos命令行界面,敲入:# T4 \, J# h. {2 h
! j8 @7 T; U# d
    compxlib -s mti_se -arch all -l all -lib all  -w -o E:\xilinx_lib_me\ise\ -smartmodel_setup -p E:\Software\modelsim63se\ ! m7 x  C- Q3 x. x4 o, }& E7 }
1 l7 |% b$ D+ C6 e( n& V- `
    当然,更好的做法是用批处理文件。用任意文本编辑器,把这行命令拷贝到一个新文件里,保存为xxx.bat的批处理文件。然后运行它就可以了。
" d: C- }- i0 k
: F9 c4 F& V0 G6 O3 M+ b- J1 b    等待电脑编译完成。如果没有报错,这步就OK。在你输入Dos命令所在的当前目录里,已经生成了modelsim.ini文件,打开这个文件把[Library]下面的这几行复制到ModelSim安装目录下的modelsim.ini的[Library]下面。
/ r* a! v( N! J! f8 p    UNISIMS_VER = E:\xilinx_lib_me\ise\unisims_ver
/ X  |: V2 K7 ^    UNI9000_VER = E:\xilinx_lib_me\ise\uni9000_ver
, @6 D) S9 ?3 ?" ~$ Q    SIMPRIMS_VER = E:\xilinx_lib_me\ise\simprims_ver( p$ Y% G) i# ^
    XILINXCORELIB_VER = E:\xilinx_lib_me\ise\XilinxCoreLib_ver7 H- |3 i8 }% a9 u& [0 K
    AIM_VER = E:\xilinx_lib_me\ise\abel_ver\aim_ver6 f9 r. i( k: w& _- g
    cpld_VER = E:\xilinx_lib_me\ise\cpld_ver# Y! u: b6 F( |( w9 L
    UNISIM = E:\xilinx_lib_me\ise\unisim
+ w" p6 k; }( O% P    SIMPRIM = E:\xilinx_lib_me\ise\simprim( [+ P. x  A$ E1 e3 j% t4 v
    XILINXCORELIB = E:\xilinx_lib_me\ise\XilinxCoreLib0 f7 @  ^$ s  F
    AIM = E:\xilinx_lib_me\ise\abel\aim: `7 N# H% M% m) a1 n2 |4 c9 q
    PLS = E:\xilinx_lib_me\ise\abel\pls( f# @7 V" ^3 Y3 y  x5 B9 H
    CPLD = E:\xilinx_lib_me\ise\cpld

. ?) `* L) z* X    需要注意的是ModelSim安装目录下的modelsim.ini是只读的,要先把它的只读属性去掉。  @& L. x. Z! F( P
    到此这步完成!

/ ?  w- D- T$ p( |( D    命令参数说明(可以跳过不看):$ n. G: W0 x& l7 c
    compxlib -s <simulator> -f <family[:lib],<family[:lib],...|all>
3 X: x$ w. L. u/ i    [-l <language>]- E& L0 }6 ~# f* P5 }' y" u
    [-o <compxlib_output_directory>]' j) q2 Y8 S% m8 x2 S' Z
    [-w]
, f$ d% Z, u) ?9 a9 h    [-p <simulator_path>]5 }7 y. w: G) }9 _& `3 I8 P+ X

/ t/ S* R3 u$ o- }    对照上面的命令行,很容易明白各个参数的含义。-p是指定你的ModelSim可执行文件的目录。如果该路径在你系统环境变量PATH有,也可以不添加。
    (4)编译EDK的库。还是Dos命令行界面,输入:4 H0 L$ n: B) J0 N5 l7 g
, P$ d7 Z7 e( |
    compedklib -o E:\xilinx_lib_me\edk\ -X E:\xilinx_lib_me\ise\ -exclude deprecated
- Q2 k# u/ C* r
7 w% u! t5 ^* x    也可以使用批处理。
- f6 h( U# h( ]6 A4 y  E/ m: y% m    然后是等待。直到出现100% complete, 0 errors 就OK了。然后将E:\xilinx_lib_me\edk\目录中的modelsim.ini文件中的[Library]下面的几行(很多行,各个IP都有自己的一个库)复制到ModelSim安装目录下的modelsim.ini的[Library]下面。

/ F* q5 w1 W! }$ a1 R. Z    命令行参数说明(可以跳过不看):4 ^* ]( K9 ?( C; q: A/ H5 I. F
    compedklib -o <compedklib-output-dir-name>
3 E9 n3 [* [  m& a1 f$ B& I    -X <compxlib-output-dir-name> -exclude deprecated) P% o) y) H1 }4 p9 L" Q. b
    -X后面的目录是你存放ISE库的目录。; e. o2 z& c/ U; ]* j8 ]$ ?6 ~4 Y7 \
   
2)图像界面方式,ISE/EDK10.1.0X,Modelsim6.3se
图形化界面方式相对比较的简单,也是推荐使用的一种方式。打开EDK,选择Simulation-->Compile Simulation Libraries得到一个对话框,选择next。选择ModelSim,Next,选择Both VHDL and Verilog。
接下来询问是否编译ISE中需要的库,按照如下选择:
/ R- _2 j5 F, `4 B' Z% R) P
对EDK中的IP进行编译

, {- G1 g0 B8 ~  o1 i8 q+ U
根据自己的需求,选择下面的选项。
至此,选择compile,编译就好了。接下来是等待,可能会有20分钟左右,具体时间一机器的不同会有所不同。等ISE和EDK都到100%了,并且没有错误了,库就编译好了。接下来就是绑定到ModelSim工具中。
将E:\xilinx\libs_modelsim\edk\和E:\xilinx\libs_modelsim\ISE\目录中的modelsim.ini文件中的[Library]下面的几行(很多行,各个IP都有自己的一个库)复制到ModelSim安装目录下的modelsim.ini的[Library]下面。
至此,完成。

8 v' h* I( ~8 s  I, J$ j, D
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-8-1 05:56 , Processed in 0.125000 second(s), 24 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表