Calcolatori Elettronici II

  

Università degli Studi di Cassino

Corso di Laurea Specialistica in
Ingegneria delle Telecomunicazioni

   prof. Francesco Tortorella  (mail)

     Anno Accademico 2004/2005

     terzo quadrimestre

 


 

 

Organizzazione del corso

 
Lezioni
Lunedì 11.00-13.00  aula informatica "M. Balzano"
Martedì 11.00-13.00 aula 1N.3
Venerdì 14.00-16.00 aula 1N.3
 
Ricevimento studenti

Per domande e/o richieste di chiarimenti su argomenti del corso, il prof. Tortorella riceve presso il suo studio il lunedì dalle 16.00 alle 18.00

Libro di testo

Computer Organization and Design: The Hardware/Software Interface, Third Edition

Computer Organization and Design: The Hardware/Software Interface, Third Edition
David A. Patterson, John L. Hennessy

Morgan-Kaufmann, 2005

Il sito del libro è disponibile qui.

 

In alternativa è possibile usare la traduzione italiana della seconda edizione:

Struttura, Organizzazione e Progetto dei Calcolatori
2a edizione
Jackson Libri, 1999
 

 

AVVISI RELATIVI AL CORSO

Sedute d'esame:

  • lunedì 4 luglio ore 10.00 (aula 1S1)

  • lunedì 18 luglio ore 10.00 (aula 1.2)

  • venerdì 22 luglio ore 10.00 (aula 1.2)

 


 
 
Ambiente per lo sviluppo di programmi Assembly

 MipsIt, un ambiente per la scrittura di programmi in Assembly/C, completo del simulatore di un sistema basato su processore MIPS e contenente un modulo RAM, un modulo di memoria cache con parametri modificabili e dispositivi di I/O. L'ambiente è disponibile qui.

 

 

 


 

 
Calendario del corso
(Nota: i riferimenti al libro di testo sono relativi sia alla 3a ed. in inglese (3EN) che alla 2a ed. in italiano (2IT))
 Sett.  Data  Argomenti della lezione

Riferimenti sul libro di testo

 Esercitazioni

1

venerdì 29/4

Presentazione del corso. Richiami sull'organizzazione del processore. Realizzazione dell'ALU con soluzione bit slice.

(lez 0, lez1)

 

 

2

lunedì 2/5

Realizzazione dell'ALU: addizionatori RCA. Gestione flag. Valutazione dl critical path. Addizionatori CLA.

(lez1)

 

 

martedì 3/5

Algoritmi per la realizzazione di moltiplicazione tra interi. Circuiti moltiplicatori combinatori. Circuiti moltiplicatori sequenziali.

(lez1

   

venerdì 6/5

Algoritmi per la realizzazione di divisioni tra interi. Circuiti per la realizzazione di moltiplicazioni e divisioni tra interi. Cenni sulle operazioni su numeri floating point. Schema di un addizionatore tra numeri floating point.
 (lez1)

   
3

lunedì 9/5

Esercitazione: presentazione dell'ambiente di simulazione MipsIt.

 

 

martedì 10/5

Architettura del datapath del processore. Formati delle istruzioni. Elementi combinatori. Elementi di memoria: register file, memoria dati.

(lez2)

 

 

venerdì 13/5

Architettura della CPU: data path a singolo ciclo
(lez2)

 

 

4

lunedì 16/5

Esercitazione:  Realizzazione dell'algoritmo per la divisione tra interi. Gestione tools di I/O dell'ambiente

 

 

martedì 17/5

Architettura della CPU: data path a singolo ciclo
(lez2)

 

 

venerdì 20/5

Architettura della CPU: data path a singolo ciclo
(lez2)

 

 

5

lunedì 23/5

Esercitazione: Aggancio programmi C con routine in assembly.    

martedì 24/5

Architettura della CPU: data path multi ciclo. Controllo. Eccezioni.
(lez3)
   

venerdì 27/5

Eccezioni. Gestione eccezioni nel datapath. Interruzioni. Interruzioni nel MIPS
(lez3,lez4)
   
6

lunedì 30/5

Esercitazione: Gestione interruzioni in MIPS

   

martedì 31/5

Interruzioni come strumento di gestione di eventi asincroni. Pipelining: introduzione. Cenni sull'architettura della CPU pipelined.
(lez4, lez5)

   

venerdì 3/6

No lezione

   
7

lunedì 6/6

Esercitazione: Gestione interruzioni in MIPS

   

martedì 7/6

Alee su architettura pipeline.
Il sistema di bus: generalità. Tipologie di bus. Sistemi a uno, due, tre bus.

(lez5, lez6)
   

venerdì 10/6

Il sistema di bus: tempificazione. Arbitraggio di bus. Esempio: il bus PCI.
(lez6)
   
8

lunedì 13/6

Esercitazione:  Pipelining

  Testo dell'esercitazione

martedì 14/6

Gerarchia di memoria. Memoria Centrale. Moduli di memoria SRAM e DRAM.
(lez7)
   

venerdì 17/6

Tecniche per il miglioramento delle prestazioni per moduli DRAM. Tecnologie avanzate: RAM sincrone, DDR.
(lez7)
   
9

lunedì 20/6

Memorie Cache. Parametri, tempo medio di accesso. Organizzazione. Cache ad accesso diretto. Cache completamente associative. Cache set-associative. Algoritmi per la sostituzione dei blocchi. Gestione delle operazioni di scrittura (write back, write through).
(lez8)

   

martedì 21/6

Cache a 1 e a 2 livelli. Protocolli per la consistenza dati tra cache e memoria.
Sistema di I/O: generalità. Interfaccia di I/O.
(lez8,lez9)
   

giovedì 23/6

Organizzazione delle operazioni di I/O: programmed I/O, interrupt I/O. DMA.
(lez9)
   

 

 

© 2005 Francesco Tortorella.
Ultimo aggiornamento: 23/06/05.