- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SaberMAST要点归纳
1. Saber MAST模型分类
MAST可以描述以下三类系统,每一类系统的模型写法各不相同。
(1)连续模拟系统(continuous analog systems)
在仿真连续模拟系统时仿真器按照仿真时刻反复求解一系列代表仿真模型的微分方程。此类系统的每一个节点(node)都包括两个系统变量(system variable),一个across量和一个through量,通常每个量都与一个单位(unit)关联,在cosmos scope中显示波形时可以显示相应单位。以电气模型为例,每一个节点都包括一个across量(电压)和一个though量(电流),单位分别是V和A。
连续模拟系统还包括液压系统和磁路系统。
(2)事件驱动系统(event driven systems)
此类系统的典型代表是数字逻辑系统,仿真器只有在事件发生时(如输入量发生变化)才计算并更新各个输出。此类系统的节点只包含一个无单位量。
(3)数据流系统(data flow systems)
此类模型的典型代表是控制系统,和连续模拟系统类似,可以按照时域或频域仿真,但是严格区分输入量和输出量,节点只包含一个无单位量。
2. MAST 基本概念
2.1 MAST template基本形式
MAST template 是用MAST语言描述一个仿真模型的基本单位。MAST template是按照特定的语法编写的纯文本文件,后缀是.sin。
MAST template的基本格式包括以下几个部分:
(1) template header – 声明template的名称(reference),管脚(pin)和参数(argument)
基本形式如下:
template TEMPLATE_NAME PIN1 [PIN2 PIN3…] = ARG1, [ARG2, ARG3 …]
PIN_DECLARATION
ARG_DECLARATION
容易看出template header由关键字template开始,后面紧跟template的名称,再接下来是管脚(pin)的名称,然后是一个等号(=),接下来是参数名、
值得注意的是等号左边的各个名称不需要用逗号(,)分隔,而等号右边必须用逗号分隔各个参数。
(2) template header declaration – 对pin和argument类型的进行声明
MAST的所有变量在使用前都必须声明其类型。第一行的模板参数声明以后是管脚的类型声明和参数类型声明。形式如下:
PIN_TYPE PIN_NAME
ARG_TYPE ARG_NAME
管脚(pin)的类型根据template的类型可以定义为electrical(电气模型)、input/output(控制系统模型)和state(数字系统模型)等。参数(argument)类型通常为无单位简单量number。
例2-1 理想电流源
template isource p m = is
electrical p,m
number is
{
equations {
i(p-m) += is
}
}
对于参数较多较复杂的模型可以将参数分类,再将同一类的参数定义为一个结构(struct)
(3) template body – 对模型的行为进行描述
结构化(structured)的模型包含本地变量声明(local variable declaration)和若干个段(section),各个段分别完成不同的任务。
最重要的段是equations section,template在此段中对系统变量(system variable)赋值。对于电气模型,需要赋值变量是节点电流;对于控制系统,是输出量。
电气模型见例2-1。
在连续模拟系统中equations section的任务在于给出用于求解通过模型管脚节点的through量的表达式,对于电气模型而言,即给出节点电流的表达式。仿真器利用给出的节点电流的表达式代入每个节点的KCL方程,从而最终求出节点电压,节点电压即系统变量。对于电压源和电感则情况有所区别,此类模型的系统变量是电流而不是电压。
例2-1中i(p-m)表示从节点p到节点m的电流。由于电路网络中可能有多个模型并联在相同节点,每个模型对节点电流的作用应该是使其增加相应值,所以对其赋值应该用+=。
例2-2 控制系统的加法器
template adder in1 in2 out = k
input in1 in2
output out
number k
{
equations{
out = (in1+in2)*k
}
}
对于事件驱动型的数字系统,template body中描述输入输
原创力文档


文档评论(0)