Product Documentation
Spectre AMS Designer and Xcelium Simulator Mixed-Signal User Guide
Product Version 22.09, September 2022

Compiled C Flow

The compiled C flow is turned on by default in AMS for the Spectre solver.

The AMS Designer simulator uses the compiled C flow for all analog and mixed-signal blocks implemented in Verilog-A or Verilog-AMS, including interface elements. The compiled C flow also supports VHDL-AMS modules for improved simulation performance.

The compiled C flow stores the compiled code and the shared objects in a new directory that gets created in the directory where the simulation runs. 

The compiled C flow is enabled by default and cannot be disabled. As a result, the CDS_AHDLCMI_ENABLE environment variable and the Spectre -ahdlcom option that were used to turn on/off the compiled C code flow have been removed.

Incremental Compilation of C Code

In normal Compiled-C flow, each behavioral module generates a C-code source file from bytecode. The C-code file is compiled and linked to a shared library (*.so). The shared library does not change if the behavioral module does not change between two runs.

The AMS Designer Simulator has been enhanced to reuse the existing shared library (*.so), instead of creating a new one, if the design does not change between two simulation runs.

The simulator recompiles the code under the following condition:

  1. %xrun test1.scs test2.scs test.vams
  2. %xrun test2.scs test1.scs test.vams

In the example above, even though #2 is the exact rerun of #1 with the SPICE file names interchanged, the simulator will start recompiling the code. This is because the simulator always uses the file name of the first .scs file as the design name and treats the #2 run as a change in the design. Therefore, incremental compilation will not take effect.

Disabling the Compile C Flow

Set the following environment variable to disable the VHDL-AMS compiled C flow:

setenv CDS_VHDLA_CC_FLOW  NO

When the compiled C flow is disabled, the Byte code technology is used.

Related Topics



 ⠀
X