Progetto di una memoria cache per il processore DLX Andrea Grandi Filippo Malaguti Massimiliano Mattetti Gabriele Morlini Thomas Ricci Progetto di Calcolatori.

Slides:



Advertisements
Presentazioni simili
Cassaforte asincrona SR
Advertisements

Programmazione assembler
Classe III A A.s – 2011 Sistemi di Elaborazione e Trasmissione dell’Informazione 4 ore settimanali (2 laboratorio) Docenti Prof. Alberto Ferrari.
Università degli Studi di Napoli Federico II Facoltà di Ingegneria Dipartimento di Informatica e Sistemistica Corso di Sistemi ad elevate prestazioni –
Algoritmi e Programmazione
Architettura di un sistema informatico Hardware
Ottimizzazione statica del codice per processori pipelined Canella Matteo & Miglioli Filippo.
Realizzazione del file system
Memoria virtuale Memoria virtuale – separazione della memoria logica dell’utente dalla memoria fisica. Solo alcune parti di un programma devono trovarsi.
Realizzazione del file system
L3 L6 L2 L7 L1 L8 L4 L9 L5 Lt2 Lt4 Lt6 Lt8 Lt1 Lt3 Lt5 Lt7Lt9 Lt10 Ricostruzione topografica della volta con posizionamento dei profili radar.
Algebra Lineare. Algebra Lineare Esercizio Dato il vettore a := (3, 2, 5) , scrivere l’equazione cartesiana del piano  passante per.
Informatica di base A.A. 2003/2004 Algoritmi e programmi
Alcuni esercizi e domande per il compitino quali sono le parti principali dellarchitettura di von Neumann? citare le caratteristiche salienti della RAM.
Introduzione alla fisica
Introduzione alla fisica
Microprogrammazione Codice operativo.
Caratteristiche principali dell’architettura del processore MIPS
CALCOLATORI ELETTRONICI
Caratteristiche principali dell’architettura del processore MIPS
Esercizio Esame Un processore PD32 è interfacciato a due periferiche di input A e B, e ad un DMAC il quale puo’ gestire trasferimento di dati da B verso.
Schema di principio del SCA di una MMU Memory Management Unit
Criticità sui dati Consideriamo una sequenza di 5 istruzioni
Criticità sui dati (1° esempio)
Caratteristiche principali dell’architettura del processore MIPS
Criticità sui dati (esempio da fare on line)
Fattorie Coltivazioni Postazioni militari Residenza reale (?) Area sacra Yal… Yal…\Ad-Durayb. Città e comprensorio territoriale.
Com’è fatto un elaboratore?
Codifica di algoritmi linguaggio macchina vs programmazione strutturata Lab Programmazione - turno /2006.
CAPITOLO 7.
Gestione della memoria logica e fisica degli elaboratori x86
Architettura degli elaboratori
UNIVERSITA' DEGLI STUDI DI BOLOGNA FACOLTA' DI INGEGNERIA Corso di Laurea Magistrale in Ingegneria Informatica Progetto di Calcolatori Elettronici M: Estensione.
1 Premessa In questo progetto sono stati implementati tutti gli esercizi di Complementi di esercizi di Reti logiche. Elenco degli esercizi svolti: 1.Registro.
Una macchina sequenziale asincrona ha due ingressi x1, x2 e un'uscita z. Gli ingressi non cambiano mai di valore contemporaneamente. L'uscita assume il.
Velocità e accelerazioni del Robot Puma 560
MEMORIA. Organizzazione fisica della Memoria Decodi ficatore degli indirizzi … Sense/ Write Sense/ Write Sense/ Write Sense/
Tesina di ricerca operativa
I CIRCOLO DIDATTICO POMIGLIANO REPORT SCUOLA Dati INVALSI a.s Funzione strumentale: D'Aniello Maria.
A5 U1 U2 U3 U3 MOBILITA’ NE MEZZI DI TRASPORTO LA COMUNICAZIONE
INFORMAZIONI GENERALI Web site: Att. DidatticaIns. UniversitarioA.A PROGRAMMA.
INFORMAZIONI GENERALI Web site: Att. DidatticaIns. UniversitarioA.A PROGRAMMA.
Architetture di Calcolo per le TLC
Architetture dei Calcolatori (Lettere j-z ) Il Processore
Architettura del calcolatore
Alcune Istruzioni per la gestione dellI/O (Classe 7) Per la destinazione D0 sono ammessi tutti i tipi di indirizzamento tranne quello immediato. Per la.
Realizzato da Roberto Savino Connettersi al mondo esterno vconfig --eth2=tap, , pc1 pc2 r2 r1 HOST eth2 tap
Progetto di Calcolatori Elettronici M
La gerarchia di memoria Ing. Rosa Senatore Università degli Studi di Salerno Corso di Calcolatori Elettronici Anno 2013/14.
Progetto di una memoria cache per il processore DLX Andrea Grandi Filippo Malaguti Massimiliano Mattetti Gabriele Morlini Thomas Ricci Progetto di Calcolatori.
Progetto di una memoria cache per il processore DLX Andrea Grandi Filippo Malaguti Massimiliano Mattetti Gabriele Morlini Thomas Ricci Progetto di Calcolatori.
Progetto di una memoria cache per il processore DLX Andrea Grandi Filippo Malaguti Massimiliano Mattetti Gabriele Morlini Thomas Ricci Progetto di Calcolatori.
Progetto di una memoria cache per il processore DLX Andrea Grandi Filippo Malaguti Massimiliano Mattetti Gabriele Morlini Thomas Ricci Progetto di Calcolatori.
Progetto di una memoria cache per il processore DLX Andrea Grandi Filippo Malaguti Massimiliano Mattetti Gabriele Morlini Thomas Ricci Progetto di Calcolatori.
Progetto di una memoria cache per il processore DLX Andrea Grandi Filippo Malaguti Massimiliano Mattetti Gabriele Morlini Thomas Ricci Progetto di Calcolatori.
Progetto di una memoria cache per il processore DLX Andrea Grandi Filippo Malaguti Massimiliano Mattetti Gabriele Morlini Thomas Ricci Progetto di Calcolatori.
Progetto di una memoria cache per il processore DLX
Progetto di una memoria cache per il processore DLX Andrea Grandi Filippo Malaguti Massimiliano Mattetti Gabriele Morlini Thomas Ricci Progetto di Calcolatori.
Sistemi di elaborazione e trasmissione delle informazioni
Sia TAPE una periferica di gestione di nastri magnetici in grado di acquisire/fornire dati a 8 bit, e sia CD una periferica di masterizzazione in grado.
Università degli Studi di Napoli “Federico II” Facoltà di Ingegneria Dipartimento di Informatica e Sistemistica Corso di Sistemi ad elevate prestazioni.
Informatica Lezione 4 Scienze e tecniche psicologiche dello sviluppo e dell'educazione Anno accademico:
Arch. Elab. - S. Orlando 1 Esercitazione su Instruction Level Parallelism Salvatore Orlando.
PROGETTO ALTERNANZA SCUOLA-LAVORO
Migliorare le prestazioni delle cache
Corso di Laurea in Biotecnologie corso di Informatica Paolo Mereghetti DISCo – Dipartimento di Informatica, Sistemistica e Comunicazione.
Calcolatori Elettronici Il Processore
UNIVERSITÀ DEGLI STUDI DI BOLOGNA
SPIM Esercizi. Esercizio 1 – il comando ‘li’ Il codice deve eseguire una singola operazione: mettere il valore immediato 1023 nel registro s3.
Esercitazione su Instruction Level Parallelism
Transcript della presentazione:

Progetto di una memoria cache per il processore DLX Andrea Grandi Filippo Malaguti Massimiliano Mattetti Gabriele Morlini Thomas Ricci Progetto di Calcolatori Elettronici M

Obiettivi del progetto Progettazione e implementazione di una memoria cache Integrazione nel processore DLX Realizzazione dei testbench Studio della Block RAM

Caratteristiche della cache Cache di tipo Set-Associative – Realizzazione di un componente VHDL indipendente – Dimensione e numero di vie parametrizzabili Algoritmo di rimpiazzamento LRU – Basato su contatori – Gestione corretta dellinvalidazione delle linee Modalità di scrittura: Write-Back

Strutture dati VHDL CONSTANT OFFSET BIT : natural := 5; CONSTANT INDEX BIT : natural := 2; CONSTANT TAG BIT : natural := PARALLELISM INDEX BIT OFFSET BIT; CONSTANT NWAY : natural := 2; TYPE data line IS ARRAY (0 to 2 OFFSET BIT 1) of STD LOGIC VECTOR (7 downto 0); TYPE cache line IS RECORD data : data line; status : natural; tag : STDLOGICVECTOR (TAGBIT1downto 0); lrucounter : natural; END RECORD; TYPE set ways IS ARRAY (0 to NWAY 1) of cache line; TYPE cache type IS ARRAY (0 to 2 INDEX BIT 1) of set ways ; TYPE RAM IS ARRAY (integer range <>)of data line;

