ams (spectre)混仿求助
急啊,搞了好几天了!
看不到现场,只能弱弱地问一下,确实给 vdd! 加电了吧?再有,不对是怎么个不对法?
谢谢回复~
我在最顶层加了一个vdd!供电,设置是vdc=1.2V,然后我去改connect rules里边的Vsup和Vlow,分别是1.2V和0V,然后跑transient仿真用ams(spectre)仿真器仿得,我数字部分是verilogin的.V文件,模拟部分是schematic,我数字和模拟是完全分开的供电,只是所有的最后都连在了gnd。仿完以后发现gnd不是0,是负的0.3V然后vdd是0.9V,差值还是vdc=1.2V,但是vdd,gnd就完全不对了!是我connect rules没有改好吗?里边的Rx,Rz,Vdelta都填什么呢?
求教~
模拟部分,电源信号名是 “vdd!”、地是“gnd!”,确认带叹号吧?
在 hspice 中,必须有 gnd! (网表中是 0),在 spectre中,没有这个要求,如果没有 gnd!,它会自动把一个节点当成0V基准,但是电路中存在 gnd! 的话,我遇到的场合都是自动把 gnd! 当作 0V 基准的。
如果你的电路中地用的是 gnd!,而出现这个问题,那么我还真想不出来是什么原因。
谢谢您的回复!
我加了vdd!然后gnd用的是analoglab里边的symbol,他会认成gnd!吗?
用的 analogLib 里的 gnd,netName 就是 gnd! 了。
建议看一下网表,看看有没有什么异常。
我在用ams进行混合仿真的时候,怎么数字部分verilog代码的位拼接结果是相反的,{}里面的左边成了低位,右边成了高位?这是什么问题啊,求大神请教!
你的verilog代码部分在混仿的时候使用有一个对应的模拟symbol吗?但是这个模拟symbol是空的,里边没有电路的,只有port?
请问你的这个问题解决了吗?