这学期在玩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使用笔记(一个完成工程的仿真)的更多相关文章

  1. Modelsim10.2c使用教程(一个完整工程的仿真)

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

  2. django学习笔记【001】django版本的确定&创建一个django工程

    2.3 查看当前的django版本 python3. -m django --version 2.3.1 创建一个django工程 django-admin startproject mysite 在 ...

  3. 第一个FPGA工程—LED流水灯

    这一章我们来实现第一个FPGA工程-LED流水灯.我们将通过流水灯例程向大家介绍一次完整的FPGA开发流程,从新建工程,代码设计,综合实现,管脚约束,下载FPGA程序.掌握本章内容,大家就算正式的开始 ...

  4. ModelSim 使用笔记1

    ModelSim 使用笔记1   ModelSim提供了简单仿真方式,还有一种要建立project,目前这种方式暂时够我用了. 总结了以下,做了一个简单的<modelsim quick star ...

  5. 《MFC游戏开发》笔记二 建立工程、调整窗口

    本系列文章由七十一雾央编写,转载请注明出处.  http://blog.csdn.net/u011371356/article/details/9300383 作者:七十一雾央 新浪微博:http:/ ...

  6. 01构建第一个SpringBoot工程

    第一篇:构建第一个SpringBoot工程 文章指导 学习笔记 学习代码 创建项目 创建工程:Idea-> new Project ->Spring Initializr ->填写g ...

  7. 利用Zynq Soc创建一个嵌入式工程

    英文题目:Using the Zynq SoC Processing System,参考自ADI的ug1165文档. 利用Zynq Soc创建一个嵌入式工程,该工程总体上包括五个步骤: 步骤一.新建空 ...

  8. 【黑金原创教程】【Modelsim】【第五章】仿真就是人生

    声明:本文为黑金动力社区(http://www.heijin.org)原创教程,如需转载请注明出处,谢谢! 黑金动力社区2013年原创教程连载计划: http://www.cnblogs.com/al ...

  9. Proteus 8使用 1新建一个Proteus工程

    新建一个Proteus工程 下一步 创建部分结束,可以看到两部分-->原理图与源代码. 首先按下F7或从“构建”菜单中选择“构建工程” 之后切换到原理图窗口 按下F12或点击窗口最左下角的“运行 ...

随机推荐

  1. (19)IO流之字符流FileReader和FileWriter,缓冲字符流---缓冲输入字符流BufferedReader和缓冲输出字符流BufferedWriter

    字符流,读取的文件是字符的时候,有两个基类一个是Reader,一个是Writer这有点拟人的感觉,人直接看懂的是文字 字符流 字节流:读取的是文件中的二进制字节流并不会帮你转换成看的懂得字符 字符流: ...

  2. 多线程——i++的坑

    在使用socket编程的时候发生数据丢失问题,一直以为是网络原因,后来测试后发现是多线程操作同一数据源又未加入数据锁导致. 直接上代码,下面程序执行的结果可能出现198.199.200.两个线程统一时 ...

  3. CSS3 transition 浏览器兼容性

    1.兼容性 根据canius(http://caniuse.com/#search=transition),transition 兼容性如下图所示: <!DOCTYPE html> < ...

  4. 用C写一个web服务器(二) I/O多路复用之epoll

    .container { margin-right: auto; margin-left: auto; padding-left: 15px; padding-right: 15px } .conta ...

  5. calendar.js(日历组件封装)

    最近一直闲来无事,便寻思着做一下自己的个人项目,也想说能使用现在比较流行的一些mvvm框架来做,于是就选用了这样的一个技术栈vue2.0+vue-router+vuex+webpack来做,做得也是多 ...

  6. 在NAS设备上用NFS服务为RAC数据库和集群件存储oracle文件时的mount选项

    今天在家折腾自己的小实验室,把自己NAS上的一个目录用NFS挂载到一套11g RAC的实验环境中. 当我在备份数据库到NAS上时,发现一个奇怪的问题,同样的目录下,默认backup 备份集的情况,备份 ...

  7. 将node.js程序作为服务,并在windows下开机自动启动(使用forever)

    手上项目中有一块服务是用node.js实现的,运行环境是windows server 2008 R2,刚开始着手实现这块功能的时候时间很紧迫,随便写了个console程序就部署上去了--启动方式就是在 ...

  8. Web前端面试指导(十四):如何居中一个元素(正常、绝对定位、浮动元素)?

    题目点评 这道题目的提问比较多,连续问了三个问题,正常元素.绝对定位元素.互动元素如何居中,而且居中没有说清楚是垂直居中还是水平居中,要回答清楚这个问题,必须得有深厚的功底,而且要分类的来回答,条理要 ...

  9. [LeetCode] Zuma Game 题解

    题目 题目 Think about Zuma Game. You have a row of balls on the table, colored red(R), yellow(Y), blue(B ...

  10. String, StringBuilder, StringBuffer问题

    1. 区别 String为字符串常量,而StringBuilder和StringBuffer都是字符串变量,其中StringBuilder线程非安全,StringBuffer线程安全. 每次对 Str ...