Docente
|
PICCARDI ARMANDO
(programma)
OBIETTIVI FORMATIVI: 1. Conoscenza delle caratteristiche di funzionamento dei dispositivi all’interno di un calcolatore elettronico. 2. Conoscenza dell’architettura generale dei sistemi a microprocessore e del legame tra hardware e software 3. Utilizzo delle conoscenze acquisite per formulare ipotesi di progetto nell’ambito di sistemi a microprocessore
OBIETTIVI IN TERMINI DI RISULTATI ATTESI: Conoscenze (Descrittore di Dublino n.1): - La conoscenza dei metodi di analisi e sintesi di circuiti logici consentirà allo studente di orientarsi nello studio di sistemi di elaborazione più complessi, di comprenderne il funzionamento e di discuterne le caratteristiche generali. - La conoscenza degli elementi che caratterizzano le architetture dei calcolatori elettronici permetterà agli studenti di riconoscerne i principali punti di forza e di maturare consapevolezza nei confronti del funzionamento dei sistemi di elaborazione che vengono utilizzati. Competenze (Descrittore di Dublino n.2): - Le conoscenze acquisite permetteranno allo studente di analizzare e confrontare criticamente le caratteristiche di diversi sistemi a microprocessore, nonché di proporre una scelta tra diverse soluzioni in relazione a uno specifico utilizzo. - L’utilizzo delle conoscenze acquisite permetterà allo studente di avanzare scelte e ipotesi di progetto riguardanti sistemi di elaborazione a microprocessore, in base a specifiche fornite a priori.
PROGRAMMA DL CORSO (9 moduli):
1. Elementi di Sistemi Digitali Combinatori Rappresentazione binaria, Porte logiche, Implementazione e minimizzazione di funzioni logiche. Circuiti di indirizzamento. Dispositivi programmabili. 2. Elementi di Sistemi Digitali Sequenziali Circuiti per la memorizzazione di bit: latch, flip-flop. Registri. Contatori. Macchina a Stati Finiti. 3. Introduzione ai Calcolatori Elettronici Generalità e cenni storici sui sistemi di calcolo. Calcolatori Elettronici: definizione di datapath e unità di controllo. Istruzioni: esecuzione e legame con l’architettura. Classificazione delle architetture. 4. Architettura dei Calcolatori Elettronici Architettura e istruzioni: banco registri, registri speciali, Stack. Formato istruzioni, indirizzamenti. Pipeline e ottimizzazione delle prestazioni. Principali indici di valutazione delle prestazioni. 5. Progetto di Calcolatori Elettronici Progetto a partire dal Set Istruzioni: datapath, ALU, Unità di controllo. Periferiche e loro gestione. Architetture di Bus. 6. Gerarchia di memoria I principi di località. Gerarchia della memoria. Memorie RAM, SRAM, DRAM. Memoria Cache: definizione, utilizzo e ottimizzazione. Memorie di massa. 7. Il processore Mu0 Generalità. Definizione del Set Istruzioni. Progetto di Datapath, ALU e Unità di Controllo. Configurazione finale e esecuzione delle istruzioni. 8. Microprocessori ARM (Architettura) Generalità sui processori ARM. Componenti Hardware: memoria, banco registri, ALU, Shifter. Supporto hardware per linguaggi ad alto livello. 9. Microprocessori ARM (Set Istruzioni) Set Istruzioni ARM: linguaggio macchina e ARM Assembly. Istruzioni di elaborazione, di trasferimento dati, di controllo di flusso. Il Set Istruzioni Thumb.
PROVA D'ESAME: Prova scritta composta da domande a risposta aperta.
La prova mira a verificare il raggiungimento dei seguenti obiettivi: a) lo studente dovrà dimostrare di saper utilizzare i dispositivi logici elementari per implementare funzioni logiche complesse; b) lo studente dovrà dimostrare di essere in grado di descrivere l’architettura generale e il funzionamento di base di un calcolatore elettronico; c) lo studente dovrà dimostrare di conoscere i vari dispositivi che compongono un sistema a microprocessore e le loro interazioni; d) lo studente dovrà dimostrare di conoscere le principali tecniche di ottimizzazione delle prestazioni e i rispettivi effetti sull’architettura di un calcolatore elettronico; e) lo studente dovrà dimostrare di saper effettuare scelte progettuali nell’ambito dei sistemi a microprocessore sulla base di specifiche fornite.
TESTI CONSIGLIATI: Per le architetture di calcolatori: - David A. Patterson, John L. Hennessy “Struttura e Progetto dei calcolatori”, Zanichelli - Giacomo Bucci “Calcolatori Elettronici - Architettura e organizzazione”, McGraw-Hill Per le architetture ARM: - Stephen B. Furber “ARM System-On-Chip Architecture”, Pearson education
GIORNI DI RICEVIMENTO: Online: Mercoledì ore 18:30-19:30 In sede: Lunedì ore 12:00-13:00
(testi)
Per le architetture di calcolatori: - David A. Patterson, John L. Hennessy “Struttura e Progetto dei calcolatori”, Zanichelli - Giacomo Bucci “Calcolatori Elettronici - Architettura e organizzazione”, McGraw-Hill
Per le architetture ARM: - Stephen B. Furber “ARM System-On-Chip Architecture”, Pearson education
|