zoukankan      html  css  js  c++  java
  • 怎样用modelsim做后仿真

    摘要: 怎样用modelsim做后仿(编译工具采用quatus) step1:在qurtus改变编译选项:     assignments->EDA tool setting:选择verilog还是vhdl。 step2:编译。你会在你的工程所在目录 看到一个simulation的目录,这里面有你生成的网表文件和标准延时文件。step3:在目录:

    怎样用modelsim做后仿(编译工具采用quatus)

    step1:在qurtus改变编译选项:
         assignments->EDA tool setting:选择verilog还是vhdl。

     step2:编译。你会在你的工程所在目录 看到一个simulation的目录,这里面有你生成的网表文件和标准延时文件。

    step3:在目录:quartusedasim_lib找到你选用器件对应的库文件,将库文件和网表文件以及延时文件和testbench文件放在同一目录,在modelsim里进行编译库文件、网表文件以及bench文件。

    step4:编译成功后,然后进行load,在load design的时候,需要制定延时文件的路径,以及延时文件作用的区域,延时文件的左右区域就是testbench里面调用顶层文件取的名字。
     
    step5:打开signal窗口(view->signal)和wave窗口(view->signal),将你希望仿真的信号添加进去。

    Step:仿真。。。

    利用ModelSim SE6.0C实现时序仿真!!!

    1) 打开一个工程文件。

    2) 打开Settings设置栏,选择EDA Tools Settings下的Simulation栏。在右边出现的设置栏中将“Tool name”的下拉菜单选择“ModelSim(Verilog)”(如果工程用VHDL语言实现,则可以选择“ModelSim(VHDL)”;如果ModelSim使用的是for Altera的专用版本,则可以选择“ModelSim-Altera(Verilog)”或“ModelSim-Altera(VHDL)”)。

    另外在设置栏中还有其他的核选框。

    1. 如果选中“Maintain hierarchy”,则表示在做时序仿真时就能看到像在功能仿真的工程文件层次结构,可以找到定义的内部信号。因为在做后仿时,源文件中的信号名称已经没有了,被映射为软件综合后自己生成的信号名,观察起来很不方便。这个设置与ISE里综合右键属性的Keep Hierarchy选择YES的功能是一样的。
    2. 如果选中“Generate netlist for functional simulation only”,则表示只能做功能仿真。

    3) 点击  “Start Compilation”按钮编译工程,完成之后在当前的工程目录下可以看到一个名为“Simulation”的新文件夹,下面的“ModelSim”文件夹下包括仿真需要的.vo网表文件和包含延迟信息的.sdo文件。

    4) 打开ModelSim软件(或者在Quartus下“Settings->EDA Tools Setting->Simulation”出现的设置栏中选中“Run this tool automatically after compilation”,直接从Quartus下调用ModelSim软件),可以在当前工程目录下新建一个Project。在Project标签栏内点击右键,出现在快捷菜单中选择“Add to Project->Existing File…”。加入当前工程目录的“SimulationModelSim”路径下的.vo文件、TestBench文件和对应当前工程所选择器件的网表文件。

    比如:当前工程选择的器件是Cyclone系列,Quartus安装目录在“C:altera”路径下。因此需要在“C:alteraquartus50edasim_lib”路径下找到“cyclone_atom.v”的网表文件导入到ModelSim下的Project。如果是其他器件亦是如此,只要在此目录下找到对应有“_atom”后缀的.v文件。当然整个大前提是ModelSim SE版本已经加入了Alterta的仿真库,不过ModelSim-Altera版本就不会存在这样的问题。

    怎样用modelsim做后仿真  

    5) 在出现的Project标签栏的快捷菜单中选择“Add to Project->Simulation Configuration”,会出现如上图所示的名为“Simulation1”的仿真配置。右键点击选择“Properties”,弹出的“Simulation Properties”对话框中有几个标签栏。

    在“Design”标签栏内需要选择仿真的文件,也就是TestBench文件。
     怎样用modelsim做后仿真 
    在“SDF”标签栏内需要选择包含延迟信息的文件,即Quartus下生成的.sdo文件。这里建议将.sdo文件与ModelSim的工程文件(.mpf文件)放在同一个目录下,不然ModelSim会报类似无法读取.sdo文件的错误。当加入.sdo文件时,需要在如下图所示的“Apply to Region”的编辑框内填写延迟信息文件作用的区域。

    举个例子来说明:

    1. TestBench文件中定义了测试文件的Module名称为ConvEncdTestBnch。
    2. TestBench文件中调用待测顶层文件的实例名为top_encode_1。(top_encode top_encode_1(clk, rst, dataIn, serialData, parData);这是TestBench文件中调用顶层的语句)
    3. 所以在作用区域内需要填写“/ConvEncdTestBnch/top_encode_1”。

    怎样用modelsim做后仿真 
    6) 右键点击名为“Simulation1”的仿真配置,快捷菜单中选择“Execute”命令,执行仿真。
    7) 指定延时文件sdo 路径时,特别注意“域”的指定,否则用户会在timing 仿真中报load error “can’t find instance file”. 指定的域可以从sim标签页查看sim 的top 层,或要仿真的对象。另外,时序仿真时,一定要记住要把顶层top.v 用 top.vo 替换。同时要确保预编译的库中每个库的名字必需遵循altera的要求,比如:cylcone 的device 库必需命名为cycclone, maxii 的device命名为maxii, flex10Ke 和acex1K 都命名为flex10Ke,详细查看文档附件。Simulation.pdf
    8) 提供一个testbench 的模板。
    怎样用modelsim做后仿真 

    利用ModelSim SE6.0C实现功能仿真
    功能仿真流程比较简单,一般不会出现什么问题,这里不再多述。

    转载至:http://www.it610.com/article/1560137.htm
  • 相关阅读:
    百度之星资格赛1001——找规律——大搬家
    HDU1025——LIS——Constructing Roads In JGShining's Kingdom
    DP(递归打印路径) UVA 662 Fast Food
    递推DP UVA 607 Scheduling Lectures
    递推DP UVA 590 Always on the run
    递推DP UVA 473 Raucous Rockers
    博弈 HDOJ 4371 Alice and Bob
    DFS(深度) hihoCoder挑战赛14 B 赛车
    Codeforces Round #318 [RussianCodeCup Thanks-Round] (Div. 2)
    DP(DAG) UVA 437 The Tower of Babylon
  • 原文地址:https://www.cnblogs.com/chengqi521/p/6113524.html
Copyright © 2011-2022 走看看