BSIM4_ANALYZER_DIM
Links
| Language | GitHub Pages π | GitHub π» |
|---|---|---|
| πΊπΈ English |
Automatic BSIM4 Analysis Tool for CMOS 130nm DIM (L/W Sweep)
β‘ DIM-based model generation with Short-Channel Effects (SCE) + Fully Automated Analysis Flow
π Overview
BSIM4_ANALYZER_DIM is a Python + ngspice environment for performing automatic L/W sweep analysis
of MOSFET VgβId and VdβId characteristics based on BSIM4 models.
The tool generates netlists, runs ngspice, extracts model parameters, and outputs plots fully automatically.
In addition, the DIM model generation step incorporates Short-Channel Effects (SCE), enabling realistic
130nm device behavior:
- Vth roll-off
- DIBL
- Mobility degradation
- Ion / Ioff dependence on L & W
This enables dimension-aware device modeling for education, research, and standard-cell engineering.
π Directory Structure
BSIM4_ANALYZER_DIM/
β
ββ models/
β ββ 130nm_nmos_lxxx.sp
β ββ 130nm_nmos_wxxx.sp
β ββ 130nm_pmos_lxxx.sp
β ββ 130nm_pmos_wxxx.sp
β
ββ templates/
β ββ template_vg_dim.cir
β ββ template_vd_dim.cir
β
ββ run/
β ββ run_vg_dim.py
β ββ run_vd_dim.py
β
ββ plot/
β ββ plot_vg_dim.py
β ββ plot_vd_dim.py
β
ββ results/
ββ 130nm/
ββ l_vg/
ββ w_vg/
ββ l_vd/
ββ w_vd/
β Analysis Conditions
Temperature
- RT = 25Β°C
Technology
- CMOS 130nm
L Sweep (W = 1 Β΅m fixed)
0.10, 0.13, 0.16, 0.20, 0.50, 1.00 Β΅m
W Sweep (L = 0.13 Β΅m fixed)
0.50, 1.00, 2.00, 5.00, 10.00 Β΅m
Both NMOS and PMOS are fully analyzed.
π How to Run
β VgβId Sweep
python run/run_vg_dim.py
β VdβId Sweep
python run/run_vd_dim.py
π Example Output Files
From:
results/130nm/l_vg/
You will see files such as:
130nm_nmos_L013_vg.cir
130nm_nmos_L013_vg.dat
130nm_nmos_L013_vg.csv
130nm_nmos_L013_vg.log
130nm_nmos_L013_vg.png (generated by plot_vg_dim.py)
π§© Template Specifications
β template_vg_dim.cir
- Gate sweep (
.dc VG) - Uses
wrdatato store Vg and Id - Automatically unifies NMOS/PMOS current sign
β template_vd_dim.cir
- Drain sweep (
.dc VDSRC) - NMOS: Id = I(d) (positive direction)
- PMOS: Id sign inverted to match NMOS convention
π Extracted Parameters
β From VgβId
- Vth_gmmax β threshold voltage using gm-maximum method
- gmmax β peak transconductance
β From VdβId
- Id_lin β linear-region current
- Id_sat β saturation-region current
- Vdsat_approx β approximate Vdsat based on curvature change
π¬ DIM Model Generation with SCE Effects
generate_dim_models.py adjusts BSIM4 parameters based on device dimensions (L & W)
to reproduce short-channel physics realistically.
β Vth Roll-off
- Shorter L β reduced VTH0
β DIBL
Enhanced:
- PDIBLC1, PDIBLC2, ETA0 for short-channel devices
β Mobility Degradation
- U0 reduced for shorter L
- VSAT increased to reflect faster saturation behavior
β Narrow-Width Effect
- Smaller W increases Vth
- W-dependent adjustment of VTH0 and RDSW
These adjustments produce realistic L/W dependence of:
- Ion / Ioff
- Vth
- gm
- VdβId curves
π Why DIM Analysis Is Important
The framework enables exploration of:
- Short-Channel Effects (SCE)
- DIBL behavior
- Vth roll-off
- gm dependence on L/W
- Ion / Ioff variation
- SRAM Ξ² ratio design
- Standard-cell drive strength
- Process/device education and training
π Reference Examples (Screenshots)
β VgβId (L Sweep, NMOS, Linear)

β VdβId (L Sweep, NMOS, Linear)

β L vs. Id_sat (NMOS)

π Version
Version: 1.0 (DIM Base / SCE Adjusted)
Last Update: 2025-01
π Hybrid License
| Item | License | Description |
|---|---|---|
| Source Code | MIT License | Free to use, modify, redistribute |
| Documentation / Text Materials | CC BY 4.0 | Attribution required |
| Figures / Plots / Generated Data | CC BY-NC 4.0 | Non-commercial use only |
| External Model References | Original license applies | Cite properly |
π€ Author
| π Item | Details |
|---|---|
| Name | Shinichi Samizo |
| GitHub |