微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微波和射频技术 > RFIC设计学习交流 > 求教,hspice的.alter 用法问题

求教,hspice的.alter 用法问题

时间:10-02 整理:3721RD 点击:
今天仿真,由于每个波形仿真时间不一样,用了7个.alter,结果怎么仿真出20多个波形文件来?.alter语法到底怎么用?求教
以下是我的激励文件

.title uv_less_100u
***************libs used in the simulation**********
.lib 'c050hv800v.l' tt_ls
.lib 'c050hv800v.l' tt_hvs
.lib 'c050hv800v.l' tt_hva_hs
.lib 'c050hv800v.l' tt_hvs_hs
.lib 'c050hv800v.l' tt_hva
.lib 'c050hv800v.l' tt_res
*.lib 'c050hv800v.l' dio
.lib 'c050hv800v.l' tt_pip
.lib 'c050hv800v.l' tt_bip
.lib 'c050hv800v.l' tt_hva_uhv
.lib 'c050hv800v.l' tt_dio
.lib 'c050hv800v.l' tt_dio_hs
.lib 'c050hv800v.l' tt_dio_sbd_zd
**********************
**********************
.inc "auto_shrink_test.ckt"
.global vcc! 0
*****input****
v1 nh425_d_work_or_trim 0 dc 5.8
v2 n803_g_pwm_iout 0 dc 0
v3 p24_g 0 dc 0
v4 n853_g_pwm_en 0
v5 p1376_g_ix_comp 0 dc 5.8
**欠压小于100us
Vvcc vcc! 0 pwl 0 0 50u 5.83
i1 0 v pwl 0 0,50u 50u,100u 50u,150u 5u,200u 50u
.tran 1u 400u sweep temp poi 4 -25 25 100 125
.probe v(*) i(*)
**欠压大于100us
.alter uv_more_100u
Vvcc vcc! 0 pwl 0 0,50u 5.83,499u 5.83 500u 4,550u 4,551u 5.83
i1 0 v pwl 0 0,50u 50u,100u 50u,150u 7u,350u 7u,400u 50u
.tran 1u 600u sweep temp poi 4 -25 25 100 125
**失调
.alter vcc_shitiao_uv_notin0011
*151413
Vvcc vcc! 0 pwl 0 0,50u 5.83,100u 5.83,101u 4,300u 4,301u 5.83,500u 5.83,501u 4,700u 4,
*121110
+701u 5.83,900u 5.83,901u 4,1100u 4,1101u 5.83,1300u 5.83,1301u 4,1500u 4,1501u 5.83
i1 0 v pwl 0 0,50u 50u,700u 50u,750u 7u,950u 7u,1000u 50u
.tran 1u 1200u sweep temp poi 4 -25 25 100 125
**失调
.alter vcc_shitiao_uv_notin0011
*151413
Vvcc vcc! 0 pwl 0 0,50u 5.83,100u 5.83,101u 4,300u 4,301u 5.83,500u 5.83,501u 4,700u 4,
*121110
+701u 5.83,900u 5.83,901u 4,1100u 4,1101u 5.83,1300u 5.83,1301u 4,1500u 4,1501u 5.83
i1 0 v pwl 0 0,50u 50u,700u 50u,750u 20u,1150u 20u,1200u 50u
.tran 1u 1400u sweep temp poi 4 -25 25 100 125


**过压
.alter ov_less_100u
Vvcc vcc! 0 pwl 0 0 50u 5.83
i1 0 v pwl 0 0,50u 50u,100u 50u,150u 180u,200u 50u
.tran 1u 400u sweep temp poi 4 -25 25 100 125
**过压
.alter ov_more_100u
Vvcc vcc! 0 pwl 0 0,50u 5.83,499u 5.83 500u 4,550u 4,551u 5.83
i1 0 v pwl 0 0,50u 50u,100u 50u,150u 180u,350u 180u,400u 50u
.tran 1u 600u sweep temp poi 4 -25 25 100 125
**过压
.alter ovl_less_100u
Vvcc vcc! 0 pwl 0 0 50u 5.83
i1 0 v pwl 0 0,50u 50u,100u 50u,102u 600u,148u 600u,150u 50u
.tran 1u 300u sweep temp poi 4 -25 25 100 125
**过压
.alter ovl_more_100u
*141312
Vvcc vcc! 0 pwl 0 0,50u 5.83,400u 5.83,401u 4,500u 4,501u 5.83,600u 5.83,601u 4,700u 4,701u 5.83
i1 0 v pwl 0 0,50u 50u,100u 50u,101u 600u,399u 600u,400u 50u
v5 p1376_g_ix_comp 0 pwl 0 5.8,650u 5.8,651u 0,680u 0,681u 5.8**Ix>-27后解除锁存
.tran 1u 800u sweep temp poi 4 -25 25 100 125
.end

小编的网表未见明显的错误啊,小编用什么查看的波形文件,如果是avanwave,选择.sp的时候应该就是7个仿真。如果是别的,应该是查看.tr#0.tr#1等七个文件吧

这跟波形软件没什么关系,我看了,文件夹里产生了好多.tr文件,有些是错的,我看好像是跟那个.tran有关,.alter 和.tran一起应该怎么用呢?

貌似就是你那样用的吧

一个.alter就够了。

但是我的信号也更改了的, 一个.alter能生成7个么?

写那么多.tran 干什么,给.tran里面那些需要变化的参数写成变量,就写一条.tran
.alter变量就行了

你的alter和sweep會衝突的!
兩種方法上面都有人說了
分開寫sp
或者固定一個alter

小编用了sweep 扫描了4个点,所以会出4*7=28个.tr*

非常感谢,明白了

9楼正解
用了sweep 扫描了4个点,所以会出4*7=28个.tr*

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top