System Level Design Languages:Transaction Level Modeling

Transaction Level Modeling

In the recent years, the ESL industry has defined a level of abstraction in modeling and design of systems. This level of abstraction is generally higher than RTL in that the timing details are not considered and the communications between modules are modeled by high-level channels instead of a wire or a group of wires. This level of abstraction, which is going to become the starting point in system level design, is called transaction level and the act of modeling a system in this level is referred to as TLM. System level designers and innovators utilize the transaction concept in this level of system modeling. This concept has been used in networks for many years and in these days it has been closely related to network-on- chip (NoC) designs (see Chapter 16 for description of NoC’s).

As a matter of fact, there is no special and unique definition for TLM between system level designers. Each EDA vendor or system level designer defines TLM by one of its aspects. In a general definition of TLM, the system is divided into two parts: communication and computation parts. In this definition, TLM is considered as modeling the communication parts of a system at a high level of abstraction (e.g., by functions). With this definition, the computation parts (modules) of a design can be at various levels of

System Level Design Languages-0246

abstraction. It is obvious that the higher level the modules are designed, the faster their simulation process and the easier their connection with communication parts are.

In the next section we give a brief history of the development of TLM. Then, communications in TLM are discussed. TLM advantages are also discussed in Section 86.4.3. Different levels in TLM will be listed in Section 86.4.4. Then, the weaknesses of TLM are described in Section 86.4.5. Sections 86.4.6 to 86.4.8 are devoted to TLM constructs and concepts. In Section 86.4.9, an example using TLM is shown, and the last section presents a summary of this section and the entire chapter.

TLM History

Open core protocol-international partnership (OCP-IP), which has several industrial partnerships, has been working on TLM models and libraries since 2002. These models were developed in C++ and SystemC. Later, open SystemC initiative (OSCI) organization with collaboration of many companies and

System Level Design Languages-0247

System Level Design Languages-0248System Level Design Languages-0249

EDA organizations (including OCP-IP), released TLM application program interfaces (APIs) and an open source library, in June 2005. As announced by the OSCI TLM working group chair, more than 50 members have been working on this library for more than 2 years. Although the expressions used in the OSCI library and the OCP-IP library differ, it has been tried to maintain the compatibility between these two libraries for more reliable use of TLM in ESL design.

The OSCI TLM 1.0 library has been developed in SystemC 2.1 in association with many companies including Cadence Design Systems, CoWare, Forte Design Systems, Mentor Graphics, Celoxica Ltd., ChipVision Design Automation AG, Synfora, Inc., and Summit Design Automation, Inc. Using this library helps designers develop an early prototype of their system and make the necessary decisions in early stages of design. Figure 86.73 shows the design flow using TLM library. In this figure, the conversion process from TLM to RTL can be done manually or automatically.

Comments

Popular posts from this blog

Square wave oscillators and Op-amp square wave oscillator.

Adders:Carry Look-Ahead Adder.

Timing Description Languages:SDF