Salta al contenuto principale della pagina

CALCOLATORI ELETTRONICI

CODICE 65938
ANNO ACCADEMICO 2020/2021
CFU
  • 12 cfu al 2° anno di 8719 INGEGNERIA INFORMATICA (L-8) - GENOVA
  • SETTORE SCIENTIFICO DISCIPLINARE ING-INF/05
    LINGUA Italiano
    SEDE
  • GENOVA
  • PERIODO Annuale
    MATERIALE DIDATTICO AULAWEB

    PRESENTAZIONE

    Il corso vuole mettere in grado lo studente di comprendere e descrivere caratteristiche, funzioni e interazioni delle principali componenti di un moderno calcolatore elettronico sia dal punto di vista architetturale che del sistema operativo.

    OBIETTIVI E CONTENUTI

    OBIETTIVI FORMATIVI

    Il corso nella prima parte presenta l'architettura di un calcolatore elettronico, le funzioni delle unità hardware che lo compongono e le interazioni fra di loro; nella seconda parte descrive la struttura dei sistemi operativi, le funzioni dei moduli in cui sono organizzati, gli algoritmi e le strutture software che utilizzano.

    OBIETTIVI FORMATIVI (DETTAGLIO) E RISULTATI DI APPRENDIMENTO

    Parte I – Architettura dei calcolatori

    • Instruction Set Architecture: il caso del processore MIPS.
    • Aritmetic Logic Unit. Architettura interna.
    • Architettura del processore. Pipelining delle istruzioni. Conflitti sui dati e sui controlli. Data forwarding e hazard detection.
    • Unità di controllo. Implementazione cablata. Implementazione microprogrammata
    • Gerarchia di memoria. Memoria cache: principi di funzionamento, elementi di progettazione.
    • Memorie a dischi magnetici. Sistemi RAID. Memorie a dischi ottici.
    • Metodi e strumenti per la valutazione delle prestazioni.

    Parte II – Sistemi Operativi

    • Concetti base, struttura monolitica e a microkernel. Macchine virtuali.
    • Le chiamate a sistema e loro gestione.
    • La gestione dei processi e dei thread. Lo scheduling della CPU.
    • La comunicazione e sincronizzazione fra processi. Corse e regioni critiche. Mutua esclusione e polling attesa. Semafori e loro utilizzo per mutua esclusione e sincronizzazione.
    • La gestione della memoria. Gestione paginata. Gestione segmentata.
    • Il file system. Metodi di implementazione. Problematiche di protezione e condivisione.
    • La gestione dell’input-output. Architettura DMA. Gestione dei dischi. Gestione clock.

    MODALITA' DIDATTICHE

    Lezioni ed esercitazioni

    PROGRAMMA/CONTENUTO

    Parte I – Architettura dei calcolatori

    1. Introduzione al corso. Definizione di architettura dei calcolatori e sua  virtualizzazione e astrazione. Evoluzione e prestazioni dei calcolatori. Progettazione in funzione delle prestazioni.
    2. Instruction Set Architecture: il caso del processore MIPS. Caratteristiche delle istruzioni: elementi, rappresentazione, tipi, numero di indirizzi, progettazione del repertorio di istruzioni. Tipi di operandi. Tipi di operazioni. Modi di indirizzamento. Formati delle istruzioni. Supporto alle procedure. Interazioni con il Compilatore e ottimizzazioni del codice.
    3. Aritmetic Logic Unit. Architettura interna. Rappresentazioni dei numeri reali (IEEE 754). Somma moltiplicazione e divisione di numeri in virgola mobile.
    4. Il processore centrale. Architettura del processore. Organizzazione dei registri. Ciclo di esecuzione delle istruzioni. Pipelining delle istruzioni. Conflitti sui dati e sui controlli. Data forwarding e hazard detection.
    5. Unità di controllo. Fasi di una istruzione e microoperazioni. Controllo del processore: requisiti funzionali, segnali di controllo, organizzazione interna. Implementazione cablata. Implementazione microprogrammata: microistruzioni, unità di controllo microprogrammata.
    6. La memoria primaria. Gerarchia di memoria. Memoria cache: principi di funzionamento, elementi di progettazione (dimensione, funzioni di traduzione, algoritmi di sostituzione, politica di scrittura, dimensionamento delle linee, cache multiple). Tipi memoria (ROM, DRAM e SRAM) e loro organizzazione.
    7. Memorie a dischi magnetici: meccanismi di lettura e scrittura, organizzazione e formattazione dei dati, sistemi RAID. Memorie a dischi ottici.
    8. La valutazione delle prestazioni dei calcolatori. Metodi e strumenti per la valutazione delle prestazioni. Parametri misurabili e loro attendibilità. Interpretazione delle misure di prestazione.

    TESTI/BIBLIOGRAFIA

    Materiale didattica disponibile su Aulaweb.

    Bibliografia: Struttura e progetto dei calcolatori di D. Patterson, J. Hennessy, Zanichelli.

    DOCENTI E COMMISSIONI

    Commissione d'esame

    ALESSANDRO ARMANDO (Presidente)

    MASSIMO MARESCA

    ALESSIO MERLO

    PIERPAOLO BAGLIETTO (Presidente Supplente)

    LEZIONI

    Orari delle lezioni

    CALCOLATORI ELETTRONICI

    ESAMI

    MODALITA' D'ESAME

    Scritto, Orale

    MODALITA' DI ACCERTAMENTO

    capacità di risolvere semplici problemi di progettazione e di programmazione sugli argomenti del corso

    conoscenza degli argomenti trattati a lezione e capacità di analisi e discussione delle tematiche trattate

    Calendario appelli

    Data Ora Luogo Tipologia Note
    29/01/2021 09:30 GENOVA Compitino
    29/01/2021 09:30 GENOVA Scritto
    18/02/2021 09:30 GENOVA Compitino
    18/02/2021 09:30 GENOVA Scritto
    07/04/2021 08:30 GENOVA Compitino
    07/04/2021 08:30 GENOVA Orale
    11/06/2021 15:00 GENOVA Scritto
    09/07/2021 15:00 GENOVA Scritto
    10/09/2021 15:00 GENOVA Scritto