EDA技术基础-常用仿真分析


图4-6 直流工作点分析
⑵设置系统工作参数,显示节点编号。 ⑶执行菜单命令Simulation→Analyses→DC Operation Point,屏幕弹出分析设置对话框,在其中选择输出变量,本例 输出变量选择为节点1、2、3和两个支路电流。 ⑷单击【Simulate】按钮,开始进行电路仿真。 直流工作点也可用电压表、电流表或数字万用表来测量。 执行仿真后,系统将自动把电路 中所选择的节点电压和支路电流数值 显示在分析显示图中,如图4-7所示。 根据图中的原理,流过R1的电流应为 支路电流vu1#branch,从节点1、节点 2的工作电压可以推算出该支路电路为: (10-1.66667)/2=4.1667A,与测量 图4-7 仿真分析结果 值相符。
傅立叶分析(Fourier Analysis) 直流扫描分析(DC Sweep Analysis) 参数扫描分析(Parameter Sweep Analysis)
4.2.1
直流工作点分析(DC Operation Point Analysis)
直流工作点分析是电路分析的基本步骤,在进行直流工作点 分析时,交流源将视为短路,电容视为开路,电感视为短路。 ⑴创建要分析的电路,图4-6所示为直流电路。
4.1.3 分析结果显示
1.显示图的窗口界面
分析显示图也可以通过执行菜单View→Show Grapher获得。在 显示图中用鼠标拉框可以放大框选区域的图形,单击任务项名可打 开相应的分析显示图,图4-4中选中Transient Analysis的波形。 分析显示图用于显示仿真分析结 果及仪器波形。图4-4所示为LC振荡 电路的分析结果,其中Transient Analysis #1为瞬态分析的分析结果, Oscilloscope –XSC1为示波器中的分 析结果。在图中还有显示图工具按钮, 单击这些按钮可以对显示图进行操作。
图4-3 设置输出变量
⑴输出变量类型。在Variables In Circuit中有四种选择。 Voltage(节点电压)。显示方式为节点编号。 Current(支路电流)。显示方式如 “vv1#branch”,它 表示元器件参考编号为V1所在支路。
Voltage and Current(电压和电流)。在显示区中显示节点编号 和支路电流。 All Variables(所有变量)。显示包含数字元器件在内的变 量。其中数字元器件变量显示如“du1:a”、“du1:y”等。 ⑵选择输出变量。用鼠标单击选择显示区内电路中的变量,然 后单击【Plot during simulation】(仿真输出)按钮,则选择的 变量显示在右边方框内。 ⑶移去输出变量。在右边方框中选中要移走输出变量,单击 【Remove】按钮移去变量。 上述设置完毕后,用单击【Simulate】(仿真)按钮,仿真分 析结果显示在分析显示图中。
EDA技术基础(第2版)
第4 章
multiSIM 2001常用仿真分析
本章要点
4.1
4.2
仿真分析步骤
常用分析方法
本章要点
● ● ● ●
仿真分析的基本设置 掌握常用的高级仿真分析方法 了解后处理功能的使用 解与其它EDA软件的转换方法
返回
4.1 仿真分பைடு நூலகம்步骤
4.1.1 设置显示节点编号
在电路仿真中,输出变量以节点编号形式出现,节点编号是 由系统自动产生的,系统默认为隐藏状态。通常在仿真分析时, 将电路的节点编号设置为显示状态。 在工作区的空白位置单击鼠标右键,在弹出的菜单中选择 “Show...”,屏幕弹出图4-1所示的菜单,选中Show Node Name, 电路中将显示节点编号。图4-2所示为设置显示节点编号后的RC微 分电路,输出节点为2。 双击节点上的连线,屏幕弹出对话框,可以修改节点编号, 但同一电路上的节点编号是不允许重复的,地线的节点编号系统 自动设置为0。
节点 编号
图4-1 设置显示节点编号
图4-2 显示节点编号的电路
⑴Analysis Parameters,设置分析参数。 ⑵ Output Variables ,设置电路分析的输出 变量。 ⑶Miscellaneous Options,设置辅助参数。 ⑷Summary,显示仿真过程中汇总参数,一般 4.1.2 仿真分析参数设置 选默认。 2.输出变量设置 在电路分析前,必须先设置电路的输出变量。 执行Simulation→Analyses,选中分析方法后, 屏幕弹出参数设置对
返回
4.2.2
交流分析(AC Analysis)
交流分析是分析在交流小信号下的电路中任意节点处的频率 特性曲线,包括幅频和相频特性曲线。分析时,电路中的直流电 压源视为短路,直流电流源视为开路,非线性元器件用线性交流 小信号模型等效电路代替,交流信号源、电容、电感工作在交流 模式,输入信号设置为正弦波形式。 ⑴创建分析电路,图4-10所示为单调谐放大电路。 ⑵设置节点编号为显示状态。 ⑶执行菜单Simulation→Analyses→AC Analysis,屏幕弹 出图4-11所示对话框,单击Analysis Parameter选项卡设置分析 参数,对话框具体内容如表4-1所示。图中设置为频率范围 150kHz~250kHz,扫描方式Linear,扫描点数200,垂直标尺采 用Linear。 ⑷单击Output Variable(输出变量)项,设置电路的分析 节点,本例中分析节点设置为7。
图例颜色
栅格
读数轴
图4-3
显示图界面
图4-5
波形读数
返回
4.2 常用分析方法
4.2.1 4.2.2
直流工作点分析(DC Operation Point Analysis ) 交流分析(AC Analysis)
4.2.3
4.2.4 4.2.5 4.2.6
瞬态分析(Transient Analysis)
⑸单击【Simulate】,显示图上显示节点的频率特性图, 如图4-12所示,图中有幅频特性和相频特性两种频率特性曲线。 ⑹读取测量数据。在图中,拖动读数轴读出所需数值,从 图中读数轴1、2均位于峰值电压的0.707位置,故x1与x2的差值 dx即为该电路的带宽,从图中可以读出该电路的带宽为 1.2791kHz。
合集下载

