Tags:
create new tag
view all tags

Programma dettagliato del corso di Architetture degli Elaboratori 2 - Prof. Annalisa Massini

Richiami su moduli combinatori (linee di ingresso e di uscita, tabella di veritÓ, funzione). Decodificatore, codificatore, transcodificatore. Multiplexer, demultiplexer, mux-demux per la trasmissione delle informazioni. Half-adder, full-adder, sommatore a propagazione di riporto, somma algebrica di numeri rappresentati in complemento a 2. Comparatore logico e comparatore aritmetico. Esempio di unitÓ aritmetico-logica. Trabocco o overflow, riporto.

Richiami su moduli sequenziali. Flip-flop. Contatori sincroni e asincroni e loro diagramma temporale, contatore preselezionabile, uso di contatori. Registri di memorizzazione. Registri a scorrimento, uso di registri a scorrimento per la trasmissione dell'informazione.

Dai registri di memorizzazione alla memoria. Organizzazione con schema tramite bus. Organizzazione a pi¨ dimensioni (aumento del numero di celle). Informazione su pi¨ registri (aumento della lunghezza del dato). Considerazioni sull'interconnessione tramite bus e tramite mux-demux.

Architettura di Von Neumann. La CPU (Central Processing Unit): descrizione, funzione e moduli (UnitÓ Aritmetico-Logica o ALU, UnitÓ di Controllo o CU, registri). Descrizione dell'unitÓ di controllo (Contatore di Programma PC, decodificatore di istruzione codificatore di comandi). Funzionamento dell'unitÓ di controllo.

Fasi di esecuzione di un'istruzione: caricamento, decodifica ed esecuzione. Classi di istruzioni. Osservazioni sull'esecuzione di un'istruzione e registri coinvolti: i registri non essenziali MAR, MBR, IR; uno schema pi¨ dettagliato del ciclo di esecuzione di un'istruzione.

Registri ad uso generale e registri ad uso speciale: accumulatori, registri indice e puntatori, registri di condizione e registri di stato.

Realizzazione dell'unitÓ di controllo. UnitÓ di controllo a logica cablata. UnitÓ di controllo a logica microprogrammata: schema di funzionamento, organizzazione della memoria ROM di controllo. Microprogrammazione orizzontale e microprogrammazione verticale. Moduli interni di un'unitÓ di controllo microprogrammata e schema dettagliato di funzionamento. Vantaggi e svantaggi della microprogrammazione.

Caratteristiche delle istruzioni macchina. ModalitÓ di indirizzamento: immediato, assoluto, indiretto, mediante registro, indiretto mediante registro,mediante traslazione o spiazzamento.

Architetture RISC e CISC: considerazioni e caratteristiche delle due classi di architetture. Esempio di formato di istruzione di architettura RISC: PowerPC (istruzione aritmetica, istruzione aritmetica con operando immediato e istruzione caricamento memorizzazione dei registri). Esempio di formato di istruzione di architettura CISC: x86.

Una classificazione delle architetture: modello a stack, modello memoria-memoria, modello registri-memoria, modello registro-registro. Ordinamento dei dati in memoria: Little-Endian e Big-Endian. Allineamento dei dati in memoria.

Linguaggio macchina e linguaggio assembler. Assemblatori, collegatori e compilatori. PIC (position Independent Code). Vantaggi e svantaggi del linguaggio assemblatore. Differenze tra linguaggio assembler e linguaggi ad alto livello. Formato di uno statement in linguaggio assembler e significato dei campi. Parole riservate. Direttive.

Canalizzazione o pipeline delle istruzioni. Stadio di pipeline. Frequenza delle istruzioni. Vantaggi e situazioni critiche della pipeline. Considerazioni di progettazione della pipeline.

Cenni sui protocolli di comunicazione: protocolli sincroni, protocolli asincroni e protocolli asincroni basati su interruzioni. Interruzioni: definizione e classificazione in interruzioni interne, interruzioni esterne e trappole. Caratteristiche e differenze tra le diverse classi di interruzione. Interruzioni e ciclo di istruzione: in un'architettura sequenziale. Salvataggio di registri e ritorno dall'interruzione. Interruzioni multiple: mascheramento delle interruzioni e gestione delle interruzione in base alle prioritÓ.

