热度 4| ||
C家仿真工具spectre可以支持通配符的输出控制,可以将仿真中不关心的节点通过通配符进行过滤,去除等操作。
例如:仿真的时候,有些pdk会自动将resistor的segment转换成子电路的形式,并且连接点产生如netxxx的内部节点。
如果使用save all选项,并且选择all net,那么这些netxxx的节点会被save下来,但其实这是我们不关心的节点,会导致debug或者看波形的时候效率会降低。
那么这时候就可以用通配符进行过滤,语法可以参考help文档,
e.g. 1, 排除某些节点的save:
save * depth=4 exclude=[*net*]
上述语句,可以达到save 所有节点(save *), 深度4层(depth=4),排除 带有net的节点([*net*] ),例如net123,或者dnet1等带net节点会被过滤掉,不进行save。
e.g. 2, 对子电路的电源电流进行save:
save *:VDD, 储存所有模块,VDD port的电流。
有兴趣的可以参考help文档,搜索wildcards,using wildcard in the save statement有相关的详细用法。
save.scs内容如下:
simulator lang = spectre
save * depth=4 exclude=[*net*] exclude=[*dmy*] exclude=[*NeT*]
save *:AVDD
save *:AVSS
//save *:PSUB
save *:VM
save *:AGND
save *:DVDD
save *:VDD
save *:VSS