1. Field of the Invention
This invention relates to a method to synchronize and synthesize bus transaction traces for an un-timed virtual environment, particularly to a synchronized and synthesized method using the hybrid environment of physical environment and simulation environment.
2. Description of the Prior Art
In the prior art, the electronic system level design is a trend for the design of System-On-Chip (SOC). It was started to be used in the high-level abstract design to module intellectual property (IP) the user can process the identification of design through the electronic system level design. The virtual design platform includes the developable intellectual property, and the sub-module intellectual property can be provided to the virtual platform through high-level abstract design of intellectual property.
In the most of prior art, it was focused on the pure virtual environment, such as US Patent No. 2006/0282233 A1. However, there are many drawbacks by only using the virtual environment to carry out the above-mentioned design. Thus, it is necessary to have a novel method for the electronic system level design, in order to obtain more efficient design.
The purpose of the invention is to provide a method to synchronize and synthesize bus transaction traces for an un-timed virtual environment, wherein the emulation traces are used to compensate un-timed simulation traces, so that make it possible to do performance analysis using a hybrid system, and can high-speed running and running correctness in conventional time.
In order to reach the above-mentioned purpose, the invention provides a method to synchronize and synthesize bus transaction traces for an un-timed virtual environment. The steps of the method are the followings: providing a simulation environment and an emulation environment; recording the transaction of intellectual property (IP) through the bus in the simulation environment and the emulation environment, and collecting the plurality of continuously transferred transaction set from one IP to another IP to form a transaction block, and connecting a plurality of transaction blocks recorded from the simulation environment to a simulated transaction block series according to the time sequence, and assigning a corresponding number to the plurality of transaction blocks; labeling a begin time mark and a transfer time mark in the transaction block; initializing a plurality of parameters for the corresponding transaction block; taking one of the transaction block from the simulated transaction block series; judging the type of the transaction block, respectively according to the type of the transaction block, and updating a plurality of parameters of the transaction block according to the transaction of the transaction block; and after respectively assuring that the transaction block is the last transaction block in the simulated transaction block series, outputting these parameter values.
Compared to the prior, the invention does not only operate in the simulation environment. In fact, the invention utilizes the hybrid system of emulation environment and simulation environment to solve the drawback in single environment, so that still can assure high-speed execution and correctness within the conventional time.
Therefore, the advantage and spirit of the invention can be understood further by the following detail description of invention and attached Figures
The foregoing aspects and many of the attendant advantages of this invention will become more readily appreciated as the same becomes better understood by reference to the following detailed description, when taken in conjunction with the accompanying drawings, wherein:
Then, in the Step S2, as shown in
In the Step S3, according to the type of transaction block B, if it is transferred from PP to VP or from VP to VP, then conducting a first process, and if it is transferred from VP to PP, then conducting a second process.
Wherein, in the Step S3_11 of the first process S3_1, transaction T is taken from the transaction block B in accordance with the time sequence, as shown in
When B_bt+VIT+VTT+VCT=<VT,
VCT=VCT+VT−(B_bt+VIT+VTT+VCT);
When B_bt+VIT+VTT+VCT>VT,
VT=VT+VT−(B_bt+VIT+VTT+VCT);
VTT=VTT−B_tt+B_ptt;
VT=VT+B_ptt.
In the Step S4, judge whether transaction block B is the last transaction block in the transaction block series again. If transaction block B is the last transaction block, then output VT and stop the execution, otherwise return to the Step S2.
In addition, in the Step S3, if the type of transaction block B is not transferred from PP to VP or from VP to VP, then conduct the Step S3_21 of the second process S3_2. Firstly, take a block time record B_bt and a transfer time B_tt of transaction block B. Then in the Step S3_22, update VT and VIT as the followings:
When B_bt+VIT+VTT+VCT<VT,
VT=VT+VT−(B_bt+VIT+VTT+VCT);
When B_bt+VIT+VTT+VCT>VT,
VIT=VIT+(B_bt+VIT+VTT+VCT)−VT;
VT=VT+B_tt.
In the Step S4, judge whether transaction block B is the last transaction block in the transaction block series again or not. If transaction block B is the last transaction block, then output VT and stop the execution, otherwise return to the Step S2.
In addition, it is able to refer to
It is understood that various other modifications will be apparent to and can be readily made by those skilled in the art without departing from the scope and spirit of this invention. Accordingly, it is not intended that the scope of the claims appended hereto be limited to the description as set forth herein, but rather that the claims be construed as encompassing all the features of patentable novelty that reside in the present invention, including all features that would be treated as equivalents thereof by those skilled in the art to which this invention pertains.
Number | Date | Country | Kind |
---|---|---|---|
099137569 | Nov 2010 | TW | national |