1 INTRODUZIONE AI SISTEMI EMBEDDED DEFINIZIONE DI SISTEMA EMBEDDED SVILUPPO HW/SW DI SISTEMI EMBEDDED \ DEFINIZIONE DI SISTEMA EMBEDDED UN SISTEMA EMBEDDED È UN SISTEMA DI ELABORAZIONE (COMPUTER) SPECIALIZZATO INTEGRATO IN UN DISPOSITIVO FISICO IN MODO DA CONTROLLARNE LE FUNZIONI TITE UN APPOSITO PROGMA SOFTWARE DEDICATO 2
3 ALCUNI ESEMPI DI SISTEMA EMBEDDED TELEFONI CELLULARI (WAP, UMTS, ECC.); SOTTOSISTEMI INTELLIGENTI PER IL CONTROLLO DI FUNZIONALITÀ PARTICOLARI DI AUTO, TRENI O AEREI (AUTOMOTIVE). AD ESEMPIO SISTEMA ABS, SISTEMA DI CONTROLLO DEI TERGICRISTALLI, SISTEMA DI ESPULSIONE DEGLI AIRBAG, AUTORADIO, QUALUNQUE ALTRA COSA CHE FUNZIONI SUL VEICOLO DISPOSITIVI / SENSORI COLLEGATI IN RETE, PER L'AUTOMAZIONE DI UNA CASA (HOME AUTOMATION); RIPRODUTTORI DIGITALE DI SUONI PORTATILE, ES. FILE MUSICALI MP3; REGISTRATORI DIGITALE DI IMMAGINI; TELECAMERA EVOLUTE ACCESSIBILE VIA RETE; ΕLETTRODOMESTICI INTELLIGENTI (MACCHINA DA CAFFÈ; FRIGORIFERO; CONDIZIONATORE; ECC.) DISPOSITIVI DI AUTOMAZIONE DI MACCHINE INDUSTRIALI ECC. ECC. ALCUNI ASPETTI DISTINTIVI RISPETTO AD UN SISTEMA DI ELABORAZIONE TIPO PC LA FUNZIONE PRIMARIA DEL DISPOSITIVO CONTROLLATO È DIVERSA DA QUELLA DI UN GENERICO COMPUTER. LE FUNZIONI CONTROLLATE DAL COMPUTER INTEGRATO SONO PREDEFINITE A PRIORI (SONO EVENTUALMENTE MODIFICABILI, IN MODO CONTROLLATO, SOLO DAL PRODUTTORE) LA PARTE HARDWARE DEL SISTEMA È OTTIMIZZATA PER EVITARE SPRECHI (PARTI RIDONDANTI O NON USATE) E RIDURRE I COSTI DEL PRODOTTO, OGNI SISTEMA VIENE PROGETTATO IN MANIERA APPLICATION-SPECIFIC LA PARTE SOFTWARE DEL SISTEMA VIENE ESEGUITA DA UNO O PIÙ PROCESSORI E PUÒ ESSERE PIÙ O MENO SOFISTICATA A SECONDA DELLA COMPLESSITÀ E DEL NUMERO DELLE FUNZIONALITÀ GESTITE L ARCHITETTURA E LA COMPLESSITA DEL SISTEMA VARIANO ENORMEMENTE A SECONDA DELL APPLICAZIONE 4
ESEMPIO DI SISTEMA EMBEDDED TIPO SYSTEM ON BOARD (SoB) GSM Receiver Schema a Blocchi 5 Layer 1: Signal Proc. μc Layer 2 & 3: Control SW ASIC Memory ROM/ A/D D/A RF Module LNA Mixers Power Amp LOs Freq Synth. 6 ESEMPIO DI SoB GSM RECEIVER FOTO DELLA SCHEDA Frequency Synthesizer CODEC ROM ASIC
7 DAI SYSTEM on BOARD AI SYSTEM on CHIP L aumento della capacità di integrazione ha consentito di includere le funzionalità di un intero sistema su un singolo chip di silicio COMPONENTE REALE COMPONENTE VIRTUALE DEEP SUB-MICRON 8 ESEMPIO DI SYSTEM on CHIP GSM RECEIVER SCHEMA A BLOCCHI S ROM / FLASH ASIC μc A/D D/A RF Module LNA Mixers Power Amp LOs Freq Synth.
9 ESEMPIO DI SYSTEM on CHIP GSM Receiver Foto del chip ASIC μc Core Core Core SISTEMI EMBEDDED DI NUOVA GENERAZIONE 10
11 PROGETTAZIONE DI SISTEMI EMBEDDED SVILUPPO DI SISTEMI EMBEDDED 12 APPLICAZIONE DEFINIZIONE DELL'ARCHITETTURA DEL SISTEMA PARTIZIONAMENTO E BINDING DELL'ALGORITMO SVILUPPO FW -SW HW-SW CO-DESIGN SVILUPPO HW INTEGRAZIONE E DEBUG
SVILUPPO DI SISTEMI EMBEDDED: SoB e SoC 13 LO SVILUPPO DI UN SISTEMA EMBEDDED, SIA DI TIPO SOB CHE DI TIPO SOC, PUÒ ESSERE SCHEMATIZZATO IN ALCUNE ATTIVITÀ PRINCIPALI: LA PRIMA FASE SI PONE COME OBIETTIVO LA DEFINIZIONE DELL ARCHITETTURA DI BASE DEL SISTEMA E LA SCELTA DEI COMPONENTI. OLTRE A CONSIDERAZIONI DI TIPO STRETTAMENTE TECNICO HANNO FORTE INCIDENZA CONSIDERAZIONI DI TIPO ECONOMICO (P.E. COSTO DEI POSSIBILI COMPONENTI) E PRATICO (P.E. REPERIBILITÀ DEI COMPONENTI). DURANTE LA SECONDA FASE IL SYSTEM ENGINEER MAPPA SULL ARCHITETTURA SCELTA L APPLICAZIONE CUI ESSA È DESTINATA, E NE STIME LE PRESTAZIONI. QUESTE PRIME DUE FASI SONO FORTEMENTE INTEGRATE E SOGGETTE A CONTINUE ITERAZIONI. SVILUPPO DI SISTEMI EMBEDDED 14 LO SVILUPPO HARDWARE NON VERRA' TRATTATO IN QUESTO CORSO. SOMMARIAMENTE POSSIAMO DIRE CHE ESSO CONSISTE NELLA REALIZZAZIONE EX-NOVO O NELLA PERSONALIZZAZIONE DI CIRCUITI VLSI DEDICATI. SI RICORRE A CIRCUITI DI QUESTO TIPO NEL CASO DI BLOCCHI FUNZIONALI CHE NON POSSONO ESSERE IMPLEMENTATI TITE SEMPLICI PROCESSORI LO SVILUPPO FW-SW CONSISTE NELLA PROGMAZIONE DELLE PIATTAFORME PROGMABILI DEL SISTEMA: CODIFICA DELL ALGORITMO (SPECIFICA PER L ARCHITETTURA DI ELABORAZIONE TARGET), DEFINIZIONE E CODIFICA DEI PROTOCOLLI DI COMUNICAZIONE INTERNI E DEI DRIVERS DELLE PERIFERICHE, CODIFICA DELLE ROUTINE DI BOOT, CUSTOMIZZAZIONE DEL SISTEMA OPERATIVO LE 2 FASI DI SVILUPPO, UN TEMPO SVOLTE DA TEAM DI PROGETTO SEPARATI E CON BASSI LIVELLI DI INTERAZIONE, TENDONO A ESSERE SEMPRE DI PIÙ INTEGRATE FRA DI LORO, ANCHE CON L AUSILIO DI TOOL DEDICATI (HW-SW CO- DESIGN). INFATTI, AL CRESCERE DELLA COMPLESSITÀ DELLE APPLICAZIONI E DEI SISTEMI, LA FASE DI INTEGRAZIONE E DEBUG TENDE A DIVENTARE INGESTIBILE IN CASO DI MANCATA SINCRONIZZAZIONE FRA SVILUPPO HW E SW.
GRAFICA DEFINIZIONE DELL ARCHITETTURA PARTIZIONAMENTO E BINDING DELL ALGORITMO 15 LINK RADIO ASIC/FPGA VOCE VIDEO E' necessario un componente dedicato? Posso implementare questa funzionalità sul microcontrollore? E' indispensabile un componente dedicato? Quale componente? EXTERNAL I/O AUDIO CODEC (FW CORE) MPEG CODEC (HW CORE) PROCESSOR BUS PROCESSOR CONTROL PROCESSOR E' indispensabile un processore separato o è sufficiente utilizzare il microcontrollore? Che? Che processore: ARM, MIPS? Quale bus: AMBA, CoreConnect? E' necessario un bus dedicato per il sottosistema? SYSTEM 16 LA FINALITA' ULTIMA DI QUESTO CORSO E' ACQUISIRE LE CONOSCENZE DI BASE DELLE FIGURE PROFESSIONALI : EMBEDDED ARCHITECT EMBEDDED APPLICATION DEVELOPER DEFINIZIONE DELL ARCHITETTURA, PARTIZIONAMENTO E BINDING DELL ALGORITMO CONOSCENZA DELLE MICROARCHITETTURE DI ELABORAZIONE GENERAL PURPOSE (PROCESSORI) CONOSCENZA DELLE METODOLOGIE DI IMPLEMENTAZIONE DEI BUS DI COMUNICAZIONE CONOSCENZA DELLE PERIFERICHE BASE DI SISTEMI EMBEDDED CONOSCENZA DI PROCESSORI E SISTEMI COMMERCIALI (MIPS,ARM) SVILUPPO SW-FW CONOSCENZE DI PROGMAZIONE A BASSO LIVELLO (DRIVERS, ROUTINE DI BOOT) CONOSCENZA DI BASE DEI SISTEMI OPERATIVI EMBEDDED CAPACITÀ DI UTILIZZARE STRUMENTI DI SVILUPPO PER PROCESSORI EMBEDDED