Architettura degli Elaboratori I E

Anno Accademico 2000/2001

Docente: Laura Ricci

Finalità

Il corso fornisce le basi concettuali e metodologiche per studiare e valutare l'architettura degli elaboratori, nonchè per affrontare il progetto di sistemi di elaborazione ai livelli firmware ed assembler. L'approccio seguito tende a stabilire un giusto bilanciamento tra esigenze formative e necessità di conoscere le caratteristiche dei principali sistemi esistenti e loro tendenze. Le basi metodologiche sono rappresentate dai modelli di microprogrammazione e di strutturazione a livello firmware, riducendo al minimo indispensabile la trattazione delle reti logiche. Su queste basi viene descritta l'architettura del processore centrale, della memoria e delle unità di I/O, ai livelli firmware ed assembler, fornendo infine primi elementi per la conoscenze di aspetti avanzati quali Risc vs Cisc, gestione della memoria e caching e pipelining.

Programma svolto

Introduzione agli elaboratori

Traduzione di programmi ad alto livello, livelli di macchina, istruzioni macchina, unità base di un elaboratore. Concetto di memoria e sua realizzazione. Concetto di programma memorizzato.Esecuzione delle istruzioni. Trasferimenti tra registri. Comunicazioni tra processore e memoria.

Linguaggio macchina

Istruzioni e modi di indirizzamento. Loro motivazioni ed utilizzazioni. Registri generali. Set di istruzioni MIPS. (PH3.1,3.2,3.3,3.4,
3.5,3.8,3.9).Cenni ad altri set di istruzioni esistenti e differenze.(PH 3.15)

Rappresentazione della informazione

Rappresentazione dei numeri; rappresentazione degli interi positivi e relativi; complemento a 2; operazioni in complemento a 2; rappresentazione in virgola mobile (A1, PH 4.1,4.2, 4.3, 4.4, 4.5 escluso: una ALU a 32 bits su misura per il MIPS, 4.8 pp235-240)

Reti logiche

Comportamento esterno. Differenza tra reti combinatorie (funzioni pure) e reti sequenziali (concetto di stato interno).(VI cap2)

Reti combinatorie : richiami di Algebra di Boole, tabella di verità, (A2)componenti elementari, sintesi senza minimizzazione. Concetto di segnali a livelli e ad impulsi. Ritardi temporali. Reti standard : decodificatore, commutatore, selezionatore, addizionatore, shifter, ALU; valutazione dei loro tempi di ritardo.(VI cap2.1)

Reti sequenziali : concetto di automa a stati finiti. Memoria e registri. Modello strutturale con rete combinatoria ed elemento di memoria. Clock e ciclo di clock. Modelli matematici di Moore e di Mealy. (VI cap.2.2)

Livello firmware e microprogrammazione

La microprogrammazione come strumento metodologico di descrizione e di progetto. Modello PC-PO. Determinazione del ciclo di clock. Dal microprogramma alla struttura della PO usando i componenti logici elementari. Componenti logici di tipo memoria.(VI cap 3.1,3.2,3.3,3.4,3.5,3.6,3.7,3.8,3.9,3.10)

Introduzione del Bus sincrono. Parallelismo a livello di microistruzioni. Microlinguaggi e modelli. Comunicazione tra unità: collegamenti, interfacce a livelli e transizione di livello, bus asincrono. Arbitri principali. (VI cap. 4.1,4.2,4.3,4.5.PH 8.4)

Processore centrale

Implementazione delle istruzioni MIPS-like. Schemi di PO :orizzontale, verticale, cenni ai possibili compromessi.
Uso di unità aritmetiche più potenti : moltiplicatore-divisore; loro impatto sulla performance. Uso di coprocessori esterni.
PC microprogrammata (modelli PS e TS). (VIII cap 7)
Performance e sua valutazione.(VIII 7.3, PH 2.1,2.2,2.3,2.4)

Ingresso-uscita

Unità di I/O. Modelli architetturali: controllo di programma, DMA, memory mapped I/O, comunicazioni esplicite.
Interruzioni: strutture e trattamento.( PH 8 8.1,8.2,8.4,8.5,8.6,8.7, V III 4, V III cap. 9)

Gerarchie di memoria

Elementi essenziali su gestione della memoria, MMU, cache. Organizzazione della cache: metodo diretto,
completamente associativo, associativo su insiemi.(PH7.17.2,escluso gestione dei fallimenti di accesso alla cache,7.3)

 

Materiale didattico

Riferimenti

[PH] D.A. Patterson, J. Hennessy, "Struttura, organizzazione e progetto dei calcolatori: interdipendenza tra hardware e software" Jackson Libri, 1999.

[VI] M.Vanneschi "Architettura degli elaboratori I",Parte I,a.a.2000-2001, Servizio Editoriale Universitario di Pisa.

[VIII] M.Vanneschi "Architettura degli elaboratori I",Parte III, a.a.2000-2001, Servizio Editoriale Universitario di Pisa.

[A1]S . Antonelli "Rappresentazione dell' informazione"

[A2] S.Antonelli "Le algebre booleane" appunti distribuiti a lezione

 

Testi di consultazione

G.B. Gerace, La Logica dei Sistemi di Elaborazione, Editori Riuniti. (solo in biblioteca)

F. Baiardi, A. Tomasi, M. Vanneschi, Architettura dei Sistemi di Elaborazione, volume 1. Franco Angeli.

A.S. Tanenbaum, Architettura del Computer : un Approccio Strutturale, Jackson.

F. Luccio, L. Pagli, Reti Logiche e Calcolatore, Bollati Boringhieri.

D.P. Bovet, Introduzione all Architettura dei Calcolatori, Zanichelli.

 

Modalità di esame

Prova scritta e prova orale. La prova scritta può essere sostituita da 2 compitini.