La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Sistemi Complessi di reti sequenziali Pipeline Corso ASE - Prof. Antonino Mazzeo Ing. Valentina Casola 2009/2010 1.

Presentazioni simili


Presentazione sul tema: "Sistemi Complessi di reti sequenziali Pipeline Corso ASE - Prof. Antonino Mazzeo Ing. Valentina Casola 2009/2010 1."— Transcript della presentazione:

1 Sistemi Complessi di reti sequenziali Pipeline Corso ASE - Prof. Antonino Mazzeo Ing. Valentina Casola 2009/2010 1

2 Tempificazione dei sistemi sequenziali complessi I X U Y CK 2

3 Il segnale di clock Il clock è un segnale indipendente caratterizzato da un periodo di clock (o ciclo di clock) T CK. Frequenza del clock: f CK = 1/T CK ; Nel periodo T CK il segnale assume Il valore logico 1 per un tempo T H e il valore logico 0 per un tempo T L Il rapporto T H / T CK è detto duty-cycle Il passaggio dal valore 0 al valore 1 è detto fronte di salita Il passaggio dal valore 1 al valore 0 è detto fronte di discesa 3

4 Tempi caratteristici di un flip-flop Per essere riconosciuto correttamente, lingresso deve rimanere stabile allinterno di una finestra di tempo nellintorno di un fronte del clock Tempo di Set-Up (T s ) – Intervallo minimo che precede levento di clock durante il quale lingresso deve essere mantenuto stabile; Tempo di Hold (T H ) – Intervallo minimo che segue levento di clock durante il quale lingresso deve essere mantenuto stabile Tempo di propagazione (T q ) 4

5 Tempificazione di un sistema sequenziale: vincoli T deve soddisfare la condizione: T t q + τ c,max +t setup t q è il tempo di commutazione τ c,max è il tempo di calcolo della rete t setup è il tempo di set-up del registro Vincolo sui FF: t q + τ c,min >t h 5

6 Note: clock skew M M M M Δ Δ CK YW T + Δ t q + τ c,max +t setup t q + τ c,min >t h + Δ 6

7 Interconnessione fra reti sequenziali Rete 1 Rete 4 Rete 2 Rete 3 7

8 Ciascuna rete sequenziale può essere Una rete di Mealy Una rete di Moore Ciascuna rete può essere di tipo impulsivo o asincrona Se le reti sono di tipo differente la descrizione del funzionamento del sistema dipende dal tipo di ogni singola rete e dalla loro interconnessione Se le reti sono omogenee e di tipo LLC è possibile descrivere il loro comportamento in modo sistematico con metodi di specifica e verifica ben consolidati nel mondo industriale (i sistemi digitali complessi sono di questo tipo). 8

9 Determinazione del tempo di ciclo In una rete level input, level output, clocked (LLC) occorre determinare il periodo del clock, ovvero il tempo di ciclo (intervallo minimo tra due impulsi di abilitazione della rete) Il tempo di ciclo dipende dalla tipologia delle macchine adottate (Mealy, Moore) e dalla topologia della loro interconnessione; Analizziamo: – Catene a ciclo aperto, – Catene a ciclo chiuso 9

10 Catene aperte e catene chiuse di reti sequenziali Una catena aperta è costituita da una cascata di reti sequenziali in cui luscita delluna è applicata allingresso della successiva, fatta eccezione della prima e dellultima Rete Combin. 10

11 Reti di Mealy e di Moore e dipendenza dalle informazioni (input e stato) I S U S CK I S U S Rete di MealyRete di Moore 11

12 Definizioni e determinazione del ciclo di clock Per classificare le reti si introduce il concetto di percorso, fatto da diverse tratte connesse in cascata: – Percorso libero è fatto di tratte libere, ovvero costituite da sole reti combinatorie (es. funzione uscita e funzione stato prossimo); – Percorso condizionato, se è presente almeno una tratta condizionata, ovvero che contiene almeno un registro. 12

