Salta al contenuto principale
CODICE 111454
ANNO ACCADEMICO 2023/2024
CFU
SETTORE SCIENTIFICO DISCIPLINARE INF/01
SEDE
  • GENOVA
PERIODO 2° Semestre
FRAZIONAMENTI Questo insegnamento è diviso nelle seguenti frazioni:
  • A
  • B
  • MODULI Questo insegnamento è un modulo di:
    MATERIALE DIDATTICO AULAWEB

    OBIETTIVI E CONTENUTI

    OBIETTIVI FORMATIVI

    Comprendere le prestazioni dei programmi sequenziali alla luce delle nozioni acquisite relative al funzionamento delle attuali architetture per quanto riguarda il processore, le gerarchie di memoria, e la cooperazione tra hardware e software in generale. Comprendere l'architettura delle GPU, con riferimento agli ambiti applicativi e alle prestazioni.

    OBIETTIVI FORMATIVI (DETTAGLIO) E RISULTATI DI APPRENDIMENTO

    Lo studente acquisirà le competenze necessarie per comprendere come i programmi di alto livello sono tradotti nel linguaggio proprio dei calcolatori. 

    La scelta dell'architettura dell'insieme di istruzioni è un aspetto chiave. Si è scelto di adottrae l'archiettura RISC-V in quanto offre un modello semplice, elegante, moderno, open source e di crescente interesse anche in ambito non accademico. 
    Alla fine del corso lo studente sarà in gradi di:

    • scrivere ed interpretare semplici programmi nell'assembler del RISC-V;
    • comprendere come un calcolatore traduce un linguaggio di alto livello in linguaggio macchina;
    • analizzare le prestazioni dei programmi considerando aspetti quali l'utilizzo efficiente della cache, della vettorizzazione e della programmazione multithreading;
    • utilizzare un compilatore in modo efficace.

    MODALITA' DIDATTICHE

    Lezioni frontali, esercitazioni in classe, assignment in itinere con consegna e valutazione.
    Verranno utilizzati instant polling per autovalutazione e didattica per gruppi e casi/problemi.

    PROGRAMMA/CONTENUTO

    Il processore RISC-V

    • RISC-V ISA
    • Rappresentazione delle istruzioni nel calcolatore
    • Le principali istruzioni
    • Operandi ed indirizzi
    • Traduzione e avvio di un programma (assembler, linker, loader)

    Gerarchia delle memorie

    • Organizzazione delle memorie, località temporale e spaziale
    • Principi base e prestazioni delle memorie cache

    Processori moderni 

    • Pipelining ed hazards nell'architettura Risc-V
    • Parallelismo a livello di parola
    • Parallelismo a livello di istruzioni
    • Processori vettoriali
    • Multithreading hardware
    • Introduzione alle GPU

    TESTI/BIBLIOGRAFIA

    David A Patterson John L Hennessy
    Struttura e progetto dei calcolatori
    Progettare con RISC-V
    Seconda edizione italiana
    ISBN: 9788808199669

    Capitoli 2, 4 (4.5-4.10), 5 (5.6-5.10), 6 (6.1-6.6) Appendice C

    DOCENTI E COMMISSIONI

    Commissione d'esame

    GIORGIO DELZANNO (Presidente)

    MATTEO DELL'AMICO

    DANIELE D'AGOSTINO (Presidente Supplente)

    LEZIONI

    INIZIO LEZIONI

    In accordo con il calendario didattico approvato dal Consiglio dei Corsi di Studio in Informatica

    Orari delle lezioni

    L'orario di questo insegnamento è consultabile all'indirizzo: Portale EasyAcademy

    ESAMI

    Calendario appelli

    Data appello Orario Luogo Tipologia Note
    15/01/2024 10:00 GENOVA Scritto
    06/02/2024 10:00 GENOVA Scritto
    06/06/2024 10:00 GENOVA Scritto
    03/07/2024 10:00 GENOVA Scritto
    18/07/2024 09:00 GENOVA Scritto
    10/09/2024 10:00 GENOVA Scritto