ARCHITETTURA DEGLI ELABORATORI E LABORATORIO M - Z

Anno accademico 2021/2022 - 1° anno - Curriculum Elaborazione Dati e Applicazioni e Curriculum Sistemi e Applicazioni
Docenti Crediti: 9
SSD: INF/01 - Informatica
Organizzazione didattica: 225 ore d'impegno totale, 153 di studio individuale, 36 di lezione frontale, 24 di esercitazione, 12 di laboratorio
Semestre:

Obiettivi formativi

  • ARCHITETTURA DEGLI ELABORATORI

    Conoscenza e capacità di comprensione: acquisire conoscenza e capacità di comprensione dei concetti fondamentali delle principali architetture hardware dei sistemi di calcolo e dei principi metodologici che ne ispirano lo sviluppo, nella prospettiva storica della loro evoluzione.

    Capacità di applicare conoscenza e comprensione: acquisire capacità di risolvere problemi di progettazione di sistemi di calcolo, cimentandosi con esercizi proposti a tal fine, e di adoperare, progettare e realizzare strumenti software, quali simulatori ed interpreti, per macchine astratte relative ai livelli più bassi della organizzazione dei sistemi di calcolo.

    Autonomia di giudizio: essere in grado di confrontare e valutare la qualità di soluzioni a problemi di progetto di sistemi di calcolo.

    Abilità comunicative: acquisire abilità comunicativa e proprietà di linguaggio utili alla comunicazione di problematiche inerenti il funzionamento, la progettazione, la realizzazione e la valutazione di sistemi di calcolo.

    Capacità di apprendimento: sviluppare la capacita di capire le caratteristiche innovative e migliorative dell'hardware futuro.

  • LABORATORIO

    Conoscenza e capacità di comprensione: acquisire conoscenza e capacità di comprensione dei concetti fondamentali di architettura dei sistemi di calcolo e dei principi metodologici che ne ispirano lo sviluppo, nella prospettiva storica della loro evoluzione;

    Capacità di applicare conoscenza e comprensione: acquisire capacità di risolvere problemi di progetto di sistemi di calcolo, cimentandosi con esercizi proposti a tal fine, e di adoperare, progettare e realizzare strumenti software, quali simulatori ed interpreti, per macchine astratte relative ai livelli più bassi della organizzazione dei sistemi di calcolo.

    Autonomia di giudizio: essere in grado di confrontare e valutare la qualità di soluzioni a problemi di progetto di sistemi di calcolo.

    Abilità comunicative: acquisire abilità comunicativa e proprietà di linguaggio utili alla comunicazione di problematiche inerenti il funzionamento, la progettazione, la realizzazione e la valutazione di sistemi di calcolo, anche con interlocutori non esperti.

    Capacità di apprendimento: sviluppare capacita di adattamento delle proprie conoscenze alla rapida evoluzione della disciplina e di aggiomamento mediante la consultazione di fonti specialistiche del settore.


Modalità di svolgimento dell'insegnamento

  • ARCHITETTURA DEGLI ELABORATORI

    Lezioni frontali, esempi e esercizi svolti in aula.

    Qualora l'insegnamento venisse impartito in modalità mista o a distanza potranno essere introdotte le necessarie variazioni rispetto a quanto dichiarato in precedenza, al fine di rispettare il programma previsto e riportato nel syllabus.

  • LABORATORIO
    • Lezioni frontali
    • Esercitazioni in aula

Prerequisiti richiesti

  • ARCHITETTURA DEGLI ELABORATORI

    Nessub prerequisito richiesto.

  • LABORATORIO

    Nessun prerequisito è richiesto.


Frequenza lezioni

  • ARCHITETTURA DEGLI ELABORATORI

    Per una piena comprensione degli argomenti del corso e delle tecniche presentate, la frequenza delle lezioni e delle esercitazioni è fortemente consigliata.

  • LABORATORIO

    Per una piena comprensione degli argomenti del corso e delle tecniche presentate, la frequenza delle lezioni e delle esercitazioni è fortemente consigliata.


