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

amsd Block Statements and Syntax

Only the simulation front end (SFE) parser recognizes and processes the AMS statements that you can use in an amsd block. You can use AMS statements only in an amsd block, which has the following form:

amsd{
   AMS_statements
}

You may not reference global parameters in parameter=value assignments in AMS statements.
In amsd block statements, you must escape any characters that are not legal characters in the Spectre namespace using a backslash. For example: busdelim=\+

The following AMS statements can appear in an amsd block:

Statement

Description

portmap

The portmap statement tells the AMS Designer simulator how a SPICE subcircuit interface should appear to the elaborator

config

The config statement specifies which definition you want to use for particular cells or instances.

ie

The ie statement specifies interface element parameters, optionally for a particular design unit. If you do not specify a design unit, the elaborator applies the parameter settings to all interface elements globally.

ce

Thce statement specifies conversion element parameters for VHDL-to-SPICE connections, optionally for a particular design architecture (cell level), or for a specific pin (port level). If you do not specify a cell or a port name, the elaborator applies the parameter settings to all conversion elements globally.

connectmap

The connectmap card defines a resolution function for one or more disciplines by using the realresolve parameter. The syntax of the connectmap statement is the following:

For example:

* AMS control file -- amsdControl.scs
include "./source/design.scs"   //analog netlist
include "./models/model.scs"    //device model file
include "./models/diode.scs" section=dio
// diode.scs is the model file; "dio" is the section to use
include "./models/pmos1.scs" section=nom
// pmos1.scs is the model file; "nom" is the section to use
include "./analogControl.scs"   
//analog control file
 
//amsd block
amsd{
      portmap subckt=pll_top autobus=yes
      config cell=pll_top use=spice
      ie vsup=2.0
      }

You can put a single amsd block in a separate file. You can also have one or more amsd blocks in one or more Spectre or SPICE input files. For example:

// file1.scs
amsd{
     portmap subckt=s1 autobus=yes
     config cell=s1 use=spice
         }
amsd{
     portmap subckt=s2 autobus=yes
     config cell=s2 use=spice
     }

// file2.scs

amsd{
     portmap subckt=subcx autobus=yes
     config cell=subcx use=spice
    }
Related Topics






 ⠀
X