ARM Processors

ARM Processors for Microsemi SoC FPGAs

Microsemi's ARM® Cortex™-M3 processor is included as a hard resource in Microsemi's SmartFusion2 and SmartFusion SoC FPGA families. The ARM Cortex-M3 32-bit processor has been specifically developed to provide a high-performance, low-cost platform for a broad range of applications, including microcontrollers, automotive body systems, industrial control systems and wireless networking.

The SmartFusion2 implementation adds the Embedded Trace Macrocell (ETM) support and an 8KB Instruction Cache and operates at 166MHz, compared to 100 MHz in the SmartFusion devices.

In addition to SmartDesign and SoftConsole from Microsemi and RealView ® tools from ARM, third-party vendors offer a vast range of supporting tools in the well-established ARM ecosystem, from compilers and debuggers to real-time operating system (RTOS) solutions.

The ARM Cortex-M3 processor is the industry-leading 32-bit processor for highly deterministic real-time applications, specifically developed for high-performance low-cost platforms. The processor is highly configurable enabling a wide range of implementations.

Manufacturers of the Cortex-M3 processor integrated circuits are permitted some latitude in configuring a particular implementation of the Cortex-M3 processor delivered by ARM. Following are the implementation specifics in the SmartFusion2 device:

Interrupt priority levels: 16 priority levels (4 MSB bits in BASEPRI register) are implemented so BASEPRI register [7-4] are used for the priority setting and [3-0] are read as zeros.

SoC FPGAs Compared

The table below shows a comparison of the features of the SmartFusion and SmartFusion2 SoC FPGAs

Feature

SmartFusion

SmartFusion2

FPGA Fabric

Logic Elements

700 - 6K

5K - 150K, 4 input LUTs with DFF

Total RAM

36 - 108 Kbits

191 - 4488 Kbits

4608 bit RAM Blocks

8 - 24

-

1K bit Micro RAMs

-

11 - 240

18K bit Large RAMs

-

10 - 236

18x18 Multiply Accumulate Blocks

-

11 - 240

Microcontroller Subsystem (MSS)

Cortex-M3 processor with MPU

100 MHz

166 MHz

Embedded Trace Macrocell

-

Yes

8KB SEU Tolerant Instruction Cache

-

Yes

Flash (eNVM)

512 Kbytes

512 Kbytes

SRAM (eSRAM)

64 Kbytes

-

SECDED eSRAM

-

80 Kbytes

Fabric Interface Controllers

1

2

APB Fabric Interface Controller

-

1

Ethernet MAC

10/100

10/100/1000

SEU Tolerant Ethernet Buffers

-

Yes

HS USB OTG

-

1

SEU Tolerant USB Buffers

-

Yes

CAN 2.0A and B

-

1

SEU Tolerant CAN Buffers

-

Yes

I2C

2

2

SPI

2

2

SEU Tolerant SPI Buffers

-

Yes

16550 UART

2

-

Multi-Mode UART

-

2

SEU Tolerant MMUART Buffers

-

2

32-Bit Timer

2

2

Async Memory Controller

Yes

Yes

SDRAM Controller

-

Yes

LPDDR SECDED Controller

-

Yes

DDR2 SECDED Controller

-

Yes

DDR3 SECDED Controller

-

Yes

PDMA

Yes

Yes

High Performance DMA

-

Yes

PLL's

2

8

Main Oscillator (32 KHz to 20 MHz)

1

1

RTC Crystal Oscillator

Yes

Yes

Main Crystal Oscillator

Yes

Yes

RC Oscillator 1

100 MHz

50 MHz

RC Oscillator 2

-

1 MHz

High Speed Serial Interfaces

SERDES 5 Gbps Lanes

-

16

PCIe Gen 2 5 Gbps Endpoints

-

4

User I/O

Maximum

204

574

Programmable Analog

ADCs(8-/10-/12-bit SAR)

3

-

DACs (8-/16-/24-bit sigma-delta)

3

-

Signal Conditioning Blocks (SCBs)

5

-

Comparators*

10

-

Current Monitors*

5

-

Temperature Monitors*

5

-

Bipolar High Voltage Monitors*

10

-

