N.B.: Il diritto a scaricare il materiale accessibile da questa pagina
è riservato solamente agli studenti regolarmente iscritti al corso.
Notice: The right to download the material accessible from this page
is granted only to the students regularly enrolled in the hereabove University
course.
Le lezioni di esercitazione sono riportate in colore rosso. Le slide sono da considerare bozze avanzate fino al giorno della lezione. Le slide in versione definitiva, saranno disponibili sul sito il giorno dopo la lezione.
Approfondimenti sulle esercitazioni possono essere trovati sulla pagina WEB del Dott. Marchi relativa al corso.
Introduzione | ||
L_01 | 04/03/2008 | Introduzione. L'architettura di riferimento. Il ciclo di esecuzione di un'istruzione. Storia dell'Elaboratore (ultima modifica 04.03.08). |
L_02 | 05/03/2008 | Codifica dell'informazione. Operazioni su numeri binari. Le operazioni fondamentali. Rappresentazione binaria dei numeri decimali. Lo standard IEEE754 (ultima modifica 05.03.08). |
E_01 | 06/03/2008 |
Esercitazione: Operazioni sui numeri binari. Soluzioni (ultima modifica 04.03.08). |
Logica combinatoria | ||
L_03 | 07/03/2008 | L'algebra combinatoria: variabili ed operatori. Implementazione circuitale (porte logiche). Dal circuito alla funzione. Algebra Booleana. Le porte universali (ultima modifica 04.03.08). |
L_04 | 11/03/2008 |
Dalla funzione al circuito. Dalla tabella della verità al circuito:. la prima forma canonica. Criteri di ottimalità. Semplificazione algebrica. (ultima modifica 11.03.08). |
12/03/2008 | Implementazione circuitale di funzioni logiche mediante PLA e ROM. Maxtermini. Seconda forma canonica di rappresentazione delle funzioni booleane. Circuiti combinatori notevoli (ultima modifica 13.03.08). | |
E_02 | 13/03/2008 | Esercitazione: Sintesi delle funzioni booleane. Soluzioni. |
Le unità aritmetico-logiche | ||
L_06 | 14/03/2008 | Addizionatori. Il problema del riporto. Moltiplicatori HW. (ultima modifica 14.03.08). |
L_07 | 18/03/2008 | Progettazione di una ALU. I due stadi. Addizione su 32 bit. Overflow. Comparazione (ultima modifica 19.03.08). |
L_08 | 19/03/2008 | Anticipazione del riporto. Introduzione al firmware. Circuiti firmware della moltiplicazione intera(ultima modifica 19.03.08). |
20,21,25,26 |
Sospensione delle lezioni per le vacanze di Pasqua. | |
E_03 | 27/03/2008 | Esercitazione: circuiti per l'addizione e la sottrazione. ALU. Soluzioni. |
Logica sequenziale |
||
L_09 | 28/03/2008 |
Temporizzazione dei circuiti booleani. Circuiti sequenziali. Tabelle di transizione e di eccitazione. I latch SC. I latch D (ultima modifica 28.03.08). |
L_10 | 01/04/2008 | I flip-flop. Problemi di temporizzazione. Il register file (ultima modifica 01.04.08). |
L_11 | 02/04/2008 |
Macchine a stati finiti. Dalle specifiche al progetto. State Transition Graph. State Transition Table. Codifica della STT. Sintesi del circuito. (ultima modifica 02.04.08). |
E_04 | 03/04/2008 | Esercitazione: Bistabili. Soluzioni. |
L'Interfaccia HW / SW : L'Instruction Set Architecture (ISA) |
||
L_12 | 04/04/2008 | Definizione dell'ISA. L'assembly. Istruzioni aritmetiche nel MIPS. L'organizzazione della memoria. Istruzioni di lettura / scrittura: register spilling (ultima modifica 05.04.08). |
Logica sequenziale | ||
C_01 | sabato |
Primo compitino (fino al contenuto della lezione 8 compresa). Esercizi (ultima modifica 28.03.08). Risultati. Orario: 9.00 - 12.30, aula 405, Settore didattico, via Celoria 20. |
L'Interfaccia HW / SW : L'Instruction Set Architecture (ISA) |
||
L_13 | 08/04/2008 | Istruzioni di controllo del flusso: salti condizionati ed incondizionati. La Jump Address Table (ultima modifica 09.04.08). |
L_14 | 09/04/2008 |
Meccanismi di chiamata delle procedure. Lo stack. Le procedure annidate. Esempi (ultima modifica 09.04.08). |
E_05 | 10/04/2008 | Macchina a stati finiti. |
L_15 | 11/04/2008 | Il linguaggio macchina. Architettura delle istruzioni: tipi R, I e J. Modalità di indirizzamento. Utilizzo delle costanti. (ultima modifica 11.04.08). |
L_16 | 15/04/2008 |
Compilazione e linker: dal programma all'eseguibile. Le direttive del compilatore Assembly. Programmi assembly e la loro emulazione di SPIM. Esempi e procedure ricorsive. (ultima modifica 15.04.08). |
La struttura di un'architettura |
||
L_17 | 16/04/2008 | Architettura di riferimento. Architetture RISC e CISC. La struttura della CPU. La CPU ed il ciclo di esecuzione: Control path e data path. Costruzione di una CPU a ciclo singolo (ultima modifica 16.04.08). |
L'Interfaccia HW / SW : L'Instruction Set Architecture (ISA) |
||
E_06 | 17/04/2008 | Assembly. Linguaggio macchina. |
La struttura di un'architettura |
||
L_18 | 18/04/2008 | Sintesi del controllore della ALU. Sintesi dell'Unità di Controllo principale ed analisi del data-path per CPU a ciclo singolo (ultima modifica 15.04.08). |
L'Interfaccia HW / SW : L'Instruction Set Architecture (ISA) |
||
C_02 | 22/04/2008 |
Secondo compitino, ore 8.15, aula V1. (dalla lezione 9, alla lezione 16 compresa. Sono richiesti solamente i concetti fondamentali della lezione 14; della lezione 16 è richiesta la prima parte: dal sorgente all'eseguibile). Esercizi (ultima modifica 09.04.08). Risultati. |
La struttura di un'architettura |
||
L_19 | 23/04/2008 | Problemi con l'esecuzione di istruzioni a ciclo singolo. CPU multi-ciclo per istruzioni aritmetiche, di accesso alla memoria e di salto. Confronto con la CPU a ciclo singolo. (ultima modifica 23.04.08). |
E_07 | 24/04/2008 | Esercitazione: CPU Multi-ciclo. |
25/04/2008 | Festitività. Festa della liberazione. | |
L_20 | 29/04/2008 | L'unità di una CPU multi-ciclo: FSM. Sintesi dei segnali di controllo e della funzione stato prossimo (ultima modifica 30.04.08). |
L_21 | 30/04/2008 | Interrupt ed eccezioni. La gestione vettorializzata e tramite registro. CPU multi-ciclo e la gestione SW/HW delle interruzioni. (ultima modifica 16.05.08). |
La struttura di un'architettura |
||
01/05/2007 | Festitività. Festa dei lavoratori (e degli studenti). | |
02/05/2008 | Sospensione delle lezioni per chiusura Università. | |
L_22 | 06/05/2008 | Introduzione della pipeline. Principi di funzionamento. La struttura della CPU MIPS con pipeline. Il ruolo dei registri. Esecuzione in pipeline delle istruzioni di tipo R, lw/sw e branch. (ultima modifica 06.05.08). |
L_23 | 07/05/2008 | Controllo della pipeline. Sintesi dell'Unità di Controllo per la CPU con pipeline (ultima modifica 07.05.08) . |
E_08 | 08/05/2008 | Esercitazione: CPU pipeline |
L_24 | 13/05/2008 | Criticità della pipeline e stallo . Soluzione degli hazard sui dati mediante feedforwarding. Sintesi del controllore di feed-forwarding (ultima modifica 14.05.08). |
L_25 | 14/05/2008 | Criticità sui dati e stallo della pipeline. Soluzione degli Hazard sul controllo. Delayed branch. (ultima modifica 14.05.08). |
E_09 | 15/05/2008 | Esercitazione: Gestione degli Hazard nella pipeline |
L_26 | 16/05/2008 | Trend di sviluppo delle pipeline. Superpipeline e pipeline super-scalari. Static and Dynamic Issues. Una overview della pipeline del Pentium IV. (ultima modifica 16.05.08). |
C_03 | 20/05/2008 | Terzo Compitino. CPU (fino alla lezione 26). Aula V1. Ore 10.30-13.30. Esercizi (ultima modifica 30.04.08). Risultati. |
Le memorie | ||
L_27 | 21/05/2008 | Le memorie: gerarchia di memorie. Hit e Miss. Memoria cache. Mappatura diretta. Il campo tag di una cache (ultima modifica 24.05.08). |
E_10 | 22/05/2008 | Esercitazione in laboratorio: dentro un calcolatore (Questa esercitazione si terrà nella palestra di sistemi operativi, in Via Comelico con inizio alle ore 11.15) |
23/05/2008 | Sospensione lezione per missione del docente. | |
L_28 |
27/05/2008 |
Lettura / scrittura di una cache a mappatura diretta. Cache associative. Cache ad n vie. Cache coherence (ultima modifica 28.05.08). |
L_29 | 28/05/2008 | Criteri di progettazione di una memoria cache. La tecnologia SRAM e DRAM. Codici di correzione degli errori (ultima modifica 28.05.08). |
E_11 | 29/05/2008 | Esercitazione: Le cache. |
Le periferiche | ||
L_30 | 30/05/2008 | Il bus. Tipologie di bus. I bus seriali: Firewire, USB e PCI-Express. Schemi di arbitraggio. Gestione dell'I/O. (ultima modifica 30.05.08). |
03/06/2008 | I driver. L'I/O a controllo di programma. Polling. Interrupt. DMA. I dischi (ultima modifica 30.05.08). | |
L_32 | 04/06/2008 | L'architettura INTEL. L'architettura CISC degli INTEL. I registri. Modalità di indirizzamento. Elementi dell'ISA e della sua codifica. (ultima modifica 04.06.08). |
E_12 | 05/06/2008 | Seminario. Le GPU, le schede CUDA: architettura e principi di programmazione (Dott. Massimiliano Piscozzi). |
L 33 | 06/06/2008 | Le prestazioni. Valutazione delle prestazioni: CPI e mix di istruzioni. Benchmark. Legge di Amdhal. Speed-up. Gerarchie di memorie (ultima modifica 25.05.07) . |
C_04 | 10/06/2008 | Quarto Compitino. Memorie. I/O (fino alla lezione 33). Aula V3 . Ore 9.00. Esercizi (ultima modifica 06.06.08). Risultati. |