Arm Community
Arm Community
  • Site
  • User
  • Site
  • Search
  • User
Arm Community blogs
Arm Community blogs
Architectures and Processors blog Prototyping of ARM Cortex-M Processor systems in FPGA
  • Blogs
  • Mentions
  • Sub-Groups
  • Tags
  • Jump...
  • Cancel
More blogs in Arm Community blogs
  • AI blog

  • Announcements

  • Architectures and Processors blog

  • Automotive blog

  • Embedded and Microcontrollers blog

  • Internet of Things (IoT) blog

  • Laptops and Desktops blog

  • Mobile, Graphics, and Gaming blog

  • Operating Systems blog

  • Servers and Cloud Computing blog

  • SoC Design and Simulation blog

  • Tools, Software and IDEs blog

Tell us what you think
Tags
  • Cortex-M0
  • FPGA
  • DesignStart
  • Cortex-M System Design Kit
  • Cortex-M
  • Cortex-M Prototyping System (V2M-MPS2)
Actions
  • RSS
  • More
  • Cancel
Related blog posts
Related forum threads

Prototyping of ARM Cortex-M Processor systems in FPGA

Joseph Yiu
Joseph Yiu
January 22, 2014
1 minute read time.

If you are a microcontroller / SoC / ASIC designer working on Cortex-M processor based systems looking for an FPGA board for prototyping, I have a great news for you: ARM has released a new FPGA board called the Cortex-M Prototyping System.

Key features

  • Altera Cyclone V FPGA with ~150K LE
  • Four 2MB ZBTRAM (32-bit each, with two of them forming a 64-bit memory),
  • 16MB PSRAM (16-bit),
  • Touch screen LCD module,
  • Range of hardware interface : UART, VGA (4 bit per color), SPI, audio (I2S), Ethernet, LEDs, buttons,
  • I/O expansion ports (GPIO),
  • FPGA images for Cortex-M processors,
  • Example project for Cortex-M0 DesignStart (processor IP has to be licensed separately)
  • USB connection for downloading FPGA images and program image to micro SD card on board
  • Range of debug connectors for ARM or 3rd party development tools,
  • Affordable (under US$1000)

With a size of ~150K LE, the Cyclone V FPGA is more than enough for creating most Cortex-M systems (for instance, a full feature Cortex-M4 system with a collection of peripherals can easily fit into a FPGA with 50K LE). The Cyclone V FPGA also support FPGA image encryption, which help protecting your IP.

The design is very easy to use. A micro SD card is mounted on the board to store FPGA images and program images. There is also a text file to describe the configuration (e.g. which FPGA image file to use). When the board is powered up, a microcontroller on board program these images to the FPGA and memory automatically. When the FPGA board is connected to a computer via USB, the board works as a mass storage device and you can download or modify the image files, as well as the configuration. You do not need to install any special device driver or tools to switch the FPGA image.

An example project based on the ARM Cortex-M0 DesignStart is included (the processor IP has to be licensed separately). The example project also contain subset of components in the Cortex-M System Design Kit. Example software projects are also included.  All these allow you to create your Cortex-M processor based system quickly.

The board also comes with a range of debug connectors, so you can connect the processor system you created to the ARM development tool you use easily.

Joseph

Anonymous

Top Comments

  • Alban Rampon
    Alban Rampon over 11 years ago +1
    Thanks to Joseph, the Embedded World presentation on this topic is now available on the community: Embedded World 2014 - ARM® Cortex®-M Processor based System Prototyping on FPGA
  • Alban Rampon
    Alban Rampon over 11 years ago

    Thanks to Joseph, the Embedded World presentation on this topic is now available on the community:

    Embedded World 2014 - ARM® Cortex®-M Processor based System Prototyping on FPGA

    • Cancel
    • Up +1 Down
    • Reply
    • More
    • Cancel
Architectures and Processors blog
  • When a barrier does not block: The pitfalls of partial order

    Wathsala Vithanage
    Wathsala Vithanage
    Acquire fences aren’t always enough. See how LDAPR exposed unsafe interleavings and what we did to patch the problem.
    • September 15, 2025
  • Introducing GICv5: Scalable and secure interrupt management for Arm

    Christoffer Dall
    Christoffer Dall
    Introducing Arm GICv5: a scalable, hypervisor-free interrupt controller for modern multi-core systems with improved virtualization and real-time support.
    • April 28, 2025
  • Getting started with AARCHMRS Features.json using Python

    Joh
    Joh
    A high-level introduction to the Arm Architecture Machine Readable Specification (AARCHMRS) Features.json with some examples to interpret and start to work with the available data using Python.
    • April 8, 2025