A Closer Look at MCUs

Posted on September 3, 2014 by Clay Merritt

Introduction

Part one of this blog series will take a closer look at microcontrollers (MCUs) – commonly referred to as a self-contained, system-on-a-chip (SoC). MCUs have internal flash memory and are intended to operate with a minimum amount of external support ICs.  This blog covers many of the features and functions of MCUs. Let’s dive in.

 

Spansion-FM-Micocontroller-family

 

MCU Characteristics – Nonvolatile Memory On-chip to Boot System

MCUs are used in cost, size and power constrained applications. In most cases, “just enough to get one specific job done” is the theme. Many memory size, pin count and peripheral mix options exist so that the most cost effective solution can be achieved. Vendors use value pricing to enable one die to create multiple part numbers.

 

System Integration

MCUs are sometime referred to as a SoC due to the large amount of functionality built in. Reset functionality, low voltage inhibit, clock sources, interrupts and on-chip regulators are all integrated. On top of that, the process technology selected allows for precision analog, RF and non-volatile memory. Battery powered wireless systems and sensor monitoring systems can easily be implemented with one IC and very few passive components.

 

Power Supply and Clock Generation

Single supply rails are common in MCUs and many have been built for direct power from a battery. For silicon geometries below 0.35 microns, an internal regulator is used to create an internal voltage bus for the high speed transistors which are the minimum geometry that the process allows. In some cases, this voltage is routed to a pin so that a stabilization capacitor can be used.

 

Voltage monitors are built into the MCU to prevent the part from trying to execute code before a valid operating voltage is obtained. Likewise the voltage monitor prevents operation when the supply voltage drops below the safe operating level.

 

On chip clock generation is very common with most modern MCUs booting from an internal clock source. Once software is running the clock source can be changed to a crystal and the bus frequency can be adjusted via a PLL or clock dividers. In most cases, very few external components are required for the clock.

 

On-chip Flash

Having built-in flash memory provides many advantages, including the following:

  • Both security from piracy and protection from runaway code are common features.
  • Depending upon the flash technology used, a pseudo cache buffer can be used to read the memory in 64 or 128 bit accesses. This allows the CPU to run at two-to-four times the flash access speed without causing a performance penalty. The flash that Spansion uses has one of the fastest access times in the industry and allows operation up to 72 MHz without a RAM-based buffer.
  • On chip flash can enable EE emulation to store and update non-volatile variables such as state of health, product life cycle, serial numbers and error codes.
  • Fast boot times are possible due to direct execution from the on-chip flash.

 

Spansion MCUs commonly come with a flash to RAM ratio of eight-to-one. The FMx Flash family and RAM options are summarized here:

 

Flash

RAM

Ratio

1 Mbyte

128 Kbyte

8:1

768 Kbyte

96 Kbyte

8:1

512 Kbyte

64 Kbyte

8:1

256 Kbyte

32 Kbyte

8:1

128 Kbyte

16 Kbyte

8:1

64 Kbyte

4 – 8 – 12 – 16  Kbyte

16:1, 8:1, 5.3:1, 4:1

 

Low Power Mode Support

Almost all MCUs come with a variety of low power modes intended to extend battery life. The most common low power modes are WAIT/SLEEP and STOP. In WAIT/SLEEP mode, the CPU is shut down while software selected peripherals continue to run. In STOP mode, the clocks are shut down entirely and only leakage current is evident. More sophisticated MCUs have multiple stop modes to maintain a section of the RAM or register space and allow either internal or external wake up sources. This capability is becoming increasingly important due to the inherent high leakage of deep submicron designs.

 

Interrupt Latency and Deterministic Code Execution

The CPU cores used in MCUs are designed explicitly for real-time systems which require a very low interrupt latency and deterministic code execution. For example, the Cortex-M4 has a worst case interrupt latency of 12 cycles and uses a three stage pipeline.

 

Packaging

There are several different kinds of packages offered and some are for size constrained applications like chip scale package (CSP) and quad flat no-lead (QFN). Simple printed circuit board designs favor leaded assemblies such as DIP and QFP. Some high performance MCUs are offered in BGA packages. In most cases, MCUs do not require heat sinks due to the relative low power dissipation and adequate heat transfer to the board.

 

Simple printed circuit boards can be used with most MCUs having two, four or six layers. Advanced simulation for signal integrity is normally not required if good layout and routing practices are used.

 Use Cases Where MCUs Can Make Use of External Flash Memory

  • Display controllers with need for multiple languages;
  • Bill validators for multiple currencies. Large tables are needed for identifying all features of a bill;
  • Metering data concentrators that must store a large amount of information through power loss events;
  • Voice recorders;
  • Simple voice recognition systems;
  • Wearable smart watch and health monitors; and
  • Sonar systems with maps.

 

Please stay tuned for part two of my blog series where I’ll discuss everything MPU. 

Tags: , ,
Get More from Core & Code Subscribe
image_pdf

Leave a Reply

Your email address will not be published. Required fields are marked *