VPMX31 Reference Virtual Prototype

Modeling the Freescale i.MXC31

OverviewThe VPMX31 is a proven example of the capabilities delivered by the Synopsys virtual prototype portfolio of system-level tools, models and services. It has been developed and deployed using the Innovator virtual prototype creation and runtime tool as well as models from the DesignWare System-Level Library. In addition, customer-specific models have been added. With this fast, full-function software simulation capability, software developers were able to start development and integration of their software before the hardware was available.

This virtual prototype is a high performance software simulator of the Freescale i.MX31 and the i.MX31L multimedia applications processor and i.MX31 Application Development System targeted to portable applications that delivers top quality multimedia and graphics, combined with wireless/wireline connectivity and best in class battery life. The i.MX31 and the i.MX31L multimedia applications processor and i.MX31 Application Development System is based on the MXC architecture that includes the ARM11 and power management subsystems. The VPMX31 offers dramatic gains in developer productivity by integrating with the software developer's preferred development environment for application, middleware, operating system and driver development, making it a feasible alternative even after silicon development boards have become available.

The VPMX31 replicates the full functionality of Freescale's i.MX31 multimedia applications processor in a PC-based simulation. Through Synopsys' virtual I/O technology, developers can connect real-world peripherals such as the MMC Card or audio through the host processor and simulate other peripherals on the virtual prototype. The VPMX31 models all the critical components required for mobile phone, portable media player, and PDA applications including:

Debugging multi-core SoCs with virtual prototypes is more efficient than with JTAG and physical hardware because JTAG scan chains only stop one processor at a time. Stopping only one processor at a time makes it nearly impossible for the developer to understand the exact system state with the other processors, which continue running. In the VPMX31, the entire set of on-chip cores, including the ARM and DSP cores, stop when either a software or hardware breakpoint is reached. This allows unmatched debug visibility into the complete system, thereby improving developer productivity.