Embedded Design Handbook

ID 683689
Date 8/28/2023
Public
Document Table of Contents

3.6.4.6. Varying the Development Flow

The development flow is not strictly linear. The following lost the common variations:

  • Refining the Software and Hardware
  • Iteratively Creating a Nios® II System
  • Verifying the System with Hardware Simulation Tools

Refining the Software and Hardware

After running software on the target board, you might discover that the Nios® II system requires higher performance. In this case, you can:

  • return to software design steps to make improvements to the software algorithm; or
  • return to hardware design steps to add acceleration logic

If the system performs multiple mutually exclusive tasks, you might even decide to use two (or more) Nios® II processors that divide the workload and improve the performance of each individual processor.

Iteratively Creating a Nios® II System

A common technique for building a complex Nios® II system is to start with a simpler Platform Designer system, and iteratively add to it. At each iteration, you can verify that the system performs as expected. You might choose to verify the fundamental components of a system, such as the processor, memory, and communication channels, before adding more complex components. When developing a custom component or a custom instruction, first integrate the custom logic into a minimal system to verify that it works as expected; then integrate the custom logic into a more complex system.

Verifying the System with Hardware Simulation Tools

You can perform hardware simulation of software executing on the Nios® II system, using tools such as the ModelSim® RTL simulator. Hardware simulation is useful to meet certain needs, including the following cases:

  • To verify the cycle-accurate performance of a Nios® II system before target hardware is available.
  • To verify the functionality of a custom component or a Nios® II custom instruction before trying it on hardware.

If you are building a Nios® II system based on the standard components provided with the Nios® II EDS, the easiest way to verify functionality is to download the hardware and software directly to a development board.