Module-3.1 - Embedded Systems Based on SoC and RTOS
Module-3.1 - Embedded Systems Based on SoC and RTOS
0-20241119
[module-3.1]
EMBEDDED SYSTEMS
BASED ON SOC AND RTOS
ESIOT ISI-LT - UNIBO EMBEDDED SYSTEMS BASED ON SOC AND RTOS 1
MODULE OUTLINE
• Introduction to embedded systems based on SoCs
(System-On-a-Chip)
• Introduction to Real-Time OS
– Operating Systems — some recall
– RTOS
High-leveldi
Linguaggi Languages
alto livello/ /Applications
Applicazioni
Sistema Operativo
Operating System
Hardware
High-level
Linguaggio
High-level
Linguaggio Languages
di alto livello
Languages
di alto livello
Compilers
Compilatore
Virtual
Macchina
Interpreters/compilers
Inteprete / Compilatore
Machines
Virtuale
Sistema Operativo
Operating System
Hardware
Operating Systems
Sistema Operativo
Assembler
Linguaggio
Machine Macchina
Language (or Code)
Computer Architecture
Architettura dell'elaboratore
ALU Memoria
Memory
Combinatory &
Boolean Arithmetic/
Aritmetica booleana Sequential
Reti logichelogic
sequenziali
algebra
circuits
Boolean
Logica Logics
booleana
High-level Languages
Linguaggi di alto livello/ Applications
/ Applicazioni
Sistema Operativo
Operating System
Compilatore di Sistema
System Compiler
SystemVirtuale
Macchina Virtual Machine
di Sistema
Hardware
Linguaggio
Linguaggio di alto livello
di alto livello
Compilatore
Macchina
Inteprete / Compilatore
Virtuale
Sistema Operativo
SOFTWARE
GERARCHIA
Compilatore di Sistema
LEVELS
LIVELLI
HIERARCHY
SOFTWARE
Assembler
Linguaggio Macchina
Logica booleana
11 11 12
Controllers Controllers
13 14
I/O Device and Main Memory
Networking
OPERATING SYSTEM
PHYSICAL Memory
MACHINE
System Interconnect (BUS)
Traslation
Controllers Controllers
OPERATING SYSTEM
Controllers Controllers
}
Machine language
Hardware
Microarchitecture
Physical device
Web
server videgioco
Shell Application
Livello delle
Application
Programmatore Word comandi Web Level
Applicazioni
di applicazioni processor browser
programmer
System
amministratore Livello del
administrator
di sistema OS level
Sistema Operativo
Driver Driver
Programmatore
System
di sistema
CPU Video Tastiera Mouse
Livello
programmer HW level
Hardware
Interfaccia
Memoria Dischi
di rete
Web
server videgioco
Shell
comandi
Application
Livello delle
Word Web Applicazioni
Application
Programmatore
di applicazioni processor browser Level
programmer
Systemamministratore
di sistema
administrator Driver Driver
OS asOperativo
Sistema
come
Virtual Machine
Macchina Virtuale
Programmatore
System
di sistema
CPU Video Tastiera Mouse
programmer Interfaccia
Memoria Dischi
di rete
OS
VIDEO CARDS
SCHEDA VIDEO
CENTRAL
MEMORIA
MEMORY
CENTRALE CONTROLLERS
BUS INTERFACCE
NETWORK
DI RETE
INTERFACES
CPU
STORAGE
MEMORIE
DISPOSITIVI
DI MASSA I/O DEVICESI/O
USB
MOUSE
DISKS
DISCHI TASTIERA
KEYBOARDS
...
https://doc.micrium.com/
ESIOT ISI-LT - UNIBO EMBEDDED SYSTEMS BASED ON SOC AND RTOS 39
EXAMPLE:
µC/OS
FAMILY
https://www.freertos.org/
https://docs.microsoft.com/en-us/windows/iot-core/windows-iot
IMPORTANT
• Determinism is the most important aspect of real-time
systems
– hard real-time, in particular
• Determinism in this case means that the system should be
predictable:
– the time needed to perform some task
– the maximum time required to execute some action or
getting some input or from a sensor or to react to some
interrupt
– the number of cycles required to exec some operation must
be always the same
• In these systems, the execution can be interrupted (by means
of interrupts), however the overhead (interrupt latency, context
switch, interrupt handler execution time) should be known
• semaphores
• queues / mailboxes — msg passing
– timer management
– I/O device management CPU execution modalities
- kernel mode
– memory management - user mode
– interrupt management & signals
ESIOT ISI-LT - UNIBO EMBEDDED SYSTEMS BASED ON SOC AND RTOS 49
RTOS BENEFITS
• Improving responsiveness and reducing overhead
• Simplifying resource sharing
• Simplifying development, debugging, maintenance
– for complex embedded system
• Enhancing portability
• Exploiting proper service layer & middleware
• Making application time-to-market quicker
IMPORTANT
D
res
r e
Pre-emptive
scheduling with
priorities assigned
according to RM