120 likes | 281 Views
La Tecnica PIPELINE. OVERVIEW. Significato Presupposti Operativi Sincronismo Presupposti per una Pipeline efficiente Bilanciamento delle fasi Under e Super Pipeline Vantaggi Svantaggi. Unità Operative. Speed – Up: N. meno complesse meno costose facilmente riproducibili.
E N D
OVERVIEW • Significato • Presupposti Operativi • Sincronismo • Presupposti per una Pipeline efficiente • Bilanciamento delle fasi • Under e Super Pipeline • Vantaggi • Svantaggi
Unità Operative Speed – Up: N meno complesse meno costose facilmente riproducibili dopo una latenza NxT completo ogni processo in un tempo T Unità di Controllo Architettura centralizzato non troppo complesso complessità proporzionale a N Significato Pipelinecome unaCatena di Montaggio N: num Unità Operative T: tempo massimo per operazione Henry Ford, proprietario dell’omonima fabbrica automobilistica di Detroit, nel 1927 costruisce la prima catena di montaggio Invece di utilizzare piu unità operative specializzate su tutte le fasi dell’intero processo impiega più unità operative indipendenti, non interscambiaili e specializzate su diverse fasi dell’intero processo
Significato Pipelinecome unaCatena di Montaggio Il processore è costruito da più Unità Differenti e Indipendentiche lavorano: • in Parallelo su fasi differenti di istruzioni differenti • in Serie su diverse fasi dell’esecuzione della medesima istruzione Ogni unità preleva dall’unità precedente l’istruzione trasformata e latrasformaulteriormente passandola all’unità successiva Programma Risultato dell’esecuzione 4Istr. 3 3Istr. Fasi Non Bilanciate e Atomiche 2Istr. 1 4 2 Istr. 3 Istr. 6 Istr. 1 Istr. 4 Istr. 5 Istr. 4 Istr. 5 Istr. 3 Istr. 2 Istr. 1 Istr. 1 Istr. 2 Istr. 4 Istr. 3 Istr. 2 Istr. 3 Istr. 1 Istr. 1 Istr. 2 Istr. 2 1 Istr. 5 1 1 4 3 2 5 5 4 2 3 Processore Pipeline con 5 unità operative parallele Le diverse Fasi dell’Esecuzione le possiamo identificare in corrispondenza delle differenti unità o macro unità hardware (Memoria, ALU, Registri ...) interessate dall’esecuzione dell’istruzione
3 Fasi Non Bilanciate e Atomiche 1 4 2 5 3 3 3 NO 1 1 1 4 4 4 3 3 3 3 3 3 3 2 2 2 5 5 5 1 1 1 1 1 1 1 4 4 4 4 4 4 4 2 2 2 2 2 2 2 5 5 5 5 5 5 5 T T T Gestione della Pipeline Presupposti Operativi: Sincronismo Contesto Sincrono La Fase 3 più Lenta fissa la latenza T anche per le altre Fasi 1 2 3 4 5
Bilanciamento delle Fasi 3 Fasi Non Bilanciate e Atomiche 4 1 2 5 1’ 3’ Fase unione di più fasi atomiche 2’ Fasi Bilanciate e Non Atomiche Hardware più semplice (costruisco 3 fasi indipendenti) Basso Speed-Up (sovrappongo fino a 3 istruzioni) UNDER – Pipeline (DSP)
Bilanciamento delle Fasi 3 Fasi Non Bilanciate e non Atomiche 4 1 2 5 2 1a 1b 4a 3a 3b 3c 4b 5 SottoFasi come scomposizione di Fasi Fasi Bilanciate e Atomiche Hardware più complesso (costruisco 9 fasi indipendenti) Alto Speed-Up (sovrappongo fino a 9 istruzioni) SUPER – Pipeline
Bilanciamento delle Fasi 3 Fasi Non Bilanciate e Atomiche 4 1 2 5 3 3 4 1 2 5 Ridondanza Hardware Duplico le risorse ma ne Dimezzo la latenza Aumenta lo Speed-Up Complico poco l’architettura
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) T minimo è intimamente legato alla tecnologia utilizzata Ridurre il tempo di fase T (aumentando la lunghezza della pipeline k oppure utilizzando la ridondanza hardware) fa aumentare lo Speed-Up del processore
Svantaggi Aumentare la lunghezza della pipeline k fa sì aumentare lo Speed-Up del processore ma: Aumenta il numero di Conflitti (rallentandone l’esecuzione)e aumenta la Gestione del processore (che volutamente non risolve ogni tipo di conflitto)
Architettura PipelineVECTOR Processor Calcolo Vettoriale su CPU Pipeline: DLX DSP-TI Calcolo eseguito su CPU parallela Calcolo eseguito su CPU pipeline
Il processore Deluxe - DLX Architettura Pipeline a 5 fasi