In this paper, we present a hardware-software cosimulation environment for
heterogeneous systems. To be an efficient and convenient verification envir
onment for the rapid prototyping of heterogeneous systems consisting of har
dware and software components, the environment supports (i) modular cosimul
ation, (ii) cosimulation acceleration, and (iii) integrated user interface
and internal representation. For modular cosimulation, we treat software an
d hardware components as separate processes that communicate with each othe
r only through inter-process communication. We generate interface model aut
omatically and insert between software and hardware components. We can acce
lerate cosimulation through hardware-emulation using FPGAs which also suppo
rts our incremental system prototyping strategy. Finally, to provide an int
egrated user interface and internal representation consistent with Various
prototyping tasks, we modified and extended Ptolemy, a cosimulation and cos
ynthesis environment for heterogeneous systems. The benefits of our cosimul
ation environment are as follows: expandability of the environment, target
architecture and protocol independence, interface transparency, seamless tr
ansition to cosynthesis, cosimulation speedup, and convenient cosimulation.
As experimental examples, we cosimulated and prototyped several heterogene
ous systems successfully, which shows that our environment can be a useful
heterogeneous systems specification/verification environment for fast proto
yping.