Introduction
ARM DDI 0432C
Copyright © 2009 ARM Limited. All rights reserved.
1-7
ID112415
Non-Confidential
The IIM is a confidential book that is only available to licensees.
1.5.2
Design Flow
The processor is delivered as synthesizable RTL. Before it can be used in a product, it
must go through the following processes:
Implementation
The implementer configures and synthesizes the RTL to produce a hard
macrocell. This might include integrating RAMs into the design.
Integration
The integrator connects the configured design into a SoC. This includes
connecting it to a memory system and peripherals.
Programming
This is the last process. The system programmer develops the software
required to configure and initialize the processor, and tests the required
application software.
Each process can be performed by a different party. The implementation and integration
choices affect the behavior and features of the processor.
For MCUs, often a single design team integrates the processor before synthesizing the
complete design. Alternatively, the team can synthesise the processor on its own or
partially integrated, to produce a macrocell that is then integrated, possibly by a separate
team.
The operation of the final device depends on:
Build configuration
The implementer chooses the options that affect how the RTL source files
are pre-processed. These options usually include or exclude logic that
affects one or more of the area, maximum frequency, and function of the
resulting macrocell.
Configuration inputs
The integrator configures some features of the processor by tying inputs
to specific values. These configurations affect the start-up behavior
before any software configuration is made. They can also limit the
options available to the software.
Software configuration
The programmer configures the processor by programming particular
values into registers. This affects the behavior of the processor.