Programmable Logic Devices for Embedded Computing and IoT

Created: August 30, 2019
Updated: June 25, 2023

II 7 wide

First developed in the 1960s for aerospace and the military, embedded computing systems continue to support new applications through numerous feature enhancements and cost-to-performance improvements of microcontrollers and programmable logic devices. Today, embedded computing systems control everyday devices which we don’t generally think of as “computers”: digital cameras, automobiles, smart watches, home appliances, and even smart garments. These embedded computing systems are commonly found in consumer, industrial, automotive, medical, commercial, and military applications.

Unlike general-purpose computers, embedded control systems are typically designed to perform specific tasks. The embedded computing system designer’s task is to identify the set of components that will implement the system’s functional, performance, usability, and reliability requirements, typically within tight cost and development timeline constraints. Accordingly, the selection of a microcontroller and its characteristics, including data processing capabilities, speed, peripherals, and power consumption, is one of the earliest and most critical aspects of system design.

Part of the designer’s responsibility involves being aware of trends in their particular industry and taking advantage of relevant components and techniques . Let’s look for examples among the top industries for microcontroller applications, the Internet of Things.

What is IoT?

The Internet of Things (IoT) is typically defined as the ”extension of the Internet connectivity to physical objects and devices”. IoT devices can communicate and interact with each other over the Internet or directly via a wireless protocol, and they can be remotely monitored and controlled. IoT devices in the consumer market typically pertain to products that enable smart homes, e.g., home appliances, lighting fixtures, thermostats, home security systems, and cameras. The newest class of products can be controlled from a smartphone or other cloud-connected devices.

IoT and smart home conceptIoT Smart lock controller example. The user’s identity, transmitted to the Cloud via a smartphone, is validated and the command is processed. The smartphone controls a Smart Lock operation (open/close) via Bluetooth.

IoT devices have a number of key components in common. In addition to a microcontroller, embedded memory, and power management, these devices typically include a number of sensors and actuators with signal conditioning components in a single package. The communications circuitry required for the device to transfer data to and from a local network processor and/or the cloud-computing resource is often included in microcontrollers designed for IoT applications.

Design Challenges for Next-generation IoT Devices

IoT devices are becoming ubiquitous in industrial, consumer, medical and agricultural applications. As they become more numerous and feature-rich, the embedded system developer will continue to encounter the following design challenges:

  • Security: This is the biggest concern in adopting IoT technology. In particular, as the use of IoT devices becomes more pervasive, cyber-attacks are likely to become an increasingly common threat.

  • Battery life and Uptime: A significant portion of IoT devices are battery operated. As these devices become more feature-rich their power demand increases, requiring bigger batteries or better power management schemes.

  • De-centralization: Traditional cloud architectures provide centralized processing for applications in cloud-based data centers. The distance between the data center and the IoT device can increase latency which proves too slow for real-time workflows. In contrast, edge computing enables IoT devices to make intelligent decisions and respond in real-time to external stimuli. This also offers user data sovereignty advantages, as personal data is pre-analyzed and provided to service providers with a higher level of interpretation.

Microcontrollers for Embedded Computing with IoT Devices

IoT devices are meant to be inexpensive, therefore the microcontroller needs to be chosen so that its capabilities are not underutilized by the application. The microcontroller specifications that determine the best part for your application are:

  • Bit depth: The register and data path width impacts the speed and accuracy with which microcontrollers can perform non-trivial computations.

  • Memory: The amount of RAM and Flash in a microcontroller determines the code size and complexity the component can support at full speed. Large memories have larger die area and component cost.

  • GPIO: These are the microcontroller pins used to connect to sensors and actuators in the system. These often share their functionality with other microcontroller peripherals, such as serial communication, A/D, and D/A converters.

  • Power consumption: Power consumption is critically important for battery-operated devices and it typically increases with microcontroller speed and memory size.

Cypress Semiconductor, CY8C6246BZI-D04

The CY8C6246BZI-D04 programmable system-on-chip (PSoC) 6 MCU architecture is purpose-built for the IoT and is targeted towards enhanced security. Filling the gap between expensive, power-hungry applications processors and low-performance MCUs. The ultra-low power PSoC 6 MCU architecture offers the processing performance required for new IoT products. Security is built-in via an integrated, hardware-based trusted execution environment (TTE) with secure data storage.

The PSoC 6 MCU architecture is built on a cutting-edge, ultra-low-power, 40-nm process technology with a dual Arm® Cortex®-M core architecture. Active power consumption is as low as 22-μA/MHz for the M4 core, and 15-μA/MHz for the M0+ core. Cypress also provides a development kit for programming the CY8C6246BZI-D04:

PSoC Programmer 3.26.0 provides the programming and debugging support for Cypress’s latest PSoC 6 device family via both PSoC Programmer and PSoC Creator. It supports programming and debugging of PSoC 6 devices via SWD and JTAG interfaces.

CY8C6246BZI-D04 core architectureCypress PSoC 6 MCU architecture from Cypress Semiconductor

Texas Instruments, MPS430FR2676 CapTIvate

The MPS430FR2676 is an ultra-low-power MSP430 capacitive touch sensing microcontroller with 64KB FRAM, 8KB SRAM, 43 IO, and a 12-bit ADC. The CapTIvate line of technology is ideal for IoT devices with buttons, slides, wheel, and proximity functions. FRAM, or ferroelectric random access memory, is a memory technology that combines the non-volatility of Flash and the flexibility and low power of SRAM. This proven memory technology is integrated in MSP430 ultra-low-power microcontrollers (MCUs) to bring its unique advantages to real-world applications.

*MSP430 MCUs with CapTIvate technology provide the most integrated and autonomous capacitive-touch solution in the market with high reliability and noise immunity at the lowest power. TI’s capacitive touch technology supports concurrent self-capacitance and mutual-capacitance electrodes on the same design for maximum flexibility. *

MPS430FR2676 functional block diagramFunctional block diagram from Texas Instruments

ST Microelectronics STM32H753BIT6

The STM32H753BIT6 microcontroller is designed for edge computing and is built on top of a 32-BIT ARM Cortex M7 480 MHz core with 2M x 8 Flash memory. This MCU even includes an embedded temperature sensor, making it useful in smart home or industrial applications. The Cortex-M7 core features a floating-point unit (FPU) that supports IEEE 754 compliant double-precision and single-precision data processing instructions and data types. These devices support a full set of DSP instructions and includes a memory protection unit (MPU) to improve security. This microcontroller is also ideal for IoT devices which are designed to run machine learning algorithms for analyzing data:

The STM32Cube.AI is an extension pack of the widely used STM32CubeMX configuration and code generation tool enabling the possibility to map and run pre-trained Artificial Neural Networks (ANN) on STM32 Arm® Cortex®-M-based micro-controllers.

STM32H753BIT6 microcontroller bus diagramSTM32H753xI bus matrix from the datasheet

Embedded computing in IoT and other application areas will continue to advance, and you can maximize the performance of your next system with the right microcontroller or another programmable logic device. Start your search with some of our recommendations!

We hope you found this article useful! If you'd like to have content like this delivered to your inbox, sign up for our monthly newsletter!

Related Resources

Back to Home
Thank you, you are now subscribed to updates.