文档库 最新最全的文档下载
当前位置:文档库 › 用ModelSimSE进行功能仿真和时序仿真的方法(ALTERA篇)

用ModelSimSE进行功能仿真和时序仿真的方法(ALTERA篇)

用ModelSimSE进行功能仿真和时序仿真的方法(ALTERA篇)
用ModelSimSE进行功能仿真和时序仿真的方法(ALTERA篇)

用ModelSimSE进行 功能仿真和时序仿真的方法 (ALTERA篇)

黄俊

April 2007

用ModelSim SE进行功能仿真和时序仿真的方法 (ALTERA篇)

软件准备

(1) QuartusII,本文截图是QuartusII 6.1界面的。我个人认为,如果是开发StratixII或CycloneII或MAXII,用QuartusII6.0+SP1+SP2比较稳定。

(2) ModelSim SE. ALTERA仿真库要已经装好,安装仿真库的笔记已记录于《在ModelSimSE中添加ALTERA仿真库的详细步骤》中。我电脑上装的是ModelSim SE

6.1b。

例子程序的制作

先在Quartus II里生成一个例子程序,以方便介绍三种仿真的方法。步骤如下:

1、新建一个工程(Project),工程名取lpm_shift, 器件选CycloneII EP2C5Q208C, 第三方

的工具暂时都不选。

2、菜单栏上Tools?MegaWizard Plug-In Manager, 点Next,在storage中选

LPM_SHIFTREG,输出文件格式根据习惯选一种语言,在这里以Verilog的为例,在右边的output file名字中加上lpm_shift。点Next。

3、这个例子是做一个移位寄存器,调用lpm库,和cycloneII元件库,也正好可以作为对

前面建好的ALTERA库的一个验证。点可以查到该模块的使用说明和详细介绍。移位寄存器比较简单,就不用细看了。如下图设置.点Next.

4、加上一个异步清零端,点Next,再点Next,最后点Finish.

Add/Remove Files in Project…,

6、点图标,选中生成的lpm_shift,点打开再点Add都加到项目中去。

7、在这里直接把lpm_shift.v当成顶层文件,就不需要再例化它了。

8、下面写一个简单的TestBench.

a)Quartus II工具栏上点图标,选Verilog HDL;

b)点,设文件名为top_tb;

c)如下所述写一个简单的TestBench.(例子见附件)

开始仿真

z ModelSim仿真有很多种流程,下面我采用个人感觉比较好一个流程进行仿真验证:基于工程(Project)的流程

Step1 新建一个工程

Step2 添加文件到工程中去

Step3 编译设计文件

Step4 启动仿真器,指定顶层设计单元

Step5 查看和调试结果

z对ALTERA的设计有三个阶段的仿真。一是纯粹的功能仿真;二是综合后的功能仿真;三是布局布线后的时序仿真。

z下面就分别进行介绍。

纯粹的功能仿真

1、新建一个工程

a)打开ModelSim SE;

b)新建工程,File?New?Project…:

c)输入工程名,指定工程保存路径。为了可以分别清楚地对三种仿真进行验证,我

建立了三个文件夹,func、Psyth、 PAR分别来当功能仿真,综合后功能仿真以及布局布线后时序仿真的工程保存文件夹。在这些文件夹内,我又建立了source文件夹,专门用来存放输入文件。将前面建立的lpm_shift.v(HDL源文件)和top_tb.v (Testbench文件)拷贝至func/source里面。将top_tb.v拷贝至Psyth、PAR里的source 文件夹内。在这里先点Browse…,将工程的保存路径指定到func文件夹内。

d)点Add Existing File,添加输入文件。

e)在Project的空白处,点右键也可以再添加存在的文件的方式添加输入文件。

2、添加文件到工程中去

进行功能仿真需要的输入文件:

z HDL文件;

z TestBench文件;

z仿真原型文件(在这时就添加进来)或预编译的库文件(仿真时指定);

点Add Existing File添加lpm_shift.v(HDL源文件),top_tb.v (Testbench文件);再到QuartusII安装目录下..\altera\61\quartus\eda\sim_lib里面找到仿真原型文件220model.v;用Reference from current location是链接的方式指定这些输入文件,copy

to project directory是把输入文件复制到当前工程目录下。建议还是用Reference form current location。

3、编译设计文件;

选中一个文件,点右键,选择Compile?Compile All;

4、启动仿真器,指定顶层设计单元;

a)进Simulate?Start Simulation…

b)展开Work库,指定Testbench,点OK开始仿真;

直接在仿真的时候指定就行了。

a)将Wave窗口打开,查看仿真波形:

b)将需要查看的信号拖入波形窗口,可以用Ctrl或Shift键多选。

c)运行。在下面的命令行中输入运行的时间,回车。

d)查看结果:点图标,最大化波形窗口。

e)功能仿真的特点。点图标,在波形窗口下,按住左键不放,向右下斜拉可以选

择一个放大的区域:

f)放大后可以看到,完全是没有延时的。这就是纯粹的功能仿真。

6、ModelSim的其它使用技巧不在本文讨论范围之内,在这里就不介绍了。在这里只是列

出几个常用按钮的作用。

a),,,,,,,,这几个都是非常常见的

图标了,分别是新建新的源文件,打开文件对话框,保存,打印,剪切,

复制,贴粘,撤消最后一步操作,在当前窗口查找文本。在这里和下文提

到的当前窗口,均可靠点击某窗口的任何位置选择。当前窗口听标题栏会

以亮的蓝色显示。

b),编译,打开文件对话框,选择HDL源文件,把该源文件编译到当前

工程的工作库中。

c),全编译。编译当前工程中的所有文件。

d),仿真。

e),停止仿真。

f),回到上一层。

g),重新仿真。装载设计,并将仿真复位到零,重新仿真。

h),设定单步仿真步长。

i),运行当前仿真。在该仿真时间长度内进行仿真。

j),继续仿真,直到仿真结束,或用户停止仿真。

k),运行所有仿真,直到仿真结束或用户停止仿真。

