Data

Datasets and Models

COmPOSER uses CSV datasets to connect electrical targets to layout-realizable primitive geometries. The files shipped in DATASETS/ are reference-format datasets: they document the column names, units, and data shape expected by the sizing and primitive-optimization scripts.

Current Dataset Files

The repository currently includes five CSV files. The row counts below exclude the header row.

File Rows Used For Config Key
spiral_ind_data.csv 96,135 Spiral inductor geometry search and RF-response estimation spiral_inductor
cpwd_data.csv 15,200 Coplanar waveguide with ground optimization for matching networks cpwd
tline_data.csv 819 Transmission-line lookup during primitive parsing and layout generation tline
mimcap_dataset.csv 88 MIM capacitor polynomial model training mimcap
small_mimcap_dataset.csv 32 Small-MIM capacitor polynomial model training small_mimcap

Critical Rule

The scripts read columns by exact names. Preserve the same headers, units, and meanings when replacing the reference datasets with data from your own PDK.

Expected Schemas

Dataset Required Columns Expected Units
Spiral inductor Radius, Width, Gnd dist, Spacing, Turns, Inductance, Peak Q, Peak Q Freq, SRF Dimensions in um, inductance in pH, frequencies in GHz
Transmission line Length, Width, Inductance, Peak Q, Peak Q Freq, SRF Dimensions in um, inductance in pH, frequencies in GHz
MIM capacitor Length, Width, Aspect Ratio, Capacitance, Area Dimensions in um, capacitance in fF, area in um2
Small MIM capacitor Length, Width, Capacitance Dimensions in um, capacitance in fF
CPWD Length, Width, Gap, Char_Imp, beta_l, root_er Dimensions in um; characteristic impedance, phase length, and effective-permittivity terms must stay consistent with the optimizer setup

Where the Data Is Used

  • lna_stage_1_sizer.py reads spiral-inductor and CPWD data during initial LNA sizing.
  • pa_stage_1_sizer.py reads spiral-inductor data during PA sizing.
  • parse_netlist.py preloads transmission-line data and trains MIM-capacitor models before generating primitive layouts.
  • PRIMITIVE_OPTIMIZERS/ contains the model fitting and lookup utilities used by those flow stages.

Models

The MODELS/ directory is reserved for generated .pkl artifacts. These files are not committed to the repository, but they are recreated locally when the relevant training or optimization flow runs.

Model Artifact Generated From Purpose
emx_rf_model.pkl spiral_ind_data.csv Predicts inductor RF response from geometry.
knn_model.pkl spiral_ind_data.csv Finds nearby inductor geometries for requested electrical targets.
mimcap_poly_model.pkl mimcap_dataset.csv Fits the MIM-capacitance relation used by capacitor optimization.
small_mimcap_poly_model.pkl small_mimcap_dataset.csv Fits the small-capacitor relation used when compact MIM caps are needed.

How to Generate Your Own Data

For a new technology, generate these datasets with your own PDK, layout rules, simulation setup, and extraction environment. The goal is to sweep valid primitive geometries, simulate or extract their electrical behavior, then export clean CSV files with the exact schemas above.

  1. Choose the legal geometry sweep ranges for the target PDK, including metal widths, spacings, radii, lengths, capacitor dimensions, and CPWD gaps.
  2. Generate layout instances for each primitive family using the same geometry meanings used by COmPOSER.
  3. Run EM, parasitic, or circuit simulations in your local Cadence-based environment, depending on the primitive type and the fidelity required.
  4. Post-process the simulation output into the required CSV columns and units.
  5. Point the datasets section of your design config.json to the generated files.
  6. Run the sizing or parsing flow so the corresponding models are trained and cached under MODELS/.

Task to Be Done

Ready-to-run scripts for generating these datasets on your own system with Cadence tools and your own PDK will be added shortly. Until those scripts are released, treat the included CSVs as the source of truth for column names, units, and expected file organization.