13 Catena aperta di macchine di Mealy I S U S CK I S U S I S U S 13

14 Determinazione del ciclo di clock per catena aperta Mealy Esiste più di un percorso libero che connette lingresso con luscita: – ω 1 (i 1,s 1 ), ω 2 (i 2,s 2 ),…….. ω n (i n,s n ) – ω 1 (i 1,s 1 ), ω 2 (i 2,s 2 ),…….. δ n (i n,s n ) T (n-1) t ω,max + max (t ω,max, t δ,max ) n t ω,max 14

15 Catena aperta di macchine di Mealy-Moore I S U S CK I S U S I S U S I S U S 15

16 Determinazione del ciclo di clock per catena aperta Mealy- Moore Esiste più di un percorso libero che connette lingresso con luscita; le tipologie di tratte libere: – Ingresso, tratte Mealy, tratta Moore – Tratta Moore, tratte Mealy, tratta Moore – Tratta Moore, tratte Mealy, uscita – Il T sarà calcolato considerando il tempo di propagazione massimo tra tutti i percorsi liberi 16

17 Catena aperta di macchine di Moore I S U S CK I S U S I S U S 17

18 Determinazione del ciclo di clock per catena aperta Moore Caso particolare del precedente, i percorsi liberi sono: – Ingresso esterno, tratta δ – Tratta ω, tratta δ – Tratta ω, uscita Il tempo di propagazione massimo è dato al più dalla somma di due reti combinatorie MA: lingresso applicato allingresso condiziona luscita solo dopo n cicli di clock, dunque è sempre necessario attendere nT 18

19 Catena chiusa di macchine di Mealy I S U S CK I S U S I S U S Queste macchine possono non funzionare correttamente, luscita dipende da se stessa e Il sistema può non stabilizzarsi: u n= ω n (i n,s n ) = ω n (ω n-1 (i n-1,s n-1 ),s n ) = ω n (ω n-1 ( ……. ω 1 (u 1,s 1 )),s n ) 19

20 Catena chiusa Mealy-Moore I S U S CK I S U S I S U S I S U S 20

21 Determinazione del ciclo di clock per catena chiusa Moore Come nel caso di catena chiusa ma senza ingressi ed uscite esterne: – Una tratta δ – Una tratta ω moore – Zero, una o più tratte ω mealy Il tempo di propagazione massimo è dimensionato dal massimo tra i tempi dei vari percorsi possibili 21

22 Realizzare una catena chiusa avendo solo macchine di Mealy: aggiunta registro I S U S CK I S U S M Percorsi: -ω2,δ1 -ω2, ω1 -δ2 22

23 Catena aperta di reti combinatorie FGH D D D D CK A Y T min = t q + t s + t pF + t pG + t pH 3 t p,comb 23

24 Pipeline: Introduzione Il miglioramento delle prestazioni di un generico circuito digitale è legato principalmente alla riduzione della profondità combinatoria Tale riduzione si può ottenere: – Ottimizzando le parti puramente combinatorie del circuito – Frazionando opportunamente le parti combinatorie per mezzo di registri Un generico data-path è costituito da una sequenza di operazioni eseguite in cascata: questa struttura si presta molto bene al frazionamento Una architettura in cui sono presenti registri con lo scopo di frazionare la computazione viene detta pipeline Nelle architetture dei calcolatori lintroduzione di pipeline aumenta il numero di istruzioni eseguite nellunità di tempo 24

25 Pipeline di reti combinatorie G F H M M M M M M M M Ck AXFXF YFYF XGXG 25

26 Tempificazione di una Pipeline T min max( t pF, t pG, t pH ) Il fattore guadagnato è pari al numero di stadi della pipe 26

