I have a simple digital invert circuit using ASAP7 nmos and pmos transistors. When I use Synopsys HSPICE to simulate the below script, it throws an error Definition of model/subckt "nmos_rvt" is not found for the element "xinv1^xm1". Please specify a defined model/subckt name.

However, when I change xm0 to mm0 (and xm1 to mm1) everything works! What is wrong with using xm0 as the instance name? Where is this documented?

The script:

** Generated for: hspiceD
** Generated on: Feb  2 16:49:44 2021
** Design library name: demo
** Design cell name: invtest
** Design view name: schematic
.GLOBAL vdd!

.TEMP 25.0
+    ARTIST=2
+    INGOLD=2
+    PSF=2
.INCLUDE "7nm_TT.pm"

** Library name: asap7ssc7p5t
** Cell name: INVx1_ASAP7_75t_R
** View name: schematic
.subckt INVx1_ASAP7_75t_R a y vdd vss
xm1 y a vss vss nmos_rvt w=81e-9 l=20e-9 nfin=3
xm0 y a vdd vdd pmos_rvt w=81e-9 l=20e-9 nfin=3
.ends INVx1_ASAP7_75t_R
** End of subcircuit definition.

** Library name: demo
** Cell name: invtest
** View name: schematic
xinv1 in1 out1 vdd! 0 INVx1_ASAP7_75t_R
v0 vdd! 0 DC=700e-3
c0 out1 0 2e-15
VIN in1 0 0 pulse 0 0.7 0 50p 50p 2n 4n 
.tran 10p 10n


2 Answers 2


This is standard SPICE syntax and I suspect it is documented in many places. Instance names for MOSFETs must begin with M and instance names of subcircuits must begin with X. Voltage sources start with V, resistors start with R, and so on. The first letter tells SPICE how to parse the rest of the line.

It gets tricky when a MOSFET is actually described using a subcircuit rather than directly with a MOSFET model, but if it's a subcircuit then it needs to start with an X.

  • \$\begingroup\$ Thanks. This is actually from Virtuoso/ADE-L using the ASAP7 tech lib. Wonder why it decided to name it xm0 instead of mm0. \$\endgroup\$
    – user2698
    Feb 2, 2021 at 20:24

make a new file with cover up the target models as below
it will solve the problems

.SUBCKT nmos_lvt  D G S BDY   W=27n L=7n NFIN=1
.INCLUDE "/home/vlsi/libfortech/asap7_pdk_r1p7/models/hspice/7nm_TT_160803.model"
M1    D G S BDY     nmos_lvt W=W L=L NFIN=NFIN

.ENDS nmos_lvt

.SUBCKT pmos_lvt  D G S BDY   W=27n L=7n NFIN=1
.INCLUDE "/home/vlsi/libfortech/asap7_pdk_r1p7/models/hspice/7nm_TT_160803.model"
M1    D G S BDY     pmos_lvt W=W L=L NFIN=NFIN

.ENDS pmos_lvt

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.