What ProMOST can do

One GUI, many engines

ProMOST sizes one transistor at a time, using your PDK's own compact model, in real time. The main GUI does the dimensioning; add-ins take the same device into distortion, RF, switched configurations, the full W–L plane, your design suite and your Python scripts. Nothing is re-entered, and there is no "Run" button to wait for.

The main GUI at the centre,
capabilities all around it

Every add-in inherits the device, bias point and sweep setup from the main GUI, and runs on the same solvers. Click one to see what it computes.

The ProMOST main GUI core
The ProMOST main GUI: graph pane, operating-point pane, bias and sizing pane, and process/corner/temperature selector
Four panes, one live device: graphs (top left), operating-point data (bottom left), bias & sizing with the free-parameter selector (top right), and process, corner and temperature (bottom right).
  • Solve for whichever parameter you don't know: W, L, ID/gm, or the {VGS, VGT, gm/ID} set
  • Basic and constrained sweeps, plotted against VGS, VGT, gm/ID or the inversion coefficient
  • Full OP report: DC, small-signal, noise, spread/mismatch, loaded y- and s-parameters
  • 3×3 corner grid with editable temperatures, overlaid in a single graph
BruteForceSweeps add-in

The main GUI sweeps W or L at constant ID or gm. This add-in sweeps both, giving a colour map of any parameter across the entire W–L plane with your specifications applied as a filter.

BruteForceSweeps colour map of |Zdd| over the W-L plane with a spec filter, contours and the best point marked
  • Plot any OP parameter (|Zdd|, gds, µ, noise) over W and L at constant ID or gm
  • Filter on properties (with presets) greys out every sizing that fails your specs, drawing the feasible design region
  • Contours + best marks the optimum; Pareto vs: overlays the trade-off front between two parameters
  • Apply best pushes the recommended W and L straight into the main GUI, with the margin on each spec
ProMOST_BruteForceSweeps.pdf
Distortion add-in

Non-linearity of the real device, computed by a quasi-PSS engine rather than a fitted polynomial. Sweep it exactly like a DC sweep and read the sweet spot off the graph.

Distortion add-in: IP2 and IP3 over a constrained sweep at 900 MHz
  • Spectra with harmonics and noise; IP2/IP3, input- and output-referred, over constrained sweeps
  • Analytic Taylor/Volterra 2-port expansion coefficients, which stay reliable near a sweet spot, where an FFT disappears into its own noise floor
  • An nth-order Verilog-A model generator, to pin down where the non-linearity comes from
  • Headline outputs such as IIP3 can be pinned into the main OP pane, with a warning when a value approaches the noise floor
ProMOST_Distortion.pdf
RF small-signal add-in

The same device and the same constrained sweep, now inside its embedding network. The device comes from the main GUI; you add the terminations around it.

The RF small-signal add-in: Y-parameters, zin, zout, gain, fT, fmax and stability factor, with the source and load termination network
  • Y-, Z- and S-parameters, zin, zout, G, GT, av, fT, fmax and stability factors
  • Set ZSs, ZSp, ZL and inductive source degeneration, so the numbers describe your actual stage instead of a bare device
  • Plot on x-y-z axes or on a Smith chart; sweep VGS, VDS, frequency, temperature, or (VGS,W)/(VGS,L) at constant ID or gm
  • Export S-parameters to Touchstone, and cross-check the result against Spectre
ProMOST_RFss.pdf
SwitchedAs add-in

The main GUI assumes a common-source device, which real circuits frequently are not. This add-in biases and evaluates the transistor in the configuration you actually built.

SwitchedAs add-in: equivalent impedance and capacitance of a decap-switched MOS transistor versus frequency
  • Diode-switched, common-gate and MOS-capacitor configurations
  • Decap-switched MOS: equivalent impedance and capacitance as a function of frequency
  • Lumped non-quasi-static equivalents, so a decap's loss is visible long before layout
  • Same process, corner and temperature settings as the main GUI
ProMOST_SwitchedAs.pdf
BJT optimizer add-in

ProMOST is a MOS tool, but BiCMOS designs need their bipolar devices dimensioned too, in the same session and in the same way.

  • Mextram-based operating point for NPN and PNP devices
  • Noise, S-parameters and stability analysis
  • The same sweep-and-read workflow as the MOS side of the tool
  • Uses the bipolar model data from your converted PDK
SquareLaw & Simplified EKV add-ins

