Post on 17-Feb-2019
S. Salvatori - Microelettronica – marzo 2018 – (1)
Microelettronica
Corso introduttivo di progettazionedi sistemi embedded a microcontrollore
prof. Stefano Salvatori
Università degli Studi Roma Tre
S. Salvatori - Microelettronica – marzo 2018 – (2)
Dove siamo?
Elettronica II
Elettronica I
Elettronica dei sistemi digitali
Microelettronica
Siete qui
S. Salvatori - Microelettronica – marzo 2018 – (3)
Identificazione dell'hardware
microcontrollori
DigitalSignalProcessors
FPGA
SingleBoardComputer
S. Salvatori - Microelettronica – marzo 2018 – (4)
Qual è l'obiettivo di questo corso?
e si pone come obiettivo quello di mettere in condizione i singoli studenti di poter iniziare a progettare applicazioni intelligenti su misura basate su microcontrollore.
→ trasferimento di tecnologie
→ acquisizione di conoscenze e competenze nella progettazione di sistemi embedded a microcontrollore.
Questo Corso cercherà di rispondere alla domanda:
“cos'è un microcontrollore?”
S. Salvatori - Microelettronica – marzo 2018 – (5)
Conosco i microcontrollori?
Un microcontrollore è un “computer in miniatura” che potete trovare in ogni genere di oggetti.
Quanti microcontrollori usiamo ogni giorno?
Un dispositivo equipaggiato di tasti, led, display o altoparlante, è probabile che abbia anche un microcontrollore.
S. Salvatori - Microelettronica – marzo 2018 – (6)
Conosco i microcontrollori?
Ogni giorno usiamo decine di uC!
Si parla spesso di sistemi di elaborazione
S. Salvatori - Microelettronica – marzo 2018 – (7)
Sistemi di elaborazione
● I sistemi di elaborazione si trovano ovunque
● Molti di noi pensano subito a computer di tipo desktop
– PC
– Laptop
– Mainframe
– Server
– ...
● Ci sono però altri tipi di sistemi di elaborazione
– Molti di uso comune ...
S. Salvatori - Microelettronica – marzo 2018 – (8)
Sistemi di elaborazione
– Automotive
– Elettronica di consumo
– Medicina
– Ricerca scientifica
– …
● Miliardi di prodotti ogni anno
● Circa 50 in ogni abitazione e in un'automobile
S. Salvatori - Microelettronica – marzo 2018 – (9)
Sistemi di elaborazione
● Una breve lista
ABSAuto-focusAvionicaCarica-batteriaCondizionatoriConsole per videogiochiControllo missileControllori di temperaturaDecoder MPEGForno a microondeFotocopiatriciGiocattoli elettroniciLettori CD/DVDLettore impronta digitale
LavastoviglieMacch. a controllo numericoModemRiconoscitori vocaliRouterScannerSistemi audioSistemi di guidaSistemi di sicurezzaSistemi di supporto vitaSistemi medicaliStampantiStazioni base per telefonia cellulareStrumenti elettronici
TelecamereTelefoni cellulariTelefoni cordelessTrasmissioneTelevisioneVideo game portatiliVideocitofoniVideosorveglianzaVideotelefoni ...
S. Salvatori - Microelettronica – marzo 2018 – (10)
Cos'è un sistema embedded?
● Si definiscono "embedded" tutte le applicazioni che usano un microcontrollore quale processore principale e qualunque applicazione basata su microprocessore che non sia già coperta da altre aree. Ad esempio, nella categoria rientrano elettrodomestici, sistemi di condizionamento, piattaforme di misurazione intelligenti, controllori per touch-screen, controllori per sensori e motori dove i processori sono il cuore della soluzione...
http://arm.com/markets/embedded/index.php
da ARM®
S. Salvatori - Microelettronica – marzo 2018 – (11)
Cos'è un sistema embedded?
Noi parleremo di “Sistemi Embedded a Microcomputer”.
Sistema: insieme di componenti tra loro interagenti per svolgere un prefissato lavoro in modo coordinato;
Embedded: letteralmente, “incastonato”, cioè nascosto;
Micro: piccolo;
Computer: che contiene, cioè, un processore, una memoria e i mezzi per lo scambio delle informazioni da e verso l'esterno.
Un po' più “accademica”
S. Salvatori - Microelettronica – marzo 2018 – (12)
Cos'è un sistema embedded?
Sinonimo di sistemi embedded è “Cyber-Physical System”, coniato nel 2006 (*).
Infatti i sistemi embedded coniugano la potenza di calcolo di un computer (“l'intelligenza”) con oggetti fisici (sensori e attuatori).
(*) Helen Gill, National Science Foundation, USA
S. Salvatori - Microelettronica – marzo 2018 – (13)
Cos'è un sistema embedded?
I sistemi embedded dovono in qualche modo interagire col mondo esterno.
In particolare l'interazione è verso l'uomo e si parla di:
● HCI: human-computer-interface
oppure
● MMI: man-machine interface
input
output
S. Salvatori - Microelettronica – marzo 2018 – (14)
Cos'è un sistema embedded?
Una calcolatrice, però, ricorda troppo da vicino un computer.
Non dobbiamo confondere i sistemi embedded in generale solo con questo tipo di apparati.
S. Salvatori - Microelettronica – marzo 2018 – (15)
Noi tratteremo solo sistemi embedded a microcontrollore
Sarà necessario approfondire alcuni argomenti.
● Cos'è una CPU?
● Qual è l'architettura di un sistema a microprocessore?
● Come viene gestito l'interfacciamento?
● Come può essere sviluppato il software di gestione?
● ...
CPU
ROM
RAM
I/O
ADC
DAC
comp.meccanici
sensori
attuatori
Sistemi embedded a microcontrollore
S. Salvatori - Microelettronica – marzo 2018 – (16)
Sistemi embedded a microcontrollore
Hardware
PC-desktop
embedded
Sistema Software
firm
ware
S. Salvatori - Microelettronica – marzo 2018 – (17)
Sistemi embedded a microcontrollore
firm
ware
S. Salvatori - Microelettronica – marzo 2018 – (18)
Il lavoro svolto da un sistema embedded a microcontrollore è nettamente distinto da quello di un PC
Reset Reset handler
Inizializzazione del sistema
Codice di startup (in C)
Inizializzaz.dell'hardware Elaborazione
Librerie inruntime
Routine diservizio delleinterruzioni
Sistemi embedded a microcontrollore
S. Salvatori - Microelettronica – marzo 2018 – (19)
Caratteristiche tipiche
● Singola funzionalità
– Esegue un unico programma, ripetutamente
● Vincoli molto stringenti
– Basso costo, basso consumo, leggero, veloce, …
● Real-time
– Generalmente deve reagire a stimoli dell'ambiente esterno
– Deve elaborare i risultati in tempo reale senza ritardi (eccessivi)
S. Salvatori - Microelettronica – marzo 2018 – (20)
Un esempio: videocamera
Processore CCD Processore pixel
Codec JPEG
D/A
A/D
Molt/acc
DMA controller
Memory controller Interfaccia ISA UART Contr. LCD
Contr. display
CCD
Dig
ital
Cam
era
Ch
ip
Microcontrollore
S. Salvatori - Microelettronica – marzo 2018 – (21)
Sviluppo
allestimento dell'hardware
scrittura firmware
collaudo
IDEA!
Importanza della documentazione
S. Salvatori - Microelettronica – marzo 2018 – (22)
esercitazioni con LPCXpresso
dal livello “zero” ...
...a ...
S. Salvatori - Microelettronica – marzo 2018 – (23)
Materiale per le esercitazioni
scheda LPCXpresso824-MAX
Mouser: http://www.mouser.it (cod. 771-OM13071598);
Farnell: http://it.farnell.com (cod. 2444851);
Digikey: http://www.digikey.it (cod. 568-11568-ND);
Embedded Artists: https://www.embeddedartists.com (cod. EA-XPR-024);
Amazon: https://www.amazon.it (cod. OM13071-NXP_IT).
S. Salvatori - Microelettronica – marzo 2018 – (24)
Materiale per le esercitazioni
scheda LPCXpresso824-MAX
Mouser: http://www.mouser.it (cod. 771-OM13071598)
S. Salvatori - Microelettronica – marzo 2018 – (25)
Materiale per le esercitazioni
componenti aggiuntivi
- una breadboard;
- ponticelli per breadboard;
- cavetti di collegamento;
- resistori di valore diverso(da centinaia a decine di migliaia di Ω);
- trimmer o potenziometri (da 10k e da 100k Ω);
- LED di vari colori;
- pulsanti;
- un LCD alfanumerico (16 caratteri su due righe).
es. Fan kit (Amazon)
S. Salvatori - Microelettronica – marzo 2018 – (26)
Materiale per le esercitazioni
LPCXpresso IDE
https://www.nxp.com/products/processors-and-microcontrollers/arm-based-processors-and-mcus/lpc-cortex-m-mcus/lpc1100-cortex-m0-plus-m0/lpcxpresso-ide-v8.2.2:LPCXPRESSO?fsrch=1&sr=1&pageNum=1
S. Salvatori - Microelettronica – marzo 2018 – (27)
Corso: architettura ARM (provvisorio)
● Generalità e cenni storici del processore ARM• Generalità sui microprocessori:
MU0• Architettura RISC
● Organizzazione dei registri interni• Stato ARM e stato Thumb• Registri generali e di stato in
modalità ARM e Thumb● Set di struzioni
• Panoramica delle istruzioni ARM• Istruzioni per la gestione di
stack• Istruzioni e salti condizionali
Concetto di pipeline• pipeline a 3 stadi in ARM7TDMI-S• Rischi delle pipeline
Eccezioni• Origine delle eccezioni e modalità
di gestione delle eccezioni• Vettori di interrupt e priorità
Memorie• Organizzazione delle memorie:
little e big-endian• Il modello di indirizzamento
standard di memoria in ARM• Comportamento dello stack
Architetture di bus• AMBA, ASB, AHB, APB
Sistemi di debug• Interfaccia JTAG
Organizzazione ARM7TDMI
S. Salvatori - Microelettronica – marzo 2018 – (28)
Corso: esercitazioni con LPCXpresso
● Compilazione, upload, debug di un progetto
● uso di GPIO ● gestione timer● gestione LCD● gestione delle interruzioni● acquisizione da ADC● Macchine a stati di tipo sw● ...
Ogni gruppo deve avere a disposizione una propria postazione hw/sw con cui poter lavorare anche a casa (non è obbligatorio che ogni studente abbia la dotazione hw)
S. Salvatori - Microelettronica – marzo 2018 – (29)
Modalità d'esame: studente singolo
1. Sviluppo di un progetto con LPCXpresso:a. stesura della documentazione
b. allestimento del prototipo
c. uso degli strumenti di sviluppo
d. progettazione del software
e. debugging e collaudo
2. Colloquio:processore ARM
S. Salvatori - Microelettronica – marzo 2018 – (30)
Esempio d'esame
S. Salvatori - Microelettronica – marzo 2018 – (31)
Esempio d'esame
S. Salvatori - Microelettronica – marzo 2018 – (32)
Esempio d'esame
S. Salvatori - Microelettronica – marzo 2018 – (33)
Esempio d'esame
S. Salvatori - Microelettronica – marzo 2018 – (34)
Esempio d'esame
S. Salvatori - Microelettronica – marzo 2018 – (35)
Per casa
Scaricare LPCXpresso IDE sul sito NXP
S. Salvatori - Microelettronica – marzo 2018 – (36)
Per casa
Scaricare LPCXpresso IDE sul sito NXP
S. Salvatori - Microelettronica – marzo 2018 – (37)
Per casa: guida all'installazione
S. Salvatori - Microelettronica – marzo 2018 – (38)
Per casa
S. Salvatori - Microelettronica – marzo 2018 – (39)
Per casa: download
S. Salvatori - Microelettronica – marzo 2018 – (40)
Per casa
“Muoversi” per acquistare il materiale per le esercitazioni
S. Salvatori - Microelettronica – marzo 2018 – (41)
Per casa
Scaricare la documentazione relativa alla scheda di sviluppo
S. Salvatori - Microelettronica – marzo 2018 – (42)
Domande?
Stefano Salvatori
stefano.salvatori@uniroma3.it
www.ssalvatori.altervista.org☞
“Se ascolto, dimentico. Se vedo, ricordo. Se faccio, capisco!”
Confucio