Additional Soft IP

In addition to the on-chip AHB bus and communications infrastructure supporting the Cortex-M3, Microsemi offers a broad portfolio of IP cores for use in the FPGA fabric to implement custom design solutions. A wide range of IP cores are available FREE in the Libero SoC and SmartDesign IP design tool.

To see a complete list of IP cores available in Libero, visit the IP Cores web page.

Ecosystem

Microsemi and partners provide a complete ARM Cortex-M3 ecosystem for the SmartFusion2 and SmartFusion SoC FPGAs

IAR Embedded Workbenchis an integrated development environment for building and debugging embedded ARM applications using assembler, C and C++. It includes a project manager, editor, build and debugger tools with support for RTOS-aware debugging on hardware or in a simulator.

Operating Systems / RTOS

FreeRTOS™ is a portable, open source, royalty free, mini real-time kernel (a free-to-download and free-to-deploy RTOS that can be used in commercial applications without any requirement to expose your proprietary source code). FreeRTOS is scalable and designed specifically for small embedded systems. This FreeRTOS version ported by Microsemi is 6.0.1. For more information, visit the FreeRTOS website: www.freertos.org

EmCraft Systems provides porting of the open-source U-boot firmware and uClinux™ kernel to SmartFusion, a Linux®-based cross-development framework, and other complementary components. Combined with the release of its A2F-Linux Evaluation Kit, this provides a low-cost platform for evaluation and development of Linux (uClinux) on the Cortex-M3 CPU core of the Microsemi SmartFusion devices.

Keiloffers the RTX Real-Time Kernel as a royalty-free, deterministic RTOS designed for ARM and Cortex-M devices. It allows you to create programs that simultaneously perform multiple functions and helps to create applications which are better structured and more easily maintained.

Micrium, Inc. supports SmartFusion with the company's flagship µC/OS family recognized for a variety of features and benefits, including unparalleled reliability, performance, dependability, impeccable source code and vast documentation. Micrium supports the following products for SmartFusion devices and continues to work with Microsemi on additional projects.

µC/OS-III™, Micrium's newest RTOS, is designed to save time on your next embedded project and puts greater control of the software in your hands.

RoweBots Research Inc provides an ultra tiny Linux-compatible RTOS called Unison for SmartFusion. Unison consists of a set of modular software components, which, like Linux, are either free or commercially licensed. Unison offers POSIX® and Linux compatibility with hard real-time performance, complete I/O modules and an easily understood environment for device driver programming. Seamless integration with FPGA and analog features are fast and easy.

RL-TCPnet (TCP/IP) - The Keil RL-TCPnet library, supporting full TCP/IP and UDP protocols, is a full networking suite specifically written for small ARM and Cortex-M processor-based microcontrollers. TCPnet is now ported to and supports SmartFusion Cortex-M3. It is highly optimized, has a small code footprint, and gives excellent performance, providing a wide range of application level protocols and examples such as FTP, SNMP, SOAP and AJAX. An HTTP server example of TCPnet working in a SmartFusion design is available.

Flash File System (RL-Flash) allows your embedded applications to create, save, read, and modify files in standard storage devices such as ROM, RAM, or Flash ROM, using a standard serial peripheral interface (SPI). Many ARM-based microcontrollers have a practical requirement for a standard file system. With RL-FlashFS you can implement new features in embedded applications such as data logging, storing program state during standby modes, or storing firmware upgrades.

* The CAN and USB functions within RL-ARM are not supported for SmartFusion.

Micrium in addition to their µC/OS-III® offers the following support for SmartFusion:

µC/TCP-IP™ is a compact, reliable and high-performance stack built from the ground up by Micrium and has the quality, scalability and reliability that translates into a rapid configuration of network options, remarkable ease-of-use and rapid time-to-market.

µC/Probe™ is one of the most useful tools in embedded systems design and puts you in the driver's seat, allowing you to take charge of virtually any variable, memory location, and I/O port in your embedded product, while your system is running.

Our website uses cookies (including profiling cookies of authorised third parties) to give you a better browsing experience, and by continuing to use our site you accept our cookies policy. Find out more on how we use cookies and how you can change your settings by clicking here.