Virtual Prototyping is the technology that makes it possible to develop a virtual prototype of a system under design and explore the system design space, including hardware and software. The real application software can be run over the virtual prototype platform and outputs the same results as the real system.
The core of a virtual prototyping platform is a simulation engine that emulates the hardware behaviour by running simulation models. As the goal is to ultimately prove that the system meets the requirements, a virtual prototyping platform has better be associated with formal methods tools to establish such proofs.
In this talk, I will introduce the techniques used in general in virtual prototyping, and in particular in the SimSoC framework that we develop. I will describe the research results we have achieved in the past few years, our connections with formal methods, and the research directions for which we are seeking collaborative research.