SystemC AMS


SystemC AMS is an extension to SystemC for analog, mixed-signal and RF functionality. The SystemC AMS 2.0 standard was released on April 6, 2016 as IEEE Std 1666.1-2016.

Language specification

ToDo: description

Language features

ToDo: description

MoC - Model of Computation

A model of computation is a set of rules defining the behavior and interaction between SystemC AMS primitive
modules. SystemC AMS defines the following models of computation: timed data flow, linear signal flow
and electrical linear networks.

TDF - Timed Data Flow

ToDo: description

ELN - Electrical Linear Networks

ToDo: description

LSF - Linear Signal Flow

ToDo: description

Ports

TDF in/outport definition:
sca_tdf::sca_in
sca_tdf::sca_out
TDF converter in/outport definition:
sca_tdf::sc_in // DE → TDF inport
sca_tdf::sc_out // TDF → DE outport
ELN terminal definition:
sca_eln::sca_terminal

Nodes

sca_eln::sca_node // ELN node
sca_eln::sca_node_ref // ELN reference node

Cluster

ToDo: description

Tracing


sca_trace_file *tf = sca_create_tabular_trace_file;
sca_trace;

Example code

TDF

Timed-Data-Flow 1st order low pass model:

  1. include
using namespace sca_util; // introduced for convenience: sca_util::sca_vector → sca_vector
using namespace sca_core; // introduced for convenience: sca_core::sca_time → sca_time
using namespace sca_ac_analysis; // introduced for convenience: sca_ac_analysis::sca_ac → sca_ac
SCA_TDF_MODULE

linear transfer function:

// initialize linear transfer function coefficients
void tdf_low_pass::initialize

ToDo: description

// AC implementation
void tdf_low_pass::ac_processing

ToDo: description

// time domain implementation
void tdf_low_pass::processing

ELN

Electrical-Linear-Networks 1st order low pass netlist:

SC_MODULE

LSF

Linear-Signal-Flow netlist:

History

SystemC AMS study group was founded in 2002 to develop and maintain analog and mixed-signal extensions to SystemC, and to initiate an OSCI SystemC-AMS working group. The study group has made initial investigations and specified and implemented a SystemC extension to demonstrate feasibility of the approach. In 2006, a SystemC AMS working group has been funded which continued the work of the study group inside OSCI, and now goes on to work on SystemC AMS within the Accellera Systems Initiative, resulting in the AMS 1.0 standard in 2010. After the release of the Accellera SystemC AMS 2.0 standard in 2013, the standard was transferred to the IEEE Standards Association in 2014 for further industry adoption and maintenance. The SystemC AMS standard was released April 6, 2016 as IEEE Std 1666.1-2016. COSEDA Technologies provides with COSIDE the first commercially available design environment based on SystemC AMS standard.