Professional Documents
Culture Documents
Learning Objectives:
1. Gain knowledge of different processors commonly used in embedded systems and their
architecture.
2. Differentiate memory technologies and memory types used in embedded systems
development.
3. Understand the different factors to be considered in the selection of memory for
embedded systems development.
Learning Discussion
You have already learned from the previous modules that embedded system is a
combination of software and hardware to perform one specific task and they are typically found
in various applications, such as consumer electronics, automotive systems, industrial machines,
medical devices, and more.
The essential components of an embedded system include central processing unit (CPU)
or microcontroller, memory, input/output (1/0) Interfaces, peripherals, sensors and actuators,
and communication interfaces as shown in Figure 2.1.
FP'GAJASICJDSP/SoC
M lmtpl'W1"SMrl'11Glrolkr
,.....-
, lppom
l n-.-r.)../
CamScanner
■ Central Processing Unit (CPU): The CPU is the core processing unit of the embedded
system, responsible for executing instructions and managing the system's operation. It
can be a microcontroller, microprocessor, or a specialized processing unit designed for
embedded applications.
• Sensors: Sensors are used to collect data from the environment. They can measure
various parameters such as temperature, pressure, light, motion, and more, depending
on the application.
• Actuators: Actuators are components that perform actions based on the embedded
system's instructions. Examples include motors, relays, solenoids, and LEDs.
• Software: This includes the application code and firmware that defines the behavior and
functionality of the embedded system. Software is responsible for controlling the
hardware, processing data, and making decisions based on input from sensors and user
interactions.
CamScanner
The specific components and their configurations In an mb dd d i; item d p d n
system's Intended application, complexity, and resourc con tralnts. De fgn choic • are mad
based on factors like cost, power consumption, procesr;lng speed, and the requirern n 1 oft ,,,
task the embedded system is designed to perform.
In the embedded systems, the central processing unit is the brain or the core of th,.
system responsible for executing instructions and managing the system's operation. 1t can be a
microprocessor, a microcontroller or specialized processor designed for embedded applicatiom.
Types of Processors
The processors employed in the manufacturing of the embedded system can be broadly
classified into three types. They are,
• General Purpose Processor (GPP): GPP is used for proc.essing the signal from
input to output by controlling the operation of the data bus, address bus, and
system bus inside an embedded system. This GPP includes microcontrollers,
microprocessors,.embedded processors, media, and digital signal processors.
Microprocessor
CamScanner
Example: Smart Refrigerator
Smart refrigerators are a great illustration of how microprocessors are used in embedded
systems. These refrigerators incorporate various sensors, connectivity features, and a user
interface to enhance their functionality.
• Control and User Interface: The microprocessor serves as the brain of the smart
refrigerator. It controls the cooling system, manages temperature settings, and
monitors various sensors. It also handles the user interface, including the
touchscreen or digital display on the refrigerator door, where users can set
temperature, access recipes, and manage the refrigerator's features.
• Data Processing: The microprocessor processes the data received from sensors
and makes decisions based on this information. For instance, it can adjust the
cooling system to maintain the desired temperature, send alerts if the door is left
open, or create a shopping list based on the items in the refrigerator.
• Interaction with Other Smart Devices: Smart refrigerators often integrate with
other smart home devices, such as voice assistants or home automation systems.
The microprocessor facilitates communication with these devices.
Mlcrocontroller
CamScanner
time. Unlike the microprocessor, a microcontroller contains the three major components In a
single chip: the processing unit, memory, and the 1/0 ports.
Microcontroller families that have been commonly used i·n embedded systems are·:
• AVR microcontroller family, like the ATmega328P used in the Arduino Uno
• STM32 microcontrollers, based on the ARM Cortex-M cores, are popular for a
wide range of applications, including loT, industrial control, and automotive.
• PIC microcontrollers are widely used in industrial automation, automotive
systems, and consumer electronics.
• Broadcom BCM283X: While not strictly a microcontroller, Raspberry Pi single-
board computers are commonly used for embedded applications that require
more computational power and versatility.
CamScanner
other manufacturing processes. These microcontrollers ensure precision and
efficiency in industrial operations.
• loT Devices: Internet of Things (loT) devices, such-as smart bulbs, smart switches,
and environmental sensors, commonly employ microcontrollers to collect data,
communicate with other devices, and enable remote control via the internet.
The table below summarizes the comparison between the microprocessor and
microcontroller.
MIcroprocessor Microcontroller
Microprocessors are designed for general-M icrocontrol lers are designed for
purpose computing and are typically foundspecific control applications, and their
in personal computers, servers, and otherprimary role is to control the operation
systems where versatility and high of devices and systems. They are
processing power are required. commonly-used in embedded systems.
Microprocessors are typically the main Microcontrollers integrate on-chip
processing unit in a system and require components such as CPU, memory
external components such as memory (RAM and ROM/Flash), timers, GPIO
(RAM and ROM/Flash), input/output (General-Purpose .Input/Output) p.ins,
peripherals, and external control circuits
and communication interfaces on a
to form a complete computer system. single chip. This integration makes them
suitable for embedded applications.
Microprocessors are not optimized for Microcontrollers are well-suited for
real-time operation. They are designed to real-time tasks. They can precisely
handle a variety of tasks and may not be control devices and sensors with
suitable for applications where precise minimal latency.
timing and responsiveness are critical.
Not Built for Real-Time Operation Real-Time Operation
more expensive due to their complexity cost-effective because they include the
and high processing power. essential components needed for
control applications on a single chip.
This makes them suita·bte for cost-
sensitive embedded systems.
CamScanner
Digital Signal Processors (DSPs)
Digital Signal Processors (DSPs) play a critical role in many embedded systems,
particularly in applications that require real-time signal processing and analysis. DSPs are
specialized microprocessors optimized for mathematical and numerical operations, making
them ideal for tasks involving digital signal manipulation.
Here are some examples of how DSPs are used in embedded systems:
• Speech and Voice Recognition: DSPs enable voice recognition and speech
processing in applications like smart speakers, voice assistants, and automated
call center systems. They can filter out noise, extract features, and recognize
spoken words or commands.
■ Image and Video Processing: In embedded systems like cameras and video
surveillance, DSPs handle tasks such as image enhancement, compression,
motion detection, and facial recognition. DSPs can optimize image and video
quality while minimizing processing time.
Programmable Logic Devices (PLDs) are commonly used in embedded systems to provide
hardware customization and accelerate development. PLDs, such as Field-Programmable Gate
Arrays .(FPGAs) and Complex Programmable Logic Devices (CPLDs), offer flexil?ility and versatility,
enabling designers to implement custom logic and interfaces tailored to their specific embedded
system requirements.
PLDs allow engineers to design and implement custom logic circuits and functions that
are not achievable using off-the-shelf components. This is particularly useful when the
embedded system requires specialized, application-specific functions.
CamScanner
PLDs are well-suited for real-time control applicsitions, s1.Jch as motor control and robotics.
They can provide fast response times, making them valuable in systems that require precise timing.
In embedded systems where board space and power consumption are critical, PLDs can
replace multiple discrete components, such as logic gates and counters, with a single
programmable device.
2.2 Memory
Embedded systems use various types of memory to store and manage data, program
code, and configuration settings. The choice of memory type depends on factors such as speed,
cost, power consumption, and the specific requirements of the embedded system.
o Program Memory (Code Memory): Stores the firmware or program code that is
permanently written during manufacturing. It is non-volatile and retains data
even when power is removed.
o Types of ROM include Mask ROM, OTP (One-Time-Programmable), and Flash
ROM.
■ Random-Access Memory (RAM)
o Data Memory (Working Memory): Used for temporary data storage during
program execution.
o RAM is volatile, meaning it loses data when power is removed.
o Types of RAM include SRAM (Static RAM) and DRAM (Dynamic RAM).
CamScanner
•
• Flash Memory
o Data Storage and Code Execution: Used to store program code, application data,
and system updates.
o Flash memory is non-volatile and Is often used for in-field firmware updates.
o Types offlash memory include NOR flash and NAND flash.
• Cache Memory
o Hard Drives (HDD): Used in embedded systems when larger storage capacities
are required, such as in industrial applications and digital signage.
o Solid-State Drives (SSD): Faster and more reliable than HDDs, SSDs are used
when the embedded system needs both storage capacity and speed.
o SD Cards and MicroSD Cards: Used in applications where removable and
expandable storage is needed, such as in digital cameras and loT devices.
Selecting the right memory for an embedded system is a critical decision, as it affects
performance, power consumption, cost, and overall functionality. The memory selection
process should consider the specific requirements and constraints of the embedded system.
Choosing the appropriate memory for your embedded system requires the following:
CamScanner
• Storage needs: How much program code and data storage Is necessary?
• Data processing: Are there specific data processing requirements, such as
real-time processing or complex calculations?
• Power constraints: Are there limitations on power consumption or battery
life?
• Environmental factors: Will the system operate in extreme temperatures
or harsh conditions?
6. Power Management
CamScanner
I
For example, low-power SRAM or power-efficient flash memory can be used to
conserve energy.
• Ensure that the selected memory components are compatible with the rest of
the system and can Interface with the processor, peripheral devices, and
communication interfaces effectively.
References:
CamScanner