ARCHITETTURA DEGLI ELABORATORI E LABORATORIO A - EModulo ARCHITETTURA DEGLI ELABORATORI
Anno accademico 2022/2023 - Docente: CORRADO SANTORORisultati di apprendimento attesi
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
Lezioni frontali
Esercitazioni in aula
Prerequisiti richiesti
Nessuno
Frequenza lezioni
Contenuti del corso
- Finalità e organizzazione dello studio. Macchine da calcolo: cenni storici.
- Macchine da calcolo: unità funzionali, architetture.
- Strutture algebriche, algebre di Boole.
- Realizzazione di porte logiche, circuiti sequenziali, flip-flop.
- Architetture RISC e CISC, modi d'indirizzamento, esempi di ISA reali.
- Tipi e formati di istruzioni, esempi di linguaggi assemblativi reali.
- Operazioni di I/O, controllo e servizio delle interruzioni.
- Software di supporto, linguaggi assemblativi e C, sistema operativo.
- Struttura di base del processore, microarchitetture RISC e CISC.
- Processori ad alte prestazioni, tecniche predittive, processori superscalari.
- Dispositivi di memoria principale, DMA, gerarchia delle memorie.
- Circuiti efficienti per l'aritmetica binaria.
Testi di riferimento
- C. Hamacher, Z. Vranesic, S. Zaky & N. Manjikian : Introduzione all'architettura dei calcolatori. Terza edizione, McGraw-Hill Education (Italy), 2013
- Note integrative fornite dal docente durante lo sviluppo delle lezioni.
Programmazione del corso
Argomenti | Riferimenti testi | |
---|---|---|
1 | Finalità e organizzazione dello studio. Macchine da calcolo: cenni storici. | 1: 1.7 |
2 | Macchine da calcolo: unità funzionali, architetture | 1: 1.0-3, 1.6 |
3 | Strutture algebriche, algebre di Boole. | 2 |
4 | Realizzazione di porte logiche, circuiti sequenziali, flip-flop. | 1: A.5-6 |
5 | Architetture RISC e CISC, modi d'indirizzamento, esempi di ISA reali. | 1: 2.0-4, A2.1-2 |
6 | Tipi e formati di istruzioni, esempi di linguaggi assemblativi reali. | 1: 2.8, 2.10.2, A2.4-5 |
7 | Operazioni di I/O, controllo e servizio delle interruzioni. | 1: 3.0-2.5, A3.1 |
8 | Software di supporto, linguaggi assemblativi e C, sistema operativo. | 1: 4.0-9.2 |
9 | Struttura di base del processore, microarchitetture RISC e CISC. | 1: 5.0-4 |
10 | Processori ad alte prestazioni, tecniche predittive, processori superscalari. | 1: 6.6-10 |
11 | Dispositivi di memoria principale, DMA, gerarchia delle memorie. | 1: 8.0-5 |
12 | Circuiti efficienti per l'aritmetica binaria. | 1: 9.2-4, 9.6 |
Verifica dell'apprendimento
Modalità di verifica dell'apprendimento
- Prova pratica
- Prova orale
- Progetto facoltativo
Esempi di domande e/o esercizi frequenti
- Conversione binario/decimale, binario/esadecimale, decimale/esadecimale
- Somma in complemento a 2
- Rappresentazione in virgola mobile
- Analisi di funzioni logiche (da funzione a tabella della verita')
- Sintesi di funzioni logiche (da tabella della verita' a funzione), mappe di Karnaugh
- Circuito sommatore binario
- Circuiti moltiplicatori e divisori
- Allineamento delle word in memoria
- Instruction-Set Architecture
- Data Path
- Pipeline
- Processori CISC, microprogrammazione
- Confronto tra RISC/CISC
- Cache Memory
- Esercizi in assembly sui vettori
- Somma di vettori
- Ricerca all'interno di un vettore
- Filtraggio di un vettore