Moduli di I/O: interfaccia con processore e memoria, interfaccia con dispositivi periferici. Motivazioni e considerazioni sull'uso di moduli di I/O. Schema generale di un dispositivo esterno: componenti e linee in ingresso e in uscita. Funzioni e requisiti di un modulo di I/O: controllo e temporizzazione, comunicazione con il processore, comunicazione con i dispositivi periferici, bufferizzazione dei dati, rilevamento degli errori. Struttura generale di un modulo di I/O: componenti e linee in ingresso e in uscita.

Tecniche per operazioni di I/O: definizione e considerazioni per I/O programmato, I/O con interruzioni, Accesso Diretto alla Memoria (DMA). I/O programmato: azioni del processore e azioni del modulo di I/O; vantaggi e svantaggi nell'uso dell'I/O programmato. I/O con interruzioni: esempio di lettura dal punto di vista del modulo di I/O e dal punto di vista del processore. Eventi hw ed eventi sw nella gestione delle interruzioni. Tecniche per il riconoscimento del dispositivo che lancia l'interruzione: - linee di interruzione multiple, - interrogazione sw (metodo a polling), interrogazione hw vettorizzata (daisy chain), arbitraggio del bus. Accesso diretto alla memoria (DMA): componenti di un modulo DMA; organizzazione di una operazione di lettura/scrittura. Considerazioni e conclusioni; evoluzione delle funzionalitÓ di I/O. Interfaccia tra periferica e modulo di I/O: seriale e parallela; punto-punto e a punti multipli.

La memoria. Caratteristiche dei sistemi di memoria: locazione, capacitÓ, unitÓ di trasferimento, metodo di accesso (sequenziale, diretto, casuale, associativo), prestazioni (tempo di accesso, tempo di ciclo di memoria, velocitÓ di trasferimento), tipo fisico (a semiconduttore, superficie magnetica, di tipo ottico), caratteristiche fisiche (volatile, non volatile), organizzazione.

La gerarchia di memoria. Motivazioni all'introduzione della gerarchia di memoria.

Memoria principale. Memoria a semiconduttore. RAM statica e RAM dinamica e loro differenze. Read Only Memory: ROM, PROM, EPROM, EEPROM e Memoria flash. Organizzazione dellla memoria.

Memoria cache. Interfaccia memoria cache - memoria principale. Elementi di progettazione della cache. Dimensione della cache. Funzione di corrispondenza. Corrispondenza diretta: caratteristiche, vantaggi e svantaggi. Corrispondenza associativa: caratteristiche, vantaggi e svantaggi. Corrispondenza set-associativa: caratteristiche, vantaggi e svantaggi. Algoritmo di rimpiazzamento: LRU, FIFO, LFU, Random. Caratteristiche e confronto tra i diversi algoritmi. Politica di scrittura: tecnica "write through" e tecnica "write back". Dimensione di una linea/blocco. Numero di cache. Organizzazione a due livelli. Cache unificate e divise.

Memoria virtuale. Indirizzi virtuali e logici. UnitÓ di gestione della memoria (MMU). Schema di organizzazione e connessione per ottenere la memoria virtuale. Traduzione dell'indirizzo, tabella delle pagine, registro base delle pagine. Errore di pagina, pagine da rimuovere, pagine modificate.

Memoria esterna. Disco magnetico. Testina di lettura/scrittura, meccanismo di scrittura, meccanismo di lettura. Organizzazione dei dati su disco. Dischi Winchester. Floppy disk. Dischi RAID. Parametri di valutazione delle prestazioni. CD-ROM. Nastri magnetici.

Cenni su terminali video (tastiera/monitor).

-- AnnalisaMassini - 13 Jun 2002

Topic revision: r1 - 2002-06-13 - AnnalisaMassini






 
Questo sito usa cookies, usandolo ne accettate la presenza. (CookiePolicy)
Torna al Dipartimento di Informatica
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2022 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback