- Docente: Luca Roffia
- Crediti formativi: 9
- SSD: ING-INF/05
- Lingua di insegnamento: Italiano
- Modalità didattica: Convenzionale - Lezioni in presenza
- Campus: Cesena
- Corso: Laurea in Ingegneria elettronica, informatica e telecomunicazioni (cod. 8196)
Conoscenze e abilità da conseguire
Al termine del corso, lo studente dispone del metodo e degli strumenti con cui affrontare con consapevolezza il progetto di semplici sistemi a microprocessore. Lo studente impara ad analizzare e fare la sintesi di reti logiche combinatorie e sequenziali (sincrone e asincrone). Queste conoscenze costituiscono la base per lo studio delle architetture dei moderni calcolatori elettronici, delle quali lo studente ne apprende i principi generali di funzionamento, l'impatto sulle prestazioni, il progetto dell'unità di elaborazione e la mutua relazione esistente tra hardware e software. Al di là dei contenuti specifici, lo studente acquisisce una delle principali abilità che l'industria chiede oggi a un ingegnere dell'informazione, e cioè la capacità di gestire la complessità di un progetto, abituandolo alla pratica dell'astrazione, intesa come attività volta a rappresentare in modo efficace e gerarchico l'essenza del sistema di elaborazione.
Contenuti
- Codifica binaria dell'informazione
- Analisi e sintesi di reti logiche combinatorie, sequenziali asincrone e sequenziali sincrone
- Modello della macchina a stati finiti
- Principi di funzionamento di un calcolatore
- Macchina di Von Neumann
- Modello di esecuzione di un programma
- Indirizzamento della memoria e dei dispositivi di I/O
- Architettura dell'hardware dei calcolatori
- ISA (Instruction Set Architecture)
- Considerazioni generali sui linguaggi macchina
- Architetture R-R (RISC) e Architetture M-R (CISC)
- Misura delle prestazioni di un calcolatore
- Impatto dell'architettura sulla prestazioni
- Struttura interna di una CPU ed implementazione tramite struttura sequenziale (DLX)
- Progetto di sistemi a microprocessore
Testi/Bibliografia
- R. Laschi, M. Prandini: "Appunti di Reti Logiche", Esculapio 2007
- Hennessy Patterson: "Computer architecture: a quantitative approach" - Morgan Kaufmann pub. Inc., second edition
- Giacomo Bucci: “Architetture dei calcolatori elettronici” McGraw-Hill
Metodi didattici
Verranno inizialmente introdotti i principi di funzionamento di un
calcolatore. Si seguirà in un primo momento un approccio "top-down"
volto ad evidenziare le parti fondamentali che costituiscono
l'hardware di un calcolatore. Verranno quindi studiate le reti
logiche come parti fondamentali dell'hardware del calcolatore,
dalle quali seguendo un approccio "bottom-up", si giungerà a
delineare la struttura interna di una CPU. Infine, si mostrerà come
la CPU possa interagire con gli altri elementi fondamentali del
calcolatore (memoria e dispositivi di I/O) e come il suo
funzionamento sia strettamente legato all'architettura del set di
istruzioni da essa supportato.
Modalità di verifica e valutazione dell'apprendimento
La verifica dell'apprendimento avverrà mediante una prova scritta. Non è prevista alcuna prova orale. E' prevista a metà corso una prova parziale non obbligatoria. Il superamento di quest'ultima consentirà allo studente di sostenere a fine corso una prova solamente sugli argomenti trattati nella seconda metà del corso.
Strumenti a supporto della didattica
Le lezioni verrano svolte mediante l'uso di un computer portatile attraverso il quale verrano proiettati i lucidi. Inoltre presso il sito web sarà possibile accedere ad una bacheca, all'interno della quale verrano esposti avvisi da parte del docente, insieme ai testi e le soluzioni dei temi d'esame degli anni passati.
Link ad altre eventuali informazioni
http://didattica.arces.unibo.it/course/view.php?id=73
Orario di ricevimento
Consulta il sito web di Luca Roffia