电子EDA技术的基础知识

电子EDA技术的基础知识

电子EDA技术的基础知识现代电子设计技术的核心就是EDA技术。

EDA技术是一门综合性学科,它打破了软件和硬件间的壁垒,代表了电子设计技术和应用技术的发展方向。

本文将带你一起来了解关于EDA的分类、基本特征、应用、常用软件以及发展前景。

电子设计自动化(Electronic Design Automation)的缩写即是EDA.EDA技术是把计算机技术应用在电子设计过程的一门技术,从而实现了电子设计的自动化进行,现今EDA技术已经广泛用于电子电路的设计仿真以及集成电路版图设计、印刷电路板的设计和可编程器件的编程等工作中。

EDA技术是一门综合的学科,它代表了未来电子设计技术的发展方向,打破了软硬件之间的隔阂。

一、EDA的分类我们依据计算机辅助技术介入程度的不同,将电子系统设计分为以下三类:1.人工的设计方法此种设计方法从提出方案到验证方案等等均需要由人工来完成,并且方案的验证必须搭建实际的电路来完成验证。

这种人工的设计方法缺陷在于:开销特别大,但是效率却极低,并且周期比较长,还有一点就是现在的产品不是单单靠人工就能够完成的。

2.计算机辅助设计CAD1970年以来,计算机开始被应用于Ic版图设计以及PCB布局布线,后来发展为可对电路功能和结构进行设计,并且在原来的基础上增添了逻辑仿真、自动布局布线等等的功能。

可以这么说CAD技术的应用取得了可喜的成果。

但我们也不能过于乐观,因为各种各样的软件层出不穷,每一种设计软件只能够解决一部分的问题,这就造成了软件不能完全脱离人去设计,智能化程度不能够满足人们的需求。

3.EDA电子设计自动化1990年以后是EDA时代的到来。

伴随着电子计算机的不断发展,计算机系统被广泛的应用于电子产品的设计和电子产品的测试以及电子产品的制造等各环节当中。

由于电子产品的性能不断提高以及精密度的增加,产品的更新所需要的时间越来越短。

相应的,电子产品的设计和电子产品的测试以及电子产品的制造也必须跟上更新的步伐。

EDA设计的仿真与测试

EDA设计的仿真与测试

