Virtio Virtio HomePage Feedback Form SiteMap
About Us Index News Index Technology Index Support Index Product Index Partners Index
VirtioTechnologyVirtual Prototyping

Virtual Prototyping to Innovate Software on Software

Virtual prototyping technology enables the creation of a software model of a embedded platform that can fully mirror the functionality of an embedded system. These virtual platforms combine high-speed processor instruction-set simulators and high-level, fully functional C/C++ models of the hardware building blocks, to provide a high-level model of the hardware to the software developer.

By integrating a commercial embedded IDE with a virtual platform, the software developer has a complete software environment to develop and debug software functionality and the hardware-software interaction. With an execution speed of over a million instructions per second, the platform is capable of executing a wide range of application code including operating systems such as Windows® CE, Linux and VxWorks®. The virtual platform truly enables software engineers to start their software development as early as possible and to clear problems related to hardware-software integration up-front, long before the hardware is in place and without any expensive instrumentation tools.

Virtual Prototyping Components

A virtual platform builds upon the following components, as depicted in the figure below:

  • Fast processor models: or instruction-set simulators, connected to commercial software debuggers, enable the loading and execution of the real software on the prototype.
  • Hardware/peripheral models: standard processor peripherals, busses and logic accelerators can be captured as high-level C/C++ models, and compiled and executed on top of a system simulator to capture the hardware portion of a design.
  • Co-simulation APIs and backplane: between the processor models and system simulator enables a seamless communication between the hardware and software domain that takes care of the global coordination of the prototype.
  • Test-Bench/human interface models: like the keyboard and LCD of a cellular phone or PDA these models mimic the real appearance of, and interaction with, the system being designed.



Benefits

Virtual prototyping has a number of unique advantages over its physical counterpart. It features unsurpassed flexibility and avoids board or silicon iterations when coping with change or design derivatives. It is cost-effective compared to physical solutions and much easier to distribute and deploy. A major benefit to software developers is that a virtual platform allows unlimited observability and controllability of the target hardware, not limited to the available pins on the prototype. In addition, the virtual platform can be stopped at any time and inspected, as desired. This is especially useful when designing complex software components touching the hardware-software boundary, like device drivers.

Virtual platform can effectively contribute to lowering the risk and decreasing the TTM, through early software development and integration. The major benefits of virtual system prototyping include:

  • Executable system specification: decreases the chance for errors due to ambiguity in documentation or miscommunication between customers and design teams.
  • High impact marketing tool: a virtual platform can communicate effectively what IP or platform a vendor is offering, demonstrate exactly the functionality of what is being offered, and the experience-base being offered.
  • Simplifies extended team collaboration: the virtual platform can assume the role of an effective communication mechanism to reach out to development teams, partners, and existing and potential customers. Not only does the platform allow for all team members to participate in the system validation - designing the right system - but also it builds confidence and lowers the risk of engagement.
  • Concurrent hardware/software design: the resulting platforms are capable of executing application software on top of the virtual hardware at speeds of millions of cycles per second. Hence, they enable early software development, in advance of a first silicon prototype, and concurrent with hardware development.

Virtual platforms changes the way embedded software is developed by providing easy configuration, flexible debug and modification, complete visibility into both the hardware and software functionality, full controllability, early hardware-software integration and electronic distribution.


Home | About | Contact | News | Register | Support | Products | Privacy Policy | Terms | SiteMap

Copyright Virtio ©1999-2006