ISE和Modelsim联合仿真

ISE和Modelsim联合仿真

相信很多人会遇到过这个问题,不知如何让ISE调用Modelsim进行仿真。我也迷糊了不少时间,查查找找,终于弄明白了,所以有了本文,和大家分享一下。我尽量讲得详细点儿,多多上图。

我的环境:

Windows 7 64位,Xilinx ISE Design Suite 13.4(D:\Xilinx\13.4),ModelsimSE-64 10.1a(D:\modeltech64_10.1a, 哈,也是64位的)。不过32位的和64位的设置几乎没有什么区别。
先安装好ISE和Modelsim, 网上看过一些文章总说先装ISE再装Modelsim,不过我整过一阵,其实二者的顺序是无关紧要的。
安装过程不在本文的讨论范围内,就不多说了,不过一定要注意版本要合适,Modelsim的版本不要太低,这个可以自己到网上查一查,还有非常重要的一点是安装路径不能有中文或空格。

编译仿真库

由于我装的Modelsim SE是通用版的,只自带了少许的仿真库(Simulation Library),所以还要编译一下Xilinx的仿真库。只有XE才自带Xilinx的仿真库,如果装的是XE版便不必编译仿真库了。编译库可以用ISE带界面的工具,也可以用命令行下的,前者方便,先讲前者。

打开编译库工具“Simulation Library Compilation Wizard”:“开始—所有程序—Xilinx ISE Design Suite 13.4(版本不同就不同)—ISE Design Tools—64-bit Tools(32位的选32-bit Tools)—Simulation Library Compilation Wizard”。
注意,64位系统中默认安装了64位和32位的ISE,如果你想用32位的ISE,那你就得选32位的编译库工具,不能混着用的,而且Modelsim也得装上32位的版本,所以我建议64位系统的就用64位的ISE,而32位系统的没得选,只能用32位的。如图01所示。

图1

打开工具之后,在“Select Simulator”下面选中你所装好的Modelsim版本,我这儿选“Modelsim SE”,在“Simulator Executable Location”下面填入Modelsim.exe的所在的文件夹,点“Browse…”按钮添加也行,我这儿是“D:\modeltech64_10.1a\win64”(不含双引号,下同,除非有特别的说明),如图02,然后Next。


image.png

之后是选择需要编译的语言,选“Both VHDL and Verilog”,一般两种都要用,如图03,然后Next。


图2

接下来是选择设备,默认是全选,如果有一些你实在用不上就不选吧,这样可以省点时间和硬盘空间,全选时挺大条的,如图04,还是Next。

04

下一步默认就行,全选上,下面的两行东东留空即可,那是添加额外库的,第一行是路径,第二行是命令参数,无视之。如图05,Next。

05

这一步比较关键,在“Output directory for compiled libraries”下面填入输出已编译库的路径,默认也行。个人建议新建一个单独的文件夹,好管理,只要版本一样的,下次直接拿来用,重装也不怕。不过文件夹的名字和整个路径中绝对不能有中文或空格,切记、切记!!!我这儿是“D:\modeltech64_10.1a\Xilinx_lib”。其他的选项默认便可,之后点“Launch Compiled Process”,如图06。之后就开始编译了,如图07。其实这一页是很有用处的,详情请点下面的那个“More Info”按键,不过帮助是英文的。

06
07

等待……编译完后就会出现一些编译日志,图08,Next,图09,Finish。只要没有Err就成,Warn无视。若有Err,就回顾下版本对不对,路径有没有中文或空格。


08

09

设置ISE和Modelsim的关联。

在“D:\Xilinx\13.4\ISE_DS\ISE”文件夹中找到“modelsim.ini”,“D:\Xilinx\13.4”这个是你的ISE安装目录,后半路径是一样的,实在不行就进入安装目录然后搜索“modelsim.ini”,如图2.1。

2.1

打开“modelsim.ini”,用记事本打开时不要用自动换行功能,菜单中“格式—自动换行”把勾去掉。个人不建议用记事本,写字板那就更不行了,有的文件用写字板改了会出现问题,搞编程类的总得有个好点儿的文本编辑工具吧,我用的是EmEditor,到网上搜一下吧,有不少呢。在第九行左右(可能是)找到“[Library]”,下面一行的“others = $MODEL_TECH/../modelsim.ini”和行的开头的分号(;)的全部都无视。那些行开头没有分号的,格式一般是“X···X = 路径”,一直到“[vcom]”之上的都要,选的仿真库多时可有好长的一段,全部复制。见图12、图13和图14。

12

13

14

然后在Modelsim的安装目录下,我这儿是“D:\modeltech64_10.1a”,找到“modelsim.ini”,名字一样。先去换个文本编辑工具吧,用记事本打开它会是乱糟糟的一片,没法改。打开后,同样是找到“[Library]”,在它的下面粘贴上刚刚复制的那一大段东西,注意,行开头不要有分号(;),而且人家原有的就别动它,别删掉了。只要在“[Library]”和“[vcom]”之间粘贴就行,然后保存。如图15、图16和图17。

15

16
17

打开ISE,“开始—所有程序—Xilinx ISE Design Suite 13.4(版本不同就不同)—ISE Design Tools—64-bit Project Navigator(32位的就开32-bit Project Navigator)”,图18。


18

然后在ISE的菜单上“Edit—Preferences…”调出Preferences设置窗口,在左边的“Category”下选中“ISE General—Integrated Tools”。在Integrated Tools项设置中,右边的“Model Tech Simulator:”下面填入Modelsim.exe的文件路径,点旁边的“..”按键选中Modelsim.exe也行,我这儿是“D:\modeltech64_10.1a\win64\modelsim.exe”(不要双引号)。32位的可能是“D:\modeltech32_10.1a\win32\modelsim.exe”。如图19和图20。


image

image

image

到现在已经把家伙准备好了,接下来就是使用它了。新建一个工程,图21,这步不多说,Next。


image

接下来这一步在“Simulator”一项选“Modelsim-SE Mixed”,“Mixed”支持两语言,“SE”是版本,选你自己对应的就成,其它项不讨论,如图22,Next,Finish。忘了选或想重新选的看图23。


image

image

新建你的VHDL或Verilog文件,这个不多说。
完成之后,切换到仿真模式,就是点工程上面的“Simulation”,可能不同版本会不一样,ISE9.1i 是在“Source for”的下拉菜单中选择Behavioral simulation,不过意思明白就行。建立Test Bench文件,若是VHDL的,也按上面说的处理一下,就是把那两个库声明一下。在“Hierarchy”框选中Test Bench文件,在下面的那个框中点“Modelsim Simulator”前的加号。展开得到“Simulate Behavioral Model”,在它上面点右键,选“Process Properties…”,如图27。


image

在“Simulate Behavioral Model”上点右键,选“Run”就可以调用Modelsim进行仿真了,如图30。另外提一点,在ISE上也可以编译库的。在仿真模式中,在“Hierarchy”框中选中FPGA名,我这儿是“xc7a8-3csg324”(下面就是仿真文件)。然后在下面的框中点“Design Utilities”前面加号。展开后得到“Compile HDL Simulation Libraries”,在其上点右键,选“Run”,这样就会编译你的工程中所需的仿真库了 。

成功案例

如下图,没有报错,ISE调用Modelsim正常。


image
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,098评论 5 476
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,213评论 2 380
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 149,960评论 0 336
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,519评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,512评论 5 364
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,533评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,914评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,574评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,804评论 1 296
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,563评论 2 319
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,644评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,350评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,933评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,908评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,146评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,847评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,361评论 2 342