AMERICAN INTERNATIONAL UNIVERSITY – BANGLADESH (AIUB)
Where leaders are created
FUNDAMENTALS OF MICROPROCESSOR
AND EMBEDDED SYSTEM
• By tahseen asma meem
Course Teacher: Prof. Dr. Engr. Muhibul Haque Bhuyan 1
SOME IMPORTANT DIFFERENCES :
Microprocessor Microcontroller
2
SOME IMPORTANT DIFFERENCES :
Microprocessor Microcontroller
• Microprocessor is considered to be the • Microcontroller is considered to be the heart
heart of the computer system. of embedded systems.
• Used in home appliances like refrigerators,
• Used in personal computers or laptops.
washing machines, etc. along with PC.
• Von Neumann architecture is used. • Harvard architecture and Princeton
• Circuit is large and complex. architecture are used.
• More expensive than microcontrollers. • Circuit is small.
• Less expensive than microprocessors.
• Power consumption is high as the clock
• Power consumption is lower as the clock
speed is low.
speed is high.
3
SOME IMPORTANT DIFFERENCES :
Point of
Harvard Architecture Von Neumann Architecture
Comparison
In Harvard architecture, the CPU is connected In Von-Neumann architecture, there is no
with both the data memory (RAM) and program separate data and program memory.
memory (ROM), separately. Instead, a single memory connection is
given to the CPU.
Arrangement
It requires more hardware since it will be In contrast to the Harvard architecture,
Hardware
requiring separate data and address bus for each this requires less hardware since only a
requirements
memory. common memory needs to be reached.
4
SOME IMPORTANT DIFFERENCES :
Point of
Harvard Architecture Von Neumann Architecture
Comparison
Space This requires more space. Von-Neumann Architecture
requirements requires less space.
Speed of execution is faster because the Speed of execution is slower since
Speed of
execution
processor fetches data and instructions it cannot fetch the data and
simultaneously. instructions at the same time.
It results in wastage of space since if the Space is not wasted because the
space is left in the data memory then the space of the data memory can be
Space usage
instructions memory cannot use the space utilized by the instructions
of the data memory and vice-versa. memory and vice-versa.
Controlling becomes complex since data Controlling becomes simpler since
Controlling and instructions are to be fetched either data or instructions are to
simultaneously. be fetched at a time.
5
EMBEDDED SYSTEM
• An embedded system
is a microprocessor-
based computer
hardware system with
software that is
designed to perform a
dedicated function,
either as an
independent system or
as a part of a large
system. At the core is
an integrated circuit
designed to carry out
computation for real- 6
EMBEDDED SYSTEM
• An Embedded System can be best described as a system that
has both the hardware and software and is designed to do a
specific task.
• It should be noted that embedded systems may only have some
specific range of operations or, they can be programmed to
perform a wide range of tasks.
• A good example of an Embedded System, which many
households have, is a Washing Machine.
• We use washing machines almost daily but wouldn’t get the
idea that it is an embedded system consisting of a Processor
(and other hardware as well) and software.
7
EMBEDDED SYSTEM
• Embedded Systems can not only be stand-alone devices
like Washing Machines but also be a part of a much larger
system. An example of this is a Car. A modern-day car has
several individual embedded systems that perform its specific
tasks with the aim of making a smooth and safe journey.
• Some of the embedded systems in a Car are Anti-lock Braking
System (ABS), Temperature Monitoring System, Automatic
Climate Control, Tyre Pressure Monitoring System, Engine Oil
Level Monitor, etc.
8
CLASSIFICATION OF EMBEDDED SYSTEMS
BASED ON GENERATIONS:
• 1st generation embedded systems :
• Assembly language was used to develop
an embedded system possessing simple 8 bit microprocessors (8085)
hardware and firmware.
• Examples: Digital telephone keypads,
stepper motor control units.
4 bit microcontrollers 9
CLASSIFICATION OF EMBEDDED SYSTEMS
BASED ON GENERATIONS:
• 2nd generation embedded systems:
• More powerful and complex to
previous-generation embedded
systems 16 bit microprocessor (8086)
• Examples: Data acquisition systems,
SCADA systems
8 bit microcontrollers
CLASSIFICATION OF EMBEDDED SYSTEMS
BASED ON GENERATIONS:
• 3rd generation embedded systems :
• Domain-specific processors/ controllers
like Digital Signal Processors (DSP),
16 bit microcontrollers
Application Specific Integrated
Circuits(ASICs), and the concept of
instruction pipelining evolved.
• Examples: robotics, industrial process
control, embedded networking.
32-bit microprocessors
Intel Pentium M 11
CLASSIFICATION OF EMBEDDED SYSTEMS
BASED ON GENERATIONS:
• 4th generation embedded systems
were built on recently developing
microprocessors and microcontrollers.
System on chip (SoC)
• New concepts (SoC, multicore
processors, and coprocessors emerged
to add more powerful performance.
• Examples: Smart devices, digital
cameras.
Multicore processors
12
CLASSIFICATION OF EMBEDDED SYSTEMS
BASED ON GENERATIONS:
• Small-scale embedded systems are built with a single 8 or 16-bit
microprocessor/controller.
• The main programming tools are an editor, assembler, and integrated
development environment (IDE).
• The hardware and software complexities here are very low and may or
may not contain an operating system for its functioning.
• Examples: An electric toy.
• Medium-scale embedded systems are built with 16 or 32-bit
microprocessors/ controllers (ASICS or DSPs)
• The hardware and software complexities here exist.
• Main programming tools are C, C++, JAVA, Visual C++, RTOS,
debugger, source code engineering tool, simulator, and IDE. 13
CLASSIFICATION OF EMBEDDED SYSTEMS
BASED ON GENERATIONS:
• Large-scale embedded systems are built with a single 32 or
64-bit microprocessor/controller, having highly complex
hardware and software, RISC processors, SoC, and scalable
and configurable processors.
• These are also known as sophisticated embedded systems.
• Used for cutting-edge applications containing high-
performance real-time operating systems for task scheduling,
prioritization, and management.
14
BASED ON HARDWARE PROPERTIES EMBEDDED
SYSTEMS CAN BE GROUPED AS FOLLOWS:
Field-programmable gate arrays (FPGA)
form custom embedded systems at the gate
level. Therefore it cannot be programmed
rather FPGA system has to be constructed by
a hardware description language such as
Verilog and VHDL.
Microcontrollers form embedded systems as
those can be programmed in assembly or high-
level language to perform operations. The
most well-known microcontrollers are Arduino
and Arm Cortex M-based ones having limited
computation power and memory. 15
BASED ON HARDWARE PROPERTIES EMBEDDED
SYSTEMS CAN BE GROUPED AS FOLLOWS:
Microprocessors form embedded systems where Linux
operating systems can control and organize operations.
This also leads to Graphical User Interface (GUI) usage as
well. Microprocessors have fairly high memory and
computation power compared to microcontrollers. Popular
microprocessor-based embedded systems are the
Raspberry Pi family.
System-on-Chip (SoC) for embedded systems as they
have FPGA and microprocessor modules. Thus SoC
programming and usage are still not easy when compared
to microcontrollers or microprocessors.
The four mentioned groups have their dedicated
development boards which use cross-compilers so that
code is written and debugged on PC. 16
NEW HARDWARE OPTIONS EMERGED FOR EMBEDDED
SYSTEMS ARE AS FOLLOWS:
1) STMicroelectronics offered joint usage of
the microcontroller (ARM Cortex A ) and
the microprocessor (Cortex M CPUs.
2) Development boards consisting of
graphical processing units (GPU) allow
parallel processing via high-level
programming languages.
3) Recent advances in deep learning and
neural networks also led to devices
consisting of neural processing units
(NPU or TPU) dedicated to neural
network implementations.
17
NEW HARDWARE OPTIONS EMERGED FOR EMBEDDED
SYSTEMS ARE AS FOLLOWS:
• At present, some of the popular microcontroller families in the
market are:
• ATMega family: ATMega328P, ATMega32
• PIC-Chips: PIC24, PIC33. etc.
• ARM processors: Raspberry Pi, TM4C chips, STM32 F401
• In Bangladesh, ATMega-based Arduino boards have gained
wide popularity due to easy availability and low price
• We are going to mostly focus on the ATMega328P chip during
the midterm and then on the Arm processors in the final term.
18
REAL-LIFE EXAMPLES OF EMBEDDED SYSTEMS:
Exceptionally versatile and adaptable, embedded systems can
be found in all smart devices today. It is difficult to find a single
portion of modern life that doesn’t involve this technology. Here
are some real-life examples of embedded system applications.
Central heating systems GPS systems Fitness trackers
19
REAL-LIFE EXAMPLES OF EMBEDDED SYSTEMS:
Automatic fare collection(AFC) ATM systems Factory robots
Medical devices Self-service kiosks Electric vehicle charging stations
20
REFERENCES:
1. Embedded System Design with ARM Cortex-M Microcontrollers: Applications with C, C++
and MicroPython by Cem Unsalan
2. https://www.digi.com/blog/post/examples-of-embedded-systems
21
THANKS FOR ATTENDING….