La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

La Tecnica PIPELINE Il DLX - Pipeline. OVERVIEW Significato Presupposti Operativi Sincronismo Presupposti per una Pipeline efficiente Bilanciamento delle.

Presentazioni simili


Presentazione sul tema: "La Tecnica PIPELINE Il DLX - Pipeline. OVERVIEW Significato Presupposti Operativi Sincronismo Presupposti per una Pipeline efficiente Bilanciamento delle."— Transcript della presentazione:

1 La Tecnica PIPELINE Il DLX - Pipeline

2 OVERVIEW Significato Presupposti Operativi Sincronismo Presupposti per una Pipeline efficiente Bilanciamento delle fasi UnderSuper Under e Super Pipeline Vantaggi Svantaggi Deluxe Pipeline nel processore Deluxe Significato Presupposti Operativi Sincronismo Presupposti per una Pipeline efficiente Bilanciamento delle fasi UnderSuper Under e Super Pipeline Vantaggi Svantaggi Deluxe Pipeline nel processore Deluxe

3 Significato Pipeline Catena di Montaggio Pipeline come una Catena di Montaggio Invece di utilizzare piu unità operative specializzate su tutte le fasi dellintero processo impiega più unità operative indipendenti, non interscambiaili e specializzate su diverse fasi dellintero processo meno complesse meno costose facilmente riproducibili Unità Operative centralizzato non troppo complesso Unità di Controllo dopo una latenza NxT completo ogni processo in un tempo T Speed – Up: N N: num Unità Operative T: tempo massimo per operazione complessità proporzionale a NArchitettura

4 543 Significato 2 1 Non BilanciateAtomiche Fasi Non Bilanciate e Atomiche Il processore è costruito da più Unità Differenti e Indipendenti che lavorano: in Parallelo su fasi differenti di istruzioni differenti in Serie su diverse fasi dellesecuzione della medesima istruzione Ogni unità preleva dallunità precedente listruzione trasformata e la trasforma ulteriormente passandola allunità successiva Pipeline Catena di Montaggio Pipeline come una Catena di Montaggio Le diverse Fasi dellEsecuzione le possiamo identificare in corrispondenza delle differenti unità o macro unità hardware (Memoria, ALU, Registri...) interessate dallesecuzione dellistruzione Risultato dellesecuzione Programma Processore Pipeline con 5 unità operative parallele 1 Istr. 2Istr. 2 Istr. 3 Istr. 4Istr. 4 Istr

5 Gestione della Pipeline NO Non BilanciateAtomiche Fasi Non Bilanciate e Atomiche La Fase 3 più Lenta fissa la latenza T anche per le altre Fasi ContestoSincrono TTT Presupposti Operativi: Sincronismo

6 Non BilanciateAtomiche Fasi Non Bilanciate e Atomiche Hardware più semplice Hardware più semplice (costruisco 3 fasi indipendenti) Basso Speed-Up Basso Speed-Up (sovrappongo fino a 3 istruzioni) 3 BilanciateAtomiche Fasi Bilanciate e Non Atomiche Fase unione di più fasi atomiche Bilanciamento delle Fasi 2 1 UNDER – Pipeline () UNDER – Pipeline (DSP)

7 Non BilanciateAtomiche Fasi Non Bilanciate e Atomiche Hardware più complesso Hardware più complesso (costruisco 9 fasi indipendenti) Alto Speed-Up Alto Speed-Up (sovrappongo fino a 9 istruzioni) BilanciateAtomiche Fasi Bilanciate e Atomiche SottoFasi come scomposizione di Fasi Bilanciamento delle Fasi SUPER – Pipeline 54b4a3c3b3a2 1b1a

8 Duplico le risorseDimezzo la latenza Duplico le risorse ma ne Dimezzo la latenza Ridondanza Hardware Bilanciamento delle Fasi Non BilanciateAtomiche Fasi Non Bilanciate e Atomiche Aumenta lo Speed-Up Complico poco larchitettura

9 Vantaggi La tecnica pipeline (con K fasi) al crescere del numero di istruzioni (N>>K) impiega un tempo complessivo di esecuzione N x T (dove T è il tempo di fase) Ridurre il tempo di fase T fa aumentare lo Speed-Up del processore Ridurre il tempo di fase T (aumentando la lunghezza della pipeline k oppure utilizzando la ridondanza hardware) fa aumentare lo Speed-Up del processore T minimo tecnologia utilizzata T minimo è intimamente legato alla tecnologia utilizzata

