Allegro后仿真流程介绍

Allegro后仿真流程介绍作成期:04/01/2009

作成人:SOLDERMASK

Foreword

Getting IBIS Models

Pre-Working

Simulation

View Waveform

Foreword

●Getting IBIS Models ●Pre-Working Simulation

●View Waveform

Foreword

前仿真和后仿真的区别

前仿真又可以分为布局前仿真和布局后仿真。前者是在设计的最初阶段,通过SigXplorer建立和验证详细的电气拓扑结构并以此制定出详细

的约束规则。后者是在布局完成的状态下,在布线过程中遇到的具体

设计问题需要仿真的过程。

后仿真是在PCB布线完成以后,对已经完成的关键网络进行仿真验证的过程。可以检查实际的物理执行过程(布局布线)是否违背设计意图;

或是已知的改动,通过仿真来验证这种改动给高速设计带来的影响。

本篇文档主要介绍后仿真的操作流程

Index

●Foreword

Getting IBIS Models

●Pre-Working

Simulation

●View Waveform

到下列网站搜索各个公司IBIS模型下载网站

https://www.360docs.net/doc/4317999884.html,/ibis/ibis%20table/models.htm

到Google网站直接搜索某个型号的IBIS模型

到器件厂商的官方网站下载

IBIS模型需要检查是否存在语法错误,或者其他的错误,这一

步是必须的。打开软件Model Integrity,点击Open打开ibs文件,打开文件时软件自动进行Check。

若遇到错误,及时查明原因,一般都是语法错误,所以稍加修

改就OK了。

点击此按钮查看报

错的行并修改之

有10个错误,原因是超出80字符

IBIS to DML

由于Allegro SI不能够直接对应IBIS模型,需要把IBIS模型转

换成Allegro专用的DML模型,两者实际上都是文本文档,只是在描述的方式上有所区别。

右击,在弹出的框

内选择IBIS to DML

生成dml模型后保存

至ibis模型同一路径

待所有需要的器件模型全部转换成DML模型以后,要和IBIS模

型保存在同一文件夹。当需要修改或者更新时,更改模型Name,确保IBIS模型和DML模型的Name一一对应。

需要仿真的brd文件最好保存到dml模型的同一路径,方便后

续操作,不会造成模型库混乱。

Index

●Foreword

●Getting IBIS Models Pre-Working

Simulation

●View Waveform

Pre-Working

打开需要仿真的brd文件(和dml模型同一路径下),仿真前需

要进行如下几个部分的准备工作:

叠层的设置

电源网络的设置

仿真库的分配

通过设置PCB叠层的每一层厚度和走线层线宽,使得各层特征

阻抗符合设计要求,以保证仿真的准确性。由于后仿真时走线已经结束,所以只需要根据PCB设计条件书的参数要求设置叠层厚度。

点击NEXT进入叠层

设置页面

点击Edit Cross-section 按钮进入设置界面

后仿真主要设置PCB 板层的Thickness

根据设计要求设置叠层参数,设置完成后Apply/OK 即可

Identify DC Nets

设置好叠层参数后,继续选择NEXT进入定义电源网络界面,对

电源网络进行定义。这一步对前后仿真来说都不是必须的,只要保证仿真的网络与电源和地没有关联,可以省略这一步。

设置电源网络的电压值,如+1.42V

网络设置电压为1.42V,GND网络

要设置电压为0V等等

点击Identify DC

Nets按钮

叠层和电源电压设置好了之后,即可点击Finish退出Setup

Advisor界面。打开模型库管理窗口,调入dml模型库。

执行操作Analyze/SI EMI

SIM/Library…或者点击快

捷键lib,打开Library

Browser栏。

在打开的SI Library Browser里,会自动生成两个文件:

devices.dml和cds_models.ndx。并且在文件夹中会自动生成一系列文件。

若第一次打开没有出现这

两个文件则在后续的仿真

波形时会报错。

后仿真流程

synplify,ISE,ModelSim后仿真流程 我想很多人跟我一样,被ModelSim的后仿真搞的头晕脑胀。为了这个问题,我在网上找了很多的资料,但发现这些资料往往说的不明白。一些步骤被作者有意无意地省略掉,这常常给读者造成不必要的麻烦,所以我决定写下这一篇文章,把这3天我努力的结果拿出来,与大家分享。 首先,我把我用到的软件说明一下。如果你发现根据我的操作,你还是解决不了ModelSim 后仿真的问题,那就可能是软件版本的问题。 1,ModelSim Se 6.1b 2,Synplify Pro 7.5.1 3,ISE 5.2i (这个是老了点) 4,WindowsXP(这个应该没有多大的关系) 还有就是我使用的是verilog,我想VHDL的方法与verilog是差不多的,最多也就是在建库方面有点差别而已。 下面的这些方法,是我这3天搞出来的。当然也参考了一些文章。如果谁有更方便的方法,欢迎指出来。我的邮箱是vf1983cs@https://www.360docs.net/doc/4317999884.html,。有空大家多交流。 一,为modelsim生成3个库。 首先,介绍一下这三个库。 Simprim_ver:用于布局布线后的仿真。 Unisim_ver :如果要做综合后的仿真,还要编译这个库。 Xilinxcorelib_ver:如果设计中调用了CoreGen产生的核,则还需要编译这个库。 我们要为modelsim生成的是标准库。所谓的标准库就是modelsim运行后,会自动加载的库。不过这方面我还不是很肯定。因为我在后仿真时,还是要为仿真指定库的路径,不然modelsim找不到。 第一步:在modelsim环境下,新建工程,工程的路径与你想把库存储的路径一致。 第二步:新建库,库名起作s imprim_ver。我们首先就是要建的就是这个库。

