XMODEL now supports advanced cluster partitioning with vsource elements, speeding up simulations measuring the total current or power.
MODELZEN now converts the voltage source elements to 'vsource' primitives by default. The old behavior of using 'dc_gen' can be enabled by setting 'devo_options["use_dcgen"]=True'.
Improved MODELZEN to handle the larger number of 'mode' inputs (> 20).
Added 'devo_options["resting_time"]' to specify an extra wait time after each SPICE simulation for UDM characterization.
Improved the stability of the MODELFIT’s algorithm for fitting the frequency-domain transfer functions, especially with near-improper systems.
Updated Fourier transform and power-spectral density (PSD) analyses for XMULAN and XWAVE.
Updated XWAVE to display 'X' and 'Z' for single xbit/bit signals.
Renamed 'math_pkg' package used internally to 'xmodel_mathpkg' to avoid possible naming collision.
Fixed a bug when dumping 1-bit-long net/reg vectors (e.g. X[0:0] and Y[8:8]) in JEZ format.
Fixed a XWAVE bug plotting jitter histograms when the standard deviation value is 0.0.
Fixed GLISTER bugs when netlisting 'systemVerilog' cellviews.
Fixed a bug with 'comblogic' UDM when the circuit has no inputs.
XMODEL can now dump VCD-format waveform files using '$xmodel_dumpfile()'.
Updated the XMODEL’s cross-finding algorithm to address some numerical issues.
Updated XMODEL to address the crash problem when running VCS-XA co-simulation.
Updated MODELZEN to support simple expressions without surrounding quotes in HSPICE-format netlists.
Updated MODELZEN to raise an error when the technology configuration file does not contain the definition for 'devo_options'.
MODELZEN supports independent control of the DUT netlist format using the 'sim_dutformat' option.
MODELZEN renames instance names when they have conflicts with parameter/net names or reserved keywords.
Updated MODELZEN support for PrimeSim (previously FineSim) especially when it is used with '-spectre' option.
Updated the built-in UDMs to support PrimeSim (previously FineSim).
Added MODELZEN support for multiplication factor parameters for UDM instances.
Added MODELZEN support for net names like '0p75v' in Spectre-format netlists.
Added '--udmmap' option to 'devo' utility to show 'devo_udmmap' mapping examples.
Added '--nperiod' option to 'meas_jtran.py' script to define the measurement periods.
Updated XWAVE to support multi-PAM prDFE eye diagram plotting.
Fixed a XMODEL bug not computing certain nodes by forcing DC initialization on transmission line elements and all passive elements connected to `ground.
Fixed a bug with 'filter', 'filter_var', and 'filter_sel' primitives producing diverging outputs.
Fixed a bug with 'filter_var' primitive not taking the pole, zero, gain values at time 0.
Fixed a bug with 'integ_mod' primitive stalling the simulation progress.
Fixed bugs with 'jez2vcd' script producing VCD-format readable by Cadence VIVA.
Fixed bugs with '$xmodel_dumpfile()' supporting new VCD-format waveforms.
Fixed a bug with 'xbit_to_xreal_var' connect primitive producing null waveforms in Xcelium.
Fixed a bug with MODELZEN evaluating expressions containing 'as' parameter.
Added a utility script 'fsdbvers', which can display the API version information of FSDB reader/writer libraries.
Added support for array expressions like 'A<3:0>' when mapping UDM ports via technology configuration files ('devo_udmmap').
Added type-checks when mapping UDMs via technology configuration files ('devo_udmmap').
Fixed a bug with 'compare' primitive operating in the finite-aperture mode.
Fixed a bug with 'slice' primitive, where redundant iterations were limiting the simulation speeds.
Fixed a bug with circuit-level simulation where a non-zero pole is treated as a DC-pole when it is very close to 0.
Fixed a bug with MODELZEN, handling 'npn' and 'pnp' elements located in the lower design hierarchies.
Fixed a bug with GLISTER/OA integration handling instance names when their 'hspice' properties have SPICE directives (e.g. '.ic', '.probe'), but not the NLP expressions for the instance names.
Added primitives for setting and getting temperature values: 'xreal_to_temp', 'real_to_temp', 'temp_to_xreal', 'temp_to_real'.
Updated 'dff_xbit' and 'latch_xbit' primitives to improve their speeds.
Updated 'npn' and 'pnp' primitives to support dynamic changes in temperature during simulation.
Added 'npn' and 'pnp' primitives for modeling bipolar junction transistors (BJTs) with temperature-dependent characteristics.
Added MODELZEN support for calibrating bipolar junction transistor model parameters.
Added MODELZEN support for the use of wildcard/regular expressions in 'devo_udmmap' in technology configuration files.
Added MODELZEN support for the use of '-' characters in the node names of SPICE netlists.
Added 'udm_options["assert_invalid_mode"]' option in MODELZEN technology configuration file to enable customization of assertion message for invalid UDM mode values.
Added 'devo_options["passive_novalue"]' option in MODELZEN technology configuration file to define handling of passive elements with no element values.
Updated 'deriv' primitive to avoid trimming of small-amplitude signals.
GLISTER supports the aliases of 'analogLib' library ('xmodelAltViewAliases').
MODELZEN treats the 'resistor', 'inductor', and 'capacitor' instances without the element values specified as 'open', 'short', and 'open' elements, respectively.
MODELZEN characterizes the circuits/devices only with the sets of parameters actually used within the design; previously, it also characterized the circuits/devices with their default parameter values.
MODELZEN now generates models excluding the cells mapped to UDMs when producing a single-file output.
MODELZEN has a new '--real' option that can specify a list of modules with the default I/O port type of 'real'.
Added 'srlatch' UDM.
Added '--uvm' and '--uvm-option' options to the 'xmodel' launcher script that specify UVM-related options.
Revised GLISTER netlisting format for unpacked real-type arrays, for example, to make the ADC receiver example with 'filter_disc_var' primitives work with all the simulators.
Fixing the bug with 'xreal_to_real' primitive operating in 'pwc' mode.
Fixing the event accumulation issue when simulating certain circuits for extended period of time.
Fixing the bug with 'npn', 'pnp', and 'diode' primitives in their exponential I-V equations.
Fixed a MODELZEN bug in characterizing UDMs with Spectre (‘stop limit must not equal start limit’).
Fixed a MODELZEN bug to interpret the scaleunit 'M' as 'mega' instead of 'milli' in Spectre-format netlists.
Fixed a bug with 'replay_all' primitive in GLISTER handling digital bit vectors.
Fixed a bug with 'select' UDM.
Fixed a MODELZEN bug handling SPICE netlist containing subcircuits with no default parameter definitions.
Fixed a bug with 'compare' primitive when it is used in the finite-aperture mode.
Fixed a bug with 'stline' primitive when the reflection transfer functions are defined in split-delay format.
Fixed a bug with 'inline' primitive when the source code includes '%' characters.
Fixed a bug with 'filter_var' primitive when it receives the changes in the 'gain', 'poles', or 'zeros' inputs before the input 'in' becomes valid.
Fixed a bug with the 'xmodel' launcher script when it parses '--sweep' and '--param' expressions.
Added new primitives 'vlimit', 'vlimit_sw', 'ilimit', and 'ilimit_sw', describing voltage and current limiting elements, respectively.
Added a new primitive 'probe_value' for recording the sampled values of a signal to a text file at triggered events.
Added new scripts 'meas_bathtub.py', 'meas_jtran.py', 'meas_jtol.py' for BER bathtub, jitter transfer (JTRAN), and jitter tolerance (JTOL) simulations, respectively.
Fixed a MODELZEN bug making incorrect signal connections when there exist multiple connectors supporting different conversion levels for the same signal.
Updated the lectures #07~#09 of the tutorial 'xmodel_hslink'.
Updated the PID controller designs and analyses in the tutorial 'xmodel_dcdc'.
Added 'seq_mode' parameter to 'prbs_gen' primitive to support both MSB-first and LSB-first ordering of parallel data outputs.
Added 'trig_mode' parameters to 'meas_ber' and 'probe_ber' primitives to support the input sampling at the positive edge, negative edge, or both edges of the clock.
Updated the documentations on 'probe_*' primitives.
Updated 'glister' script to produce cleaner messages when an error occurs.
Further improved the numerical stability of the XMODEL CLM simulation engine.
The XMODEL installation no longer contains 'libfontconfig', 'libfreetype', 'libxml2', and 'libz' libraries to avoid version conflict issues in RHEL8.
Improved the numerical stability of the XMODEL CLM simulation engine.
Added 'period' parameters to 'trig_edge', 'trig_posedge', 'trig_negedge', 'trig_cross', 'trig_rise', 'trig_fall', and their 'meas_' counterparts to support repetitive triggering.
Updated the 'nmosfet' and 'pmosfet' primitives so that their GMIN resistance at the cut-off state is placed between the source and drain instead of between the source/drain and ground.
Made minor improvements to the 'probe_ac' primitive and 'meas_ac.py' script.
Improved XWAVE to reduce its aliasing effects when plotting waveforms of 'xreal'-type signals.
Added support for 'Kp_data' parameters for 'nmosfet' and 'pmosfet' primitive symbols in GLISTER.
Added a GLISTER option 'xmodelExpandUnpackedArray' to control whether to expand the unpacked array signals into their members or not during the GLISTER netlisting (default: nil).
Updated the GLISTER menu item ‘Stop XMODEL Simulation’ to ‘Monitor/Stop XMODEL Processes’, which opens the XMODEL Simulation Process Monitor.
Updated GLISTER to make the script files executable when they are being netlisted from testbench views.
Updated the MODELZEN’s CDL netlist parser to support more advanced options and syntaxes of CDL.
Added MODELZEN support for fine-grained simulation result caching during UDM characterization.
Fixed the xmodel launcher script’s bug when using '--param' and '--sweep' options with ModelSim.
Fixed the 'meas_freq' primitive’s bug when computing the inverse of NaN with ModelSim.
Added 'const_xreal' primitive for producing a vector of constant xreal-type values.
Added 'const_bit' and 'const_real' primitives as GLISTER’s pseudo primitives.
Updated 'const_xbit' symbol view.
Updated 'filter' primitive in GLISTER so that parameters can define its pole and zero frequencies.
Updated 'filter_disc' and 'filter_disc_var' primitives so that they can keep their initial states while the input has a 'NaN' value.
Updated 'prbs_gen' and 'pat_gen' primitives to have 1-unit delay to avoid racing issues when a 'dff_xbit' primitive registers their outputs with the same clock.
Updated the 'jtol.py' script to support the use of 'probe_ber' primitives checking multi-bit outputs.
Updated XMODEL to support expansion of environment variables embedded in the parameter description filenames.
Improved the XWAVE speed of plotting statistical eye diagrams.
Revised the GLISTER license check-out and waiting behaviors as set by the $XMODEL_LICENSE_WAITMODE environment variable.
Updated GLISTER to support reordering of the parameters in the model parameter editing dialog window.
Updated the default value of 'devo_namemap' to treat names like 'A\(1\)' as array members.
Updated MODELZEN to support double quotes (“) as well as single quotes (‘) enclosing the parameter value expressions in HSPICE-format netlists.
Fixed a GLISTER netlisting bug handling the unpacked real array terminals of the 'filter_disc_var' and 'filter_var' primitives.
Fixed a GLISTER netlisting bug handling 'mux_xbit' primitives with the 'width_sel' parameter set to 4.
Fixed a GLISTER bug misplacing top-side labels for auto-created symbols.
Fixed a GLISTER bug handling non-numerical values for the parameters of the 'limit' primitive.
Fixed a bug with the 'meas_ac' script crashing when the measurement data contains all zeros.
Fixed a MODELZEN bug converting the cases of string constants included in Spectre-format netlists.
Improved the GLISTER speed of importing large SystemVerilog source files.
Updated the 'adc' primitive to support negative LSB values.
Updated the 'transition' primitive to avoid false warnings on its 'rise_time' and 'fall_time' parameter values.
Updated 'dff_xbit', 'dff_rst_async_xbit', 'dff_rst_sync_xbit', 'dff_set_async_xbit', 'dff_set_sync_xbit' primitives to support positive/negative/dual-edge triggering, active-high/low reset and set inputs, and setup/hold-time constraint checks.
Supporting internal current (.I) and power (.P) probing for switch primitives.
Updated 'dlatch.py' UDM to support reset/set operation while the clock is low.
Updated the GLISTER API function 'xmodelUpdateCellView()' to generate a symbol view when the 'genSymbol' argument is 't'.
Fixed an XMODEL bug crashing during the FSDB waveform dump with Questa.
Fixed an XMODEL CLM engine problem handling low-frequency poles.
Fixed an XMODEL CLM engine problem related to generation of reduced-order waveforms.
Fixed a GLISTER bug with loading/saving MODELZEN property files.
Fixed a GLISTER bug with dbinfo file generation when a design contains inherited connections.
Fixed a GLISTER bug raising error when simulating a testbench cellview with dependent files only.
Added 'stline' primitive to model multiport transimission lines with per-port characteristic impedances and split-delay transfer functions.
Added 'sparam_to_tline' utility that calibrates model parameters for an 'stline' primitive from a S-parameter file.
Updated 'step_gen' primitive to support generation of periodic waveforms with 'width' and 'period' parameters.
MODELZEN can trim open/short elements with multiple instance members.
Fixed time format displaying during MODELZEN model generation.
Fixed bugs with 'replay_xreal' and 'replay_xbit' primitives generating multiple events within one timestep when its time precision is finer than that used in the simulation.
Fixed bugs with 'integ', 'integ_mod', and 'integ_rst' primitives processing events at time 0.
Fixed a MODELZEN bug crashing when grouping instances with names containing ' <...>'.
Supporting unpacked arrays for 'xbit' and 'xreal' signals for CLM simulation and dumping waveforms.
Improved XMODEL numerical stability handling complex poles with high multiplicities.
Added 'licstat' utility for plotting license usage statistics.
Added MODELZEN support for 'group' property in 'devo_devicemap' to combine multiple instances into one (e.g. PODE instances).
GLISTER uses an alternate location ($HOME/xmodel.sim) for the simulation directory when the $XMODEL_SIMDIR environment variable is not defined and the default location ($CDS_PROJECT/xmodel.sim) is not writable.
Fixed MODELZEN bug not handling global nets correctly.
Fixed MODELZEN bug not enclosing expressions with quotes.
Fixed GLISTER’s license time-out operation.
Fixed a bug with 'inductor' primitive not acting as a short when L=0.
Fixed intermittent segmentation fault issues when starting MODELZEN in RHEL7.
Fixed a bug with 'sparam_to_tf' adding DC offsets to the fitted transfer functions.
Added new function primitives supporting mathematical functions: 'log_func', 'abs_func', and 'sqrt_func'.
Added 'integ_rst' primitive for integrate-and-reset operation.
Added 'pwl_sel', 'poly_sel', 'filter_sel', and 'delay_sel' primitives for modeling 'pwl_func', 'poly_func', 'filter', and 'delay' primitives with selectable characteristics.
Updated 'filter_var' primitive to perform one-timestep synchronization.
Fixed a bug with 'freq_to_clk' creating outputs with fluctuating frequencies even when the input frequency is steady.
Fixed a bug with 'probe_dc' primitive crashing when the 'trig' input toggles with uninitialized 'resp' input.
Updated the PWM model using the 'slice' primitive in the 'xmodel_dcdc' tutorial.
XWAVE suppresses glitches in digital vector values when displaying waveforms.
MODELZEN avoids overfitting in the sub-threshold region for nmosfet/pmosfet devices.
Updated 'select.py' UDM to support cases with dependent ports when the independent ports have different DC bias levels (e.g. level converter).
Added 'filter_disc' and 'filter_disc_var' primitives to model discrete-time filters with xreal-type inputs.
Added 'scale_var' primitive, a scaler with variable scale factor.
The 'sample' primitive now supports statistical simulation mode.
The 'sparam_to_tf' script is improved with: 1) the faster speed of fitting, 2) support of plotting single-bit or step responses after fitting in addition to frequency responses, and 3) more stable behavior of splitting the frequency response into multiple transfer functions.
The 'sparam_to_tf' script can plot the frequency response and step/single-bit response from a result data file (*.dat) when its name is given as an argument: sparam_to_tf .
Added the '--split' and '--delay' options to the 'sparam_to_tf' script, which supports splitting of the frequency response into multiple transfer functions separated by time delays.
Added the '--quiet' option to the 'sparam_to_tf' script that suppresses verbose messages or plots during the fitting.
MODELZEN supports the parsing of SPICE library names starting with numerals.
MODELZEN supports faster reading of large parameter files with out-of-order inter-dependencies.
Added the 'inv_func' primitive that computes a reciprocal function (1/x) of an xreal-type signal (x).
Added the ‘filter_comb’ and 'filter_comb_var' primitives for modeling comb filters.
Added new silicon photonics primitive for modeling ring resonators/filters: 'siph_ringres', 'siph_ringres_var', 'siph_ringfilter', and 'siph_ringfilter_var'.
The clock-generating primitives 'clk_gen', 'phase_to_clk', 'freq_to_clk', 'period_to_clk', 'duty_to_clk', and 'ilo' are updated to support the generation of 1/f^3 noise, 1/f^2 noise, and flat noise floor with the parameters 'PN_fcenter', 'PN_foffset', 'PN_dbc', 'PN_fcorner', 'PN_floor', 'RJ_kappa', and 'RJ_rms'.
The clock-delaying primitives 'delay_to_clk' and 'delay_xbit' are updated to support the generation of the accumulated jitter due to 1/f noise or white noise, and the independent jitter with the parameters 'PN_fcenter', 'PN_foffset', 'PN_dbc', 'PN_fcorner', 'PN_floor', 'RJ_kappa', and 'RJ_rms'.
The 'period_to_clk' primitive now updates the frequency of the output clock with the input period signal in a continuous-time fashion, instead of updating it at the output clock transitions only.
The 'interp_var_xbit' primitive now gives a warning instead of error when the input delay has an out-of-range value.
The 'sparam_to_tf' script uses an improved algorithm (Loewner matrix method) that fits the channel characteristics better with fewer poles. The old algorithm (vector fitting) can still be used with the '--v2019' option.
XMODEL now loads the 'FsdbReader' library instead of the 'FsdbReader_pure' library of Synopsys Verdi in order to support the loading of 'FSDB gate' format.
Added the GLISTER symbol for the 'ilo' primitive, which models an injection locked oscillator.
MODELZEN adds a new technology configuration option 'devo_udmmap' to support a limited scope of UDM mapping with the technology configuration file.
MODELZEN adds a new technology configuration option 'devo_option["optional_instprefix"]' to allow matching of instance names with extra prefixes between the schematic and its SPICE netlist.
MODELZEN sorts the port mapping orders for UDMs so that the busses appear in the same order as in the original circuits.
XMODEL now uses the external FSDB Writer API library (libnffw.so) when dumping the waveforms in FSDB format. The definition for the $VERDI_HOME or $NOVAS_HOME environment variable is required.
XMODEL leaves the GLITCHNUM setting for FSDB dumping at its default value. This value can be overridden with the Verdi’s environment variable FSDB_ENV_MAX_GLITCH_NUM.
XMODEL’s dumping speed in FSDB format is improved.
Added new primitives vcvs_sw, vccs_sw, ccvs_sw, and cccs_sw to express dependent voltage/current sources with switchable scale factors.
MODELZEN supports the extraction of MOSFET models with negative Vth.
Fixed MODELZEN bugs handling the netlists containing explicit definitions for multiplication factors, instance names containing unsupported characters, and designs containing cells with duplicate names.
Fixed MODELZEN bugs with ‘modules_expand‘ operation and with parameter values containing expressions.
Updated the readline library to address the messages regarding undefined references during installation.
Added a new tutorial xmodel_dcdc, addressing modeling and simulation of DC-DC converters.
Newly revised the tline and mtline primitives, with the support for all transfer functions between the ports.
Added GLISTER symbols and updated documentations for tline and mtline primitives.
Added multi-bit input/output support for prbs_gen and probe_ber primitives.
Improved MODELZEN support for the conversion of .MEASURE statements and .VEC input files.
MODELZEN always puts the top-level cell first in the generated model.
The sample technology configuration file located etc/tech_config.py is updated with new styles, using new utility functions added to the devo_util library.
Improved XWAVE to reduce aliasing artifacts when displaying high-frequency waveforms.
Added a vertical scroll bar for the UDM Edit Property Dialog window when it has too many items.
Fixed a bug with the pwl_gen primitive.
Fixed GLISTER hanging issue when XWAVE is launched within GLISTER with the infix option enabled.
Added 'replay_all' primitive that can build testbenches using previously-run FSDB waveform files.
Added 'probe_ac' primitive to support pseudo-small-signal AC analysis with XMODEL.
Added 'chirp_gen' primitive that can generate sinusoidal chirp signals.
Added 'meas_freq' primitive that measures the frequency of trigger events.
Added 'meas_ac' script for plotting the AC transfer functions analyzed by the 'probe_ac' primitive.
Added 'scale' parameters to 'sin_func' and 'exp_func' primitives.
'pulse_gen' primitive can generate one-time pulses when 'width' or 'period' is negative.
'meas_max', 'meas_min', 'meas_integ', 'meas_avg', 'meas_pp', 'meas_rms' can make consecutive measurements when the 'from' and 'to' ports are connected to a common trigger.
$xmodel_dumpvars() supports FSDB dumping of multi-dimensional arrays (MDAs) with "mda=1" option.
$xmodel_dumpvars() supports dumping of enumeration-type signals.
Added GLISTER symbols for 'chirp_gen', 'meas_freq', 'interp_var_xbit', 'vinit', 'iinit' primitives.
Fixing bug with 'sin_func' primitive when mode='cos'.
Fixed a bug with replay_xreal and replay_xbit primitives trying to load alternate names "V:xyz" and "v(xyz)" when the signal named "xyz" is not found in the FSDB waveform file.
Revised MOSFET capacitance equations for 'nmosfet' and 'pmosfet' primitives.
'sparam_to_tf' supports TOUCHSTONE-format file with an arbitrary extension '.s#p'.
Fixed a GLISTER/MODELZEN bug with using the current conversion level with "i:" syntax.
Fixed a GLISTER bug in converting expressions larger than 1-Tera.
Providing error messages for illegal syntax used for 'devo_namemap' in the technology configuration file.
Fixing a MODELZEN bug interfacing 'wire' type or 'inout' ports of UDMs.
XMODEL now supports RedHat Enterprise Linux (RHEL) 6 and above and may not work for RHEL 5 any more.
Added 'init_value' parameters for 'inv_xbit' and 'delay_xbit' primitives to specify initial output values at time 0.
Added support for probing internal V, I, P variables of vsource and isource using the "probe=" option of $xmodel_dumpvars().
Added support for FSDB Reader API versions 5.4, 5.5, 5.6, and 5.7.
Added documentations for meas_* and trig_* primitives in the XMODEL Reference Manual.
GLISTER adds symbols for measurement primitives (meas_* and trig_*).
GLISTER adds symbols for 'transformer' and 'minductor' primitives.
GLISTER pops up a dialog window when the netlisting fails.
GLISTER adds option to use an external text editor when editing text fields for the 'inline' primitives or from XMODEL Testbench Editor’s cosimulation tab.
Improved XWAVE’s speed of computing Fourier transforms of xreal-type signals.
MODELZEN supports recycling for UDM characterization results.
MODELZEN converts parallel instances with xbit/wire indices to multiplicity-scalable instances using 'mscale' primitives.
Added MODELZEN’s ‘use_realbus’ option to support the use of real-type array ports.
Added devo_options['mult_factor'] for MODELZEN to allow users to define their own names for the multiplication factor in case of name collision with the same-named terminals or nets.
Fixed a bug with slice primitive not finding crossing events of a slowly varying signal.
Fixed a bug in the XWAVE’s phase noise plotting function.
Fixed GLISTER bug handling split busses.
Fixed GLISTER bug handling ‘inout’ ports during import.
Fixed MODELZEN bug not being able to find the simulation result files when working with the latest versions of Spectre.
Fixed MODELZEN bug with pnp/npn devices generating 'max_leveldc'-related errors.
MODELZEN uses multiplication factors instead of instance arrays for parallel connections of identical instances.
MODELZEN supports the use of global signal names in a subcircuit port list (e.g. gnd) and treats them as local signals within that subcircuit.
GLISTER uses the pin ordering information returned by xmodelGetPinOrder() in the module definitions.
Introducing $xmodel_progress() system call that displays the progress of simulation.
Added 'init_value' parameters for buffer and buffer_xbit primitives as ways to set the initial value of a signal within a feedback loop.
Added/revised GLISTER API functions 'modelzenSetPropPin', 'modelzenSetPropInst', 'modelzenSetPropInstGroup' for setting MODELZEN properties of a pin, instance, and instance group, respectively.
Added MODELZEN option ('format_bitblast') for customizing instance/net bit-blasting format.
Added MODELZEN properties named 'max_leveldc' for limiting the maximum level_dc pwl knots for serially-stacked nmosfet/pmosfet devices.
Added 'max_warn' parameters for 'interp_xbit' and 'interp_var_xbit' primitives to optionally suppress the warning messages generated when the input clocks are too wide apart.
Improved the speed and DC convergence of XMODEL CLM simulation.
Improved the GLISTER’s parsing speed when importing source files.
Improved the output resistance (Ro) models of 'nmosfet' and 'pmosfet' primitives.
Improved GLISTER support for ADE-XL integration.
Updated the PFD models in the PLL examples to avoid ‘X’ propagation with the updated 'dff_rst_async_xbit' primitive.
Fixed bugs with 'delay_to_clk', 'replay_xreal', and 'real_to_xreal' primitives.
Fixed a GLISTER bug when propagating conversion level properties.
Fixed MODELZEN bugs handling the internal supply option, restoring the original net names in the schematic, and handling commented continuation lines in the input netlist.
Improved XMODEL’s numerical stability and speed for circuit-level simulation.
Improved MODELZEN’s model extraction speed with multi-processing.
Improved GLISTER’s netlisting speed.
Added GLISTER User Guide documentation.
XMODEL, GLISTER, and MODELZEN fully support for the output resistance (Ro) modeling and simulation for nmosfet/pmosfet primitives.
Improved GLISTER and MODELZEN’s support for net and instance names that are illegal in Verilog or converted to different names due to the use of bus names or case conversion.
Added new XMODEL primitives including: replay_xreal, replay_xbit, xreal_to_xbit_var, xbit_to_xreal_var, etc.
Added minductor primitive for mutual inductance modeling and GLISTER/MODELZEN support for it.
Added support for V, I, P probing and operating region (level) probing for nmosfet, pmosfet instances.
XMODEL and XWAVE can use external FSDB reader API library of which location is defined by $NOVAS_HOME or $XMODEL_FSDBRD_PATH.
GLISTER supports the use of External HDL marking and Reference Verilog Files from the Cadence Hierarchy Editor.
MODELZEN supports conversion of transient sources in SPICE and Spectre to XMODEL primitives (PULSE, PWL, SIN, EXP, AM, and SFFM) and dependent sources (vcvs, vccs, cccs, ccvs).
MODELZEN supports conversion of nmos/pmos transistors to switch primitives.
MODELZEN supports the conversion of .INCLUDE/.LIB, .IC/.NODESET, and the use of .PARAM statements, user-defined functions in Spectre format, and C-like expressions (!, &&, ||, ?:).
Added transformer and minductor primitives to support ideal transformer and mutual inductors, respectively.
Added XMODEL support for probing MOSFET internal variables (e.g. V, I, P) and added "probe=" option to $xmodel_dumpvars() for recording their waveforms.
Added MODELZEN support for cap_var model calibration.
Improved XMODEL simulation speed with a new DC solver and new crossing detector.
Fixed XMODEL bugs in enforcing signals’ continuity and approximating signals with large-residue exponential terms.
Fixed MODELZEN bug in handling substrate node of pmosfet transistors when reduced to capacitors.