Saber基础教程大全.docx
- 文档编号:29987001
- 上传时间:2023-08-04
- 格式:DOCX
- 页数:58
- 大小:2.08MB
Saber基础教程大全.docx
《Saber基础教程大全.docx》由会员分享,可在线阅读,更多相关《Saber基础教程大全.docx(58页珍藏版)》请在冰豆网上搜索。
Saber基础教程大全
Saber软件的历史
提到Saber软件的历史,就不得不提到几个公司Analogy,Avanti和Synopsys.Saber于1987年由Analogy公司推出,专用与混合信号和混合技术领域仿真验证.大家需要注意的一点是,1987年到现在已经20年了,也就是说Saber这个软件产品从出生到现在已经活了20年.在非常注重商业效益的西方社会,一个软件产品在经历了20年的市场风雨以后,依然能够继续存在,只能说明一点,它确实有用,能够帮用户解决一些设计问题.到了90年中期,Avanti公司收购了Analogy公司,Saber软件变成了Avanti公司的产品.在后来,到2000年左右的时候,Avanti公司在那场EDA行业中最为惨烈专利战争中败给了当时的EDA行业巨头CADENCE,并为此要付出高额赔偿.当时EDA行业的另一巨头Synopsys抓住机会,将Avanti公司收购,而Saber软件也再次易主,成为Synopsys公司的产品.关于Synopsys公司和EDA行业,我不多说,有兴趣的网友可以上网查查.
Saber软件的特点及应用领域
Saber软件的特点我想主要有这么几个,一是集成度高,从调用绘制原理图到仿真分析,可以在一个环境中完成,不用切换工作环境.二是各种分析功能齐全,即可以进行DC、DT、AC、TR等这些基本功能分析,也能进行温度、参数灵敏度、蒙特卡诺、噪声、应力、失真等高级分析.三是强大的仿真数据后处理能力,运动SaberScope工具,可以方便、自由的对仿真结果数据进行各种分析和比较乃至运算,同时,Saber软件的交叉探针功能(crossprobe)可以很方便的在Sketch中观察仿真结果数据.
Saber软件的工具环境
Saber软件主要包括SaberGuide、SaberSketch、SaberScope三部分.SaberSketch主要用于绘制电路图,而SaberGuide用于仿真控制,仿真结果可在SaberScope查看.并且,目前Saber软件支持WindowsXP,Linux,UINX等多种平台.
讨论SaberSketch的使用.如果我们采样基于原理图的仿真方式,那么Sketch是我们在整个仿真过程中主要操作的一个界面.先来看看要完成一次仿真,在Sketch中需要做些什么工作.
1、启动Sketch,新建一个原理图设计;(呵呵,有点废话);
2、选择和放置电路元件;
3、设置元件参数;
4、连线并设置网络节点名称;
5、对混合信号以及混合技术的情况下,对接口部分进行处理;
6、新建符号并添加到原理图中(如果需要);
7、添加图框;(如果需要);
8、保存设计,退出或启动SaberGuide界面,开始仿真设置.
这几个步骤中,1和8我想不用介绍了,5和6我曾经在以前的博客文章中介绍过,7作为可选项我不准备介绍,毕竟大家在PartGallery里找找就能找到包含图框的目录.着重介绍一些2、3、4.
先来看看第二步选择和放置元件,关于如何放置元件,我想大家都会,在PartGalley里选中要放置的器件,双击鼠标左键就可以在原理图编辑界面中仿真一个符号了.新版的Saber中,支持鼠标的拖拽,即选中器件后,按住鼠标左键就可把元件拖入原理图编辑界面.下面主要介绍一下,如何在Sketch中找到需要的模型符号,在介绍这部分内容之前,先澄清几个概念,以便理解后面的一些过程.首先是符号和模型.对于仿真器而言,只能接受按固定语法描述的网表以及模型文件,无法理解符号以及由符号构成的原理图;而对于普通使用者而言,模型以及网表的语法过于抽象,不能直观的反映设计思想.为了解决这种矛盾,EDA工具中便有了符号和模型的概念.
符号主要给人使用,用来编辑原理图;模型主要给仿真器(即计算机)用,用来建立数学方程.Saber中的符号和模型存在一一对应的关系,PartGallery中的每一个符号,都有一个模型与之对应.因此,用户在PartGellery中调用的符号就等于调用了模型,不过这种方式更为直观.需要注意的是,如果PartGallery中没有需要的模型符号,也就代表Saber的模型库中没有需要的模型,此时要想继续仿真,用户就必须自己提供(建模或者下载)模型并为模型建立相应的符号.另外,Saber软件中模型和网表问题的尾缀是一样的,都是*.sin,或许是因为它把网表也看成一个大的模型吧.
另外两个需要了解的概念是模板(template)和器件(component).Saber里的模型就分这两类.简单的说,模板(template)是基于某一类器件的通用模型,它需要用户根据需要设置各种参数以达到使用要求;而器件(component)是某一或者某一系列商用元件(如LM324)的模型,它无须用户进行任何设置,可直接使用.另外,Saber的component库分两种,DX库和SL库,后者比前者缺少容差和应力分析参数.
来讨论一下如何在Sketch找到合适的器件.对一张原理图来讲,要完成对它的分析验证,首先是需要保证原理图中的各个元器件在Saber模型库中都有相应的模型;其次要保证在Sketch中绘制的原理图与原图的连接关系一致;再者就是根据目标系统的工作特点,设置并调整相应的分析参数.这三个条件都达到,应该能得到一个不错的分析结果.一张原理图中需要的模型涉及很多,但不管怎样,其所对应的模型正如我前面介绍的那样,只有template和component两种.对于需要设置参数template模型,需要去PartGallery中寻找;而component模型则直接可以利用PartGallery的search功能或者ParametricSearch工具进行进行查找.
对于template对应的模型,由于template是某一类元件的通用模型,因此我们要在PartGallery里按照器件分类去寻找,而PartGallery的库组织结构也正是按照类来划分的.以下面的PartGallery为例(对应版本是Saber2006.06,以前的版本会有一些区别).
在PartGallery中顶层目录按照大的应用领域和市场领域划分.比如Aerospace目录下主要包含与宇航工业相关的一些模型;Automotive目录下主要包括与汽车行业相关的一些模型;PowerSystem目录下主要包括与电源系统设计相关的模型.这种分类方法的一个目地就是,如果你确定自己的目标系统属于其中的一个,就可以直接在该目录下查找所有需要的模型了.当然,还有一种分类方法,就是按照技术领域分类.个人认为,这种分类方法对于搞技术的人来说更加直观和方便.在上面的图中直接左键单击MASTPartsLibrary目录,就可以得到如下图所示的展开.
从上图中看,就可以更为直观的按照技术领域寻找需要的template模型了.比如,要找电机之类的模型,可在Electro-Mechanical目录下找,要找机械负载模型,可在Mechanical目录下找,各种激励源或者参考地可在Sources,Power,Ground目录下找.各种模拟数字电路可在Electronics目录下找.
查找template模型的另一种方法是利用PartGalley的search功能.如下图所示:
在search栏里输入需要查找的关键字符就按回车就可以了,利用这个功能需要对saber的template模型命名规则有一些了解.基本上,saber中template模型的名字都与其英文术语多少有些关系.比如,gnd代表参考地,resistor代表电阻,capacitor代表电容,switch代表开关之类的.同时,还可以通过SearchObject和SearchMatch去修改search的规则和范围,提高search的效率.这些选项的具体含义看参考saber的帮助文档.需要注意的是,通常情况下,不用去改变这两个选项.
在PartGallery里查找component的方法主要有两种,一种直接利用PartGallery的search功能去搜索,只要清楚的知道所需模型的名称,就可以在search中输入查找,如果Saber的模型库中有该器件的模型,则会在下面显示出来.如果下图所示,是查找运算放大器NE5532的结果.需要注意的是,不同的尾缀主要是器件封装上的区别.但有一种例外,以_sl结尾的属于前面介绍过的SL库,这种模型没有MC和STRESS特性,但仿真速度很快.
当用上述方法查找没有任何输出的时候,则表明Saber软件模型库中没有这个模型.这种情况下,可以去器件厂商的网站上找找,看看有没有提供该器件的模型,基于saber的或者基于spice都可以.如果是saber的,可直接为其建立符号并引用;如果是基于spice的,则需要用sketch中的Nspitos工具将其转换为saber模型以后在使用.但如果没法找到需要的模型,则需要对其进行建模,这是很多设计者不愿意做的事情.除了建模以外,我们还可以利用sketch中的parametricsearch工具来近似的完成任务.利用这个工具在PartGallery中查找指标参数和所需器件相近或者一样的模型来替代原图中的器件进行仿真,这样也能达到验证的目地.Parametricsearch工具如下图所示:
首先选择器件类型,然后在后面出现的对话框中设置各种参数,缩小匹配器件的范围,如下图所示的运算放大器设置界面,在其中设置各种参数以后,单击finish按钮,可得到检索结果,在结果中选择一个可接受的,就可以作为替代模型使用了.
1、基本参数及其含义
前面曾经介绍过Saber的模型库主要有两类模型,一类是component,不需要设置的任何参数,可以直接使用;另一类是template,需要根据目标器件的特点设置各种参数以达到使用要求.无论是哪一类模型,都含有最基本的两个参数,一个是primitive,另一个是ref.primitive参数表明符号对应的模型名称,而ref参数是该模型在原理图中的唯一标识符,我想这个概念用过其他原理图编辑软件的网友,都应该能了解.如下图所示:
上图是sketch电阻模型的参数设置界面,可以通过在sketch中双击该器件符号启动该设置界面.图中primitive属性的值为r,表明该符号对应的模型名称为r,在saber安装目录的template目录下,会有一个r.sin文件,里面包含着名字为r的模型.图中ref参数的值为r1,这表明这个器件在该图中的唯一表示符是r1,即在同一张原理图上,不能再出现ref值为r1的电阻模型,否则sketch会报错.值得一提的是,这两个参数都是软件自动指定的,其中primitive参数一般不允许用户更改,所以为锁定状态(蓝色的锁表示锁定该属性),而ref参数可由用户修改,因此在修改ref参数的时候要注意,不要把该参数设置重复了.另外,框中黑点表示该属性名称及值在电路图中不可见,半绿半黑表示该属性的值在电路图中可见,全绿表示该属性名称及值在电路图中都可见.对于上图中的设置,则在电路图中有如下显示:
2.获取参数含义的基本方法至于模型中的其他参数,就需要用户根据自己的需要进行设置了,由于saber软件template非常多,而且每个template带的参数也不少,因此不可能一一介绍参数的含义.这里给出几种查找参数定义的方法:
a.在属性编辑器的下拉菜单中,选择Help>HelponPart,会启动Acrobatreader,
并显示与模型相关的帮助文档.
b.选中属性,在属性编辑器左下角的Help处会显示该属性的含义.
c.在属性编辑器中选择Help>ViewTemplate,或者在电路图中,鼠标移至元件符号处,从右键快捷菜单中选择ViewTemplate,可以查看器件的MAST模板,在里面会有各种参数的解释.
3.关于全局变量的设置
Saber软件提供了一种全局变量参数设置的方法.这种全局变量一旦设定以后,可以被整个原理图中所有元器件引用.该全局变量设置符号的名称为“SaberIncludeFile”,可以利用它指定全局变量.有兴趣的网友可以去试试,但需要主要,元件的属性定义优先于全局变量定义的值.
4.关于变量的分层传递关于这个问题,我曾在我的博客文章《滤波器电路仿真》和《滤波器电路仿真续》中仔细介绍过,有兴趣的网友可以去查查看.
来谈谈sketch中如何布线的问题,这个问题不太复杂,在这里只是对布线方法和过程做一个简单的总结.
1.如何开始一段布线?
先来看看如何在sketch中开始一段布线,通常有四种途径可以在sketch中开始一段布线:
a.将鼠标移至元件管脚处,图标变成十字架,表示鼠标已在管脚处,点击左键即可开始画线;
b.快捷键方式-按W键开始画线;
c.点击图标栏中的布线按钮开始画线;
d.选择Schematic>Create>Wire,或者从右键快捷菜单中选择Create>Wire
命令开始画线;
2.如何控制走线方向?
要改变布线方向,在指定位置点击左键,然后可以继续画下一段线.在布线过程中,如果按Escape键可取消整个布线;如果双击鼠标左键,可完成这段布线;布线完成以后,如果左键单击选中这段线并Delete键,可删除这段布线.这里需要注意的是两个问题,一是sketch中默认的布线都是正交方式,如何绘制任意角度的线呢?
二是在布线过程中,如果只想取消到上一个端点的布线而不是整根布线,该如何处理(注意:
Escape键是取消整根布线)?
布线时,在未结束布线前,点击鼠标右键,可弹出快捷菜单,菜单中的Any-AngleSegment命令可以实现任意角度布线,而DeletePreviousVertex命令可以删除先前的端点.
3.如何给连线命名?
画完连线后,可以给它命名,如果不命名,Sketch会自动为连线生成一个名字(如_n183).虽然这样,但对于连线比较多的目标系统,还是建议针对关键节点进行命名,以便在scope中观察结果.给连线命名的方法如下:
a.将光标移至连线上,高亮显示红色,单击鼠标右键,在弹出菜单中选择Attributes命令;
b.操作显示连线属性框,在Name栏更改连线的名字,在Display栏选择是否sketch中显示连线名字;
c.在连线属性框中的左下脚的Apply按钮即可.
需要注意的是,连线名称应用字母和数字构成切不能和Saber的命令或者MAST模板的保留字同名.另外,如果多个连线连到同一个点,只需命名一条连线,Sketch会将此命名应用到与其相连的其它连线.
4.如何实现不直接连接但表示同一网络节点?
有时候,由于要绘制的原理图比较复杂,各种线相互交杂,使得阅读原理图非常不方便,这就需要一种不直接连接,但能表示为同一网络的方法以简化原理图.Sketch中只要两条连线名称相同,就被认为是相连的,因此可用命名相同连线名称的方法实现,但这种方法相对不够直观.另一种方法是使用页间连接器(SamePageConnector),其符号位于PartsGallery的MASTPartsLibrary>SchematicOnly>Connector,编辑其Name属性即可改变连线名称,通过页间连接器来定义连线名称,这样要更为直观一些.
5.如何绘制一组线?
可以使用使用Bundle功能来绘制一组连线.在Sketch图标栏中选择bundle图标,如同画连线一样.要从bundle中添加或移走连线,仅连接或去除连到bundle上的连线即可.Sketch用附于bundle上的连线名来决定连线间的连接,连线名可以在电路图中直接编辑.要修改bundle的属性,高亮显示bundle,从右键快捷菜单中选择Attributes,或者双击bundle.
在Sketch中完成电路图后,就可以对设计进行仿真了.在开始今天仿真设置之前,建议对所绘制的原理图进行一次简单的检查.这一步是很有用,因为有很多仿真中出现的问题,都跟原理图有关系.检查的内容主要包括以下几个方面:
1.原理图是否和目标系统一致,有没有连错线路,或者参数设置不对;
2.如果是混合技术混合信号系统,各种接口设置是否正确;
3.系统中有没有对地短路的节点;
4.系统中有没有悬空的节点;
5.如原理图分层次,确认当前的是不是顶层原理图.
在完成检查之后,可以通过在sketch中通过Design/Netlist命令为原理图自动产生网表(关于网表和原理图的关系,以前已讨论过).如果报错,则根据出错信息修改原理图,如果没有报错,则表明已生成网表,可继续调用Design/Simulate将网表文件加载到仿真器当中,同时启动SaberGuide仿真环境设置界面(注意:
此时仍在Sketch框架内,不过菜单和快捷按钮发生了变化).如果一切正常,则会在右上角的状态栏上显示SaberReady或者SimulatorReady(不同版本的区别),如果出错,则要根据出错信息修改原理图,并重复上述过程直至能够正常加载网表文件为止.到了这里,就进入了SaberGuide工具的管辖界内,可以开始仿真了.仿真的过程操作相对简单,通过快捷按钮或Analysis菜单下的相应命令启动所需进行分析的设置界面,根据要求进行设置,单击OK或者Apply按钮就可以开始仿真了.仿真结束以后,可以通过scope后者sketch中的probe工具观察仿真结果.
Saber软件提供的分析功能很多,每一种分析功能都有自己特定的应用领域.在这里不准备一一介绍,着重讨论一下4个基本也是最常用的分析功能,DC、DT、AC、TR.
1、如何开始DC分析
a、打开DC分析对话框(Analyses>OperatingPoint>DCAnalysis)
b、设置DC分析面板的内容,大多数情况下,Saber用默认设置就可以制定工作点.
c、点击Apply按钮,执行DC分析.成功的DC分析会创建一个EndPointFile处指定的初始点文件,包含系统中每个节点的电压和电流.
2.DC分析的一些有用设置.
DC分析的设置界面如下图所示.
在设置界面中有两个参数可用于调试DC分析以得到合理的分析结果.一个是MonitorProgress,如果设为0,Transcript将报告分析的整个执行时间;如果设为-1,Transcript将报告执行概要和时间;如果设为正数,Transcript将报告电路系统的总体信息、运算法则、CPU时间等.另一个是Debug,它对Saber计算的每个可能方案进行统计,该特点通常用于当Saber用默认设置不能找到工作点或者要知道设计在工作点上是否收敛.另外,在InputOutput标签栏,还有两个参数比较常用.一个是StartingInitialPointFile,它包含在DC分析开始时,所有设计变量的初始值.默认文件名(zero),设置所有连续时间变量(模拟)为0,如果在数字管脚上,事件驱动(数字)或者不定义或者为一个初始值.另一个是EndingInitialPointFile,它包含在DC分析完成处的节点值,用该文件作为其它Saber分析的初始点文件,如时域(瞬态)和小信号频域(ac).默认情况下,Saber为该文件命名dc.
3.如何查看DC分析的结果.
在SaberGuide中有两种方法可以查看DC分析的结果,一种是通过DC分析报告查看,另一种是直接将DC分析结果反标到原理图上.在SaberGuide用户界面内,选择Results>OperationPointReport下拉菜单,可调出显示DC分析结果的设置对话框,采用默认设置,点击Apply按钮,则可在ReportTool中显示DC分析结果.在SaberGuide用户界面内,选择Results>BackAnnotation...下拉菜单,可直接将DC分析结果反标到原理图上.
4.DC分析的意义.
DC分析的结果是一组数值,这些数值定义了在time=0时,非线性系统的稳定状态的值.DC分析遵循一下几个规则:
a、将所有随时间变化的参数以及它们的衍生物设置为0;
b、将所有噪声源设置为0;
c、将所有ac源设置为0;
d、将所有随时间变化的元件可以从电路中有效移走(如:
电容器视为开路,电感视为短路);
e、将所有与时间有关的源有效移走;
5、DC分析的作用
DC分析在Saber软件中地位非常重要,可以说它是其它分析的基础.具体来说,它有两个基本作用:
a、它为其它分析的提供工作点,Saber用工作点作为时域分析的首个数据点.对小信号频率分析,Saber在工作点周围应用小正弦信号;
b.提供快速检查,以查出可能不正确的部件参数.虽然大多数电路图工具有电气规则检查来验证设计的连接性,但是这些工具不能查出来指定的元件参数,如:
如果100kΩ的电阻器上忘记“k”,或者与DC电源连接反向了,设计将会通过检查,但是系统功能是不正确的.
1.如何开始DT分析
a.打开DT分析对话框(Analyses>OperatingPoint>DCTransfer)
b.设置DT分析面板的内容,IndependenceSource和Sweeprange一定要设置,否则,就会出现lan_boy001网友在留言中提到的那种错误“RequiredFieldsnotComplete!
!
”
c.点击Apply按钮,执行DT分析.在默认情况下,成功的DT分析会创建一个与原理图文件同名尾缀为.dt.ai_pl的波形文件.
2.DT分析的一些有用设置.
DC分析的设置界面如下图所示.
在设置界面中有两个参数一定要进行设置.一个是IndependenceSource,它用于制定DT分析所扫描的独立源,其输入可以是系统中的任何一个独立激励源,如电气上的电压源、电流源,后者电磁系统的磁通源和磁势源等,但一定要是独立源,受控源不能作为其输入,可以通过点击旁边的箭头选择BrowseDesign,通过弹出的对话框进行选择并指定.另一个必须设置的参数是SweepRange,它用于制定所扫描变化独立源的变化规则以及内容.系统默认的是变化规则是stepby模式,即所谓的步进模式,即从一个起始值开始按照固定的步长进行变化,到结束值为止.选择这种模式,下面的from后面设置起始值,to后面设置结束值,by后面设置步长.下面在来看看DT分析和后面要介绍的其他几种分析所共有的几个设置参数.一个是上图中的PlotAfterAnalysis,改参数用于确定在分析接受一个是否自动在Scope中打开分析结果文件以及打开的方式,默认设置的NO,不打开;可改选为Yes或者其它参数.在来看看InputOutput标签栏的几个参数,InputOutput标签栏如下图所示:
其中常用的几个是SignalList,IncludeSignalTypes以及PlotFile和DataFile参数.SignalList栏用于设置分析结果文件中包含那些系统变量,它有一套固定的语法表达,这里就不仔细介绍了,只是简单看看它的设置菜单中的几个选项(单击旁边的箭头可弹出下拉菜单).
a.AllTopLevelSignals表示所有顶层变量(默认值);
b.AllSignals表示系统中的所有变量;
c.BrowseDesign可通过弹出的选择界面进行选择.
IncludeSignalTypes用于设置分析结果文件中包含那种类型的系统变量.其中
a.AcossVariablesOnly只包含跨接变量;
b.ThroughtVariablesOnly只包含贯通变量;
c.AcossandThroughVariables包含跨接以及贯通变量;
通常情况下,SignalList和IncludeSignalTypes需要配合使用.PlotFile和DataFile用于指定输出波形文件和数据文件的名字.关于这几个参数设置的定义以及使用,看参考我以前的博客文章《Saber中如何控制TR分析的仿真数据大小》.
3.如何查看DT分析
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Saber 基础教程 大全