First of two parts: ARM Fast Models meet Aldec emulation.
It has been proposed for some time that virtual platforms could be linked to emulation hardware in order to co-verify the software and hardware components of an SoC. However, that proposal now has evolved into hybrid emulation, a practical solution to allow pre-silicon verification and validation of today’s complex SoC designs.
First-rate work by the standards body Accellera and the Open SystemC Initiative (OSCI) has given us all Transaction-Level Modeling, or TLM. TLM has enabled us to create a virtual platform of a CPU sub-system, trading off accuracy for speed in order to provide an early target to test software. In the early days, a common obstacle to realizing such virtual platforms was the availability of SystemC models for various components, for example, a new CPU. If none was available then we would lose time generating a trustworthy model, eroding the benefit of early software test.
These days, those gaps have been filled by the availability of SystemC model libraries for commonly-used functions and IP, such as ARM’s Fast Models (more about them later) but that still leaves the other blocks; you know, those new and often crucially differentiating functions unique to our SoC? One proven solution is to implement such functions in an FPGA-based emulation platform, such as Aldec’s HES, and then link that into the virtual model via transaction-level interfaces.