A brief list of embedded controllers over the past half-decade.
Embedded controller types and their suitability for different design goals.
Why concurrency is critical to embedded system design performance.
Embedded controller types support a dizzying array of electronic automations.
It’s staggeringly difficult to imagine how much electronic control systems have impacted everyday products. From the most demanding and critical applications in the medical field and transportation to household appliances and toys, embedded systems are ubiquitous for their automated performance. A microcontroller often governs this performance, but other embedded controller types can fill more specific needs within the design space.
Notable Embedded Controller Types
The 6800 was popular in technical settings, business, and entertainment devices in the 1970s and beyond.
Arguably the most influential microcontroller of all time. It spurred the development of the microcomputer industry before the Z80 extended its software compatibility. It also heavily influenced the design of the x86 architecture.
While the original line is no longer in production, derivative lines see use in signal processing, floating point calculations, and FPGAs. It first utilized NMOS technology before transitioning to CMOS for better battery life.
A microcontroller family is notable for introducing flash memory to embedded systems. They find use in Arduinos and other hardware development boards.
ARM (instruction set)
A highly versatile instruction set prized for its low power consumption/heat generation in portable devices and its performance in desktops and servers.
The Characteristics and Suitability of Embedded Controllers
Embedded controller types will differ depending on circuit function. The most common is the microcontroller, effectively the general computing solution to the more specialized microprocessor. At its most abstract level, a microcontroller is essentially an all-in-one computer on chip, handling the essential features of instruction execution, memory storage, and I/O functionality. The advantage of microcontrollers is their pared-down performance: cutting-edge CPUs dwarf the computing ability of microcontrollers, but the latter is a jack-of-all-trades with power consumption, cost, and implementation that make it highly suitable for general applications. Even minuscule 8-bit architectures approaching a half-century of usage continue to see the relevance in today’s devices, where the need for cost-effective embedded controllers is a primary motivation.
Programmable Logic Controllers
Specialty microcontrollers, such as programmable logic controllers (PLCs), operate in rugged environments and require additional packaging considerations to ensure reliability. PLCs mostly replace older electromechanical switch-based relays acting as control circuits. Formerly, these circuits used large coils that would close or open with an applied voltage: a start button would close the contacts and have the circuit run continuously, whereas a stop button would interrupt circuit function until once more resumed. Nowadays, devices use semiconductor properties to implement solid-state relays at the wafer level, vastly improving cost and reliability by eliminating moving parts.
Digital Signal Processors
Digital signal processors, or DSPs, are likely more active than microcontrollers due to their constant sampling of the environment for audiovisual or other sensor data. The data's sampling rate and density will impact battery depletion; for example, videos will sample at a far reduced rate than audio or RF, but filtering images will require far greater resources. DSPs are far more computationally intensive than microcontrollers; IoT applications allow for some server-side offloading of operations to reduce energy demands. However, this model may come with additional network protocol constraints. Continued IoT emphasis across various industries is increasing the role and preponderance of DSPs in electronics, including state-of-the-art systems like computer-vision driver assistance.
Graphic Processing Units
Graphic processing units (GPUs) represent a growing niche in embedded systems. Once relegated to graphics rendering for computers and video game systems, GPUs are seeing more general, expanded functionality due to increasingly large data needs. This extra computational horsepower comes with a proportional increase in energy usage, which may preclude GPUs from lightweight devices where energy efficiency is a major design factor.
The Necessity of Concurrency for Embedded Controller Types
Concurrency is an essential design attribute of embedded controllers
Embedded controllers also differ according to their architecture. However, a good grasp of the different types requires a digression into the execution of operations. Complicated programs encompass many instructions; embedded controllers must efficiently allocate tasks to reduce program runtime and increase system responsiveness. There are divergent methods of execution:
- Imperativeness occurs when a set of sequential instructions completes programs.
- Concurrency occurs when programs simultaneously execute in concept.
Anyone with a minimal coding background has some experience with imperativeness, as it commonly reflects programs as written – think declaring a variable, storing a value into it, and then using it as an argument in a function call. The program cannot execute as intended if this sequence doesn’t occur. However, not every line in a program necessarily proceeds sequentially: consider two separate, back-to-back assignment statements that use the same variable as part of their calculations. These statements can occur in either order because the two statements lack dependency between them.
Embedded controllers can detect dependencies in code and improve processing speed and synchronization among the system by running sections of a program in parallel or out-of-order and still obtain the desired program behavior. Synchronization is fundamental for embedded system performance: embedded systems must balance multiple real-world inputs and outputs within an expected time frame. That is to say, there is an upper and lower timing bound where execution needs to occur, and longer or slower execution times are equally detrimental; an increase in performance speed needs contextualization.
Concurrency is a benchmark of Harvard architecture and its modified forms. Traditional Harvard architecture contains strict boundaries between code and data that can frustrate programming but come with significant advantages in terms of power and cost. Generally, this model is too restrictive, but it is suitable for some embedded controller types:
Microcontrollers - Many microcontrollers are already constrained by flash and SRAM size, making the storage pathway penalty less severe. In return, microcontrollers greatly benefit from increased speed and data access. Bit widths for instructions and data can be independent, while instruction prefetch allows for parallelization.
DSPs - Processing from data-rich sources calls for incredibly refined algorithms. Speed and repeatability of execution take precedence over unified address space.
Immerse Yourself in Embedded System Design With Cadence Solutions
Embedded controller types apply to many circuit operations, depending on the needs of the software/hardware interface. Their roles are typically less computationally demanding than those performed by processors, making them highly suitable for devices where power consumption is a critical operating characteristic.
Embedded systems also rely heavily on concurrency in design, enabling parallel execution, which improves execution time and synchronizes the various controller communications. Embedded system design requires a tight timing balance for performance and stability.
Cadence’s PCB Design and Analysis Software suite gives product development teams comprehensive modeling tools to ensure simultaneity. Designers can transfer simulation data to OrCAD PCB Designer for a seamless ECAD environment that accelerates production schedules. Leading electronics providers rely on Cadence products to optimize power, space, and energy needs for a wide variety of market applications. To learn more about our innovative solutions, talk to our team of experts or subscribe to our YouTube channel.