Embedded SystemsSono sistemi elettronici che contengono:
microprocessori (MPUs) oppure
microcontrollori (MCUs)
ma che non sono un computer.
I microcontrollori:
sono dappertutto
sono prodotti a miliardi
costano meno di 1 €
Microcontrollori nell’auto
I sistemi elettronici embedded in una Volvo S80 del 1998,
collegati tra loro tramite due reti locali controllate da un
modulo centrale.
La Volkswagen 1600 degli anni70 fu la prima auto ad usare un sistema a microprocessore per
il controllo dell’iniezione del carburante.
Più elettronica che meccanica
L’elettronica costa più dell’acciaio che serve per fabbricare l’auto.
Un modello al top di gamma può impiegarepiù di 100 Microcontrollori.
Microcontrollori nelle scarpe
Il microprocessore incorporato nella scarpa da corsa della ADIDAS
misura la pressione tra il piede dell’atleta ed il terreno 5 milioni di
volte al secondo e cambia continuamente la forma del
plantare per garantire il confort.
Il sistema controlla un motore che accorcia o allunga un cavo
collegato ad un elemento del plantare
Un microprocessoreUn microprocessore consiste in una ALU per svolgereoperazioni aritmetiche e logiche, nei registri, ed in una unità di controllo.
Si interfaccia con il mondo esterno tramite i suoi bus
Cosa manca?
– La memoria
- Le periferiche.
Registri
Unità dicontrollo
Unitàaritmetico
logica
Clock
Microprocessore Controllo
Indirizzi
Dati
Microprocessore - Microcontrollore
Il microcontrollore
ha al suo interno:
un microprocessore
tutta l’elettronica necessaria:
al suo funzionamento
al suo interfacciamentocon il mondo esterno
Architetture
I MC (microcontrollori)
Dual Bus Architecture (Harvard)
RISC (Reduced Instruction Set Computers)
I μP (microprocessori)
Single Bus Architecture (Von Neumann)
CISC (Complex Instruction Set Computers)
Von Neumann Architecture
Le istruzioni e i dati sono nella stessa memoria.
Sullo stesso bus devono transitare istruzioni e dati
Se la CPU usa il bus per i dati non può usarlo per leggere il
programma
Harvard Architecture
Due separate aree di memoria:
una per il programma
una per i dati
I bus sono di dimensioni diverse:
ad 8 bit quello relativo ai dati
di dimensioni maggiore quello per le istruzioni
Instruction Set
E’ l’insieme delle istruzioni che la CPU comprende.
Due strategie di progettazione
La CPU può eseguire solo istruzioni di baseaddizione, sottrazione,
spostamento dati
La CPU può eseguire centinaia di istruzioni
Anche molto complesse
RISC - CISC
Le istruzioni CISC sono talmente complesse che richiedono a volte la esecuzione di un microcodice all’interno della CPU
(sono subroutine)
Il linguaggio dei microcontrollori
I microcontrollori comprendono solo il linguaggio macchina
Ogni istruzione è rappresentata da un codice operativooperation code o più brevemente opcode
composto da 14 bit
00 0001 0000 0000In Binario
100In Esadecimale
Linguaggio Assembler
I codici operativi non hanno senso per
l’uomo
Ad ogni codice operativo viene associata una sigla detta
mnemonico che aiuta a ricordare la
funzione svolta dalla istruzione
CLRW
0 0 00 0 0 0 0 WWCLEAR W REGISTER