10.2.2 Modelsim仿真步骤(续5)
4、 启动仿真器并加载设计顶层
(2)在主窗口中出 现Object窗口,右键单 击Object窗口中的任 意信号,选择add to wave/ signals in region 或者是右键选中sim 窗口中加载的顶层设 计名,选中add to wave, 就可以打开波形窗口, 并将所有信号都加载 到波形窗口当中 。 如右图所示。
Run Length
Run
Continue Run
Run -All
Show
Language
Templates
用途
对应菜单
撤消最后一步操作
Edit > Redo
在当前窗口查找文本
Edit > Find
隐藏当前窗口所有的例程
Edit > Expand > Collapse All
显示当前窗口所有的例程
Edit > Expand > Expand All
仿真系 统软件、 硬件运 行
比较判断 输出、存 储结果
10.1 仿真简介(续1)
• 仿真与验证主要包括3个方面的内容:
第一是仿真系统的组织原则,主要是如何有效的测试目标系统 的理论和方法;
第二是测试模板与测试向量的设计; 最后是仿真工具的使用。
• 一般来说,仿真分为三种类型,即功能仿真、综合后功能仿真和
注:本章主要介绍在界面模式下modelsim的使用方法
10.2.2 Modelsim仿真步骤(续1)
1、建立库
仿真库是指存储已经编译设计单元(design units)的目录。 Modelsim中仿真库可以分为工作库(Working)和资源库(Resource) 两大类。

集成电路EDA与验证技术课件:模拟集成电路设计与仿真

集成电路EDA与验证技术课件:模拟集成电路设计与仿真

模拟集成电路设计与仿真
常用命令格式: (1) DEFINE 格式:DEFINE <库名> <库路径> 例: DEFINE sample /export/cadence/IC615USER5/tools.lnx86/dfII/samples/cdslib/sa mple (2) INCLUDE 格式:INCLUDE <另外一个cds.lib 的全路径>
模拟集成电路设计与仿真
图3.2 Spectre中包含的各种仿真器
模拟集成电路设计与仿真
2.精确的晶体管模型 Spectre为所有的仿真器提供一致的器件模型,这有利于 消除不同模型间的相关性,从而得到快速收敛的仿真结果。 模型的一致性也保证了器件模型在升级时可以同时应用于所 有的仿真器。 3.高效的程序语言和网表支持 Spectre仿真平台支持多种设计提取方法,并兼容绝大多 数SPICE输入平台。Spectre可以读取Spectre、SPICE以及 Verilog-A格式的器件模型,并支持标准的Verilog-AMS、 VHDL-AMS、Verilog-A、Verilog以及VHDL格式的文本输 入。
模拟集成电路设计与仿真
5.有力衔接了版图设计平台 对于完整的版图设计平台而言,Spectre是不可或缺的重 要环节,它能方便地利用提取的寄生元件参数来快速完成后 仿真(post-layout simulation)的模拟,并与前仿真(pre-layout simulation)的模拟结果作比较,紧密的连接了电路 (Schematic)和版图(layout)的设计。 6.交互的仿真模式 设计者可以在仿真过程中快速改变参数,并在不断调整 参数和模拟之中找到最佳的电路设计结果,减少电路设计者 模拟所花费的时间。

EDA技术PPT(4)Multisim基本分析方法

EDA技术PPT(4)Multisim基本分析方法
利用这些分析工具,可以了解电路的基本状况、测量和分析电路的各 种响应,其分析精度和测量范围比用实际仪器测量的精度高、范围宽。
直流工作点分析(DC Operating Point Analysis)
直流工作点分析是电路分析的基本步骤,在进行直流工作点分 析时,交流源将视为短路,电容视为开路,电感视为短路。 ⑴创建要分析的电路。 例:在Multisim工作区构造一个单管放大电路,电路中电源电压、 各电阻和电容取值如图所示。

(1)创建电路
如图所示的MOS管电路,MOS管型号为2N7000,属于N 沟道增强型MOS管。现在要利用直流扫描来测绘MOS管的输 出特性曲线。
(2) 执行菜单命令Simulate/Analyses,在列出的可操作分析 类型中选择DC Sweep,则出现直流扫描分析对话框
(3)仿真结果 直流扫描分析曲线即MOS管的输出特性曲线,如图所示。 其中横坐标为 MOS管的漏极电压, 纵坐标实际上是MOS 管的漏极电流(尽管图 上标的是Voltage)。 每一条曲线都是MOS 管漏极电压与漏极电流 的关系曲线,每一条曲 线都对应着一个固定的 栅极电压,即对应着栅 极电源的各个扫描值。
(1)创建电路
单管放大电路,双击信号电压源符号,在属性对话框中 Distortion Frequency 1 Magnitude:项目下设置为1V。然后继 续分析该单管放大电路。
(2)启动噪声分析工具
执行菜单命令 Simulate/Analyses,在 列出的可操作分析类 型 中 选 择 Noise Analysis,则出现噪声 分析对话框,如图所 示。
绘出相应的曲线。
(1)创建电路 电阻分压电路,分析该电路的灵敏度
(2)启动灵敏度分析 工具 选择Simulate / Analysis / Sensitivity