The reverse direction: take the accurate device and derive the simple model, with every coefficient carrying a textbook meaning (β, VTH, λ, Cox), fitted at your operating point, in your technology.

  • Square-law and simplified-EKV equivalents of the live device, regenerated automatically as you change the bias point
  • Output as a ready-to-use Verilog-A module, a Mathematica fragment with plots, and an Excel workbook
  • The workbook compares the idealized model against the full ProMOST model over VDS and VGS sweeps, so you can see exactly where they deviate
  • Made for teaching and for hand analysis: the square law next to a real short-channel device
ProMOST_SquareLaw.pdf · ProMOST_SimplifiedEKV.pdf
TheRemote add-in

ProMOST as a calculation engine behind your own script, over a pipe or a socket, with Python, MATLAB or a Jupyter notebook on the other end.

# one setup line, then one line per sweep point
setup = "format=value;isn=true;l=0.5;vds=0.6;gm=10e-3;calcvgtvgs"
# W sweeps; VGS is re-solved at every point to hold gm on target
for w in widths:
    vgs, id_, oip3 = promost(f"w={w};vgs=?;id=?;OIP(1e9)=?")
  • Select devices, set bias and sizing, run constrained sweeps, read OP, RF and IIP/OIP data
  • Parameter studies and technology comparisons become scripts you rerun on every PDK update
  • Feed results into your own optimizers, notebooks or regression suites
  • Python and MATLAB examples ship with the distribution
ProMOST_TheRemote.pdf
Design-suite integration add-in

Select a device on your schematic, size it in ProMOST and push the result back: a full round trip, not just an export.

Round trip: a device on the schematic goes to ProMOST for sizing and the new geometry returns to the schematic
  • Start from the instance menu or a bindkey; W, L, m and nf are copied automatically
  • Process match and type match indicators confirm you are looking at the same device
  • Load the bias point from dc, OP, tran or td-pss simulation data, with a slider that walks along the sweep variable or along time
  • Optimize, then push the new geometry back into the schematic
ProMOST_Cadence.pdf

Click an add-in to see what it computes, or go

Every add-in already knows your device. Process, transistor type, geometry, bias point, corner and temperature come from the main GUI, and the add-ins run the same constrained sweep modes. The DC sizing you just did is the starting point of the RF and distortion work, so there is no set-up to repeat.

Solve for the parameter
you do not know

A designer rarely knows W. They know the gm they need, the current they can spend, and the length that buys enough output impedance. ProMOST lets you mark any one parameter as free and solves it from all the others, instantly, from the real compact model.

VGS VGT gm/ID ID gm W / nfin L ↳ free one, ProMOST solves it

"Give me the L that delivers gm = 5 mS at VGT = 150 mV, VDS = 0.6 V and W = 20 µm" is answered in well under a second. Entered values are shown in black and solved values in red, so the input/output split is never in doubt.

  • No "Run" button. Every edit, including every release of a bias slider, triggers a recalculation, typically well under a second, even for compound models.
  • Sliders on every bias field. Drag VGS on the transistor symbol and watch the operating point move.
  • Auto-stacking with a preferred length for series devices, set from the sizing pane.
  • Manual recalculation is one setting away for heavy multi-dimensional work.
ProMOST bias and sizing pane with the free-parameter selector; entered values in black, solved values in red
The bias & sizing pane. The radio column on the right picks the free parameter.

Sweeps that hold
your design constraint

An unconstrained W sweep changes the current along with the width, which is rarely the question you are asking. ProMOST's constrained sweeps hold ID or gm fixed and re-solve VGS as they go, giving the trade-off curve you actually design against.

Basic sweeps

See the device

Sweep VDS, VGS, W, L or temperature. Plot any OP parameter on either y-axis and any OP parameter on the x-axis, linear or logarithmic, two curves at a time.

Constrained sweeps

Design the device

(VGS,W), (VGS,L) and (VGS,T) at constant ID or gm; W and L at constant active area or at constant scale. The graph states which quantity is held, and at what value.

gm/ID native

Your methodology

Put gm/ID, VGT or the inversion coefficient on the x-axis and the plots become standard gm/ID design charts. Make it the default and ProMOST opens that way, every time.

