EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
简介:FPGA的开发中,仿真环节是必不可少的,而ISE自带的仿真工具只能仿真一些简单的HDL代码,无法仿真使用Coregen生成的IP,这个时候最简单的方式就是使用ModelSim。本文介绍如何在Xilinx FPGA开发环境中,建立ModelSim仿真环境。其实方法有多种,这里使用ISE的命令行方式以及图像界面方式,分别针对ISE/EDK9.1.X和ISE10.1.03/EDK10.1.X,介绍将ModelSim的仿真环境搭建起来。 - Y2 I, [, [1 m8 L: J% P) n8 @
1)命令行方式,ISE/EDK9.1.0X与ModelSim6.3se 编译xilinx公司的库,编译方法如下:: J+ Z1 B# M! c5 W* k {
(1)安装ModelSim。比如我安装到了E:\Software\modelsim63se\ 这个目录里。4 K0 Y- m) i! f/ F' ~; S
(2)建两个空目录用来存放编译好的库。我的目录是E:\xilinx_lib_me\ise\和E:\xilinx_lib_me\edk\。7 `0 `; s6 ?$ v5 d+ J8 G
(3)编译ISE的库。进入Dos命令行界面,敲入:0 Z$ L. R( ?4 M
- K. |+ B9 I0 W+ ^( o$ ^) X1 c
compxlib -s mti_se -arch all -l all -lib all -w -o E:\xilinx_lib_me\ise\ -smartmodel_setup -p E:\Software\modelsim63se\ ) A9 C+ m9 F ~
7 p# P+ Z4 E: Q 当然,更好的做法是用批处理文件。用任意文本编辑器,把这行命令拷贝到一个新文件里,保存为xxx.bat的批处理文件。然后运行它就可以了。
+ v8 f: p$ @5 R5 D" b& n: W6 M9 O0 S
等待电脑编译完成。如果没有报错,这步就OK。在你输入Dos命令所在的当前目录里,已经生成了modelsim.ini文件,打开这个文件把[Library]下面的这几行复制到ModelSim安装目录下的modelsim.ini的[Library]下面。
+ o% P7 _# Q ?8 \; u* E2 E& ~# _ UNISIMS_VER = E:\xilinx_lib_me\ise\unisims_ver
* t% }9 E a' T! G6 ` UNI9000_VER = E:\xilinx_lib_me\ise\uni9000_ver
/ n' v% T2 G+ ?% N1 T' w+ u SIMPRIMS_VER = E:\xilinx_lib_me\ise\simprims_ver
/ u2 {# I2 |! [0 Y$ Y XILINXCORELIB_VER = E:\xilinx_lib_me\ise\XilinxCoreLib_ver
8 \3 a& N+ x% l AIM_VER = E:\xilinx_lib_me\ise\abel_ver\aim_ver+ ^* m& ^3 L( y% r, d" p$ m
cpld_VER = E:\xilinx_lib_me\ise\cpld_ver4 E `# h$ f, v& F
UNISIM = E:\xilinx_lib_me\ise\unisim
1 Z6 V" a: P3 q( A+ \/ ] SIMPRIM = E:\xilinx_lib_me\ise\simprim
3 }# ], P; h& u5 e) Q1 o4 |7 c XILINXCORELIB = E:\xilinx_lib_me\ise\XilinxCoreLib: B2 o D2 d; d
AIM = E:\xilinx_lib_me\ise\abel\aim
8 N" s6 ?2 [5 I, i& N PLS = E:\xilinx_lib_me\ise\abel\pls
, P3 Z+ v/ j$ V, w CPLD = E:\xilinx_lib_me\ise\cpld
* K2 ^; M) t3 C3 e6 `/ r+ B& K 需要注意的是ModelSim安装目录下的modelsim.ini是只读的,要先把它的只读属性去掉。
, L5 m/ e; z: o/ U+ j0 Y1 u, T7 z 到此这步完成!
/ Q7 c2 J# G# A 命令参数说明(可以跳过不看):& {) S+ h' @7 g* A5 g
compxlib -s <simulator> -f <family[:lib],<family[:lib],...|all>
; h! [! [& B# ? g T/ [ [-l <language>]
: C& [4 k9 m: F1 Z8 Q1 R" _# X! K: m [-o <compxlib_output_directory>]
4 q$ _7 [1 n+ k( ]2 R4 n [-w]6 M- Q6 `& C# o& s: _2 K$ \
[-p <simulator_path>]0 }2 D3 T+ g, c P' M
. Q. L5 ?) ~# n8 R
对照上面的命令行,很容易明白各个参数的含义。-p是指定你的ModelSim可执行文件的目录。如果该路径在你系统环境变量PATH有,也可以不添加。
(4)编译EDK的库。还是Dos命令行界面,输入:
( l6 e8 i% ?& O6 {. `$ w, D3 l
- G! l; d8 m8 ~8 i: y: h compedklib -o E:\xilinx_lib_me\edk\ -X E:\xilinx_lib_me\ise\ -exclude deprecated
8 h( n; w! V/ m8 p# J9 {# \; o0 j
也可以使用批处理。
: `( u! I2 e# Q8 Y% k 然后是等待。直到出现100% complete, 0 errors 就OK了。然后将E:\xilinx_lib_me\edk\目录中的modelsim.ini文件中的[Library]下面的几行(很多行,各个IP都有自己的一个库)复制到ModelSim安装目录下的modelsim.ini的[Library]下面。
3 w0 V) l/ \$ y 命令行参数说明(可以跳过不看):+ R& o' I0 f3 ~" L6 T( l
compedklib -o <compedklib-output-dir-name>
$ U9 @7 Y& R8 c* J8 e -X <compxlib-output-dir-name> -exclude deprecated$ k4 ?7 u9 T w8 p5 ]7 D
-X后面的目录是你存放ISE库的目录。4 e2 x/ n. G+ F% i- c/ t# F. K0 s
2)图像界面方式,ISE/EDK10.1.0X,Modelsim6.3se 图形化界面方式相对比较的简单,也是推荐使用的一种方式。打开EDK,选择Simulation-->Compile Simulation Libraries得到一个对话框,选择next。选择ModelSim,Next,选择Both VHDL and Verilog。 接下来询问是否编译ISE中需要的库,按照如下选择:9 K9 e/ l; \' F' Q
![]() 对EDK中的IP进行编译 ![]()
4 [0 q* \" A2 D 根据自己的需求,选择下面的选项。 至此,选择compile,编译就好了。接下来是等待,可能会有20分钟左右,具体时间一机器的不同会有所不同。等ISE和EDK都到100%了,并且没有错误了,库就编译好了。接下来就是绑定到ModelSim工具中。 将E:\xilinx\libs_modelsim\edk\和E:\xilinx\libs_modelsim\ISE\目录中的modelsim.ini文件中的[Library]下面的几行(很多行,各个IP都有自己的一个库)复制到ModelSim安装目录下的modelsim.ini的[Library]下面。 至此,完成。 % C$ }" D& I, H4 R3 t1 `# c) m
|