(2-4章)第二讲 EDA的仿真技术

(2-4章)第二讲 EDA的仿真技术
S1 X 0 X 1 1 S2 X 1 0 1 1 LD X 1 1 0 1 功能 清零 保持 保持 置数 计数
31
C 0 保持 0
功能表(74161功能 表与此相同)
X X X
74160时序图
Rd
LD
EDA
D0 D1 D2 D3
CP
1 1 1 0
S1 S2 Q0 Q1 Q2 Q3
C
1 1 1 0
0 0
0 1
1 0 0 1
0 0 0 0
计数
1 0 0 0
0 1 0 0
1 1 0 1 保持
Rd=1/LD=1
32
清零 置数 Rd=0 LD=0/S1=S0=1/Rd=1
集成同步二进制加计数器74161
符号:
Q0 Q0
CP LD
EDA
Q1 Q1
Q2 Q2
Q3 Q3
C C
74161
Q 0Q 1Q 2Q 3 R d S 1 S 2
34
清零 置数
集成同步十进制计数器74162
Q0 Q0 Q1 Q1 Q2 Q2 Q3 Q3
C C
EDA
符号:
CP LD
74163
Rd:同步复位信号,其它同 74163。74162是十进制计数器, 当计到9时进位输出变为高电平。
Q 0Q 1Q 2Q 3 R d S 1 S 2
CP
Rd 0 1 1 1 1
●
EWB的特点:
Ⅱ提供交互式的人机图形界面 ; Ⅲ 具有下拉式的电路编辑和即时波形显示功能; Ⅳ 具有虚拟的仪器仪表设备 Ⅴ 提供了较为详细的电路分析手段
4
Ⅰ具有完整的模拟和数字混合仿真的功能和元器件库;

EDA2.1.2 支路电流法和节点电压分析法仿真

EDA2.1.2 支路电流法和节点电压分析法仿真

2.1.3 叠加定理仿真 在线性唯一解的电路中, 在线性唯一解的电路中,由几个独立电源共同作用产生的响应等于各个独立 电源单独作用时产生相应响应的代数叠加 。 中的电压U 例:用叠加定理计算(a)中的电压 用叠加定理计算 中的电压
先使独立电流源单独作用, ① 先使独立电流源单独作用,电压源用短路代替 U′ =2.1V ② 再使独立电压源单独作用, 电流源用开路代替
练习:用节点电压法求图示电路的电流 练习:用节点电压法求图示电路的电流I
(a)
1 1 2 1 1 1 + U n1 − U n 2 − U n3 = − + 0.5 2 5 1 0.5 2 1 1 1 1 − + U n 2 − U n 3 = I U n1 + 0.5 1 0.5 1 1 1 1 1 − U n1 − U n 2 + + U n 3 2 20 20 10 U n 2 = 10
例:列出节点电压法方程
例:列出图中对应不同参考点的节点电压方程,并用万用表测量 列出图中对应不同参考点的节点电压方程,
(a)
(b)
1 1 1 1 10 20 1 − + + U n1 − U n 2 − U n 3 = 25 10 50 10 50 25 10 1 1 1 1 1 − U n1 + + + U n 2 − U n 3 = 0 25 20 25 20 40 1 1 1 20 1 − U n1 − U n 2 + + U n 3 = I + 10 20 20 10 10 U n 3 = 30
戴维南定理图示
例: 计算图 ( a )电桥中 R x 分别等于 0 该支路的电流

EDA技术中的常用软件与仿真工具介绍

技术是在电子CAD技术基础上发展起来的软件系统,是指以计算机为工作平台,融合了应用电子技术、计算机技术、信息处理及智能化技术的最新成果,进行电子产品的自动设计。

