Architettura degli elaboratori

A.A. 2023/2024
6
Crediti massimi
48
Ore totali
SSD
INF/01
Lingua
Italiano
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 dovrà essere in grado di 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.
Corso singolo

Questo insegnamento può essere seguito come corso singolo.

Programma e organizzazione didattica

Edizione unica

Responsabile
Periodo
Secondo quadrimestre

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.
Prerequisiti
Nessun prerequisito. Si richiede una conoscenza dei concetti base di programmazione e la capacità di leggere un testo in inglese.
Metodi didattici
Videolezioni disponibili sulla piattaforma web del corso di laurea.
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.
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.
INF/01 - INFORMATICA - CFU: 6
Lezioni: 48 ore
Docente/i
Ricevimento:
Previo appuntamento mediante e-mail
DI - via Celoria 18, 20133 Milano