Contenuti del corso

  • ARCHITETTURA DEGLI ELABORATORI
    1. Finalità e organizzazione dello studio. Macchine da calcolo: cenni storici.
    2. Macchine da calcolo: unità funzionali, architetture.
    3. Strutture algebriche, algebre di Boole.
    4. Realizzazione di porte logiche, circuiti sequenziali, flip-flop.
    5. Architetture RISC e CISC, modi d'indirizzamento, esempi di ISA reali.
    6. Tipi e formati di istruzioni, esempi di linguaggi assemblativi reali.
    7. Operazioni di I/O, controllo e servizio delle interruzioni.
    8. Software di supporto, linguaggi assemblativi e C, sistema operativo.
    9. Struttura di base del processore, microarchitetture RISC e CISC.
    10. Processori ad alte prestazioni, tecniche predittive, processori superscalari.
    11. Dispositivi di memoria principale, DMA, gerarchia delle memorie, memoria cache.
    12. Circuiti efficienti per l'aritmetica binaria.
  • LABORATORIO
    1. Esercitazione su sistema binario e sui sistemi di rappresentazione
    2. Esercitazione su analisi e sintesi di funzioni logiche
    3. Esercitazione su circuiti sequenziali
    4. Esempio di ALU
    5. Esercitazione programmi assembly calcolo prodotto scalare e ricerca minimo
    6. Esercitazione di programmazione assembly per chiamata a sottoprogramma
    7. Esercitazione sulla struttura dei processori RISC e CISC
    8. Esercitazione sul pipelining
    9. Esercitazione interfacce di I/O
    10. Esercitazione Circuiti aritmetici

    Qualora l'insegnamento venisse impartito in modalità mista o a distanza potranno essere introdotte le necessarie variazioni rispetto a quanto dichiarato in precedenza, al fine di rispettare il programma previsto e riportato nel syllabus.


Testi di riferimento

  • ARCHITETTURA DEGLI ELABORATORI

    C. Hamacher, Z. Vranesic, S. Zaky & N. Manjikian : Introduzione all'architettura dei calcolatori. Terza edizione, McGraw-Hill Education (Italy), 2013

  • LABORATORIO
    1. C. Hamacher, Z. Vranesic, S. Zaky & N. Manjikian : Introduzione all'architettura dei calcolatori. Terza edizione, McGraw-Hill Education (Italy), 2013
    2. Note integrative fornite dal docente durante lo sviluppo delle lezioni.

Programmazione del corso

ARCHITETTURA DEGLI ELABORATORI
 ArgomentiRiferimenti testi
1Finalità e organizzazione dello studio. Macchine da calcolo: cenni storici.C. 1 
2Macchine da calcolo: unità funzionali, architettureC. 1 
3Strutture algebriche, algebre di Boole.C. 2 
4Realizzazione di porte logiche, circuiti sequenziali, flip-flop.
5Architetture RISC e CISC, modi d'indirizzamentoC. 2 
6Tipi e formati di istruzioni, esempi di linguaggi assemblativiC.2 
7Operazioni di I/O, controllo e servizio delle interruzioni.C. 3 
8Software di supporto, linguaggi assemblativi e C, sistema operativoC. 4 
9Struttura di base del processore, microarchitetture RISC e CISCC. 5 
10Processori ad alte prestazioni, tecniche predittive, processori superscalariC. 6 
11Dispositivi di memoria principale, DMA, gerarchia delle memorie, cacheC. 8 
12Circuiti efficienti per l'aritmetica binariaC. 9 
LABORATORIO
 ArgomentiRiferimenti testi
1Esercitazione su sistema binario e sui sistemi di rappresentazioneCapitolo 1 (1.4-1.5) 
2Esercitazione su analisi e sintesi di funzioni logicheAppendice A (A.1-A4) 
3Esercitazione su circuiti sequenzialiAppendice A (A.5-A.10) 
4Esempio di ALUCapitolo 9 (9.1) 
5Esercitazione programmi assembly calcolo prodotto scalare e ricerca minimoCapitolo 2 (2.1-2.5, 2.11, App 2.1-2.2(ARM)) 
6Esercitazione di programmazione assembly per chiamata a sottoprogrammaCapitolo 2 (2.6-2.10, 2.12-2.13 App 2.3-2.4(ARM)) 
7Esercitazione sulla struttura dei processori RISC e CISCCapitolo 5 
8Esercitazione sul pipeliningCapitolo 6 
9Esercitazione interfacce di I/OCapitolo 7 
10Esercitazione Circuiti aritmeticiCapitolo 9 (9.1-9.4, 9.6-9.8) 

Verifica dell'apprendimento

Modalità di verifica dell'apprendimento

  • ARCHITETTURA DEGLI ELABORATORI

    Prova scritta e colloquio orale.
    Opzionale lo svolgimento e la presentazione di un progetto.

    La verifica dell’apprendimento potrà essere effettuata anche per via telematica, qualora le condizioni lo dovessero richiedere.

  • LABORATORIO
      1. prova scritta
      2. colloquio orale di convalida
      3. presentazione e discussione di un progetto (opzionale)

    La verifica dell’apprendimento potrà essere effettuata anche per via telematica, qualora le condizioni lo dovessero richiedere.


Esempi di domande e/o esercizi frequenti

  • ARCHITETTURA DEGLI ELABORATORI

    Conversioni di numeri in basi decimale, binario e esadecimale

    Sintesi di funzioni logiche

    Tabelle di verità di porte logiche

    Istruzioni assembly, e programmi elementari

    Esecuzione di istruzioni assembly tramite percorso dati

    Organizzazione della memoria cache

    Esecuzione in pipeline e problematiche

  • LABORATORIO

    Home page del Docente: https://nigno17.github.io/