Product Documentation
Virtuoso Power Manager User Guide
Product Version IC23.1, June 2023

Passive Devices

Passive devices, such as resistors, capacitors, short, and diodes are considered as special cells and registered in the setup depending upon how they are placed in the design.

Resistors as Short Devices

Resistors are registered in setup as short devices. You can short the terminals of devices that have more than two terminals.

In a setup file, the short device registration is represented as shown below:

short (
("analogLib" "res" nil)
("myLib" "wireshortcell" nil (nil shortedTerminalMap (("t1" "t2")("t3" "t4" "t5") )))
)

Ensure that you register passive devices associated to a condition as mentioned in the setup file. For example, certain configurations in designs might require the resistors not to be registered as short devices.

The multi-term shorting of devices under the Short category is considered only during macro model extraction. However, it is not considered while netlisting, which is a part of CLP integration. Therefore, it leads to an error during CLP verification.

Connectors

You can register cells under the connectors in the following scenarios:

In a setup file, the connector registration is represented as shown below:

  connector (
   (nil "stdBuf*" nil)
   ("ALIB" "PMU" nil (nil shortedTerminalMap (("p" "q") ("o" "y"))))
  )
  

Capacitors used in the data path mostly for the purpose of AC coupling are treated as connectors. The capacitors that are directly connected to power or ground for the purpose of blocking DC signal are treated as ignored or open. These are blocked for supply/ground tracing. The multi-terminal capacitors are also registered as devices.

In a setup file, the capacitor registration is represented as shown below:

 cap (
   (nil "cap" nil)
   (nil "mimcap" nil
    (nil
     shortedTerminalMap  (("PLUS" "MINUS"))
    )
   )
         )

You can also use the wildcard character in the Ignore, Short, Buffer, and Inverter registration.

Diodes can be used in the design for the different purpose like in an antenna or ESD clamp structures. Their registration in a setup is specific to the polarity configuration in which they are connected.

In a setup file, the diode registration is represented as shown below:

diode (
("analogLib" "diode" nil (nil pTerm "PLUS" nTerm "MINUS"))                                      
)

A diode is referred to as an antenna diode if the nTerm of diode is connected to power and pTerm of diode is connected to a pin. Or, pTerm of diode is connected to ground and nTerm of diode is connected to a pin.

Antenna diode-specific attributes are printed for input & inout terms connected to the antenna diode.

Power Type:

pin (MyInput) {
antenna_diode_related_power_pins : "VDD";
...
}

Ground Type:

pin (MyInput) {
antenna_diode_related_ground_pins : "VSS";
...
}

Power and Ground:

pin (MyInput) {
antenna_diode_related_power_pins : "VDD";
antenna_diode_related_ground_pins : "VSS";
...
}

A parasitic diode is formed between the source or drain terminal of a MOS device and the bulk terminal. Here is an example of a PMOS device and a parasitic diode.

For a PMOS device, a diode that has the anode connected to the signal net and the cathode connected to the power supply is extracted. In this case, it is a power type diode.

antenna_diode_related_power_pins : "VDD";

For an NMOS device, a diode that has the cathode connected to signal net and the anode connected to ground supply is extracted. In this case, it is a ground type diode.

antenna_diode_related_power_pins : "VSS";

Related Topics

Passive Devices

Backtrace Enable Signals of Special Cells

Connectors

Single Rail Cells

Stack Transistors

Terminal Name Registration for Devices


Return to top
 ⠀
X