|
Scopi
|
|
Il corso si propone di fornire i concetti di base delle architetture dei sistemi di elaborazione, analizzandone l'organizzazione interna e descrivendo i principi di funzionamento delle CPU, delle memorie e delle strutture di interconnessione e di ingresso/uscita. I concetti vengono esposti in modo del tutto generale; quando necessario si fa diretto riferimento all’architettura dei processori INTEL.
|
|
Contenuti
|
|
- Definizione di Sistema di Elaborazione delle Informazioni
- Storia e introduzione alla evoluzione
- Tecniche di descrizione
- Cenni sulle Metodologie di Progetto: livello gate, livello register, livello system
- Livello RTL, moduli, elementi di base
- Architettura a livello RTL con esempi
- Architettura: Unità di Controllo
- Esempi di unità di controllo
- Unità di controllo a microprogramma
- I Processori:
- L’architettura di un semplice calcolatore
- Modello a livello RTL
- Introduzione alle architetture più complesse.Pipeline.
- Introduzione all’assembler con esempi semplici
- Le Memorie:
- generalità, memorie a semiconduttore (ROM e RAM)
- memorie secondarie:tecnologie
- cenni alle gerarchie di memoria
- Principio di località e concetti generali
- Memoria virtuale(segmentie pagine)
- Memoria cache (tecniche di accesso, politiche di sostituzione, …)
- L’architettura x86
- Cenni di storia ed evoluzione
- L’architettura del processore
- Organizzazione della memoria
- Architettura del sistema
- Introduzione all’assembler dell’architettura x86
- Sintassi. Operazioni e pseudo-operazioni.
- Modi di indirizzamento
- Esempi
- Sottosistema di ingresso uscita.
- Gestione a controllo di programma
- Gestione sotto controllo di interrupt
- DMA
- Bus di sistema
- Arbitraggio,
- Organizzazione nei moderni personal computer
- Esempi
- Cenni ai processori RISC e superscalari
Pentium Pro ed evoluzioni
|
|
Testi
|
|
· G.BUCCI, Architettura dei calcolatori elettronici, McGraw-Hill, 2001. · J. P. HAYES, Computer Architecture and Organization, McGraw-Hill, New York, 1998. · N.CARTER, Architetture degli elaboratori, McGraw-Hill, 2002
|
|
Materiali di supporto
|
|
E’ disponibili un sito contenenete l’analisi comparativa fra i processori più recenti.
|
|
Prerequisiti
|
|
Sono considerati propedeutici i corsi di Fondamenti di Informatica I e Fondamenti di Informatica II.
|
|
Esercitazioni
|
|
Sono disponibili esercizi risolti sui siti dei docenti o su altri ad essi collegati.
|
|
Titoli delle videolezioni
|
| 1 | I calcolatori elettronici: un poco di storia | Gianni Conte | | 2 | Modelli e tecniche di descrizione | Gianni Conte | | 3 | Il livello RTL: Struttura | Gianni Conte | | 4 | Il livello RTL: Comportamento | Gianni Conte | | 5 | Percorsi di dati e unita' di controllo | Gianni Conte | | 6 | Unità di controllo microprogrammata | Gianni Conte | | 7 | Moltiplicatore binario e architettura di base della CPU | Gianni Conte | | 8 | Architettura RTL di una semplice CPU | Gianni Conte | | 9 | Introduzione al linguaggio macchina | Gianni Conte | | 10 | Modi di indirizzamento | Gianni Conte | | 11 | Tecnologia delle memorie | Gianni Conte | | 12 | Gerarchie di memoria e principio di località | Gianni Conte | | 13 | Memoria Cache | Gianni Conte | | 14 | Architettura X86 | Giacomo Bucci | | 15 | Architettura X86: accesso alla memoria | Giacomo Bucci | | 16 | Architettura X86: repertorio istruzioni | Giacomo Bucci | | 17 | Assembler X86: sintassi | Giacomo Bucci | | 18 | Assembler X86: programmi | Giacomo Bucci | | 19 | Sottosistema di ingresso/uscita: interfacce | Giacomo Bucci | | 20 | Sottosistema di ingresso/uscita: interruzioni | Giacomo Bucci | | 21 | Sottosistema di ingresso/uscita: interruzioni multiple | Giacomo Bucci | | 22 | BUS di sistema | Giacomo Bucci | | 23 | Processi RISC e superscalari : motivazioni | Giacomo Bucci | | 24 | Processi RISC e superscalari : le pipeline | Giacomo Bucci | | 25 | Processi RISC e superscalari : architetture superscalari | Giacomo Bucci | | 26 | Processi RISC e superscalari : esecuzioni fuori ordine | Giacomo Bucci |
|