微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微波和射频技术 > RFIC设计学习交流 > 做ocean仿真的时候,结果被覆盖!

做ocean仿真的时候,结果被覆盖!

时间:10-02 整理:3721RD 点击:
本人正在学习用ocean做corner仿真目前发现写完脚本之后,只能保存最后一个corner的结果,前面的都被覆盖掉了(每仿真一个corner,就会覆盖前面仿真的结果)
请教各位高手,如何将不同corner的值分别保存!
十分感谢!
一下是我的ocean脚本节选:
resultsDir( "/home/LDO/sim/" )
cor=list("tt" "ss" "ff")
foreach(cornersim cor
modelFile(
list("/home/model/spectre/t018.csc" sprintf(nil "%s" conersim))
)
请高手帮忙检查,再次感谢

还请各位不吝赐教

另外在问一下,为什么我选择了保存部分信号,但是仿真出来仍然是把所以节点的信号全部保存
语句如下:
save( 'v "/VOUT" "/I1/net13" )

没人来吗?

试试对于每一个corner更新resultDir的设定,resultDir(strcat("/home/LDO/sim/" cornersim))

谢谢回复

对的,每个corner对应一个保存文件

先选择selected,
然后,再点击保存你想保存的

我是来试试我怎么不能评论了

在coean脚本中添加了saveOption( 'save "selected"),但是仿真结果还是保存了所有节点!对于顶层模块的节点可行,但是对于底层模块的节点就不可行了,例如"/I0/I3/net120"。
请教如何在脚本仿真中有选择性的保存底层模块中的节点?
非常感谢!



求教:按照你所说的对脚本进行了修改,但是仿真窗口报错
unbound variable-cornersim
求解?

贴出来你的脚本,这个应该很简单.

我觉得没必要存每一个波形。run ocean 本来就是为了得到具体参数。
把每个关心的物理量(带宽,相裕等等)编辑成公式,每次run输出到文本即可。

[求助] 求教ocean脚本仿真问题
ocean
本人写了修改完成了一个工艺角循环仿真脚本,但是遇到了两个问题,部分脚本如下:
ocnWaveformTool( 'wavescan )
simulator( 'spectre )
design(
"/home/wzz/simulation/RAF_corner_1M/netlist")
resultsDir( sctrcat("/home/wzz/simulation/RAF_corner_1M/" cornersim))
cor=list("tt" "ss" "ff")
foreach(cornersim cor
modelFile(
list("/tools/tsmc18rf_1p6m_1ff_40k/tsmc18rf/../models/spectre/rf018.scs" sprintf(nil,"dio3",cornersim))
list("/tools/tsmc18rf_1p6m_1ff_40k/tsmc18rf/../models/spectre/rf018.scs" sprintf(nil,"dio_dnw",cornersim))
)
analysis('ac ?start "0.1"
?stop "1G"
)
analysis('tran ?stop "10n"
?errpreset "conservative"
)
analysis('dc ?saveOppoint t
)
saveOption( 'save "selected" )
save( 'v "/I0/I2/net089" "/I0/I2/net061" "/I0/I2/net158" "/I0/I2/net163" "/RXRAF_OUTN" "/RXRAF_OUTP" "/I0/I2/net0124" "/I0/I2/net074" "/I0/I1/I0/net068")
temp( 125 )
run()

遇到的问题:
1仿真报错:unbound variable- cornersim;如果将
resultsDir( sctrcat("/home/wzz/simulation/RAF_corner_1M/" cornersim))改为
resultsDir( "/home/wzz/simulation/RAF_corner_1M" )结果别覆盖,如何解决?
2所有节点被保存,
saveOption( 'save "selected" )并没有起作用,如何达到选择性保存?

把这一行放到foreach循环里面去,比如放在model语句之前,就没问题了。
resultsDir( sctrcat("/home/wzz/simulation/RAF_corner_1M/" cornersim))
变成:
foreach(cornersim cor
resultsDir( sctrcat("/home/wzz/simulation/RAF_corner_1M/" cornersim))
modelFile(
.....

非常感谢你的指点,可以run了!

这样的确可以,但是每看一个工艺角结果都要重新载入psf文件,很是麻烦,请问大侠有没有办法载入一个psf文件将每个工艺角的仿真结果都显示出来? 谢谢

沿用上面的办法, 后面再用脚本载入就可以. 更革命性的办法当然也是有的, 但是尚属于未公开的范围.

我们编写了scs文件,跑成了,谢了哈。

学习中!
谢谢!

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

网站地图

Top