ARCHITETTURA DEGLI ELABORATORI
COMPUTER ARCHITECTURE
A.A. | CFU |
---|---|
2015/2016 | 12 |
Docente | Ricevimento studentesse e studenti | |
---|---|---|
Alessandro Bogliolo | Lunedì 11.00-12.00 |
Assegnato al Corso di Studio
Giorno | Orario | Aula |
---|
Obiettivi Formativi
Il Corso ha lo scopo di descrivere l'architettura di un calcolatore, con particolare riferimento al pipelining e alla gerarchia di memroia, fornendo gli elementi teorici necessari a motivarne le scelte progettuali, a comprenderne il funzionamento, a valutarne le prestazioni, e a comprenderne la relazione con le tecniche di programmazione in assembly e ad alto livello.
Programma
01. Introduzione:
01.01 Automazione.
01.02 Breve storia del calcolo automatico.
02. Codifica delle informazioni:
02.01 Il problema della codifica digitale.
02.02 Rappresentazione digitale di insiemi numerici e aritmetica binaria.
02.03 Rappresentazione digitale di insiemi non numerici e segnali.
02.04 Codici ridondanti a rivelazione e a correzione d'errore.
03. Reti logiche:
03.01 Porte logiche e reti di interruttori, algebra di Boole, reti logiche.
03.02 Sintesi di reti logiche combinatorie.
03.03 Reti logiche sequenziali.
03.04 Progettazione di circuiti logici a livello gate.
03.05 Sistemi digitali.
03.06 Laboratorio: progetto e simulazione di reti logiche con TkGate.
03.07 Decodifica di indirizzi
04. Sistemi a microprocessore:
04.01 Il modello di Von Neumann.
04.02 Il repertorio delle istruzioni e la classificazione delle architetture.
05. L'architettura interna della CPU:
05.01 Pipelining e prestazioni.
05.02 Architettura di riferimento: DLX.
05.03 Conflitti e stalli.
05.04 Laboratorio: simulazione della pipeline del DLX con WinDLX/WinMIPS.
06. Ottimizzazione delle prestazioni di un microprocessore:
06.01 Ottimizzazione statica del codice.
06.02 Laboratorio: esempi di ottimizzazione statica.
06.03 Parallelismo: Microprocessori multiple-issue.
06.04 Ottimizzazione dinamica: esecuzione fuori ordine e speculazione.
06.05 Laboratorio: sviluppo e impiego di benchmark
07. La memoria:
07.01 Dispositivi di memoria volatili: RAM statiche e dinamiche.
07.02 Dispositivi di memoria non volatili: ROM, Flash, HD.
07.03 La gerarchia di memoria: caching e memoria virtuale.
08. La comunicazione:
08.01 I bus e i dispositivi di I/O.
08.02 Le interruzioni e il DMA.
Eventuali Propedeuticità
Non vi sono propedeuticità obbligatorie.
Si suggerisce di sostenere l'esame di Architettura degli Elaboratori prima di sostenere gli esami di Basi di Dati e Sistemi Operativi.
Risultati di Apprendimento (Descrittori di Dublino)
Conoscenza e comprensione
Lo studente acquisirà le conoscenze fondamentali nel campo delle architetture degli elaboratori e delle basi teoriche che ne sono il fondamento, con particolare riferimento a: rappresentazioni digitali delle informazioni, reti di interruttori, porte logiche, reti logiche combinatorie e sequenziali, sistemi digitali sincroni, sistemi a microprocessore, memorie a semiconduttore, interfacce hardware-software e sincronizzazione dei componenti di un sistema. Lo studente comprenderà i principi e il funzionamento dei principali accorgimenti architetturali, tra i quali il pipelining, il data forwarding, il caching e la memoria virtuale. Lo studente acquisirà inoltre le conoscenze d base sull'esplorazione dello spazio di progetto di sistemi hardware-software valutando le metriche fondamentali e mettendo a confronto soluzioni alternative.
Capacità di applicare conoscenza e comprensione
Lo studente sarà in grado di progettare e simulare a livello logico, a livello gate e a livello register-transfer semplici sistemi digitali e componenti aritmetico-logici, applicando teniche di sintesi logica e strategie di progetto top-down e bottom-up. Sarà in grado inoltre di tradurre in assembly semplici segmenti di codice e effettuarne ottimizzazioni statiche al fine di ridurre l'incidenza di conflitti che possano causare stalli della pipeline.
Autonomia di giudizio
Lo studente sarà in grado di valutare e confrontare soluzioni alternative che implementano la setssa specifica, valutando le metriche di progetto a fine di verificare il rispetto dei vincoli e prendere decisioni orientate all'ottimizzazione.
Abilità comunicative
Lo studente sarà in grado di usare in modo appropriato la terminologia propria della materia e di metterla in relazione alla terminologia delle altre discipline del corso di studi. Avrà inoltre opportunità di lavoro in gruppo e di esposizione dei progetti svolti.
Capacità di apprendimento
Lo studente acquisirà la capacità di apprendere le criticità dei sistemi hardware-software e di comprendere a fondo la logica delle soluzioni architetturali adottate per risolverle. Tali capacità potranno essere applicate in autonomia per affrontare lo studio di problematiche e soluzioni architetturali non trattate nel corso.
Materiale Didattico
Il materiale didattico predisposto dalla/dal docente in aggiunta ai testi consigliati (come ad esempio diapositive, dispense, esercizi, bibliografia) e le comunicazioni della/del docente specifiche per l'insegnamento sono reperibili all'interno della piattaforma Moodle › blended.uniurb.it
Attività di Supporto
Dispense scritte dal docente e video-tutorial, resi disponibili attraverso la piattaforma di blended learning.
Modalità Didattiche, Obblighi, Testi di Studio e Modalità di Accertamento
- Modalità didattiche
Lezioni frontali in aula e in laboratorio.
- Obblighi
Sebbene fortemente consigliata, la frequenza non è obbligatoria.
- Testi di studio
Dispense fornite dal docente.
Hennessy, Patterson, "Computer Organization and Design: The Hardware/Software Interface", 5th edition, Elsevier (Morgan Kauffman Series), 2013. [http://store.elsevier.com/product.jsp?isbn=9780123747501] (La IV edizione è disponibile online su Google books isbn 978-0-12-374750-1)
Hennessy, Patterson, "Struttura e progetto dei calcolatori: L'interfaccia hardware-software", Zanichelli, 2010.
- Modalità di
accertamento Prova scritta, discussione orale di un progetto individuale o di gruppo e prova orale facoltativa.
La durata della prova scritta è di un'ora e trenta minuti. Durante il corso è possibile sostenere la prova scritta in due prove parziali di un'ora ciascuna.
La prova scritta può essere sostenuta anche prima di presentare la relazione del progetto. Il progetto deve essere presentato oralmente dopo aver predisposto e consegnato una relazione scritta.
Gli esiti della prova scritta e del progetto individuale restano validi per tutto l'anno accademico in cui sono stati conseguiti.
La prova scritta e il progetto individuale sono valutati in trentesimi. La media dei due voti costituisce il voto di ammissione all'orale (facoltativo). L'esito dell'orale incide per + o - 5 punti sul voto finale.
- Disabilità e DSA
Le studentesse e gli studenti che hanno registrato la certificazione di disabilità o la certificazione di DSA presso l'Ufficio Inclusione e diritto allo studio, possono chiedere di utilizzare le mappe concettuali (per parole chiave) durante la prova di esame.
A tal fine, è necessario inviare le mappe, due settimane prima dell’appello di esame, alla o al docente del corso, che ne verificherà la coerenza con le indicazioni delle linee guida di ateneo e potrà chiederne la modifica.
Informazioni aggiuntive per studentesse e studenti non Frequentanti
- Modalità didattiche
Gli studenti non frequentanti possono avvalersi della piattaforma di blended learning.
- Obblighi
Sebbene fortemente consigliata, la frequenza non è obbligatoria.
- Testi di studio
Come per studenti frequentanti
- Modalità di
accertamento Come per studenti frequentanti
- Disabilità e DSA
Le studentesse e gli studenti che hanno registrato la certificazione di disabilità o la certificazione di DSA presso l'Ufficio Inclusione e diritto allo studio, possono chiedere di utilizzare le mappe concettuali (per parole chiave) durante la prova di esame.
A tal fine, è necessario inviare le mappe, due settimane prima dell’appello di esame, alla o al docente del corso, che ne verificherà la coerenza con le indicazioni delle linee guida di ateneo e potrà chiederne la modifica.
Note
Il corso è erogato sia nel "percorso in presenza" che nel "percorso online" del Corso di Laurea di Informatica Applicata.
« torna indietro | Ultimo aggiornamento: 11/07/2016 |