Constrained sweep with W and VGS varied together at constant gm
Sweeping VGS and W together at constant gm, sizing a differential pair against matching and input capacitance.
The same constrained sweep plotted against gm/ID
The same sweep with gm/ID on the x-axis: a gm/ID design chart, straight out of your own PDK.
Worked example: sizing a differential pair. Free W, choose gm mode and enter the target gm; give L, VGT and VDS. ProMOST returns W immediately. Switch the graph to the (VGS,W) constrained sweep and plot gm/ID against thermal noise to pick the point you actually want. To trade W and L at the same time, hand the same device to BruteForceSweeps.

Everything a designer
reads from an OP

ProMOST's own op, dc, ac and noise solvers run the full compact model, including everything the PDK wraps around it. What ProMOST reports is what your simulator will report.

The ProMOST operating point pane with its four tabs
The OP pane: Operating point, Model data, Model info and System info tabs.
IIP2 and IIP3 values from the Distortion add-in appended below the standard OP data
Distortion add-in output pinned into the OP pane: IIP2 and IIP3 alongside the DC data, with a button that opens the add-in.

Corners and temperature,
before you commit

A size that only works at nominal is not a usable size. The process pane holds a 3×3 selector, {fast, nom, slow} × {cold, nom, hot}, and sweeps can be overlaid for several corners in one graph, so the spread of gm, fT or noise is visible while you are still choosing W and L.

  • All three temperatures are editable: type your own −40 °C, 27 °C, 125 °C, or anything else
  • Process corners are available wherever your converted PDK provides corner data
  • The (VGS,T) constrained sweep shows the VGS range a constant-gm pair needs across temperature
The ProMOST process, corner and temperature selector
The corner and temperature selector.

Your PDK's models,
run as they are

ProMOST does not fit a surrogate. It runs the compact model from your PDK in its own background solvers, on the complete subcircuit, which is why its answers hold up once you reach the simulator.

MOS11 PSP BSIM3 BSIM4 BSIM6 BSIMBULK BSIMCMG BSIMIMG BSIMSOI HiSIM-HV UTSOI SimKit 3.8 SimKit 6.3 Mextram BJT JFET Diode Verilog-A Compound models
Compound devices

Solved as one device

Transistors wrapped in subcircuits with diodes, juncaps and passives are solved whole, with per-component OP data and the equivalent OP of the complete model.

Background solvers

op · dc · ac · noise · quasi-PSS

ProMOST ships its own DC, AC, noise and quasi-PSS solvers and runs stand-alone, so no external simulator is involved while you dimension.

TheConverter

Once per PDK release

Import Spectre or (H)SPICE process data through reusable recipe files. A run takes minutes, is done once by CAD support and is shared by the whole group. ConversionVerifier regression-tests the result.

ProMOST calculation flow, from technology data and bias settings to output ProMOST compound-model flow, using background solvers and kernels
From technology data and bias settings to graphical and numerical output. For compound models, background solvers and kernels are employed.

Finding the right sweep
without reading the manual

ProMOST has more sweep modes and add-in outputs than anyone discovers by clicking around. Two built-in guides close that gap.

The ProMOST IntentPicker: pick a design task and ProMOST configures the sweep or opens the right add-in
"What do you want to do?" Pick a task such as size an input pair for a target gm or find the IIP3 sweet spot, and ProMOST applies the whole setup, or opens the right add-in pre-configured. The tooltip shows the raw setup it will apply, so the picker also teaches the mapping.
The add-in capability overview: one page per add-in listing what it computes
"What can these do?" One page per add-in listing what it computes, with a button that jumps straight there. It is built by scanning the Add Ins menu, so anything added to your distribution later shows up automatically.
And when you need the detail: context-sensitive help on F1 from anywhere in the GUI, a two-sided cheat sheet covering the common dimensioning tasks, and a full manual set covering the main GUI, every add-in, TheSettings, TheConverter, installation and licensing, all shipped with every distribution.

Getting started is
a one-afternoon job

1 · Install

Linux & macOS

macOS on Apple Silicon and Intel; multiple Linux flavours. Node-locked or RLM floating licences, with per-group and per-user customization. Requires a Java runtime 1.8 or higher.

2 · Convert your PDK

Recipe files

TheConverter turns Spectre/HSPICE process data into ProMOST technology files. Written once per PDK release, then reused by everyone in the group.

3 · Design

However you work

Stand-alone, embedded in your design suite through the integration add-in, or driven from Python and MATLAB through TheRemote.

In use at electronics companies, design houses and universities worldwide.