Skip Nav
Home » Downloads » Drafts Under Public Review » SystemC 2.3 Public Review

SystemC 2.3 Public Review Information

Please note: The public review period ended on March 3, 2012

In early 2012, the Accellera Systems Initiative Language Working Group (LWG) made available an early SystemC library version 2.3 for public review.  The purpose of this public review was to obtain feedback on our updates to the Proof-of-Concept distribution to be compatible with the recently announced IEEE-1666-2011 update to the standard. We are looking for discrepancies versus the standard, and simple install/documentation issues against the supported platforms. We are not looking for any changes to functionality nor do we have any intent of expanding the official platform list.

IMPORTANT: This was NOT an approved, final library, and there will definitely be a few changes in the final release, albeit we do not expect substantial changes. It is our strong belief after exhaustive testing that this public review version correctly implements the standard. As a reminder, the purpose of this implementation is to provide proof-of-concept that the ideas embedded in the standard are achievable. Other implementations may go about this differently, and are in no manner obligated to provide source or details about their proprietary approach.

As a convenience courtesy to our readers, here is a NON-exhaustive overview of some of the changes compared to SystemC 2.2. For more information, you should refer to IEEE_1666-2011 being published in January 2012.

* This version of SystemC contains the "Proof of Concept" simulator for the IEEE 1666_2011 SystemC standard including:

  + Expanded dynamic process capabilities
    - suspend(), resume()
    - disable(), enable()
    - reset(), kill()
    - sc_is_unwinding(), is_reset()
    - reset_event(), terminated_event()
    - async_reset_signal_is()
  + Event naming
  + A number of other additions/changes to SystemC functions and classes
    - sc_start(), sc_pause()
    - sc_get_status()
    - sc_pending_activity(), sc_time_to_pending_activity()
    - sc_vector<>, sc_assemble_vector()
    - set_verbosity_level(), SC_REPORT_INFO_VERB()
    - sc_event_and_list, sc_event_or_list
    - sc_prim_channel::async_request_update()
  + Boost library used by SystemC is now in the namespace sc_boost
    rather than boost.

* Bug fixes - see section 2 of RELEASENOTES in the distribution
* Clarified platform support in README

Please consult the IEEE-1666-2011 standard for definitive information on new functionality. The final IEEE standard document is available at http://standards.ieee.org/getieee/1666/download/1666-2011.pdf at no charge courtesy of Accellera Systems Initiative.


For those platforms and configurations outside the specified set (see README), we welcome information that a particular platform works; however, there are no official plans to support platforms outside those listed in the README.  In any case as SystemC open source, there is no support except by the goodwill of participants in the SystemC forums. Please refer the licensing for further details on the terms of this software.

If reporting a new OS or C++ compiler compatibility, please indicate OS name/revision, C++ vendor/version, 32/64-bit, and how tested (ideally 'make check' and pass regressions).  If reporting a "feature", please identify the failed test, OS name/version, C++ vendor/version, and provide a testcase with output log if at all possible.  If you believe there is a specific failure to conform to wording in the standard, please identify the specific section. NOTE: You will need to obtain your own copy of the standard.

E-mail your feedback to review-systemc@lists.accellera.org
. Please do NOT include large attachments (>1Mb). Do NOT expect replies to reports or inquires. We will make every effort to properly assess and incorporate feedback received as we deem appropriate. Feedback received after March 3, 2012 will be considered for a subsequent release.

PLEASE NOTE: In compliance with IEEE 1666-2011, the official 2.3 release will incorporate TLM as a core component of SystemC.  However, TLM has not been bundled with this release for public review; the RELEASENOTES file contains instructions for using TLM 2.0.1 in conjunction with this release.

For more information, please contact us.