Python tools for RFIC transformer layout generation, EMX-oriented export, S-parameter analysis, and geometry optimization.
Start with target electrical behavior and design constraints, generate a layout, evaluate the candidate, then use optimization to improve the next design.
In the GUI, the user enters target specs, starts the optimizer, watches generated layouts and EMX results, then selects the best design from the evaluated candidates.
The output combines the final layout, tunable geometry values, S-parameter derived curves, and target-versus-design metrics so the selected transformer can be reviewed before handoff.
Base package:
pip install .Development install:
pip install -e ".[gui,opt,test]"
python -m pytest -qPython 3.10 or newer is required.
Optional extras:
pip install ".[gui]" # Qt GUI and stackup viewer dependencies
pip install ".[opt]" # CMA-ES / TuRBO optimizer dependencies
pip install ".[test]" # pytest dependenciesrfic-transformer-inverse-design --help
rfic-transformer-inverse-design-gui --helpThe Python import package is:
import rfic_transformer_inverse_design
from rfic_transformer_inverse_design.api import default_run_config, TransformerOptimizerEMX/Cadence execution requires local configuration. At minimum, provide the
tool paths, process file, layer map, PDK cds.lib, tech library name, and any
license environment required by your site.
The built-in defaults intentionally use placeholders such as:
/opt/cadence/IC/path/to/pdk/cds.lib/path/to/pdk/layers.layermapexampleTechLib
Configure real values in your run config rather than committing them to the repository.
python -m pip install -e ".[gui,opt,test]"
python -m pytest -qFor headless Qt tests:
export QT_QPA_PLATFORM=offscreenMIT. See LICENSE.