l),添加一条坐标轴。

m),删除一条坐标轴。

综合后功能仿真

1、新建一个工程

方法前面讲过了,这次将路径保存到…/modelsim/Psyth里。

2、添加文件到工程中去

进行综合后功能仿真需要的输入文件:

z在QuartusII里面生成的网表文件;

z TestBench文件;

z仿真原型文件(在这时就添加进来)或预编译的库文件(仿真时指定)。

在QuartusII里面生成网表文件的方法:

a)点工具栏上的图标,选EDA Tool Setting, 双击Simulation。

b)设置ModelSim, 输出网表的格式,以及网表文件保存的路径。

c)点,将Generate netlist for functional simulation only设置为ON。

d)点OK,保存。点工具栏上的图标,进行全编译。

e)检查一下…/modelsim/Psyth/source里面,可以发现,已经生成了一个*.vo文件。

这个就是需要的网表文件。(VHDL的输出网表是*.vho后缀名的)

f)在这里,TestBench文件就继续用前面功能仿真里用的top_tb.v文件;

g)我们试一下直接指定预编译的库。

3、编译设计文件

(略)

4、启动仿真器,指定顶层设计单元

方法就不重复了。指定时参考以下截图。

这次选库的时候选元件库。

5、查看和调试结果

可以看到,load在装载时,输出q延时一个时钟周期才输出,但它和输入时钟的边沿还是完全同步的。

布局布线后时序仿真

步骤和综合后功能仿真大同小异,有以下几点要注意:

(1)进行布线后时序仿真需要的输入文件:

z布局布线后网表;

z延时文件*.sdo(Verilog)或*_vhd.sdo(VHDL);

z TestBench文件;

z仿真原型文件(在这时就添加进来)或预编译的库文件(仿真时指定);

QuartusII里面设置重新把Generate netlist for functional simulation only设

置成OFF。

全编译后,除了生成布局布线后网表文件以外,还会生成延时文件。

(2) 依然要指定库文件的位置;

(3) 指定延时文件时,在下图位置指定延时文件。

(4) 需要注意两点:

a)对Verilog设计的仿真,延时文件需要复制到ModelSim里面建的

Project的根目录下。这一点,我也搞不明白,试了很久才发现的,

可能是我没有设置好的问题,也可能是这个版本本身的Bug。对

VHDL设计,就不需要复制到ModelSim里面建的Project的根目录

下。

b)指定Apply to Region里面,还要写TestBench里面例化顶层文件的例

化名。

(5) 查看仿真波形,q的输出就显示了延时。

(完)

DDR3_quartus14.1仿真教程

Altera_DDR3仿真教程 Still.liu/2015-0925于深圳 1,根据自己的实际的工程配置创建好工程并根据需要配置好IP核,生产example design,例如: 其余保持默认。 2,查看生成的example design。

3,按照操作说明进行操作 The simulation example design is available for both Verilog and VHDL. To generate the Verilog example design, open the Quartus project "generate_sim_example_design.qpf" and select Tools ->Tcl Scripts... ->generate_sim_verilog_example_design.tcl and click "Run". Alternatively, you can run "quartus_sh -t generate_sim_verilog_example_design.tcl" at a Windows or Linux command prompt. The generated files will be found in the subdirectory "verilog". To generate the VHDL example design, open the Quartus project "generate_sim_example_design.qpf" and select Tools ->Tcl Scripts... ->generate_sim_vhdl_example_design.tcl and click "Run". Alternatively, you can run "quartus_sh -t generate_sim_vhdl_example_design.tcl" at a Windows or Linux command prompt. The generated files will be found in the subdirectory "vhdl". To simulate the example design using Modelsim AE/SE: 1) Move into the directory ./verilog/mentor or ./vhdl/mentor 2) Start Modelsim and run the "run.do" script: in Modelsim, enter "do run.do". 4,仿真开始 用quartus14.1按第3步操作后,会得到

ModelSim-Altera_6.5仿真入门教程

平台 软件:ModelSim-Altera 6.5e (Quartus II 10.0) Starter Edition 内容 1 设计流程 使用ModelSim仿真的基本流程为: 图1.1 使用ModelSim仿真的基本流程 2 开始 2.1 新建工程 打开ModelSim后,其画面如图2.1所示。

图2.1 ModelSim画面 1. 选择File>New>Preject创建一个新工程。打开的Create Project对话框窗口,可以指定工程的名称、路径和缺省库名称。一般情况下,设定Default Library Name为work。指定的名称用于创建一个位于工程文件夹内的工作库子文件夹。该对话框如图 2.2所示,此外还允许通过选择.ini文件来映射库设置,或者将其直接拷贝至工程中。

图2.2 创建工程的对话框 2. 按照图2.3所示,设置Project Name为LED_FLOW,Project Location为D:/led_flow。 图2.3 输入工程信息 当单击OK按钮后,在主体窗口的下方将出现Project标签,如图2.4所示。 图2.4 Project标签

3. 之后,将出现Add Items to the Project的对话框,如图2.5所示。 图2.5 在工程中,添加新项目 2.2 在工程中,添加新项目 在Add Items to the Project对话框中,包括以下选项: ?Create New File——使用源文件编辑器创建一个新的Verilog、VHDL、TCL或文本文件?Add Existing File——添加一个已存在的文件 ?Create Simulation——创建指定源文件和仿真选项的仿真配置 ?Create New Folder——创建一个新的组织文件夹 1. 单击Create New File。打开图 2.6所示窗口。 图2.6 创建工程文件夹 2. 输入文件名称:LED_FLOW,然后选择文件类型为Verilog。

Vericut 基础教程-构建机床、程序原点、刀具设置、宏程序仿真 by ljg

