Using precision analog MCU Peripherals to create high value, signal-intensive designs
Editor’s Note: In this Product How-to design article, Pedro Pachuca and Tom David of Silicon Laboratories use the company’s SiM3U1xx/SiM3C1xx Precision32 MCUs to demonstrate how techniques such as high-precision PWM, fine PLL adjustment, and high-precision IDACs increase the value of 32-bit mixed-signal MCUs in applications that involve radio and motor control technologies.
General-purpose 32-bit microcontrollers (MCUs) are ubiquitous in the interconnected, sensor-rich embedded world in which we live. The proliferation of embedded intelligence and connectivity in virtually all aspects of our lives has led to a universe of increasingly capable 32-bit MCUs with more precise onboard sensors.
Motor control, radio control, audio sample generation and waveform generation using digital-to-analog converters (DACs) are typical applications that require MCUs with higher precision analog functionality. Because MCUs are not natural companion devices for radios, they often require specialized high-precision analog components or peripherals to be “well-behaved” in the presence of radio signals. End products involving radio or motor control technology generally benefit from the use of MCUs with high-precision peripherals and system IP.
For example, a motor controller with a high-precision pulse-width modulation (PWM) generator is able to control a motor more efficiently, thus saving power and increasing the lifetime of the motor. A radio system with an MCU containing a finely-controllable phase-locked loop (PLL) requires fewer external resources to reduce signal interference, resulting in a better end user experience and higher value. In short, 32-bit MCUs with best-in-class precision-analog peripherals can impart higher value to a wide range of applications.
PWM engine with high-resolution capability and safe-state functionality
A typical MCU almost always contains a PWM signal generator. These signal generators are useful when coupled with external resistor-capacitor (RC) networks for generating audio tones or other sinusoidal waveforms. PWM signals are also used to drive motor control circuits. Thus, placement of the PWM edge can be crucial in generating a smoother sinusoidal waveform with finer frequency and phase control and controlling a motor to a finer degree of efficiency.
A typical motor-control capable PWM engine generates both center- and edge-aligned PWM signals. It also supports a differential mode capability with dead time insertion for applications requiring a “break-before-make” capability. The typical PWM signal generator should have a resolution of at least the highest operating frequency of the device.
For example, in the case of SiM3U1xx/SiM3C1xx Precision32 MCUs from Silicon Labs, the PWM generator runs at a maximum frequency of 50 MHZ, allowing PWM edges to be generated with a maximum resolution of 20 ns. These 32-bit MCUs also implement a mode in which the PWM edge can be placed on both edges of the highest operating frequency clock of the device, resulting in an edge resolution of 10 ns as shown in Figure 1. This degree of resolution is more than sufficient for most non-power-supply-related applications.
Another key capability in a motor control (or other high-speed control) system is the ability to shut off the motor in the face of some catastrophic external or internal event, such as an over-current condition. This “kill” capability should shut off the PWM engine, place the control signals in a known good state and configure the I/O pads to a known good state to prevent damage to external circuitry.
The SiM3U1xx/SiM3C1xx MCUs contain six high-drive pads capable of driving up to 150 mA each or 400 mA total. If all the pads are driven simultaneously and left uncontrolled, external circuitry can be damaged. The high-drive pads can be used in conjunction with the PWM engine to directly drive small motors. In the event that a kill signal is received, the high-drive pads have a "safe-state" function that causes the pads to revert to one of three preprogrammed states: tri-state, pull high, or pull low. These safe-state configuration registers are only reset upon system power-up and otherwise remain undisturbed once written by software and locked. Any other reset does not affect them.
Fine PLL adjustment capability
In a typical MCU/radio integrated device, noise mitigation is a key consideration in using the radio effectively. In these integrated applications, it is common to find the microcontroller shut off altogether when the radio is in receive mode, depending on the use case in transmit mode, to avoid noise pollution from the MCU. If the radio is a frequently used device, the impact on MCU performance can be severe.
One way to mitigate this effect is to change the MCU’s frequency of operation to ensure any noise spurs generated by its clock appear outside of the radio band of interest. This implies having a fine tuning granularity in the MCU’s PLL such that its frequency can be modified to place these noise spurs outside the radio’s band of interest.
The PLL used in Precision32 MCUs provides the capability to move its frequency of operation in approximately 200 kHz steps between 23 and 80 MHz. This fine resolution simplifies integration of the SiM3U1xx/SiM3C1xx MCUs with any radio device without suffering a performance loss due to massively degraded frequency of operation or event cycling.