2. Schematic capture using XSCHEM

2.1. XSCHEM installation and configuration

XSCHEM is an open source schematic capture tool hosted here. It is capable to stream a customizable netlist, interoperates with simulators and post process the simulation results. To be used with IHP-Open-PDK it is strongly recommended to install xschem from sources using the latest release hosted on github.

After successful installation you can call the following command in the PDK_ROOT/ihp-sg13g2/libs.tech/xschem/ directory:

python3 install.py

It will compile and install a psp103_nqs.osdi binary and place it in $PDK_ROOT/$PDK/ngspice/openvaf/ directory. The file is mandatory for a simulation of our mosfet devices. The script will also creates a symbolic link to the $PDK_ROOT/$PDK/ngspice/.spiceinit file in your home directory. This approach permits to simulate circuits containing elements form IHP-Open-PDK in any directory. After this step you can call xschem & command to run the tool, what will bring the top level hierarchy schematic with a couple of examples segmented by simulation type.

xschem main window

2.2. XSCHEM symbol library

The IHP-Open-PDK delivers a symbol library which can be found in $PDK_ROOT/$PDK/libs.tech/xschem/sg13g2_pr directory and it contains the following devices.

Device

Description

npn13g2

HBT NPN bipolar transistor device with a Nx-number of devices parameter

npn13g2l

HBT NPN bipolar transistor device with a Nx-number of devices and El-emitter length parameters

npn13g2v

HBT NPN bipolar transistor device with a Nx-number of devices parameter, device for high power and lower frequency applications

sg13_lv_nmos

N-channel, low voltage parametrizable mosfet device. W-channel width, L-channel length, ng-number of gates, m-number of devices

sg13_hv_nmos

N-channel, high voltage parametrizable mosfet device. W-channel width, L-channel length, ng-number of gates, m-number of devices

sg13_lv_pmos

P-channel, low voltage parametrizable mosfet device. W-channel width, L-channel length, ng-number of gates, m-number of devices

sg13_hv_pmos

P-channel, high voltage parametrizable mosfet device. W-channel width, L-channel length, ng-number of gates, m-number of devices

rsil

Silicide resistor of a sheet resistance of 7 $Omega / square$

rppd

Polysilicon resistor of a sheet resistance of 7 $Omega / square$

rhigh

Polysilicon resistor of a high sheet resistance of 1360 $Omega / square$

ntap1

N-well diffusion contact resistance of 262 $Omega$

ptap1

P-well (substrate) diffusion contact resistance of 262 $Omega$

cap_cmim

Metal-Insulator-Metal capacitor

cap_cpara

Parasitic capacitor symbol attached to a model (used only for parasitics extraction)

cap_rfcmim

Metal-Insulator-Metal capacitor model for RF

dantenna

Antenna diode symbol. This diode is used to protect against low voltage. The anode of the diode should be connected to the ptap1 resistor.

dpantenna

Antenna diode symbol. This diode is used to protect against high voltage. The cathode of the diode should be connected to the ntap1 resistor.

pnpMPA

pnp HBT used for band-gap reference circuit

2.3. XSCHEM testcases

The top level schematic, namely IHP_testcases.sch,can be found at PDK_ROOT/$PDK/libs.tech/xschem/sg13g2_tests directory. By default each test case exports the netlist to the simulations/ subdirectory, where NGSpice is called in order to perform the simulation. The raw files generated using simulations are placed in the same folder. If a test case exports CSV file it will be placed in a csv/ directory. The scripts/ folder contains python scripts, which are used for CSV data post processing. All plots generated by the scripts are exported to the fig/ folder.

2.4. XSCHEM standard cell library

To be developed

2.5. XSCHEM IO cell library

To be developed