Vericut 基础培训一构建三轴机床、仿真宏程序 Vericut 基础培训1 ——构建三轴机床,仿真宏程序 作者:LJG 使用Vericut仿真,必须包含毛坯、数控程序、刀具三个部分,但为了仿真的准确性和真实性,我们还需要机床、夹具用于仿真碰撞,设计模型用于比对仿真结果的正确性等。 这一章我们从基本的三轴机床构建讲起。 在Vericut里有两种方法构建机床,一种是通过Vericut自带的简单建模工具建立机床模型,另外一种是使用其它CAD软件先建立好机床模型,再将机床模型文件导出为Vericut可以接受的文件格式,再导入Vericut。用Vericut自带的建模工具建立机床模型比较麻烦,这里我们用第二中方法,利用NX将建好的机床模型文件导出为.STL 格式文件,并导入Vericut用以构建三轴机床。 一、从NX输出机床模型 从论坛https://www.wendangku.net/doc/2614886296.html,上下载机床模型文件,用NX6打开,如下图1所示。 图 1 一般像机床外壳,控制系统操作面板等实际仿真过程中不需要的部件可以不导出,不过在Vericut里导入不参与仿真的部件可以增加机床的真实感。这里我们不导出机床外壳,控制系统操作面板这两个部件,将这两个部件隐藏如图2所示。

图 2 将不用的部件隐藏后,我们可以看见如图3所示的主轴端面的坐标系。 图 3 在机床建模的时候,我们一般会按照机床的机械零点位置来建立各个机床运动部件的模型,而机床的Z轴的机械原点一般在主轴端面,如图3所示。但从这个机床模型可以看出X、Y轴的位置并不在机械原点,所以我们导出后还要在Vericut里进行调整。 下面先输入机床床身,即在仿真过程中不运动的部件。选择主菜单File > Export >STL…,弹出Rapid Prototyping对话框,这里可以设置输出模型的公差,公差的大小会影响STL文件的大小,不改变参数,单击OK,在弹出的对话框中输入要保存的文件名,输入Based_Y,双击鼠标中键(单击两次OK),选择绿色的底座和导轨,如图4所示的高亮显示部件,选择完成后所有弹出的窗口,都选择OK。 图4

实验一proteus仿真软件使用方法

实验一 Proteus仿真软件使用方法 一.实验目的: (1)了解Proteus仿真软件的使用方法。 (2)了解51单片机编程器Keil与Proteus仿真软件的联用方法。 二.实验要求: 通过讲授和操作练习,学会正确使用Proteus仿真软件及Keil编程及其联合调试。 三.实验内容: (1)Proteus 仿真软件介绍 Proteus 软件是由英国LabCenter Electronics 公司开发的EDA工具软件,由ISIS 和ARES两个软件构成,其中ISIS是一款便捷的电子系统仿真平台软件,ARES是一款高级的布线编辑软件。它集成了高级原理布线图、混合模式SPICE电路仿真、PCB设计以及自动布线来实现一个完整的电子设计。 通过Proteus ISIS软件的VSM(虚拟仿真技术), 用户可以对模拟电路、数字电路、模数混合电路,以及基于微控制器的系统连同所有外围接口电子元器件一起仿真。 图1是Proteus ISIS的编辑窗口: 图1 ISIS的编辑界面 图中最顶端一栏是“标题栏”,其下的“File View Edit ……”是“菜单栏”,再下面的一栏是“命令工具栏”,最左边的一栏是“模式选择工具栏”;左上角的小方框是“预览窗口”,其下的长方框是“对象选择窗口”,其右侧的大方框是“原理图编辑窗口”。 选择左侧“模式选择工具栏”中的图标,并选择“对象选择窗口”中的P按钮,就会出现如图2的元器件选择界面:

图2 元器件库选择界面 在元器件列表框中点击你需要的器件类型(例如:电阻-Resistors,单片机芯片-MicroprocessorICs, LED-Optoelectronics)或在左上角的关键字(Keywords)框中输入你需要的器件名称的关键字(如:信号源 - Clock, 运放 - CA3140等),就会在图2中间的大空白框列出你所需的一系列相关的元件。此时,你可用鼠标选中你要的元件,则图2右上角的预览框会显示你所要元件的示意图,若就是你要的元器件,则点击OK按钮,该元器件的名称就会列入位于图1左侧的“对象选择窗口”中(参见图1左侧下方框)。 所需元器件选择好后,在“对象选择窗口”选择某器件,就可以将它放到图1中的“原理图编辑窗口”中(若器件的方向不合适,你可以利用图1左下角的旋转按钮来改变它)。将所要的元器件都选好后,将它们安放到合适的位置,就可以用连接线把电路连接好,结果存盘(请按规定的目录存盘,并记住其路径/目录/文件名[学号-实验序号])。 (2)51单片机编程器– Keil V3的使用 Keil编程器可用于MCS-51单片机软件编程与调试,它的工作界面如图3所示: Keil编程器是Keil Software Inc/Keil Electronic GmbH 开发的基于80C51内核的微处理器软件开发平台,可以完成从工程(Project)的建立和管理、程序的编译和连接、目标代码的形成、软件仿真等一套完整的软件开发流程。它与Proteus挂接,可以进行单片机应用系统的硬件仿真。 汇编语言编程方法: ①打开“File”菜单→选择新建“New...”→在弹出的文本框(Text1)中编写所需的汇编语言程序→程序写好后,保存(从File→Save As..→选择某目录,文件名.ASM, 存盘); ②打开“Project”菜单→选择新建工程“New Project...”→在弹出的窗口填写:工程名→保存(文件名的后缀是 .uv2 。此时图3的工程窗口中将建立Target1

时序计算和Cadence 仿真结果的运用

时序计算和Cadence仿真结果的运用 中兴通讯康讯研究所EDA设计部余昌盛刘忠亮 摘要:本文通过对源同步时序公式的推导,结合对SPECCTRAQuest时序仿真方法的分析,推导出了使用SPECCTRAQuest进行时序仿真时的计算公式,并对公式的使用进行了说明。 关键词:时序仿真源同步时序电路时序公式 一.前言 通常我们在时序仿真中,首先通过时序计算公式得到数据信号与时钟信号的理论关系,在Cadence仿真中,我们也获得了一系列的仿真结果,怎样把仿真结果正确的运用到公式中,仿真结果的具体含义是什么,是我们正确使用Cadence仿真工具的关键。下面对时序计算公式和仿真结果进行详细分析。 二.时序关系的计算 电路设计中的时序计算,就是根据信号驱动器件的输出信号与时钟的关系(Tco——时钟到数据输出有效时间)和信号与时钟在PCB上的传输时间(Tflytime)同时考虑信号驱动的负载效应、时钟的抖动(Tjitter)、共同时钟的相位偏移(Tskew)等,从而在接收端满足接收器件的建立时间(Tsetup)和保持时间(Thold)要求。通过这些参数,我们可以推导出满足建立时间和保持时间的计算公式。 时序电路根据时钟的同步方式的不同,通常分为源同步时序电路(Source-synchronous timing)和共同时钟同步电路(common-clock timing)。这两者在时序分析方法上是类似的,下面以源同步电路来说明。 源同步时序电路也就是同步时钟由发送数据或接收数据的芯片提供。图1中,时钟信号是由CPU驱动到SDRAM方向的单向时钟,数据线Data是双向的。 图1

图2是信号由CPU 向SDRAM 驱动时的时序图,也就是数据与时钟的传输方向相同时 的情况。 Tsetup ’ Thold ’ CPU CLK OUT SDRAM CLK IN CPU Signals OUT SDRAM Signals IN Tco_min Tco_max T ft_clk T ft_data T cycle SDRAM ’S inputs Setup time SDRAM ’S inputs Hold time 图2 图中参数解释如下: ■ Tft_clk :时钟信号在PCB 板上的传输时间; ■ Tft_data :数据信号在PCB 板上的传输时间; ■ Tcycle :时钟周期 ■ Tsetup’:数据到达接收缓冲器端口时实际的建立时间; ■ Thold’:数据到达接收缓冲器端口时实际的保持时间; ■ Tco_max/Tco_min :时钟到数据的输出有效时间。 由图2的时序图,我们可以推导出,为了满足接收芯片的Tsetup 和Thold 时序要求,即 Tsetup’>Tsetup 和Thold’>Thold ,所以Tft_clk 和Tft_data 应满足如下等式: Tft_data_min > Thold – Tco_min + Tft_clk (公式1) Tft_data_max < Tcycle - Tsetup – Tco_max + Tft_clk (公式2) 当信号与时钟传输方向相反时,也就是图1中数据由SDRAM 向CPU 芯片驱动时,可 以推导出类似的公式: Tft_data_min > Thold – Tco_min - Tft_clk (公式3) Tft_data_max < Tcycle - Tsetup – Tco_max - Tft_clk (公式4) 如果我们把时钟的传输延时Tft_clk 看成是一个带符号的数,当时钟的驱动方向与数据 驱动方向相同时,定义Tft_clk 为正数,当时钟驱动方向与数据驱动方向相反时,定义Tft_clk 为负数,则公式3和公式4可以统一到公式1和公式2中。 三.Cadence 的时序仿真 在上面推导出了时序的计算公式, 在公式中用到了器件手册中的Tco 参数,器件手册中Tco 参数的获得,实际上是在某一种测试条件下的测量值,而在实际使用上,驱动器的实际 负载并不是手册上给出的负载条件,因此,我们有必要使用一种工具仿真在实际负载条件下 的信号延时。Cadence 提供了这种工具,它通过仿真提供了实际负载条件下和测试负载条件 下的延时相对值。 我们先来回顾一下CADENCE 的仿真报告形式。仿真报告中涉及到三个参数:FTSmode 、

配电系统物理仿真平台--北京丹华昊博电力科技有限公司

配电系统物理仿真平台 一、概述 由于电力系统暂态及稳态的复杂性,在进行理论研究的同时也必须进行试验研究,二者缺一不可。电力系统的试验可以在原型上进行,也可以在模型上进行,电力系统的物理模拟试验是电力系统研究的重要方法。目前配网自动化全面建设,无论是理论还是实际运行,都存在许多问题,各种配网自动化设备都需要试验、检测,配电系统物理仿真平台就是解决这些问题的重要方法。 北京丹华昊博电力科技有限公司结合杨以涵教授30年小电流接地选线研究心得,率先与华北电力大学合作,建成国家重点试验室——“1:1 10kV高压物理模拟试验室”,又与中国电力科学研究院合作,建成配电系统物理仿真平台——动模测试系统(原型测试系统PRS)。目前两套系统在配电系统物理仿真平台建设和配电网接地故障模拟试验领域,均处于领先水平。 二、配电系统物理仿真平台 配电系统物理仿真平台能够真实再现电力系统的各种运行工况、能够真实模拟电力系统设备和线路的运行情况,为电力用户提供全方位的培训、仿真、研发平台,为配网自动化设备的检测提供了全新的解决方案。 配电系统物理仿真平台具备的功能主要包括:配电系统参数模拟、配电系统运行数据模拟、配电系统故障模拟、配网自动化设备测试、状态监视、数据采集、图形显示、事件告警、数据统计、录波分析等。 目前,仿真平台主要有3类,分别为380V配电系统物理仿真平台、10kV配电系统物理仿真平台和RTDS数字仿真平台,三种平台的对比如表 1所示。 表 1仿真平台对比表

三、380V配电系统物理仿真平台 1.系统规模 1)实验室要求:长10m,宽4m,面积40m2; 2)实验室分配:独立使用; 3)模拟35kV/10kV变电站1座、主变1台、10kV线路6条,系统如图 1所示; 4)户内柜体式,配置6面柜体,配置后台监控系统,按变电站规范设计,所有操作分远 方和就地,设备布置如图 2所示。 图 1380V配电系统物理仿真平台系统图 2.系统参数 1)系统供电电源:三相、380V、100A、50Hz; 2)系统电压:380V; 3)系统满负荷工作电流:10A; 4)线路短路电流(多匝线圈):800、1600A;