10 Svantaggi Aumentare la lunghezza della pipeline k fa sì aumentare lo Speed-Up del processore ma: Aumenta il numero di Conflitti aumenta la Gestione del processore Aumenta il numero di Conflitti (rallentandone lesecuzione) e aumenta la Gestione del processore (che volutamente non risolve ogni tipo di conflitto)

11 DLX Il processore Deluxe - DLX Pipeline a 5 fasi Architettura Pipeline a 5 fasi

12 Instruction Fetch cycle: IR <- MEM [PC] NPC <- PC + 4 Operation: Send out the PC and fetch the instruction from memory into the instruction register (IR) Increment the PC by 4 to address the next sequential instruction The IR is used to hold the instruction that will be needed on subsequent clock cycles The NPC is used to hold the next sequential PC (program counter) [ I F ][ I F ][ I F ][ I F ] DLX Il processore Deluxe - DLX Fasi dellEsecuzione Fasi dellEsecuzione dellIstruzione

13 Instruction Decode/register fetch cycle: A <- Regs [IR6..10] B <- Regs [IR11..15] Imm <- ( (IR16)16 ## IR ) Operation: fixedDLX Instruction Format fixed-field decoding - Decode the instruction and access the register file to read the registers. - the output of the general-purpose registers are read into two temporary registers (A and B) for use in later clock cycles. - the lower 16 bits of the IR are also sign-extended and stored into the temporary register IMM, for use in the next cycle. - decoding is done in parallel with reading registers, which is possible because these fields are at a fixed location in the DLX Instruction Format. This technique is known as fixed-field decoding. [ I D ][ I D ][ I D ][ I D ] DLX Il processore Deluxe - DLX Fasi dellEsecuzione Fasi dellEsecuzione dellIstruzione

14 Memory reference: ALUOutput <- A + Imm Register - Register (ALU) : ALUOutput <- A op B Register - Immediate (ALU) : ALUOutput <- A op Imm Branch: ALUOutput <- NPC + Imm Cond <- ( A op 0 ) The ALU adds the operands to form the effective address and places the result into the register ALUOutput The ALU performs the operation specified by the opcode on the value in register A and on the value in register B. The result is placed in the register ALUOutput. The ALU performs the operation specified by the opcode on the value in register A and on the value in register Imm. The result is placed in the register ALUOutput. The ALU adds the NPC to the sign-extended immediate value in Imm to compute the address of the branch target. Register A, which has been read in the prior cycle, is checked to determine whether the branch is taken. The comparison operation op is the relational operator determined by the branch opcode (e.g. op is "==" for the instruction BEQZ) [ EX ][ E X ][ EX ][ E X ] Execution/effective address cycle: DLX Il processore Deluxe - DLX Fasi dellEsecuzione Fasi dellEsecuzione dellIstruzione

15 Memory reference: LMD <- Mem [ALUOutput] or Mem [ALUOutput] <- B Operation: Operation: - Access memory if needed - If the instruction is load, data returns from memory and is placed in the LMD (load memory data) register - If the instruction is store, data from the B register is written into memory. - In either case the address used is the one computed during the prior cycle and stored in the register ALUOutputBranch: if (cond) PC <- ALUOutput else PC <- NPC Operation: Operation: - If the instruction branches, the PC is replaced with branch destination address in the register ALUOutput - Otherwise, PC is replaced with the incremented PC in the register NPC Memory access/branch completion cycle: [ M EM ][ M E M ][ M EM ][ M E M ] DLX Il processore Deluxe - DLX Fasi dellEsecuzione Fasi dellEsecuzione dellIstruzione

16 Register-Register (ALU) : Regs [IR ] <- ALUOutput Register-Immediate (ALU) : Regs [IR ] <- ALUOutput Load instruction: Regs [IR ] <- LMD Operation: - Write the result into the register file, whether it comes from the memory(LMD) or from ALU (ALUOutput) - the register destination field is in one of two positions depending on the opcode Write-back cycle: [ W B ][ W B ][ W B ][ W B ] DLX Il processore Deluxe - DLX Fasi dellEsecuzione Fasi dellEsecuzione dellIstruzione

17 Architettura Pipeline Architettura Pipeline Vector Processor DLX - Pipeline Calcolo Vettoriale su CPU DLX - Pipeline: Calcolo eseguito su CPU parallela Calcolo eseguito su CPU pipeline


Scaricare ppt "La Tecnica PIPELINE Il DLX - Pipeline. OVERVIEW Significato Presupposti Operativi Sincronismo Presupposti per una Pipeline efficiente Bilanciamento delle."

Presentazioni simili


Annunci Google