Università di Roma "La Sapienza" - Corso di Calcolatori Elettronici II (A-L, Ingegneria Informatica)

Diario delle lezioni (2005-06)

I riferimenti indicati sono relativi alla sezione Testi consigliati ed altro materiale.

Mer 2006-04-26
Introduzione al corso: temi e obiettivi.
Richiami sui dispositivi combinatori: porte logiche e multiplexer.

Mar 2006-05-02
Richiami sui dispositivi combinatori: demultiplexer, decoder, comparatori, addizionatori.
Richiami sui dispositivi sequenziali: flip-flop, macchine a stati finiti, diagramma di stato.
Implementazione delle macchine sincrone a stati finiti.

Mer 2006-05-03
Enable, Set e Reset nei flip-flop.
Latch e registri.
Shift register e loro impiego nelle conversioni seriale-parallelo e parallelo-seriale.

Lun 2006-05-08
Contatori sincroni e asincroni; connessione in cascata di moduli contatori.
Input/output (I/O): concetti generali, porte di I/O  [3]
I/O con bus separato, con bus comune, memory-mapped
Bus Interface e Device Control  [3]
Introduzione alla sincronizzazione I/O: protocollo di handshake e relativi segnali  [3]
Richiami sul PD-32 Memory Bus e relativi cicli di lettura/scrittura  [3]
PD-32 I/O Bus, ciclo di input  [3]
Istruzione IN  [3]

Mar 2006-05-09
PD-32 I/O Bus, ciclo di output  [3]
Istruzione OUT  [3]
Decodifica degli indirizzi di porta  [3]
Implementazione tipica delle porte di input e di output  [3]
Esercitazione 1 - Visualizzatore con display a 7 segmenti, prima parte (impostazione del progetto)

Mer 2006-05-10
Esercitazione 1 - Visualizzatore con display a 7 segmenti, seconda parte (realizzazione del progetto)
Esercitazione 1 - Visualizzatore con display a 7 segmenti, terza parte (varianti hardware/software)

Lun 2006-05-15
Sincronizzazione I/O: protocollo di handshake e sua implementazione mediante I/O Status flip-flop  [3]
Segnale di I/O bus RDY; istruzioni JR, JNR  [3]
Segnali di I/O bus START, CLEAR; istruzioni START, CLEAR  [3]
Modalità di I/O in busy-waiting  [3]

Mar 2006-05-16
Generazione di interrupt mediante I/O Status flip-flop; linea IRQ  [3]
Interrupt mask e relative istruzioni  [3]
Interrupt Flag nello Status Register e relative istruzioni  [3]
Ciclo di Interrupt Acknowledge e Interrupt Vector Number  [3]
Vettori di interrupt  [3]
Interrupt Service Routine e relative istruzioni  [3]
Commutazione di contesto nelle routine di servizio interrupt  [3]
Priorità a daisy chain  [3]

Mer 2006-05-17
Esercitazione 2: Orologio ore/minuti/secondi con timer interrupt e display a 7 segmenti:
        (a) progetto hardware
        (b) software di gestione e controllo

Lun 2006-05-22
Esercitazione 3: Controllo di temperatura multicanale:
        (a) progetto hardware
        (b) software di gestione e controllo
Introduzione al sottosistema di memoria
Memorie ROM
Espansione verticale e orizzontale dei moduli di memoria  [9]

Mar 2006-05-23
Memorie RAM statiche: cicli di lettura e di scrittura  [9]
Organizzazione modulare delle unità di memoria  [9]
Cenni sulle memorie RAM dinamiche

Mer 2006-05-24
Unità di memoria organizzata a banchi
Problemi di allineamento dei dati in memoria
Linee di bus MB0-3 e loro gestione
Introduzione al DMA (Direct Memory Access)
Bus Request, Bus Grant e linee di bus MBR, MBG corrispondenti  [3]
Cicli di memoria in DMA

Mar 2006-05-30
Progetto di un DMA Controller: sezione SCA
Progetto di un DMA Controller: sezione SCO

Mer 2006-05-31
Varie configurazioni del DMA Controller:
    (a) cycle stealing, burst mode
    (b) input, output
    (c) byte, word, longword
Gestione di un buffer a coda circolare

Lun 2006-06-05
Esercitazione 4: Controllore di parità con contatore di errori (IFPTY)

Mar 2006-06-06
Esercitazione 5: Interfaccia per ricerca su dizionario in ROM (IFKEY)

Mer 2006-06-07
Esercitazione 6: Interfaccia per decodifica e instradamento di messaggi a lunghezza variabile (IFBCD)

Lun 2006-06-12
Cicli PD-32 di input/output con WAIT  [3]
Uso di buffer FIFO nelle interfacce di I/O
Definizione e misura delle prestazioni  [1, Chp. 2]
CPI (clock per istruzione), CPI medio  [1, Chp. 2]
MIPS, MFLOPS e loro inconvenienti  [1, Chp. 2]
Legge di Amdahl  [1, Chp. 2][8]

Mar 2006-06-13
Esempi di misura e confronto di prestazioni  [1, Chp. 2]
Introduzione alla CPU MIPS-32 [1, Chp. 3][8]
Formato delle istruzioni MIPS-32 [1, Chp. 3][8]

Mer 2006-06-14
MIPS-32: Architettura monociclo  [1, Chp. 5 Sec. 1-3]
MIPS-32: Varianti per architettura multiciclo  [1, Chp. 5 Sec. 4]
Confronto di prestazioni tra architetture monociclo e multiciclo  [1, Chp. 5 Sec. 4]

Lun 2006-06-19
Prova di esonero.

Mar 2006-06-20
MIPS-32: Architettura pipeline [1, Chp. 6 Sec. 2-6]
Conflitti strutturali e loro risoluzione [1, Chp. 6 Sec. 2-6]
Conflitti di controllo e loro risoluzione [1, Chp. 6 Sec. 2-6]

Mer 2006-06-21
Conflitti di dati e loro risoluzione [1, Chp. 6 Sec. 2-6]
Introduzione alle cache: Principi di località spaziale e temporale [1, Chp. 7 Sec. 1-2]
Cache a indirizzamento diretto [1, Chp. 7 Sec. 2]

Mar 2006-06-27 (08:30-11:00, Aula 2)
Cache totalmente associative [1, Chp. 7 Sec. 3]
Cache set-associative [1, Chp. 7 Sec. 3]
Paginazione della memoria [1, Chp. 7 Sec. 4-5]
Tecniche di memoria virtuale [1, Chp. 7 Sec. 4-5]
Translation Lookaside Buffer (TLB) [1, Chp. 7 Sec. 4-5]

Orario

Giorno Ora Aula
  Lunedì    08:30 - 10:00    12 (Via Scarpa) 
  Martedì    08:30 - 10:00    12 (Via Scarpa) 
  Mercoledì    08:30 - 10:00    12 (Via Scarpa) 

Last update 2006-06-27 14:37