lattice 与 modelsim 仿真 笔记
对于 lattice Diamond 与 modelsim 的联合仿真,我总结了一句话,那就是—— 难者不会,会者不难。 也许刚开始 觉得 摸不着 头脑,但是 一旦学会 感觉还是很简单和直观的。
直接进入正题, 仿真第一步 : 建立仿真库。
在正确安装了Diamond 和 modelsim 之后,就是先要建立自己的 lattice 仿真的库文件:
1、打开 modelsim 的 安装目录,在其目录下 打开 modelsim.ini 的属性,去除其只读性。


2、在modelsim 安装目录下的合适位置建立新的文件夹,并命名(我的是以芯片的类型命名),作为库文件 的生成文件夹:

3、进入modelsim 软件 内,打开 file --> change directory ... 来改变路径,将路径改到新建的文件夹处,为了将库文件直接生成在此文件夹下:


4、生成新的库,方法如下:


点击ok 之后,生成成功就会出现在library 中,如下图:

5、接下来就是很重要的一步了: 编译库文件:
编译之前记住两个文件的路径 : ECP3 和 pmi。
如果使用verilog 语言,路径为:

如果使用VHDL 语言,路径为:

记住之后,在modelsim 中 点击compile --> compile ... 准备编译库文件。

先编译ECP3,Library: 选择ECP3库,查找范围就是上个路径的ECP3文件夹,然后全选里面的文件,在点击compile 等待文件库编译完成:

出现下面的界面则是编译完成:

然后改变查找范围到 pmi 文件夹,同意全编译里面的文件:

直到完成,出现下面的信息,然后点击上图中的done,退出,再点击保存下,关闭modelsim文件。

6、退出之后,打开modelsim.ini文件,找到里面增加的一行,如下图:

将其改为,你的库文件路径:

然后保存,再关闭该文件,并将其只读选项勾选。
7、打开modelsim ,可以看到库列表中自己建立的库可以使用了,那么就完成了第一步。

仿真第二步; diamond 软件的设置和仿真操作:
待续。。。
lattice 与 modelsim 仿真 笔记的更多相关文章
- Modelsim使用笔记(一个完成工程的仿真)
这学期在玩Altera的板子,不不, 现在应该叫intel PSG.在QuartusII13.0上老喜欢用modelsim_ae做仿真,小工程用起来也方便,但是我做IIC配置摄像头的时序仿真时,就显得 ...
- 基于脚本的modelsim自动化仿真笔记
这里记录一下基于脚本的modelsim自动化仿真的一些知识和模板,以后忘记了可以到这里查找.转载请标明出处:http://www.cnblogs.com/IClearner/ . 一.基本介绍 这里介 ...
- ModelSim 使用笔记1
ModelSim 使用笔记1 ModelSim提供了简单仿真方式,还有一种要建立project,目前这种方式暂时够我用了. 总结了以下,做了一个简单的<modelsim quick star ...
- 45.modelsim仿真include文件
modelsim仿真include文件会出现找不到文件的情况,这是因为include文件路径有两种,一种是相对路径,另一种是绝对路径. 相对路径: 如果 ‘include "primitiv ...
- 14.quartus联合modelsim仿真
在quartus调用modelsim仿真过程中,出现了一个错误,如下所示: Check the NativeLink log file I:/Quartus11.0/Myproject/testi_n ...
- 用Modelsim仿真QuartusII综合后网表时库的添加方法(转)
这两天做综合后仿真,发现FPGA器件库又不会加了,无奈上网找方法.说起来不好意思,很早就接触Modelsim这个仿真软件了,可是没有好好琢磨.把这两天找的方法贴出来,再加上自己的理解,以后忘了可以上博 ...
- modelsim 仿真时出现无限迭代(iteration reach limitation)的原因及其解决办法
modelsim 仿真时出现无限迭代(iteration reach limitation) 出现这种故障的原因: 一般都是代码里出现的组合逻辑无限循环或者组合逻辑A产生signal_A,signa ...
- modelsim仿真时让状态机波形显示状态的名字
在使用Verilog编写有限状态机等逻辑的时候,状态机的各个状态通常以参数表示(如IDLE等).当使用ModelSim仿真的时候,状态机变量在wave窗口中以二进制编码的形式显示,如下面所示,这种显示 ...
- 用ModelSim仿真SDRAM操作
之前写了两篇关于Modelsim仿真的blog,其中模块管脚的命名可能让人觉得有些奇怪,其实不然,之前的两篇内容都是为了仿真SDRAM操作做铺垫的. 由于SDRAM的仿真过程相对比较复杂,也比较繁琐. ...
随机推荐
- C#基础:飞行棋游戏
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
- 【mysql】mysql 常用建表语句
[1]建立员工档案表要求字段:员工员工编号,员工姓名,性别,工资,email,入职时间,部门.[2]合理选择数据类型及字段修饰符,要求有NOT NULL,auto_increment, primary ...
- Set集合
Set:无序(存储和取出数据不一致):唯一性(不可重复) Set是Collection的子类,所以Collection的方法Set都可以使用 HashSet:底层为哈希表,保证唯一性,依赖hashCo ...
- 阿里云推送SDK在某些机型(某米为主)下崩溃问题的解决方法
引言 最近APP上线,遇到一个比较诡异的问题.最后竟然和dex文件有关,也是醉了,看来还得深入底层学习啊. 问题描述 在集成阿里推送SDK时,需要在Application中进行初始化,大多数Andro ...
- Javascript的原型链图
90%的前端或者js程序员或者老师们对Javascript懂得不比这个多 给手机看的 但是这个图里的所有褐色单向箭头链就是Javascript的原型链(颜色标注对理解js原型链很关键) 这图中的各个_ ...
- 04 MapReduce原理介绍
大数据实战(上) # MapReduce原理介绍 大纲: * Mapreduce介绍 * MapReduce2运行原理 * shuffle及排序 定义 * Mapreduce 最早是由googl ...
- 执行mvn 报错 source-1.5 中不支持 diamond运算符
编译版本出现了问题 <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> < ...
- 第3月第16天 fd_set 32 ACE_TP_Reactor
1. #ifdef FD_SETSIZE #define __DARWIN_FD_SETSIZE FD_SETSIZE #else /* !FD_SETSIZE */ #define __DARWIN ...
- 在布局文件中使用Fragment的步骤
为了在Activity布局文件中使用Fragment我们需要四个步骤. 1.定义一个Activity,他继承android.support.v4.app.FragmentActivity,下面是关键代 ...
- git 常用命令总结
git是什么就不用说了,全世界都在用git.这里仅仅纪录git在mac上的一些使用命令(终端输入)操作,作为自己的备忘录,这里不做教程,下面会附上峰哥的教程. 1.安装git 最简单的安装方法,就是直 ...