Simulink仿真参数设定

simulink中的solver各选项表示的意思ZZ 2007-05-11 21:12 | (分类:默认分类) 构建好一个系统的模型之后,接下来的事情就是运行模型,得出仿真结果。运行一个仿真的完整过程分成三个步骤:设置仿真参数,启动仿真和仿真结果分析。 一、设置仿真参数和选择解法器 设置仿真参数和选择解法器,选择Simulation菜单下的Parameters命令,就会弹出一个仿真参数对话框,它主要用三个页面来管理仿真的参数。 Solver页,它允许用户设置仿真的开始和结束时间,选择解法器,说明解法器参数及选择一些输出选项。 Workspace I/O页,作用是管理模型从MATLAB工作空间的输入和对它的输出。 Diagnostics页,允许用户选择Simulink在仿真中显示的警告信息的等级。 1、Solver页 此页可以进行的设置有:选择仿真开始和结束的时间;选择解法器,并设定它的参数;选择输出项。 仿真时间:注意这里的时间概念与真实的时间并不一样,只是计算机仿真中对时间的一种表示,比如10秒的仿真时间,如果采样步长定为0.1,则需要执行100步,若把步长减小,则采样点数增加,那么实际的执行时间就会增加。一般仿真开始时间设为0,而结束时间视不同的因素而选择。总的说来,执行一次仿真要耗费的时间依赖于很多因素,包括模型的复杂程度、解法器及其步长的选择、计算机时钟的速度等等。 仿真步长模式:用户在Type后面的第一个下拉选项框中指定仿真的步长选取方式,可供选择的有Variable-step(变步长)和Fixed-step(固定步长)方式。变步长模式可以在仿真的过程中改变步长,提供误差控制和过零检测。固定步长模式在仿真过程中提供固定的步长,不提供误差控制和过零检测。用户还可以在第二个下拉选项框中选择对应模式下仿真所采用的算法。 变步长模式解法器有:ode45,ode23,ode113,ode15s,ode23s,ode23t,ode23tb和discrete。ode45:缺省值,四/五阶龙格-库塔法,适用于大多数连续或离散系统,但不适用于刚性(stiff)系统。它是单步解法器,也就是,在计算y(tn)时,它仅需要最近处理时刻的结果y(tn-1)。一般来说,面对一个仿真问题最好是首先试试ode45。 ode23:二/三阶龙格-库塔法,它在误差限要求不高和求解的问题不太难的情况下,可能会比ode45更有效。也是一个单步解法器。 ode113:是一种阶数可变的解法器,它在误差容许要求严格的情况下通常比ode45有效。ode113是一种多步解法器,也就是在计算当前时刻输出时,它需要以前多个时刻的解。 ode15s:是一种基于数字微分公式的解法器(NDFs)。也是一种多步解法器。适用于刚性系统,当用户估计要解决的问题是比较困难的,或者不能使用ode45,或者即使使用效果也不好,就可以用ode15s。 ode23s:它是一种单步解法器,专门应用于刚性系统,在弱误差允许下的效果好于ode15s。它能解决某些ode15s所不能有效解决的stiff问题。 ode23t:是梯形规则的一种自由插值实现。这种解法器适用于求解适度stiff的问题而用户又需要一个无数字振荡的解法器的情况。 ode23tb:是TR-BDF2的一种实现, TR-BDF2 是具有两个阶段的隐式龙格-库塔公式。discrtet:当Simulink检查到模型没有连续状态时使用它。 固定步长模式解法器有:ode5,ode4,ode3,ode2,ode1和discrete。 ode5:缺省值,是ode45的固定步长版本,适用于大多数连续或离散系统,不适用于刚性系统。

modelsim仿真详细过程

由于我们只需要了解仿真的完整过程,所以不需要自己写源文件和测试文件(也称为testbench)。一下就是简单的源文件和测试文件(亲自测试过)。 //源文件 module compare(equal,a,b); input a,b; output equal; assign equal=(a==b)?1:0; endmodule //测试文件 `timescale 1ns/1ns `include"./compare.v" module comparetest; reg a,b; wire equal; initial begin a=0; b=0; #100 a=0;b=1; #100 a=1;b=1;

#100 a=1;b=0; #100 $stop; end compare compare1(.equal(equal),.a(a),.b(b)); endmodule 有了源文件和测试文件下面就开始用modelsim进行仿真了。 步骤一:新建工程和.v文件(也就是源文件和测试文件) 打开modelsim软件,点击file,选择new—>project 然后就会弹出下面窗口: 然后在project name那一栏写上工程名(随便去,一般是字母),在project location选择工程路径(路径最好没有中文,听说的),然后点OK。进入下个界面:

然后点击小框里面的“create new file”.弹出界面: 在file name中写下源文件名,由于这是比较两数的大小,我取为:compare。在“add file as type”中选择verilog,点OK,然后有:

simulink仿真全参数设置

