In the past, the hardware design world standardized on two languages: VHDL and Verilog. Lately, there has been a growing interest in complementary languages that could be employed for descriptions at a much higher level of abstraction. The driving forces behind such efforts are the simultaneous increase in design complexity, with multi-million gate designs, and the increase in pressure to get designs out faster with first-time design success. Among those high-level languages, SystemC, System-Verilog, and SpecC represent the most widespread. These languages fuse a well-known syntax with powerful constructs, enabling the modeling and simulation of complex systems; in particular SystemC has grown more and more popular.
SystemC is a set of C++ classes and macros which provide an event-driven simulation kernel in C++, together with signals, events, and synchronization primitives, deliberately mimicking the hardware description languages VHDL and Verilog. While such languages are often used for Register Transfer Level descriptions, SystemC is generally applied to system-level modelling, architectural exploration, software development, functional verification, and high-level synthesis. SystemC is often associated with Electronic System Level (ESL) design, and with Transaction-Level Modelling (TLM).
Media modal
SystemC offers real productivity gains by letting engineers design both the hardware and the software components together as these components would exist on the final system, but at a higher level of abstraction. This means that it is possible to concentrate on the actual functionality of the system more than on its implementation details. Moreover, since the detailed implementation has not been finalized yet, it is still possible to perform consistent changes to the design, enabling an effective evaluation of different architecture alternatives (including the partitioning of the functionalities between hardware and software). SystemC is also characterized by a high execution speed; note that this high speed is not only due to the SystemC simulation engine itself, but it is also caused by the high abstraction level generally used for SystemC based system descriptions.
Transaction Level Modeling (TLM)
In 2008, the OSCI committee has proposed a TLM library composed of a set of SystemC primitives that allow designers to implement several Transaction Level communication protocols with different degrees of accuracy.
Media modal
Virtual Platform Technology
OSCI SystemC and TLM
stay updated
Subscribe to our newsletter to receive the latest news, mission updates, and exclusive insights directly in your inbox. Be the first to know about our upcoming projects and breakthroughs.