欢迎来到天天文库
浏览记录
ID:42169453
大小:289.51 KB
页数:6页
时间:2019-09-09
《Saber MAST建模与模型测试》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、SaberMAST建模与模型测试一、主要内容建模+测试二、建模1.EDA分类:EDA分为两类:l实现类工具:产生加工图纸文件,可以直接用于生产的,layout和综合器(编程)。软件主要有Protel、powerpcb等l验证类工具:不产生加工图纸文件,用于对功能和性能进行验证,像时序仿真、系统验证。软件主要有saber、modelsim、pspice等2.saber仿真验证1)系统级仿真:如汽车、飞机等大系统,包含机械、电、液压、控制等。其关心的问题是系统功能验证,一般是函数层面的东西,不关系系统实现(器件EDA模型)。2)模块
2、级仿真:模块的定义与其所处的层次有关,可以上升为系统级,也可以下降为器件级。部分关心功能,部分关心实现,如发动机、车门、闸、灯、轴等。3)元器件级:由若干器件组成的电路/系统。可以实现的,即可以由器件的EDA模型组成。在进行系统仿真之前要弄明白对象:系统是什么,模块是什么,其器件是什么。3.验证方法及方式包含两种方法:Top->Down和Down->Top1)Top->Down自上至下分别是系统级-->模块级-->器件级,在系统级不关心器件,只关心传递函数层面的实现;在模块级能用器件实现的用器件实现,其余的用传函实现;在器件级用
3、器件的EDA模型实现。1)Down->Top首先由器件的EDA模型建立器件级模型,根据仿真的结果抽象处模块的功能,在模块级用传函加器件的方式分析模块的功能,并进一步抽象得出系统级的功能和传函,进行系统功能验证。两种方式的区别:1)Top->Down:属于定制类型的仿真验证,通用性较差,环境和电路参数改变后,模块和器件级的构建都需要重新来过,器件级建模工作量小。2)Down->Top:属于通用型的仿真验证,通用性较强,因为器件是通用的模型,能够应用到不同的场合,所以顶层更改功能较容易实现,验证精度较高,但是器件级建模工作量大。1.
4、建模1)目标分类方法:l定制建模:验证所关心的设计,器件的其余功能和性能不关心。l通用建模:严格按照器件特性建模,工作量大。如运放模型:定制模型可以只关心直流放大倍数A;通用模型还要考虑交流放大倍数、频率响应特性、一阶频率特性等。2)系统层次和建模分类关系系统级器件级模块级定制通用在模块级根据需要来判断是选择定制型建模还是选择通用型建模。2.建模基本流程1)明确目标:l器件行为:描述的是器件功能,比如运放起放大作用。l器件特性:考量的是器件实现功能的精度,如5V逻辑的输出是4.9V。l模型测试:测试行为和特性是否真的实现了。1)
5、研究目标:研究目标的功能、行为和特性,一定要成文并且经过反复思考,必要时征求设计人员的意见。2)选择建模方法:根据目标研究结果和时间进度要求选择Top->Down或者Down->Top的方式建模。3)编写模型代码。4)测试:可能会占到建模的一半甚至是以上的时间。明确目标方法写代码测试Debug调试写测试力写测试力先后写测试力的优缺点:l先写测试力,针对研究目标,更改代码也会是针对目标而改的,考虑会比较全面。l后写测试力,往往会变成对所写代码的测试,不是针对研究目标。1.建模方法按照优先级从低到高排列:1)参量化模板(templa
6、te):Saber库中有很多通用模板,更改其中有把握更改的参数,如改变名为model的参数。通用模板的default参数能够cover大多数应用情况。基本原则:能够理解的参数,能够获得数据的参数去修改,没有把握的不要动。2)宏模型(macro-modeling):hierarchical层次化建模,利用MAST和Netlist方式建模3)语言:在上述两种建模方式都无效的情况下才考虑用语言建模,主要用到MAST、VHDL-AMS、SaberHDL、C、Fortran等4)至于Saber与其它工具的接口、协同只能算是技巧2.MAST
7、语言1)template结构header部分:templatenamepinlist=parameterslist定义pin定义digitalstatelogic_4electricalparameter声明number:Saber的数据全是浮点型的,没有整数的概念enum:枚举类型struct:结构体,可以包含任意类型的元素string:字符串类型array:数组,其实是数字数组body部分:{Netlist:网表引用parameters{}:number和string类型的变量在此处赋值values{}:定义成val类型的变
8、量在此处赋值when{}:数字逻辑control_section{}:步长和初始化equations{}:var类型的变量在此处计算}网表语法:primitive.refp:n1m:n2=参数定义如:l.l1p:n2m:n3=l=1mc.c1p:n3m:0=c=
此文档下载收益归作者所有