之前玩过Altera的板子,不不, 现在应该叫intel PSG。在QuartusII13.0上老喜欢用modelsim_ae做仿真,小工程用起来也方便,但是我做IIC配置摄像头的时序仿真时,就显得有些吃力,所以还是用modelsim_se才是正点。

  以前老想用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(宁河川)

个人微信订阅号:NingHeChuan

如果你想及时收到个人撰写的博文推送,可以扫描左边二维码(或者长按识别二维码)关注个人微信订阅号

知乎ID:NingHeChuan

微博ID:NingHeChuan

原文地址:http://www.cnblogs.com/ninghechuan/p/6822261.html

Modelsim10.2c使用教程(一个完整工程的仿真)的更多相关文章

  1. Modelsim使用笔记(一个完成工程的仿真)

    这学期在玩Altera的板子,不不, 现在应该叫intel PSG.在QuartusII13.0上老喜欢用modelsim_ae做仿真,小工程用起来也方便,但是我做IIC配置摄像头的时序仿真时,就显得 ...

  2. ISE14.7使用教程(一个完整工程的建立)

    FPGA公司主要是两个Xilinx和Altera(现intel PSG),我们目前用的ISE是Xilinx的开发套件,现在ISE更新到14.7已经不更新了,换成了另一款开发套件Vivado,也是Xil ...

  3. centos 7 下modelsim10.2c安装教程

    step1: chmod +x ./install.linux(但是没有任何反应,原因是install.linux是32位程序,系统是64位的,所以要安装相应的库){ yum install glib ...

  4. QuartusII13.0使用教程详解(一个完整的工程建立)

    好久都没有发布自己的博客了,因为最近学校有比赛,从参加到现在都是一脸懵逼,幸亏有bingo大神的教程,让我慢慢走上了VIP之旅,bingo大神的无私奉献精神值得我们每一个业界人士学习,向bingo致敬 ...

  5. 《Genesis-3D开源游戏引擎完整实例教程-2D射击游戏篇:简介及目录》(附上完整工程文件)

    G-3D引擎2D射击类游戏制作教程 游戏类型: 打飞机游戏属于射击类游戏中的一种,可以划分为卷轴射击类游戏. 视觉表现类型为:2D 框架简介: Genesis-3D引擎不仅为开发者提供一个3D游戏制作 ...

  6. 《Genesis-3D开源游戏引擎--横版格斗游戏制作教程:简介及目录》(附上完整工程文件)

    介绍:讲述如何使用Genesis-3D来制作一个横版格斗游戏,涉及如何制作连招系统,如何使用包围盒实现碰撞检测,软键盘的制作,场景切换,技能读表,简单怪物AI等等,并为您提供这个框架的全套资源,源码以 ...

  7. Java分布式爬虫Nutch教程——导入Nutch工程,执行完整爬取

    Java分布式爬虫Nutch教程--导入Nutch工程,执行完整爬取 by briefcopy · Published 2016年4月25日 · Updated 2016年12月11日 在使用本教程之 ...

  8. Spring Boot2 系列教程 (二) | 第一个 SpringBoot 工程详解

    微信公众号:一个优秀的废人 如有问题或建议,请后台留言,我会尽力解决你的问题. 前言 哎呦喂,按照以往的惯例今天周六我的安排应该是待在家学学猫叫啥的.但是今年这种日子就可能一去不复返了,没法办法啊.前 ...

  9. 搭建一个完整的Android工程(一)Dagger2

    写在前面 现在越来越多的使用到了开源项目,但是仅限于使用,却不了解,更谈不上深入.也是因为越来越多的开源项目,平时工作中遇到问题也是第一时间寻找对应的开源项目,少了许多独立的思考.现在虽然能很轻松的完 ...

随机推荐

  1. linux Posix 信号量 二

    一.Posix信号量 1.Posix信号量分为两种: 1.   有名信号量:使用Posix IPC名字标识(有名信号量总是既可用于线程间的同步,又可以用于进程间的同步) 2.   内存信号量:存放在共 ...

  2. html5播放mp4视频代码

    1.nginx支持flv和mp4格式播放 默认yum安装nginx centos7安装nginx时候应该是默认安装nginx_mod_h264_streaming模块的 # nginx -V查看是否安 ...

  3. 01:zabbix监控redis

    一.zabbix 自动发现并监控redis多实例 1.1 编写脚本 1.1.1 redis_low_discovery.sh 用于发现redis多实例 [root@redis02 homed]# ca ...

  4. window.onload()和$(document).ready()区别

    执行时间:window.onload:必须等待网页中所有的内容加载完毕后(包括图片)才能执行;$(document).ready();网页中所有DOM结构绘制完毕后就执行,可能DOM元素关联的东西并没 ...

  5. Linux操作系统-基本命令(一)

    熟悉Linux命令基础 Linux系统的终端窗口 字符终端为用户提供了一个标准的命令行接口,在字符终端窗口中,会显示一个Shell提示符,通常为$. 用户可以在提示符后输入带有选项和参数的字符命令,并 ...

  6. Autofac log4net Integration Module

    log4net Integration Module While there is no specific assembly for log4net support, you can easily i ...

  7. 存在继承关系的Java类对象之间的类型转换(一)

      类似于基本数据类型之间的强制类型转换. 存在继承关系的父类对象和子类对象之间也可以 在一定条件之下相互转换. 这种转换需要遵守以下原则: 1.子类对象可以被视为是其父类的一个对象2.父类对象不能被 ...

  8. CentOS 6.7 编译PHP7 make时出现错误:undefined reference to `libiconv_close’

    编辑Makefile文件,找到变量EXTRA_LIBS,并在末尾添上-liconv EXTRA_LIBS = -lcrypt -lz -lexslt -lcrypt -lrt -lmcrypt -ll ...

  9. Electron 前端页面导入jQuery 出现错误Uncaught ReferenceError: jQuery is not defined

    如下: <script src="../assets/js/jquery-1.10.2.js"></script> 方法1 改为: <script&g ...

  10. Java内存分配及值、引用的传递

    关于堆栈的内容网上已经有很多资料了,这是我找的加上自己理解的一篇说明文: 一.内存区域类型 1.寄存器:最快的存储区, 由编译器根据需求进行分配,我们在程序中无法控制: 2. 栈:存放基本类型的变量数 ...