Embedded System
Ngô Lam Trung
Department of Computer Engineering
School of Information and Communication Technology (SoICT)
Hanoi University of Science and Technology
E-mail: trungnl@soict.hust.edu.vn
ES, NLT 2024 1
Course info
❑ IT4210E (3-0-1-6).
❑ Wednesday 6:45 AM – 9:10 AM + 3 labs.
❑ Pre-requisites
l Computer Architecture
l Electronics for IT
l C programming
ES, NLT 2024 2
Course contents
❑ Overview of embedded system organization, including
hardware (the MCU, memory, peripherals) and software.
❑ Designing embedded system hardware with basic
peripheral devices.
❑ Develop and simulate embedded software based on
assembly and high level languages for basic functions,
including peripherals (timer/counter, interrupt…), digital
input (switch, button, keypad, …), digital output (LEDs, 7-
seg LEDs, LED matrix,…), analog interface (ADC,DAC),
and serial communications (UART, SPI, I2C, USB,…).
❑ Introduction to embedded RTOS.
ES, NLT 2024 3
What’s the interesting challenge?
❑ Embedded system is a very very large field, this course
only scratches the surface
❑ Enhanced engineering skills
l Working with hardware layer
l Interfacing with the real physical world
❑ Hands-on experience
l Learning and developing on development kit
ES, NLT 2024 4
Syllabus (tentative)
❑ Chap 1: Introduction to embedded systems
❑ Chap 2: Embedded system organization
❑ Chap 3: Basic peripheral interfacing
❑ Chap 4: Arduino
❑ Chap 5: Serial communication
❑ Chap 6: Real-world interfacing
❑ Chap 7: FreeRTOS
ES, NLT 2024 5
Labs
❑ Lab 1: Basic peripheral interfacing
❑ Lab 2: Serial communication
❑ Lab 3: Embedded OS
ES, NLT 2024 6
Course evaluation
❑ Progress evaluation:
l Labs
❑ Final exam: quiz + project-based
l Teams of 2-3 students
l Project proposed by team (prefered),
l or selected from list.
❑ Some samples:
l Syllabus - EE319K (utexas.edu)
l EE319K Lab 10 Videos (utexas.edu)
ES, NLT 2024 7
References
❑ Books and lecture notes
l Han-Way Huang, Leo Chartrand 2004, Microcontroller: An
Introduction to Software & Hardware Interfacing, Cengage
Learning.
l Embedded Systems syllabus from trường Univ. of Cincinnati
(EECE 6017C), Univ. of California, Berkeley (EECS 149), Univ.
of Pennsylvania (ESE 350), Univ. of Kansas (EECS388)
❑ Technical documents and tools
l Datasheet from chip maker: Atmel, Keil…
l Internet
l Arduino IDE
l STM32Cube IDE
ES, NLT 2024 8
Chapter 1: Introduction
ES, NLT 2024 9
Content
❑ What is embedded system
❑ Embedded application
❑ Charateristics of embedded systems
ES, NLT 2024 10
Definition
“Dortmund“ Definition: [Peter Marwedel]
Embedded systems are information processing systems embedded
into a larger product.
Wikipedia:
An embedded system is a computer system with a dedicated function
within a larger mechanical or electrical system, often with real-time
computing constraints. It is embedded as part of a complete device
often including hardware and mechanical parts.
ES, NLT 2024 11
A sample
ES, NLT 2024 12
Another sample: ignition in combustion engine
Mechanical ignition (distributor)
ES, NLT 2024 13
Benefit of embedded system
❑ Before embedded system
l Logic circuit, hard-wired
l Electro-mechanical control system
l Hydraulic control system
l …
❑ Benefit of embedding and embedded system:
l sophisticated control, precise timing, low unit cost, low
development cost, high flexibility, small size, and low weight
❑ System/final product will have improved
l Performance
l Features
l Cost
l Dependability
ES, NLT 2024 14
Example
ES, NLT 2024 15
Automotive electronics
• ABS: Anti-lock braking systems
• ESP: Electronic stability control
• Airbags
• Automatic gearboxes
• Smart keys
• Blind-angle alert systems
• …
❑ Up to 100
networked
processors
ES, NLT 2024 16
Smart card (vd: SIM card)
ES, NLT 2024 17
Logistic
l Object tagging :
RFID, barcode…
l Object tracking.
ES, NLT 2024 18
Market size of embedded system (IDC)
ES, NLT 2024 19
Embedded system market size
ES, NLT 2024 20
1.2 Embedded systems characteristics
❑ Dependability
l Reliability R(t) = probability of system working correctly provided
that is was working at t=0
l Maintainability M(d) = probability of system working correctly d
time units after error occurred.
l Availability A(t): probability of system working at time t
l Safety: no harm to be caused
l Security: confidential and authentic communication
ES, NLT 2024 21
Efficiency and resource constraints
❑ Efficiency
l Code-size efficient
l Run-time efficient
l Weight efficient
l Cost efficient
l Energy efficient
❑ Resource constraints
l Cost
l Computing power and storage capacity
l Physical size
l Energy consumption
ES, NLT 2024 22
© Hugo De Man, IMEC, Philips, 2007
ES, NLT 2024 23
Embedded System Hardware
❑ Embedded system hardware is frequently used in a loop
(“hardware in a loop“):
cyber-physical systems
ES, NLT 2024 24
Responsiveness and Real-time constraints
❑ React to stimuli from the controlled object or
external/internal events within the time allowed.
❑ Many ES must meet real-time constraints
l For real-time systems, right answers arriving too late are wrong.
- “A real-time constraint is called hard, if not meeting that
constraint could result in a catastrophe“ [Kopetz, 1997].
l All other time-constraints are called soft.
l A guaranteed system response has to be explained without
statistical arguments
ES, NLT 2024 25
Dedicated systems for special purpose
❑ Dedicated towards a certain application
Knowledge about behavior at design time can be used
to minimize resources and to maximize robustness
❑ Dedicated user interface
(no mouse, keyboard and screen)
ES, NLT 2024 26
1.3. Embedded computer organization
ES, NLT 2024 27
1.3. Embedded computer organization
❑ System structure
ES, NLT 2024 28
Embedded computer organization
❑ Central system organization: MCU
ES, NLT 2024 29
Processing unit in embedded computer
❑ Microprocessor:
l CPU packaged as a separate IC.
l Example: Intel Core, AMD Ryzen,…
❑ Microcontroller: (Bộ vi điều khiển)
l A single IC contains basic components of a computer: CPU,
Memory (ROM and RAM), basic I/O.
l Example: AVRs from Atmel, PICs from Microchip, STM32F4
(ARM-based) from STMicroelectronics, …
l Architecture: 8 bit, 16 bit, 32 bit, (64 bit).
l On-chip memory or external memory.
❑ SoC (System-on-chip):
l High performance components on a single IC: CPU, GPU,
modem…
l Example: Samsung Exynox, Qualcomm Snapdragon, Apple
M1…
ES, NLT 2024 30
Memory
❑ RAM
❑ ROM, EPROM, EEROM (EEPROM)
❑ Flash: newest ROM technology, market dominating
ES, NLT 2024 31
Input/Output: peripherals
❑ Types of peripherals
l Input: sensors, button, switch, knob, ADC…
l Output: display, actuators, DAC…
l Communication: UART, SPI, I2C, CAN,…
l Storage: EEPROM, Flash memory,…
❑ I/O programming
l Programmed I/O (polling)
l Interrupt-driven I/O
l Direct Memory Access (DMA)
ES, NLT 2024 32
Exercise
❑ Read IC datasheet
l 74HC00
l DS18B20
❑ What is the function of each IC
❑ Footprint of each IC
❑ How each IC works
ES, NLT 2024 33
End of Chap.1
ES, NLT 2024 34