首页 > 微波/射频 > RFIC设计学习交流 > 做ocean仿真的时候,结果被覆盖!

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

录入:edatop.com    阅读:
本人正在学习用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文件,跑成了,谢了哈。

学习中!
谢谢!

申明:网友回复良莠不齐,仅供参考。如需专业解答,请学习本站推出的微波射频专业培训课程

上一篇:若问一下ocean怎么停下来啊?
下一篇:请教一下关于运放输入级跨导的仿真

射频和天线工程师培训课程详情>>

  网站地图