An embedded system is a computer system designed to perform a specific task or set of tasks,
typically within a larger device or system. Unlike general-purpose computers, embedded
systems are designed for dedicated functions and often operate in real-time with constraints
on resources like power, memory, and processing speed.
Definition: An embedded system is a computer system that is part of a larger device or
machine, designed to perform a specific function. It's not a standalone computer like a PC,
but rather a component that integrates hardware and software to control or monitor other
devices or systems.
Characteristics of Embedded Systems:
Specific Functionality:
Embedded systems are designed for a particular task or set of tasks, and they excel at
performing those functions efficiently.
Real-Time Operation:
Many embedded systems require real-time responses, meaning they must react to inputs and
produce outputs within strict time constraints.
Resource Constraints:
They often operate with limited resources like processing power, memory, and power
consumption, requiring optimized designs.
Reliability:
Embedded systems are often expected to operate reliably in various conditions, sometimes in
harsh environments.
Integration with Hardware:
They are closely integrated with the hardware of the larger device they are embedded in.
Low Power Consumption:
Many embedded systems are designed for low power consumption to extend battery life or
reduce energy costs.
Cost Sensitivity:
Cost is a significant factor in embedded system design, as they are often used in mass-
produced devices.
Specialized Processors:
They commonly utilize microcontrollers or microprocessors tailored to their specific tasks.
Limited User Interface:
Embedded systems often have minimal or no user interface, as their operation is often
automated.
Safety and Security:
In some applications, safety and security are critical concerns, requiring careful design
considerations.
Application-Specific:
They are designed for a particular application or set of applications, unlike general-purpose
computers.
Distributed Systems:
Some embedded systems are part of larger distributed systems, requiring them to interact
with other embedded systems.
Real Time System
Real-time systems are designed to process data and respond to inputs within strict time
constraints, often measured in microseconds. These systems are crucial in applications where
delays can lead to failure or significant consequences, such as in industrial automation,
robotics, and medical devices. A real-time task is any operation within such a system that
must be completed within a specified deadline.
Real-time systems are characterized by their ability to handle time-sensitive tasks predictably
and reliably. They are built to guarantee that certain operations will be completed within
defined time frames, ensuring the system's overall functionality and safety.
Real-time tasks are the individual operations or computations that must adhere to these time
constraints. They can be classified as either hard real-time tasks or soft real-time tasks,
depending on the severity of the consequences for missing a deadline.
Hard real-time tasks require that all deadlines are met, and failure to do so can lead to
catastrophic consequences. Examples include the control systems in an aircraft or a nuclear
power plant.
Soft real-time tasks allow for some flexibility in meeting deadlines, and while timely
completion is preferred, occasional delays may not cause critical system failures. Examples
might include multimedia processing or online gaming.
Key characteristics of real-time systems and tasks:
Timeliness: Tasks must be completed within specific time constraints.
Predictability: The system's behavior should be predictable and consistent under
various conditions.
Reliability: The system should be robust and dependable, even under stress.
Fault Tolerance: The system should be able to handle errors and failures gracefully.
Scheduling: Real-time operating systems (RTOS) employ scheduling algorithms to
manage and prioritize tasks, ensuring that critical tasks are executed on time.
Prioritization: RTOS often use priority-based scheduling, where higher-priority tasks
are given preference over lower-priority ones.
Real-time systems are essential in various industries where timely and reliable operation is
paramount, and the proper management of real-time tasks is critical for their success.
General processors (CPUs) in computers and embedded processors have distinct
characteristics optimized for their respective applications. General purpose processors are
designed for a wide range of tasks and prioritize performance, while embedded processors are
designed for specific tasks and prioritize efficiency and integration within a larger system.
Here's a more detailed comparison:
General Purpose Processors (CPUs):
Focus: Designed for versatility and multitasking, handling a wide array of
applications and user interactions.
Performance: Prioritizes speed and computational power, often with higher clock
speeds and larger caches.
Power Consumption: Typically consume more power and have higher thermal design
power (TDP).
Memory Management: Often include sophisticated memory management units
(MMUs) to support virtual memory.
Examples: Intel Core i5, AMD Ryzen 7, etc.
Applications: Desktop computers, laptops, servers.
Embedded Processors:
Focus:
Optimized for specific tasks within dedicated devices, emphasizing efficiency and
resource constraints.
Performance:
Prioritizes energy efficiency, cost-effectiveness, and real-time performance for the targeted
application.
Power Consumption:
Designed to consume less power, often crucial for battery-powered devices.
Memory Management:
May not require complex MMUs, as embedded systems often have fixed memory
allocations.
Examples:
Microcontrollers, system-on-chips (SoCs) used in smartphones, and various embedded
systems.
Applications:
Smartphones, wearables, automotive systems, industrial control systems, etc.
Key Differences Summarized:
Feature General Purpose Processor (CPU) Embedded Processor
Focus Versatility, Performance Specific tasks, Efficiency
Power Higher Lower
Memory MMU-based Simplified
Examples Desktop CPUs, Server CPUs Microcontrollers, SoCs
Applications General computing, Servers Specific devices
In essence, general purpose processors are the workhorses for computing, while embedded
processors are the specialized engines that power the myriad of devices we use daily.
A Microcontroller is a small and low-cost microcomputer, which is designed to perform the
specific tasks of embedded systems like displaying microwave’s information, receiving
remote signals etc.
The general microcontroller consists of the processor, the memory (RAM, ROM, EPROM),
Serial ports, peripherals (timers, counters) etc.
Types of Microcontrollers
Microcontrollers are divided into various categories based on memory, architecture, bits and
instruction sets. Following is the list of their types
Bit − Based on bit configuration, the microcontroller is further divided into three
categories.
o 8-bit microcontroller − This type of microcontroller is used to execute
arithmetic and logical operations like addition, subtraction, multiplication
division, etc. For example, Intel 8031 and 8051 are 8-bit microcontroller.
o 16-bit microcontroller − This type of microcontroller is used to perform
arithmetic and logical operations where higher accuracy and performance is
required. For example, Intel 8096 is a 16-bit microcontroller.
o 32-bit microcontroller − This type of microcontroller is generally used in
automatically controlled appliances like automatic operational machines,
medical appliances, etc.
Memory − Based on the memory configuration, the microcontroller is further
divided into two categories.
o External memory microcontroller − This type of microcontroller is
designed in such a way that they do not have a program memory on the chip.
Hence, it is named as external memory microcontroller. For example: Intel
8031 microcontroller.
o Embedded memory microcontroller − This type of microcontroller is
designed in such a way that the microcontroller has all programs and data
memory, counters and timers, interrupts, I/O ports are embedded on the chip.
For example: Intel 8051 microcontroller.
Instruction Set − Based on the instruction set configuration, the microcontroller is
further divided into two categories.
o CISC − CISC stands for complex instruction set computer. It allows the user
to insert a single instruction as an alternative to many simple instructions.
o RISC − RISC stands for Reduced Instruction Set Computers. It reduces the
operational time by shortening the clock cycle per instruction.
Applications of Microcontrollers
Microcontrollers are widely used in various different devices such as -
Light sensing and controlling devices like LED.
Temperature sensing and controlling devices like microwave oven, chimneys.
Fire detection and safety devices like Fire alarm.
Measuring devices like Volt Meter.
What is a Microprocessor?
A microprocessor is nothing but a semiconductor electronic device designed to perform data
processing and digital operations in a computing machine like a computer. It is also termed as
a processor or central processing unit or CPU. It is generally built in the form of a single
IC (integrated circuit). The first commercially available microprocessor was developed by
Intel Corporation in the year of 1971, which was named as Intel 4004.
The primary function of a microprocessor is to take digital data from user, process them
according to instructions, and produce the output. Hence, it performs three basic functions
namely,
Inputting
Processing
Outputting
Here, it is also important to know that a microprocessor is different from a microcontroller
which combines a complete computing system on a single chip.
Block Diagram of Microprocessor
The block diagram of a typical microprocessor is shown in the following figure −
It consists of three main parts which are described as follows −
Arithmetic Logic Unit (ALU) − It is an electronic circuit that performs arithmetic
and logical operations on data received from an input device or memory.
Control Unit (CU) − This electronic circuit of the microprocessor is responsible
controlling the flow of data and instructions within the device or the system.
Register Array − Register array is nothing but a collection of digital registers to
provide small and fast storage to temporarily hold data and instructions in the
microprocessor during processes.
In addition to these three basic components, modern microprocessors also consist of cache
memory as well.
How does a Microprocessor Work?
The working of a microprocessor can be understood by breaking it down into the following
four key steps −
Fetch − It is the very first function that a microprocessor performs. In this step, the
microprocessor access data and instructions from memory unit or an input device.
Decode − After receiving data and instructions, the microprocessor decodes them and
interprets for computing process.
Execute − In this step, the microprocessor performs the requested operations on the
data.
Store − Finally, the results produced by the operations are stored in the memory unit.
Hence, a typical microprocessor completes its working in four steps, where each step
represents a specific task or function.
Components of Microcontrollers
A microcontroller, often called an MCU, contains several essential components that enable it
to function as a small, embedded computer. These include a Central Processing Unit (CPU)
for executing instructions, memory (both RAM for temporary storage and ROM for program
storage), Input/Output (I/O) ports for communication with external devices, and a clock
oscillator for timing. Additionally, microcontrollers may include components like
timers/counters, analog-to-digital converters (ADCs), digital-to-analog converters (DACs),
and an interrupt system.
Here's a more detailed look at the key components:
CPU: The "brain" of the microcontroller, responsible for fetching, decoding, and
executing instructions.
Memory:
RAM (Random Access Memory): Used for temporary data storage during program
execution.
ROM (Read-Only Memory): Stores the permanent program instructions.
I/O Ports: Enable communication with external devices, sensors, and actuators.
Clock Oscillator: Provides the timing signal that synchronizes the microcontroller's
operations.
Timers/Counters: Used for timing events, creating delays, and counting external
signals.
ADCs and DACs: Convert analog signals to digital data and vice versa, allowing the
microcontroller to interact with the real world.
Interrupt System: Allows the microcontroller to respond to external events or signals
quickly.
System-On-Chip and its examples
A System on Chip (SoC) is a single integrated circuit that combines all the components of a
computer or other electronic system onto one chip. This includes the processor (CPU),
memory, input/output (I/O) ports, and other peripherals, making it ideal for compact and
efficient devices.
Examples of SoCs:
Smartphones:
SoCs like the Apple A series and Qualcomm Snapdragon power most smartphones,
integrating the CPU, GPU, memory controllers, and various other components for
tasks like camera processing, AI, and gaming.
Automotive Systems:
SoCs are crucial for advanced driver-assistance systems (ADAS) and infotainment systems in
modern vehicles, handling sensor data processing for features like lane keeping assist and
adaptive cruise control.
IoT Devices:
SoCs are the brains behind many Internet of Things devices, including smart home security
cameras, wearable fitness trackers, and smart speakers.
Consumer Electronics:
SoCs are used in a wide range of devices like tablets, gaming consoles, and digital media
players.
Industrial Applications:
SoCs enable real-time processing, connectivity, and interfacing in industrial automation
systems.
Networking Equipment:
Routers, switches, and other network devices rely on SoCs to handle packet processing,
security, and data routing.
Key advantages of using SoCs:
Miniaturization:
SoCs allow for smaller, more compact electronic devices by integrating multiple
components onto a single chip.
Reduced Power Consumption:
Integration allows for optimized power management, leading to increased battery life
in portable devices.
Cost-Effectiveness:
While initial development can be complex, SoCs can be more cost-effective in high-
volume production due to reduced component count and simplified manufacturing.
Improved Performance:
Integrated components can communicate more efficiently, leading to faster processing
speeds and better overall performance.
Customization:
SoCs can be tailored to specific application requirements, offering flexibility and
adaptability for various electronic systems.
Components of Embedded Systems
An embedded system is a combination of hardware and software designed to perform a
specific task. Key components include a processor, memory (RAM and ROM), input/output
(I/O) interfaces, and often a Real-Time Operating System (RTOS).
Hardware Components:
Microcontroller/Microprocessor:
The "brain" of the system, executing instructions and controlling other components.
Memory:
Stores the program code and data. This includes ROM (for permanent storage of the
program) and RAM (for temporary data storage).
Input/Output (I/O) Interfaces:
Allow the system to interact with the external world. This includes sensors (for input) and
actuators (for output).
Other Peripherals:
Timers, counters, communication interfaces (e.g., UART, SPI, I2C), and power management
units.
Software Components:
Firmware: The software embedded within the system, often stored in ROM.
Application Software: The specific program that performs the intended task.
Real-Time Operating System (RTOS): A specialized OS that manages resources and
ensures timely responses to events.
Embedded systems often utilize microcontrollers (which integrate CPU, memory, and I/O on
a single chip) or microprocessors (which require external memory and I/O components). The
choice depends on the complexity and resource requirements of the application.
Sensors, like temperature sensors or light sensors, provide input to the system, while
actuators, like LEDs or motors, provide output.
The system bus facilitates communication between different hardware components.
A power management unit ensures efficient power delivery and may include features like
power-saving modes.
A watchdog timer is often included to detect and handle system malfunctions.
The RTOS, if used, provides a framework for scheduling tasks, managing resources, and
ensuring real-time performance.
Introduction to Embedded Processor
An embedded processor is a specialized microprocessor designed for use within embedded
systems, which are dedicated computer systems designed to perform specific tasks within
larger devices or machines. Unlike general-purpose processors found in computers,
embedded processors are optimized for power efficiency, size constraints, and real-time
performance, making them suitable for applications like smartphones, automotive systems,
and industrial control.
Here's a more detailed explanation:
Key Characteristics of Embedded Processors:
Specialized Functionality:
Embedded processors are designed to perform a specific task or a limited set of tasks
within a larger system.
Resource Constraints:
They often operate under restrictions in terms of power consumption, memory, and
processing power.
Real-time Performance:
Many embedded systems require real-time responses, meaning they need to respond to events
within a strict time frame.
Integration:
Embedded processors are typically integrated with other hardware components like memory,
input/output peripherals, and specialized circuits to form a complete embedded system.
Embedded Processors vs. Microcontrollers:
While both are used in embedded systems, microcontrollers are typically self-
contained single-chip devices that include a processor, memory, and peripherals,
whereas embedded processors often require external components to function.
Microcontrollers are generally simpler and more integrated than embedded
processors.
Examples of Embedded Systems:
Smartphones: Processors handle communication, multimedia, and application
processing.
Automotive Systems: Control engines, braking systems, and infotainment systems.
Industrial Control: Manage manufacturing processes, robotics, and automation.
Consumer Electronics: Washing machines, refrigerators, and other appliances.
Medical Devices: Pacemakers, patient monitoring systems.
In essence, embedded processors are the brains behind a vast array of devices and systems
that we interact with daily, often working silently and efficiently to perform their designated
tasks