1.变步长(Variable—Step)求解器 可以选择的变步长求解器有:ode45,ode23,ode113,odel5s,ode23s和discret.缺省情况下,具有状态的系统用的是ode45;没有状态的系统用的是discrete. 1)ode45基于显式Runge—Kutta(4,5)公式,Dormand—Prince对.它是—个单步求解器(solver)。也就是说它在计算y(tn)时,仅仅利用前一步的计算结果y(tn-1).对于大多数问题.在第一次仿真时、可用ode45试一下. 2)ode23是基于显式Runge—Kutta(2,3).Bogackt和Shampine对.对于宽误差容限和存在轻微刚性的系统、它比ode45更有效一些.ode23也是单步求解器.3)odell3是变阶Adams-Bashforth—Moulton PECE求解器.在误差容限比较严时,它比ode45更有效.odell3是一个多步求解器,即为了计算当前的结果y(tn),不仅要知道前一步结果y(tn-1),还要知道前几步的结果y(tn-2),y(tn-3),…; 4)odel5s是基于数值微分公式(NDFs)的变阶求解器.它与后向微分公式BDFs(也叫Gear方法)有联系.但比它更有效.ode15s是一个多步求解器,如果认为一个问题是刚性的,或者在用ode45s时仿真失败或不够有效时,可以试试odel5s。odel5s是基于一到五阶的NDF公式的求解器.尽管公式的阶数越高结果越精确,但稳定性会差一些.如果模型是刚性的,并且要求有比较好的稳定性,应将最大的阶数减小到2.选择odel5s求解器时,对话框中会显示这一参数.可以用ode23求解器代替。del5s,ode23是定步长、低阶求解器. 5)ode23s是基于一个2阶改进的Rosenbrock公式.因为它是一个单步求解器,所以对于宽误差容限,它比odel5s更有效.对于一些用odel5s不是很有效的刚性问题,可以用它解决. 6)ode23t是使用“自由”内插式梯形规则来实现的.如果问题是适度刚性,而且需要没有数字阻尼的结果,可采用该求解器. 7)ode23tb是使用TR—BDF2来实现的,即基于隐式Runge—Kutta公式,其第一级是梯形规则步长和第二级是二阶反向微分公式.两级计算使用相同的迭代矩阵.与ode23s相似,对于宽误差容限,它比odtl5s更有效. 8)discrete(变步长)是simulink在检测到模型中没有连续状态时所选择的一种求解器.

modelsim使用 + 前仿真 + 后仿真 + verilog

Modelsim 6.0 使用教程 1. Modelsim简介 Modelsim仿真工具是Model公司开发的。它支持Verilog、VHDL以及他们的混合仿真,它可以将整个程序分步执行,使设计者直接看到他的程序下一步要执行的语句,而且在程序执行的任何步骤任何时刻都可以查看任意变量的当前值,可以在Dataflow窗口查看某一单元或模块的输入输出的连续变化等,比quartus自带的仿真器功能强大的多,是目前业界最通用的仿真器之一。 对于初学者,modelsim自带的教程是一个很好的选择,在Help->SE PDF Documentation->Tutorial里面.它从简单到复杂、从低级到高级详细地讲述了modelsim的各项功能的使用,简单易懂。但是它也有缺点,就是它里面所有事例的初期准备工作都已经放在example文件夹里,直接将它们添加到modelsim就可以用,它假设使用者对当前操作的前期准备工作都已经很熟悉,所以初学者往往不知道如何做当前操作的前期准备。 2.安装 同许多其他软件一样,Modelsim SE同样需要合法的License,通常我们用Kengen产生license.dat。 ⑴.解压安装工具包开始安装,安装时选择Full product安装。当出现Install Hardware Security Key Driver时选择否。当出现Add Modelsim To Path选 择是。出现Modelsim License Wizard时选择Close。 ⑵.在C盘根目录新建一个文件夹flexlm,用Keygen产生一个License.dat,然后 复制到该文件夹下。 ⑶.修改系统的环境变量。右键点击桌面我的电脑图标,属性->高级->环境变量-> (系统变量)新建。按下图所示内容填写,变量值内如果已经有别的路径了, 请用“;”将其与要填的路径分开。LM_LICENSE_FILE = c:\flexlm\license.dat

反相器设计前仿与后仿流程

目录 前端电路设计与仿真 (2) 第一节双反相器的前端设计流程 (2) 1、画双反相器的visio原理图 (2) 2、编写.sp文件 (2) 第二节后端电路设计 (4) 一、开启linux系统 (4) 2、然后桌面右键重新打开Terminal (6) 双反相器的后端设计流程 (7) 一、schematic电路图绘制 (7) 二、版图设计 (21) 画版图一些技巧: (29) 三、后端验证和提取 (30) 第三节后端仿真 (37) 其它知识 (40)

前端电路设计与仿真 第一节双反相器的前端设计流程1、画双反相器的visio原理图 in V DD M2 M3 out 图1.1 其中双反相器的输入为in 输出为out,fa为内部节点。电源电压V DD=1.8V,MOS 管用的是TSMC的1.8V典型MOS管(在Hspice里面的名称为pch和nch,在Cadence里面的名称为pmos2v和nmos2v)。 2、编写.sp文件 新建dualinv.txt文件然后将后缀名改为dualinv.sp文件 具体实例.sp文件内容如下:

.lib 'F:\Program Files\synopsys\rf018.l' TT 是TSMC用于仿真的模型文件位置和选择的具体工艺角*****这里选择TT工艺角*********** 划红线部分的数据请参考excel文件《尺寸对应6参数》,MOS管的W不同对应的6个尺寸是不同的,但是这六个尺寸不随着L的变化而变化。 划紫色线条处的端口名称和顺序一定要一致 MOS场效应晶体管描述语句:(与后端提取pex输出的网表格式相同) MMX D G S B MNAME 2.1、在wind owXP开始--程序这里打开Hspice程序 2.2、弹出以下画面然后进行仿真 1、打开.sp 文件 2、按下仿真按钮3 形 存放.sp文件的地址 查看波形按钮按下后弹出以下对话框

ModelSim的前后仿真(Quartus)

