Evaluating Temporal Decoupling in a Virtual Platform

University essay from KTH/Skolan för elektroteknik och datavetenskap (EECS)

Abstract: To capture the market in the field of SoC, the companies have to launch their product ahead of their competitors. Virtual platforms allow the building and testing of software before the hardware is available, so the hardware and software development can take place in parallel and reduce the time to market. A virtual platform is used to perform faster simulation. It simulates the functionality of the hardware rather than modeling timing details. In SystemC based simulators, the loosely timed model allows the SystemC threads to run multiple cycles before they synchronize with other threads in the system by a method called temporal decoupling. The amount of time for which the threads can run ahead is called the global quantum. Increasing the quantum can cause a thread to run for a longer time, thus reducing the context switching overhead. This increases the simulation speed, but at the cost of accuracy. In this work, the effects of temporal decoupling in SystemC based virtual platforms is evaluated by simulating three different variants of virtual platforms, each for two target ASIC platforms. The goal is to check whether varying the temporal decoupling affects the performance. The global quantum value is varied in steps and data is collected for the effective quantum. The quantum utilization is then calculated to see the share of global quantum actually used during a simulation. To see how changing the global quantum affects the performance, the simulation times for various quantum values are also measured and the reduction in context switches is also calculated. Two variants showed reduction in context switches upto 96% when compared to the values at lowest measured quantum and the quantum utilization is found to be higher for these variants compared to the first variant. The simulation time decreased when the global quantum was increased, up to a certain value of the global quantum. Some test cases also failed at higher quantum values. It is observed that the global quantum can be used as an accuracy parameter in a simulator, provided the coupling in the simulator between the SystemC threads is low enough, so that the effective quantum follows an increase in the global quantum. 

  AT THIS PAGE YOU CAN DOWNLOAD THE WHOLE ESSAY. (follow the link to the next page)