Rapid Embedded Prototyping Basics : Background : Embedded Rapid Prototyping Process Model

Embedded Rapid Prototyping Process Model

The Process Model for embedded rapid prototyping is slightly different than the classic Rational Statemate model. The following figure shows the process as a flow chart. Each step in the flowchart is described below.

 

1.
Modeling and Simulation - First you create a functional system model using Rational Statemate. Next, you simulate this model to verify that the functionality is correct. If during simulation any errors are found, you correct these errors in the model and re-simulate. This simulation/model correction loop continues until you are satisfied that the model functions correctly.
2.
3.
At this point in the process, you next move to verify this functionality in an environment that is closer to the actual product environment than that which was used for simulation. This requires the use of a hardware/software prototyping system which can be hooked up to the actual target product’s hardware and act as its control system. See the sidebar discussion in The Embedded Prototyping System regarding embedded prototyping systems.
a.
b.
c.

 

4.

 

If any changes need to be made, the model is updated and resimulated as needed. Code is re-generated, compiled and downloaded to the embedded prototyping system. This updated prototype is then again executed and analyzed. This iterative cycle continues until the user is satisfied with the results of the test runs. At that time the specification (based on the model) will be handed off to software designers for implementation of the production version of software. This code can be tested against the test criteria generated from the model to verify that it meets functional specifications.

The next three main sections will examine each step of this process in detail, as well as related design issues. Simple Embedded Code Example presents a example of a small rapid embedded prototyping project to demonstrate how all of these elements come together.