cadenceic基础仿真
cadenceic基础仿真经典实用
• 选择分析模式:
•cadence ic 基础仿真
• 电路中有两个电压源,一个用作VDD,另一个用作信号输入 Vin
V in
•cadence ic 基础仿真
• 输出的选择
•cadence ic 基础仿真
• 分析一阶共源放大器获得的波形图 • 波形图显示了当Vin 从0->2V 时输出的变化
•cadence ic 基础仿真
• 下图为以温度为变量进行直流分析时候的波形图
•cadence ic 基础仿真
带隙基准的温度参考
•cadence ic 基础仿真
•cadence ic 基础仿真
•cadence ic 基础仿真
•cadence ic 基础仿真
实例5 一阶放大器
共源的一阶放大器
• 下图显示了为仿真产生的输出日志文件 •
•cadence ic 基础仿真
• 产生的波形如下所示:
•cadence ic 基础仿真
• 可以通过设定坐标轴来获得电流—电压曲线 • 按以下方式进行: Axis-> X Axis
•cadence ic 基础仿真
• 按下图所示,将X轴设定为二极管上的电压 降
•cadence ic 基础仿真
• 在改变了X轴之后,波形应如下图所示:
•cadence ic 基础仿真
• 由于我们只对二极管的伏安特性曲线感兴趣,因此我们可以只选择流 经二极管的电流与其两端压降。新的曲线如下图所示:
•cadence ic 基础仿真
实例2 双极型晶体管的伏安特性曲线
• 首先为双极型晶体管电路新建一个cell view • 利用原理图编辑所需要的仿真电路
然后单击ESC。 • 可以得到如下图所示的一族伏安特性曲线
cmos模拟集成电路设计与仿真实例——基于cadence ic617
cmos模拟集成电路设计与仿真实例——基于cadence ic617CMOS(互补金属氧化物半导体)模拟集成电路是现代电子设备中常见的一种设计和制造技术。
在本文中,我们将介绍基于Cadence IC617的CMOS模拟集成电路设计和仿真实例,以便读者了解CMOS电路设计的基本流程和重要步骤。
步骤1:设计电路首先,我们需要确定所设计的电路的功能和性能指标。
例如,我们可以设计一个运算放大器电路来放大输入的电压信号。
然后,我们可以使用Cadence IC617中的设计工具创建原始的电路图。
在Cadence IC617中,我们可以选择所需的电路元件,如MOS管、电容器和电阻器,并将它们放置在电路图中。
然后,我们可以将它们连接起来,以实现所需的电路功能。
在设计电路时,我们需要注意元件的尺寸和位置,以及电路的布局,以确保性能和可靠性。
步骤2:参数化模型完成电路设计后,接下来我们需要为每个元件选择适当的参数化模型。
这些模型是描述元件行为和特性的数学表达式。
例如,我们可以选择MOS管的Spice模型,该模型可以描述其转导和容性特性。
在Cadence IC617中,我们可以通过浏览模型库,选择适合我们电路的元件模型。
然后,我们可以将这些模型与电路元件关联起来,以便在仿真过程中使用。
步骤3:电路布局完成参数化模型的选择后,我们需要进行电路布局。
电路布局是将电路元件实际放置在芯片上的过程。
在Cadence IC617中,我们可以使用布局工具来配置电路元件的位置和尺寸。
在电路布局过程中,我们需要考虑元件之间的互连和布线。
我们可以使用布线工具来连接元件的引脚,并确保布线符合规定的电气规范。
同时,我们还需要遵循布线规则,以确保信号传输的稳定性和可靠性。
步骤4:参数抽取和后仿真完成电路布局后,我们可以进行参数抽取和后仿真。
参数抽取是从电路布局中提取出元件的真实特性和物理参数的过程。
在Cadence IC617中,我们可以使用抽取工具来自动提取电路布局中各个元件的参数。
cadence ic 基础仿真PPT
• 设置分析的模式
24
• 点击Simulation-> Netlist and Run 即可进行仿真。 • 仿真结束后可以进行如下图所示的参变量分析,在单一的波形窗口中
观察多条曲线
25
• 在参量分析窗口选择Analysis -> Start • 当仿真结束后选择Results -> Direct Plot -> DC 并且单击v1电压源,
然后单击ESC。 • 可以得到如下图所示的一族伏安特性曲线
26
实例3 MOS 电容器件电容-电压曲 线的分析
27
• 按下图的方式进行分析模式,器件参数等的设置
28
29
• 点击Simulation -> Netlist and Run 运行仿真
•
30
• 选择参数分析
31
• 设置参数分析
32
59
• Vin vs Vout 的仿真波形曲线如下图所示:
60
实例7 差分对中的高频率响应
• 为了估计以动态电流镜为负载的差分对的频率响应特征,绘制原理图 如下:
61
• 设置暂态分析模式 • 设置网线为输入网线和输出网线
62
63
• 仿真后获得的波形图如下
64
实例8 差分对的噪声分析
下图所示的为1/f 噪声和输入参考噪声的模型
65
• 选择暂态分析模式 选择的网线为输入和输出网线
66
• 暂态分析:
67
仿真后获得的波形图象如下
68
69
深入浅出Cadence IC Tool
--模拟集成电路设计工 具的使用
1
运行 Cadence
当Cadence工具的运行环境设定好之后,就可以开始使用进行它工作了。 你可以通过输入一下命令从你的工作目录中运行Cadence
cadenceic教程schematic及其仿真
cadenceic教程schematic及其仿真第一章. Cadence cdsSPICE的使用说明Cadence cdsSPICE 也是众多使用SPICE内核的电路模拟软件之一。
因此他在使用上会有部分同我们平时所用到的PSPICE相同。
这里我将侧重讲一下它的一些特殊用法。
§ 1-1 进入Cadence软件包一.在工作站上使用在命令行中(提示符后,如:ZUEDA22>)键入以下命令icfb&↙(回车键),其中& 表示后台工作。
Icfb调出Cadence软件。
出现的主窗口如图1-1-1所示:图 1-1-1Candence主窗口二.在PC机上使用1)将PC机的颜色属性改为256色(这一步必须);2)打开Exceed软件,一般选用xstart软件,以下是使用步骤:start method选择REXEC(TCP-IP),Programm选择Xwindow。
Host选择10.13.71.32 或10.13.71.33。
host type选择sun。
并点击后面的按钮,在弹出菜单中选择command tool。
确认选择完毕后,点击run!3)在提示符ZDASIC22> 下键入:setenv DISPLAY 本机ip:0.0(回车)4)在命令行中(提示符后,如:ZUEDA22>)键入以下命令icfb&↙(回车键)即进入cadence中。
出现的主窗口如图1-1-1所示。
以上是使用xstart登陆cadance的方法。
在使用其他软件登陆cadance时,可能在登录前要修改文件.cshrc,方法如下:在提示符下输入如下命令:vi .cshrc↙ (进入全屏幕编辑程序vi)将光标移至setevn DISPLAY ZDASIC22:0.0 处,将“ZDASIC22”改为PC机的IP,其它不变(重新回到服务器上运行时,还需按原样改回)。
改完后存盘退出。
然后输入如下命令:source .cshrc↙ (重新载入该文件)以下介绍一下全屏幕编辑程序vi的一些使用方法:vi使用了两种状态,一是指令态(Command Mode),另一是插入态(Insert Mode)。
(参考资料)Cadence的使用与基本仿真教程
Cadence的使用与基本仿真教程2014/11/9模拟集成电路设计课程实验1Outline启动Cadence新建Library 与Cell View常用快捷键常用库常用库、、器件基本仿真基本仿真指导指导仿真练习a)CS,CG,SF 电路仿真b)差分差分对电路仿真对电路仿真c)CS-CG 电路仿真2014/11/9模拟集成电路设计课程实验2启动Cadence在桌面上鼠标右击在桌面上鼠标右击,,open terminal >cd ~(回到home 目录下)>icfb &启动Cadence 。
上课时部分同学遇到问题是由于没有在home 目录下打开Cadence 2014/11/9模拟集成电路设计课程实验3新建LibraryFile>new>library2014/11/9模拟集成电路设计课程实验4新建Library起个名字>Don’t need a techfile>OK2014/11/9模拟集成电路设计课程实验5打开Library ManagerTools>Library Manager2014/11/9模拟集成电路设计课程实验6显示器件分类Show Category可以显示器件的分类2014/11/9模拟集成电路设计课程实验7显示器件分类例如例如::在tsmc018rf 库中的分类有库中的分类有::电容电容、、电阻电阻、、MOS 管等等管等等。
2014/11/9模拟集成电路设计课程实验8新建Cell ViewFile>New>Cell View2014/11/9模拟集成电路设计课程实验9新建Cell View将新建的Cell View 设定在之前新建的Library 下>起个名字>OK 2014/11/9模拟集成电路设计课程实验10快捷键快捷键::i2014/11/9模拟集成电路设计课程实验11快捷键快捷键::w2014/11/9模拟集成电路设计课程实验12快捷键快捷键::c2014/11/9模拟集成电路设计课程实验13快捷键快捷键::q2014/11/9模拟集成电路设计课程实验14快捷键快捷键::r2014/11/9模拟集成电路设计课程实验15常用库常用库、、器件2014/11/9模拟集成电路设计课程实验16搭建反相器仿真电路照图搭建反相器仿真电路2014/11/9模拟集成电路设计课程实验17设置PMOS参数:参数:设置PMOS参数将w设置为6μm2014/11/9模拟集成电路设计课程实验18设置电压源vpulse 参数设置vpulse 参数参数::AC magnitude :1DC voltage:Vdc (设为变量Vdc )Voltage 1:0Voltage 2:1.8Pulse width :1nPeriod:2n注意注意::AC 参数的设置不会影响直流工作点DC voltage 决定直流工作点决定直流工作点;;下面四个参数设置时域波形,不影响直流不影响直流。
cadence仿真工具介绍1
( TB ( TO ( GT ( W1 ( A1 ( W2 ( A2 ( W3 ( A3
"nwell" ) "diff" ) "poly" ) "cut" ) "metal" ) "cut" ) "metal" ) "cut" ) "metal" )
COPYRIGHT FOR ZHOUQN
COPYRIGHT FOR ZHOUQN
原理图编辑窗口结构分类编辑命令菜单常用快捷命令菜单1instance调用库单元cellview浏览器librarycellviewnameoption阵列行数列数旋转x镜像y镜像variable如果有2addpin调用端口pinpinnames总线命名方式总线名放置方式pin的旋转和镜像3addwire连线narroworwide4wirename连线命名连线规则连线粗细连线名称连线名称的相关属性10属性参数修改9undo11chechandsave12save5放大缩小8删除6stretch拉动保持连接7copy从分类菜单中可以看到命令的快捷键和许多其它命令仿真环境设置版图设计基本过程和要求在一定工艺下根据电路的要求依据版图设计规则设计每个器件的图形并完成排版布线形成一套完整的电路光刻掩膜版图形
COPYRIGHT FOR ZHOUQN
版图主要编辑命令 (2)修改类命令 ) Undo, Redo , Move, Copy, 拉动,改变形状, 拉动,改变形状, 删除,查找, 删除,查找, 合并图形, 合并图形, 制作单元, 制作单元, 打散单元, 打散单元, 劈切图形, 劈切图形, 胀缩图形, 胀缩图形, 旋转图形等等。 旋转图形等等。
教学课件Cadence电路仿真
输入工作目录名称
选择原理图编辑工具
原理图绘制软件界面
使用快捷键”i” ,添加元件
选择MOS管
连线
1.新建工作目录
2.绘制原理图 3.仿真条件设置 4.仿真结果输出与保存
பைடு நூலகம் 晶体管特性仿真
Tools->Analog Environment
仿真环境设置界面
变量编辑
分析类型选择
仿真条件设置
1.新建工作目录
2.绘制原理图 3.仿真条件设置 4.仿真结果输出与保存
执行仿真
Simulation->Netlist and Run
选择输出结果
输出特性曲线
1.File->Save as Image
2.输入目录: /mnt/hgfs/C/filename,并保存
3.在windows xp系统下的C盘可以看到所存的文件.
Cadence 电路仿真
1.新建工作目录
2.绘制原理图 3.仿真条件设置 4.仿真结果输出与保存
虚拟机与主机共享设置.
File->New->Library
建立工作目录lab1
选择smic18mmrf
1.新建工作目录
2.绘制原理图 3.仿真条件设置 4.仿真结果输出与保存
File->New->Cell view
CADENCE仿真流程
CADENCE仿真流程1.设计准备在进行仿真之前,需要准备好设计的原理图和布局图。
原理图是电路的逻辑结构图,布局图是电路的物理结构图。
此外,还需要准备好电路的模型、方程和参数等。
2.确定仿真类型根据设计需求,确定仿真类型,包括DC仿真、AC仿真、时域仿真和优化仿真等。
DC仿真用于分析直流电路参数,AC仿真用于分析交流电路参数,而时域仿真则用于分析电路的时间响应。
3.设置仿真参数根据仿真类型,设置仿真参数。
例如,在DC仿真中,需要设置电压和电流源的数值;在AC仿真中,需要设置信号源的频率和幅度;在时域仿真中,需要设置仿真的时间步长和仿真时间等。
4.模型库选择根据设计需求,选择合适的元件模型进行仿真。
CADENCE提供了大量的元件模型,如晶体管、二极管、电感、电容等。
5.确定分析类型根据仿真目标,确定分析类型,例如传输功能分析、噪声分析、频率响应分析等。
6.仿真运行在仿真运行之前,需要对电路进行布局和连线。
使用CADENCE提供的工具对电路进行布局和连线,并生成物理设计。
7.仿真结果分析仿真运行后,CADENCE会生成仿真结果。
利用CADENCE提供的分析工具对仿真结果进行分析,观察电路的性能指标。
8.优化和修改根据仿真结果,对电路进行优化和修改。
根据需要,可以调整电路的拓扑结构、参数和模型等,以改进电路的性能。
9.再次仿真和验证根据修改后的电路,再次进行仿真和验证,以确认电路的性能指标是否得到改善。
最后需要注意的是,CADENCE仿真流程并不是一成不变的,根据具体的设计需求和仿真目标,流程可能会有所调整和修改。
此外,CADENCE还提供了许多其他的工具和功能,如电路板设计、封装设计、时序分析等,可以根据需要进行使用。
CADENCE仿真步骤
CADENCE仿真步骤
Cadence是一款电路仿真软件,它可以帮助设计师创建、分析和仿真
电子电路。
本文将介绍Cadence仿真的步骤。
1.准备仿真结构:第一步是准备仿真结构。
我们需要编写表示电路的Verilog或VHDL代码,然后将它们编译到Cadence Integrated Circuit (IC) Design软件中。
这会生成许多文件,包括netlist和verilog等文件,这些文件将用于仿真。
2.定义仿真输入输出信号:接下来,我们需要定义仿真的输入信号和
输出信号。
输入信号可以是电压、电流、时间和其他可测量的变量。
我们
需要定义输入信号的模拟和数字值,以及输出信号的模拟和数字值。
3.定义参数:参数是仿真中用于定义仿真设计的变量,这些变量可以
是仿真中电路的物理参数,如电阻、电容、时延、输入电压等,也可以是
算法参数,如积分步长等。
4.运行仿真:在所有参数和信号都设置完成后,我们可以运行仿真。
在运行仿真之前,可以使用自动参数检查来检查参数是否正确。
然后,使
用“开始仿真”命令即可启动仿真进程。
5.结果分析:在仿真结束后,我们可以使用结果分析器来查看输出信
号的模拟和数字值,以及仿真中电路的其他特性,如暂态分析、稳态分析、功率分析等。
以上就是Cadence仿真步骤。
cadence原理图仿真
cadence原理图仿真首先,我们来了解一下cadence原理图仿真的基本原理。
在进行原理图仿真时,我们需要将电路设计转换为一个数学模型,然后利用计算机软件对这个模型进行求解,得到电路的各种参数和性能指标。
这个数学模型通常是由电路的基本元件和它们之间的连接关系构成的,通过建立节点方程和元件特性方程,可以得到一个包含了电路各种参数的数学方程组。
然后利用数值计算方法对这个方程组进行求解,就可以得到电路的各种性能指标,比如电压、电流、功率等。
在cadence原理图仿真中,我们通常会使用一些常见的仿真工具,比如SPICE仿真器。
SPICE是一种通用的电路仿真工具,它可以对各种类型的电路进行仿真,包括模拟电路、混合信号电路和射频电路等。
通过建立电路的原理图,并在仿真器中设置各种参数和仿真条件,就可以对电路进行仿真分析,得到电路的各种性能指标。
在进行cadence原理图仿真时,我们需要注意一些关键的仿真参数和设置。
首先是仿真的时间步长和仿真的时间范围,这两个参数会直接影响到仿真的精度和速度。
通常情况下,我们需要根据电路的特性和仿真的要求来合理地设置这两个参数,以保证仿真结果的准确性。
另外,还需要注意仿真的激励信号和仿真的分析类型,比如直流分析、交流分析、脉冲分析等,这些参数会直接影响到仿真的结果和分析的内容。
除了基本的仿真参数设置,我们还需要注意一些特殊情况下的仿真技巧。
比如在进行混合信号电路的仿真时,需要考虑模拟部分和数字部分之间的接口和耦合关系,以保证整个系统的稳定性和正确性。
另外,在进行射频电路的仿真时,需要考虑传输线的特性和电磁场的影响,以保证仿真结果的准确性和可靠性。
总的来说,cadence原理图仿真是电子设计中非常重要的一环,它可以帮助工程师们验证电路设计的正确性和稳定性,提前发现潜在的问题,从而节省时间和成本。
通过合理地设置仿真参数和注意一些特殊情况下的仿真技巧,可以得到准确可靠的仿真结果,为电路设计和调试提供有力的支持。
Cadence仿真流程
Cadence仿真流程Cadence 仿真流程第⼀章在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 ⽂件。
cadence仿真步骤
CDNLive! Paper – Signal Integrity (SI) for Dual Data Rate (DDR) InterfacePrithi Ramakrishnan iDEN Subscriber Group Plantation, FlPresented atIntroductionThe need for Signal Integrity (SI) analysis for printed circuit board (PCB) design has become essential to ensure first time success of high-speed, high-density digital designs. This paper will cover the usage of Cadence’s Allegro PCB SI tool for the design of a dual data rate (DDR) memory interface in one of Motorola’s products. Specifically, this paper will describe the following key phases of the high-speed design process: Design set-up Pre-route SI analysis Constraint-driven routing Post-route SI analysisDDR interfaces, being source synchronous in nature, feature skew as the fundamental parameter to manage in order to meet setup and hold timing margins. A brief overview of source synchronous signaling and its challenges is also presented to provide context.Project BackgroundThis paper is based on the design of a DDR interface in an iDEN Subscriber Group phone that uses the mobile Linux Java platform. The phone is currently in the final stages of system and factory testing, and is due to be released in the market at the end of August 2007 for Nextel international customers. The phone has a dual-core custom processor with an application processor (ARM 11) and a baseband processor (StarCore) running at 400MHz and 208MHz respectively. The processor has a NAND and DDR controller, both supporting 16-bit interfaces. The memory device used is a multi-chip package (MCP) with stacked NAND (512Mb) and DDR (512Mb) parts. The NAND device is run at 22MHz and the DDR at 133MHz. The interface had to be supported over several memory vendors, and consequently had to account for the difference in timing margins, input capacitances, and buffer drive strengths between different dies and packages. As customer preference for smaller and thinner phones grows, the design and placement of critical components and modules has become more challenging. In addition to incorporating various sections such as Radio Frequency (RF), Power Management, DC, Audio, Digital ICs, and sub-circuits of these modules, design engineers must simultaneously satisfy the rigid placement requirements for components such as speakers, antennas, displays, and cameras. As such, there are very few options and little flexibility in terms of placement of the components. This problem was further accentuated by the fact that several layers of the 10 layer board (3-4-3 structure with one ground plane and no power planes) were reserved for power, audio, and other high frequency (RF) nets, leaving engineers with few layers to choose from for digital circuitry.Figure 1. Memory Interface routes With the DDR interface data switching at 266MHz, we had very tight margins — 600ps for data/DQS lines, 280ps for the address lines, and 180ps for control lines. However, with the NAND interface we had larger margins that were on the order of a few tens of nanoseconds. In these situations, choosing a higher drive strength and using terminators of appropriate values (to meet rise times and avoid overshoot/undershoot) has become a common practice in DDR designs. However, due to the lack of space on the board, we were not in a position to use terminators. Therefore, we used programmable buffers on our processor, and with the help of Cadence SI tools were able to fine-tune the design. Our group migrated from using Mentor Graphics to Cadence SI during this project. As one might expect, this made the task of designing a high speed DDR interface even more challenging. To help overcome this, we worked extensively with Cadence Services, where Ken Willis supported us on the SI portion of the design.The Source Synchronous Design ChallengeBefore discussing the specifics of the Motorola DDR interface, a brief overview of source synchronous signaling is provided here for context. Historically, digital interfaces have utilized “common clock” signaling, as shown in the figure below.Clock DriverTcoInterconnect Delay D0 D1 D2 D0 D1 D2DriveReceiveFigure 2. Common clock designWith common clock interfaces, the clock signal is provided to the driving and receiving components from an external component. The magnitude of the driver’s Tco (time from clock to output valid) and the interconnect delay between the driving and receiving components becomes a limiting factor in the timing of the interface. From a practical standpoint, it becomes increasingly challenging to implement interfaces of this type above several hundred megahertz. In order to accommodate requirements for faster data rates, source synchronous signaling emerged as the new paradigm. This is illustrated in the figure below.StrobeD 0 D 1D 0 D 1DriveReceiveFigure 3. Source synchronous design.In a source synchronous interface, the “clock” is provided locally by the driving component, and is generally called a “strobe” signal. The relationship between the strobe and its associated data bits is known as it leaves the driving component, with setup and hold margins pre-established as the signals are put onto the bus.TsetupTholdFigure 4. Timing diagram. This essentially takes the driver’s Tco as well as the magnitude of the interconnect delay between the driving and receiving chip out of the timing equation altogether. The timing challenge then becomes to manage the skew between the data and strobe signals such that the setup and hold requirements at the receiving end are still met.Technical ApproachThe general technical approach used in this project can be broken down into the following key phases of the high-speed design process: Design set-up Pre-route SI analysis Constraint-driven routing Post-route SI analysisFirst the PCB design database is set up to enable analysis with Allegro PCB SI. Before routing is performed, initial trade-offs are examined at the placement stage, and constraints are captured to facilitate constraint-driven routing. When routing is completed, detailed analysis is performed, interconnect delays extracted, and setup/hold margins are computed. Any adjustments required are fed back to the layout designer, and the postroute analysis is repeated. This basic process is diagrammed below.Design Setup SI Models Pre-Route AnalysisStartConstraints RoutingPost-Route AnalysisnoMargins OK?yes EndFigure 5. SI design process flow. Detail on the major design phases are provided in the subsequent sections. Design Setup By virtue of its direct integration with the Allegro PCB layout database, Allegro SI analysis requires that the design be set up to facilitate the automated extraction, circuit building, netlisting, simulation, and analysis that it performs. This essentially means adding the needed intelligence to the physical Allegro database that allows the tool to do its job. This setup involves the following: Cross section DC nets Device definitions SI models By definition, SI analysis involves the modeling of interconnect parasitics. In order to do this accurately, the tool needs to know the properties and characteristics of the materials used in the PCB stack-up. This information is defined in the Cross Section form, as shown below.It is crucial to get this data correct, as it will be fed to the 2D field solver to model interconnect parasitics during the extraction process. The best source for this detailed information is generally from the PCB fabricator. Layer thickness, dielectric constant, and loss tangent are all critical parameters for the cross section definition. In order for circuit extraction to be done properly, the tool needs to know about DC nets in the design, and what their associated voltage levels are. This accomplishes two main things in the setup; a) enables voltage sources to be injected properly in the extracted circuits, and b) avoids having the tool needlessly trying to extract extremely large DC nets, and hanging up the analysis process. Take the example of a parallel resistor termination. Allegro SI will encounter the resistor as it walks the signal net to be extracted. The tool will look up the SI model assigned to this resistor, splice in the resistor subcircuit, and continue extracting whatever is on the other side of the resistor. If this is a large DC net (ex. VTT), the desire is for the tool to put a voltage source at the 2nd resistor pin, complete the circuit, and simulate the signal. To do this properly, the tool relies on a VOLTAGE property to exist on the DC net, with a numeric value defined. In the absence of the VOLTAGE property, the tool will simply continue to extract, which in the case of a 2000 pin ground net, would be a large waste of computational time. To identify DC nets, clicking “Logic > Identify DC Nets” will spawn the following form.All DC nets in the design should be identified, to fully optimize SI analysis. These can be identified up front in the schematic, as well as in the physical layout as shown here. The next step in the design set-up process is to verify that the logical “CLASS” and “PINUSE” attributes for the devices in the design are defined appropriately. These attributes originate from the schematic symbol libraries and are passed into the Allegro physical layout environment. In an ideal methodology, these libraries would be defined properly and would require no edits. However, this is not always the case, and as these attributes have a bearing on the behavior of the SI analysis, it is worth mention here. The “CLASS” attribute is used to distinguish between different types of components in the PCB design. Legal values of “CLASS” are listed below: IC – This is used for digital integrated circuits, which contain drivers and/or receivers. These types of components are modeled with an SI model of the type “IbisDevice”. When the automated circuit building algorithms in Allegro PCB SI encounter a model of this type, it looks up the buffer model (driver, receiver, or bidirectional) assigned to the pin in question, and inserts it into the circuit along with its associated package parasitics. IO – A component with CLASS = IO is intended for components that connect off-card to other physical layout designs, such as connectors. These components can be associated with a “DesignLink”, which provides netlisting to other physical designs and enables multi-board SI analysis. So circuit building algorithms expect to jump from a device of CLASS=IO to a similar device on a different physical layout. DISCRETE – For devices of this class, circuit building algorithms expect to traverse “through” the component, from one pin to another, inserting a subcircuit in-between. A good example of this would be a series resistor.If CLASS attributes are not set up properly in the source schematic libraries, they can be edited in the physical layout database for analysis by using the form shown below, launched from the “Logic > Parts List” menu pick.The “PINUSE” attribute also impacts the behavior of the SI analysis, as the tool uses this information to determine if a pin is a driver, receiver, bidirectional, or passive pin. As with the “CLASS” attribute, in an ideal methodology this is defined properly in the schematic libraries, and no editing is required in physical layout. “PINUSE” can be modified in two main ways for SI purposes. The most straightforward way is to ensure that the IOCell models used in the IbisDevice models assigned to components have the appropriate Model Type for the signals they are associated to. When SI models are assigned to components, the tool will check for conflicts between the model and the PINUSE it finds for the component in the design, and will use the SI model to automatically override the PINUSE found in the drawing. So if the correct pin types are found in the SI models, the layout will automatically inherit those settings. For components not explicitly modeled, their PINUSE can be set using the form shown below, launched from the “Logic > Pin Type” menu pick.Signal Integrity (SI) models can be assigned using the “Signal Model Assignment” form, shown below.Upon clicking “OK” the selected models will be assigned to the components and saved directly in the layout database. As mentioned previously, “PINUSE” attributes will be synced up, with the SI models superseding attributes in the original layout drawing.Pre-Route SI AnalysisPerforming pre-route analysis is a key part of the high-speed design process. Once critical component placement has been done, Manhattan distances can be used to estimate trace lengths, and can provide a realistic picture of how routed interconnect will potentially perform.Before simulations are run for critical signals, the timing of the interface must be well understood. To accomplish this, we will first sketch timing diagrams for each signal group and then extract a representative signal for analysis. Next, we will explore Z0, layer assignments, drive strength, route lengths, spacing, and terminations for these nets.To sketch the timing diagrams, we first analyze the memory interface. The memory interface consists of both DDR and NAND signals and has around seventy nets. To simplify the analysis of the interface, we first divide these nets based on function and then simulate one net from each group. Accordingly, we select one signal from each of the following groups —clock_ddr, strobe_ddr , data_ddr, control_ddr, address_ddr, control_nand, and data_nand — for our pre-route simulations.To understand the timing relations in the interface, we should look at the following operations between the memory device and the processor — read, write, address write, and control operations. Next, we identify the nets involved and the clocking reference signal for each of these operations. We then calculate the worst case slack available from the setup and hold numbers available in the data sheets. In particular, we adopted the worst case numbers across four different memory vendors, to ensure robustness of the manfactured system in the field..1.ReadDuring the read operation, the memory drives the data and DQS lines. The processor has a delay line (a series of buffers which can be tapped at different points), which is used to delay the DQS signal so that it samples the data at quarter of the cycle. The processor also offers programming options that allow us to apply an offset to the quarter cycle, enabling us to meet our setup and hold times. Hence, the processor self-corrects forstrobe/data skew using this delay line. The granularity of this delay line is 30 ps; that is, each of the buffers of the delay line contributes 30 ps of delay. The data lines 0-7 are clocked with respect to the DQS0 strobe signal, and the data lines 8-15 are clocked with respect to DQS1. Data and strobe lines should be clustered, with the matching constraints determined by the write cycle.2.WriteFigure 7. Write operation at memory interface.During the write operation, both data and DQS are driven by the processor. Data is latched at both the positive and the negative edges of the DQS signals. Here again, data bits 0-7 are clocked by DQS0 and data bits 8-15 are clocked by DQS1. The setup and hold times available as these signals come out of the DDR controller are 1.58ns and 1.7ns respectively and the corresponding times required at the memory to ensure correct operation is 0.9ns. Hence, the slack available for routing is the lesser of 1.58ns – 0.9ns or 1.7ns – 0.9ns, which comes out to be 0.68ns. This amounts to an allowable ~85mm mismatch between the data lines. In addition, we need to make sure that length of the DQS lines is around the average of all the data lines. The data mask signals DQM0 and DQM1 also come into play during the write operation and we should group them along with the respective data lines.3.Address busFigure 8. Address bus operation at memory interface.Both address and clock lines are driven by the processor. The address bits 0-12 are clocked by the differential clock and latched at the positive edge of the clock. The setup and hold times available for these signals from the DDR controller are 1.78ns and 4.22ns respectively and the corresponding times required at the memory to ensure correct operation is 1.5ns for both. Hence the worst case slack for routing is 0.28ns and we have to try to match our signals to meet these numbers. The 0.28ns slack amounts to ~14mm mismatch between the address lines and the clock.4.Control linesFigure 9. Control lines at memory interface.The control signals are clocked by the differential clock and latched at the positive edge of the clock. The setup and hold times coming out of the DDR controller are 1.64ns and 4.04ns respectively. The setup and hold times required at the memory to ensure correct operation is 1.5ns. Hence, the worst case slack for routing is 0.14ns and we have to try and match our signals to meet these numbers. The 0.14 ns slack amounts to ~7mm mismatch between the control lines and the clock.In addition, CLK to DQS skew is around 600 ps. With regards to the NAND lines, setup and hold numbers are in the order of tens of ns and hence routing them as short as possible based on their Manhattan lengths would suffice.To complete pre-route analysis, SigXplorer must be setup for these tasks:a. Extract a topology file for single net analysis. To bring up the net in SigXplorer, it is essential that the models are assigned, as described in Section 2, to each of the drivers, receivers, and components in the signal path.b. Set up parameters for extraction and simulate using SigXplorer.c. Perform measurements using SigWaveThe following screenshots of SigXplorer show this process in detail.Figure 10. SigXplorer screenshots.Since at this point none of the nets in the design are routed we need to set the percent Manhattan section for unrouted interconnect models. We should then select the net, as shown in the next screenshot, for analysis.Analyze Æ SI/EMI Sim Æ PreferencesThe speed at which the signal travels in the trace, where C is 3 x 108 m/s and E reff is the effective dielectric constant seen in the interconnectSets the default lengthfor unrouted transmission linesAt this point, it is important to check if your driver and receiver pins are set correctly. The net chosen in the above example is a data net, it is bi-directional, hence it can be driven both by the memory device as well as the processor. The view topology icon can be clicked to export this net in SigXplorer.The tool extracts the net along with drivers, receivers and strip lines on various layers of the board. Before you start the simulation, you must set the stimulus frequency, pulse step offset, and cycle count. This can be set in the following GUI.Analyze Æ PreferencesBoth the memory device and the processor have programmable drive strengths. The buffer model can bechanged to pick up the various drive strengths that are available in the dml models of the devices till we observe satisfactory waveforms in SigWave.Analyze Æ SI/EMI Sim Æprobeinvokes SigXplorerMake sure you check you driver and load pinsSigXplorer allows you to sweep any of the parameters such as the thickness, length, drive strengths and displays corresponding settle/switch delays, monotonicity, and glitch tolerance for the corresponding simulation. It also allows adding components such as resistors and capacitors and let’s us sweep their values. We added a resistor in series with our clock in or to get rid of ringing in the rising edge. The tool let us determine what values were suitable for this resistor. As shown in the next figure the waveform corresponding to our simulation can bebrought up on SigWave.driverreceiverYou can observe the rise/fall times, look for noise margins, overshoot/undershoot of the receiver waveform. The constraints we develop in the pre-route simulation will be used by the routing tool to ensure correct first time results. This leads to our next section; Constraint-driven routing.Constraint-driven routingOnce pre-route analysis has been done, and trade-offs have been examined, signal wiring constraints need to be developed to drive the constraint-driven routing process. With the DDR interface being point-to-point between the processor and memory, we translated our timing requirements into length constraints to make the routing as straightforward as possible. We also assigned layer constraints for our DDR signals. Both the length and the layer constraints can be directly applied to the constraint manager before the routing process starts.For our particular design, we determined the following layer assignments from the results of the pre-route simulations, taking into account the layer’s characteristic impedance per our stack-up:Layer 6 Æ ground planeLayer 7 Æ clock, add, ctrlLayer 8 Æ data, strobeLayer 9 Æ NAND interfaceBefore we set up our design for auto-routing, we routed the differential clock lines manually on the layers closest to the ground plane. For the rest of the nets, the layer constraints can be created as shown in the following snapshots of the constraint manager.Electrical Constraint Set Æ WiringRight click on board Æ Create new constraintName the constraint (ex. ECSET1)We choose one layer with horizontal orientation and one with vertical for each of our layer sets. You can form groups from the available layer sets and create a new constraint. This constraint, which we define as ECSET1, can be easily read back in the constraint manager and applied to the relevant net group, as shown in the following snapshot.We determined from pre-route analysis the slack available for each of our net groups; however, before we translate these into length constraints it is important to get a report of the Manhattan lengths of each of these signals. To illustrate this, we will focus on the address signals. The Manhattan report of the address lines showed that the shortest lines were 6mm and the longest were 17mm. Accordingly, the minimum length constraint must be longer than 6mm and the maximum length constraint must be longer than 17mm. Additionally, from our timing diagrams, we determined that the maximum spread can be no more than 14mm. Following these restrictions, we set the minimum and maximum length limits for the address line are 11.99 mmto 18.99 mm (shown in the constraint editor window below). Based on the layout designer's recommendations, we were able to constrain a bit tighter (7mm margin) and produce better margins.To enter the length constraint, we open the Net Æ Routing ÆTotal etch length section of the constrain manager. We followed this procedure for all the other net groups. The snapshot that follows shows length constraints associated with the address lines. Here, the key is to not to over-constrain your design, but at the same time have enough constraints so the timing and signal integrity parameters are met. Over-constraining the design severely inhibits the auto-router and may leave large portions of the design (as much as 90%) un-routed.Post-Route SI AnalysisOnce the design is fully routed, detailed simulations can be run for post-route verification. The goal at this phase is to determine final margins over all corners, and find and correct any SI or timing-related issues before the board is released for fabrication. Before starting simulation, it is important to verify that the design is properly routed and that it meets the specifications/constraints. In particular, it is essential to verify that the design does not include dangling and partially-routed/un-routed nets. We must also verify that all the nets meet the length constraints assigned to them. The Constraint Manager window helps identify nets that are in violation (shown in red) and nets that are in compliance (in green). For convenience and clarity, the Constraint Manager also reports the actual route length and the Manhattan lengths for each net.The next step is to bring up the physical layout and visually inspect the nets to ensure that each net is routed in its appropriate layer, or run DRCs if the signals were explicitly limited to specific layers in Physical Constraint Sets. When test points are associated with a net, we must manually verify that the points are in line with the nets (and are not stubs hanging off the nets). Note that when using the simpler Total_Etch_Length constraint, the auto-router can meet routing length constraints for the net, even when there are stubs in the design. These stubs can produce undesirable effects such as reflections and hence this step is important. If there are too manycritical signals to check manually on larger designs, this check can be automated by using an explicit topology and stub length constraints. After manual inspection, we begin post–route simulation and generate reports to analyze the design. We then export the reports to an Excel spreadsheet to facilitate analysis.We generated both delay and reflection reports. The delay report provides information on timing parameters such as propagation delay, switch and settle rise and fall times. The reflection report presents data on signal integrity parameters such as overshoot, undershoot, noise margin, monotonicity, and glitch. Preparing the design for post-route simulation involves the selection of various options in the SI\EMI Sim preferences list. The following screen display describes this process.In the form above, we set up the frequency of the stimulus and the duty cycle. We also set up V meas as thereference for delay calculations. Choosing the reference as V meas , rather than V IH and V IL , makes analysis much easier and is in accordance with the memory datasheet. We chose V meas as 0.9V which is half of the peak-to-peak voltage swing (1.8V).Now that the design is routed, we need to set the parameters for routed interconnects. Here you can specify the minimum coupling distance for nets for the tool to recognize it as a differential pair. This can be done by invoking Analyze Æ SI ÆPref ÆInterconnect Models.Analyze Æ SI/EMI Sim Æ preferencesThe preceding screenshot shows the option that allows us to select the delay and reflection reports. In this form, we also choose all three simulation modes — fast, typical, and slow — to cover all corner cases. In our experience, running typical mode simulations were not enough to determine final timing margins over process, voltage, and temperature. So, we exported the reports to an Excel spread sheet and analyzed the results. Reflection and delay reports simulate only a primary net and none of its neighbors. As a result, these reports do not take into consideration the parasitics of the power and ground pins.Timing > Control typNote:All timings in ns unless labelled otherwise.Component Timingdriving to MemoryTsetup 1.64Tsetup 1.5Thold 4.04Thold 1.5Skew_max = 1.64 - 1.5 = 140ps between clock and controlSkew_max=0.14Clock/Strobe RelationshipsSdram_Ctrl<6:7> is differential clockInterconnect TimingXNet Drvr Rcvr PropDly SettleRise SettleFall AvgSettleSDRAM_CTRL<6>U800 V2_UU2164 C7_U2160.142029 1.13851 1.20538 1.172XNet Drvr Rcvr PropDly SettleRise SettleFall MinSettle MaxSettle MinSettleSkew MaxSettleSkew MaxSkew MarginSDRAM_CTRL<0>U800U21640.1118 1.191 1.235 1.104 1.2350.0680.0630.0680.072SDRAM_CTRL<10>U800U21640.1254 1.165 1.207SDRAM_CTRL<11>U800U21640.1114 1.141 1.187SDRAM_CTRL<12>U800U21640.1217 1.178 1.221SDRAM_CTRL<13>U800U21640.1067 1.114 1.153SDRAM_CTRL<14>U800U21640.09823 1.104 1.143SDRAM_CTRL<2>U800U21640.1274 1.163 1.205SDRAM_CTRL<3>U800U21640.09163 1.108 1.153SDRAM_CTRL<8>U800U21640.1081 1.137 1.182SDRAM_CTRL<4>U800U21640.06959 1.143 1.247SDRAM_CTRL<5>U800U21640.0862 1.169 1.285The preceding spreadsheet was created with data from delay reports and was used to analyze the control lines with respect to the clock. The clock signal in our design is called SDRAM_CTRL<6>. The sheet also lists the driver (U800, the processor), receiver (U2164, memory device), propagation delay (0.142029 ns), settle rise (1.13851 ns), and settle fall (1.20538 ns) values. The average settle delay (1.172 ns) is calculated by averaging the settle rise and settle fall numbers.The control nets SDRAM<0> to SDRAM_CTRL <14> are listed next to the corresponding drivers, receivers, propagation delays, settle rise and settle fall delays. We then look for the minimum and maximum delays of all the settle rise and settle fall delays. These are listed under maximum settle delay (1.235 ns) and minimum settle delay (1.104 ns) respectively. Using these numbers, we calculate the maximum settle skew (0.063 ns), which is the difference between the maximum settle delay (1.235ns) and the average settle time (1.172 ns) of the clock signal. We also calculate the minimum settle skew (0.063 ns), which is the difference between the minimum settle delay (1.104ns) and the average settle time (1.172 ns) of the clock signal. Subtracting the maximum of these two skews, which in our case is 0.068 ns, from the total skew available (0.140 ns) gives the margin (0.072 ns) for these nets.。
基于Cadence的信号完整性仿真步骤
目录1.仿真前的准备工作 (2)1.1找到需要仿真的芯片的IBIS模型 (2)1.2模型转换(IBIS→DML) (2)1.3添加模型到Cadence的模型库中 (5)2. 对电路板进行设置(Setup Advisor) (7)2.1准备好要仿真的电路板 (7)2.2调用参数设置向导 (7)2.3叠层设置 (8)2.4设置DC电压值 (9)2.5器件设置(Device Setup) (10)2.6 SI模型分配 (12)2.7 SI检查(SI Audit) (16)2.8完成参数设置 (18)3.进行信号完整性仿真(反射) (19)3.1开始仿真 (19)3.2选择所要仿真的网络 (19)3.3提取网络的拓扑结构 (20)3.4给驱动端U8添加激励信号 (21)3.5设置激励信号的参数 (22)3.6执行反射仿真 (22)3.7仿真结果 (22)1.仿真前的准备工作1.1找到需要仿真的芯片的IBIS模型一般可以从芯片制造商网站上找到,如果没有,可能要通过其它途径获得如从SPICE模型中提取。
1.2模型转换 (IBIS→DML)将IBIS模型转换为DML模型,运用Cadence的Model Integrity工具将IBIS模型转化为Cadence能识别的DML模型,并验证仿真模型。
(1)单击“开始”按钮→“所有程序”→“Allegro SPB 15.5”→“Model Integrity”,如图1-1所示:图1-1 Model Integrity工具窗口(2)选择“File”→“Open”,打开一个IBIS模型如图1-2所示:图1-2 打开一个IBIS模型(3)在“Physical View”栏中,单击IBIS文件“sn74avca16245”→选择菜单栏里的“Options”→“Translation Options Editor”→弹出“Translation Options”窗口,如图1-3所示:图1-3 Translation Options窗口(4)默认选择“Make model names unique”,这个设置为每个IOCell模型名附加IBIS文件名。
Cadence基础仿真分析与电路控制描述
Cadence基础仿真分析与电路控制描述Cadence是一款主要用于集成电路设计和仿真分析的软件工具。
本文档将介绍Cadence的基础仿真分析功能以及电路控制描述的方法。
Cadence基础仿真分析Cadence提供了多种仿真分析工具,包括电路级仿真、时钟级仿真和系统级仿真等。
这些工具可用于验证电路设计的正确性,并进行性能评估。
在进行仿真分析之前,需要进行以下步骤:1. 设计:使用Cadence的设计工具创建电路图和原理图,定义电路的结构和功能。
2. 参数设置:对电路器件进行参数设置,包括电阻、电容、电感等元件的数值设定。
3. 仿真配置:选择适当的仿真工具和仿真设置,如仿真类型、仿真时间和仿真模型等。
接下来,执行仿真分析:1. 电路级仿真:通过电路级仿真工具,如Spectre,对电路进行验证和性能评估。
参数设置和仿真配置完成后,运行仿真并分析仿真结果。
2. 时钟级仿真:通过时钟级仿真工具,如Virtuoso AMS Designer,对电路中时序相关的功能进行验证。
设置时钟源和时钟周期等参数,并运行仿真以验证电路的时序性能。
3. 系统级仿真:通过系统级仿真工具,如Virtuoso System Design Platform,对整个电路系统进行仿真。
设置系统级的参数和信号源,并进行仿真分析。
电路控制描述在Cadence中,可以使用Verilog-A或Verilog-AMS等硬件描述语言来描述电路的行为和控制。
1. Verilog-A:主要用于模拟连续时间的电路。
可以使用Verilog-A描述电路的行为和相互之间的连接关系。
通过编写Verilog-A代码,可以实现电路的仿真和性能分析。
2. Verilog-AMS:结合了连续时间和离散时间的特性,可用于描述混合信号电路。
除了模拟电路行为之外,还可以描述数字电路部分。
通过编写Verilog-AMS代码,可以实现电路的混合仿真和性能分析。
使用这些硬件描述语言时,需要了解其语法和规范,并根据实际需求编写相应的代码。
cadence ic 基础仿真PPT学习课件
实例4 考虑温度的带隙基准参考电压 源
• 经典的Widlar带隙基准电压源
39
• 通过Tools -> Analog Environment ,设置dc分析模式
40
41
• 仿真的输出观察信号设置如下
42
• 点击Netlist and Run ,运行仿真
43
• 下图为以温度为变量进行直流分析时候的波形图
深入浅出Cadence IC Tool
--模拟集成电路设计工 具的使用
1
运行 Cadence
当Cadence工具的运行环境设定好之后,就可以开始使用进行它工作了。 你可以通过输入一下命令从你的工作目录中运行Cadence
2
打开主窗口后,从下拉菜单中就可以开始你的设计了
3
首先,在Cadence下工作必须要创建自己的工作库, 创建库的方法如下:选择: File-> New -> Library
23
• 设置分析的模式
24
• 点击Simulation-> Netlist and Run 即可进行仿真。 • 仿真结束后可以进行如下图所示的参变量分析,在单一的波形窗口中
观察多条曲线
25
• 在参量分析窗口选择Analysis -> Start • 当仿真结束后选择Results -> Direct Plot -> DC 并且单击v1电压源,
4
在name区域给新工具库取名,你需要添加technology file至你 的新建工具库
创建好工具库之后,有数种方式来对你的设计进行仿真
5
实例 1 二极管的伏安特性曲线分析
• 首先我们通过以下方式(File-> New -> Cellview)从为二极管创建一个cell view开 始
Cadence入门反相器原理与仿真
Cadence⼊门反相器原理与仿真课时11启动虚拟机,熟悉Linux系统的基本操作1.1⽂件系统与windows的操作⽆异1.2终端1.2.1进⼊root⽤户,和退出root⽤户1.2.3 常⽤操作cd 打开⽂件夹ls 显⽰当前⽂件夹⾥的⽂件cp复制mv 移动mkdir新建⽂件夹rm删除Cp file 路径命令选项参数2 启动cadence先启动license,再启动cadence在设置环境变量时,我们设置了命令名lmli来启动license 在终端输⼊lmli然后在终端输⼊icfb&2.1新建⼀个libraryFile→new→library2.2 新建⼀个原理图File→new→cellview3熟悉cadence3.1基本操作和快捷键添加器件i instance q 编辑器件参数W 连线p 添加端⼝L 添加标签C 拷贝器件M 移动u 撤销3.2熟悉⼀些器件的名称gnd在电路中表⽰0 电位,和它相连的线线名为gnd,没有设置参数。
vdd和它相连的线线名为vdd。
这个器件只⽤来标⽰等电位,⽽不是电源。
vdc/idc直流电压/电流源,⽤于为电路提供直流电压/电流。
同时还可以提供交流电流,在AC 分析中使⽤。
vpulse时变电流源,在DC 分析中可以输出固定的DC 电压,AC 分析中可以输出固定的AC 电压,在瞬态分析中可以⽣成不同占空⽐的⽅波、三⾓波、梯形波、锯齿波。
z nmos4 / pmos4 / pnp通⽤4 端⼝NMOS 管/ PMOS 管/ PNP 三极管注意,在模型名称(Model Name)⼀栏需要根据不同的⼯艺库(Model Library)中的定义来指定。
⽐如:在某个模型中将NMOS 模型定名为nvn,PMOS 管模型定名为nvp,PNP 三极管则为pnp5,则在nmos4 器件实例的Model Name 栏应当填上nvn、pmos4 填nvp、pnp 填pnp5,否则电路将不能正确进⾏仿真。
cadence ic 教程schematic及其仿真
图 1-2-2 Create New File 窗口
2
cadence cdsSPICE 的使用说明
1) 建立库(library):窗口分 Library 和 Technology File 两部分。Library 部分有 Name 和 Directory 两项,分别输入要建立的 Library 的名称和路径。如果只建立进行 SPICE 模拟的线路图,Technology 部分选择 Don’t need a techfile 选项。如果在库中要创立 掩模版或其它的物理数据(即要建立除了 schematic 外的一些 view),则须选择 Compile a new techfile(建立新的 techfile)或 Attach to an existing techfile(使用原有的 techfile)。
图 1-3-2 添加元件窗口 否则在模拟时会出错(我们一般使用华晶的元件 model)。填好后,就可以将元件添加到 Editing 的编辑窗口中去了。其它的一些连线、移动、删除、复制的操作和一般的 EDA 工具 差不多,这儿就不一一再说了。还有一点要提到的是,对于交叉相连的两条线,系统会有警
5
告,可对连线稍作修改去除这个警告。
§ 1-2 建立可进行 SPICE 模拟的单元文件
主窗口分为信息窗口 CIW、命令行以及主菜单。信息窗口会给出一些系统信息(如出 错信息,程序运行情况等)。在命令行中可以输入某些命令。如我们调用 Cadence 的命令 icfb 和一些其它命令,比较重要的有调出帮助文件的 openbook&等。
一.File 菜单 在 File 菜单下,主要的菜单项有 New、Open、Exit 等。在具体解释之前我们不妨先理 顺一下以下几个关系。library(库)的地位相当于文件夹,它用来存放一整个设计的所有数据, 像一些子单元(cell)以及子单元(cell)中的多种视图(view)。Cell(单元)可以是一个简 单的单元,像一个与非门,也可以是比较复杂的单元(由 symbol 搭建而成)。View 则包含 多种类型,常用的有 schamatic,symbol,layout,extracted,ivpcell 等等,他们各自代表什 么意思以后将会一一提到。 New 菜单项的子菜单下有 Library、Cellview 两项。Library 项打开 New Library 窗口, Cellview 项打开 Create New File 窗口,如图 1-2-1 和 1-2-2 所示。
CADENCE仿真步骤
CADENCE仿真步骤1.电路设计:首先,需要使用电路设计软件(例如OrCAD)绘制电路原理图。
在设计电路时,应该合理选择电路元件,确保其参数和规格满足设计要求。
2.创建电路网络:在CADENCE中创建电路网络是第一步。
通过将电路原理图导入到CADENCE中,可以建立电路的模型。
在建立电路网络时,应定义元件的参数值,并将其连接起来。
3.定义仿真设置:在进行仿真之前,需要设置仿真参数。
这些参数包括仿真类型(例如直流、交流、蒙特卡罗等)、仿真步长、仿真时间等。
此外,还可以设置其他参数,如故障分析、参数扫描等。
4. 运行仿真:设置好仿真参数后,可以开始运行仿真了。
CADENCE 提供了多种仿真工具,如PSpice、Spectre等,可以根据不同的需求选择适合的工具。
在仿真过程中,CADENCE会使用电路元件的模型计算电路参数,根据仿真设置提供的信息生成相应的结果。
5.分析仿真结果:一旦仿真完成,CADENCE会生成仿真结果文件。
通过分析仿真结果,可以评估电路设计的性能。
常见的仿真结果包括电流、电压、功耗、频率响应等。
可以将仿真结果与预期结果进行比较,找出设计中的问题并进行优化。
6.优化电路设计:根据仿真结果,可以对电路设计进行调整和优化。
优化可以包括选择不同的元件、调整元件参数、改变电路拓扑等。
通过不断迭代仿真和优化,可以逐步改进电路设计,使其达到预期的性能指标。
7.验证仿真结果:当设计经过一系列的优化后,需要验证仿真结果是否可靠。
一种常用的验证方法是进行物理验证,即将最终的电路设计制作出来并测量其实际性能。
通过比较实际测量结果与仿真结果,可以验证仿真的准确性,并进行必要的修正。
8. 导出设计文件:一旦电路设计完成并验证通过,就可以将设计文件导出,准备进一步的生产制造。
将设计文件导出为标准的格式(如Gerber文件),可以将其发送给制造商进行生产。
总结:CADENCE仿真步骤包括电路设计、创建电路网络、定义仿真设置、运行仿真、分析仿真结果、优化电路设计、验证仿真结果和导出设计文件。
Cadence的使用与基本仿真教程
个节点,即可得到这两个节点之间的差分波形。
2014/11/9
模拟集成电路设计课程实验
45
仿真练习:Cascode
搭建如图Cascode电路,调节器件参数和电压,使得所有MOS工作在饱和区 (region 2)。对电路进行dc,ac,tran仿真。使用DC工作点的参数计算出电 路的小信号增益,并将此增益与ac仿真和tran仿真进行比较。
Results > Annotate > DC operating points
2014/11/9
模拟集成电路设计课程实验
32
打印详细DC信息
Results > Print > DC operating points > 点击器件
2014/11/9
模拟集成电路设计课程实验
33
常用DC信息说明
2014/11/9
12
快捷键:c
2014/11/9
模拟集成电路设计课程实验
13
快捷键:q
2014/11/9
模拟集成电路设计课程实验
14
快捷键:r
2014/11/9
模拟集成电路设计课程实验
15
常用库、器件
2014/11/9
模拟集成电路设计课程实验
16
搭建反相器仿真电路
照图搭建反相器仿真电路
2014/11/9
模拟集成电路设计课程实验
这幅图表示:反相器输出端的DC电压随输入端DC电压变化的趋势
2014/11/9
模拟集成电路设计课程实验
37
Analyses > Choose > ac ..
AC仿真
2014/11/9
模拟集成电路设计课程实验
CADENCE 仿真流程
第一章进行SI仿真得PCB板图得准备仿真前得准备工作主要包括以下几点:1、仿真板得准备●原理图设计;●PCB封装设计;●PCB板外型边框(Outline)设计,PCB板禁止布线区划分(Keepouts);●输出网表(如果就是用CADENCE得Concept HDL设计得原理图,可将网表直接Expot 到BRD文件中;如果就是用PowerPCB设计得板图,转换到allegro中得板图,其操作见附录一得说明);●器件预布局(Placement):将其中得关键器件进行合理得预布局,主要涉及相对距离、抗干扰、散热、高频电路与低频电路、数字电路与模拟电路等方面;●PCB板布线分区(Rooms):主要用来区分高频电路与低频电路、数字电路与模拟电路以及相对独立得电路。
元器件得布局以及电源与地线得处理将直接影响到电路性能与电磁兼容性能;2、器件模型得准备●收集器件得IBIS模型(网上下载、向代理申请、修改同类型器件得IBIS模型等)●收集器件得关键参数,如Tco、Tsetup、Tholdup等及系统有关得时间参数Tclock、Tskew、Tjitter●对IBIS模型进行整理、检查、纠错与验证。
3、确定需要仿真得电路部分,一般包括频率较高,负载较多,拓扑结构比较复杂(点到多点、多点到多点),时钟电路等关键信号线第二章IBIS模型得转化与加载CADENCE中得信号完整性仿真就是建立在IBIS模型得基础上得,但又不就是直接应用IBIS模型,CADECE得软件自带一个将IBIS模型转换为自己可用得DML(Device Model Library)模型得功能模块,本章主要就IBIS模型得转换及加载进行讲解。
1、IBIS模型到DML模型得转换在Allegro窗口中选择Analyse\SI/EMI SIM\Library,打开“signal analyze library browser”窗口,在该窗口得右下方点击“Translate →”按钮,在出现得下拉菜单中选择“ibis2signois”项,出现“Select IBIS Source File”窗口(图1),选择想要进行转换得源IBIS文件,按下“打开”按钮,出现转换后文件名及路径设置窗口(缺省设置为与源IBIS文件同名并同路径放置,但此处文件名后缀为dml),设置后按下“保存”按钮,出现保存确定窗口(图2),点击OK按钮即可,随后会出现一个“messages”窗口,该窗口中得报告文件说明在模型转换过程中出现得问题,对其中得“warning”可不用在意,但如果出现“error”则必须进行修改后重新进行模型格式转化直到没有“error”出现为止,此时转换得到得dml文件才就是有效得。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
• 仿真的输出观察信号设置如下
• 点击Netlist and Run ,运行仿真
• 下图为以温度为变量进行直流分析时候的波形图
带隙基准的温度参考
实例5 一阶放大器
共源的一阶放大器
• 选择分析模式:
• 电路中有两个电压源,一个用作VDD,另一个用作信号输入 Vin
V in
• 输出的选择
深入浅出Cadence IC Tool
--模拟集成电路设计工 具的使用
运行 Cadence
当Cadence工具的运行环境设定好之后,就可以开始使用进行它工作了。 你可以通过输入一下命令从你的工作目录中运行Cadence
打开主窗口后,从下拉菜单中就可以开始你的设计了
首先,在Cadence下工作必须要创建自己的工作库, 创建库的方法如下:选择: File-> New -> Library
• 设置分析的模式
• 点击Simulation-> Netlist and Run 即可进行仿真。
• 仿真结束后可以进行如下图所示的参变量分析,在单一的波形窗口中 观察多条曲线
• 在参量分析窗口选择Analysis -> Start
• 当仿真结束后选择Results -> Direct Plot -> DC 并且单击v1电压源, 然后单击ESC。
• 下图显示了为仿真产生的输出日志文件
•
• 产生的波形如下所示:
• 可以通过设定坐标轴来获得电流—电压曲线 • 按以下方式进行: Axis-> X Axis
• 按下图所示,将X轴设定为二极管上的电压 降
• 在改变了X轴之后,波形应如下图所示:
• 由于我们只对二极管的伏安特性曲线感兴趣,因此我们可以只选择流 经二极管的电流与其两端压降。新的曲线如下图所示:
在name区域给新工具库取名,你需要添加technology file至你 的新建工具库
创建好工具库之后,有数种方式来对你的设计进行仿真
实例 1 二极管的伏安特性曲线分析
• 首先我们通过以下方式(File-> New -> Cellview)从为二极管创建一个cell view开 始
通过原理图输入模式,使用一个电压源,一个二极管,一个
• Dc仿真进行之后,实现参变量V1 的分析
• Vin vs Vout 的仿真波形曲线如下图所示:
实例7 差分对中的高频率响应
• 为了估计以动态电流镜为负载的差分对的频率响应特征,绘制原理图 如下:
• 设置暂态分析模式 • 设置网线为输入网线和输出网线
• 仿真后获得的波形图如下
实例8 差分对的噪声分析
下图所示的为1/f 噪声和输入参考噪声的模型
• 选择暂态分析模式 选择的网线为输入和输出网线
• 暂态分析:
仿真后获得的波形图象如下
电阻可以创建以下电路。
添加元件的方法:通过Add-> Instance ->,选择二极管,电 压源,电阻
电压源
电阻
• 将选择的元件按之前的原理图方式放置好,之后就可以开 始准备仿真了。
• 选择Tools-> Analog Environment
• 为模型库建立路径
• 通过Analysis -> Choose ,选择dc直流分析模式
• 通过原理图可以选择需要绘制的测试参量
• 绘制电压参量可以选择电压所在导线,绘制电流参量可以选择原理图 中的红色方块节点或者直接在需要测试的器件上选择。下图显示了被 选中进行仿真测试后的电压和电流节点是怎样的
• 现在可以开始准备仿真。点击Simulation-> Netlist and Run,仿真即 可开始。
• 分析一阶共源放大器获得的波形图 • 波形图显示了当Vin 从0->2V 时输出的变化
• 下图显示了当VDD 变化时Vin 与Vout 之间的关系
实例6 电流镜负载的MOS差分放 大器
• 选择dc分析模式
• 分析建立在输入电压变量V2 上
• 该仿真所需的变量如下 • V1 为输入电压变量,V2 为VDD 电压源
实例2 双极型晶体管的伏安特性曲线
• 首先为双极型晶体管电路新建一个cell view • 利用原理图编辑所需要的仿真电路
• 在完成对原理图的编辑后,我们可以开始仿真 • 通过Tools -> Analog Enviroment 会有如下弹出窗口
• 按下图所示设置变量(注意,对于之前电压源设置的VBB在此处应该 设置合适的数值)
• 可以得到如下图所示的一族伏安特性曲线
实例3 MOS 电容器件电容-电压曲 线的分析
• 按下图的方式进行分析模式,器件参数等的设置
• 点击Simulation -> Netlist and Run 运行仿真
•
• -> Setup选择需要输出的参量
设置窗口如下:
• 点击Open ,打开Calculator 如下所示:
• 点击OP ,并从原理图中选择器件,你将会看到一个变量列表
• 选择绘制变量完毕后,点击ERPLOT ,既可绘制
: • 绘制后的波形如下图所示
实例4 考虑温度的带隙基准参考电压 源
• 经典的Widlar带隙基准电压源
• 通过Tools -> Analog Environment ,设置dc分析模式