【HSPICE仿真】输入网表文件(6)用户自定义分析输出(.measure)

.measure 处理对仿真输出的数据进行处理,对于成功完成的HSPICE仿真,可以使用.measure进行用户自定义分析,即输出一些自定义的电路电学特性。

可以输出的电学特性包括以下内容:

在这里插入图片描述

此外,.measure语句在电路的优化、模型参数拟合等方面也有特别的应用。

1. 语句顺序

measure语句会匹配该语句之前的最后一个分析命令,如下所示:

在这里插入图片描述
在上述实例中,meas会匹配第二个tran语句,并且只生成一个输出文件。

如果measure语句执行失败,HSPICE会在.mt#文件中写入0.0e0,在输出列表文件中写入 FAILED。可以使用.option measfail 来对失败提示语句做一些控制。

2. 测量参数类型

.measure 不能调用子电路中的参数。.measure 中的参数不能和标准参数重名。如果.measure 中定义的参数与.param 中的重名会报错。另外不同类型的参数重名不会引起错误。

(sa手册 P253 ,后面看完补充一下。)

3. Rise, Fall, Delay, and Power Measurements

measure语句的上升、下降和延迟测试模式可以独立变量(时间、温度或其他任意参数)在指定的起点和终点之间的差值,例如上升时间、下降时间,转换速率(slew rate)等。

基本语法

在这里插入图片描述

部分参数信息:

在这里插入图片描述
在这里插入图片描述
在瞬态分析中,你指定了起点和终点之后,就会测量者两个点之间的时间间隔。

对于延时、上升时间、下降时间的测量,还可以使用如下语法:

在这里插入图片描述
varname是用户自定义的变量名称,用于保存测量结果(TRIGTARG所描述事件之间的时间间隔。)

TRIG_SPECTARG_SPEC 的语法如下:

在这里插入图片描述

TRIG是测量起始点的关键字,TARG是测量终止点的关键字。

varVAL=val指的是,当参数var(电压、电流等)达到val的时候,开始或结束测量。

RISE=r,FALL=f指的是第r个上升沿,第f个下降沿的时候开始或结束测量。

这个几个语句和起来就是,仿真开始后,当varr次发生上升变化(或第f次发生下降变化)时,在其值达到val的时候,开始测量(或结束测量)。

cross=c就是当varc次达到val这个值的时候,开始或结束测量,这个就是就部分上升变化和下降变化了。

这里就涉及到从何时开始统计发生变化的次数TD=time_delay的作用就是来定义次数统计的开始时间。默认情况下,从仿真的0时刻开始统计,如果指定了该该参数,就是从仿真开始的time_delay是开始定义。比如,如果是想要在仿真开始后的10ns才开始统计var的达到某一个val出现的次数,那么就可以将TD设为10ns。

AT=time则是直接测量开始的时间,比如,在瞬态分析中,就是指定了测量开始时间,而不是次数统计的开始时间,在DC分析中,可以指定某个参数达到某个值的时候就开始测量。

示例1:

.MEASURE TRAN tdlay TRIG V(1) VAL=2.5 TD=10n RISE=2 
+ TARG V(2) VAL=2.5 FALL=2

上例用节点 1 和 2 的电压对瞬态分析的结果进行测量。
测量起始值是这样设置的,TD=10n 指延迟 10ns 开始计数,当到 V(1)到第二个上升变化,且电压值达到 2.5V 的时候开始测量。
测量目标值是这样设置的,当 V(2)到达第二个下降沿,且电压值达到 2.5V 的时候测量结束。输出结果是 tdlay=value。

示例2:

.MEASURE TRAN riset TRIG I(Q1) VAL=0.5m RISE=3 
+ TARG I(Q1) VAL=4.5m RISE=3 

示例3:
在这里插入图片描述

4. FIND 和 WHEN 函数

FINDWHEN 函数允许当某些事件发生的时候,测量任何独立变量(时间、频率、参数),非独立变量(电压、电流等)或者是非独立变量的微分值。对于测量单位增益带宽、相位等是有用的。

瞬态分析中测量特定时间的电压

这里有这样一个用法:

在这里插入图片描述
AT选项的说明:

在这里插入图片描述

所以,通过下面的语句,就可以实现在瞬态分析中,在特定时间测量某一个位置电压:

.meas tran V1_R0 FIND V(ZN) at 2.5n
.meas tran V2_R0 FIND V(ZN) at 7.5n

5. Equation Evaluation/Arithmetic Expression

对其它measure命令的测量结果做进一步的计算,方程的变量是measure声明所得的结果,一定不能是节点电压或者支路电流。

算术表达式的输入也需要是之前measure语句计算所得的结果。

基本语法:

在这里插入图片描述

示例:

在这里插入图片描述

6. AVG, EM_AVG, INTEG, MIN, MAX, PP, and RMS

这几种测量模式给出的是输出变量(电压、电流或功耗)的统计函数,而不是分析值。

AVG是平均值,计算的是输出变量下的面积除以指定的周期
RMS均方根值,计算的是输出变量下的面积的平方根除以指定的周期
MINMAX报告的分别是指定的时间间隔内输出函数的最小值和最大值
PP(peak to peak) 报告的是指定时间范围内,最大值和最小值的差值。
EM_AVG计算的是平均电迁移电流。

在DC数据扫描中,AVG,RMS,INTEG(积分)是无意义的,如果使用了,工具会给出 warning

基本语法

在这里插入图片描述

参数说明:

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
FROMTO就是设定func计算的起点和终点,在瞬态分析中就是时间。

在这里插入图片描述

没有说明的那几个参数是和优化相关的。

示例

在这里插入图片描述
在这里插入图片描述

7. 输出文件格式

通过一些.option选项,可以控制输出数据的格式。

MEASFORM

可以将相关数据输出为Excel工具可以打开的格式…
(之前没看到这里的时候,都是手动复制粘贴的,累死…)

在这里插入图片描述
这里,1 ,2,3,4都对应一些格式,具体可以参考命令手册。

在这里插入图片描述

MEASOUT

在这里插入图片描述

就是说,可以绘制测量值和扫描值之间的曲线图。

这个数据存放在mt#文件中,使用WaveView打开该文件就可以看到响应的曲线图。

该选项默认是打开的。

MEASFILE

有多个.alter语句存在的时候,输出是放在一个文件里面,还是多个文件里面。

在这里插入图片描述

MEASFAIL

在这里插入图片描述

在这里插入图片描述

  • 2
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值