Processors The importance of DSPs and Floating point in Microcontrollers

Autor / Redakteur: Ian Anderton * / Sebastian Gerstl

MCUs have been in development for a long time. Since floating point unit and DSP were introduced in MCUs, there have been some critical changes. Floating point unit and DSP become increasincly important.

Anbieter zum Thema

Transistion into the connected market: A broader range of market applications, including IoT, industrial and connected systems, will require a high degree of signal processing that will not be achievable by systems based on a single CPU.
Transistion into the connected market: A broader range of market applications, including IoT, industrial and connected systems, will require a high degree of signal processing that will not be achievable by systems based on a single CPU.
(Credit: Imagination Technologies)

The transition from 8-bit to 32-bit has increased the use of MCUs in a broader range of market applications, including IoT, industrial and connected systems. These applications require a high degree of signal processing that is not achievable by CPU-only systems that have constrained power, cost and a high level of performance requirements. Dedicated DSP and Floating point processing units (FPU) within the MCU SoCs (System on a Chip) address these issues.

DSPs implement a range of mathematical operations using multiply/accumulate (MAC) instructions, saturation, rounding and bit manipulation – typical of functions required for effective filter development such as Fast Fourier Transform (FFT) and Finite Impulse Response (FIR). DSPs also support and work on 8-, 16- and 32-bit integer and fractional data lengths for use in a broad range of applications. Performance is further enhanced with single-cycle MAC instructions, SIMD, specialized bit manipulations and, in the case of Imagination’s MIPS-based DSPs, the choice of multiple accumulators or registers to store the results of the DSP operations.

FPUs on the other hand, execute dedicated trigonometric calculations used extensively in real-time applications such as motor control, power management, and communications data management. Double precision FPUs provide a greater degree of control and system management, which is increasingly required in MCU applications. In Imagination’s MIPS architecture the FPU unit has its own dedicated pipeline, which improves performance and removes the potential of system stalls. The inclusion of a dedicated pipeline also enables multiple floating point operations to be executed in shorter time as the latency and repeat rates for the floating point instructions are reduced.

Let’s consider a typical example application where the DSP and FPU play a key role: Sensor Fusion. Sensor Fusion refers to the collection of multiple sensors in a single system. It requires a high level of signal processing to separate the signal from the noisy environment. Sensor Fusion provides real-time calibration and tuning control which, in a time-limited application, can only be achieved effectively and with a high degree of precision by using DSP and FPU co-processing capabilities. Also, to these add the challenge of numerous sensors like accelerometers, gyroscopes, pressure/temperature/touch sensors and others where each has its own control/management algorithm that mandates the use of DSP/FPU to realize an effective system.

Different approaches in MCU architectures

Both ARM and TI have IP or product lines for floating point unit and DSP (like ARM’s Cortex-R and Cortex-M7, and TI’s C200) and floating-point real-time accelerators (CLAs). Imagination’s MIPS-based DSP and FPU solutions are an extension to the processing unit that is present in the core. They have their own dedicated execution pipelines that operate in parallel to the main CPU. This translates to improved performance with minimal area and power overhead. The DSP and FPU execute instructions that are coded for specific and dedicated signal processing instructions like MACs for example.

Block Diagram: Many processor providers, like the ARM cwith its Cortex M7, include DSPs and FPUs as IPs into their modern product lines.
Block Diagram: Many processor providers, like the ARM cwith its Cortex M7, include DSPs and FPUs as IPs into their modern product lines.
(Credit: ARM)

Hardware is also included in the MIPS processor core that accelerates the execution of these signal processing instructions. MIPS DSP includes SIMD support. MIPS FPU executes both single and double precision floating point operations to provide a greater level of performance and accuracy compared to competitive offerings in a similar class of processor.

With the increasingly powerful MCU performance plus more and more users using the technology, the development tools are also diverse. So, hardware and software toolchains, including compilers, simulators, debuggers and performance analyzers, need to offer support for DSP and FPU as standard.

A diverse market drives technical progress

Companies like ARM and Imagination (MIPS) provide the MCU architectures that are interoperable, open to lots of devices, and easy to be integrated into multiple systems. On the other hand, some companies develop their own MCU architectures, like ColdFire from Freescale, SuperH from Renesas or Blackfin from DI, AVR from Atmel.

This may seem like the market is very diveded or at the least, very limited or closed. But it is neither of those things.

The MCU market is forecast to reach over 30 Billion units by 2020, spanning a wide range of applications and MCU feature requirements.There are several providers of MCU IP and open source options – and this is a good thing for the market as more choices and competition fosters greater technical progress.

* Ian Anderton is Senior Manager of Business Development for MIPS at Imagination Technologies.

(ID:44326060)