CALCOLATORI ELETTRONICI A - L

ING-INF/05 - 9 CFU - 1° semestre

Docenti titolari dell'insegnamento

MAURIZIO PALESI
GIUSEPPE ASCIA


Obiettivi formativi

Il corso ha un duplice obiettivo.

In primo luogo ha l’obiettivo di introdurre alla conoscenza delle tecnologie e metodologie per la progettazione di sistemi digitali a diversi livelli di astrazione. Lo studente impara a progettare sistemi digitali.

Un secondo obiettivo è la conoscenza dell’organizzazione dei calcolatori elettronici, l’architettura del set delle istruzioni, e le tecniche per un’efficiente implementazione. In tale contesto lo studente impara a valutare le prestazioni di un calcolatore e l'impatto delle scelte architetturali sulle prestazioni. Inoltre, lo studente impara a programmare nel linguaggio Assembly relativo a un processore educational.


Modalità di svolgimento dell'insegnamento

L'insegnamento verrà svolto utilizzando lezioni frontali, esercitazioni pratiche e lo studio di alcuni casi.


Prerequisiti richiesti

Rappresentazione dell’Informazione nei calcolatori elettronici, Algoritmi. Sequenze di Controllo. Tipi di dati. Puntatori. Funzioni. Concetto di Stato. Macchina a stati finiti



Frequenza lezioni

La frequenza non è obbligatoria ma fortemente consigliata



Contenuti del corso

Parte I Progettazione di sistemi digitali

1.1 Progetto di reti combinatorie

1.2 Progetto di reti sequenziali sincrone

1.3 Progettazione di un sistema digitale

Parte II Il calcolatore

2.1 Il calcolatore: astrazione e tecnologie

2.2 Il linguaggio del calcolatore: l’Assembly

2.3 Organizzazione del calcolatore

2.4 Il Sottosistema di memoria

 

(*) Conoscenze minime irrinunciabili per il superamento dell'esame.

N.B. La conoscenza degli argomenti contrassegnati con l'asterisco è condizione necessaria ma non sufficiente per il superamento dell'esame. Rispondere in maniera sufficiente o anche più che sufficiente alle domande su tali argomenti non assicura, pertanto, il superamento dell'esame.



Testi di riferimento

[T1] Fummi, Sami, Silvano, “Progettazione digitale”, 2/ed McGraw-Hill

[T2] Patterson, Hennessy, “Struttura e progetto dei calcolatori”, Zanichelli

[T3] Bucci, “Architettura e organizzazione dei calcolatori elettronici: fondamenti”, McGraw-Hill

[T4] Materiale fornito del docente on line


Altro materiale didattico

E’ possibile scaricare tutto il materiale didattico in formato elettronico all’indirizzo htpp://studium.unict.it



Programmazione del corso

 ArgomentiRiferimenti testi
1Progetto di reti combinatori. Algebra di commutazione. Espressioni booleane minime. Minimizzazione mediate il metodo delle mappe di Karnaugh e di Quine-McCluckey.T1 capitoli 3 e 4, T4 
2Progetto di reti sequenziali sincrone. Introduzione alle macchine sequenziali. Gli elementi di memoria: i bistabili. Sintesi di reti sequenziali sincrone. Minimizzazione delle macchine a stati finiti.T1 capitoli 5 e 6, T4 
3Progettazione di un sistema digitale. Flusso di progettazione di un sistema digitale. Datapath e unità di controllo. Componenti di un sistema digitale. Multiplexer, Decoder, Encoder, Comparatore, Registri, Register file.T1 capitoli 7 e 8, T2 capitolo 3, T4 
4Sommatore a propagazione del riporto e Sommatore ad anticipo di riporto. Moltiplicatore e divisore. Progetto di un ALUT1 capitoli 7 e 8, T2 capitolo 3, T4 
5Linguaggi HDL. Sviluppo di un modello VHDL di sistema digitale. Simulazione di un modello VHDL. Testbench.T1 appendice A, T4 
6I tipi di calcolatori e le loro caratteristiche. I componenti di un calcolatore. Organizzazione dei calcolatori elettronici.T2 capitolo 1, T3 capitolo 5, T4 
7Architettura del Set di Istruzioni dei processori.T2 capitolo 2, T3 capitolo 5, T4 
8Organizzazione sequenziale di un processore. Datapath di un processore sequenziale. Unità di controllo di un processore sequenziale: realizzazione cablata e microprogrammata.T2 capitolo 4, T3 capitolo 7, T4 
9Organizzazione Pipeline di un processore.T2 capitolo 4, T4 
10Assembly del processore educational EDUMIPS64. Assembler, linker e loader. Struttura di un programma assembly.T4 
11Un Instruction Set Simulator per il processore EduMIPS Instruction Set Architecture dell’EDUMIPS.T4 
12Istruzioni logico-aritmetiche. Istruzioni di accesso alla memoria. Istruzioni per il controllo di flusso.T4 
13Chiamate di sistema. Lettura e stampa di interi e stinghe. Gestione degli array.T4 
14Chiamata a procedure. Procedure annidate. Stack pointer.T4 
15Il Sottosistema di memoria. Classificazione delle memorie. Ram Statica e RAM dinamica. Cicli di lettura e di scrittura. DRAM asincrona e sincrona. Organizzazione della memoria. Decodifica degli indirizzi.T2 capitolo 5, T3 capitolo 8, T4 
16Memorie cache. Valutazione delle prestazioni delle memorie cache. Politiche di Block placement, block identification, block replacement e di scrittura.T2 capitolo 5, T3 capitolo 8, T4 
17Tecniche per il miglioramento delle prestazioni della cache.T2 capitolo 5, T3 capitolo 8, T4 


Verifica dell'apprendimento


MODALITÀ DI VERIFICA DELL'APPRENDIMENTO

L'esame consiste in un'unica prova scritta e al calcolatore. Nella prova d'esame (3 ore) sono previsti:

Per superare la prova è necessario ottenere un punteggio minimo pari a 18, con almeno 5 punti per i quesiti sulle reti logiche, almeno 6 punti per lo sviluppo del programma assembly e almeno 6 punti per i quesiti sulle architetture.

Non sono previste prove in itinere.


ESEMPI DI DOMANDE E/O ESERCIZI FREQUENTI

Esempi di domande e/o esercizi frequenti sono disponibili all’indirizzo http://studium.unict.it




Apri in formato Pdf English version