TY - GEN
T1 - Simulation-based equivalence checking between SystemC models at different levels of abstraction
AU - Große, Daniel
AU - Groß, Markus
AU - Kühne, Ulrich
AU - Drechsler, Rolf
PY - 2011/6/3
Y1 - 2011/6/3
N2 - Today for System-on-Chips (SoCs) companies Electronic System Level(ESL) design is the established approach. Abstraction and standardized communication interfaces based on SystemC Transaction Level Modeling (TLM) have become the core component for ESL design. The abstract models in ESL flows are stepwise refined down to hardware. In this context verification is the major bottleneck: After each refinement step the resulting model is simulated again with the same testbench. The simulation results have to be compared to the previous results to check the functional equivalence of both models. For models at lower levels of abstraction strong approaches exist to formally prove equivalence. However, this is not possible here due to the TLM abstraction. Hence, in practice equivalence checking in ESL flows is based on simulation. Since implementing the necessary verification environment requires a huge effort, we propose an equivalence checking framework in this paper. Our framework allows to easily compare variable accesses in different SystemC models. Therefore, the two models are co-simulated using a client-server architecture. In combination with multi-threading our approach is very efficient as shown by the experiments. In addition, the time required for debugging is reduced by the framework since the respective source code references where the variable accesses did not match are presented to the user.
AB - Today for System-on-Chips (SoCs) companies Electronic System Level(ESL) design is the established approach. Abstraction and standardized communication interfaces based on SystemC Transaction Level Modeling (TLM) have become the core component for ESL design. The abstract models in ESL flows are stepwise refined down to hardware. In this context verification is the major bottleneck: After each refinement step the resulting model is simulated again with the same testbench. The simulation results have to be compared to the previous results to check the functional equivalence of both models. For models at lower levels of abstraction strong approaches exist to formally prove equivalence. However, this is not possible here due to the TLM abstraction. Hence, in practice equivalence checking in ESL flows is based on simulation. Since implementing the necessary verification environment requires a huge effort, we propose an equivalence checking framework in this paper. Our framework allows to easily compare variable accesses in different SystemC models. Therefore, the two models are co-simulated using a client-server architecture. In combination with multi-threading our approach is very efficient as shown by the experiments. In addition, the time required for debugging is reduced by the framework since the respective source code references where the variable accesses did not match are presented to the user.
KW - Debugging
KW - Equivalence checking
KW - SystemC
KW - Transaction level modeling
U2 - 10.1145/1973009.1973054
DO - 10.1145/1973009.1973054
M3 - Conference contribution
AN - SCOPUS:79957717714
SN - 9781450306676
T3 - Proceedings of the ACM Great Lakes Symposium on VLSI, GLSVLSI
SP - 223
EP - 228
BT - GLSVLSI'11 - Proceedings of the 2011 Great Lakes Symposium on VLSI
T2 - 21st Great Lakes Symposium on VLSI, GLSVLSI 2011
Y2 - 2 May 2011 through 4 May 2011
ER -