版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
MAST语言建模MAST语言建模1MAST语言建模概述MAST语言是一种硬件描述语言,它是用数学的方法来描述的,它可以描述硬件的结构,也可以描述硬件的功能。建立描述硬件结构的模型比较难,如果建立得比较好,其精度较高;建立描述功能的硬件模型相对比较简单,但在使用这种模型的时候受到比较多的限制。MAST语言建模概述MAST语言是一种硬件描述语言,它是用数2MAST语言的结构和功能MAST语言可以描述很多种类型的器件,包括模拟器件、数字器件等。MAST语言的结构主要包括两种方式,一种是structured方式,另一种是unstructured方式。structured方式就是将程序体分成许多段,即在程序体中包括许多程序段;unstructured的程序体中的程序没有分段。MAST语言的结构和功能MAST语言可以描述很多种类型的器件3structured和unstructured的比较structured和unstructured的比较4理想恒流源的模型templateisourcepm=iselectricalp,mnumberis=100{equations{i(p->m)+=is}}理想恒流源的模型templateisourcepm=5理想恒流源模板简介模板头、头说明和模板体,在模板体中包含方程段。模板头说明模板名、模板的连接点和使用模板时需要赋值的变量,这个变量必须是在网表中进行赋值。定义模板头的格式为:templatetemplate_nameconnectionpoints=arguments定义模板头的关键字为template和elementtemplate。这两者的区别一个是内部节点可见而另一个是内部节点不可见。理想恒流源模板简介模板头、头说明和模板体,在模板体中包含方程6理想恒流源模板简介(续1)template_name是模板名,在通常情况下该模板的文件名和这个模板应该一致。Connectionpoints是定义的端点名,而argument则是使用这个模板时需要赋值的变量,这个变量是通过网表来赋值的。模板头说明:说明在模板头中出现的除模板名以外的所有变量,它应位于模板头之下。在恒流源模板中,有两个类型的变量需要说明,一个是节点类型,另一个是变量类型。理想恒流源模板简介(续1)template_name是模板名7理想恒流源模板简介(续2)模板连接点是一种特殊的数据类型,在SABER中叫pin类型。它与建立的模板有关。pin类型可以是机械连接点、热连接点电连接点。由于在恒流源的连接点是电,因此其连接点说明为electricalp,m。作为头说明的另一部分就是对模板参数的说明,它需要说明的是模板参数的类型,即数的类型。关于数的类型将在后面讲述。在本模板中就定义了一个数。numberis理想恒流源模板简介(续2)模板连接点是一种特殊的数据类型,在8理想恒流源模板简介(续3)对于一个模板来讲,连接点和模板参数并不是必须的,在一些模板中并没有连接点,也有一些模板就可能没有参数。对于一个模板而言,通常情况下除了模板头以外还有模板体,模板体都是在一对括号中,在isource模板中的模板体就是一个方程段。理想恒流源模板简介(续3)对于一个模板来讲,连接点和模板参数9理想恒流源模板简介(续4)isource中的方程段是用MAST语言结构体的形式描述恒流源的特征,实际上就是用模板方程来描述器件模拟端口的特征。在恒流源模型中,电流是从p点流进从m点流出,因此在方程段中要描述这一特征,在MAST中描述这一特征i(p->m)+=is理想恒流源模板简介(续4)isource中的方程段是用MA10系统对模板的调用假设有一个系统调用了这个恒流源模板isource,在这个系统中这个恒流源的名字为i1,这个恒流源的两端与节点a、b相连,恒流源电流的大小为2,则调用这个模板的语句为:isource.i1ab=is=2,网表与模板间的对应关系:isource.i1ab=is=2templateisourcepm=is系统对模板的调用假设有一个系统调用了这个恒流源模板isour11理想恒流源模型的创建上述模型描述的电流从p点流进、m点流出,其电流的大小为is,在使用这个器件时在网表中要对这个值进行赋值。用任何文本编辑器编写上述这段文本后,以文件的扩展名为.sin存盘。通常情况下文件名和模板名要一致,如果文件名和模板名不一致时在使用这个模板的网表中要包含这个文件。理想恒流源模型的创建上述模型描述的电流从p点流进、m点流出,12线性电容模板templatecapacitorpm=capelectricalp,mnumbercap{equations{i(p->m)+=d_by_dt(cap*(v(p)-v(m)))}}线性电容模板templatecapacitorpm=13MAST模板的搜寻机制当SABER仿真器遇到了先前没有定义的模板时x,它首先在x.sin文件中寻找该模板。如果没有这个文件,则SABER仿真器将在include语句中所包含的文件中去寻找x模板,如果在include文件中仍没有找到x模板,则将在映射文件中寻找x模板,如果仍没有找到该模板,就送出错误信息。MAST模板的搜寻机制当SABER仿真器遇到了先前没有定义的14pin类型数据在MAST语言中,所谓指针就是元件模板的对外连接点的一种形式,它也是模板对外连接的最常用的一种形式,定义指针实际上就是定义了元件的一种连接方式。pin类型数据是SABER仿真器中定义的一种数据,这种数据是专门针对器件的连接点,它包括很多种类型的连接点,它们是通过量纲来定义连接端点的类型的。pin类型数据在MAST语言中,所谓指针就是元件模板的对外15pin类型数据(1)每定义一种连接点就定义了一对变量,一个是cross变量,另一个是through变量。定义一个端点和定义一个连接点的cross变量和through变量是等价的。在定义一个pin变量的同时也定义了这个变量的量纲。pin类型数据(1)每定义一种连接点就定义了一对变量,一个16模拟量单位的定义unit{“缩写”,”全称”,”描述”}名字unit{“rpm”,”revolutions/minute”,”argularvelocity”}wunit{"A","Amperes","Current"}iunit{"V","Volts","Voltage"}v模拟量单位的定义unit{“缩写”,”全称”,”描述”}名17cross变量和through变量cross变量是系统变量,其主要特征是经过任何一个回路,cross变量值的和位0。在电气系统中的cross变量是系统中节点电位。through变量是与cross变量相对应的系统变量,through变量的主要特征是任意一节点其值的和为0。在电气系统中的through变量为电流。cross变量和through变量cross变量是系统变18连接点的定义pinidentiferacrossuint1throughunit2或pinidentiferthroughunit1acrossunit2pinelectricalthroughiacrossvpinrotationalthroughwacrosst在编程时,之所以可以利用electrical这样的端点定义,是因为在SABER中有一个文件unit.sin,在其中定义了这个端点。在这个文件中定义的所有其它端点,都可以在编程中不需要定义直接使用,但是如果要使用在该文件中没有定义的端点,则需要自己定义。连接点的定义pinidentiferacrossuin19SABER仿真的过程SABER仿真的过程20节点分析法根据电路的结构,应用KCL定律,用节点电压去表示之路电流,最后求解节点电压的方法叫节点电压法。从上面的叙述可以看出,节点电压法是根据电路的结构,首先求出电路的节点电压,然后再求电路中各个之路的电流。节点分析法根据电路的结构,应用KCL定律,用节点电压去表示之21SABER仿真过程(续1)SABER仿真器解方程时采用的是节点法,在通常情况下器件端点电压是由系统的结构决定了,也就是说如果系统的结构一定则系统中各个器件端点电压就是一定的,因此SABER仿真器认为系统中各个器件的端点电压是已知的,而需要求的就是各个器件的电流。SABER仿真过程(续1)SABER仿真器解方程时采用的是节22SABER仿真过程(续2)SABER仿真过程(续2)23恒电压源的工作过程从前面的介绍可以知道,仿真器是以获得电流为最终目的,如果一个系统的一个之路的电流没有获得,仿真器则认为没有达到最终的目。但是恒压源的的电流受系统结构的限制,如果系统结构不能确定,则恒压源的电流将不能确定。恒电压源的工作过程从前面的介绍可以知道,仿真器是以获得电流为24恒电压源模板templatevsourcepm=vselectricalp,mnumbervs{variivsequations{i(p->m)+=ivsivs:v(p)-v(m)=vs}}恒电压源模板templatevsourcepm=v25恒电压源模板简介在SABER仿真器都是采用节点法解方程,并以求解之路电流为最终目的,也就是说如果求得了之路电流,SABER仿真器就认为完成了任务。在恒电压源模块中,由于电源电压和电流之间的关系受系统的影响,在系统不确定时不可能通过电源的电压来求得电源的电流。恒电压源模板简介在SABER仿真器都是采用节点法解方程,并以26恒电压源模板简介(续)在模板体中设置一个变量,该变量为系统变量(var型变量),用这个变量来描述电源的电流。电源电流的确定要满足两个条件,一要满足电源电压恒定,二要满足KVL定律。在模板中有多少个系统变量,在方程段中就应该有多少个方程。恒电压源模板简介(续)在模板体中设置一个变量,该变量为系统变27在模板体中设置系统变量的方法var是在模板体中常用的变量,var型变量为系统变量。在系统中如果增加一个var变量,则在方程段中就要增加一个方程来求解该变量。varunitname[,name...]在方程段中指定方程的格式为:var_variable:expression1=expression2在模板体中设置系统变量的方法var是在模板体中常用的变量,v28
templateinductorpm=indelectricalp,mnumberind{variilequations{i(p->m)+=ilil:v(p)-v(m)=d_by_dt(ind*il)}}templateinductorpm=ind29线性电感模板的特点在前面已经讲过,SABER仿真器是以解之路电流为最终目的,因此在方程段中建立方程时都是以解电流为目的。但是在电感的特征方程中电流是电压的积分,为了将其转换为微分方式,在模板体中添加了一个系统变量,利用系统变量来转换这种关系。线性电感模板的特点在前面已经讲过,SABER仿真器是以解之路30在模板间使用MAST系统变量在本部分主要内容是模板间的参数相互调用而不需要连接点,这类器件比较多,在SABER元件库中也有这类器件,例如互感器件,受控源等。在模板间使用MAST系统变量在本部分主要内容是模板间的参数相31耦合元件的使用耦合元件的使用32耦合器件的仿真波形耦合器件的仿真波形33在模板间使用MAST系统的方法在一个模板中定义了一个through变量,如果在系统中的其它模板要用这个变量的值,则可以在模板中定义一个端点变量,该变量的类型为ref型,模板可以从ref型端点变量中输入through变量值,而不需要经过连接点。在模板间使用MAST系统的方法在一个模板中定义了一个thro34CCVS模板templatecvtcipm=kreficielectricalp,mnumberk{variiequations{i(p->m)+=ii:v(p)-v(m)=k*ci}}CCVS模板templatecvtcipm=k35CCVS模板的特点该模板在头说明中定义了一个ref变量,该变量为一个端口变量,其值为仿真系统中其它模板的through变量,但是ref型端点变量由两部分组成,一部分是引用模板名,另一部分是模板中被引用的变量名。CCVS模板的特点该模板在头说明中定义了一个ref变量,该变36ref型变量的特点ref变量和var变量都是系统变量,对于任何一个系统变量都因该有一个方程与之对应。对于一个pin类型数据,它有两个系统变量,一个是对应的through变量和cross变量,SABER仿真器认为cross变量为已知量,在通常情况下它通过KCL定律来求解through变量;对于设置的var变量,在方程段中因该指定方程来求解该变量;对于ref变量,也因该有一个方程来求解这个变量,但这个方程不在定义ref变量的模板内,而在被引用的模板内。ref型变量的特点ref变量和var变量都是系统变量,对于37ref型变量的特点(续)ref变量的定义通常在模板头中。refunitpnameCCVS模板的引用方法:cvt.1i(v.1)ab=1kv.1cd=5v模板是SABER库中的模板,而i是其作为var变量的分支电流。从这个引用中可以看到,ref变量的赋值有两部分,一个是模板的实例名,另一个是模板实例中的through变量名。ref型变量的特点(续)ref变量的定义通常在模板头中。38CCVS模板方程段的特点在本模板的方程段中添加了一个方程来求解系统变量,这个系统变量是在模板体中设置的,其设置的原因与恒电压源的情况相同。CCVS模板方程段的特点在本模板的方程段中添加了一个方程来求39互感器件模板的使用inductor.l1p:p1m:m1=ind=1inductor.l2p:p2m:m2=ind=2mutind.1i1:il(inductor.l1)i2:il(inductor.l2)=\m=0.98*sqrt(ind(inductor.l1)*ind(inductor.l2))互感器件模板的使用inductor.l1p:p1m:m140互感器件模板templatemutindi1i2=mrefii1,i2numberm{equations{i1-=d_by_dt(m*i2)i2-=d_by_dt(m*i1)}}在本模板中,没有确定电流i1和i2,在这个模板中的i1和i2都是引入量,求这两个量的方程分别在电感模板中方程段il:v(p)-v(m)=_by_dt(ind*i)在本模板的方程段中定义了变量i1和i2的关系。互感器件模板templatemutindi1i2=41CCVS模板和互感模板的区别这两个模板的相同点就是这两个模板都用了ref型变量,从这两个模板中可以体会到ref变量的使用。这两个模板的不同点就是在方程段中,CCVS模板在方程中没有方程来描述ref变量,但在互感模板中的方程段中的方程就描述了两个ref变量间的关系。无论在方程段中是否有方程来描述ref变量,但是该方程决不是求解ref变量,ref变量在本模板中不能求解,它的解因该在被引用的模板中。CCVS模板和互感模板的区别这两个模板的相同点就是这两个模板42电容模板elementtemplatecapacitor_1pm=cap,icelectricalp,mnumbercap,ic=undef{valqqcvalvvcvalues{vc=v(p)-v(m)#voltageacrosscap.qc=vc*cap#chargestoredincap.}control_section{initial_condition(vc,ic)}equations{i(p->m)+=d_by_dt(qc)#currentthroughcap.}}电容模板elementtemplatecapacitor43电容模板的特点在模板定义中使用的是elementtemplate而不是template,这说明这个模板内部节点可见。在头说明中添加了一个量ic,这个量描述的是电容初始状况。在头说明还用了一个数字就是undef,这在SABER仿真器中是一个数,这个数可以对变量赋值,在本模板中它对ic赋值。它可以用在条件语句中,但是这个数不能计算。ic=undef表明如果没有其它值赋值的情况下,电容初始状况可以忽略不计。电容模板的特点在模板定义中使用的是elementtempl44电容模板的特点(续1)在建立实际系统时常常使用value段,这主要是因为:定义一种变量,val型变量,这种变量主要好处就是可以通过extract指令来提取,这样在不增加仿真时间的情况下可以获得更多的信息。一个val变量通常作为中间变量。而val变量的赋值就在value段中。调用foreign例程和噪声源的定义通常都是在这段。value段既是一个程序段,也是一个说明段。作为程序段,在执行该段程序时是从上到下的顺序,因此在编程时引用的变量一定要在前面定义;作为一个说明段,仿真认为需要该变量时才会执行该段对应的语句。电容模板的特点(续1)在建立实际系统时常常使用value段,45电容模板的特点(续2)电容模板的另一个特点就是在仿真完成后需要提取一些变量,为仿真提供更多的信息。在仿真结束后,本模板可以提供电容两端的电压和电容储存的电荷,这两个量可以通过extract命令来提取,也可以在siglist中设置。因此在Value中定义了两个val变量。电容模板的特点(续2)电容模板的另一个特点就是在仿真完成后需46Value段的特点在value段中可以包括赋值语句和条件语句,赋值语句的格式为:variable=expressionvalue段既是一个顺序段,也是一个说明段。作为程序段,在执行该段程序时是从上到下的顺序,因此在编程时引用的变量一定要在前面定义;作为一个说明段,仿真认为需要该变量时才会执行该段对应的语句。
value段的关键词是value.Value段的特点在value段中可以包括赋值语句和条件语句47Value段的特点(续)只有仿真器需要提取相关变量时才会执行Value段;当方程段中需要Value段中的变量时才会执行Value段。如果不需要时,模板中的Value段是不会被执行的。因此在模板程序中编写Value段不会增加仿真时间(在提供相同信息的情况下),但是如果在需要的话,模板程序可以提供更多的信息。Value段的特点(续)只有仿真器需要提取相关变量时才会执行48val变量的定义val变量必须为局部变量,即val变量必须在程序的模板体中定义。valunitname[,name,name,...]valqqcvalvvval型变量必须在value段中赋值。如果模板为unstructured,则必须在模板体中赋值。val变量的定义val变量必须为局部变量,即val变量必须49控制段控制段是为仿真器提供仿真系统的系统信息而不是仿真系统中元件的信息,控制段的关键词是control_section,在关键词后接{}。在本模板中,使用了initial_condition(vc,ic),它确定的是系统仿真时的电容初始条件是端电压为vc。控制段控制段是为仿真器提供仿真系统的系统信息而不是仿真系统中50initial_condition的使用在一些模板中,需要确定其初始条件,确定初始条件通常都是在控制段中。initial_condition(variable,value)其中variable为需要确定初始条件的系统变量或系统变量的差,value为初始条件的值。initial_condition的使用在一些模板中,需要确51多类型电压源下面将建立一个电压源模板,该模板有如下功能:1)提供恒压源在作直流分析和时域分析2)在作时域分析时电压源提供一个指数函数的电压波形。3)在作小信号AC分析时,它可以作为一个频域信号。这个电压源模拟了三种不同的输出函数。多类型电压源下面将建立一个电压源模板,该模板有如下功能:52多类型电压源模板1elementtemplatevsource_1pm=supply,tran,ac2electricalp,m#headerdeclarations3numbersupply=045struc{#startoftranstructure6numberv1=0,#initialvoltage7v2=0,#voltageattime=inf8tau=0.000001#timeconstant9}tran=()#endoftranstructure1011struc{#startofacstructure12numbermag=0,#ACmagnitude13phase=0#ACphase14}ac=()#endofacstructure//////////////////////////////////////////////////////////////////////////////////////////////////15{#starttemplatebody16variis#localdeclarations17valvvs组合数简单数多类型电压源模板1elementtemplatevso53多类型电压源模板(续)values{19if(dc_domain|time_domain){#Iflargesignal20if((tran->v1~=0|tran->v2~=0)&tran->tau>0){21#Ifwaveformisdefined22vs=tran->v1+(tran->v2-tran->v1)*(1-exp(-time/tran->tau))23}#sourcevoltage=waveform24#atcurrenttime25else{#otherwise26vs=supply#sourcevoltage=supply27}28}29elseif(freq_mag){#orifsourceisacmagnitude30vs=ac->mag#sourcevoltage=magnitude31}32elseif(freq_phase){#orifsourceisacphase33vs=ac->phase#sourcevoltage=phase34}模板体结构V段的作用方程段多类型电压源模板(续)values{模板体结构V段的作用方54多类型电压源模板的特点在模板头说明中定义了一个supply变量,该变量在直流分析或时域分析时提供恒压源。在头说明中,定义了两个结构体,用于确定时域分析时的指数电压源和频域分析的激励源。在结构体中,使用了仿真器变量(simvar),在value段中使用了使用了条件判据。多类型电压源模板的特点在模板头说明中定义了一个supply变55MAST语言中的简单数简单数据:简单数据有三种类型,它们分别是number,enum,string。它们分别是数值型数据,枚举型数据和字符数据。数值型数据:在MAST语言中,实数和整数都可以对数值型变量赋值,在使用是不区别。枚举型数据的定义:对象的名字有有限个,而在一个时刻其中只有一个是正确的。字符数据:这些数据就是有字符串组成,其内容通常要用引号。数值枚举字符电源MAST语言中的简单数简单数据:简单数据有三种类型,它们分别56MAST语言中的数值型数据数值型变量的定义:numberid1[=init],id2[=init]e.gnumbervcc=5,dc_input,rload=10k,cload如果上述数据是一个中的变量,则可以通过网表赋值,其赋值的方式分别为(argument),(templatename.refconnectionpoint=5,2.7,10k,47n)(templatename.refconnectionpoint=cload=47n,vcc=5,dc_input=2.7,rload=10k)返回MAST语言中的数值型数据数值型变量的定义:返回57MAST语言中的枚举数enum{evalue[,evalue]}id[=[int1],[int2]]e.g.enum{_n,_p}bjt_type=_n如果定义的枚举型数据为一个变量,则可以在网表中对该变量赋值(argument).templatename.refconnectionpoint=bjt_type=_n返回MAST语言中的枚举数enum{evalue[,eval58MAST语言中的字符数字符数的定义stringid[[=init][,init]]stringcoretype=“iron”如果字符为一个变量,则其值可以通过网表赋值,其赋值方式为:templatename.refconnectionpoint=coretype=“iron”
返回MAST语言中的字符数字符数的定义返回59MAST语言中组合数据组合数据:组合数据有两种基本类型,一种是结构数据(struc),另一种是联合数据(union)。采用结构数据的目的是把一些相关变量构成一个整体,而采用联合变量的目的是希望一个变量在不同的时候处理不同类型的信息。组合数据都由四个部分组成,关键词、数据名、数据定义和数据对象的实体。但是联合数据的每一个实体只有数据定义中的一个对象,而结构数据则没有这个特点。电源联合结构MAST语言中组合数据组合数据:组合数据有两种基本类型,一种60结构体的定义结构体是一种数据类型,其定义的方式为:struc[structurename]{member[member][...]}id[=initial_value][,id=initial_value,...]struc为定义结果体的关键词,structurename为结构体的名,member为结构体成员,id为结构体变量。由于本设计中描述指数输出波形的函数为:Vout=V1+(V2-V1)•(1-e)(-time/t),因此在tran这个结构变量中的成员为3;结构体的定义结构体是一种数据类型,其定义的方式为:61结构体的定义实例
struc{#startoftranstructurenumberv1=0,#initialvoltagev2=0,#voltageattime=inftau=0.000001#timeconstant}tran=()#endoftranstructure///////////////////////////////////////////////////////5struc{6numberv1=0,7v2=0,8tau=0.0000019}tran=()struc{numberv1,v2,tau}tran=(0,0,0.000001)
结构体的定义实例struc{#startoftr62结构体的使用结构体变量的值要么在初始化结构体获得,要么通过网表传输进来,如果一个结构体的数据在初始化时就赋值了,在网表中又赋值,则仿真器将采用网表输入的数据,如果一个结构体在初始化时没有赋值,在网表中也没有赋值,则在仿真时将报错。返回结构体的使用结构体变量的值要么在初始化结构体获得,要么通过网63联合数据的定义联合数据的定义:定义结构数据用关键词union,其定义的语法为unionunionname{declarationdeclaration}id[[=init],[init]….]联合数据的定义联合数据的定义:定义结构数据用关键词union64联合数据的定义实例unionsource{numberdcstruc{numbermagnumberphase}ac}input1=(dc=5),input2=(ac=())定义了一个联合类型的数据,该数据由两个选项dc和ac组成,其中ac为一个结构体。联合数据的定义实例unionsource{65联合数据的定义实例(1)unionsource{numberdcstruc{numbermagnumberphase}ac}input1,input2unionsourceinput1=(dc=5),input2=(ac)在模板头中引用时为templatename.refconnectionpoint=input2=(ac=(mag=1,phase=0))返回联合数据的定义实例(1)unionsource{返回66模板函数体的结构电压源模板仿真器变量条件判断模板函数体的结构电压源模板仿真器变量条件判断67仿真器系统变量SABER仿真器中有一套仿真器系统变量,用它们来判断仿真器所进行的仿真类型和对仿真器的控制。这些变量为系统的内部变量,在使用这些变量时,不需要定义这些变量。如果将这些定义变量时使用了这些变量名,出现的后果不可预计。仿真器系统变量SABER仿真器中有一套仿真器系统变量,用它们68仿真器系统变量表直流时域控制模板体结构频域仿真器系统变量表直流时域控制模板体结构频域69频域分析仿真器系统变量的说明freq_domain:系统作频域分析时该变量值为1,其它情况下该变量值为0。freq_mag:在作频域分析时且仿真器需要相量的幅值时该变量为1,其它情况该变量为0。freq_phase:在作频域分析时且仿真器需要相量的相角时该变量为1,其它情况该变量为0。freq:频域仿真当前时刻的频率。变量表频域分析仿真器系统变量的说明freq_domain:系统作70时域分析仿真器系统变量的说明time_domain确定的是系统是否在作时域暂态仿真,如果系统在作时域暂态仿真,该变量的值不为0,否则该变量的值为0。time_init和tr_start都是在时域分析开始时该变量的值为1,但是在使用continuous和alter命令时time_init将不会为1而tr_start将会为1。tr_done和time_step_done分别在时域仿真完成时和时域仿真的每一个补偿完成时被设置为1。变量表时域分析仿真器系统变量的说明time_domain确定的是系71控制型仿真器变量的说明time确定的是系统在作时域暂态分析时仿真器当前的时间,仿真器在作其它分析时该变量的值为0Next_time用于指定仿真的下一个时间点。Step_size用于获得当前仿真步长值。Statistic:当系统在作统计仿真的时候,该变量的值为1。变量表控制型仿真器变量的说明time确定的是系统在作时域暂态分析72直流分析仿真器系统变量的说明dc_domain:系统在作直流分析时该变量的值为1,其它情况下该变量的值为0。dc_init:在开始作直流分析时该变量的值为1,这些直流分析包括工作点分析(dc)、dt分析和dctr分析的直流部分。dc_start:这时SABER早期版本的一个变量,为了与早期版本兼容,仍保留了这个变量,这个变量的作用与dc_init相同,但在作dt分析时,该变量无效。在SABER的后期版本中,也是首先将dc_init量赋为1后dc_start才变为1。dc_done:就是在直流分析完成后该变量的值为1。变量表直流分析仿真器系统变量的说明dc_domain:系统在作直流73MAST语言中的条件判据MAST语言的条件判据与其它高级语言的条件判据基本相同,其结构为if(condition1)statement1elseif(condition2)statement2...elsestatementNifelse是MAST语言的关键词,condition为MAST语言的条件,如果条件为假则其值为0,如果条件为真,则其不为0。MAST语言中的条件判据MAST语言的条件判据与其它高级语言74MAST语言的运算符==等于~=不等于>大于>=大于或等于<小于<=小于或等于模板体结构MAST语言的运算符==等于模板体结构75value段的作用在value段中,主要任务就是就是对变量vs赋值,不同的情况对变量vs赋不同的值,vs变量是一个中间变量,在方程段中根据vs变量的值和KVL来确定电压源的电流。value段的作用在value段中,主要任务就是就是对变量v76多类型电压源模板的方程段equation{i(p->m)+=isis:v(p)-v(m)=vs}电源模板多类型电压源模板的方程段equation{电源模板77MAST语言建模MAST语言建模78MAST语言建模概述MAST语言是一种硬件描述语言,它是用数学的方法来描述的,它可以描述硬件的结构,也可以描述硬件的功能。建立描述硬件结构的模型比较难,如果建立得比较好,其精度较高;建立描述功能的硬件模型相对比较简单,但在使用这种模型的时候受到比较多的限制。MAST语言建模概述MAST语言是一种硬件描述语言,它是用数79MAST语言的结构和功能MAST语言可以描述很多种类型的器件,包括模拟器件、数字器件等。MAST语言的结构主要包括两种方式,一种是structured方式,另一种是unstructured方式。structured方式就是将程序体分成许多段,即在程序体中包括许多程序段;unstructured的程序体中的程序没有分段。MAST语言的结构和功能MAST语言可以描述很多种类型的器件80structured和unstructured的比较structured和unstructured的比较81理想恒流源的模型templateisourcepm=iselectricalp,mnumberis=100{equations{i(p->m)+=is}}理想恒流源的模型templateisourcepm=82理想恒流源模板简介模板头、头说明和模板体,在模板体中包含方程段。模板头说明模板名、模板的连接点和使用模板时需要赋值的变量,这个变量必须是在网表中进行赋值。定义模板头的格式为:templatetemplate_nameconnectionpoints=arguments定义模板头的关键字为template和elementtemplate。这两者的区别一个是内部节点可见而另一个是内部节点不可见。理想恒流源模板简介模板头、头说明和模板体,在模板体中包含方程83理想恒流源模板简介(续1)template_name是模板名,在通常情况下该模板的文件名和这个模板应该一致。Connectionpoints是定义的端点名,而argument则是使用这个模板时需要赋值的变量,这个变量是通过网表来赋值的。模板头说明:说明在模板头中出现的除模板名以外的所有变量,它应位于模板头之下。在恒流源模板中,有两个类型的变量需要说明,一个是节点类型,另一个是变量类型。理想恒流源模板简介(续1)template_name是模板名84理想恒流源模板简介(续2)模板连接点是一种特殊的数据类型,在SABER中叫pin类型。它与建立的模板有关。pin类型可以是机械连接点、热连接点电连接点。由于在恒流源的连接点是电,因此其连接点说明为electricalp,m。作为头说明的另一部分就是对模板参数的说明,它需要说明的是模板参数的类型,即数的类型。关于数的类型将在后面讲述。在本模板中就定义了一个数。numberis理想恒流源模板简介(续2)模板连接点是一种特殊的数据类型,在85理想恒流源模板简介(续3)对于一个模板来讲,连接点和模板参数并不是必须的,在一些模板中并没有连接点,也有一些模板就可能没有参数。对于一个模板而言,通常情况下除了模板头以外还有模板体,模板体都是在一对括号中,在isource模板中的模板体就是一个方程段。理想恒流源模板简介(续3)对于一个模板来讲,连接点和模板参数86理想恒流源模板简介(续4)isource中的方程段是用MAST语言结构体的形式描述恒流源的特征,实际上就是用模板方程来描述器件模拟端口的特征。在恒流源模型中,电流是从p点流进从m点流出,因此在方程段中要描述这一特征,在MAST中描述这一特征i(p->m)+=is理想恒流源模板简介(续4)isource中的方程段是用MA87系统对模板的调用假设有一个系统调用了这个恒流源模板isource,在这个系统中这个恒流源的名字为i1,这个恒流源的两端与节点a、b相连,恒流源电流的大小为2,则调用这个模板的语句为:isource.i1ab=is=2,网表与模板间的对应关系:isource.i1ab=is=2templateisourcepm=is系统对模板的调用假设有一个系统调用了这个恒流源模板isour88理想恒流源模型的创建上述模型描述的电流从p点流进、m点流出,其电流的大小为is,在使用这个器件时在网表中要对这个值进行赋值。用任何文本编辑器编写上述这段文本后,以文件的扩展名为.sin存盘。通常情况下文件名和模板名要一致,如果文件名和模板名不一致时在使用这个模板的网表中要包含这个文件。理想恒流源模型的创建上述模型描述的电流从p点流进、m点流出,89线性电容模板templatecapacitorpm=capelectricalp,mnumbercap{equations{i(p->m)+=d_by_dt(cap*(v(p)-v(m)))}}线性电容模板templatecapacitorpm=90MAST模板的搜寻机制当SABER仿真器遇到了先前没有定义的模板时x,它首先在x.sin文件中寻找该模板。如果没有这个文件,则SABER仿真器将在include语句中所包含的文件中去寻找x模板,如果在include文件中仍没有找到x模板,则将在映射文件中寻找x模板,如果仍没有找到该模板,就送出错误信息。MAST模板的搜寻机制当SABER仿真器遇到了先前没有定义的91pin类型数据在MAST语言中,所谓指针就是元件模板的对外连接点的一种形式,它也是模板对外连接的最常用的一种形式,定义指针实际上就是定义了元件的一种连接方式。pin类型数据是SABER仿真器中定义的一种数据,这种数据是专门针对器件的连接点,它包括很多种类型的连接点,它们是通过量纲来定义连接端点的类型的。pin类型数据在MAST语言中,所谓指针就是元件模板的对外92pin类型数据(1)每定义一种连接点就定义了一对变量,一个是cross变量,另一个是through变量。定义一个端点和定义一个连接点的cross变量和through变量是等价的。在定义一个pin变量的同时也定义了这个变量的量纲。pin类型数据(1)每定义一种连接点就定义了一对变量,一个93模拟量单位的定义unit{“缩写”,”全称”,”描述”}名字unit{“rpm”,”revolutions/minute”,”argularvelocity”}wunit{"A","Amperes","Current"}iunit{"V","Volts","Voltage"}v模拟量单位的定义unit{“缩写”,”全称”,”描述”}名94cross变量和through变量cross变量是系统变量,其主要特征是经过任何一个回路,cross变量值的和位0。在电气系统中的cross变量是系统中节点电位。through变量是与cross变量相对应的系统变量,through变量的主要特征是任意一节点其值的和为0。在电气系统中的through变量为电流。cross变量和through变量cross变量是系统变95连接点的定义pinidentiferacrossuint1throughunit2或pinidentiferthroughunit1acrossunit2pinelectricalthroughiacrossvpinrotationalthroughwacrosst在编程时,之所以可以利用electrical这样的端点定义,是因为在SABER中有一个文件unit.sin,在其中定义了这个端点。在这个文件中定义的所有其它端点,都可以在编程中不需要定义直接使用,但是如果要使用在该文件中没有定义的端点,则需要自己定义。连接点的定义pinidentiferacrossuin96SABER仿真的过程SABER仿真的过程97节点分析法根据电路的结构,应用KCL定律,用节点电压去表示之路电流,最后求解节点电压的方法叫节点电压法。从上面的叙述可以看出,节点电压法是根据电路的结构,首先求出电路的节点电压,然后再求电路中各个之路的电流。节点分析法根据电路的结构,应用KCL定律,用节点电压去表示之98SABER仿真过程(续1)SABER仿真器解方程时采用的是节点法,在通常情况下器件端点电压是由系统的结构决定了,也就是说如果系统的结构一定则系统中各个器件端点电压就是一定的,因此SABER仿真器认为系统中各个器件的端点电压是已知的,而需要求的就是各个器件的电流。SABER仿真过程(续1)SABER仿真器解方程时采用的是节99SABER仿真过程(续2)SABER仿真过程(续2)100恒电压源的工作过程从前面的介绍可以知道,仿真器是以获得电流为最终目的,如果一个系统的一个之路的电流没有获得,仿真器则认为没有达到最终的目。但是恒压源的的电流受系统结构的限制,如果系统结构不能确定,则恒压源的电流将不能确定。恒电压源的工作过程从前面的介绍可以知道,仿真器是以获得电流为101恒电压源模板templatevsourcepm=vselectricalp,mnumbervs{variivsequations{i(p->m)+=ivsivs:v(p)-v(m)=vs}}恒电压源模板templatevsourcepm=v102恒电压源模板简介在SABER仿真器都是采用节点法解方程,并以求解之路电流为最终目的,也就是说如果求得了之路电流,SABER仿真器就认为完成了任务。在恒电压源模块中,由于电源电压和电流之间的关系受系统的影响,在系统不确定时不可能通过电源的电压来求得电源的电流。恒电压源模板简介在SABER仿真器都是采用节点法解方程,并以103恒电压源模板简介(续)在模板体中设置一个变量,该变量为系统变量(var型变量),用这个变量来描述电源的电流。电源电流的确定要满足两个条件,一要满足电源电压恒定,二要满足KVL定律。在模板中有多少个系统变量,在方程段中就应该有多少个方程。恒电压源模板简介(续)在模板体中设置一个变量,该变量为系统变104在模板体中设置系统变量的方法var是在模板体中常用的变量,var型变量为系统变量。在系统中如果增加一个var变量,则在方程段中就要增加一个方程来求解该变量。varunitname[,name...]在方程段中指定方程的格式为:var_variable:expression1=expression2在模板体中设置系统变量的方法var是在模板体中常用的变量,v105
templateinductorpm=indelectricalp,mnumberind{variilequations{i(p->m)+=ilil:v(p)-v(m)=d_by_dt(ind*il)}}templateinductorpm=ind106线性电感模板的特点在前面已经讲过,SABER仿真器是以解之路电流为最终目的,因此在方程段中建立方程时都是以解电流为目的。但是在电感的特征方程中电流是电压的积分,为了将其转换为微分方式,在模板体中添加了一个系统变量,利用系统变量来转换这种关系。线性电感模板的特点在前面已经讲过,SABER仿真器是以解之路107在模板间使用MAST系统变量在本部分主要内容是模板间的参数相互调用而不需要连接点,这类器件比较多,在SABER元件库中也有这类器件,例如互感器件,受控源等。在模板间使用MAST系统变量在本部分主要内容是模板间的参数相108耦合元件的使用耦合元件的使用109耦合器件的仿真波形耦合器件的仿真波形110在模板间使用MAST系统的方法在一个模板中定义了一个through变量,如果在系统中的其它模板要用这个变量的值,则可以在模板中定义一个端点变量,该变量的类型为ref型,模板可以从ref型端点变量中输入through变量值,而不需要经过连接点。在模板间使用MAST系统的方法在一个模板中定义了一个thro111CCVS模板templatecvtcipm=kreficielectricalp,mnumberk{variiequations{i(p->m)+=ii:v(p)-v(m)=k*ci}}CCVS模板templatecvtcipm=k112CCVS模板的特点该模板在头说明中定义了一个ref变量,该变量为一个端口变量,其值为仿真系统中其它模板的through变量,但是ref型端点变量由两部分组成,一部分是引用模板名,另一部分是模板中被引用的变量名。CCVS模板的特点该模板在头说明中定义了一个ref变量,该变113ref型变量的特点ref变量和var变量都是系统变量,对于任何一个系统变量都因该有一个方程与之对应。对于一个pin类型数据,它有两个系统变量,一个是对应的through变量和cross变量,SABER仿真器认为cross变量为已知量,在通常情况下它通过KCL定律来求解through变量;对于设置的var变量,在方程段中因该指定方程来求解该变量;对于ref变量,也因该有一个方程来求解这个变量,但这个方程不在定义ref变量的模板内,而在被引用的模板内。ref型变量的特点ref变量和var变量都是系统变量,对于114ref型变量的特点(续)ref变量的定义通常在模板头中。refunitpnameCCVS模板的引用方法:cvt.1i(v.1)ab=1kv.1cd=5v模板是SABER库中的模板,而i是其作为var变量的分支电流。从这个引用中可以看到,ref变量的赋值有两部分,一个是模板的实例名,另一个是模板实例中的through变量名。ref型变量的特点(续)ref变量的定义通常在模板头中。115CCVS模板方程段的特点在本模板的方程段中添加了一个方程来求解系统变量,这个系统变量是在模板体中设置的,其设置的原因与恒电压源的情况相同。CCVS模板方程段的特点在本模板的方程段中添加了一个方程来求116互感器件模板的使用inductor.l1p:p1m:m1=ind=1inductor.l2p:p2m:m2=ind=2mutind.1i1:il(inductor.l1)i2:il(inductor.l2)=\m=0.98*sqrt(ind(inductor.l1)*ind(inductor.l2))互感器件模板的使用inductor.l1p:p1m:m1117互感器件模板templatemutindi1i2=mrefii1,i2numberm{equations{i1-=d_by_dt(m*i2)i2-=d_by_dt(m*i1)}}在本模板中,没有确定电流i1和i2,在这个模板中的i1和i2都是引入量,求这两个量的方程分别在电感模板中方程段il:v(p)-v(m)=_by_dt(ind*i)在本模板的方程段中定义了变量i1和i2的关系。互感器件模板templatemutindi1i2=118CCVS模板和互感模板的区别这两个模板的相同点就是这两个模板都用了ref型变量,从这两个模板中可以体会到ref变量的使用。这两个模板的不同点就是在方程段中,CCVS模板在方程中没有方程来描述ref变量,但在互感模板中的方程段中的方程就描述了两个ref变量间的关系。无论在方程段中是否有方程来描述ref变量,但是该方程决不是求解ref变量,ref变量在本模板中不能求解,它的解因该在被引用的模板中。CCVS模板和互感模板的区别这两个模板的相同点就是这两个模板119电容模板elementtemplatecapacitor_1pm=cap,icelectricalp,mnumbercap,ic=undef{valqqcvalvvcvalues{vc=v(p)-v(m)#voltageacrosscap.qc=vc*cap#chargestoredincap.}control_section{initial_condition(vc,ic)}equations{i(p->m)+=d_by_dt(qc)#currentthroughcap.}}电容模板elementtemplatecapacitor120电容模板的特点在模板定义中使用的是elementtemplate而不是template,这说明这个模板内部节点可见。在头说明中添加了一个量ic,这个量描述的是电容初始状况。在头说明还用了一个数字就是undef,这在SABER仿真器中是一个数,这个数可以对变量赋值,在本模板中它对ic赋值。它可以用在条件语句中,但是这个数不能计算。ic=undef表明如果没有其它值赋值的情况下,电容初始状况可以忽略不计。电容模板的特点在模板定义中使用的是elementtempl121电容模板的特点(续1)在建立实际系统时常常使用value段,这主要是因为:定义一种变量,val型变量,这种变量主要好处就是可以通过extract指令来提取,这样在不增加仿真时间的情况下可以获得更多的信息。一个val变量通常作为中间变量。而val变量的赋值就在value段中。调用foreign例程和噪声源的定义通常都是在这段。value段既是一个程序段,也是一个说明段。作为程序段,在执行该段程序时是从上到下的顺序,因此在编程时引用的变量一定要在前面定义;作为一个说明段,仿真认为需要该变量时才会执行该段对应的语句。电容模板的特点(续1)在建立实际系统时常常使用value段,122电容模板的特点(续2)电容模板的另一个特点就是在仿真完成后需要提取一些变量,为仿真提供更多的信息。在仿真结束后,本模板可以提供电容两端的电压和电容储存的电荷,这两个量可以通过extract命令来提取,也可以在siglist中设置。因此在Value中定义了两个val变量。电容模板的特点(续2)电容模板的另一个特点就是在仿真完成后需123Value段的特点在value段中可以包括赋值语句和条件语句,赋值语句的格式为:variable=expressionvalue段既是一个顺序段,也是一个说明段。作为程序段,在执行该段程序时是从上到下的顺序,因此在编程时引用的变量一定要在前面定义;作为一个说明段,仿真认为需要该变量时才会执行该段对应的语句。
value段的关键词是value.Value段的特点在value段中可以包括赋值语句和条件语句124Value段的特点(续)只有仿真器需要提取相关变量时才会执行Value段;当方程段中需要Value段中的变量时才会执行Value段。如果不需要时,模板中的Value段是不会被执行的。因此在模板程序中编写Value段不会增加仿真时间(在提供相同信息的情况下),但是如果在需要的话,模板程序可以提供更多的信息。Value段的特点(续)只有仿真器需要提取相关变量时才会执行125val变量的定义val变量必须为局部变量,即val变量必须在程序的模板体中定义。valunitname[,name,name,...]valqqcvalvvval型变量必须在value段中赋值。如果模板为unstructured,则必须在模板体中赋值。val变量的定义val变量必须为局部变量,即val变量必须126控制段控制段是为仿真器提供仿真系统的系统信息而不是仿真系统中元件的信息,控制段的关键词是control_section,在关键词后接{}。在本模板中,使用了initial_condition(vc,ic),它确定的是系统仿真时的电容初始条件是端电压为vc。控制段控制段是为仿真器提供仿真系统的系统信息而不是仿真系统中127initial_condition的使用在一些模板中,需要确定其初始条件,确定初始条件通常都是在控制段中。initial_condition(variable,value)其中variable为需要确定初始条件的系统变量或系统变量的差,value为初始条件的值。initial_condition的使用在一些模板中,需要确128多类型电压源下面将建立一个电压源模板,该模板有如下功能:1)提供恒压源在作直流分析和时域分析2)在作时域分析时电压源提供一个指数函数的电压波形。3)在作小信号AC分析时,它可以作为一个频域信号。这个电压源模拟了三种不同的输出函数。多类型电压源下面将建立一个电压源模板,该模板有如下功能:129多类型电压源模板1elementtemplatevsource_1pm=supply,tran,ac2electricalp,m#headerdeclarations3numbersupply=045struc{#startoftranstructure6numberv1=0,#initialvoltage7v2=0,#voltageattime=inf8tau=0.000001#timeconstant9}tran=()#endoftranstructure1011struc{#startofacstructure12numbermag=0,#ACmagnitude13phase=0#ACphase14}ac=()#endofacstructure//////////////////////////////////////////////////////////////////////////////////////////////////15{#starttemplatebody16variis#localdeclarations17valvvs组合数简单数多类型电压源模板1elementtemplatevso130多类型电压源模板(续)values{19if(dc_domain|time_domain){#Iflargesignal20if((tran->v1~=0|tran->v2~=0)&tran->tau>0){21#Ifwaveformisdefined22vs=tran->v1+(tran->v2-tran->v1)*(1-exp(-time/tran->tau))23}#sourcevoltage=waveform24#atcurrenttime25else{#otherwise26vs=supply#sourcevoltage=supply27}28}29elseif(freq_mag){#orifsourceisacmagnitude30vs=ac->mag#sourcevoltage=magnitude31}32elseif(freq_phase){#orifsourceisacphase33vs=ac->phase#sourcevoltage=phase34}模板体结构V段的作用方程段多类型电压源模板(续)values{模板体结构V段的作用方131多类型电压源模板的特点在模板头说明中定义了一个supply变量,该变量在直流分析或时域分析时提供恒压源。在头说明中,定义了两个结构体,用于确定时域分析时的指数电压源和频域分析的激励源。在结构体中,使用了仿真器变量(simvar),在value段中使用了使用了条件判据。多类型电压源模板的特点在模板头说明中定义了一个supply变132MAST语言中的简单数简单数据:简单数据有三种类型,它们分别是number,enum,string。它们分别是数值型数据,枚举型数据和字符数据。数值型数据:在MAST语言中,实数和整数都可以对数值型变量赋值,在使用是不区别。枚举型数据的定义:对象的名字有有限个,而在一个时刻其中只有一个是正确的。字符数据:这些数据就是有字符串组成,其内容通常要用引号。数值枚举字符电源MAST语言中的简单数简单数据:简单数据有三种类型,它们分别133MAST语言中的数值型数据数值型变量的定义:numberid1[=init],id2[=init]e.gnumbervcc=5,dc_input,rload=10k,cload如果上述数据是一个中的变量,则可以通过网表赋值,其赋值的方式分别为(argument),(templatename.refconnectionpoint=5,2.7,10k,47n)(templatename.refconnectionpoint=cload=47n,vcc=5,dc_input=2.7,rload=10k)返回MAST语言中的数值型数据数值型变量的定义:返回134MAST语言中的枚举数enum{evalue[,evalue]}id[=[int1],[int2]]e.g.enum{_n,_p}bjt_type=_n如果定义的枚举型数据为一个变量,则可以在网表中对该变量赋值(argument).templatename.refconnectionpoint=bjt_type=_n返回MAST语言中的枚举数enum{evalue[,eval135MAST语言中的字符数字符数的定义stringid[[=init][,init]]stringcoretype=“iron”如果字符为一个变量,则其值可以通过网表赋值,其赋值方式为:templatename.refconnectionpoint=coretype=“iron”
返回MAST语言中的字符数字符数的定义返回136MAST语言中组合数据组合数据:组合数据有两种基本类型,一种是结构数据(struc),另一种是联合数据(union)。采用结构数据的目的是把一些相关变量构成一个整体,而采用联合变量的目的是希望一个变量在不同的时候处理不同类型的信息。组合数据都由四个部分组成,关键词、数据名、数据定义和数据对象的实体。但是联合数据的每一个实体只有数据定义中的一个对象,而结构数据则没有这个特点。电源联合结构MAST语言中组合数据组合数据:组合数据有两种基本类型,一种137结构体的定义结构体是一种数据类型,其定义的方式为:struc[structurename]{member[member][...]}id[=initial_value][,id=initial_value,...]struc为定义结果体的关键词,structurename为结构体的名,member为结构体成员,id为结构体变量。由于本设计中描述指数输出波形的函数为:Vout=V1+(V2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年上半年教师资格考试幼儿园综合素质试题与答案
- 2026年设备安全操作及设备维护保养考核试题答案
- 2026年全国大学生环保知识竞赛题库及答案
- 良肢位摆放相关知识考核试题(附答案)
- 2025年江西省庐山市高二历史下册期末考试测试卷及参考答案【满分必刷】
- 2025年福建省武夷山市高二历史上册期末考试测试卷附参考答案(完整版)
- 安徽省黄山市2026年高三考前热身语文试卷含解析
- 2026年浙江省平湖市高二历史上册期末考试考试卷及参考答案【培优】
- 中医院护理核心制度理论知识考核试题及答案
- 2026年河南省偃师市高三历史上册期末考试测试卷必考题附答案
- 智慧校园建设“十五五”发展规划
- T/CBMCA 017-2021建筑用覆膜钢板
- 国家开放大学电大《国际私法》形考任务1-5题库及答案
- 公司纪委“三重一大”决策制度监督检查管理办法
- 2.5物质的转化(讲义)(原卷版)
- 五年级数学下册 第五单元培优拔高测评试题-(学生版)(北师大版)
- (正式版)JB∕T 5789-2024 筐篮式捻股机和成绳机
- 风险分级隐患排查治理风险分级管控隐患排查与治理措施培训课件
- 高级船员职业规划书
- 加工中心日常点检表
- 普外科常见病
评论
0/150
提交评论