Saber仿真软件介绍 - 图文 联系客服

发布时间 : 星期一 文章Saber仿真软件介绍 - 图文更新完毕开始阅读

3、验证dcerr文件是否包含合理的结果,用Display命令可以显示工作点(di

dcerr)。如果dcerr文件不包含合理的结果,看第四步,否则用调试模式和把dcerr文件作为分析的输入来重新运行DC分析。 Dc(debug yes,dcip dcerr

如果DC分析仍然不能找到一个解决方案,检查transcript中的输出,看是否设计是收敛的。

4、检查信号是否在解决方案中解决,如果没有,增加DR_Tsettle和重复动态

蔓延收敛,例如:dc(dr_tsettle 1,algstep n algstart dyn_r,debug yes

如果信号仍然没有解决,重复该步,dc_tsettle会是一个较大的值。如果在达到dr_tsettle后,收敛振动,失败,用dcerr文件中的值作为初始点。 5、用一个系数3增加密度,减少截断错误到5m,重新运行动态蔓延收敛,

例如:

dc(den 3 , dr_terr 5m , dr_tsettle 1, algstep n , algstart dyn_r , debug yes

? Saber找到错误的工作点时

对有多个稳定工作点的系统,如锁存器、触发器、计数器,未偏置的DC分析在多个工作点间或许会“感到困扰”。另一方面,依靠设计,DC分析找到一个工作点或许没问题,但是找到的工作点未必是想要的。对于这些情况,可以用DC分析的Holdnodes,在特殊的工作点处给DC分析一个“推进”。在制定了让Saber找到解决方案后,重新运行DC分析。看图3-2的例子:

图3-2

该电路有一个不稳定和两个稳定的工作点,两个稳定的工作点是:

● 节点C1是高电平,节点C2是低电平 ● 节点C2是高电平,节点C1是低电平

如果运行DC分析,然后用Display命令看结果,如下:

dc di dc

结果显示如表中A部分:

A time 0 ---------------------- _n8 5 b1 0.8085 b2 0.8085 c1 1.186 c2 1.186 i(v_dc.vcc) -0.007628 q_3p.q1/bp 0.8085 q_3p.q1/cp 1.186 q_3p.q1/ep 0 q_3p.q1/s 1.186 q_3p.q2/bp 0.8085 q_3p.q2/cp 1.186 q_3p.q2/ep 0 q_3p.q2/s 1.186 0 0 B time 0 ---------------------- _n8 5 b1 0.07351 b2 0.8186 c1 4.62 c2 0.07351 i(v_dc.vcc) -0.005307 q_3p.q1/bp 0.07351 q_3p.q1/cp 4.62 q_3p.q1/ep 0 q_3p.q1/s 4.62 q_3p.q2/bp 0.8186 q_3p.q2/cp 0.07351 q_3p.q2/ep 0 q_3p.q2/s 0.07351 0 0 因为节点C1、C2对每个稳定的工作点应是不同的值,所以很明显,DC分析的结果不是一个稳定的工作点,在DC分析中用节点保持变量,可以阻止此情况,例如,要发现C1是高电平,C2是低电平的工作点,用下面方法:

dc(hold c1 5 , relhold y) di dc

该命令运行DC分析两次,用第一次运行的初始点文件,作为第二次运行的输入,在第一次运行时,C1置于5V,第二次,C1允许查找自己的本身电位,结果如表中B部分,结果显示C1、C2处的DC值是所期望的,现在可以进行设计过程中的下一步。

? 简单电路对DC分析的不利影响

下面列出简单电路结构对DC分析的不利影响,会难以找到工作点: ● 单节点只连接到电容器和电源:在这种结构中,所有电容器视为开路,

所以节点处在DC分析过程中可能浮空,在该点设置一个初始条件,可以避免这样的问题。

● 回路仅包含电感和电压源:这种结构在DC分析中视为短路,对回路电

流设置一个初始状态,可以避免这种问题。

● 电流源驱动电容器:因为电容器视为开路,获得工作点会很困难(电容

器上电压没有定义),对电流源作非理想的措施(给电流流向)可以有帮助。

● 电压源驱动电感:由于电感视为短路,获得工作点会很困难。

● 两个电感在级数上有初始电流状态冲突。 ● 两个电容在平面上有初始电压状态冲突。

第四章 时域分析

完称设计后,可以验证设计在时域内的响应。Saber用瞬态分析来验证设计在时域内的响应,过程如下:

1、指定首个瞬态数据点

2、如果驱动源(Driving Source)是振荡器,要使用初始点文件(Initial Point

File)

3、执行瞬态分析

4、查看瞬态分析结果 5、测量分析结果 6、制定下一步

? 指定首个瞬态数据点

由于瞬态分析在分析运行时,使用初始点作为首个数据点,所以在瞬态分析之前,必须找到系统的工作点,可以用下列方法:

● 在瞬态分析面板内,指定Run DC Analysis First处为yes,该选择让Saber

执行DC分析来找到工作点,然后用计算的工作点作为首个数据点来进行瞬态分析。

● 选择Analysis>Operating Point>Operating Point下拉菜单项,单独运行DC

分析。大多数情况下,Saber用DC Operating Point框中默认值就能找到合适的工作点。

? 如果驱动源是振荡器

由于振荡器依赖噪声放大来启动的,而噪声又不是模拟器内在的,所以在瞬态分析运行开始时,必须改变初始点文件中的一些节点值以启动振荡器,详细情况看本章后边叙述。

? 执行瞬态分析

1、显示瞬态分析对话框(Analysis>Time-domain>Transient)。 2、指定瞬态分析所要求的信息

瞬态分析设置面板如图4-1所示,要执行瞬态分析,必须指定下列信息: ● End Time(Basic标签):定义瞬态分析结束点。例如:如果驱动源是周

期为10μS的正弦函数,要查看前五个周期的瞬态响应,可以在该处键入50μ。

● Start Time(Basic标签):定义瞬态分析开始点。默认情况下,该时间取

决于初始点,如果初始点被DC分析创建,该时间为0。 ● Time Step(Basic标签):作为瞬态分析中相邻计算点间重复的标尺,可

以按下面的情况设置其数值: ▲ 设计中有关时间常数的1/10

▲ 驱动源方波最小的上升沿或下降沿

▲ 正弦驱动源输入周期的1/100 3、指定要分析其波形的信号

Time-domain Transient Analyses面板提供下列两处来指定波形数据怎样被保存,用来画图和分析: ● Plot File(Input/Output标签):指定画图文件的名称,该文件包含了Signal

List处定义的信号的模拟结果。默认情况下,Saber为每个瞬态分析创建名为tr的画图文件,如果不想让Saber创建画图文件,在该处填入“_” ● Signal List(Input/Output标签):指定要保存模拟结果的信号,用于Saber

画图。默认情况下,信号列表只包含层次中顶级电路中的信号,如果要查看内层电路信号,必须将信号名称加入Signal List处。下列表格列出Signal List处语法的例子,在同一个Signal List处填加多个信号,用空格隔开。 Signal List例子 含义 ./ 包含目前例子中所有的信号 /…/ 包含所有信号 /…/pll.* 包含有pll成分的所有例子中的所有信号 …/ 包含当前例子下面的例子中的所有信号 Pll.u12/ 包含pll.u12例子中所有的信号 Sig1 sig2 包含每个列出的信号 如果不清楚该指定哪个信号,用默认设置(该设计中的所有信号),如

果以后需要更多的信号,可以按下面方法:

▲ 对模拟时间较短的,用信号列表中另外定义的信号,重新运行瞬态分

▲ 对模拟时间较长的,用Extract>Add Signals to Plot File菜单项,从中

选取另外的信号。

4、设置自动画出波形

在Plot After Analysis(Basic标签)处,可以使分析运行完后,自动画出波形,其选项如下: ● No:表示不自动画图

● Open Only:表示分析运行完后,打开画图文件

● Append:表示分析运行完后,保留当前的波形,再重新放置更新的波形 ● Replace:表示分析运行完后,用更新的波形替换当前的波形 5、是否保存初步模拟结果

Data Files包含了模拟中每个数据点的模拟结果,数据文件可能会变得很大,除下述目的要用数据文件外,最好不要创建数据文件: ▲ 为画图文件选取其它的信号 ▲ 选取工作点

▲ 将瞬态数据传到频域用于傅立叶分析 ▲ 运行应力分析(Stress Analysis)

由于从数据文件选取画图信息要比重新运行分析快得多(特别是对模拟时间较长的分析),所以要认真考虑是否创建数据文件。在Input/Output标签中的DataFile处指定数据文件