Architettura degli elaboratori
A.A. 2024/2025
Obiettivi formativi
L'insegnamento ha lo scopo di introdurre i concetti di base dell'architettura hardware e firmware dei sistemi di elaborazione, a partire dai fondamenti della logica digitale fino a descrivere il comportamento e la struttura circuitale dei principali componenti di un calcolatore e la sua programmazione in linguaggio macchina.
Risultati apprendimento attesi
Lo studente sarà in grado di utilizzare le principali tecniche di codifica dell'informazione, l'algebra Booleana e le nozioni di base dei circuiti logici. Dovrà dimostrare la comprensione del ruolo e del comportamento degli elementi fondamentali relativi alla struttura e al funzionamento di un calcolatore elettronico. Lo studente dovrà inoltre essere in grado di tradurre semplici algoritmi nel linguaggio macchina del processore usato come riferimento nell'insegnamento.
Periodo: Primo semestre
Modalità di valutazione: Esame
Giudizio di valutazione: voto verbalizzato in trentesimi
Corso singolo
Questo insegnamento può essere seguito come corso singolo.
Programma e organizzazione didattica
Edizione unica
Responsabile
Periodo
Primo semestre
Programma
FUNZIONAMENTO DEL CALCOLATORE
· Architettura di riferimento. La macchina di Von Neumann. Struttura funzionale delle componenti principali.
· Il linguaggio macchina. Il linguaggio Assembly. Esercizi.
ARCHITETTURA DEL CALCOLATORE
· Principi di funzionamento dei sistemi elettronici digitali. Codifica digitale delle informazioni. Algebra di commutazione, porte logiche, bistabili. Reti combinatorie e sequenziali.
· I principali componenti dell'architettura del microcalcolatore. Circuiti per la realizzazione delle principali funzioni di memoria. Elementi di memoria (ROM, SRAM, DRAM).
· Architettura delle periferiche di I/O (Input/Output). Tipi e caratteristiche dei dispositivi di I/O. Il bus: struttura e modalità di connessione. La gestione software dell'I/O.
· Il processore: progetto del Data Path. Circuiti per le principali operazioni aritmetiche. Progettazione di un modello di ALU.
· Il processore: progetto del Control Path. Progetto di un'unità di controllo. Unità di controllo cablate e microprogrammate.
· Principali direttrici di evoluzione architetturale. Memorie cache. Memoria virtuale. Pipelining.
· Architettura di riferimento. La macchina di Von Neumann. Struttura funzionale delle componenti principali.
· Il linguaggio macchina. Il linguaggio Assembly. Esercizi.
ARCHITETTURA DEL CALCOLATORE
· Principi di funzionamento dei sistemi elettronici digitali. Codifica digitale delle informazioni. Algebra di commutazione, porte logiche, bistabili. Reti combinatorie e sequenziali.
· I principali componenti dell'architettura del microcalcolatore. Circuiti per la realizzazione delle principali funzioni di memoria. Elementi di memoria (ROM, SRAM, DRAM).
· Architettura delle periferiche di I/O (Input/Output). Tipi e caratteristiche dei dispositivi di I/O. Il bus: struttura e modalità di connessione. La gestione software dell'I/O.
· Il processore: progetto del Data Path. Circuiti per le principali operazioni aritmetiche. Progettazione di un modello di ALU.
· Il processore: progetto del Control Path. Progetto di un'unità di controllo. Unità di controllo cablate e microprogrammate.
· Principali direttrici di evoluzione architetturale. Memorie cache. Memoria virtuale. Pipelining.
Prerequisiti
Nessun prerequisito. Si richiede una conoscenza dei concetti base di programmazione e la capacità di leggere un testo in inglese.
Metodi didattici
Lezioni frontali.
Materiale di riferimento
Dispense e slide a cura del docente, disponibili sul sito Ariel dell'insegnamento.
Materiale consigliato
· P.Patel, Y.Patt: Introduction to computing systems: from bits and gates to C and beyond, McGraw Hill.
· V.C.Hamacher, Z.G.Vranesic, S.G.Zaky: Introduzione all'Architettura dei Calcolatori, McGraw Hill.
Materiale consigliato
· P.Patel, Y.Patt: Introduction to computing systems: from bits and gates to C and beyond, McGraw Hill.
· V.C.Hamacher, Z.G.Vranesic, S.G.Zaky: Introduzione all'Architettura dei Calcolatori, McGraw Hill.
Modalità di verifica dell’apprendimento e criteri di valutazione
L'esame consiste in:
* una prova scritta (con valutazione in trentesimi) della durata di 60 minuti, senza possibilità di utilizzo di libri o altro materiale didattico, con 3 domande a risposta aperta mirate a valutare la comprensione e la rielaborazione personale di quanto presentato a lezione, nonché i collegamenti logici tra i diversi aspetti tecnologici, realizzativi e funzionali dell'architettura del calcolatore;
* una prova pratica in laboratorio informatico (che - se corretta - può portare a un incremento massimo di 2 trentesimi della valutazione della prova scritta) della durata di 60 minuti, nella quale è richiesta la realizzazione e la verifica del corretto funzionamento di un programma scritto in linguaggio Assembly LC2, onde verificare la comprensione del funzionamento del calcolatore a livello macchina.
I risultati delle valutazioni saranno pubblicati sul sito Ariel dell'insegnamento.
* una prova scritta (con valutazione in trentesimi) della durata di 60 minuti, senza possibilità di utilizzo di libri o altro materiale didattico, con 3 domande a risposta aperta mirate a valutare la comprensione e la rielaborazione personale di quanto presentato a lezione, nonché i collegamenti logici tra i diversi aspetti tecnologici, realizzativi e funzionali dell'architettura del calcolatore;
* una prova pratica in laboratorio informatico (che - se corretta - può portare a un incremento massimo di 2 trentesimi della valutazione della prova scritta) della durata di 60 minuti, nella quale è richiesta la realizzazione e la verifica del corretto funzionamento di un programma scritto in linguaggio Assembly LC2, onde verificare la comprensione del funzionamento del calcolatore a livello macchina.
I risultati delle valutazioni saranno pubblicati sul sito Ariel dell'insegnamento.
INF/01 - INFORMATICA - CFU: 6
Laboratori: 24 ore
Lezioni: 36 ore
Lezioni: 36 ore
Docente:
Scarabottolo Nello
Turni:
Docente:
Scarabottolo Nello
Introduzione
Docente:
Scarabottolo NelloTurno A
Docente:
Scarabottolo NelloTurno B
Docente:
Scarabottolo NelloDocente/i
Ricevimento:
Previo appuntamento mediante e-mail
DI - via Celoria 18, 20133 Milano