利用Quartus5.0实现功能仿真 1)打开一个工程文件。 2)打开Settings设置栏,选择Fitting Settings下的Simulator栏。在右边出现的设置栏中将 “Simulation Mode”的下拉菜单选择“Functional”,即可以实现软件下的功能仿真。(下拉菜单中有“Functional”、“Timing”和“Timing using Fast Timing Model”,分别代表可以在Quartus软件下实现功能仿真,时序仿真和快速时序仿真。最后一项一般不选,如果在Settings->Timing Requirement->More Settings下“Report Combined Fast/Slow Timing” 选项设为“On”,就可以选择最后一项。编译的报告里也会分别列出最快和最慢的时序报告。) 3)选择“Processing”菜单下的“Generate Functional Simulation Netlist”命令,否则将无法 启动仿真。 4)新建一个波形仿真文件,文件后缀名为.vwf。选择File菜单下的New->Other Files->Vector Waveform File。如下图所示,左边空白栏处是节点名的列表区,右边空白栏处是仿真波形的显示区。波形编辑窗口默认时间为1us,如果想改变仿真时间,可以选择Edit菜单下End Time,在弹出的对话框中选择需要的时间。将新建的波形仿真文件保存下来。

5)将需要仿真的信号加入波形编辑窗口。在列表区任一位置双击或者点击右键选择“Insert Node or Bus…”,弹出的对话框点击“Node Finder”按钮。在“Node Finder”界面中点击“List”按钮,有关信号的列表会出现在界面的左边,双击需要观察的信号加入至界面右边。如果工程中用到了很多信号,在左边列表中也会显示很多(Named编辑框默认的是*通配符),可以在Named编辑框中添加需要的信号名称实现模糊查找。界面中“Filter”下拉框中默认的是“Pins: all”,也就是说将要列出的信号都是IO管脚。如果需要观察一些内部信号,可以改变下拉框的参数,比如“Registers: Pre-Synthesis”。下图显示了仿真信号加入波形编辑窗口的情况。对于有些总线信号可以改变其显示的进制格式,比如二进制、八进制、十进制和十六进制。在列表中对应信号点击右键选择 “Properties”,弹出的对话框中选择“Radix”下拉框实现进制的转换。

Allegro IBIS仿真流程

Allegro IBIS仿真流程 2009-09-27 20:08:36| 分类:Pcb | 标签:|字号大中小订阅 https://www.360docs.net/doc/4317999884.html,/EDA/20090214105502.htm 第一章在Allegro中准备好进行SI 仿真的PCB 板图 1)在Cadence 中进行SI 分析可以通过几种方式得到结果: * Allegro 的PCB 画板界面,通过处理可以直接得到结果,或者直接以*.brd 存盘。 * 使用SpecctreQuest 打开*.brd,进行必要设置,通过处理直接得到结果。这实际与上述方式类似,只不过是两个独立的模块,真正的仿真软件是下面的SigXplore 程序。 * 直接打开SigXplore 建立拓扑进行仿真。 2)从PowerPCB 转换到Allegro 格式 在PowerPCb 中对已经完成的PCB 板,作如下操作: 在文件菜单,选择Export 操作,出现File Export 窗口,选择ASCII 格式*.asc 文件格式,并指定文件名称和路径(图1.1)。 图1.1 在PowerPCB 中输出通用ASC 格式文件

图1.2 PowerPCB 导出格式设置窗口 点击图1.1 的保存按钮后出现图1.2 ASCII 输出定制窗口,在该窗口中,点击“Select All”项、在Expand Attributes 中选中Parts 和Nets 两项,尤其注意在Format 窗口只能选择PowerPCB V3.0 以下版本格 式,否则Allegro 不能正确导入。 3)在Allegro 中导入*.ascPCB 板图 在文件菜单,选择Import 操作,出现一个下拉菜单,在下拉菜单中选择PADS 项,出现PADS IN 设置窗口(图1.3),在该窗口中需要设置3 个必要参数: 图1.3 转换阿三次文件参数设置窗口 i. 在的一栏那填入源asc 文件的目录 ii. 在第二栏指定转换必须的pads_in.ini 文件所在目录(也可将此文件拷入工作目录中,此例) iii. 指定转换后的文件存放目录 然后运行“Run”,将在指定的目录中生成转换成功的.brd 文件。 注:pads_in.ini 所在目录路:.\Psd_14.2\Tools\PCB\bin 中。

仿真分析步骤

例2:以P214例3.2.1说明仿真过程。 仿真分析步骤(P214例3.2.1) 1、选择菜单:放置(Place)\元件(Component)… 数据库(Database):主数据库(Master Database)组(Group):电源(Sources) 系列(Family):电源(POWER_SOURCES) 元件(Component):直流电压源(DC_POWER),单击OK按钮。 Ctrl+M设置属性后放置(或放置后,双击该元件设置属性): 在参数(value)属性页中V oltage(V)选2V,单击OK(确定)按钮。 同法放置接地:GROUND, 同法放置直流电压源:DC_POWER为4V。 在value属性页中V oltage(RMS)选4V。 同法放置直流电流源:系列(Family):电源(SIGNAL_CURRENT_SOURCES) 元件(Component):DC_CURRENT为3A。 双击该元件,在参数(value)属性页中Current(A)选2V,单击OK(确定)按钮。 同法放置直流电流源:DC_CURRENT为2A。 2、选择菜单:放置(Place)\元件(Component)… 数据库(Database):主数据库(Master Database)组(Group):Basic 系列(Family):RESISTOR 元件(Component):1Ω,单击OK按钮。 Ctrl+M设置属性后放置(或放置后,双击该元件设置属性): 在参数(value)属性页中Resistance选2Ω(Ohm),单击OK(确定)按钮。 按Ctrl+R旋转900。 同法放置其余电阻。 3、选择菜单:放置(Place)\导线(Wire) 连线如图所示,在需要的地方放置节点:放置(Place)\节点(Join)。 4、选择菜单“仿真(Simulate)/分析(Analyses)/ 直流工作点分析(DC Operation Point Analysis)”,弹出图3.2.5 所示分析参数设置对话框,“输出(Output variables)”用于选择所 要分析的结点、电源和电感支路。“电路变量(Variables in circuit)”栏中列出了电路中可以

