Problemi dell implementazione singolo ciclo
|
|
- Rebecca Di Matteo
- 6 anni fa
- Visualizzazioni
Transcript
1 Corso di Data path mlticiclo Anno Accademico 26/27 Francesco Tortorella Problemi dell implementazione singolo ciclo Arithmetic & Logical PC Inst emory Reg File m ALU m setp Load PC Inst emory Reg File m ALU Data em m Critical Path Store PC Inst emory Reg File m ALU Data em setp Branch PC Inst emory Reg File cmp m Tempo di ciclo lngo Ttte le istrzioni hanno n tempo di eseczione gale all istrzione più lenta emoria reale più lenta della memoria ideale Risorse dplicate Datapath mlticiclo -
2 Tempo di accesso delle memorie Limite fisico: le memorie veloci sono piccole (e viceversa) Storage Array selected word line address storage cell bit line address decoder sense amps => Gerarchia di memorie Processor Cache proc. bs L2 Cache mem. bs memory time-period 2-3 time-periods 2-5 time-periods Datapath mlticiclo - 2 Ridzione del tempo di ciclo Si partiziona la parte combinatoria in più parti combinatorie più piccole, separate da registri. La stessa operazione viene realizzata in de cicli di breve drata invece che in no solo molto lngo. storage element storage element Acyclic Combinational Logic Acyclic Combinational Logic (A) storage element Acyclic Combinational Logic (B) storage element Datapath mlticiclo - 3 storage element 2
3 Vincoli sl tempo di ciclo Logica per calcolare l indirizzo sccessivo PC <= branch? PC + offset : PC + 4 Fetch Reg <= em[pc] Accesso ai registri A <= R[rs] Operazione ALU R <= A + B Control Net PC PC npc_sel Fetch EtOp ALUSrc ALUctr emrd emwr RegDst RegWr emwr Operand Fetch Eec em Access Reg. File Data em Reslt Store Datapath mlticiclo - 4 Partizionamento del datapath Registri inseriti a cavallo delle fasi intermedie Net PC PC Fetch npc_sel Operand Fetch Eqal EtOp ALUSrc ALUctr emrd emwr RegDst RegWr emwr Eec em Access Reg. File Data em Reslt Store. Registri inseriti in modo da bilanciare la lnghezza del ciclo di clock (parti combinatorie tra i registri con lo stesso ritardo) 2. Registri inseriti per conservare le informazioni necessarie in passi sccessivi dell eseczione dell istrzione. Datapath mlticiclo - 5 3
4 Datapath mlticiclo (visione logica) npc_sel E Eqal EtOp ALUSrc ALUctr Net PC PC Fetch Operand Fetch emrd IR Reg File Et ALU em Access Reg. File Data em Reslt Store emwr emtoreg RegDst RegWr A B S Critical Path? Datapath mlticiclo - 6 Datapath mlticiclo Nell implementazione che stiamo considerando, assmiamo che in n ciclo di clock si possa realizzare al più na tra le segenti operazioni: Accesso in memoria (lett. istrzione o lett./scritt. dati) Accesso al register file (2 lettre o scrittra) Operazione ALU Al termine di ogni ciclo di clock, i registri intermedi contengono i dati necessari alle fasi da realizzare nei cicli segenti. Datapath mlticiclo - 7 4
5 Implementazione del datapath mlticiclo (vista ad alto livello) PC Address emory Data or data register emory data register Data Register # Registers Register # Register # A B ALU ALUOt Unica nità di memoria Registri addizionali Unica ALU Datapath mlticiclo - 8 Istrzione R-rtype (add, sb,...) Logical Register Transfer inst Logical Register Transfers ADDU R[rd] <= R[rs] + R[rt]; PC <= PC + 4 Physical Register Transfers Time inst ADDU Physical Register Transfers IR <= E[pc] A<= R[rs]; B <= R[rt] S <= A + B R[rd] <= S; PC <= PC + 4 E Net PC PC Inst. em IR Eec S em Access Reg. File Data em Reg File A B Datapath mlticiclo - 9 5
6 Istrzione Logica con immediato Logical Register Transfer inst Logical Register Transfers ORI R[rt] <= R[rs] ZEt(Im6); PC <= PC + 4 Physical Register Transfers inst ORI Physical Register Transfers IR <= E[pc] A<= R[rs]; B <= R[rt] S <= A ZEt(Im6) R[rt] <= S; PC <= PC + 4 Eec S em Access Reg. File Data em Time E Net PC PC Inst. em IR Reg File A B Datapath mlticiclo - Load Logical Register Transfer Physical Register Transfers Time inst LW inst LW Logical Register Transfers R[rt] <= E[R[rs] + SEt(Im6)]; PC <= PC + 4 Physical Register Transfers IR <= E[pc] A<= R[rs]; B <= R[rt] S <= A + SEt(Im6) <= E[S] R[rd] <= ; PC <= PC + 4 E Net PC PC Inst. em IR Reg File A B Eec S em Access Reg. File Datapath mlticiclo - Data em 6
7 Store Logical Register Transfer Physical Register Transfers ETime inst SW inst SW Logical Register Transfers E[R[rs] + SEt(Im6)] <= R[rt]; PC <= PC + 4 Physical Register Transfers IR <= E[pc] A<= R[rs]; B <= R[rt] S <= A + SEt(Im6); E[S] <= B PC <= PC + 4 Net PC PC Inst. em IR Reg File A B Eec S em Access Data em Reg. File Datapath mlticiclo - 2 Branch Logical Register Transfer inst Logical Register Transfers BEQ if R[rs] == R[rt] then PC <= PC + 4+{SEt(Im6), 2 b} Physical Register Transfers Time inst BEQ else PC <= PC + 4 Physical Register Transfers IR <= E[pc] E<= (R[rs] = R[rt]) if (!E) PC <= PC + 4; else PC <=PC+4+{SEt(Im6),2 b} E Net PC Eec S em Access Reg. File Data em PC Inst. em IR Reg File A B Datapath mlticiclo - 3 7
8 Implementazione del datapath mlticiclo IorD emread emwrite IRWrite RegDst RegWrite ALUSrcA PC Address Write data emory emdata [25 2] [2 6] [5 ] register [5 ] emory data register [5 ] Read register Read register 2 Registers Write register 6 Write data Read data Read data 2 32 Sign etend Shift left 2 A B ALU control Zero ALU ALU reslt ALUOt [5 ] emtoreg ALUSrcB ALUOp Datapath mlticiclo - 4 Implementazione del datapath mlticiclo PCWriteCond PCSorce PCWrite IorD emread emwrite emtoreg Otpts Control ALUOp ALUSrcB ALUSrcA RegWrite PC Address Write data emory emdata [3-26] [25 2] [2 6] [5 ] register [5 ] emory data register IRWrite [25 ] [5 ] Op [5 ] RegDst 6 Read register Read register 2 Write register Write data Registers Sign etend Read data Read data 2 32 Shift left 2 A B Shift ALU control left 2 PC [3-28] Zero ALU ALU reslt Jmp address [3-] ALUOt 2 [5 ] Datapath mlticiclo - 5 8
9 Eseczione dell istrzione in 5 passi. fetch 2. decode and register fetch 3. Eection / emory address comptation / Branch completion / Jmp completion 4. emory access / R-type instrction completion 5. emory read completion Datapath mlticiclo - 6. fetch IR <= emory[pc] PC <= PC+4 Qali segnali attivi? Perché si incrementa il PC? Datapath mlticiclo - 7 9
10 2. decode and register fetch A <= Reg[IR[25:2]] B <= Reg[IR[2:6]] ALUOt <= PC+(signet(IR[5:])<<2) Non è ancora nota l istrzione da esegire Si preparano possibili operandi (rs->a, rt->b) e si calcola l offset dell indirizzo destinazione di na eventale istrzione di branch Datapath mlticiclo Eection / emory address comptation / Branch completion / Jmp completion Le operazioni esegite da qesto passo in poi dipendono dalla particolare istrzione Load/Store ALUOt <= A+signet(IR[5:]) Istrzione Logico-Aritmetica (R-type) ALUOt <= A op B Branch (completa) If (A==B) PC <= ALUOt La condizione è fornita dal flag Zero dell ALU Jmp (completa) PC <= { PC[3:28], {IR[25:], } } Datapath mlticiclo - 9
11 4. emory access / R-type instrction completion Load DR <= emory[aluot] Store (completa) emory[aluot] <= B Istrzione Logico-Aritmetica (R-type) (completa) Reg[IR[5:]] <= ALUOt Datapath mlticiclo emory read completion Load Reg[IR[2:6]] <= DR Datapath mlticiclo - 2
12 Passi realizzati per esegire na classe di istrzioni. Vista complessiva Datapath mlticiclo - 22 Valtazione del data path mlticiclo Ricordiamo la distribzione stimata per le istrzioni: Load: 25 % Store: % Istrzioni logico-aritmetiche: 45 % Branch: 5 % Jmp: 5 % Datapath mlticiclo
13 Valtazione del data path mlticiclo Tipo di istrzione Logico aritmetiche Load Store Branch Nmero di cicli Valtiamo il nmero medio di cicli per istrzione (CPI): CPI=.45*4+.25*5+.*4+.5*3+.5*3 =4.5 Se avessimo adottato lo stesso nmero di cicli avremmo avto n CPI=5. Jmp 3 Datapath mlticiclo - 24 Definizione del controllo I valori dei segnali di controllo (abilitazioni) deipendono da: Istrzione in eseczione Passo corrente Si sano le informazioni raccolte per specificare na macchina a stati finiti (SF) che sia capace di generare le seqenze opportne di abilitazioni. Datapath mlticiclo
14 Reti seqenziali na rete seqenziale è n circito logico avente n ingressi (, 2,, n ) ed m scite (y,y 2,,y m ), ciascno dei qali assme valori binari (/). ad ogni istante, il valore delle scite dipende sia dagli ingressi presenti, sia dalla seqenza degli ingressi precedenti. in ogni istante, si pò identificare no stato S in ci la rete si trova, in fnzione della seqenza degli ingressi precedenti. le scite possono qindi essere definite come fnzioni degli ingressi correnti e dello stato corrente. galmente, lo stato sccessivo pò essere determinato in fnzione dello stato corrente e degli ingressi correnti. odello di macchina a stati finiti Datapath mlticiclo - 26 Stato sccessivo Stato corrente Fnzione Stato sccessivo Inpt clock Fnzione di Uscita Otpt Datapath mlticiclo
15 Esempi di macchine seqenziali Registri (RS, D, JK) Registri a scorrimento Contatori Come si definisce lo stato? Qanti stati diversi pò assmere la macchina? Come si definisce la fnzione stato sccessivo? Come si definisce la fnzione di Uscita? Registro JK Stato: valore di Q Nm. di stati: 2 F. di stato sccessivo: F. di scita: valore di Q J= e K= Q =Q J= e K= Q = J= e K= Q = J= e K= Q =Q Datapath mlticiclo - 28 Diagramma di stato Strmento per descrivere graficamente na macchina seqenziale. /a y/b dallo stato precedente stato z/c verso lo stato sccessivo Registro JK / Datapath mlticiclo - 29 Q= Q= / / / / 5
16 Realizzazione di na macchina a stati finiti SF ad N stati lo stato è rappresentabile con log 2 N bit log 2 N Registri di stato Logica Combinatoria inpt otpt Datapath mlticiclo - 3 Vista ad alto livello della SF Start fetch/decode and register fetch (Figre 5.37) emory access instrctions (Figre 5.38) R-type instrctions (Figre 5.39) Branch instrction (Figre 5.4) Jmp instrction (Figre 5.4) Datapath mlticiclo - 3 6
17 SF: i primi de stati (comni) Start (Op = 'LW') or (Op = 'SW') fetch emread ALUSrcA = IorD = IRWrite ALUSrcB = ALUOp = PCWrite PCSorce = (Op = R-type) (Op = 'BEQ') decode/ Register fetch ALUSrcA = ALUSrcB = ALUOp = (Op = 'JP') emory reference FS (Figre 5.38) R-type FS (Figre 5.39) Branch FS (Figre 5.4) Jmp FS (Figre 5.4) Datapath mlticiclo - 32 SF: istrzioni lw/sw From state (Op = 'LW') or (Op = 'SW') 2 emory address comptation ALUSrcA = ALUSrcB = ALUOp = 3 (Op = 'LW') emory access (Op = 'SW') 5 emory access emread IorD = emwrite IorD = 4 Write-back step RegWrite emtoreg = RegDst = To state (Figre 5.37) Datapath mlticiclo
18 SF: istrzioni di tipo R From state (Op = R-type) 6 Eection ALUSrcA = ALUSrcB = ALUOp = 7 RegDst = RegWrite emtoreg = R-type completion Datapath mlticiclo - 34 To state (Figre 5.37) SF: istrzioni di salto 8 From state (Op = 'BEQ') ALUSrcA = ALUSrcB = ALUOp = PCWriteCond PCSorce = Branch completion 9 From state (Op = 'J') PCWrite PCSorce = Jmp completion To state (Figre 5.37) To state (Figre 5.37) Datapath mlticiclo
19 SF: diagramma a stati finiti completo emory address comptation 2 ALUSrcA = ALUSrcB = ALUOp = decode/ fetch register fetch emread ALUSrcA = IorD = ALUSrcA = Start IRWrite ALUSrcB = ALUSrcB = ALUOp = ALUOp = PCWrite PCSorce = (Op = 'LW') or (Op = 'SW') Eection 6 ALUSrcA = ALUSrcB = ALUOp= (Op = R-type) Branch Jmp completion completion 8 9 ALUSrcA = ALUSrcB = PCWrite ALUOp = PCSorce = PCWriteCond PCSorce = (Op = 'BEQ') (Op = 'J') 3 (Op = 'LW') emory access (Op = 'SW') 5 emory access 7 R-type completion emread IorD = emwrite IorD = RegDst = RegWrite emtoreg = 4 Write-back step RegDst = RegWrite emtoreg= Datapath mlticiclo - 36 Implementazione della SF Combinational control logic Datapath control otpts Otpts Inpts Inpts from instrction register opcode field State register Net state Datapath mlticiclo
20 Implementazione della SF Codifica degli stati stati 4 bit per codificare lo stato Definizione tabella dello stato prossimo Slla base dello stato corrente e dell ingresso (valore di op) Definizione delle scite (abilitazioni) Fnzione dello stato corrente (macchina di oore) Datapath mlticiclo - 38 Implementazione della SF Datapath mlticiclo
21 Implementazione della SF Definizione delle scite Definizione stato prossimo Datapath mlticiclo - 4 Implementazione della SF Stati che hanno NS 3 = Datapath mlticiclo - 4 2
22 Implementazione della SF Stati che hanno NS = Datapath mlticiclo - 42 Implementazione della SF NS è la somma logica di qesti 5 termini Datapath mlticiclo
23 Implementazione della SF Rete combinatoria tramite PLA AND plane: Calcola i mintermini OR plane: Calcola le somme NS 3 Datapath mlticiclo - 44 Eccezioni Trasferimento imprevisto del controllo slla base del verificarsi di n evento. Il sistema risponde con n azione opportna all eccezione. Necessario salvare l indirizzo dell istrzione in corrispondenza della qale si è generata l eccezione Al termine viene restitito il controllo al programma interrotto Necessario salvare e poi ripristinare lo stato del programma interrotto. Datapath mlticiclo - 45 Programma tente System eception handler o Interrpt Service Rotine (ISR) eccezione Retrn from eception Flsso di controllo normale: seqenza, branch, jmp 23
24 Tipi di eccezioni Interrzioni Casate da eventi esterni Asincrone rispetto al programma in eseczione Possono essere gestite tra de istrzioni consective Semplice sospensione e ripresa del programma tente Eccezioni Casate da eventi interni Condizioni di eccezione (overflow) Errori (parity) Falts (pagine non residenti in memoria) Sincrone rispetto al programma in eseczione La condizione di eccezione deve essere risolta dall handler Se la condizione è risolbile, l istrzione pò essere riesegita ed il programma continato. In caso contrario, il programma deve essere terminato prematramente. Datapath mlticiclo - 46 Gestione delle eccezioni De esigenze vanno considerate per na corretta gestione delle eccezioni: Salvare lo stato del programma interrotto PC, altre informazioni Individare la rotine da esegire in fnzione della casa che ha generato l eccezione. Salvataggio dello stato Psh sllo stack (Va, otorola 68K, 886) Salvataggio in registri speciali (IPS) Registri ombra (otorola 88K) Datapath mlticiclo
25 Gestione delle eccezioni: indirizzamento dell ISR Diverse solzioni: Interrpt vettorizzato (68K, 886, ) Viene fornito n valore (vector) che è n indice in na tabella (vector table) che contiene gli indirizzi delle varie ISR: PC=em[IVT_base+vector ]. Casa vector Tabella delle ISR (Sparc, 88K, ) Viene fornito no spiazzamento all interno di n area di memoria che contiene ttte le ISR: PC=IT_base+offset. Casa offset Indirizzo fisso (IPS) Si salta ad n nico indirizzo: nica ISR che si occpa di identificare la casa e avviare la rotine opportna (effettivamente nel IPS si considerano de entry). PC=Ec_address Datapath mlticiclo - 48 Gestione delle eccezioni: come cambia il controllo? Consideriamo per semplicità de sole case possibili di eccezione: Istrzione non riconoscita (generata dal controllo a valle della decodifica dell istrzione) Overflow (generata dall ALU nella fase eecte di n istrzione R-type) Novi compiti da esegire: Salvare in n registro opportno (Case) la casa dell eccezione Salvare l indirizzo dell istrzione che ha casato l eccezione (PC-4) in n registro opportno (EPC) Saltare all entry point dell ISR Datapath mlticiclo
26 Eccezioni: odifica del datapath e del controllo PCWriteCond PCWrite IorD emread emwrite emtoreg IRWrite Otpts Control Op [5 ] CaseWrite IntCase EPCWrite PCSorce ALUOp ALUSrcB ALUSrcA RegWrite RegDst PC Address Write data emory emdata [3-26] [25 2] [2 6] [5 ] register [5 ] emory data register [25 ] Shift [5 ] 6 Read register Read register 2 Write register Write data Registers Sign etend Read data Read data 2 32 Shift left 2 A B ALU control left 2 PC [3-28] ALU Zero ALU reslt Jmp address [3-] CO ALUOt 2 EPC Case [5 ] Datapath mlticiclo - 5 Eccezioni: odifica della SF 2 emory address comptation ALUSrcA = ALUSrcB = ALUOp = Start 6 (Op = 'LW') or (Op = 'SW') fetch emread ALUSrcA = IorD = IRWrite ALUSrcB = ALUOp = PCWrite PCSorce = Eection ALUSrcA = ALUSrcB = ALUOp = 8 (Op = R-type) Branch completion ALUSrcA = ALUSrcB = ALUOp = PCWriteCond PCSorce = (Op = 'BEQ') decode/ Register fetch 9 ALUSrcA = ALUSrcB = ALUOp = (Op = 'J') (Op = other) Jmp completion PCWrite PCSorce = 3 (Op = 'LW') (Op = 'SW') emory access 5 emread IorD = emory access R-type completion IntCase = 7 CaseWrite RegDst = ALUSrcA = emwrite RegWrite Overflow ALUSrcB = IorD = emtoreg = ALUOp = EPCWrite PCWrite PCSorce = IntCase = CaseWrite ALUSrcA = ALUSrcB = ALUOp = EPCWrite PCWrite PCSorce = 4 Write-back step Overflow RegWrite emtoreg = RegDst = Datapath mlticiclo
27 Interrzioni Sono essere gestite tra de istrzioni consective Semplice sospensione e ripresa del programma tente Al termine dell eseczione dell istrzione corrente si verifica se è attivo n segnale di interrzione In tal caso si esege il cambio di contesto descritto per le eccezioni, con la differenza che nel registro Case viene codificato l insorgere di n interrzione. Datapath mlticiclo - 52 Interrzioni: odifica della SF Stato fetch Assmiamo che l interrzione sia codificata con il valore 2 nel registro Case. Gli stati finali sono qelli corrispondenti al completamento normale dell eseczione dell istrzione (senza che si siano generate eccezioni). Con riferimento alla SF precedente, sono: 4, 5, 7(no Overflow), 8, 9 Datapath mlticiclo - 53 INT INT dagli stati finali IntCase=2 CaseWrite ALUSrcA= ALUSrcB= ALUOp= EPCWrite PCWrite PCSorce= 27
28 Interrzioni: odifica del datapath e del controllo PC EPCsorce ALUOt EPC Datapath mlticiclo
Università degli Studi di Cassino
Corso di Data path multiciclo Anno Accademico 2007/2008 Francesco Tortorella Problemi dell implementazione singolo ciclo Arithmetic & Logical PC Inst Memory Reg File mux ALU mux setup Load PC Inst Memory
DettagliCALCOLATORI ELETTRONICI B 23 giugno 2008
CALCOLATORI ELETTRONICI B 23 gigno 28 NOE: COGNOE: ATR: Scrivere chiaramente in caratteri maiscoli a stampa. Si considerino, mostrati nelle figre alla pagina segente, il datapath ed il diagramma a stati
DettagliControllo di un processore a singolo ciclo
Controllo di n processore a singolo ciclo NB: schema stilizzato (in particolare, non corrisponde al IPS) Unità di controllo combinatoria controlli comandi ck write read write EORI DTI REGISTRI P C emoria
DettagliLezione 28 Il processore: unità di controllo (1)
Lezione 8 Il processore: nità di lo () Vittorio Scarano rchitettra Corso di Larea in Informatica Università degli Stdi di Salerno Organizzazione della lezione Definizione della nità di lo rchitettra. Vi.ttorio
DettagliCalcolatori Elettronici
Calcolatori Elettronici CPU a singolo ciclo assimiliano Giacomin Schema del processore (e memoria) Unità di controllo PC emoria indirizzo IR Condizioni SEGNALI DI CONTROLLO dato letto UNITA DI ELABORAZIONE
DettagliCalcolatori Elettronici A a.a. 2008/2009
Calcolatori Elettronici A a.a. 28/29 CPU mlticiclo: Esercizi assimiliano Giacomin De tipologie di esercizi standard Calcolo delle prestazioni nei sistemi a singolo ciclo e mlticiclo (e confronto) Implementazione
DettagliCorso di. Realizzazione del Data path Data path a ciclo singolo. Anno Accademico 2006/2007 Francesco Tortorella
Corso di Realizzazione del path path a ciclo singolo Anno Accademico 26/27 Francesco Tortorella (si ringrazia il prof.. De Santo per il materiale presente in qeste slides) Realizzazione del data path.
DettagliCalcolatori Elettronici B a.a. 2008/2009
Calcolatori Elettronici B a.a. 28/29 RICHIAI DI CALCOLATORI A assimiliano Giacomin Livello architettrale Livello logico Livello circitale Livello del layot IL LIVELLO HARDWARE istrzioni macchina ISA Reti
DettagliCalcolatori Elettronici
Calcolatori Elettronici Tecniche Pipeline: Elementi di base (ESERCIZI) assimiliano Giacomin Esercizio confronto prestazioni pipeline vs. mlticiclo Si consideri la segente combinazione di istrzioni esegite
DettagliIl processore: unità di elaborazione e unità di controllo (3)
Il processore: nità di elaborazione e nità di lo () rchitettre dei Calcolatori (lettere -I) Limitazione del ciclo singolo I tempi di accesso per le diverse istrzioni variano, ad esempio ccesso in memoria:
DettagliCalcolatori Elettronici
Calcolatori Elettronici CPU a singolo ciclo assimiliano Giacomin Schema del processore (e memoria) Unità di controllo Condizioni SEGNALI DI CONTROLLO PC emoria indirizzo IR dato letto UNITA DI ELABORAZIONE
DettagliCALCOLATORI ELETTRONICI 14 giugno 2010
CALCOLATORI ELETTRONICI 14 giugno 2010 NOME: COGNOME: MATR: Scrivere chiaramente in caratteri maiuscoli a stampa 1. Si implementi per mezzo di porte logiche di AND, OR e NOT la funzione combinatoria (a
DettagliL unità di controllo di CPU multi-ciclo. Sommario
L unità di controllo di CPU multi-ciclo Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano Riferimento sul Patterson: Sezione C3 1/24
DettagliArchitetture dei Calcolatori (Lettere. Organizzazione di un Calcolatore. Processore. Il Processore. Livello 1: Macchina Firmware Microarchitettura
Architettra a Livelli: Livelli e Architettre dei Calcolatori (Lettere A-I) Il Processore Ing.. Francesco Lo Presti Livello : Livello del Lingaggio acchina (ISA) acchina nda come appare al programmatore
DettagliArchitetture dei Calcolatori (Lettere. Organizzazione di un Calcolatore. Processore. Il Processore. Livello 1: Macchina Firmware Microarchitettura
Architettra a Livelli: Livelli e Architettre dei Calcolatori (Lettere A-I) Il Processore Prof. Francesco Lo Presti Livello : Livello del Lingaggio acchina (ISA) acchina nda come appare al programmatore
DettagliCalcolatori Elettronici B a.a. 2005/2006
Calcolatori Elettronici B a.a. 25/26 Tecniche di Controllo: Esercizi assimiliano Giacomin Due tipologie di esercizi Calcolo delle prestazioni nei sistemi a singolo ciclo e multiciclo (e confronto) Implementazione
DettagliCosa abbiamo fatto. Dove stiamo andando.. Perché: per poter capire cosa deve offrire al programmatore il processore come istruzioni
Un qadro della sitazione Lezione Il Processore: Unità di Elaborazione () Vittorio Scarano rchitettra Corso di Larea in Informatica Università degli Stdi di Salerno rchitettra (-). Vi.ttorio Scarano Inpt/Otpt
DettagliL unità di controllo di CPU multi-ciclo
L unità di controllo di CPU multi-ciclo Prof. Alberto Borghese Dipartimento di Scienze dell Informazione alberto.borghese@unimi.it Università degli Studi di Milano Riferimento sul Patterson: Sezione D3
DettagliProcessore. Memoria I/O. Control (Parte di controllo) Datapath (Parte operativa)
Processore Memoria Control (Parte di controllo) Datapath (Parte operativa) I/O Parte di Controllo La Parte Controllo (Control) della CPU è un circuito sequenziale istruzioni eseguite in più cicli di clock
DettagliUniversità degli Studi di Cassino
Corso di Realizzazione del path path a ciclo singolo Anno Accademico 24/25 Francesco Tortorella Realizzazione del data path. Analizzare l instruction set => Specifiche sul datapath il significato di ciascuna
DettagliCPU a ciclo multiplo: l unità di controllo
Architettura degli Elaboratori e delle Reti Lezione 2 CPU a ciclo multiplo: l unità di controllo Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano
DettagliCALCOLATORI ELETTRONICI 30 agosto 2010
CALCOLATORI ELETTRONICI 30 agosto 2010 NOME: COGNOME: MATR: Scrivere chiaramente in caratteri maiuscoli a stampa 1. Si implementi per mezzo di porte logiche di AND, OR e NOT la funzione combinatoria (a
DettagliCALCOLATORI ELETTRONICI A 25 gennaio 2011
CALCOLATORI ELETTRONICI A 25 gennaio 2011 NOME: COGNOME: MATR: Scrivere chiaramente in caratteri maiuscoli a stampa 1. Supponendo di avere a disposizione dei sommatori full adder (3 ingressi e due uscite)
DettagliAstrazione dell implementazione. Il processore: unità di elaborazione e unità di controllo (2) Il controllo della ALU.
Astrazione dell implementazione Il processore: nità di elaborazione e nità di lo (2) Architettre dei Calcolatori (lettere A-I) Ideal emory ress Net ress Rd Rs Rt 5 5 5 Rw Ra Rb -bit Registers A B als Conditions
DettagliCALCOLATORI ELETTRONICI 9 settembre 2011
CALCOLATORI ELETTRONICI 9 settembre 2011 NOME: COGNOME: MATR: Scrivere chiaramente in caratteri maiuscoli a stampa 1. Si implementi per mezzo di porte logiche AND, OR e NOT la funzione combinatoria (a
DettagliOrganizzazione pipeline della CPU
Organizzazione pipeline della CPU Calcolatori Elettronici-Ingegneria Telematica 1 Eseczione seqenziale Eseczione_seqenziale.ee Calcolatori Elettronici-Ingegneria Telematica 2 Eseczione pipeline Eseczione_pipeline.ee
DettagliCALCOLATORI ELETTRONICI 27 giugno 2017
CALCOLATORI ELETTRONICI 27 giugno 2017 NOME: COGNOME: MATR: Scrivere nome, cognome e matricola chiaramente in caratteri maiuscoli a stampa 1 Di seguito è riportato lo schema di una ALU a 32 bit in grado
DettagliUniversità degli Studi di Cassino e del Lazio Meridionale
Università degli Studi di Cassino e del Lazio Meridionale di Calcolatori Elettronici Realizzazione del Data path a ciclo singolo Anno Accademico 22/23 Alessandra Scotto di Freca Si ringrazia il prof.francesco
DettagliUniversità degli Studi di Cassino
Corso di Realizzazione del Data path Data path a ciclo singolo Anno Accademico 27/28 Francesco Tortorella (si ringrazia il prof. M. De Santo per parte del materiale presente in queste slides) Realizzazione
DettagliLezione 29 Il processore: unità di controllo (2)
Lezione 29 Il processore: unità di lo (2) Vittorio Scarano Architettura Corso di Laurea in Informatica Università degli Studi di Salerno Organizzazione della lezione 2 Un riepilogo: ruolo della unità di
DettagliCALCOLATORI ELETTRONICI 20 gennaio 2012
CALCOLATORI ELETTRONICI 20 gennaio 2012 NOME: COGNOME: MATR: Scrivere chiaramente in caratteri maiuscoli a stampa 1. Si disegni lo schema di un flip-flop master-slave S-R sensibile ai fronti di salita
DettagliUn quadro della situazione. Cosa abbiamo fatto. Lezione 29 La Pipeline. Dove stiamo andando.. Perché: Università degli Studi di Salerno
Un qadro della sitazione Lezione 29 La Pipeline Vittorio Scarano Architettra Corso di Larea in Informatica Università degli Stdi di Salerno Inpt/Otpt emoria Principale Sistema di Interconnessione istri
DettagliCALCOLATORI ELETTRONICI 27 marzo 2018
CALCOLATORI ELETTRONICI 27 marzo 2018 NOME: COGNOME: MATR: Scrivere chiaramente in caratteri maiuscoli a stampa 1. Si implementi per mezzo di porte logiche di AND, OR e NOT la funzione combinatoria (a
DettagliRichiami sull architettura del processore MIPS a 32 bit
Caratteristiche principali dell architettura del processore MIPS Richiami sull architettura del processore MIPS a 32 bit Architetture Avanzate dei Calcolatori Valeria Cardellini E un architettura RISC
DettagliCALCOLATORI ELETTRONICI 29 giugno 2015
CALCOLATORI ELETTRONICI 29 giugno 2015 NOME: COGNOME: MATR: Scrivere nome, cognome e matricola chiaramente in caratteri maiuscoli a stampa 1. Relativamente al confronto tra le implementazioni del processore
DettagliCalcolatori Elettronici B a.a. 2004/2005
Calcolatori Elettronici B a.a. 2004/2005 Tecniche di Controllo: Esercizi Massimiliano Giacomin Calcolo CPI e Prestazioni nei sistemi a singolo ciclo e multiciclo ) Calcolo prestazioni nei sistemi a singolo
DettagliCALCOLATORI ELETTRONICI 15 giugno 2015
CALCOLATORI ELETTRONICI 15 giugno 2015 NOME: COGNOME: MATR: Scrivere chiaramente in caratteri maiuscoli a stampa 1. Si implementi per mezzo di porte logiche di AND, OR e NOT la funzione combinatoria (a
DettagliL'architettura del processore MIPS
L'architettura del processore MIPS Piano della lezione Ripasso di formati istruzione e registri MIPS Passi di esecuzione delle istruzioni: Formato R (istruzioni aritmetico-logiche) Istruzioni di caricamento
DettagliCalcolatori Elettronici B a.a. 2005/2006
Calcolatori Elettronici B a.a. 25/26 Tecniche Pipeline: Elementi di base assimiliano Giacomin Reg[IR[2-6]] = DR Dal processore multiciclo DR= em[aluout] em[aluout] =B Reg[IR[5-]] =ALUout CASO IPS lw sw
DettagliCALCOLATORI ELETTRONICI 9 gennaio 2013
CALCOLATORI ELETTRONICI 9 gennaio 2013 NOME: COGNOME: MATR: Scrivere chiaramente in caratteri maiuscoli a stampa 1. Si implementi per mezzo di porte logiche di AND, OR e NOT la funzione combinatoria (a
DettagliProgetto CPU (ciclo singolo)
Progetto CPU (ciclo singolo) Salvatore Orlando Arch. Elab. - S. Orlando 1 Processore: Datapath & Control Possiamo finalmente vedere il progetto di un processore MIPS-like semplificato Semplificato in modo
DettagliCalcolatori Elettronici B a.a. 2007/2008
Calcolatori Elettronici B a.a. 27/28 Tecniche Pipeline: Elementi di base assimiliano Giacomin Reg[IR[2-6]] = DR Dal processore multiciclo DR= em[aluout] em[aluout] =B Reg[IR[5-]] =ALUout CASO IPS lw sw
DettagliProgetto CPU (ciclo singolo) Salvatore Orlando
Progetto CPU (ciclo singolo) Salvatore Orlando Arch. Elab. - S. Orlando 1 Processore: Datapath & Control Possiamo finalmente vedere il progetto di un processore MIPS-like semplificato Semplificato in modo
DettagliCPU a ciclo multiplo
Architettura degli Elaboratori e delle Reti Lezione CPU a ciclo multiplo Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L /9 Sommario! I problemi
DettagliArchitettura degli elaboratori - II Le architetture multi-ciclo
Architettura degli elaboratori - II Le architetture multi-ciclo Prof. Alberto Borghese Dipartimento di Informatica alberto.borghese@unimi.it Università degli Studi di Milano 1/41 Sommario Principi ispiratori
DettagliProcessore. Memoria I/O. Control (Parte di controllo) Datapath (Parte operativa)
Processore Memoria Control (Parte di controllo) Datapath (Parte operativa) I/O Memoria La dimensione del Register File è piccola registri usati per memorizzare singole variabili di tipo semplice purtroppo
DettagliL unità di controllo di CPU a singolo ciclo
L unità di controllo di CPU a singolo ciclo Prof. Alberto Borghese Dipartimento di Informatica alberto.borghese@unimi.it Università degli Studi di Milano Riferimento sul Patterson: capitolo 4.2, 4.4, D,
DettagliCalcolatori Elettronici
Calcolatori Elettronici CPU multiciclo Massimiliano Giacomin SVANTAGGI DEL PROCESSORE A SINGOLO CICLO Tutte le istruzioni lunghe un ciclo di clock T clock determinato dall istruzione più lenta Istruzioni
DettagliArchitettura della CPU multi-ciclo
Architettura della CPU multi-ciclo Architettura degli Elaboratori e delle Reti, Turno I Alberto Borghese Università degli Studi di Milano Dipartimento di Scienze dell Informazione email: borghese@dsi.unimi.it
DettagliCPU a ciclo multiplo
Architettura degli Elaboratori e delle Reti Lezione CPU a ciclo multiplo Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 1/8 Sommario! I problemi
DettagliCPU a singolo ciclo. Lezione 18. Sommario. Architettura degli Elaboratori e delle Reti
Architettura degli Elaboratori e delle Reti Lezione 18 CPU a singolo ciclo Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 18 1/2 Sommario!
DettagliRichiami sull architettura del processore MIPS a 32 bit
Richiami sull architettura del processore MIPS a 32 bit Architetture Avanzate dei Calcolatori Valeria Cardellini Caratteristiche principali dell architettura del processore MIPS E un architettura RISC
DettagliL unità di controllo di CPU a singolo ciclo
L unità di controllo di CPU a singolo ciclo Prof. Alberto Borghese Dipartimento di Informatica alberto.borghese@unimi.it Università degli Studi di Milano Riferimento sul Patterson: capitolo 4.2, 4.4, D1,
DettagliArchitettura degli Elaboratori B Introduzione al corso
Architettura degli Elaboratori B Introduzione al corso Salvatore Orlando Arch. Elab. - S. Orlando 1 Componenti di un calcolatore convenzionale Studieremo il progetto e le prestazioni delle varie componenti
DettagliProcessore: Datapath & Control. Progetto CPU (ciclo singolo) Rivediamo i formati delle istruzioni. ISA di un MIPS-lite
Processore: Datapath & Control Possiamo finalmente vedere il progetto di un processore MIPS-like semplificato Progetto CPU (ciclo singolo) Semplificato in modo tale da eseguire solo: istruzioni di memory-reference:
DettagliUna CPU multi-ciclo. Sommario
Una CPU multi-ciclo Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano 1/3 http:\\homes.dsi.unimi.it\ borghese Sommario I problemi della
DettagliCalcolatori Elettronici B a.a. 2006/2007
Calcolatori Elettronici B a.a. 26/27 Tecniche di Controllo: Esercizi Massimiliano Giacomin Due tipologie di esercizi Calcolo delle prestazioni nei sistemi a singolo ciclo e multiciclo (e confronto) Implementazione
DettagliCPU a singolo ciclo. Lezione 18. Sommario. Architettura degli Elaboratori e delle Reti. Proff. A. Borghese, F. Pedersini
Architettura degli Elaboratori e delle Reti Lezione 8 CPU a singolo ciclo Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano L 8 /33 Sommario! La
DettagliUn quadro della situazione. Cosa abbiamo fatto. Lezione 30 Valutazione delle Prestazioni. Dove stiamo andando.. Perché:
Un quadro della situazione Lezione 3 Valutazione delle Prestazioni Vittorio Scarano rchitettura Corso di Laurea in Informatica Università degli Studi di Salerno Input/Output Sistema di Interconnessione
DettagliArchitettura degli Elaboratori Lez. 8 CPU MIPS a 1 colpo di clock. Prof. Andrea Sterbini
Architettura degli Elaboratori Lez. 8 CPU MIPS a 1 colpo di clock Prof. Andrea Sterbini sterbini@di.uniroma1.it Argomenti Progetto della CPU MIPS a 1 colpo di clock - Istruzioni da implementare - Unità
DettagliArchitettura degli Elaboratori
Progetto CPU (multiciclo) slide a cura di Salvatore Orlando e Marta Simeoni Problemi con progetto a singolo ciclo Problemi del singolo ciclo! Ciclo di clock lungo! Istruzioni potenzialmente più veloci
DettagliProcessore. Memoria I/O. Control (Parte di controllo) Datapath (Parte operativa)
Processore Memoria Control (Parte di controllo) Datapath (Parte operativa) I/O Memoria La dimensione del Register File è piccola registri usati per memorizzare singole variabili di tipo semplice purtroppo
DettagliArchitettura degli Elaboratori B. Introduzione al corso. Componenti di un calcolatore convenzionale. (ciclo singolo) Progetto CPU. Contenuti del corso
Architettura degli Elaboratori B Introduzione al corso Salvatore Orlando Arch. Elab. - S. Orlando 1 Contenuti del corso Progetto della CPU CPU in grado di eseguire un sottoinsieme di istruzioni MIPS in
DettagliIl processore: unità di elaborazione
Il processore: unità di elaborazione Architetture dei Calcolatori (lettere A-I) Progettazione dell unità di elaborazioni dati e prestazioni Le prestazioni di un calcolatore sono determinate da: Numero
DettagliCalcolatori Elettronici
Calcolatori Elettronici CPU multiciclo: esercizi Massimiliano Giacomin 1 Prima tipologia di esercizi: valutazione delle prestazioni 2 Specchio riassuntivo su prestazioni e CPI 0) In generale: T esecuzione
DettagliL unità di controllo di CPU a singolo ciclo. Sommario
L unità di controllo di CPU a singolo ciclo Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano Riferimento sul Patterson: capitolo 4.2,
DettagliCorso di Architettura (Prof. Scarano) 09/06/2002
Lezione 3 La pipeline Vittorio Scarano rchitettra orso di Larea in Informatica Università degli Stdi di Salerno 2 Organizzazione della lezione La pipeline il concetto alcni problemi (le criticità) e le
DettagliSchema generale. Realizzazione della macchina hardware. Varietà di architetture HW. Gerarchie di macchine. varietà di sistemi operativi!
Schema di definizione di n Sistema Operativo Schema generale Realizzazione della macchina hardware Varietà di architettre HW Gerarchie di macchine varietà di sistemi operativi! Tradzione Tradzione Sorce
DettagliUn quadro della situazione. Lezione 28 Il Processore: unità di controllo (2) Dove siamo nel corso. Organizzazione della lezione. Cosa abbiamo fatto
Un quadro della situazione Lezione 28 Il Processore: unità di lo (2) Vittorio Scarano rchitettura Corso di Laurea in Informatica Università degli Studi di Salerno Input/Output Sistema di Interconnessione
DettagliCalcolatori Elettronici
Calcolatori Elettronici Tecniche Pipeline: Elementi di base Massimiliano Giacomin 1 Esecuzione delle istruzioni MIPS con multiciclo: rivisitazione - esame dell istruzione lw (la più complessa) - in rosso
DettagliProgetto CPU a singolo ciclo
Architettura degli Elaboratori e delle Reti Progetto CPU a singolo ciclo Proff. A. Borghese, F. Pedersini Dipartimento di Informatica Università degli Studi di Milano 1/50 Sommario! La CPU! Sintesi di
DettagliArchitettura degli Elaboratori
Architettura degli Elaboratori Linguaggio macchina e assembler (caso di studio: processore MIPS) slide a cura di Salvatore Orlando, Marta Simeoni, Andrea Torsello Architettura degli Elaboratori 1 1 Istruzioni
DettagliCALCOLATORI ELETTRONICI 15 aprile 2014
CALCOLATORI ELETTRONICI 15 aprile 2014 NOME: COGNOME: MATR: Scrivere nome, cognome e matricola chiaramente in caratteri maiuscoli a stampa 1 Di seguito è riportato lo schema di una ALU a 32 bit in grado
DettagliCalcolatori Elettronici A a.a. 2008/2009
Calcolatori Elettronici A a.a. 28/29 CPU multiciclo Massimiliano Giacomin Esempi di processori che usano controllo a singolo ciclo: NESSUNO! Perché? Periodo di clock: abbastanza lungo per garantire la
DettagliProgettazione dell unità di elaborazioni dati e prestazioni. Il processore: unità di elaborazione. I passi per progettare un processore
Il processore: unità di elaborazione Architetture dei Calcolatori (lettere A-I) Progettazione dell unità di elaborazioni dati e prestazioni Le prestazioni di un calcolatore sono determinate da: Numero
DettagliUnità di controllo della pipeline
Unità di controllo della pipeline Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@dsi.unimi.it Università degli Studi di Milano Riferimento al Patterson: 6.3 /5 Sommario La CPU
DettagliArch. Elab. - S. Orlando 2. unità funzionali possono essere usate più volte per eseguire la stessa
Progetto CPU (multiciclo) Salvatore Orlando Arch. Elab. - S. Orlando 1 Esempio di riduzione del ciclo di clock Effettua un taglio su grafo delle dipendenze corrispondente al circuito combinatorio, e inserisci
DettagliProblemi con progetto a singolo ciclo. Progetto CPU (multiciclo) Esempio di riduzione del ciclo di clock. Datapath multiciclo
Problemi con progetto a singolo ciclo Progetto CPU (multiciclo) Problemi del singolo ciclo Ciclo di clock lungo Istruzioni potenzialmente più veloci sono rallentate impiegano lo stesso tempo dell istruzione
DettagliProgetto CPU (multiciclo) Salvatore Orlando
Progetto CPU (multiciclo) Salvatore Orlando Arch. Elab. - S. Orlando 1 Problemi con progetto a singolo ciclo Problemi del singolo ciclo Ciclo di clock lungo Istruzioni potenzialmente più veloci sono rallentate
DettagliProgetto CPU (multiciclo)
Progetto CPU (multiciclo) Salvatore Orlando Arch. Elab. - S. Orlando 1 Problemi con progetto a singolo ciclo Problemi del singolo ciclo Ciclo di clock lungo Istruzioni potenzialmente più veloci sono rallentate
DettagliCALCOLATORI ELETTRONICI 29 giugno 2010
CALCOLATORI ELETTRONICI 29 giugno 2010 NOME: COGNOME: MATR: Scrivere chiaramente in caratteri maiuscoli a stampa 1. Si disegni lo schema di un flip-flop master-slave S-R sensibile ai fronti di salita e
DettagliGestione degli hazard
Gestione degli hazard etodologie di progettazione Hardware/Software- LS Ing. Informatica Limiti alla eseczione pipeline: i conflitti ( Hazard ) I conflitti (Hazard) impediscono che na istrzione venga esegita
DettagliArchitettura degli elaboratori CPU a ciclo singolo
Architettura degli elaboratori CPU a ciclo singolo Prof. Alberto Borghese Dipartimento di Scienze dell Informazione borghese@di.unimi.it Università degli Studi di Milano Riferimento sul Patterson: capitolo
DettagliGestione delle eccezioni (CPU multiciclo) La CPU pipeline
Architettura degli Elaboratori e delle Reti Lezione 22 Gestione delle eccezioni (CPU multiciclo) La CPU pipeline A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi
DettagliRealizzazione a cicli di clock multipli
Realizzazione a cicli di clock multipli Riprendiamo in esame la realizzazione dell'unità di calcolo per individuare, per ciascuna classe di istruzioni, le componenti utilizzate e suddividere le azioni
DettagliCPU (2) 2 CPU (2) 3 CPU (2) 4
pproccio lticiclo rchitettre dei Calcolatori l Processore () Prof. Francesco Lo Presti Sddividere l eseczione di na istrzione in pi passi (steps) Fetch, ecode, ecte, emory ccess, ack Ogni passo richiede
DettagliCALCOLATORI ELETTRONICI 29 giugno 2011
CALCOLATORI ELETTRONICI 29 giugno 2011 NOME: COGNOME: MATR: Scrivere chiaramente in caratteri maiuscoli a stampa 1. Si implementi per mezzo di una PLA la funzione combinatoria (a 3 ingressi e due uscite)
DettagliArchitettura degli Elaboratori
Architettura degli Elaboratori Linguaggio macchina e assembler (caso di studio: processore MIPS) slide a cura di Salvatore Orlando, Andrea Torsello, Marta Simeoni " Architettura degli Elaboratori 1 1 Istruzioni
DettagliSia per la II prova intercorso che per le prove di esame è necessaria la PRENOTAZIONE
Seconda Prova Intercorso ed Esami di Febbraio Lezione 24 Valutazione delle Prestazioni Vittorio Scarano rchitettura Corso di Laurea in Informatica Università degli Studi di Salerno Seconda prova intercorso:
DettagliProgetto CPU a singolo ciclo
Architettura degli Elaboratori e delle Reti Progetto CPU a singolo ciclo Proff. A. Borghese, F. Pedersini Dipartimento di Informatica Università degli Studi di Milano 1/60 Sommario v La CPU v Sintesi di
DettagliImplementazione semplificata
Il processore 168 Implementazione semplificata Copre un sottoinsieme limitato di istruzioni rappresentative dell'isa MIPS aritmetiche/logiche: add, sub, and, or, slt accesso alla memoria: lw, sw trasferimento
DettagliCalcolatori Elettronici B a.a. 2007/2008
Calcolatori Elettronici B a.a. 27/28 Tecniche di Controllo Massimiliano Giacomin Schema del processore (e memoria) Durante l esecuzione di un programma applicativo Pa, i circuiti interpretano le istruzioni
DettagliCalcolatori Elettronici B a.a. 2006/2007
Calcolatori Elettronici B a.a. 26/27 Tecniche di Controllo Massimiliano Giacomin Schema del processore (e memoria) Durante l esecuzione di un programma applicativo Pa, i circuiti interpretano le istruzioni
DettagliCPU multiciclo eccezioni CPU pipeline
Architettura degli Elaboratori e delle Reti Lezione 22 CPU multiciclo eccezioni CPU pipeline Proff. A. Borghese, F. Pedersini Dipartimento di Scienze dell Informazione Università degli Studi di Milano
Dettagli