Time Annotated Transaction Level Modeling for Cycle Timing Accuracy
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing transaction level 2 (TL2) software simulation models in computer networks lack cycle timing accuracy, making them unsuitable for architects requiring high simulation speed and accuracy, as they do not provide explicit timing information for individual data words within burst transactions.
Innovation Solution
The implementation of time annotated transaction level modeling, which includes an initiator module, a target module, and a communications channel modeled as executable behavioral models, with timing variable functions to store and derive timing information for each transfer within a burst transaction, enabling accurate cycle timing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If burst transactions are used to increase simulation speed, then productivity is improved, but measurement precision deteriorates due to lack of explicit timing information for each data word
Solution Approach 1:
The patent segments the burst transaction timing information by introducing individual timing variables (t1, t2, t3, etc.) for each data word transfer within the burst. This segmentation allows the simulation model to track timing of individual transfers while still processing the entire burst as a single high-level transaction, thus maintaining both simulation speed and timing accuracy.
Solution Approach 2:
The patent adds a timing dimension to the transaction level modeling by introducing explicit timing variables and timing functions. This transforms the model from a purely functional representation to one that includes temporal information, enabling architects to analyze both functional correctness and timing behavior at the transaction level without switching to lower-level modeling.
2Measurement precision
If explicit timing information is added to each transfer in burst transactions, then measurement precision is improved, but device complexity increases
Solution Approach 1:
The patent creates universal timing variable functions (such as get_t1(), get_t2(), etc.) that can be applied to any burst transaction regardless of the specific IP blocks or protocol involved. These functions provide a standardized interface for accessing timing information, reducing the complexity of individual transaction models while maintaining high timing accuracy across diverse scenarios.
Solution Approach 2:
The patent uses a template-based approach where timing information for burst transactions is generated through systematic copying and instantiation of timing variables. Instead of manually defining timing for each individual transfer, the model copies timing patterns from the burst transaction structure, significantly reducing modeling complexity while preserving timing accuracy.
3Ease of operation
If transaction level 2 modeling is used without timing annotations, then ease of operation is improved, but loss of information occurs regarding individual transfer timing
Solution Approach 1:
The patent introduces timing variable functions as intermediaries between the high-level burst transaction model and the detailed timing information. These functions act as a mediator that allows the simple burst transaction interface to be maintained while secretly managing complex timing data, thus preserving both ease of operation and timing information completeness.
Data Source
AI summary
A method and apparatus for transaction level modeling where communications occur between modules in the system that contain time annotations is described. An apparatus includes an initiator module, a target module, and a communications channel with each being modeled as an executable behavioral model. The communications channel transports burst information between the initiator module and the target module. The communications channel has a timing variable function to store timing variables and derive timing information associated with each individual transfer within a burst transaction during a simulation.