利用EDA工具,电子设计师可以从概念、算法、协议等开始设计电子系统,大量工作可以通过计算机完成,并可以将电子产品从设计、性能分析到设计出IC 版图或版图的整个过程在计算机上自动处理完成。

现在对EDA的概念或范畴用得很宽。

包括在、电子、通信、航空航天、化工、矿产、生物、医学、军事等各个领域,都有EDA的应用。

目前EDA技术已在各大公司、企事业单位和科研教学部门广泛使用。

例如在飞机过程中,从设计、性能及特性分析直到飞行模拟,都可能涉及到EDA技术。

本文所指的EDA技术,主要针对电子电路设计、PCB设计和IC设计。

EDA设计可分为系统级、电路级和物理实现级。

EDA常用软件EDA工具层出不穷,目前进入我国并具有广泛影响的EDA软件有:EWB、PSCE、、PCAD、Prol、ViewLogic、、Graphics、Synopsys、LSIlogic、、croSim 等等。

这些工具都有较强的功能,一般可用于几个方面,例如很多软件都可以进行电路设计与仿真,同时以可以进行PCB自动布局,可输出多种网表文件与第三方软件。

下面按主要功能或主要应用场合,分为电路设计与仿真工具、PCB设计软件、IC设计软件、PLD设计工具及其它EDA软件,进行简单介绍。

1、电子电路设计与仿真工具电子电路设计与仿真工具包括SPICE/PSPICE;EWB;;SystemView;MMICAD等。

下面简单介绍前三个软件。

(1)SPICE(Simulaon Prog with Integrated Circuit Emphasis)是由美国加州大学推出的电路分析仿真软件,是20世纪80年代世界上应用最广的电路设计软件,1998年被定为美国国家标准。

1984年,美国MicroSim公司推出了基于SPICE的微机版PSPICE(Peonal—SPICE)。

EDA仿真软件介绍

EDA仿真软件介绍EDA(Electronic Design Automation)是一类电子设计自动化软件,用于辅助电子产品的设计与仿真。

EDA软件帮助工程师在电子产品的设计过程中快速、准确地完成各种任务,从而提高设计效率和产品质量。

本文将介绍几款常见的EDA仿真软件,以及它们的特点和优势。

1. Cadence AllegroCadence Allegro是一款功能强大的EDA仿真软件。

它提供了完整的设计流程,包括原理图设计、PCB(Printed Circuit Board)布局和仿真。

Cadence Allegro可以帮助工程师快速设计复杂的电子电路,并进行各种信号和功耗仿真。

该软件具有直观的用户界面,易于学习和使用。

此外,Cadence Allegro还提供了丰富的库和模型,方便用户进行各种电路设计和仿真。

2. Mentor Graphics PADSMentor Graphics PADS是一款流行的EDA仿真软件,专门用于PCB设计和仿真。

它提供了直观的用户界面,支持多种设计工具和功能,如原理图设计、电路仿真、PCB布局和封装设计等。

此外,Mentor Graphics PADS还提供了强大的仿真和验证功能,可以帮助工程师检测电路的性能和可靠性问题,提高产品的质量。

3. Altium DesignerAltium Designer是一款专业的PCB设计和仿真软件。

它提供了完整的设计流程,包括原理图设计、PCB布局和仿真。

Altium Designer具有友好的用户界面,支持多种设计工具和功能,如自动布线、3D模拟和原理图捕捉等。

此外,Altium Designer还提供了丰富的库和模型,方便用户进行各种电路设计和仿真。

4. Ansys HFSSAnsys HFSS是一款强大的高频电磁场仿真软件。

它可以帮助工程师对射频(Radio Frequency)和微波(Microwave)电路进行仿真,包括天线设计、滤波器设计和射频电路设计等。

EDA基础总结