如何仿真IP核(建立modelsim仿真库完整解析)

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)。

单片机系统设计与仿真软件

(此文档为word格式,下载后您可任意编辑修改!) PROTEUS —单片机系统设计与仿真软件 一、Proteus 6.7 Professional 界面简介 安装完Proteus后,运行ISIS 6.7 Professional,会出现以下窗口界面: 为了方便介绍,分别对窗口内各部分进行中文说明(见上图)。下面简单 介绍各部分的功能: 1.原理图编辑窗口(The Editing Window ):顾名思义,它是用来绘制原理图的。蓝色方框内为可编辑区,元件要放到它里面。注意,这个窗口是没有滚动条的,你可用预览窗口来改变原理图的可视范围。 2.预览窗口(The Overview Window ):它可显示两个内容,一个是:当你 在元件列表中选择一个元件时,它会显示该元件的预览图;另一个是,当你的鼠标焦点落在原理图编辑窗口时(即放置元件到原理图编辑窗口后或在原理图编辑窗口

中点击鼠标后),它会显示整张原理图的缩略图,并会显示一个绿色的方框,绿色 的方框里面的内容就是当前原理图窗口中显示的内容,因此,你可用鼠标在它上面点击来改变绿色的方框的位置,从而改变原理图的可视范围。 3.模型选择工具栏( Mode Selector Toolbar ):主要模型( Main Modes ): 1*选择元件(components)(默认选择的) 2* 放置连接点 3* 放置标签(用总线时会用到) 4* 放置文本 5* 用于绘制总线 6* 用于放置子电路 7* 用于即时编辑元件参数 (先单击该图标再单击要修改的元件) 配件( Gadgets): 1*终端接口( terminals):有VCC、地、输出、输入等接口 2* 器件引脚:用于绘制各种引脚 3* 仿真图表( gra ph ) :用于各种分析,如Noise Analysis 4* 录音机 5* 信号发生器( generators) 6* 电压探针:使用仿真图表时要用到 7* 电流探针:使用仿真图表时要用到 8* 虚拟仪表:有示波器等 2D 图形( 2D Graphics): 1* 画各种直线 2* 画各种方框 3* 画各种圆 4* 画各种圆弧 5* 画各种多边形 6* 画各种文本 7* 画符号 8* 画原点等 4.元件列表( The Object Selector ):用于挑选元件( components)、终端接口 ( terminals)、信号发生器 (generators)、仿真图表(graph)等。举例,当你选择"元件 (components)”,单击"P”按钮会打开挑选元件对话框,选择了一个元件后(单击了“ OK ”后),该元件会在元件列表中显示,以后要用到该元件时,只需在元件列表中选择即可。 5.方向工具栏( Orientation Toolbar ):旋转:旋转角度只能是90 的整数倍。 翻转:完成水平翻转和垂直翻转。使用方法:先右键单击元件,再点击(左击)相应的旋

多物理场仿真软件技术参数

多物理场仿真软件技术参数 一、技术规格要求(*必须满足) 1. 软件的功能需求 1.1 使用有限元算法。 1.2 具有多物理场(三个及以上)一次性同时求解的直接耦合功能。 1.3 图形化用户界面,预置前处理、求解器,以及后处理功能。 1.4 具有App 开发器。 1.5 具有热传递仿真功能。 1.6 具有结构力学仿真功能。 1.7 具有CFD 仿真功能。 1.8 具有与Excel 的双向调用功能。 1.9 具有几何建模功能。 1.10 具有半导体仿真功能。 1.11 具有波动光学仿真功能。 1.12 具有材料库功能。 1.13 具有案例模型。 2. 基本功能 2.1 所有数值计算均基于有限元方法。 2.2 任意指定多物理场耦合,并且可以一次性同时求解的直接耦合功能。 2.3 提供前处理器、求解器和后处理器。 2.4 提供图形化自定义偏微分方程接口(系数型、广义型、弱解型),不需要用户编写程序就可以求解自己的方程,并可以与预置的物理场接口耦合。 2.5 可以导入/导出数组文件、表格、文件等。 2.6 自带网格剖分功能,可以智能或者手动剖分网格,创建结构化和非结构化网 格。 3. 半导体仿真功能 3.1 可以仿真分析双极晶体管、金属半导体场效应晶体管 (MESFET)、金属氧化物半导 体场效应晶体管 (MOSFET)、绝缘栅双极晶体管 (IGBT)、肖特基二极管和 P-N 结等。 3.2 可以分析包含光跃迁来模拟诸如太阳能电池、发光二极管(LED) 以及光电二 极管等一系列器件。 3.3 可以求解电子和空穴的浓度以及伏安特性曲线。 4. 波动光学仿真功能 4.1 提供专用的工具来模拟线性和非线性光学介质中的电磁波传播,实现精确的元件仿 真和光学设计优化。 4.2 可以在光学结构中进行频域或时域的高频电磁波仿真。 4.3 可以进行特征频率模式分析、频域和时域电磁仿真。例如计算传输和反射系数。 5. 材料库功能 5.1 材料库中包含 2500 种材料的数据,包括化学元素、矿物、金属合金、热绝缘材料、半导体和压电材料等。 5.2 不仅可以绘制和检查这些函数的定义,而且还可以进行添加或更改。也可以在其他 依赖材料属性函数的物理场耦合中调用这些函数。 6. 几何建模功能 * * * * * * * * * * * * * * * * * * * * *

如何在modelsim下创建Altera仿真库