27 Architetture pipeline parallele 3 reti con tempi di calcolo di 50 ns e una rete con tempo di calcolo di 100 ns – Frequenza di pipe non può essere migliore di 100 MHz (T=1/f=100 ns) e le tre reti più veloci sono sfruttate al 50% Soluzione parallela che duplica rete a 100 ns, con reti funzionanti in controfase, multiplate nel tempo 27

28 Architettura pipeline con reti parallelo φ/2 C1 C2 Cn M M M M M M M M M M T-FF φ φ/2 !φ/2 φ/2 28

29 Calcolo del tempo di ciclo T per la rete lenta è vincolato da 2T t f + 2τ cmax + τ mux + t setup da cui T τ cmax + ½(t f + 2τ mux + t setup) T per la rete veloce è vincolato da T t f + τ cmax + t setup Va scelto il massimo fra i due: T τ cmax + max(½(t f + τ mux + t setup ), (t f + t setup )) 29

30 Applicazioni delle pipeline alle CPU Lesecuzione di una istruzione assembler consiste nello svolgimento di alcune operazioni in sequenza E possibile scomporre una istruzione in un numero variabile di operazioni: – Una scelta comune consiste nella decomposizione in 5 operazioni – Le architetture moderne arrivano fino a 20 operazioni Le varie operazioni, dette fasi o stadi, possono essere eseguite: – Nello stesso ciclo di clock – In cicli di clock successivi Nel secondo caso si parla di una architettura pipeline 30

31 Esempio: Fasi di esecuzione del Processore DLX La decomposizione in 5 fasi consiste in – Fetch: Lettura dellistruzione (una o più parole) dalla memoria di programma. Listruzione viene memorizzata nel registro IR – Decode: Scomposizione dellistruzione in campi (codice operativo, registro, costante, ecc), a seconda del formato e delle modalità di indirazzamento – Execute: Esecuzione delle operazioni aritmetico-logiche oppure calcolo dellindirizzo di destinazione di un salto – Memory access: Accesso in lettura o scrittura alla memoria o ad una periferica – Write back: Salvataggio del risultato prodotto dallistruzione nel registro destinazione 31

32 Modello di riferimento del DLX Istruzione i IFIDEXMEMWB istruzione i+1 IFIDEXMEMWB istruzione i+2 IFIDEXMEMWB IFIDEXMEMWB istruzione i+1 IFIDEXMEMWB istruzione i+2 IFIDEXMEMWB 32

33 33 Pipeline: Speed up e latenza Teoricamente, se gli stage della pipe sono perfettamente bilanciati e non si verificano condizioni di stallo, il tempo per ogni singola istruzione è: Ti = tempo per istruzione senza pipe N stage della pipe Il tempo per avere la prima istruzione è detto tempo di latenza ( si ha ogni qual volta si verifica uno stallo) In realtà bisogna considerare il tempo di setup dei latch tra i vari stadi della pipe ed il bus skew

34 Fasi di esecuzione Si noti che: – Non tutte le fasi devono essere sempre presenti. Alcune istruzioni possono necessitare solo di alcune delle fasi descritte – Non tutte le fasi devono essere sempre distinte. Alcune istruzioni possono raggruppare due o più fasi in una sola – La fase di fetch è sempre presente – Fasi diverse possono avere durate diverse 34

35 35 Esempio: Sistemi Superscalari con più Pipeline Addizione: Addizione e Moltiplicazione:

36 Conclusioni Throghput: quantità di dati elaborati nellunità di tempo Thoughput = N operations / T Latenza: ritardo tra lingresso e luscita (tempo necessario da attendere per lesecuzione della prima istruzione) Latenza = Ty - Tx = T Lintroduzione di pipelining è vantaggioso in quanto: Throughput pipe >>Throughput no pipe Latenza pipe Latenza no pipe 36


Scaricare ppt "Sistemi Complessi di reti sequenziali Pipeline Corso ASE - Prof. Antonino Mazzeo Ing. Valentina Casola 2009/2010 1."

Presentazioni simili


Annunci Google