<table border="2"><tbody><tr valign="top"><td width="80%"> ---++ <a name="Corso_di_Architettura_degli_Elab"></a><b><font color="#008f00"> Corso di Architettura degli Elaboratori </font> </b> ---++ <a name="Canale_EO_Prof_ssa_Massini"></a><b><font color="#008f00"> Prof.ssa Massini Dott.ssa Bartolini</font> </b> <!-- *Dal 22 marzo al 4 aprile le lezioni si terranno dalle 14 alle 16 presso il nuovo edificio di Fisica in Aula III.* Qui di seguito trovate un elenco di domande che possono esser utili alla preparazione per l'esame (l'elenco è solo indicativo e non contiene tutte le domande che possono essere fatte all'esame): * [[%ATTACHURL%/DomandeArc2PrimaParte.doc][Domande prima parte]] * [[%ATTACHURL%/DomandeArc2SecondaParte.doc][Domande seconda parte]] Le date di esame dell'appello di settembre sono fissate nei seguenti giorni: * <b><font color="#008000">20 settembre 2007</font></b> - <b>scritto</b> Architetture 2 - <font color="#008000"> ore 10 - Aula I NEC </font> * <b><font color="#008000">21 settembre 2007</font></b> - <b>orale</b> Architetture 2 - <font color="#008000"> ore 10 - studio docente - Via Salaria 113 - III piano </font> --> --- |*Docenti*|*Telefono*|*Orario di ricevimento*|*Studio*|*Email*| | Users.AnnalisaMassini |06-4991 8317| giovedì 14-15 con appuntamento via e-mail|Via Salaria 113 - 3° Piano st. 309|massini AT di.uniroma1.it| | Users.NovellaBartolini |06-4991 .... |--------|Via Salaria 113 - 3° Piano st. 309|bartolini AT di.uniroma1.it| --- ---++ <a name="Orario_delle_lezioni"></a><font color="#008f00">Orario delle lezioni </font> </b> Le lezioni si svolgeranno secondo il seguente orario: |*Docente* |*Orario* |*Aula* | | Users.NovellaBartolini|mar 11:00-13:00|Aula V Matematica | | Users.AnnalisaMassini i | ven 11:00-13:00|Aula V Matematica | ---++ <a name="Programma_del_Corso"></a><font color="#008f00">Programma del Corso </font> </b> Il programma di massima del corso é: ProgrammaArc2 Il programma dettagliato, steso sulla base degli argomenti svolti a lezione, si trova in: * [[http://twiki.dsi.uniroma1.it/twiki/view/Architetture2/ProgrammaArc2AA06-07][ProgrammaArc2AA06-07]] * [[http://twiki.dsi.uniroma1.it/twiki/view/Architetture2/ProgrammaArc2AA05-06][ProgrammaArc2AA05-06]] * [[http://twiki.dsi.uniroma1.it/twiki/view/Architetture2/ProgrammaArc2AA04-05][ProgrammaArc2AA04-05]] * [[http://twiki.dsi.uniroma1.it/twiki/view/Architetture2/ProgrammaArc2AA03-04][ProgrammaArc2AA03-04]] * [[http://twiki.dsi.uniroma1.it/twiki/view/Architetture2/ProgrammaArc2AA02-03][ProgrammaArc2AA02-03]] * [[http://twiki.dsi.uniroma1.it/twiki/view/Architetture2/ProgrammaArc2AA01-02][ProgrammaArc2AA01-02]] . --- ---++ <a name="Libro_di_testo"></a><font color="#008f00">Libro di testo </font> </b> Un buon testo cui fare riferimento è: <font color="#008000">William Stalling "Architettura e organizzazione dei calcolatori", Pearson Addison Wesley</font> --- ---++ <a name="Modalità_esame"></a><font color="#008f00">Modalità esame </font> </b> Per superare l'esame di Architetture degli Elaboratori bisogna: * sostenere lo scritto o gli esoneri (su Assembler e argomenti svolti a lezione) * sostenere l'orale L'orale riguarda <font color="#ff0000">tutti</font> gli argomenti svolti a lezione (vedi argomenti delle lezioni, nella sezione sotto). --- ---++ <a name="Argomento_delle_Lezioni"></a><font color="#008f00">Argomento delle Lezioni </font> </b> *Lezione 15 Marzo 2011* Introduzione al corso. Introduzione storica alle attuali architetture dei calcolatori. Architettura di Von Neumann: descrizione, componenti principali, concetti di base. Descrizione dell'unità aritmetico-logica. <br> *Lezione 18 marzo 2011* Richiami su moduli combinatori (deodificatore, codificatore, transcodificatore, multiplexer, demultiplexer, comparatore, sommatore). Schema di un'ALU molto semplice. Richiami sui registri (memorizzazione, scorrimento, contatori). Descrizione dell'unità di controllo: principali moduli presenti nella CU e loro compiti (Contatore di Programma PC, decodificatore di istruzione, codificatore di comandi). *Lezione 22 marzo 2011* Principali moduli presenti nella CU e loro compiti (SR, SP, registri). Funzionamento dell'unità di controllo. Fasi di esecuzione di un'istruzione. Formato di un'istruzione. Referenziamento implicito e referenziamento esplicito. Numero di indirizzi. Registri ad uso generale. Registri ad uso speciale: Accumulatori, Registri indice e puntatori (PC e SP), Registri di stato (SR), Registro degli errori. Pila o stack: descrizione, uso e funzione; istruzioni PUSH e POP. *Lezione 25 marzo 2011* Interconnessione tra registri. [[%ATTACHURL%/appunti-registri-06.pdf][Appunti sull'interconnessione tra registri]] *Lezione 29 marzo 2011* Esercitazione *Lezione 1 aprile 2011* Classi di istruzioni (trasferimento, aritmetico-logiche, comando, salto). Motivazioni all'introduzione di varie tecniche di indirizzamento. Modalità di indirizzamento, caratteristiche e vantaggi e svantaggi di ognuna: - immediato, - diretto o assoluto, - indiretto, - mediante registro; - indiretto mediante registro. *Lezione 5 aprile 2011* Esercitazione *Lezione 8 aprile 2011* Richiami sulla lezione precedente (classi di istruzioni e modalita di indirizzamenteo). Modalità di indirizzamento per traslazione (o spiazzamento), i tre tipi: relativo, con registro base e con registro indice. Riconoscimento della modalità di indirizzamento da parte della CPU. Considerazioni di progetto sul repertorio di istruzioni: numero di istruzioni, formato istruzione, modalità di indirizzamento, tipi di dato. Diagramma di stato del ciclo istruzioni con fasi dettagliate. Pipeline (o canalizzazione) delle istruzioni: tecnica della pipeline; esempio di pipeline con suddivisione dell'istruzione nelle fasi caricamento, decodifica ed esecuzione. *Lezione 15 aprile 2011* Pipeline (o canalizzazione) delle istruzioni: stadio di pipeline; frequenza di operazione (troughput) e tempo di esecuzione (latenza); durata di un ciclo di clock. Esempio di pipeline con suddivisione dell'istruzione piu' dettagliata e problemi collegati. Conflitti tra istruzioni: classificazione in conflitti strutturali, conflitti tra dati e conflitti di controllo. Conseguenze dei conflitti: interruzione della pipeline e stallo. Conflitti strutturali: esempi e soluzioni (stallo, replica delle risorse). Conflitti tra dati: esempi e soluzioni (metodo dell'anticipazione, stallo). Conflitti di controllo: esempi e soluzioni (interruzione della pipeline, predizione di salto). Interruzioni: definizione e classificazione in interruzioni interne, interruzioni esterne e trappole. *Lezione 29 aprile 2011* Esonero *Lezione 3 maggio 2011* Esercitazione *Lezione 6 maggio 2011* Lezione annullata *Lezione 10 maggio 2011* Interruzioni: azioni eseguite a fronte di una richiesta di interruzione (salvataggio dello stato volatile della macchina in modo hw, salvataggio di registri in modo sw, ritorno dall'interruzione). Interruzioni e ciclo di istruzione in un'architettura sequenziale. Interruzioni multiple: mascheramento delle interruzioni e gestione delle interruzioni in base alle priorità. Riconoscimento del dispositivo esterno che richiede l'interruzione: linee di interruzione multiple, metodo a polling o interrogazione software, metodo vettorizzato o interrogazione hardware con daisy chain e con arbitraggio del bus.L'unità di controllo come macchina sequenziale. Considerazioni sulla realizzazione di un'unità di controllo a logica cablata. Microperazioni e microistruzioni. Unità di controllo a logica microprogrammata: microistruzioni, microprogramma, memoria ROM di controllo e micro-PC, schema di funzionamento. Organizzazione della memoria ROM in micro-subroutine. Microprogrammazione orizzontale e microprogrammazione verticale. Confronto tra realizzazione cablata e microprogrammata. Architetture RISC e CISC: definizione, considerazioni e caratteristiche delle due classi di architetture. *Lezione 13 maggio 2011* Architetture RISC e CISC: definizione, considerazioni e caratteristiche delle due classi di architetture. Definizione di bus. Principali linee in ingresso e in uscita di memoria, modulo di I/O e processore. Caratteristiche ed uso delle linee di dati, linee di indirizzo e linee di controllo. Gerarchie di bus multipli: bus locale, bus di sistema, bus di estensione, bus ad alta velocità. Esempi di organizzazione a bus multipli. Elementi di progettazione di un bus: tipi di bus, arbitraggio, temporizzazione. Principi e motivazioni della gerarchia di memoria. *Lezione 17 maggio 2011* Esercitazione *Lezione 20 maggio 2011* Esercitazione con canale AL - dott. Simone Silvestri *Lezione 24 maggio 2011* Introduzione ai sistemi di 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).Memoria a semiconduttore. RAM dinamica e RAM statica: caratteristiche e differenze. Organizzazione dei moduli di memoria nella memoria principale. Organizzazione dei moduli di memoria nella memoria principale: esempio di organizzazione di una DRAM da 16 Mbit, esempio di organizzazione della memoria one-bit-per-chip. *Lezione 27 maggio 2011* Memoria cache. Caratteristiche e uso, relazione tra linee di cache e blocchi di memoria principale. Aspetti di progetto della memoria cache. La funzione di corrispondenza: corrispondenza diretta, corrispondenza associativa e corrispondenza set-associativa. Algoritmi di rimpiazzamento (LRU, FIFO, LFU, Random); caratteristiche e confronto tra i diversi algoritmi. Politica di scrittura: tecnica "write through" e tecnica "write back", metodo del bus snooping. *Lezione 31 maggio 2011* Esercitazione *Lezione 3 giugno 2011* Esercitazione con canale AL *Lezione 7 giugno 2011* La gestione della memoria da parte del S.O. Partizionamento: partizioni fisse (della stessa dimensione e di dimensioni diverse) e partizionamento dinamico (partizioni di dimensione variabile). Paginazione: caratteristiche, pagine e frame di memoria, tabella della pagine, indirizzi logici e indirizzi fisici. Memoria virtuale: paginazione a richiesta. Motivazioni e conseguenze della memoria virtuale. Organizzazione di supporto alla memoria virtuale: unità di gestione della memoria (MMU) e utilizzazione del DMA. Traduzione dell'indirizzo virtuale in indirizzo fisico, tabella delle pagine, registro base delle pagine. Problemi di progettazione: dimensione delle pagine, pagine da rimuovere, pagine modificate. *Lezione 10 giugno 2011* Moduli di I/O: interfaccia con processore e memoria, interfaccia con dispositivi periferici. Motivazioni e considerazioni sull'uso di moduli di I/O. 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. Schema generale di un dispositivo esterno: componenti e linee in ingresso e in uscita. Tecniche per le operazioni di I/O: 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. Vantaggi e svantaggi nell'uso dell'I/O con interruzioni. Accesso diretto alla memoria (DMA). Utilizzazione del bus da parte del controllore di DMA (cycle stealing). Funzionamento e requisiti di un modulo DMA. *Lezione 14 Giugno 2011* Prestazioni di un calcolatore: tempo di esecuzione ed analisi dei tempi relativi a diverse attività o diverse unità funzionali. Programmi di benchmark per la valutazione di prestazioni. Legge di Amdhal. Accelerazione. [[%ATTACHURL%/DispensaPrestazioni.pdf][Appunti sulle prestazioni]] --- <!-- Esercitazione 17 giugno 2011 Esercizi. --> Lezioni svolte negli anni precedenti: * [[http://twiki.dsi.uniroma1.it/twiki/view/Architetture2/LezioniArc2AA0809][LezioniArc2AA08-09]] * [[http://twiki.dsi.uniroma1.it/twiki/view/Architetture2/LezioniArc2AA0708][LezioniArc2AA07-08]] * [[http://twiki.dsi.uniroma1.it/twiki/view/Architetture2/LezioniArc2AA0607][LezioniArc2AA06-07]] * [[http://twiki.dsi.uniroma1.it/twiki/view/Architetture2/LezioniArc2AA0506][LezioniArc2AA05-06]] * [[http://twiki.dsi.uniroma1.it/twiki/view/Architetture2/LezioniArc2AA04-05][LezioniArc2AA04-05]] * [[http://twiki.dsi.uniroma1.it/twiki/view/Architetture2/LezioniArc2AA03-04][LezioniArc2AA03-04]] * [[http://twiki.dsi.uniroma1.it/twiki/view/Architetture2/LezioniArc2AA02-03][LezioniArc2AA02-03]] * [[http://twiki.dsi.uniroma1.it/twiki/view/Architetture2/LezioniArc2AA01-02][LezioniArc2AA01-02]] --- ---++ <a name="Esercitazioni"></a><font color="#008f00">Esercitazioni </font> </b> Le esercitazioni del corso di Architetture 2, tenute dalla Dott.ssa Novella Bartolini riguardano la programmazione in assembler su una architettura di tipo RISC: il MIPS 2000/3000. A tale scopo viene utilizzato un simulatore SPIM del processore MIPS, che potete istallare sulla vostra macchina (gira sotto Windows, Linux e Mac). Trovate tutte le informazioni alla pagina SimulatoreSpim. Alcune informazioni relative alle esercitazioni possono essere trovate alla pagina <br> <strong> [[http://twiki.di.uniroma1.it/twiki/view/Architetture2/Esercitazioni2009eo][Esercitazioni del corso di Architetture 2, canale E-O]] </strong>. Nella pagina MaterialeAssembler trovate esercizi svolti assegnati negli scorsi anni accademici durante esami ed esercitazioni da vari docenti. --- <!-- ---++ <a name="Domande_e_risposte"></a>Domande e ... risposte La sezione [[http://twiki.dsi.uniroma1.it/twiki/view/Architetture2/DomandeArc2-2004][DomandeArc2-2004]] e' aperta al contributo di tutti gli studenti. Questa pagina e' come una bacheca elettronica su cui tutti gli studenti iscritti e abilitati (seguite le %MAINWEB%.IstruzioniPerLUso) possono lasciare scritte domande cui risponderanno altri studenti o io (Annalisa Massini). --> </td><td width="20%">%INCLUDE{"DateEsami"}% --- %INCLUDE{"AvvisiEsami"}% </td></tr> </tbody></table> * Set ALLOWTOPICCHANGE = Users.DocentiGroup
This topic: Architetture2/MZ
>
WebHome
Topic revision: r178 - 2012-04-03 - AnnalisaMassini
Copyright © 2008-2025 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki?
Send feedback