您的位置 首页 国产IC

怎么仿真IP核

本文介绍如何仿真IP核

  IP核生成文件:(Xilinx/Altera 同)

  IP核生成器生成 ip 后有两个文件对咱们比较有用,假定生成了一个 asyn_fifo 的核,则asyn_fifo.veo 给出了例化该核办法(或许在 Edit->Language Template->COREGEN 中找到verilog/VHDL 的例化办法)。asyn_fifo.v 是该核的行为模型,首要调用了 xilinx 行为模型库的模块,仿真时该文件也要参加工程。(在 ISE中点中该核,在对应的 processes 窗口中运转“ View Verilog Functional Model ”即可检查该 .v 文件)。如下图所示。

  1. 在 ISE 集成环境中仿真 IP核

  IP 核应该在新建的工程中进行仿真与例化;在原工程中能够例化运用,但如同不能直接对它加 testbench 后进行仿真。如下两图所示。

图 1:直接在工程中对 ip核加 testbench 仿真时犯错

图 2:新建工程独自对 ip核仿真

  2.在 modelsim中仿真 ip 核

  a.在 modelsim中编译库(Xiliinx)

(1)在$Modeltech_6.0d/Xilinx_lib_tt下新建文件夹 Xilinx_lib($代表装置盘符)
(2)翻开 Modelsim->File->Change Diriectory,将途径指向方才新建的文件夹 Xilinx_lib,这样 Xilinx 编译的一切库都将会在该文件夹下。
(3)编译 Xilinx 库。在$Xilinx->verilog->src 下有三个库“simprims”,“unisims”和“xilinxcorelib”。在 modelsim 的 workpace 窗口 Library 特点中点右键->new->library(或在File 菜单下 new->libary),输入库名(自定义)如 Xilinx_lib_tt,这样在 workpace library 特点下就可看到 Xilinx_lib_tt 了。
(4)modelsim 中选中 compile,在弹出的对话框中,library 挑选方才新建的 xilinx_lib_tt,查找规模为 xilinx 库($Xilinx/verilog/src/),如 XilinxCoreLib,选中文件编译即可。

  b. 在 modelsim中加载已编译的库

  当要在 modelsim 中仿真带有 ip 核的规划时,需求加载对应公司的库才干仿真。仿真Xilinx 公司ip 核时需求在原工程文件中参加 ip 核的行为描绘文件(核名>.v)。

  假如工程文件直接包含在 xilinx“ XilinxCoreLib” library中,则可直接进行仿真。
假如工程文件开端默许包含在“work”library 中,则需求在 Simulation->Start Simulation->library 中增加已编译的库,如图示。这样就能够对 ip 核进行仿真了。

  aa.在 modelsim中编译 Altera 的库与 Xilinx办法相同

  bb.在 modelsim中对 ip 核进行仿真,与 xilinx 共同;首要需求在 modelsim工程中参加规划文件,testbench 文件以及核的行为描绘文件(核名>.v);其次,自 File 菜单中更改库途径指向已编译的 altera库途径(不然原先编译的 altera 库将变为不可用,unavailable),这时原先编译的库将变为可用,然后在 Simulation->Start Simulation->library中增加库途径(同Xilinx,图4,图附 3)。

图 3:编译xilinx 库

图 4:参加库进行核仿真

  运用 modelsim 进行仿真,相对在 ISE 或 Quartus 中直接调用 modelsim,至少有三个优点:

  1.速度快。仿真必然会不断的修正规划,每次修正规划后在 ISE 中需求从头归纳后才干调用 modelsim;而在 Quartus 中时间花费更多,它还要等布局布线完结了才干调用。这样每次等候是件很苦楚的事。而直接在 modelsim 里边仿真,修正后只需从头编译即可仿真,速度要快的多。不过这样有一个害处,那就是规划纷歧定是可归纳的。但只需咱们编程时时间遵从可归纳规划规矩,培育杰出的编程风格,这个缺陷影响可减到最低。

  2.调试便利。在 ISE/Quartus 中调用 modelsim仿真只能看到输入输出信 号,而关于规划的中心信号/变量,特别是IP核的内部信号/变量无法观测。而在modelsim中直接仿真能够观测规划中呈现的任何信号/变量无和 ip 核内的任何信号/变量,这样咱们规划的数据流向就能够很清楚的表明出来,还能够检测不同编程办法的处理作用,极大的便利了调试。

  3.修正参数便利。在 modelsim中仿真 ip 核时需求将该 ip 核的行为描绘文件参加到工程中去。修正该行为描绘文件中 ip 核的参数能够便利的更改 ip 核特性。

  附 A:在 ISE/Quartus中直接调用 modelsim。

  a.先装置 ISE,再装置 modelsim,则 modelsim会主动嵌入到 ISE 中去,如图附 1。ISE集成环境下:Edit->Preferences->Integrated Tools能够设置常用的第三方仿真,归纳东西。

图附 A1:ISE 中调用 modelsim

  b.直接在 ISE 中编译库

   除了能够用前面介绍的办法自己编译ISE的库外,还能够在ISE环境下主动编译库,编译完结之后将会主动嵌入到 modelsim的 libarary中去,十分便利。

   编译之前,首要把modelsim的特点文件 modelsim.ini$Modeltech_6.0d/modelsim.ini)的“只读”特点去掉,不然每次都要从头编译。然后在 ISE 环境下新建一个工程,选中芯片型号,在呈现的 process 窗口中能够看到“Desin Entry Utilities”,打开它能够看到“Compile HDL Simulation Libraries”,双击它即可主动编译 ISE 的库(要保证 Process特点窗口中“Target Simulator”正确设置为“Modelsim SE”,如图附 2);编译好的库放在$Xilinx/Verilog/mti_se/ 下(在 modelsim中仿真 ip 核需增加库时指向该途径即可,如图附 3)。

图附 2:ISE中编译库

图附 3:ISE中编译库后主动在 modelsim里加载

  aa.在 Quartus 中设置第三方东西

  在 Quartus 环境下:Assignment->EDA Tool Settings->….如图附 3 所示,在“EDA Tool Settings”下拉框中挑选“Simulation”窗口,设置“Tool name”(如 Modelsim(verilog)),并选中下面的“Run this tool automatically after compliation”。这样每次 Quartus 归纳完之后将会主动调用 modelsim仿真了。一起要注意,在“More Setting”中“command/macro file”应选为“None”,不然当你运用其他 testbench 时,调用将会犯错。

  bb.在 Quartus 中主动编译库: 没有发现有此办法,暂时只能由用户自己编译。

  附 B:Xilinx/Altera 库文件

  a. 与 Xilinx 相关的库有三个:

  (编译途径:$Xilinx/Verilog/src/(XilinxCoreLib, unisims,simprims),编译时可改名)
-L 表明仿真时需求的库文件。(下面的命名办法能够使 Modelsim对库进行精确映射)

Xilinxcorelib_ver对应 Xilinx 供给的软核的功用仿真库;
Unisims_ver 对应运用 ECS所做的原理图的功用仿真库;
Simprims_ver 对应项目布局布线今后的时序仿真库。

  b. 与 Altera 相关的库暂时只用到一个(Altera 的用的还不熟哦^_^):
(编译途径:$Quartus50/eda/sim_lib)命名办法能够恣意

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/bandaoti/ic/192561.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部