Architettura degli elaboratori - corso B - A.A. 2013-2014

Registro ufficiale delle lezioni

Registro delle lezioni ufficiale

Programma svolto (libro di testo)

Capitoli 1, 2, 3, 4 fino al 4.6 (incluso), 5, 6 fino al 6.4, 7, 7, 9 fino al 9.2, 10.1, 10.2, 10.3, 10.4.2, 10.5, 10.5.1, 10.9, 10.11, e Capitolo 11. Dispensa sulla cache pubblicata sulla pagina didawiki del materiale didattico.

Materiale lezioni (dettagliato)

Data Orario Argomenti Lavagna Audio
24/09/13 11-13 Introduzione al corso. Strutturazione a livelli. Compilazione e interpretazione. Supporto a tempo di esecuzione. pdf h1 h2
27/09/13 11-13 Strutturazione a livelli: dettagli sulle MVi. Strutturazione a moduli. Forme di parallelismo (cenni): replicazione funzionale e pipeline. pdf h1 h2
1/10/13 11-13 Introduzione all'algebra di Boole. Rappresentazione binaria di numeri interi. Porte logiche. Realizzazione di un sommatore di numeri interi binari (con Full Adder in cascata e come sintesi mediante tabella di verità) pdf h1 h2
4/10/13 11-13 Leggi dell'algebra di Boole. Complessità del processo di sintesi. Componenti standard. Implementazione delle porte standard con porte NAND. pdf h1 h2
8/10/13 11-13 Niente lezione (recupero ore in eccesso)
11/10/13 11-13 Rappresentazione dell'informazione: codice ASCII, numberi relativi e floating point. Realizzazoine di reti combinatorie in Verilog (Esercitazione). pdf (corretto) h1 h2
15/10/13 11-13 Reti sequenziali. Modello di Mealy e di Moore. Automi. Implementazione di rete sequenziale con reti combinatorie e registri impulsati. Uso tipico per unità firmware. pdf h1 h2
18/10/13 11-13 Sintesi di reti sequenziali con componenti standard. Implementazione di un modulo di memoria. Tempi di accesso delle memorie. Memorie modulari sequenziali e interallacciate. pdf h1 h2
22/10/13 11-13 Esercitazione: reti sequenziali da automi di Mealy e di Moore. Seconda ora: Verilog: reti sequenziali in Verilog. pdf h1 h2
25/10/13 11-13 Esercitazione: reti sequenziali con componenti standard. Seconda ora: comunicazioni firmware: protocollo a livelli e introduzione al protocollo a transizione di livelli. pdf h1 h2
29/10/13 11-13 Unità firmware: PO e PC. Procedimento di progettazione. Microprogrammi a struttura di frase. pdf h1 h2
12/11/13 12-13 (1 ora, causa assemblea) Unità firmware: progettazione PC. Calcolo del ciclo di clock e T. pdf h1
15/11/13 11-13 Esercitazione: progettazione di semplice unità firmware con varianti. pdf h1 h2
19/11/13 11-13 Eliminazione nop. Condizioni di Bernstein. Raggruppamento condizioni. Considerazioni su ottimizzazione della lunghezza del ciclo di clock e del numero di microistruzioni in un microprogramma. (Attenzione: esempio corretto per Bernstein 2) alla fine delle slide) pdf h1 h2
22/11/13 11-13 Controllo residuo. Introduzione livello macchina Assembler. Schedulatore. pdf h1 h2
26/11/13 11-13 Livello assembler: tipi di architetture, indirizzamento e set di istruzioni. Set di istruzioni D-RISC: istruzioni aritmetico logiche e di memoria. pdf1pdf2 h1 h2
29/11/13 11-13 Istruzioni assembler per il salto. Istruzioni speciali. Compilazione di espressioni, condizionale, cicli e funzioni/procedure. pdf h1 h2
06/12/13 11-13 Interprete firmware. Valutazione dei tempi di esecuzione. MIx e benchmark. pdf h1 h2
10/12/13 11-13 Gestione I/O: memory mapped I/O, DMA e trattamento interruzioni. Esercitazione. pdf h1 h2
13/12/13 11-13 Esercitazione: firmware, assembler, I/O. pdf h1 h2
17/12/13 11-13 Esercizi su I/O e firmware, Q&A. pdf h1 h2
Interruzione delle lezioni per la sessione di esami invernale
17/2/2014 9-11 Paginazione dinamica, MMU e traduzione degli indirizzi, trattamento dei fault di pagina nel sistema operativo pdf h1 h2
20/2/2014 9-11 Cache e gerachie di memoria. Località e riuso. Working set (primi cenni). Cache ad indirizzamento diretto. Accesso con indirizzi fisici e logici. pdf h1 h2
24/2/2014 9-11 Cache a indirizzamento completamente associativo e associativo su insiemi. Politiche write through e write back. Trattamento dei fault di cache: politiche di rimpiazzamento e trattamento dei fault in scrittura. Valutazione del tempo di completamento in presenza di fault di cache. pdf h1 h2
27/2/2014 9-11 Conseguenze del dimensionamento della cache sulla probabilità di fault. Cache secondarie (vedi pagina del materiale didattico). Esercizio: working set, località e riuso nel codice per la moltiplicazione di matrici. pdf h1 h2
6/3/2014 9-11 Sistema operativo e gestione della memoria: condivisione di indirizzi fra processi,richiami alla scehdulazione e relazione con gestione della memoria. Esercizi su working set. pdf h1 h2
10/3/2014 9-11 Esercizi e considerazioni su cache e insieme di lavoro (1a ora). Forme di parallelismo per processori paralleli. pdf h1 h2
13/3/2014 9-11 Forme di parallelismo per processori paralleli: efficienza, scalabilità, funzionamento a regime, moduli come componenti di un sistema a code. pdf h1 h2
17/3/2014 9-11 Processore pipeline. Struttura generale, dettagli IM, IU, DM ed EU, meccanismi per la gestione della copia di IC in IM e della copia dei registri in IU. Inefficienze legate a salti e dipendenze logiche. pdf h1 h2
20/3/2014 9-11 Processore pipeline. Comunicazioni fra unità. Interruzioni ed eccezioni. Modello analitico del tempo di servizio. pdf h1 h2
24/3/2014 9-11 Processore pipeline. Modello analitico (dettagli). Tecniche per la riduzione degli effetti dei salti (loop unrolling e delayed branch) e delle dipendenze (refactoring codice). pdf h1 h2
7/04/2014 9-11 Esercitazione: compilazione di codice con analisi delle cause di degrado delle prestazioni su processore pipeline. pdf h1 h2
10/04/2014 9-11 Esercitazione: calcolo prestazioni codice D-RISC per propcessore pipeline. pdf h1
14/4/2014 9-11 Processore data flow (con cenni a macro data flow e uso per data flow per FPGA). Processore pipeline con EU parallela: realizzazione in pipeline di EU slave e problema delle dipendenze logiche EU-EU. pdf h1 h2
28/4/2014 9-11 Modello analitico per processore pipeline con EU parallela. Ottimizzazioni statiche e dinamiche: valutazione comparativa (qualitativa) e motivazioni per la ricerca di un compromesso fra tecniche statiche (a tempo di compilazione) e dinamiche (con supporto firmware). pdf h1 h2
5/5/2014 9-11 Architettura superscalare: principi, funzionamento, modello dei costi. pdf h1 h2
12/5/2014 9-11 Architettura superscalare: modello dei costi (ultimi dettagli), realizzazione in parallelo di IU ed EU. Multithreading: caratteristiche, supporto firmware, mutlithreading blocked, interleaved e symmetric. pdf h1 h2
15/05/2014 9-11 Esercitazione: esercizi su processore pipeline con unità di esecuzione parallela (Mencagli) non disponibili
19/5/2014 9-11 Riepilogo caratteristiche processori e modelli di programmazione (dal processore dell'interprete fw al multicore. Prospettive e tendenze. pdf h1 h2
22/05/2014 9-11 Esercizi: esecuzione di codice multithreaded. pdf h1 h2
Fine corso