ModelSim SE中添加Altera仿真库 在ModelSim中进行仿真需要加入Quartus提供的仿真库,原因是下面三个方面:·Quartus不支持Testbench; ·调用了megafunction或者lpm库之类的Altera的函数; ·时序仿真要在Modelsim下做仿真。 下面以Altera器件为例,介绍如何在ModelSim中加入Altera的仿真库,Quartus II软件中自带有Altera的仿真库,只要把它拿到 ModelSim中去编译一下就可以了,具体步骤如下: 1.设置仿真库路径 打开ModelSim安装目录(我用的是ModelSim SE 6.5版本,安装在D:/ModelSim_6.5b目录下),新建文件夹altera,我们就在该目录下存放预编译的各种Altera库。 启动ModelSim SE 6.5,在主窗口执行【File】/【Change Directory】命令将路径转到altera 文件夹。或在命令行中执行cd D:/ModelSim_6.5b/altera。 2.新建库 Quartus II中提供的仿真库文件存放的路径是.../altera/91/quartus/eda/sim_lib,每个库文件提供了两种形式:.v(Verilog)

格式和.vhd(VHDL)格式两种,根据你所用的语言选择使用。用于编译资源库的文件有220model.v,220model.vhd,220pack.vhd,altera_mf.v,altera_mf.vhd,altera_mf_components.vhd,altera_primitives.v,altera_primitives.vhd,altera_primitives_components.vhd文件。网上的很多教程都是把这些文件一起编译,这样适用于Verilog和VHDL混合仿真,但如果只用一种语言,如Verilog则完全没必要全部编译。下面以该目录下的altera_primitives.v为例介绍建立预编译库的方法。 注:ModelSim中仿真库可以分为两大类:第一类是工作库(working),默认值为“work”目录,work目录中包含当前工程下所有被编译的设计单元,编译前必须建立一个work库,并且每个编译有且仅有一个work库;第二类是资源库(resource),存储能被当前编译引用的设计单元,在编译期间允许有多个resource库。 在主窗口中选择【File】/【New】/【Library】命令,新建一个名为altera_primitives的库。 3.编译库 方便起见在altera文件夹下新建目录src,把用于编译资源库的文件复制到src文件夹中。 在主菜单中选【Compile】/【Compile】命令,弹出Compile Source Files对话框,library 中选择你刚才建立的库名 altera_primitives,查找范围你选择altera_primitives.v文件,刚才你已经把它复制到了.../altera/src目录下。执行编译命令。

PLC仿真软件

1.本软件无需安装,解压缩后双击S7_200.exe即可使用; 2.仿真前先用STEP 7 - MicroWIN编写程序,编写完成后在菜单栏“文件”里点击“导出”,弹出一个“导出程序块”的对话框,选择存储路径,填写文件名,保存类型的扩展名为awl,之后点保存; 3.打开仿真软件,输入密码“6596”,双击PLC面板选择CPU型号,点击菜单栏的“程序”,点“装载程序”,在弹出的对话框中选择要装载的程序部分和STEP 7 - MicroWIN的版本号,一般情况下选“全部”就行了,之后“确定”,找到awl文件的路径“打开”导出的程序,在弹出的对话框点击“确定”,再点那个绿色的三角运行按钮让PLC进入运行状态,点击下面那一排输入的小开关给PLC 输入信号就可以进行仿真了。 使用教程: 本教程中介绍的是juan luis villanueva设计的英文版S7-200 PLC 仿真软件(V2.0),原版为西班牙语。关于本软件的详细介绍,可以参考 https://www.wendangku.net/doc/2614886296.html,/canalPLC。 该仿真软件可以仿真大量的S7-200指令(支持常用的位触点指令、定时器指令、计数器指令、比较指令、逻辑运算指令和大部分的数学运算指令等,但部分指令如顺序控制指令、循环指令、高速计数器指令和通讯指令等尚无法支持,仿真软件支持的仿真指令可参考 https://www.wendangku.net/doc/2614886296.html,/canalPLC/interest.htm)。仿真程序提供了数字信号输入开关、两个模拟电位器和LED输出显示,仿真程序同时还支持对TD-200文本显示器的仿真,在实验条件尚不具备的情况下,完全可以作为学习S7-200的一个辅助工具。 仿真软件界面介绍:

QUARTUSⅡ10波形仿真(ModelSim)入门指南

QUARTUSⅡ10仿真(ModelSim)入门指南平台 软件:ModelSim-Altera 6.5e (Quartus II 10.0) Starter Edition 内容 1 设计流程 使用ModelSim仿真的基本流程为: 图1.1 使用ModelSim仿真的基本流程 2 开始 2.1 新建工程 打开ModelSim后,其画面如图2.1所示。 图2.1 ModelSim画面

1. 选择File>New>Preject创建一个新工程。打开的Create Project对话框窗口,可以指定工程的名称、路径和缺省库名称。一般情况下,设定Default Library Name为work。指定的名称用于创建一个位于工程文件夹内的工作库子文件夹。该对话框如图 2.2所示,此外还允许通过选择.ini文件来映射库设置,或者将其直接拷贝至工程中。 图2.2 创建工程的对话框 2. 按照图2.3所示,设置Project Name为LED_FLOW,Project Location为D:/led_flow。 图2.3 输入工程信息 当单击OK按钮后,在主体窗口的下方将出现Create Project标签,如图2.4所示。 图2.4 Project标签 3. 之后,将出现Add Items to the Project的对话框,如图2.5所示。 图2.5 在工程中,添加新项目 2.2 在工程中,添加新项目 在Add Items to the Project对话框中,包括以下选项:

?Create New File——使用源文件编辑器创建一个新的Verilog、VHDL、TCL或文本文件 ?Add Existing File——添加一个已存在的文件 ?Create Simulation——创建指定源文件和仿真选项的仿真配置 ?Create New Folder——创建一个新的组织文件夹 1. 单击Create New File。打开图 2.6所示窗口。 图2.6 创建工程文件夹 2. 输入文件名称:LED_FLOW,然后选择文件类型为Verilog。 图2.7 输入工程文件信息 3. 单击OK,关闭本对话框。新的工程文件将会在工程窗口显示。单击Close,以关闭Add Items to the Project。 图2.8 新的设计文件LED_FLOW.v 4. 双击打开LED_FLOW.v文件(注意:若是Verilog文件已经关联了其他的文本编辑器,则双击后在关联的文本编辑器中打开)。 图2.9 LED_FLOW代码输入窗口 在LED_FLOW.v输入下面的测试平台代码: `timescale 1ns/1ns

VERICUT虚拟加工仿真过程研究

VERICUT虚拟加工仿真过程研究 随着现代工业的发展,零件的复杂程度、精度要求越来越高,经过软件自动生成的刀具路径处理后,生成的NC程序也更加复杂。因此,如何保证NC程序的精确性,成为数控加工生产中的一个难点。虚拟制造技术正是在这种背景下近年来出现的一种新的先进制造技术;在实际加工过程前,能够对具体加工过程进行仿真、优化,并对虚拟结果进行分析,可预先发现和改进实际加工中出现的问题,以较优的加工工艺投入生产。虚拟制造技术由建模技术、仿真技术、控制技术及支撑技术组成。其中,建模与仿真是虚拟制造技术的基础与核心。虚拟制造依靠建模与仿真技术模拟制造、生产和装配过程。虚拟加工环境是进行制造过程仿真、预测加工问题的前提和基础。 本文将在虚拟制造软件VERICUT平台上,提出建立仿真机床的方法与过程,并结合具体实例,说明在VERICUT平台上进行虚拟机床建模的过程。 1 VERICUT主要功能 VERICUT是CGTech公司提供的一种专用于数控加工仿真的软件,具有较强的机床和NC程序的仿真功能。其主要功能模块如下: 1)Verification:三轴加工验证及分析。 2)OptiPath:对切削用量进行优化设计,以满足最小加工时间的目标函数及最大机床功率等约束条件的要求。 3)Model Export:从NC刀具路径创建CAD兼容模型。 4)Machine Simulation:提供虚拟机床及其工作环境建模功能;解读可识别的数控代码。 5)Mult-iAxis:四轴及五轴验证。 6)AUTO-DIFF:实时擦伤检查和模型分析,并与CAD设计模型相比较。 7)Machine Developerps Kit:定制VERICUT功能,用来解释复杂或不常用的数据。 8)AdvancedMachine Features:提高VERICUT仿真复杂机床功能的能力。 9)CAD/CAM Interfaces:可从Pro/E、UG、CA TIA等CAD/CAM系统内部无缝运行VERICUT。 10)VERICUT Utilities:模型修复工具和转换器(包括在验证模块中)。 2 虚拟机床的建模 虚拟机床是随着虚拟制造技术的发展而提出的一个新的研究领域,通过虚拟机床加工系统可以优化加工工艺、预报和检测加工质量,同时还可以优化切削参数、刀具路径,提高机床设备的利用率和生产效率。 在虚拟制造软件的研究领域中,建模的对象大多是局限于某一种或某一系列的机床,这种建模的方法不仅通用性差,工作量大,而且效率不高,影响仿真效果、制造周期和生产成本。针对不同类型机床的通用化建模方法是解决问题的必然出路,下面综合分析机床的结构特点,抽象出其功能模块,总结出通用性的建模方法。 机床结构分析与模块分解:常见的数控机床在结构上主要有床身、立柱、运动轴和工作台等部件,再配合刀具、夹具和一些辅助部件共同组成。其中床身起到支承和承载机床组件的作用;立柱在结构上起到了拉开加工刀具和工件的空间距离,实现运动轴的布局;工作台则用来摆放工件,通过夹具等辅助工具实现工件的定位与夹紧。根据结构的特点可将机床的组件划分为三种类型:通用模块、辅助模块、专用模块。其中,通用模块是指各类机床共有的零/部件,如床身、立柱、工作台等等;辅助模块是指刀具、夹具等机床工具;专用模块

Modelsim的功能仿真和时序仿真

FPGA 设计流程包括设计输入,仿真,综合,生成,板级验证等很多阶段。在整个设计流程中,完成设计输入并成功进行编译仅能说明设计符合一定的语法规范,并不能说明设计功能的正确性,这时就需要通过仿真对设计进行验证。在FPGA 设计中,仿真一般分为功能仿真(前仿真)和时序仿真(后仿真)。功能仿真又叫逻辑仿真,是指在不考虑器件延时和布线延时的理想情况下对源代码进行逻辑功能的验证;而时序仿真是在布局布线后进行,它与特定的器件有关,又包含了器件和布线的延时信息,主要验证程序在目标器件中的时序关系。在有些开发环境中,如Xilinx ISE 中,除了上述的两种基本仿真外,还包括综合后仿真,转换(post-translate)仿真,映射后(post-map)仿真等,这样做完每一步都可进行仿真验证,从而保证设计的正确性。 ModelSim 是Mentor Graphics 子公司MentorTechnology 的产品,是当今最通用的FPGA 仿真器之一。ModelSim 功能强大,它支持FPGA 设计的各个阶段的仿真,不仅支持VHDL 仿真,Verilog仿真,而且支持VHDL 和Verilog 混合仿真。它不仅能做仿真,还能够对程序进行调试,测试代码覆盖率,对波形进行比较等。ModelSim 有很多版本,像ModelSim/SE 是首要版本,除此之外还有ModelSim/XE 和ModelSim/AE,分别是为Xilinx 公司和Altera 公司提供的OEM 版,其中已包含各公司的库文件,故用特定公司OEM 版进行仿真时就不需编译该公司的库了。 用ModelSim 进行功能仿真 进行功能仿真首先要检查设计的语法是否正确;其次检查代码是否达到设计的功能要求。下文主要介绍仿真步骤和测试激励的加载。 仿真步骤 (1)建立库并映射库到物理目录 因为用ModelSim 进行仿真是建立在仿真库的基础上的(此处进行的是功能仿真,因而不用编译特定厂商的库),所以首先要建立库并把库映射到实际的物理路径。通常用户编译的文件都放在work库中,所以必须先建立work 库。有两种方法建立并映射库,第一种方法是通过图形界面,在菜单Design→Create a New Library 弹出对话框,如图1 所示。在Library Name 中输入work,如果建立其它库,可以输入其它名字。Library Map to 是映射的物理路径。第二种方法是用命令行的形式,建立库用ModelSim>vlib<库名>,映射库用ModelSim> vmap ,如建立并映射库work,就可以在ModelSim 主窗口命令提示符下输入 vlib work vmap work work (2)编译源代码 该步骤主要检查源文件的语法错误。实现方法有两种,一是通过菜单Design→Compile,出现选择源文件对话框,选择要编译的源文件,编译即可;二是通过命令行方式,这一步对于VHDL 和Verilog 所使用的命令是不一样的,对于VHDL 代码用vcom-work.vhd.vhd ,

ModelSim中Altera仿真库的添加

ModelSim中Altera仿真库的添加 最近,做一个IP核的调试,但是里面调用了Altera的syncram,这样ModelSim就不能直接进行仿真,而QuartusII又不支持Tesbbench的仿真,所以为了在ModelSim中仿真就必须将Altera的这些仿真库添加到ModelSim中。 通常,在ModelSim中进行仿真需要加入Quartus提供的仿真库,原因是下面三个方面:·Quartus不支持Testbench; ·调用了megafunction或者lpm库之类的Altera的函数; ·时序仿真要在Modelsim下做仿真。 下面以Altera器件为例,介绍如何在ModelSim中加入Altera的仿真库,Quartus II软件中自带有Altera的仿真库,只要把它拿到 ModelSim中去编译一下就可以了,具体步骤如下: 1.设置仿真库路径 打开ModelSim安装目录(我用的是ModelSim SE 6.2版本,安装在D:\ModelSim\Installfiles目录下),新建文件夹altera,我们就在该目录下存放预编译的各种Altera库。 启动ModelSim SE 6.2,在主窗口执行【File】/【Change Directory】命令将路径转到altera文件夹。或在命令行中执行cd D:/ModelSim/Installfiles/altera。 2.新建库 Quartus II中提供的仿真库文件存放的路径是...\altera\80\quartus\eda\sim_lib,每个库文件提供了两种形式:.v(Verilog) 格式和.vhd(VHDL)格式两种,根据你所用的语言选择使用。用于编译资源库的文件有220model.v,220model.vhd,220pack.vhd,altera_mf.v,altera_mf.vhd,altera_mf_components.vhd,altera_primitives.v,altera_primitives.vhd,altera_primitives_components.vhd文件。网上的很多教程都是把这些文件一起编译,这样适用于Verilog和VHDL混合仿真,但如果只用一种语言,如Verilog则完全没必要全部编译。下面以该目录下的altera_mf.v为例介绍建立预编译库的方法。 注:ModelSim中仿真库可以分为两大类:第一类是工作库(working),默认值为“work”目录,work

机器人系统常用仿真软件介绍

1 主要介绍以下七种仿真平台(侧重移动机器人仿真而非机械臂等工业机器人仿真): 1.1 USARSim-Unified System for Automation and Robot Simulation USARSim是一个基于虚拟竞技场引擎设计高保真多机器人环境仿真平台。主要针对地面机器人,可以被用于研究和教学,除此之外,USARSim是RoboCup救援虚拟机器人竞赛和虚拟制造自动化竞赛的基础平台。使用开放动力学引擎ODE(Open Dynamics Engine),支持三维的渲染和物理模拟,较高可配置性和可扩展性,与Player兼容,采用分层控制系统,开放接口结构模拟功能和工具框架模块。机器人控制可以通过虚拟脚本编程或网络连接使用UDP协议实现。被广泛应用于机器人仿真、训练军队新兵、消防及搜寻和营救任务的研究。机器人和环境可以通过第三方软件进行生成。软件遵循免费GPL条款,多平台支持可以安装并运行在Linux、Windows和MacOS操作系统上。 1.2 Simbad Simbad是基于Java3D的用于科研和教育目的多机器人仿真平台。主要专注于研究人员和编程人员热衷的多机器人系统中人工智能、机器学习和更多通用的人工智能算法一些简单的基本问题。它拥有可编程机器人控制器,可定制环境和自定义配置传感器模块等功能,采用3D虚拟传感技术,支持单或多机器人仿真,提供神经网络和进化算法等工具箱。软件开发容易,开源,基于GNU协议,不支持物理计算,可以运行在任何支持包含Java3D库的Java客户端系统上。 1.3 Webots Webots是一个具备建模、编程和仿真移动机器人开发平台,主要用于地面机器人仿真。用户可以在一个共享的环境中设计多种复杂的异构机器人,可以自定义环境大小,环境中所有物体的属性包括形状、颜色、文字、质量、功能等也都可由用户来进行自由配置,它使用ODE检测物体碰撞和模拟刚性结构的动力学特性,可以精确的模拟物体速度、惯性和摩擦力等物理属性。每个机器人可以装配大量可供选择的仿真传感器和驱动器,机器人的控制器可以通过内部集成化开发环境或者第三方开发环境进行编程,控制器程序可以用C,C++等编写,机器人每个行为都可以在真实世界中测试。支持大量机器人模型如khepera、pioneer2、aibo等,也可以导入自己定义的机器人。全球有超过750个高校和研究中心使用该仿真软件,但需要付费,支持各主流操作系统包括Linux, Windows和MacOS。 1.4 MRDS-Microsoft Robotics Developer Studio MRDS是微软开发的一款基于Windows环境、网络化、基于服务框架结构的机器人控制仿真平台,使用PhysX物理引擎,是目前保真度最高的仿真引擎之一,主要针对学术、爱好者和商业开发,支持大量的机器人软硬件。MRDS是基于实时并发协调同步CCR(Concurrency and Coordination Runtime)和分布式软件服务DSS(Decentralized Software Services),进行异步并行任务管理并允许多种服务协调管理获得复杂的行为,提供可视化编程语言(VPL)和可视化仿真环境(VSE)。支持主流的商业机器人,主要编程语言为C#,非商业应用免费,但只支持在Windows操作系统下进行开发。 1.5 PSG-Player/Stage/Gazebo

相关文档
相关文档 最新文档