前言

se版本默认没有ip之类的库支持,如果你用到了pll之类的ip,仿真前就得把库编译好。

版本:Modelsim10.4se

流程

readme:实现有版本两个,任选。理论都是一样的,把v文件编译到Modelsim库中。第一个版本采用多个文件夹(库)的方式,第二个版本采用单个文件夹(把所有你需要的库编译到这个文件夹中),除非你分别挂载库,版本1比较合适,像我这种懒人,全部挂载库比较方便拉。

1.版本一:

本例用的是altera的verilog库(cycloneⅣE器件库)。

1.首先在modelsim安装目录下新建altera文件夹,编译的库将存放在此。把D:\workfile\Quartus\quartus\eda\sim_lib文件夹下你需要的库文件拿出来放入altera文件夹下:

在altera文件夹下新建文件夹(不需要貌似,当你在Modelsim中新建库的时候,会自动创建相关文件夹):

altera_mf_ver:编译altera_mf.v

altera_ver:编译altera_primitives.v

cycloneive_ver:编译cycloneive_atoms.v

lpm_ver:编译220model.v

sgate_ver:编译sgate.v

2.打开modelsimse编译库文件:

改变目录到altera目录:

新建库,依次新建好上述的库,名字按照上述的名字更改:

分别编译对应的v文件到对应的库中:

3.配置modelsim.ini文件:

去掉modelsim.ini文件的只读属性,编辑添加库文件位置

保存,恢复modelsim.ini的只读属性。

4.打开modelsimse看结果,或者你仿真个ip检验也是可以的。

版本二

第一个版本操作个人感觉操作繁复,索性把所有需要用到的库编译到一个文件夹中(库),以下主要编译cycloneⅣE的器件库。

原理大抵是一样的。只是新建库的时候,只新建一个,并把所有的器件库v文件编译到cyclone34文件夹中(名字瞎起的2333):

参照版本一:

1.改变目录到altera目录。

2.新建库:cyclone34。

3.编译所有的v文件到这个库中。

4.更改ini文件。

所以脚本中挂载库只需要挂载一个库即可:

以上。

Modelsimse10.4如何编译altera库文件以支持IP仿真的更多相关文章

  1. Modelsimse10.1如何编译altera库文件以支持IP仿真

    前言 se版本默认没有ip之类的库支持,如果你用到了pll之类的ip,仿真前就得把库编译好. 流程 本例用的是altera的verilog库. 1.首先在modelsim安装目录下新建altera文件 ...

  2. 提高编译速度! 第一次运行需要注释掉,不然会报错,因为需要编译SO库文件 !

    // 提高编译速度! 第一次运行需要注释掉,不然会报错,因为需要编译SO库文件 ! tasks.whenTaskAdded { task -> if (task.name.contains(&q ...

  3. Makefile 编译动态库文件及链接动态库

    本文为原创文章,转载请指明该文链接 文件目录结构如下 dynamiclibapp.c Makefile comm/inc/apue.h comm/errorhandle.c dynamiclib/Ma ...

  4. Makefile 编译静态库文件及链接静态库

    本文为原创文章,转载需指明该文链接 1.代码目录结构如下: comm/ comm/inc/apue.h  3 atexit.c Makefile  5 staticlib/lib/ staticlib ...

  5. [笔记]Modelsim系列01:编译Altera库的方法

    意义:一劳永逸,不用每次对那些包含Quartus II生成文件的工程进行功能仿真时,都需要重新编译一堆东西.节约时间成本. 版本:ModelSim SE 6.5d 打开Modelsim软件,默认会打开 ...

  6. FFmpeg编译找不到库文件

    在编译FFmpeg的时候,用./configure 进行配置,经常会出现找不到库文件的情况,原因大概就两个: 1.没有安装库文件或者安装的库文件版本不对 2.FFmpeg没有找到库文件 前者的问题好解 ...

  7. vs 编译库文件

    vs编译的库文件 静态库  debug和release版本 需要分开编译,我编译和实践的结果. 但是我也发现有的debug release都用同一个(搞不清楚). 然后添加到工程应用. 静态库  附件 ...

  8. ios编译库文件时出现的问题

    1. 警告:directory not found for option "xxxxxxxx" 文件路径未找到 选择工程, 编译的 (targets) 选择 Build Setti ...

  9. VS2017编译boost库

    1.http://www.boost.org/     下载boost库. 2.解压到 D:\ProgramFiles\boost 3.环境配变量配置     VS2017更加注重跨平台性,安装文件较 ...

随机推荐

  1. i++ 相比 ++i 哪个更高效?为什么?

    ++i的效率高些,++i在运算过程中不产生临时对象,返回的就是i,是个左值,类似++i=1这样的表达式是合法的,而i++在运算的过程中会产生临时对象,返回的是零时对象的值,是个右值,像i++=1这样的 ...

  2. java----牛客练习

    1. 形式参数就是函数定义时设定的参数.例如函数头 int min(int x,int y,int z) 中 x,y,z 就是形参.实际参数是调用函数时所使用的实际的参数.   真正被传递的是实参   ...

  3. H5 62-浮动元素字围现象

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. springboot在yml中配置控制台sql打印方法小结

    方法一: logging: level: debug level.io.renren: debug path: logs/ file: admin.log   方法二 logging:    leve ...

  5. 访问修饰符 public private protected default

  6. semantic-ui 标题

    在semantic-ui中定义了5中标题样式,注意HTML中有h1-h6,而semantic-ui中只有h1-h5. 不过需要注意的是,semantic-ui的标题仍旧使用h1-h5来表示,但是在cl ...

  7. http1.0 1.1 与2.0

    长连接 HTTP 1.0需要使用keep-alive参数来告知服务器端要建立一个长连接,而HTTP1.1默认支持长连接. HTTP是基于TCP/IP协议的,创建一个TCP连接是需要经过三次握手的,有一 ...

  8. laravel创建项目

    composer create-project --prefer-dist laravel/laravel=5.5.* blog

  9. python中的__init__和__new__的区别

    一.__init__ 方法是什么?(init前后的线是双下划线) 使用Python写过面向对象的代码的同学,可能对 __init__ 方法已经非常熟悉了,__init__ 方法通常用在初始化一个类实例 ...

  10. shiro使用ajax登陆实现,success但页面无法跳转的问题

    首先:简述一下登陆的后台流程 页面提交——>对应controller中的方法——>对应Realm认证——>controller返回 json 这样,无论成功与否,都有返回值,可以用 ...