- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
加入收藏
设为首页
联系站长
?.?网站首页?.?产品新知?.?业界资讯?.?技术文库?.?下载中心?.?服务导航?.?电子商城?.?邮购需知?.? |?服务导航首页?|?帮助中心?|?培训教程?|?录像教程?|?试用评测?|?软件应用?|?官方资讯?|
您现在的位置:?61EDA中国电子网??服务导航??培训教程??Modelsim仿真??正文
?
[组图]精通ModelSim脚本
??????????
【字体:小大】
精通ModelSim脚本 作者:Free????文章来源:Free????点击数: 17????更新时间:2011-3-15????
ModelSim之强大是毋庸置疑的。而ModelSim脚本语言的强大,也同样让人佩服得五体投地。在此文中,Craftor将一步一步教大家如何编写Modelsim的脚本,让仿真变得更容易些!
这里先推荐一个代码编辑器,Crimson Editor,支持所有常见的源代码编辑,功能非常强大,完全可按自己喜好定制。以下文章的内容也会基于于这个文本编辑器。
下载地址:/files/cedt.rar
?
一、在D:\mydocuments\fpga_proj\test\ 目录下新建一个test.vhd文件,内容如下。代码没有任何物理意义,仅是用来测试的。
二、编写一个sim.do文件,放在同一个目录下。内容如下:
解释:
1:新建work库
2:映射work库
3:编译test.vhd文件,默认编译到work库中。(如果是verilog文件,用vlog *.v来编译)
4:仿真work库中名为test的模块,时间单位为1ns。(因为我的代码中entity的名称为test)
-L work? 是表示仿真的时候包含work库中所有模块。
如果是仿真Xilinx或者Altera的IP核,需要将其IP核的库包含进来,如 –L xilinxcorelib 。
-t 1ns是仿真时序图上最小的时间单位,如果不加-t 1ns,默认的是ps。
5:将test里所有的信号都添加到波形图里。(这行代码会自动将波形图调用出来)
r 表示 region。
7:将clk信号赋予时钟,周期为10ns(因为第4行指定时间单位为ns)。
0 0,1 5 特别解释一下。第一个0表示低电平,逗号后的1表示高电平。第二个0默认不修改,否则生成的不是占空比为50%的时钟,有兴趣的朋友可以自己修改为其它值看下结果。5表示高电平1占整个周期的时间5ns。
所以,如果要产生周期为20ns的时钟,应该写成 force -repeat? 20 clk 0 0,1 10。
-repeat是关键字,表示重复产生。
同样,如果要产生差分时钟,应该写两行:
force –repeat 20 clk_p 0 0,1 10
force –repeat 20 clk_n 1 0,0 10
8:运行10ns,就是仿真图上的波形向前运行10ns,很容易理解。
9:将a1置为高电平1,force是给信号量赋值的意思。
11:将b1赋值为2进13:将c1赋值为16进制FFAA
三、在CrimsonEditor下,按F10,或者选择Tools – MS-DOS Shell
则会出现命令提示行并且目录会自动指定到D:\mydocuments\fpga_proj\test下,这就是CrimsonEditor的强大之处。^_^
如果用其它编辑器,则需要自己运行命令提示符,并将工作目录切换到当前代码所在目录下,比较麻烦一些。如下图。
?
此时在命令提示符下输入 vsim ,则会启动Modelsim。(前提是电脑里已正确安装Modelsim)
有人会问,干嘛启动个Modelsim都这么麻烦?
答:因为这样启动Modelsim后,Modelsim的工作目录会自动切换到D:\mydocuments\fpga_proj\test下。当然,如果你对Modelsim的工作环境了解的话,从桌面上启动Modelsim后,File – Change Directory ,也同样可以。
随后在Modelsim的命令行里输入 do sim.do ,回车。自动运行过程如下图:
如果编译没有错,会自动跳出仿真波形,结果应该如下图所示:
有的朋友会问,图上是按2进制显示的,有时候位数太多,看不清楚,要换16进制显示怎么做?
答案很简单,在sim.do文件结尾再加一行:
radix hex
如果加在代码最后,表示将波形图上显示的数据按16进制显示。与在波形图上右键选择信号,Radix-Hexadecimal是等价的。
同样,如果换成:
radix unsigned
表示将数据按无符号整数形式显示。
这里再说明一下,如果使用radix
您可能关注的文档
最近下载
- 湘少版2025年三年级春季学期英语阅读理解真题.pdf VIP
- 乘着歌声的翅膀降A调正谱伴奏.pdf VIP
- 游戏开发与游戏运营的策划技巧.docx VIP
- (正式版)H-Y-T 147.1-2013 海洋监测技术规程 第1部分:海水(正式版).docx VIP
- 中央八项规定精神相关解读.ppt VIP
- 通用学术英语1(张敬源)课后习题答案.docx VIP
- (统编2024版)语文八年级上册第三单元解读课件(新教材).pptx
- 河南安阳红色文化传承模式研究.pptx VIP
- 人教PEP版(2024)三年级上册英语全册教案(单元整体教学设计) .pdf
- 加快建设教育强国、科技强国、人才强国PPT课件 .pptx VIP
原创力文档


文档评论(0)