|
ABSTRACT
Cosimulation strategies allow us to simulate and verify HW/SW embedded systems before the real platform is available. In this field, there is a large variety of approaches that rely on different communication mechanisms to implement an efficient interface between the SW and the HW simulators. However, the literature lacks a comprehensive methodology which addresses the need for integrating and synchronizing heterogeneous simulators, like, for example, the SystemC simulation kernel for HW modules and an instruction set simulator for SW applications, without being intrusive for the HW and SW descriptions involved in the simulation. In this context, this article presents, compares, and integrates in a system-level framework two different co-simulation strategies for modeling, analyzing, and validating the performance of a HW/SW embedded system. Moreover, for both of them, a mechanism is proposed to provide an accurate time synchronization of the HW/SW communication. The first strategy is intended to provide an early cosimulation environment where HW/SW interaction can be validated without involving the operating system. The communication is implemented between a single SW task and a SystemC description of an HW module by exploiting the features of the remote debugging interface of a debugger (the GNU GDB), and by modifying the SystemC simulation kernel. On the other hand, the second strategy is intended to be used in further development steps, when the operating system is introduced to validate the cosimulation between HW modules and multitasking SW applications. In this approach, the communication is implemented via interrupts by using the features offered by the operating system. Experimental results are reported on two different case studies to analyze and compare the effectiveness of both the approaches.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
|
| |
2
|
Felice Balarin , Massimiliano Chiodo , Paolo Giusto , Harry Hsieh , Attila Jurecska , Luciano Lavagno , Claudio Passerone , Alberto Sangiovanni-Vincentelli , Ellen Sentovich , Kei Suzuki , Bassam Tabbara, Hardware-software co-design of embedded systems: the POLIS approach, Kluwer Academic Publishers, Norwell, MA, 1997
|
| |
3
|
Luca Benini , Davide Bertozzi , Davide Bruni , Nicola Drago , Franco Fummi , Massimo Poncino, SystemC Cosimulation and Emulation of Multiprocessor SoC Designs, Computer, v.36 n.4, p.53-59, April 2003
[doi> 10.1109/MC.2003.1193229]
|
| |
4
|
Buck, J., Ha, S., Lee, E., and Messerschmitt, D. 1994. Ptolemy: A framework for simulating and prototyping heterogeneous systems. Int. J. Comput. Simulation 4, 2, 155--182.
|
 |
5
|
P. Coste , F. Hessel , Ph. Le Marrec , Z. Sugar , M. Romdhani , R. Suescun , N. Zergainoh , A. A. Jarraya, Multilanguage design of heterogeneous systems, Proceedings of the seventh international workshop on Hardware/software codesign, p.54-58, March 1999, Rome, Italy
[doi> 10.1145/301177.301206]
|
| |
6
|
|
| |
7
|
Drótos, D. μCSim: Software Simulator for Microcontrollers. http://mazsola.iit.uni-miskolc. hu/˜drdani/embedded/s51/.
|
| |
8
|
eCos. http://sources.redhat.com/ecos/.
|
| |
9
|
|
 |
10
|
A. Ghosh , M. Bershteyn , R. Casley , C. Chien , A. Jain , M. Lipsie , D. Tarrodaychik , O. Yamamo, A hardware-software co-simulator for embedded system design and debugging, Proceedings of the 1995 conference on Asia Pacific design automation (CD-ROM), p.25-es, August 29-September 01, 1995, Makuhari, Massa, Chiba, Japan
[doi> 10.1145/224818.224892]
|
| |
11
|
Gnu project web server. http://www.gnu.org/software/.
|
 |
12
|
Dohyung Kim , Chan-Eun Rhee , Youngmin Yi , Sungchan Kim , Hyunguk Jung , Soonhoi Ha, Virtual synchronization for fast distributed cosimulation of dataflow task graphs, Proceedings of the 15th international symposium on System Synthesis, October 02-04, 2002, Kyoto, Japan
[doi> 10.1145/581199.581238]
|
 |
13
|
Kanishka Lahiri , Anand Raghunathan , Ganesh Lakshminarayana , Sujit Dey, Communication architecture tuners: a methodology for the design of high-performance communication architectures for systems-on-chips, Proceedings of the 37th conference on Design automation, p.513-518, June 05-09, 2000, Los Angeles, California, United States
[doi> 10.1145/337292.337561]
|
| |
14
|
|
| |
15
|
Jie Liu , Marcello Lajolo , Alberto Sangiovanni-Vincentelli, Software timing analysis using HW/SW cosimulation and instruction set simulator, Proceedings of the 6th international workshop on Hardware/software codesign, p.65-69, March 15-18, 1998, Seattle, Washington, United States
|
| |
16
|
Mentor Graphics Inc. http://www.mentor.com/seamless.
|
| |
17
|
Microelectronics, S. LIS3LV02DQ MEMS Inertial sensor. Rev. 1.0.
|
| |
18
|
|
| |
19
|
Muhr, H., Holler, R., and Horauer, M. 2006. A heterogeneous hardware-software cosimulation environment using user mode linux and clock suppression. In Proceedings of the 2nd IEEE/ASME International Conference. 1--6.
|
| |
20
|
Patel, H., Mathaikutty, D., Berner, D., and Shukla, S. 2006. CARH: Service-oriented architecture for validating system-level designs. IEEE Trans. Comput.-Aid. Des. Integr. Circ. Syst. 25, 8, 1458--1474.
|
| |
21
|
Psim User Guide and Reference Manual. http://sources.redhat.com/psim/manual/.
|
 |
22
|
|
| |
23
|
|
| |
24
|
Synopsys Inc. http://www.synopsys.com/products.
|
| |
25
|
Ultimodule. http://www.ultimodule.com.
|
| |
26
|
Valderrama, C., Nacabal, F., Paulin, P., and Jerraya, A. 1998. Automatic VHDL-C interface generation for distributed cosimulation: Application to large design examples. Design Autom. Embed. Syst. 3, 2/3, 199--217.
|
 |
27
|
|
| |
28
|
Sungjoo Yoo , Iuliana Bacivarov , Aimen Bouchhima , Yanick Paviot , Ahmed A. Jerraya, Building Fast and Accurate SW Simulation Models Based on Hardware Abstraction Layer and Simulation Environment Abstraction Layer, Proceedings of the conference on Design, Automation and Test in Europe, p.10550, March 03-07, 2003
|
| |
29
|
Yoo, S. and Choi, K. 1997. Optimistic timed HW-SW cosimulation. In Proceedings of the Asia-Pacific Conference on Hardware Description Language. 39--42.
|
| |
30
|
|
|