Strutture dati VHDL

Interfacciamento del componente

Interfacciamento con DLX

Interfacciamento con RAM

Interfacciamento con controllore

Implementazione schema interno cache

Processi interni tutti e quattro

Comunicazione tra processi segnali interni

Integrazione integrazione cache con DLX

Integrazione 2 integrazione cache con DLX

Testbench Testbench del componente : 1.Cache_test_ReadAndReplacement.vhd 2.Cache_test_ReadAndWrite.vhd 3.Cache_test_Snoop.vhd Testbench integrazione con processore DLX: 1.ProvaReplacement123 : verifica comunicazione tra cache e DLX e del meccanismo di rimpiazzamento. 2.ProvaFU: Forwarding Unit e Alee di Dato.

Cache_test_ReadAndReplacement.vhd TagIndexReplacement Linea invalidata (MESI_I) Fase 1: inizializzazione. Fase 2: invalidazione di una linea. Fase 3: Verifica funzionamento meccanismo Replacement, mediante contatori:

Cache_test_ReadAndWrite.vhd Fase 1: inizializzazione: una linea in MESI_S. Fase 2: scritture: MESI_S

Cache_test_Snoop.vhd Dopo aver inizializzato la cache…

ProvaReplacement123 Obiettivo: Testare la corretta comunicazione tra lo stadio di MEM e la CACHE e il meccanismo di rimpiazzamento, Codice Assembler: X" ", --l1: addi r1,r0,0 ; X" ", --l2: addi r2,r0,1 ; X"AC220000", --l3: sw 0(r1),r2 ; X" ", --l4: addi r2,r2,1 ; X"AC220100", --l5: sw 16#100(r1),r2 ; X" ", --l6: addi r2,r2,1 ; X"AC220080", --l7: sw 16#80(r1),r2 ; X"8C220000", --l8: lw r2,0(r1) ; X" ", --l9: addi r1,r1,4 ; X"0BFFFFE0", --l10: j l3 ; X"FFFFFFFF", --NOP l3: 0+0= l5: 100+0= l7: 80+0= l8: 0+0=

ProvaReplacement123 l3: 0+0= l5: 100+0= l7: 80+0= l8: 0+0=

Obiettivo: Testare il funzionamento della Forwarding Unit in caso di Alea di dato, Codice Assembler: X" ", --l1: addi r2,r2,1 ; X"AC220000", --l2: sw 0(r1),r2 ; X"8C230000", --l3: lw r3,0(r1) ; X" ", --l4: addi r2,r3,1 ; X"0BFFFFF0", --l5: j l2 ; X"FFFFFFFF", --NOP ProvaFU (Forwarding Unit) l4: addi r2,r3,1 l3: lw r3,0(r1) Alea di Dato!! lw r3,0(r1) ; addi r2,r3,1 ;

Block Ram Funzionamento, componente di prova, eventuale integrazione nel progetto