如何参数化 Hspice 子电路的模型类型?
How to parameterize model type for Hspice subcircuits?
我有以下 Hspice 代码:
.SUBCKT inv_slvt in out vdd
Mpmos out in vdd pmos_slvt
Mnmos out in 0 nmos_slvt
.ENDS
.SUBCKT inv_lvt in out vdd
Mpmos out in vdd pmos_lvt
Mnmos out in 0 nmos_lvt
.ENDS
有没有一种方法可以通过参数化模型类型的后缀(即 - "slvt" 与 "lvt")将代码简化为单个子电路定义?
您不能参数化模型名称、参数或参数值的一部分。但是,您可以参数化整个名称。因此,在您的情况下,您必须将 MOSFET 名称参数化为 pmos_slvt、nmos_slvt、pmos_lvt 或 nmos_lvt。以下是您的处理方式:
.global vdd! gnd!
* Defining the default values for parameters nmodel and pmodel
.SUBCKT inv in out pmodel=str('pmos_lvt') nmodel=str('nmos_lvt')
Mpmos vdd! in out vdd! str(pmodel)
Mnmos gnd! in out gnd! str(nmodel)
.ENDS
Vvdd vdd! 0 dc=3.3
Vgnd gnd! 0 dc=0
Xinv in out inv pmodel=str('pmos_slvt') nmodel=str('nmos_slvt')
处理字符串时,它们的值应作为 str('value') 传递。例如:
.PARAM par1 = str('nmos_180')
当你想使用一个参数的值保存一个字符串时,你会使用str(parameter_name),如下所示:
.MODEL str(par1) nmos ...
附带说明一下,我想提一下您没有正确使用 MOSFET 实例。 Spice 中的 MOSFET 器件有 4 个端子:漏极、栅极、源极和体。在实例化 MOSFET 器件时,您必须使用所有四个。在这种情况下,您可以使用全局节点,因为它们在子电路内部可用。全局节点的名称不一定要有爆炸声,但为了让设计人员能够轻松识别它们,这是一个很好的做法。
我有以下 Hspice 代码:
.SUBCKT inv_slvt in out vdd
Mpmos out in vdd pmos_slvt
Mnmos out in 0 nmos_slvt
.ENDS
.SUBCKT inv_lvt in out vdd
Mpmos out in vdd pmos_lvt
Mnmos out in 0 nmos_lvt
.ENDS
有没有一种方法可以通过参数化模型类型的后缀(即 - "slvt" 与 "lvt")将代码简化为单个子电路定义?
您不能参数化模型名称、参数或参数值的一部分。但是,您可以参数化整个名称。因此,在您的情况下,您必须将 MOSFET 名称参数化为 pmos_slvt、nmos_slvt、pmos_lvt 或 nmos_lvt。以下是您的处理方式:
.global vdd! gnd!
* Defining the default values for parameters nmodel and pmodel
.SUBCKT inv in out pmodel=str('pmos_lvt') nmodel=str('nmos_lvt')
Mpmos vdd! in out vdd! str(pmodel)
Mnmos gnd! in out gnd! str(nmodel)
.ENDS
Vvdd vdd! 0 dc=3.3
Vgnd gnd! 0 dc=0
Xinv in out inv pmodel=str('pmos_slvt') nmodel=str('nmos_slvt')
处理字符串时,它们的值应作为 str('value') 传递。例如:
.PARAM par1 = str('nmos_180')
当你想使用一个参数的值保存一个字符串时,你会使用str(parameter_name),如下所示:
.MODEL str(par1) nmos ...
附带说明一下,我想提一下您没有正确使用 MOSFET 实例。 Spice 中的 MOSFET 器件有 4 个端子:漏极、栅极、源极和体。在实例化 MOSFET 器件时,您必须使用所有四个。在这种情况下,您可以使用全局节点,因为它们在子电路内部可用。全局节点的名称不一定要有爆炸声,但为了让设计人员能够轻松识别它们,这是一个很好的做法。