System Level Design Languages:TLM Communication
TLM Communication
As we can mix RTL/gate-level designs in RTL modeling, it is possible to develop designs that include modules in RT and transaction levels of abstraction. Since the kind of communication connections is
different in these two levels, we have to put special modules, called transactors, around our RTL modules. Figure 86.74 shows a mixed RTL/transaction level design.
In this figure, there are two RTL modules and two higher-level modules. These high-level modules can be developed in any high-level language. As shown, these high-level modules are connected to each other by a transaction level channel. This means that communications between these modules are done by function calls instead of event passing or waiting on signals.
Also the communication between the high-level module 1 and RTL module 1 are modeled by transaction level channels. But since RTL module 1 cannot communicate in this level, there must be a translator between this module and the connector channel. This translator (called a transactor) converts the events of the RTL module outputs into transactions and passes them to the channels and receives the transactions from the high-level module 1 through the channel and converts them into input events for the RTL module. It is obvious that the communication speed in a channel between two high-level modules is higher than the communication speed in a channel between a transactor and a high-level module.
In Figure 86.74, the RTL modules communicate by event passing (the traditional way of communication in RTL). If we were to use a transaction level communication between these two modules, we had to put two transactors between them which may not be as efficient.
Comments
Post a Comment