原创 【博客大赛】Modelsim调用Altera仿真库方法总结

2013-2-22 13:02 1098 0 分类: FPGA/CPLD

Modelsim调用Altera仿真库方法总结

前言:

Modelsim仿真工具在数字设计仿真中发挥着重要的作用,但是当设计中用到某些公司的IP时,在仿真的时候就要添加相应的文件,否则不能进行仿真。一般会用到Xilinx或者Altera公司的IP,故而下面简单介绍调用Altera公司仿真库的方法总结(参考网上资料总结):

方法一:

在仿真的文件中加入altrea_mf.v的文件(verilog语言来说,现在基本上设计语言都是verilog),就可以直接仿真在Altera FPGA中定制IP核的工程。

方法二:

1.设置仿真库路径
    打开ModelSim安装目录新建文件夹altera(其他名字也行,自己记住就行了),我们就在该目录下存放预编译的各种Altera库。
    启动ModelSim SE,在主窗口执行【File/Change Directory】命令将路径转到altera文件夹。或在命令行中执行cd D:/ModelSim/Installfiles/altera

            20130222130025244001.png
2.新建库
    Quartus II中提供的仿真库文件存放的路径是...\altera\80\quartus\eda\sim_lib,每个库文件提供了两种形式:.v(Verilog)

格式和.vhd(VHDL)格式两种,根据你所用的语言选择使用。用于编译资源库的文件有220model.v220model.vhd220pack.vhdaltera_mf.valtera_mf.vhdaltera_mf_components.vhdaltera_primitives.valtera_primitives.vhdaltera_primitives_components.vhd文件。网上的很多教程都是把这些文件一起编译,这样适用于VerilogVHDL混合仿真,但如果只用一种语言,如Verilog则完全没必要全部编译。下面以该目录下的altera_mf.v为例介绍建立预编译库的方法。
    注:ModelSim中仿真库可以分为两大类:第一类是工作库(working),默认值为“work”目录,work目录中包含当前工程下所有被编译的设计单元,编译前必须建立一个work库,并且每个编译有且仅有一个work库;第二类是资源库(resource),存储能被当前编译引用的设计单元,在编译期间允许有多个resource库。
    在主窗口中选择【File/New/Library】命令,新建一个名为altera_mf的库。

          20130222130031817002.png               
3.编译库
    方便起见在altera文件夹下新建目录src,把用于编译资源库的文件复制到src文件夹中。
    在主菜单中选【Compile/Compile】命令,弹出Compile Source Files对话框,library中选择你刚才建立的库名altera_mf,查找范围你选择altera_mf.v文件,刚才你已经把它复制到了...\altera\src目录下。执行编译命令。

    20130222130037140003.png            
    继续按照步骤23中介绍的方法添加剩下的几个库。添加完成后如下图所示。

     20130222130043485004.png
4.配置modelsim.ini文件
    这一步是为了将前面建立的库添加进系统库,以后就不用再重复添加了。
    ModelSim安装根目录下的配置文件modelsim.ini的只读属性去掉,用记事本或其他文本编辑程序打开。在[Library]下修改前面

添加的库的路径。注意修改后关闭并改回只读属性。
    注:第1步设置的仿真库路径必须在ModelSim的安装目录下才能事业能够此相对路径。
 altera_primitives = $MODEL_TECH/../altera/altera_primitives
 220model = $MODEL_TECH/../altera/220model
 altera_mf = $MODEL_TECH/../altera/altera_mf

5.添加Altera底层硬件原语仿真库(ATOM)
    在时序仿真时,必须加载所使用到的对应于具体Altera器件的底层硬件原语的仿真库(ATOM)
    上面编译了Altera三个资源库文件:220model.v,altera_mf.v,altera_primitives.v,编译通过之后。根据我们选用的具体器件型号继续编译我们所需要的器件底层原语仿真库文件,比如我们选择使用的是cycloneii,所以编译cycloneii_atoms.v

    另外,在进行仿真的时候,还要注意将上述已经编译的相关库添加到当前的工程中,以便相关lpm之类的核的调用,操作如下:在Start Simulation窗口的libraries一栏下进行添加,如图:

    20130222130050396005.png

    然后再选择work目录中当前工程的顶层实体进行仿真即可。

    若是要进行时序仿真,则还应在SDF一栏进行.sdo延时文件的添加

 

 

广告

文章评论 0条评论)

登录后参与讨论
相关推荐阅读
sunyzz 2017-08-19 10:38
【博客大赛】AVALON总线介绍
1、AVALON总线简介Avalon总线是一种协议较为简单的片内总线,是ALTERA公司定义的片上互联总线,该总线可以将诸如NIOS II的CPU与其他外设连接起来,进而进行数据交换。AVALON总线...
sunyzz 2017-08-17 21:36
【博客大赛】不要轻易做职场滥好人
小A毕业于国内普通高校,但是他聪明,勤奋,能干,动手能力强,可是即便有这些优点也不能让小A轻轻松松找到一份好工作。这不,去年9月份小A好不容易找到一份工作,然后立马就入职了C公司,生怕C公司过两天不要...
sunyzz 2017-08-16 21:15
【博客大赛】IC设计低功耗技术四
五:工艺层面的降低功耗前面几节都是在讨论设计人员如何在前期阶段,中期阶段降低功耗,涉及到软件层面的,硬件层面的,这些技巧基本都是前辈总结出来的,或者根据理论推论出来的。但是到了后期,想降低功耗基本就要...
sunyzz 2017-08-14 22:35
【博客大赛】IC设计之低功耗技术三
四:RTL(寄存器传输)级的低功耗设计4.1 状态机的设计状态机编码中一般有两种方式,普通的二进制编码,特殊的格雷码,格雷码的特点是两个数据之间的跳变时只会有一个bit在toggle,显然比起多bit...
sunyzz 2017-08-12 16:51
【博客大赛】IC设计之低功耗技术二
三、架构层面的降低功耗系统的实现有很多的方式,每种方式对功耗的影响都不相同,本节主要介绍架构对功耗的影响。3.1 高级门口电路 在同步电路系统中,时钟占据了大部分的动态功耗,因而在一些情况下,如果有些...
sunyzz 2017-08-12 10:37
【博客大赛】IC 设计之低功耗技术一
一、前言随着计算机技术和微电子技术的迅速发展,嵌入式系统应用领域越来越广泛。节能是全球化的热潮,如计算机里的许多芯片过去用5V供电,现在用3.3V,1.8V,甚至更低的电压。目前的低功耗设计主要从芯片...
广告
我要评论
0
0
广告
关闭 热点推荐上一条 /1 下一条