微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微波和射频技术 > RFIC设计学习交流 > 使用spice explorer把ac分析和pz分析的结果显示在同一窗口(零极点与ac分析一一对应)

使用spice explorer把ac分析和pz分析的结果显示在同一窗口(零极点与ac分析一一对应)

时间:10-02 整理:3721RD 点击:
spice explorer可以说是使用最方便功能最强大的波形分析工具。 支持多达几十中波形格式(唯一的遗憾是还不支持cadence的sst2),速度快,多标签窗口显示,史密斯图,柱图,3D显示`````,还有强大的量测/计算工具(数学,ad/da、动态测量````) ,此外可以和cadence方便的集成在一起,实现corss probe。
下面给出我这两天的一个简单研究结果: 把hspice的ac分析和pz分析在同一窗口显示,把零极点和ac曲线一一对应。也就是把ac频率响应和零极点所在的S平面放在一起查看,从而得到清晰的结果。
先使用hspice进行ac和pz分析。 pz分析结果如下:
**********************************************************************
realimagrealimag
0.0.0.0.
-7.26690.-1.15660.
-118.3744k0.-18.8399k0.
-1.5929x0.-253.5203k0.
-2.0468x0.-325.7631k0.
-5.9619x0.-948.8660k0.
-7.6490x0.-1.2174x0.
-19.1067x0.-3.0409x0.
-44.0687x0.-7.0138x0.
-185.3646x0.-29.5017x0.
-236.5546x0.-37.6488x0.
-243.5865x0.-38.7680x0.
-320.9037x0.-51.0734x0.
-2.3096g0.-367.5855x0.
-26.6049g0.-4.2343g0.
-125.0115g0.-19.8962g0.
-196.9350g0.-31.3432g0.
zeros (rad/sec)zeros ( hertz)
**********************************************************************
realimagrealimag
-719.8027k0.-114.5602k0.
-6.0405x0.-961.3807k0.
-7.5889x0.-1.2078x0.
-14.7338x0.-2.3450x0.
-24.6845x-80.3620x-3.9287x-12.7900x
-24.6845x80.3620x-3.9287x12.7900x
-32.5689x0.-5.1835x0.
-99.9999x0.-15.9155x0.
-112.7977x0.-17.9523x0.
-237.3037x0.-37.7681x0.
-275.7424x0.-43.8858x0.
-2.3023g0.-366.4242x0.
3.7769g0.601.1190x0.
-18.5761g0.-2.9565g0.
-123.6236g0.-19.6753g0.
159.0198g0.25.3088g0.
-196.9570g0.-31.3467g0.
***** constant factor =4.428e-20*****
对上述文本进行处理得到以下四个文件:
file1: pole_left.tab
------------------------------
#format table ##
pole_left_realpole_left_img
1.15660.
18.8399k0.
253.5203k0.
325.7631k0.
948.8660k0.
1.2174x0.
3.0409x0.
7.0138x0.
29.5017x0.
37.6488x0.
38.7680x0.
51.0734x0.
367.5855x0.
4.2343g0.
19.8962g0.
31.3432g0.

file2: pole_right.tab
--------------------------------
#format table ##
pole_right_realpole_right_img
0. 0.

file3: zero_left.tab
-----------------------------
#format table ##
zero_left_realzero_left_img
114.5602k0.
961.3807k0.
1.2078x0.
2.3450x0.
3.9287x-12.7900x
3.9287x12.7900x
5.1835x0.
15.9155x0.
17.9523x0.
37.7681x0.
43.8858x0.
366.4242x0.
2.9565g0.
19.6753g0.
31.3467g0.

file4 : zero_right.tab
----------------------------
#format table ##
zero_right_realzero_right_img
601.1190x0.
25.3088g0.

上述4个文件分别是左右平面极点和左右平面零点,每个文件包含每个pole/zero的实部(以hz为单位的频率)和虚部(删除了以角频率为单位的pole/zero的数据),同时把所有左平面的数据负号“-”删除(这样使得其与ac一一对应)而使用不同文件和名称来区别左右平面的数据。
为了方便,上述处理是我写了个shell脚本文件自动处理的(脚本文件及用法后面给出)。
好了,假如你仿真得到的ac数据是sim.ac0,使用spice explorer打开包括上述4个及sim.ac0共5个文件(可以使用sx sim.ac0 *.tab),得到如下波形图
可以看到左平面极点文件pole_left.tab显示其第一个左平面极点在1.16692Hz,而其虚部为0, 同时对应的ac波形上,相位刚好是-45度,增益下降了-3db.
而其他极点和零点也于ac曲线一一对应。以上的pz分析结果并无右平面极点,当在下图中却出现了一个右平面极点“0”,这是由于使用脚本处理把0既当作左平面又但右平面的缘故,可以修改脚本来修正这一问题。



处理pz分析结果的脚本:
####-----------------------------------------------
#!/bin/sh
echo "use:pz.sh in-file out-file.left/right.tab"
tmp0=$1
awk '{print $3,$4}'$tmp0 >tmp1
grep "^-" tmp1 >tmp2
echo "#format table ##
$2_left_real$2_left_img" >$2_left.tab
sed 's/^-//g'tmp2 >>$2_left.tab
echo "#format table ##
$2_right_real$2_right_img" >$2_right.tab
grep "^[0-9]"tmp1 >>$2_right.tab
echo "finished!"
###--------------------------------------------------
把以上文件保存为文本文件,例如pz.sh,修改使其具有可执行权限(chmod u+x pz.sh), 即得到脚本程序。
使用方法,先把pz分析结果的pole和zero分别保存到两个文件:
file1:pole.txt
-------------------------
**********************************************************************
realimagrealimag
0.0.0.0.
-7.26690.-1.15660.
-118.3744k0.-18.8399k0.
-1.5929x0.-253.5203k0.
-2.0468x0.-325.7631k0.
-5.9619x0.-948.8660k0.
-7.6490x0.-1.2174x0.
-19.1067x0.-3.0409x0.
-44.0687x0.-7.0138x0.
-185.3646x0.-29.5017x0.
-236.5546x0.-37.6488x0.
-243.5865x0.-38.7680x0.
-320.9037x0.-51.0734x0.
-2.3096g0.-367.5855x0.
-26.6049g0.-4.2343g0.
-125.0115g0.-19.8962g0.
-196.9350g0.-31.3432g0.

file2:zero.txt
-----------------------------------
zeros (rad/sec)zeros ( hertz)
**********************************************************************
realimagrealimag
-719.8027k0.-114.5602k0.
-6.0405x0.-961.3807k0.
-7.5889x0.-1.2078x0.
-14.7338x0.-2.3450x0.
-24.6845x-80.3620x-3.9287x-12.7900x
-24.6845x80.3620x-3.9287x12.7900x
-32.5689x0.-5.1835x0.
-99.9999x0.-15.9155x0.
-112.7977x0.-17.9523x0.
-237.3037x0.-37.7681x0.
-275.7424x0.-43.8858x0.
-2.3023g0.-366.4242x0.
3.7769g0.601.1190x0.
-18.5761g0.-2.9565g0.
-123.6236g0.-19.6753g0.
159.0198g0.25.3088g0.
-196.9570g0.-31.3467g0.
***** constant factor =4.428e-20*****

使用方法: pz.shinput-fileoutput-file,第一个参数是输入原始的pole/zero数据,第二个参数是输出文件名称,例如第二个参数是123abc,则处理结果得到123abc_left.tab和123abc_right.tab两个文件,分别是左右平面的数据.
好了, 执行
./pz.shpole.txtpole
得到pole_left.tabpole_right.tab两个文件
执行
./pz.shzero.txtzero
得到zero_left.tabzero_right.tab两个文件
使用spice explorer打开ac分析结果与上述4个文件就可以得到想要的波形图了。

要问问题,先要把问题说明白,否则怎么回答你?
not work? 提示什么错误? 怎么执行的?
前提是要使其具有可执行权限

謝謝囉...來試看看^^

请教
请问小编用spectre做过pz和ac分析没有,我对一运放做pz和ac分析,发现pz算出的零极点和ac图上找到的零极点不一样大?请问小编可有遇到这样的情况?

pz分析异常是正常的事情
spectre确实会出现分析后没结果,或者有结果,不正确(和ac分析不一致), 尤其在对op进行环路分析时(使用大电感和大电容端口环路)

很不錯的講解,感謝樓主熱心分享。

这个脚本处理好像是linux平台下的做法,不知道在windows下有没有类似比较可行的办法呢?

小编很强大啊

真好用得上,谢谢

同shucai问,谢谢
期待Windows下的解决方案

windows下可以安装cygwin,它是linux下的SHELL移植到windows平台下的,打开后支持C SHELL和Bagain SHELL。
除cygwin外,还有其他shell程序的windows移植,具体名称不记得了

谢谢
学习了

i 1# lsh0211 你好强呀。

The script file doesn't work well, why

显示时怎么才能让零极点不连成线而是以点的形式出现啊

MinGW also works like Cygwin.

If "Perl" is installed under Windows environment, the shell script can be easily translated to Perl script.
Anyone interested in such Perl script?

完全不需要對 SpiceExplorer 作任何額外的設定
因為小编讓 SpiceExplorer 讀的是 tabular format
(The first line in the file starts with #format table )
SpiceExplorer 會自動用 symbols 而不用 curve/line 來表現
事實上
第一個 column 的 data
Spice Explorer 會自動 "對齊" AC analysis panel 的 frequency axis
不論你將它命名為 pole_left_real 或是"張三"還是"李四"
第二個 column 的 data
因為大都是 "0"
會讓這些 symbols 都躺在 Y=0 軸上
(This is the trick of this plot.)
To summarize
Sandwork / SpiceExplorer 會自己用"點"的形式來表現這些 poles / zeros.

感谢小编分享!



Select the pull-down menu "Panel" -> Display Preference -> Data point only

有图有真象


非常感谢你的跟踪回复!

thanks thankssss

用spice explorer把ac分析和pz分析的结果显示在同一窗口(零极点与ac分析一一对应)好! 留下必要时翻查

好强大,SpiceExplorer飘过

留名,有空学来玩玩。
很直观的频率分析方法。

高端贴!膜拜学习!

很好很强大,感谢小编提供这么好的分析方法

很好,这样看起来比较方便直观

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

网站地图

Top