1.1. About the tutorial and example SOPC system

The example System-on-Chip (SoC) design used in this tutorial is built completely using Altera's System On a Programmable Chip (SOPC) Builder software, located in Altera's Quartus II v8.0 toolset. While the design is simple, this tutorial demonstrates how to build a complete SoC for an Altera FPGA using the Cortex-M1 processor and available Altera SOPC peripheral and bus components.

The processor is intended for deeply embedded applications that require a small processor integrated into an FPGA. This tutorial is consistent with typical embedded FPGA processor designs that use a Cortex-M1 processor.

The example SOPC system contains many of the components used in popular microcontrollers. The processor and its subsystem contain the components, buses, and memory map required to run deeply embedded software kernels or Real Time Operating Systems (RTOS) such as RTX from Keil.

This system also contains interrupt (pre-emption) capability by utilizing the processor’s internal Nested Vectored Interrupt Controller (NVIC) as described in the Cortex-M1 FPGA Development Kit Altera Cyclone III Edition Cortex-M1 User Guide.

RTOS support is available by utilizing the NVIC in conjunction with the processor’s internal SYSTICK timer.

The system is built around Altera's System Interconnect Fabric bus structure. For more information about the System Interconnect Fabric, see the Altera website at:



  • The example subsystem is provided for your internal use in accordance with the terms of the accompanying ARM end user license agreement for the ARM Cortex-M1 FPGA Development Kit, including the exclusions and limits of liability described therein. It is your sole responsibility to satisfy yourself of its suitability for use in any product or design, and to complete, validate, and test such design for your intended target application.

  • If you are using the evaluation version of the ARM Cortex-M1 FPGA Development kit, you are not licensed to use the example subsystem or ARM Cortex-M1 processor to create files for a released product. You must purchase a separate license if you want to use the ARM Cortex-M1 processor or design files in the production of any commercial products.

Copyright © 2008 ARM Limited. All rights reserved.ARM DUI 0430A