modelsim+ISE后仿真流程

一、为modelsim 添加ISE的3 个仿真库。 首先,介绍一下这三个库。 Simprim_ver:用于布局布线后的仿真。 Unisim_ver :如果要做综合后的仿真,还要编译这个库。 Xilinxcorelib_ver:如果设计中调用了CoreGen产生的核,则还需要编译这个库。 我们要为modelsim生成的是标准库。所谓的标准库就是modelsim运行后,会自动加载的库。不过这方面我还不是很肯定。因为我在后仿真时,还是要为仿真指定库的路径,不然modelsim找不到。第一步:在modelsim环境下,新建工程,工程的路径与你想把库存储的路径一致。 第二步:新建库,库名起作simprim_ver。我们首先就是要建的就是这个库。 第三步:在modelsim的命令栏上,打下如下命令: vlog -work simprim_ver C:/Xilinx/12.4/ISE_DS/ISE/verilog/src/simprims/*.v (注意斜线的方向是与windows默认方向相反的) 其中的c:/Xilinx是我的Xilinx的安装路径,你把这个改成你的就行了。以下凡是要根据自己系统环境改变的内容,我都会用绿色标出,并加一个下划线。编译完之后,你会发现你的工程文件夹下出现了一个simprim文件夹,里面又有很多个文件夹。这些就是我们要的库了。 第四步:按照上面的方法,编译另外两个库。所需要键入的命令分别如下: vlog –work unisim_ver C:/Xilinx/12.4/ISE_DS/ISE/verilog/src /unisims/*.v vlog -work xilinxcorelib_ver C:/Xilinx/12.4/ISE_DS/ISE/verilog/src /XilinxCoreLib/*.v

modelsim后仿真详解

modelsim后仿真 想很多人跟我一样,被ModelSim的后仿真搞的头晕脑胀。为了这个问题,我在网上找了很多的资料,但发现这些资料往往说的不明白。一些步骤被作者有意无意地省略掉,这常常给读者造成不必要的麻烦,所以我决定写下这一篇文章,把这3天我努力的结果拿出来,与大家分享。 首先,我把我用到的软件说明一下。如果你发现根据我的操作,你还是解决不了ModelSim后仿真的问题,那就可能是软件版本的问题。 1, ModelSim Se 6.1b 2, Synplify Pro 7.5.1 3, ISE 5.2i (这个是老了点) 4, WindowsXP(这个应该没有多大的关系) 还有就是我使用的是verilog,我想VHDL的方法与verilog是差不多的,最多也就是在建库方面有点差别而已。 下面的这些方法,是我这3天搞出来的。当然也参考了一些文章。如果谁有更方便的方法,欢迎指出来。我的邮箱是vf1983cs@https://www.360docs.net/doc/4317999884.html,。有空大家多交流。 一、为modelsim生成3个库。 首先,介绍一下这三个库。 Simprim_ver:用于布局布线后的仿真。 Unisim_ver :如果要做综合后的仿真,还要编译这个库。 Xilinxcorelib_ver:如果设计中调用了CoreGen产生的核,则还需要编译这个库。 我们要为modelsim生成的是标准库。所谓的标准库就是modelsim运行后,会自动加载的库。不过这方面我还不是很肯定。因为我在后仿真时,还是要为仿真指定库的路径,不然modelsim找不到。 第一步:在modelsim环境下,新建工程,工程的路径与你想把库存储的路径一致。 第二步:新建库,库名起作simprim_ver。我们首先就是要建的就是这个库。

MATLAB第六章simulink仿真答案

实验四 SIMULINK 仿真实验 一、 实验目的 1. 学习SIMULINK 的实验环境使用。 2. 掌握SIMULINK 进行结构图仿真的方法。 二、 实验内容 1.控制系统结构图仿真 给定被控对象) 1(10 )(+= s s s G ,控制器111.0145.0)(++=s s s D ,按以下两种情 况设计SIMULINK 仿真结构图(给定信号是单位阶跃信号)。 (1) 无控制器时被控对象单位负反馈。 (2) 控制器与被控对象串连接成单位负反馈。 给定的仿真参数: (1) 信号源参数设置: 阶跃信号(Step )的Step time 设为0秒。 (2)仿真参数设置: 仿真时间 0~10秒,求解器选定步长(Fixed-step)的ode5,仿真步长(Fixed step size )设为0.02秒。 实验要求: (1) 在SIMULINK 中对设计的结构图进行仿真,观察输入信号,输出信号和控制信号。 (1) 记录保存两种情况下的响应波形(适当调整时间轴和纵轴坐标,使图形显示适中,同时在图中求出系统的超调和调节时间(按2%的误差带)。

123 45678910 00.20.40.60.8 1 1.2 1.4 时间 (seconds) d a t a 时序图: 0123 45678910 0.20.40.60.81 1.21.41.6 1.8时间 (seconds) d a t a 时序图:

2.动态系统微分方程仿真 在SIMULINK 中求解下列二阶微分方程代表的动态系统在阶跃信号作用下的状态响应。 给定的仿真参数: (1) 信号源参数设置:阶跃信号(Step )的Step time 设为0秒。 (2) 仿真参数设置:仿真时间 0~8秒,求解器选变步长 (Variable-step)的ode45,最大仿真步长(Max step size )设为0.01秒。 实验要求: (1) 据微分方程构造结构图。 (2) 结构图仿真。 a) 零状态仿真:x 1=0,x 2=0, b) 非零状态仿真:x 1=1,x 2=-1, c) 记录保存两种情况下的响应波形(适当调整时间轴和纵轴坐 标,使图形显示适中)。 1 22122110) (1,||210x y t u u x x x x x x ==++--==

利用ModelSim进行的功能仿真,综合后仿真,时序仿真

利用ModelSim进行的功能仿真,综合后仿真,时序仿真 功能仿真,就是在理想状态下(不考虑延迟),验证电路的功能是否符合设计的要求。 功能仿真需要: 1.TestBench或者其他形式的输入激励 2.设计代码(HDL源程序) 3.调用器件的模块定义(供应商提供,如FIFO,RAM等等) 值得一提的是,可以在ModelSim直接编写TestBench,使用View->Source->Show language templates. 综合后仿真(门级仿真),实际上就是将对综合后的门级网表进行仿真,只考虑门延迟,而没有加入时延文件。在功能仿真之后检验综合的结果是否满足功能要求。 综合后仿真需要: 1.综合后的门级网表,注意这里变成了*.vo文件,而不是原来功能仿真中所需要的HDL源代码. 2.测试激励 3.元件库Altera的仿真库位置为 *:\altera\quartus\eda\sim_lib 所谓时序仿真,就是在综合后仿真的基础上加上时延文件(sdf文件),综合考虑了路径延迟和门延迟的情况,验证电路是否存在时序违规。 时序仿真需要: 1.综合后的门级网表,注意这里变成了*.vo文件,而不是原来功能仿真中所需要的HDL源代码. 2.测试激励 3.元件库Altera的仿真库位置为 *:\altera\quartus\eda\sim_lib 4.较门级仿真还需要具有包含时延信息的反标记文件*.sdf 可以有两种方法实现门级仿真,或时序仿真。

1.工程编译成功后,自动启用ModelSim来运行门级仿真,前提是要在Quartus II的Options中设置好ModelSim的路径(和有些参考PDF上说的环境变量好像无关,至少我用的Quartus II 9.0 Web Edtion是这样的)具体方法是,进入Quartus9.0->Tools->Options,在Categroy里选中General 下的EDA Tool Options,在ModelSim右边的Location of Executable中双击来改变路径,就并且在工程中设置了自动启动ModelSim,就可以自动启用了。 1.在EDA Tool Settings,首先将仿真工具设置为ModelSim,然后点击让它自动启动。 2.NativeLink settings中选择testbench,完成相关的设置,例如test bench name,top level module in test bench,Design instance name in test bench,仿真时间,然后编译时会自动启动ModelSim然后完成所有操作,大概这就是Altera所指的和很多EDA工具的无缝连接。 另外一种方法,则是现在quartus ii中生成门级网表和延时文件,然后调用ModelSim进行仿真 1.在quartus ii设置仿真工具为ModelSim,这样设置完成后,在当前目录下会生成一个simulation的目录,该目录下有一个simulation文件夹,里面包含了网标文件和时延反标文件,vhdl语言对应的是网表文件为*.vho,时延文件为*.sdo。Verilog则为*.vo,*.sdo。 2.建立库并映射到物理目录,编译TestBench,执行仿真。 对库的理解: 我想所谓库,实际上就是一个代替文件夹的符号,区别就是,库中的文件的表述皆是经过了编译的实体或者module,一切操作都在库中进行。 ModelSim有两种库,一种是资源库,一种是工作库(默认名为work,保存当前工程下已通过编译的所有文件,资源库放置work库已编译文件所要调用的资源)。所以编译前,一定要有work库,而且只能有一个。

FPGA仿真流程

QuartusII的设计流程 QuartusII软件的使用方法 一、设计输入 1.建立工程 任何一项设计都是一项工程(Project),都必须首先为此工程建立一个放置与此工程相关的所有设计文件的文件夹。此文件夹将被EDA软件默认为工作库(Work Library)。一般,不同的设计项目最好放在不同的文件夹中,而同一工程的所有文件都必须放在同一文件夹中。 首先建立工作库目录,以便存储工程项目设计文件。在D盘下新建文件夹并取名Mydesign。双击QuartusII软件启动图标,即可启动QuartusII软件,启动界面如图1-2所示。 使用New Project Wizard 可以为工程指定工作目录、分配工程名称以及指定最高层设计实体的名称,还可以指定要在工程中使用的设计文件、其他源文件、用户库和EDA 工具,以及目标器件系列和具体器件等。在此要利用“New Preject

Wizard”工具选项创建此设计工程,并设定此工程的一些相关的信息,如工程名、目标器件、综合器、仿真器等。(1)打开建立新工程管理窗。选择菜单File→New Preject Wizard 命令,即弹出“工程设置”对话框(图1-3),以此来建立新的工程。 (2)在单击图1-3后,出现了设置工程的基本信息,如图1-4所示。单击此对话框最上一栏右侧的“… ”按钮,可以选择工程存放在硬盘上的位置,此例中将工程放在D盘Mydesign文件夹下。这三行的第一行的d:\Mydesign表示工程所在的工作库文件夹;第二行的half_add 表示此项工程的工程名,工程名可以取任何其他的名,也可直接用顶层文件的实体名作为工程名,在此就是按这种方式取的名;第三行是当前工程顶层文件的实体名,这里即为half_add。 (2)将设计文件加入工程中。单击图1-4中的Next 按钮,弹出对话框如图1-5所示,在对话框中单击File name 右侧的“… ”按钮,可以将与工程相关的所有VHDL 文件(如果有的话)加入进此工程,此工程文件加入的方法有两种:第1 种方法是单击“Add … ”按钮,从工程目录中选出相关的VHDL 文件;第2 种方法是单击Add All 按钮,将设定

FPGA验证后仿真

quartus里面自带两种仿真functional和timing(还有一个简化版的timing) 分别是功能仿真和时序仿真,其实如果验证正确,没有必要进行后仿真了。 在EDA开发的流程中,按理说应该进行后仿真back-annoted,但实际上这一步已经逐步淡化了。 FPGA验证(介绍FPGA设计流程,STA,后仿真) 验证,顾名思义就是通过仿真、时序分析、上板调试等手段检验设计正确性的过程,在FPGA/IC开发流程中,验证主要包括功能验证和时序验证两个部分。为了了解验证的重要性,我们先来回顾一下FPGA开发的整个流程。FPGA开发流程和IC的开发流程相似,主要分为以下几个部分: 1)设计输入,利用HDL输入工具、原理图输入工具或状态机输入工具等把所要设计的电路描述出来; 2)功能验证,也就是前仿真,利用Modelsim、VCS等仿真工具对设计进行仿真,检验设计的功能是否正确;常用的仿真工具有Model Tech公司的ModelSim,Synopsys公司的VCS,Cadence公司的NC-Verilog和NC-VHDL,Aldec公司的Active HDL VHDL/Verilog HDL等。仿真过程能及时发现设计中的错误,加快了设计进度,提高了设计的可靠性。 3)综合,综合优化是把HDL语言翻译成最基本的与或非门的连接关系(网表),并根据要求(约束条件)优化所生成的门级逻辑连接,输出edf和edn等文件,导给CPLD/FPGA厂家的软件进行实现和布局布线。常用的专业综合优化工具有Synplicity公司的synplify/Synplify Pro、Amplify等综合工具,Synopsys 公司的FPGA Compiler II综合工具(Synopsys公司将停止发展FPGA Express软件,而转到FPGA Compiler II平台),Exemplar Logic公司出品的LeonardoSpectrum等综合工具。另外FPGA/CPLD厂商的集成开发环境也带有一些综合工具,如Xilinx ISE中的XST等。 4)布局布线,综合的结果只是通用的门级网表,只是一些门与或非的逻辑关系,与芯片实际的配置情况还有差距。此时应该使用FPGA/CPLD厂商提供的实现与布局布线工具,根据所选芯片的型号,进行芯片内部功能单元的实际连接与映射。这种实现与布局布线工具一般要选用所选器件的生产商开发的工具,因为只有生产者最了解器件内部的结构,如在ISE的集成环境中完成实现与布局布线的工具是 Flow Engine。 5)时序验证,其目的是保证设计满足时序要求,即setup/hold time符合要求,以便数据能被正确的采样。时序验证的主要方法包括STA(Static Timing Analysis)和后仿真。在后仿真中将布局布线的时延反标到设计中去,使仿真既包含门延时,又包含线延时信息。这种后仿真是最准确的仿真,能较好地反映芯片的实际工作情况。仿真工具与综合前仿真工具相同。

实验四-SIMULINK仿真模型的建立及仿真

实验四 SIMULINK仿真模型的建立及仿真(一) 一、实验目的: 1、熟悉SIMULINK模型文件的操作。 2、熟悉SIMULINK建模的有关库及示波器的使用。 3、熟悉Simulink仿真模型的建立。 4、掌握用不同的输入、不同的算法、不同的仿真时间的系统仿真。 二、实验内容: 1、设计SIMULINK仿真模型。 2、建立SIMULINK结构图仿真模型。 3、了解各模块参数的设定。 4、了解示波器的使用方法。 5、了解参数、算法、仿真时间的设定方法。 例7.1-1 已知质量m=1kg,阻尼b=2N.s/m。弹簧系数k=100N/m,且质量块的初始位移x(0)=0.05m,其初始速度x’(0)=0m/s,要求创建该系统的SIMULINK 模型,并进行仿真运行。 步骤: 1、打开SIMULINK模块库,在MATLAB工作界面的工具条单击SIMULINK图标,或在MATLAB指令窗口中运行simulink,就可引出如图一所示的SIMULINK模块浏览器。 图一:SIMULINK模块浏览器

2、新建模型窗,单击SIMULINK模块库浏览器工具条山的新建图标,引出如图二所示的空白模型窗。 图二:已经复制进库模块的新建模型窗 3、从模块库复制所需模块到新建模型窗,分别在模块子库中找到所需模块,然后拖进空白模型窗中,如图二。 4、新建模型窗中的模型再复制:按住Ctrl键,用鼠标“点亮并拖拉”积分模块到适当位置,便完成了积分模块的再复制。 5、模块间信号线的连接,使光标靠近模块输出口;待光标变为“单线十字叉”时,按下鼠标左键;移动十字叉,拖出一根“虚连线”;光标与另一个模块输入口靠近到一定程度,单十字变为双十字;放开鼠标左键,“虚连线”变变为带箭头的信号连线。如图三所示:

FPGA后仿真流程

Xilinx FPGA仿真流程 版本:1.0 (本流程是基于设计代码已完成) 电路设计的各个阶段都与仿真紧密联系在一起的,可以分为以下几个阶段的仿真:1.行为级:用于验证电路框架及算法的正确性; 2.RTL级(寄存器传输级):可以验证功能正确性,一般称为前仿真; 3.门级:综合出门级网表之后,网表中加入了门的延时信息,仿真结果更接近于真实情况;4.后仿真:布局布线后,可以将连线延时加入到网表中,此时可以验证电路的时序是否正确; 实际上我们在编写设计代码时,一般从是RTL级开始。RTL级仿真通过,然后直接进入后仿真。只要后仿真通过了,我们就认为设计代码通过验证,可以下载到FPGA里。所以我们需要仿真的只有RTL级和后仿真就行了! 一.RTL级仿真步骤: 1.打开ModelSim,新建一个project,如图1.1 图1.1 得到Creata Project 的弹出窗口,如图 1.2 所示。在Project Name 栏中填写你的项目名字。Project Location 是你的工作目录,你可通过Brose 按钮来选择或改变。Ddfault Library Name 可以采用工具默认的work库。(推存,此库包括一个特殊的文件_info)

图1.2 2.给工程加入文件:ModelSim会自动弹出Add Items to the project 窗口,如图1.3 所示。选择Add Exsiting File 后,根据相应提示将文件加到该Project 中。 图1.3 出现图1.4 图1.4 点击Browse,出现

添加你所要的.v文件,出现。 当然也可以这样添加你所要的.v文件,

功能仿真与时序仿真

功能仿真和时序仿真 章节:第3 章第2节 功能仿真与时序仿真 概述 仿真过程是正确实现设计的关键环节,用来验证设计者的设计思想是否正确,及在设计实现过程中各种分布参数引入后,其设计的功能是否依然正确无误。仿真主要分为功能仿真和时序仿真。功能仿真是在设计输入后进行;时序仿真是在逻辑综合后或布局布线后进行。 1. 功能仿真 ( 前仿真 ) 功能仿真是指在一个设计中,在设计实现前对所创建的逻辑进行的验证其功能是否正确的过程。布局布线以前的仿真都称作功能仿真,它包括综合前仿真( Pre-Synthesis Simulation )和综合后仿真( Post-Synthesis Simulation )。综合前仿真主要针对基于原理框图的设计 ; 综合后仿真既适合原理图设计 , 也适合基于 HDL 语言的设计。 2. 时序仿真(后仿真) 时序仿真使用布局布线后器件给出的模块和连线的延时信息,在最坏的情况下对电路的行为作出实际地估价。时序仿真使用的仿真器和功能仿真使用的仿真器是相同的,所需的流程和激励也是相同的;惟一的差别是为时序仿真加载到仿真器的设计包括基于实际布局布线设计的最坏情况的布局布线延时,并且在仿真结果波形图中,时序仿真后的信号加载了时延,而功能仿真没有。 仿真工具 1. ModelSim 总体概览 ModelSim 仿真工具是工业上最流行、最通用的仿真器之一,可支持Verilog 、 VHDL 或是 VHDL/ Verilog 混合输入的仿真,它的 OEM 版本允许Verilog 仿真或 VHDL 仿真。Model 技术公司共开发了 ModelSim/VHDL 和ModelSim/Verilog 两种 ModelSim 产品,但它又分为不同的版本: OEM 版本—— ModelSim/LNL 支持 Verilog 或者 VHDL ,但是不同时支持; ModelSim/PLUS 版本支持混合仿真 Verilog 和 VHDL ; ModelSim/SE 版本支持 PLUS 的所有功能连同附加功能。

abb机器人仿真步骤

作图步骤: 1、双击桌面ROBOTSTUDIO 图标,如下图所示。 点击左侧选项栏,选择授权。 然后选择激活向导,选择如下: 2、点击创建文件,出现如下界面。 3、选择机器人模型,点击ABB模型库,出现如下界面,选择IRB2600.把承重能力改为20KG. 4、然后点击导入模型库,下拖选择MYTOOL后,然后把左侧边mytool工具拖到 IRB2600-20-165-01,机器人上自动安装了喷头工具。 5、然后点击机器人系统菜单,选择从布局创建系统。 在此项目中,可以在名称处修改系统的名称,尤其在系统多的情况下。在主菜单中,一定要修改工具,把原始的tool10改为mytool。或者,在放入机器人时,即完成此项设置,可以不需要修改此项。 一直选择下一个,即可成功。 成功后,屏幕右下角变为绿色。 5、选择建模,在菜单中选择固体,再选择矩形体。 6、选择矩形体后,设置矩形体的长宽高参数为400、500、400后,点击创建,后关闭,即可在屏幕上看到矩形体。 在此项中选择左侧布局后,双击部件1,修改名称为box。 7、点击菜单中大地坐标中的移动,即可移动矩形体。 此项中一定要注意看俯视图,使正方体在机器人运动范围内,否则出错。 8、点击基本菜单中的路径。 一种路径就设置为PATH10,如果有其他,就要多设置几个路径。 后选择捕捉末端和手动线性,并把屏幕右下方的几个参数设置为MOVEJ,V300,Z为fine,准备设置示教指令。 9、做6个示教指令,第一个和最后一个为MOVEJ,其他都为MOVEL。每移动一个点,点一次示教指令。 10、设置完示教指令后,点击基本菜单下同步,选择同步到VC 然后,所有同步下选项都选择,点击确定即可。 11、然后选择仿真菜单。首先点击仿真设定,把原有路径删除,把新的路径添加到主队列中,然后确定。 12、设定好后,点击播放,即可进行仿真。 13、如需要录像,则应该先点击仿真录像,后在点击播放,即可进行仿真录像。 14、最终保存和打包。 先点击文件菜单,然后选择保存。 保存后,在点击“共享”,后选择第一个选项“打包”。 即可完成文件程序打包。 至此,所有过程完成。

相关文档
最新文档