System Level Design Languages:TLM Problems and Weaknesses
TLM Problems and Weaknesses
Although TLM speeds up the entire design process and verification of a system, it has weaknesses that limit its effective use in the design process. One of its main problems is that there is no defined standard for TLM. Design reuse is more feasible if design groups have the same point of view of the design levels and subsets. The other problem is the lack of mature ESL tools to support TLM. Today, many ESL tool vendors are working on automation tools that can accept a design developed in transaction level. These tools include synthesis tools, verification tools, and debugging and simulation tools. A TLM synthesis tool can convert a transaction level design into its corresponding RTL design. The ESL tool vendors can develop their tools more efficiently if there is a specified and standard subset for TLM.
Although there are problems in utilizing TLM in the design process, there are companies that use TLM as their starting point in their design process. These companies use TLM to speed up their modeling phase, early verification process, and software development. With today’s tools they may have to convert their high-level model into lower levels manually or semimanually, but their entire design process time is reduced by using TLM.
Another critical issue in TLM is the design and mapping of real-time operating systems (RTOS) on the design processors and DSPs, and this issue is in its early study phase.
TLM Basic Definitions
The basic vocabulary used in a transaction level design is discussed below. Refer to the diagram of Figure 86.75 for a visual representation of these terms.
• Transaction: The data exchange between any two modules is done by a transaction.
• Module: A meaningful part of a system which has a specified functionality. Different modules in a system can communicate via their I/O ports and channels.
• Port: Connection of a channel to a module is done via a port.
• Channel: The communication protocol between two modules is defined in a channel. Channels are categorized to primitive and hierarchical channels. A primitive channel is a channel which connects two modules with a simple functionality, and a hierarchical channel is a more complex channel which may include ports, modules, and even other channels.
• Interface: An interface is a set of methods needed for definition and implementation of a com- munication protocol.
Comments
Post a Comment