What Distinguishes an MCU from a DSP? ST’s Microcontroller Straddles the Line

March 05, 2020 by Robert Keim

What does a chip have to do these days to qualify for the “digital signal processor” category?

This article examines the STM32H7 series and discusses the issue of digital signal processing (DSP) functionality in the context of embedded design.


Perhaps the most interesting thing about ST’s STM32H7 series is that these devices are described by the manufacturer as “microcontrollers.” When I consider the following list of features, I can’t help but wonder:

What does a chip have to do these days to qualify for the “digital signal processor” category?

  • Dual-core architecture that supports clock frequencies as high as 480 MHz. The new devices in this family—i.e., the STM32H7A3, STM32H7B3, and STM32H7B0—have one core whose frequency range extends “only” to 280 MHz (see the product table included later in the article for more information).
  • In dual-core devices, both processors have a floating-point unit (FPU), and one of these FPUs can perform double-precision operations.
  • A “full set” of digital-signal-processing instructions are supported.
  • Two memory protection units that provide security by implementing data-access rules.
  • A hardware-based adaptive real-time accelerator that uses cache to enhance processor performance.
  • Multiple direct-memory-access (DMA) controllers.
  • A graphical accelerator that runs independently of the CPU and offers hardware support for image-related functionality such as rectangle copy, rectangle fill, and pixel format conversion.
  • A digital-camera interface with support for raw or compressed data and automatic image cropping.
  • A JPEG codec module that performs hardware-based JPEG compression and decompression.
  • A digital-filter module intended to work in conjunction with a delta-sigma modulator.
  • Random-number generation.


Block diagram of STM32H745xI/G

Block diagram of STM32H745xI/G. Image used courtesy of STMicroelectronics


A New Perspective on Microcontrollers?

As far as I know, we don’t have an authoritative definition that specifies the sine quibus non of digital signal processors—in other words, no one can really say, “This device isn’t a digital signal processor because it doesn’t have such-and-such a feature.”

But even if we did have an authoritative definition, it’s hard to imagine that the STM32H7 series wouldn’t make the grade. That list of features is seriously impressive.


STM32H7 family

This table gives you an overview of the device options that are available in the STM32H7 family. Image used courtesy of STMicroelectronics


I don’t pretend to know why ST chooses to apply the “microcontroller” label to components such as those in the STM32H7 series, but one feasible explanation is simply that they do not conceptualize microcontrollers within a “deficiency framework.”

What I mean is this: I tend to think of a microcontroller as a device that cannot be a digital signal processor because it lacks something. Maybe the CPU is too slow, or there’s no direct memory access, or there is very little hardware support for mathematical operations.

But we could also think about microcontrollers in terms of what they have rather than what they lack. In this view, applying the category “microcontroller” to devices such as the STM32H7 series is not intended to downplay their signal-processing prowess but rather to emphasize the presence of features that transcend the number-crunching realm associated with “mere” digital signal processors.

In the case of these new MCUs from ST, we find these distinctive features in the robust collection of on-chip analog functionality: three ADCs with resolution up to 16 bits, two DACs, two analog comparators, and two op-amps. In my experience, DACs are still relatively rare MCU peripherals, so let’s take a closer look at these modules.


D/A Conversion in the STM32H7 Series

These new microcontrollers include two separate and functionally equivalent 12-bit DACs. They can be configured for synchronized updating of the analog output value, and both can receive conversion data via the DMA controller.


Diagram of 12-bit buffered/non-buffered DAC

Diagram of 12-bit buffered/non-buffered DAC. Image used courtesy of STMicroelectronics


VREF can be supplied externally or derived from an internal reference generator. The differential nonlinearity and integral nonlinearity specs are –2/+2 (min/max) LSb and –4/+4 (min/max) LSb, respectively. The typical full-scale settling time to ±0.5 LSb is 2.05 µs, and the datasheet indicates that the maximum update frequency is 1 MHz.

As you can see in the diagram, the DAC includes an optional buffer amplifier. This handy feature allows you to apply a passive low-pass filter to the output signal without worrying about the output impedance of the DAC circuitry.

Feature image used courtesy of STMicroelectronics


Do you have any thoughts on how we should apply the “microcontroller” and “digital signal processor” labels to devices such as those in the STM32H7 series? Let us know in the comments section below.