E D A基础总结综述部分1.EDA的中文全称为电子设计自动化,英文全名为Electronic Design Automation;2.EDA平台常用的两种输入电路的方法是:电路原理图输入法、HDL输入法;3.EDA平台工作流程:电路输入、综合优化、功能仿真、布局布线、门级仿真;数字电路部分1.EDA中常用的仿真语言为Verilog和VHDL;2.VHDL其英文全名为VHSIC Hardware Description Language,而VHSIC则是Very HighSpeed Intergeraterd Circuit的缩写词,意为甚高速集成电路,故VHDL其准确的中文译名为甚高速集成电路的硬件描述语言;3.Verilog HDL其英文全名为Verilog Hardware Decription Language,HDL中文译名为硬件描述语言;4.Verilog和VHDL的比较共同点:能形式化地抽象表示电路的行为和结构;支持逻辑设计中层次与范围的描述;可借用高级语言的精巧结构来简化电路行为的描述;具有电路仿真与验证机制以保证设计的正确性;支持电路描述由高层到低层的综合转换;硬件描述与实现工艺无关;便于文档管理;易于理解和设计重用;不同点:Verilog在系统级抽象方面略差,VHDL在门级开关电路方面略差;5.软核、固核和硬核软核:功能经过验证的、可综合的、实现后电路结构总门数在5000门以上的Verilog 模型;固核:在某一种现场可编程门列器件上实现的经验证是正确的,且总门数在5000门以上的电路结构编码文件;硬核:在某一种专用集成电路工艺的器件上实现的,经验证是正确的,且总门数在5000门以上的电路结构版图掩膜;6.自顶向下Top Down设计7.自底向上Down Top设计8.名词解释:ASIC:Application Specific Integrated Circuit,专用集成电路;FPGA:Field Programmable Gate Array,现场可编程门阵列;PLD:Programmable Logic Device,可编程逻辑器件;Verilog编程题:数据比较器2位//数据比较器module compare equal, a, b;input a,b;output equal;reg equal;always a or bif a == bequal = 1;elseequal = 0;endmodule//数据比较器测试代码`timescale 1ns/1ns`include "./1-1.v"module t;reg a,b;wire equal;initialbegina=0;b=0;100 a=0; b=1;100 a=1; b=1;100 a=1; b=0;100 a=0; b=0;100 $stop;endcompare m.equalequal, .aa, .bb; endmodule数据比较器8位module compare8equal, a, b;input 7:0a, b;output equal;reg equal;always a or bif a > bbeginequal = 1;endelsebeginequal = 0;endendmodule分频器module half_clkreset, clk_in, clk_out; input clk_in, reset;output clk_out;reg clk_out;always posedge clk_inbeginifreset clk_out = 0;else clk_out = ~clk_out;endendmodule10M时钟分频为500Kmodule fdivision RESET, MB, KB;input MB, RESET;output KB;reg KB;reg 7:0 j;always posedge MBif RESETbeginKB <= 0;j <= 0;endelsebeginif j == 19begin j <= 0;KB <= ~KB;endelsej <= j+1;endendmodule译码电路`define plus 3'd0`define minus 3'd1`define band 3'd2`define bor 3'd3`define unegate 3'd4module aluout, opcode, a, b;output7:0 out;reg7:0 out;input2:0 opcode;input7:0 a,b;always opcode or a or bbegincaseopcode`plus: out = a + b;`minus: out = a - b;`band: out = a & b;`bor: out = a | b;`unegate: out = ~a;default: out = 8'hx;endcaseendendmodule八路数据选择器module selecting8addr, in1, in2, in3, in4, in5, in6, in7, in8, dataout, reset; input 2:0 addr;input 3:0 in1,in2,in3,in4,in5,in6,in7,in8;input reset;output 3:0 dataout;reg 3:0 dataout;always addr or in1 or in2 or in3 or in4 or in5 or in6 or in7 or in8 or reset beginifresetcaseaddr3'b000: dataout = in1;3'b001: dataout = in2;3'b010: dataout = in3;3'b011: dataout = in4;3'b100: dataout = in5;3'b101: dataout = in6;3'b110: dataout = in7;3'b111: dataout = in8;endcaseelsedataout = 0;endendmodule逻辑运算电路module tryfunctclk, n, result, reset;output31:0 result;input3:0 n;input reset, clk;reg31:0 result;always posedge clkbeginif resetresult <=0;elsebeginresult <= nfactorialn/n2+1;endendfunction 31:0 factorial;input 3:0 operand;reg 3:0 index;beginfactorial = operand 1:0;for index = 2; index <= operand; index = index + 1 factorial = index factorial;endendfunctionendmodulemodule tryfunctclk, n, result, reset;output31:0 result;input3:0 n;input reset, clk;reg31:0 result;always posedge clkbeginif resetresult <=0;elsebeginresult <= nfactorialn/n2+1;endendfunction 31:0 factorial;input 3:0 operand;reg 3:0 index;beginfactorial = operand 1:0;for index = 2; index <= operand; index = index + 1 factorial = index factorial;endendfunctionendmodule高速排序组合逻辑module sort4ra, rb, rc, rd, a, b, c, d;output3:0 ra, rb, rc, rd;input3:0 a, b, c, d;reg3:0 ra, rb, rc, rd;reg3:0 va, vb, vc, vd;always a or b or c or dbegin{va, vb, vc, vd} = {a, b, c, d};sort2va, vc;sort2vb, vd;sort2va, vb;sort2vc, vd;sort2vb, vc;{ra, rb, rc, rd} = {va, vb, vc, vd};endtask sort2;input3:0x, y;reg3:0 tmp;if x > ybegintmp = x;x = y;y = tmp;endendtaskendmodule检测5位二进制序列10010module seqdetx, z, clk, rst, state;input x, clk, rst;output z;output2:0 state;reg2:0 state;wire z;parameter IDLE = 'd0, A = 'd1, B = 'd2, C = 'd3, D = 'd4, E = 'd5, F = 'd6, G = 'd7; assign z = state == E && x == 0 1:0;always posedge clkif rstbeginstate <= IDLE;endelsecase stateIDLE:if x == 1beginstate <= A;endA:if x == 0beginstate <= B;endB:if x == 0beginstate <= C;endelsebeginstate <= F;endC:if x == 1beginstate <= D;endelsebeginstate <= G;endD:if x == 0beginstate <= E;endelsebeginstate <= A;endE:if x == 0beginstate <= C;endelsebeginstate = A;endF:if x == 1beginstate <= A;endelsebeginstate <= B;endG:if x == 1beginstate <= F;enddefault:state = IDLE;endcaseendmodule模拟电路部分1.目前,集成电路最常用的材料是单晶硅;2.集成电路的生产由设计、制造、封装三部分组成;3.集成电路中基片主要制作工艺为:光刻、扩散、注入、刻蚀、键合;4.集成电路中基片的制造步骤为:光刻、扩散、注入、刻蚀;5.衡量集成电路产业水平的两个主要参数为:硅晶圆片直径和光刻精度特征尺寸;这两个参数在业界达到的水平为:硅晶圆片直径12英寸300mm,光刻精度0.13um;主流水平为:硅晶圆片直径200mm,光刻精度0.18um;6.模拟电路中常用的仿真算法是SPICE,英文全名为Simulation Program with IntegratedCircuit Emphasis;7.世界上设计EDA软件实力最强的两个公司为Cadence和Synopsys;其中,Cadence的优势为电路布局布线,Synopsys的优势为逻辑综合仿真;8.WorkBench是加拿大IIT公司推出的电子线路仿真软件;它可以对模拟、数字和模拟/数字混合电路进行仿真,克服了传统电子产品的设计受实验室客观条件限制的局限性,用虚拟的元件搭接各种电路,用虚拟的仪表进行各种参数和性能指标的测试;特点如下:1系统集成度高,界面直观,操作方便;2具备模拟、数字及模拟/数字混合电路仿真;3提供较为丰富的元器件库;4电路分析手段完备;5输出方式灵活;6兼容性好;9.SPICE语言举例:EXAMPLE 文件名任意名都可以但必须要有VCC 8 0 12 电源正极接于节点8 负极接于0 电压为12VVEE 0 9 12 电源正极接于节点0,负接接于节点9,电压为12V;VIN 1 0 AC 1 SIN0 0.1 5MEG 信号源VIN 接于1 和接点0;交流1V 进行交流分析同时加一个正弦信号直流偏置为0,振幅为0.1V频率为5M的交流信号源,进行瞬态分析; RC1 8 4 10K 电阻RC1 分别接于节点8 节点4;阻值为10K;RC2 8 5 10K 电阻RC2 分别接于节点8 节点5;阻值为10K;RS 2 1 1K 电阻RS 分别接于节点 1 节点0;阻值为1K;RS1 8 7 20K 电阻RS1 分别接于节点8 节点7 阻值为20K;RS2 3 0 1K 电阻RS2 分别接于节点3 节点0 阻值为1K;Q1 4 2 6 MOD1 三极管Q1 CBE 分别接于节点 4 2 6 模型为MOD1Q2 5 3 6 MOD1 三极管Q2 CBE 分别接于节点 5 3 6 模型为MOD1Q3 6 7 9 MOD1 三极管Q3 CBE 分别接于节点 6 7 9 模型为MOD1Q4 7 7 9 MOD1 三极管Q4 CBE 分别接于节点 7 7 9 模型为MOD1.OP 求出直流工作点.本电路共有9个节点;温度值为27度;.DC VIN -.15 .15 .01 DC为直流分析语句,分析输入电压从-0.15V 到0.15V扫描特性,每0.1V作一次分析;.PRINT DC V4 V5 .PRINT 为打印语句,其中DC是打印直流内容,这里规定打印节点4和5上的电位,既相对地参考点的电压随输入的变化关系;.PLOT DC V4 V5 .PLOT为绘图语句,其中DC表示绘制直流分析的传输特性,说明是绘制V4 V5的输出电压和VIN关系曲线;.TF V5 VIN .TF是转移函数分析语句,该句表示计算直流分析时,小信号输出电压V5和输入电压VIN的转移函数值,输入电阻和输出电阻;.AC DEC 10 25K 250MEG .AC是交流分析语句,是在规定的频率范围内从25K到250M进行频域分析DEC表示按数量级变化,10表示每一数量级中取的分析点数目; .PRINT AC VM5 VP5 打印AC分析VM5VP5的取点数;.PLOT AC VM5 VP5 绘制AC分析VM5VP5的取点数;.TRAN 4N 100N 1N .TRAN是瞬态分析语句,并规定了打印或绘图时间增量为4N秒,计算终止时间为100N秒,打印或绘图开始时间1NS;.PRINT TRAN V5 V4 .打印出4.5点的电压随时间变化;.PLOT TRAN V5 V4 .绘图出节点4.5的电压随时间变化;.END 结束语句...一定要有;。

