Modelsim使用笔记(一个完成工程的仿真)
这学期在玩Altera的板子,不不, 现在应该叫intel PSG。在QuartusII13.0上老喜欢用modelsim_ae做仿真,小工程用起来也方便,但是我做IIC配置摄像头的时序仿真时,就显得有些吃力,所以还是用modelsim_se才是正点。参加了一个集成电路设计大赛,企业杯。是一家国产FPGA公司,他们的FPGA开发板已经做到了40nm的级别,虽然这和业界标杆还有很大差距,但是看到我们国家在进步,差距一定会逐渐缩小的,该公司的PDS编译工具,用起来也很容易上手,不过没有带仿真工具,所以只能使用modelsim仿真喽。
以前老想用QuartusII和modelsim单独仿真,找了很多方法都没有实现,但看了一个前辈的视频后,一下改变了我的想法,光使用modelsim也可以完成一个工程的建立,而且在建立工程的时候将代码,仿真,和ip都分类管理,会更加方便后面的工程设计。我把我的做的笔记整理出来,介绍使用modelsim单独仿真。(还是modelsim_se用起来快。。)
一、 使用modelsim完成一个工程的仿真
双击打开modelsim se-64 10.2c
弹出如图所示界面
点击new——project——弹出如图所示界面
点击browse,选择你要将仿真工程建立的位置,这里再顺便提一下,工程的建立,在使用QuartusII13.0建立工程时,软件不会像vivado将工程代码仿真自动分类,所以作为一名合格工程师,首先是工程建立有序、明朗,不能乱糟糟。所以在添加文件的时候要将文件分类如下图所示
在这个工程中,分为四个文件夹IP core文件夹,专门放置需要调用的IP核,Dev工程文件夹,新建工程目录时写在里面即可,sim仿真文件夹,将仿真文件新建在其中,最后是src代码文件夹,将代码单独放在一个文件夹里,需要时可以进行再次细分。
如图所示,选择将新建的modelsim仿真文件添加到对应工程的sim文件夹下,然后点击确定
输入工程名,点击OK,注意仿真工程名尽量与待测试工程名一致,虽然不一致也不会有什么影响。
然后添加需要测试的文件
先将sim文件夹中的文件添加进来,
重复上面步骤,再讲scr工程中的文件添加进来
然后点击close完成操作
点击如图所示操作可以将文件进行编译查错,
然后选择tb文件,右键点击simulate without optimization
会弹出wave、objects、library、project等窗口
在transcript上输出命令,.main clear 可以进行清屏操作
输入run 200us可以是工程跑200us
输入restart是重新开始
点击sim窗口,右键点击可以add wave,添加波形
点击如图所示按钮,可以将信号变简
Ctrl A全选+Ctrl G将信号智能排序
然后在transcript中输入,.main clear可以清屏
输入run xxxus可以按你的要求让波形跑多少us s ms。
最后点击wave就可以查看波形
二、 添加新的文件进行仿真
当更改文件后,要重新添加文件进来,右键点击add project——>exiting file,找到文件添加进来,点击OK,重新编译。
输入.main clear清除当前窗口的内容
输入run200us + run 50us可以看出,仿真完全正确的。
三、使用modelsim打开曾经的工程
File——open——找到需要仿真工程对的sim文件夹——打开.mpf文件即可。
转载请注明出处:NingHeChuan(宁河川)
原文地址:http://www.cnblogs.com/ninghechuan/p/6822261.html
Modelsim使用笔记(一个完成工程的仿真)的更多相关文章
- Modelsim10.2c使用教程(一个完整工程的仿真)
之前玩过Altera的板子,不不, 现在应该叫intel PSG.在QuartusII13.0上老喜欢用modelsim_ae做仿真,小工程用起来也方便,但是我做IIC配置摄像头的时序仿真时,就显得有 ...
- django学习笔记【001】django版本的确定&创建一个django工程
2.3 查看当前的django版本 python3. -m django --version 2.3.1 创建一个django工程 django-admin startproject mysite 在 ...
- 第一个FPGA工程—LED流水灯
这一章我们来实现第一个FPGA工程-LED流水灯.我们将通过流水灯例程向大家介绍一次完整的FPGA开发流程,从新建工程,代码设计,综合实现,管脚约束,下载FPGA程序.掌握本章内容,大家就算正式的开始 ...
- ModelSim 使用笔记1
ModelSim 使用笔记1 ModelSim提供了简单仿真方式,还有一种要建立project,目前这种方式暂时够我用了. 总结了以下,做了一个简单的<modelsim quick star ...
- 《MFC游戏开发》笔记二 建立工程、调整窗口
本系列文章由七十一雾央编写,转载请注明出处. http://blog.csdn.net/u011371356/article/details/9300383 作者:七十一雾央 新浪微博:http:/ ...
- 01构建第一个SpringBoot工程
第一篇:构建第一个SpringBoot工程 文章指导 学习笔记 学习代码 创建项目 创建工程:Idea-> new Project ->Spring Initializr ->填写g ...
- 利用Zynq Soc创建一个嵌入式工程
英文题目:Using the Zynq SoC Processing System,参考自ADI的ug1165文档. 利用Zynq Soc创建一个嵌入式工程,该工程总体上包括五个步骤: 步骤一.新建空 ...
- 【黑金原创教程】【Modelsim】【第五章】仿真就是人生
声明:本文为黑金动力社区(http://www.heijin.org)原创教程,如需转载请注明出处,谢谢! 黑金动力社区2013年原创教程连载计划: http://www.cnblogs.com/al ...
- Proteus 8使用 1新建一个Proteus工程
新建一个Proteus工程 下一步 创建部分结束,可以看到两部分-->原理图与源代码. 首先按下F7或从“构建”菜单中选择“构建工程” 之后切换到原理图窗口 按下F12或点击窗口最左下角的“运行 ...
随机推荐
- 移动端高清、多屏适配方案——rem
背景: 开发移动端H5页面 一套设计图 不同尺寸的手机 不同分辨率的手机 方案:使用rem作为单位解决一套设计图适应不同分辨率,不同尺寸的手机. 概念: REM(font size of the ro ...
- iOS开发之instancetype
instancetype和id使用方法类似,但他们还有不同点: (1)instancetype在类型表示上,跟id一样,可以表示任何对象类型 (2)instancetype只能用在返回值类型上,不能像 ...
- 多边形剪裁img
<!DOCTYPE html><html><head> <meta charset="utf-8"/> <title>& ...
- 用async 解放你的大脑
在js中,代码嵌套和代码回调非常常见,不仅编写麻烦而且异常反人类.让我等码农很是头痛 function () { function () { function () { ...
- 转:java实例化对象的过程
学习JAVA这门面向对象的语言,实质就是不断地创建类,并把类实例化为对象并调用方法.对于初学JAVA的人总搞清楚对象是如何实例化的,假如类之间存在继承关系,那就更糊涂了.下面我们通过两个例题来说明对象 ...
- Swift开发
1. 模糊效果 iconImageView.image = UIImage(named: "1.png") //效果类实例 let blurEffect = UIBlurEffec ...
- 【转】如何实现Flex页面跳转
其实对于这个题目是不恰当的,因为flex中是没有页面这个概念的,页面在flex里面其实就是一个个的Canvas,vbox,hbox等等之类的东西,看到的不同页面的切换,就是这些元素一层层的堆积,或者替 ...
- 从以往子类化跟踪MouseLeave深入讨论VB6的自定义Hook类
一.关于起因 之前发过一篇博文,是关于VB6中跟踪鼠标移出事件的示例(http://www.cnblogs.com/alexywt/p/5891827.html) 随着业务状况的不断发展,提出了更多的 ...
- VB中的GDI编程-2 画笔
p{ font-size: 15px; } .alexrootdiv>div{ background: #eeeeee; border: 1px solid #aaa; width: 99%; ...
- Android软键盘遮挡布局的那些事
有朋友提到软键盘遮挡布局的问题,说网上找了很多资料都未能解决,下面我来总结一下那些事,有些内容也是从网友那里学来的,但是我都会自己验证正确了才会贴出来. 首先来分析下我们常见的遮挡问题有哪些(本次所说 ...