saber-2004基础教程2 点击:962 | 回复:0



fd6774

    
  • 精华:0帖
  • 求助:0帖
  • 帖子:5帖 | 1回
  • 年度积分:0
  • 历史总积分:4
  • 注册:2007年12月22日
发表于:2008-03-12 10:14:00
楼主

第二章 仿真模拟前序
在SaberSketch中画完电路图后,就可以对设计进行仿真了
􀂾 指定顶级电路图
要用Saber对设计进行模拟,必须让SaberSketch知道设计中哪个电路图是最上层的,因为Saber在打开时只能有一个网表,所以在SaberSketch中只能指定一个顶级电路图。如果电路图不包含层次设计,SaberSketch会默认打开的电路图为顶级电路图,可以略过此步,否则,要用SaberSketch中Design>Use>Design_name来指定顶级电路图。
当指定顶级电路图后,SaberSketch在用户界面右下角显示设计名称,同时创建一个包含其它模拟信息和层次管理的文件(Design.ai_dsn)。如果电路图是层次的,SaberSketch会增加一个Design Tool(选择Tools>Design Tool或者点击工具栏中的Design Tool图标),如图2-1所示,可以用Design Tool来打开、保存、关闭层次图中的电路图,也可以在各个层次间浏览。虽然只指定一个顶级图,但仍可以打开、浏览层次图以外的其它电路图。
图2-1 Design Tool
􀂾 网表
由于Saber不能直接读取电路图,必须通过网表器产生的网表来进行模拟。产生的网表器是一个ASCII文件,包含元件名、连接点和所有非默认的元件参数。要进行模拟时,只要网表中的连接不同于设计中的,SaberSketch会自动对设计进行网表化。例如:如果增加或修改一条连线,下次分析时,SaberSketch会自动对设计进行网表化并重新调入到Saber中。如果改变连线的颜色,再去进行分析,Saber将使用原有的网表,因为设计的连接没有改变。如果改变属性,SaberSketch会自动发送一条Alter命令到Saber中,改变内存网表,因而减少了重新网表化的需要。
􀂾 设定网表器和Saber实施选项
只有第一次运行分析时,Saber才会创建网表并运行,在SaberGuide中进行分析之前,应验证网表器和Saber实施选项。
1、在SaberGuide中验证网表器(Edit>Saber/Netlister Setting),网表器用下面的选项创建
- 13 -
网表,网表包含了电路的所有特性,如图2-2:
图2-2 网表器设置
● Hypermodels:使模拟信号与数字信号匹配,如果没有制定Hypermodel,网表器将使用默认的理想的Hypermodel,其表现特点类似于CMOS技术,输出的默认理想的Hypermodel的表现类似于理想的电压源,其参考电压定义于Netlister/Basic标签的Power net name和Ground net name。
● Map Files:使符号与它们相应的MAST模板匹配,MAST是能够被Saber模拟器读取的模型语言。已提供的模拟元件的Map Files能够自动调入网表器中,提供的Map Files必须位于saber_home/bin目录中,在Saber/Netlister Setting框中的Map Files中具体制定的匹配文件必须位于SABER_DATA_PATH环境变量制定的目录中。
2、设定Saber实施选项(Edit>SaberGuide Preferences),如图2-3所示。
图2-3 Saber实施选项
􀂾 对设计进行模拟
在验证完网表器和Saber实施选项后,下一步将进行模拟,一般情况下,先要验证设计的功能。由于设计的电路是工作在理论条件下,所以要调节设计的参数,以减少设计成本和提高电路的可靠性。Saber软件包含了多种分析,在验证前选择合适的分析类型,分析前,SaberSketch会决定是否有必要重新生成网表,如果有必要,它将会重新生成网
- 14 -
表。如果没有制定顶级电路就进行分析,将会提示制定顶级电路图或者取消分析,除非所设计的电路图是单层的。
● 验证设计功能
对所设计的功能,可在时域和频域上进行验证,Saber提供了以下的分析方法:
▲ 要验证设计在时域上的规范,可用瞬态分析来看系统在时间上的响应。傅立叶分析(Fourier analysis)和快速傅立叶分析(FFT analysis)将时域上的波形转变成频谱。
▲ 要验证设计在频域上的规范,用交流分析(AC analysis)来决定系统小信号频率响应,iFFT分析将频域的波形转换成时域上的波形。
▲ 直流传输分析(DC Transfer analysis)来扫描独立源和计算每个操作点的扫描值。
● 调节设计参数
Saber用下列方法来调节设计参数,如设计中的元件数值及容限等:
▲ Vary:用Vary可以对设计或元件的一系列设定的参数进行描述,对每个参数都进行一系列的分析。
▲ Monte Carlo:用蒙特卡诺分析对设计或元件参数随机变化,进行各种分析,对模拟结果进行评估。
▲ Sensitivity:对不同设计或元件的参数的改变,性能测量的敏感度。
▲ Stress:在精确的DC、DC传输或瞬态分析中,分析元件是否会过应力。
● 检查Saber 脚本
点击SaberDesigner用户界面右上角的Saber Transcript图标(>cmd)来查看Saber运行的信息,Saber将信息存在与网表相同的目录,名称为design.out的文件。
􀂾 查看分析的波形
SaberSketch提供两种查看波形的方法,一种是用SaberScope波形分析器,另一种是用SaberSketch中的DesignProbes。下面将介绍怎样在信号列表中加入节点,怎样查看模板的内部信号,怎样使用SaberSketch中的DesignProbes:
● 具体制定SaberSketch中的节点或管角来创建波形
Saber用信号列表来决定哪个信号加入到画图文件中,可用SaberScope或DesignProbes来查看存于画图文件中的信号的波形。默认情况下,Saber为设计的根目录中的所有节点都会创建波形,可以手动添加或创建节点或管教到信号列表,也可以通过下面的方法:
1、 确定设计中有.ai_grm文件,如果没有,可以对设计进行网表化即可生成(Design>Netlist designname)。
2、 选择要分析的连线,然后选择所需的分析类型(如瞬态分析)。
3、 在Input/Output标签中,点击Select按钮创建或修改信号列表,从弹出的菜单中使用其中的一项:
▲ All Toplevel Signals:分析顶级设计中的所有信号
▲ All Signals:分析设计中所有的信号
▲ Get Selected Signals:分析已选的节点或管脚名称
▲ Append Selected Signals:在目前的信号列表中追加已选的信号
4、 在Include Signal Types处,选择下面其中一种:
▲ Across Variables Only:仅分析变量两端
▲ Through Variables Only:仅分析通过变量的数据
▲ All Variables:都分析
5、 验证分析框中的其它参数设置,点击OK按钮即可运行分析,分析完成后,可用SaberScope或DesignProbes查看节点或管脚的波形。 - 15 -
● 在连线或管脚上添加DesignProbes,查看波形
Probe是SaberSkech中仅有的有波形查看功能的图形窗口,可以在任意一点添加Probe,和SaberScope一样,SaberSketch中的Probe用信号管理器(Signal Manager)控制DesignProbes需要调用和查看的画图文件(Plot Files)。当运行分析时,会覆盖目前的画图文件,SaberSketch会在Probe中刷新波形,如果要保留波形,可以指定一个不同的画图文件名称。
1、在设计中添加Probe:
将鼠标光标移到连线或管脚处,点击右键,在快捷菜单中选择Probe。要为元件具体管脚添加Probe,将鼠标移到元件符号处,从右键快捷菜单中选Probe,会出现Select Port对话框,如图2-4所示,从中选择要添加的管脚。
图2-4 选择元件符号的管脚
2、在已有的Probe窗口中探测不同点的波形:
将Probe箭头指向连线或管脚即可查看相应的波形,只要相应的信号在画图文件中,就可指向该管脚或连线。(注:本人在用的过程中,如图2-4的情况,选择信号后,可能在Probe中显示不出来,只要把Probe的箭头移到其它地方,再移回来就可以了)
3、指定Probe要使用的画图文件:
用Probe的信号管理器指定要调用的画图文件(Probe>Probe Signal Manager),或者在Probe上的快捷菜单中选择Display Plotfiles,可以控制要调用的画图文件。



热门招聘