Embedded Floating Point Microcontroller

0 downloads 284 Views 451KB Size Report
Full Toolchain at no extra charge. The FPS6 ... Watchdog. X-Bar. Flash. D-Cache. On-Chip. Debug. R0 = 0. RTT. CPU Core.
FPS6 Embedded Floating Point Microcontroller CPU Core R0 = 0 optional

ALU

Co Processor

RTT

Designed for computationally demanding applications, it is well suited to motor control, power management and floating point signal processing. As a member of the Cortus APS family of processors the FPS6 shares the key architectural features of the other processors, with a common toolchain and IDE, bus interface and peripheral set.

Floating Point

Performance: l CoreMark 1:1·93 l DMIPS 1·75 DMIPS/MHz l Linpack 30·45 Mflops @ 333MHz

Implementation Results: Area

Dyn. Cons.

65nm (TSMC) 500 MHz

0·073 mm2

4·37 µW/MHz

90nm (UMC) 425 MHz

0·153 mm2 34·52 µW/MHz

130nm (UMC) 260 MHz

0·258 mm2 48·17 µW/MHz

Fmax

Status

UART

I-Cache D-Cache

RAM

The FPS6 is fully upwards compatible with the other APS processors. Its instruction set includes all APS3 instructions plus additional ones to support floating point operations, Flash increase integer performance and improve code density. The modern RISC architecture and tightly coupled floating point unit ensures that the FPS6 can achieve a high maximum clock frequency. Floating point operations use the main register set to eliminate any overhead and ensure that there are no additional instructions to be executed nor any penalties associated with floating point arithmetic.

R15

Multiply Divide

optional

advanced processing solutions

The FPS6 from Cortus is a high throughput 32 bit microcontroller core featuring a single precision floating point arithmetic unit combined with a high performance integer core.

Interrupt Controller X-Bar Timer

GPIO

DMA On-Chip Debug

Watchdog

Features l IEEE Single Precision Arithmetic l High Throughput RISC Core l Optional Data Cache l Optional Instruction Cache l Optional Co-Processors l 5-7 Stage Pipelined Integer Unit l Integer Multiplication and Division l Full Toolchain at no extra charge The FPS6 has been designed to ensure high throughput, most integer instructions execute in a single cycle due to the 5-7 pipeline with out-of-order completion. The simple, vectored, interrupt structure ensures low latency, real time, response to external events with a minimum of overhead. Up to 251 external user interrupts are supported. The FPS6 is also ideal in multi-processor configurations, dual, quad and more core FPS6 systems can be realised.

www.cortus.com

FPS6 CPU Core

FPS6 CPU Core

R0 = 0

R0 = 0

R15

Multiply Divide

Co Processor

Multiply Divide

RTT Floating Point

RTT Floating Point

Data

Instruction

Status

Data

On-Chip Debug & DMA

R15

Status

Instruction

Co Processor

ALU optional

optional

ALU

X-Bar

Interleaved Program Memory

even

odd

Peripherals

Data Memory

Going Further If the computation performance or throughput of the FPS6 is stretched by your application there are a number of possible solutions. A simple dual core system with interleaved program memory and shared data memory can achieve a CoreMark of 1:3.51. More sophisticated topologies with instruction caches and multiple coherent data caches are also possible to further increase performance.

Equally it is easy to realise heterogeneous multiprocessor systems, for example pairing an FPS6 for sophisticated time critical sensor calculations with an APS3 to handle I/O and a Bluetooth network stack. Your application could have algorithms that can be helped by implementing them partially or totally in hardware. The FPS6 features an easy to use, high performance, co-processor interface. Use one of Cortus’ co-processors, or develop your own and accelerate your application.

Ecosystem The FPS6 benefits from the shared ecosystem surrounding the APS family. It has a complete software development environment including toolchain for C and C++, a complete adapted IDE based on one of the most widely used IDEs - Eclipse. Debugging is fully supported with an integrated instruction set simulator, the Cortus on-chipdebuging hardware and an Ethernet connected JTAG interface - the EtherTag. Ports of various RTOSs are available such as FreeRTOS, Micrium µC/OS, µCLinux... It shares the APS bus with other members of the family and has a wide range of peripherals available, from simple UARTs and Counter/Timers to Ethernet MACs and USB2.0 all designed to work specifically with the APS family, and all supplied with example code and driver code.

Applications The FPS6 is suited to a wide variety of applications, such as:

l Power Control l Energy Management l Advanced Sensing Applications l Smart Grid Applications l Industrial Automation l Heterogeneous Systems

[email protected] +44 1264 369483 www.cortus.com/fps6.html