EDA仿真功能及应用介绍

EDA仿真功能及应用介绍1、仿真的目的:在软件环境下,验证电路的行为和设想中的是否一致。

2、仿真的分类:a) 功能仿真:在RTL层进行的仿真,其特点是不考虑构成电路的逻辑和门的时间延迟,着重考虑电路在理想环境下的行为和设计构想的一致性;b) 时序仿真:又称为后仿真,是在电路已经映射到特定的工艺环境后,将电路的路径延迟和门延迟考虑进对电路行为的影响后,来比较电路的行为是否还能够在一定条件下满足设计构想。

3、功能仿真的目的:a) 设计出能工作的电路:因此功能仿真不是一个孤立的过程,其和综合、时序分析等形成一个反馈工作过程,只有这个过程收敛,各个环节才有意义。

而孤立的功能仿真通过是没有意义的,如果在时序分析过程中发现时序不满足需要更改代码,则功能仿真必须从新进行。

因此正确的工作流程是:b)代码排错:功能仿真是代码排错的最重要的手段之一。

4、 modelsim的高级功能:Code Coveragea) 代码覆盖率是验证激励是否完备,检验代码质量的一个重要手段。

测试激励的代码覆盖率至少要达到95%以上,才能基本认为代码在逻辑上是通过质量控制的,才能进入综合步骤;b) 代码覆盖率是保证高质量代码的必要条件,但却不是充分条件。

即便代码行覆盖和分支覆盖都能够达到100%,也不能肯定的说代码已经得到100%的验证。

除非所有的分支覆盖都能够进行组合遍历。

c) 在大的设计中,如果想通过一个激励就验证完一个设计或者模块是不现实的。

一方面是从逻辑功能上很难做到;另外一方面是因为如果在一个激励中包括了各种情况,整个仿真过程的速度会随着计算机内存的消耗而成线性下降,效率低下。

d) 通常的做法是每一个激励只验证电路功能的某个方面。

整个电路的功能验证由数个激励共同完成。

在这种验证方法中代码覆盖率更显重要,因为可以通过代码覆盖率来控制激励对功能的覆盖程度。

e) modelsim的Code coverage不但能记录各个激励对代码的“行覆盖”和“分支覆盖”,而且能够将各个激励的覆盖记录进行合并,做到对覆盖率的全面监测。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档