Università degli Studi di Urbino Carlo Bo / Portale Web di Ateneo


ARCHITETTURA DEGLI ELABORATORI
COMPUTER ARCHITECTURE


A.A. CFU
2017/2018 12
Docente Mail Ricevimento studenti
Alessandro Bogliolo Giovedì 11:00-12:00 e al termine di ogni lezione
Didattica in lingua straniera
Insegnamento con materiali opzionali in lingua straniera Inglese
La didattica è svolta interamente in lingua italiana. I materiali di studio e l'esame possono essere in lingua straniera.

Assegnato ai Corsi di Studio

Informatica Applicata (L-31)
Curriculum: PERCORSO COMUNE

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 e Attività di Supporto

Dispense scritte dal docente e video-tutorial, resi disponibili attraverso la piattaforma di blended learning.

Videolezioni e comunità di apprendimento aperta in modalità MOOC su piattaforma http://europeanmoocs.eu/



Il materiale didattico e le comunicazioni specifiche del docente sono reperibili, assieme ad altre attività di supporto, all'interno della piattaforma Moodle › blended.uniurb.it

Modalità Didattiche, Obblighi, Testi di Studio e Modalità di Accertamento

Modalità Didattiche

Lezioni frontali in aula e in laboratorio, erogate anche in modalità MOOC.

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, 2014.

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.

Informazioni Aggiuntive per Studenti Non Frequentanti

Modalità Didattiche

Gli studenti non frequentanti possono avvalersi della piattaforma di blended learning e delle lezioni erogate in modalità MOOC sulla piattaforma http://europeanmoocs.eu/

Obblighi

Sebbene fortemente consigliata, la frequenza non è obbligatoria.

Testi di Studio

Come per studenti frequentanti

Modalità di
Accertamento

Come per studenti frequentanti

Note

L'insegnamento offre servizi di didattica integrativa on-line all'interno della piattaforma Moodle > elearning.uniurb.it 

Inoltre dall'A.A. 2016/17 il corso è anche offerto in modalità MOOC sulla piattaforma http://europeanmoocs.eu/

« torna indietro Ultimo aggiornamento: 13/09/17


Condividi


Questo contenuto ha risposto alla tua domanda?


Il tuo feedback è importante

Raccontaci la tua esperienza e aiutaci a migliorare questa pagina.

numero verde

800 46 24 46

Richiesta informazioni

informazioni@uniurb.it

Posta elettronica certificata

amministrazione@uniurb.legalmail.it

Social

Performance della pagina

Università degli Studi di Urbino Carlo Bo
Via Aurelio Saffi, 2 – 61029 Urbino PU – IT
Partita IVA 00448830414 – Codice Fiscale 82002850418
2017 © Tutti i diritti sono riservati

Top