Embedded devices have become an ever present part of our everyday lives. As the significance of the software part of embedded devices continues to steadily grow, its size and complexity keeps increasing. This trend, along with the fact that applications are becoming more and more connected via various protocols, dramatically increases the complexity of the whole system.

In this context, traditional system integration and testing methods based on hardware prototypes are becoming inadequate. It has been estimated that for distributed systems having soft real-time requirements, 50% of the software development time was spent on verifying the functionality. For systems having hard real-time requirements, testing and verification tasks could take up to 70% of the development time. The traditional development cycle, where module testing is based on Instruction Set Simulators (ISS) and integration testing is performed with hardware prototypes, has several drawbacks. Such an environment is inflexible and hard to deploy across an organization. Moreover, it usually requires hardware updates and reconfiguration from one project to another, which reduces cost effectiveness of the approach. But the main drawback lies in the process itself, where code is developed in the workstation environment and later tested and integrated in the target environment. The first time application is tested in full system context where it can interact with the peer devices and humans occur very late in the project. This contradiction is the source of all the major bottlenecks and sets a clear need for new development and verification methods. In this paper, we describe the Nucleus SIMdx prototyping environment that addresses these development problems.

Note: By clicking on the above link, this paper will be emailed to your TechOnLine log-in address by Mentor Graphics.