1 / 65

Metodologie di Stima e Ottimizzazione della Potenza Dissipata nei Circuiti e Sistemi Digitali

Metodologie di Stima e Ottimizzazione della Potenza Dissipata nei Circuiti e Sistemi Digitali. Cristina Silvano Dottorato di Ricerca in Ingegneria dell’Informazione - XI Ciclo Dipartimento di Elettronica per l’Automazione Università degli Studi di Brescia Anno Accademico 1997-1998. Sommario.

donagh
Download Presentation

Metodologie di Stima e Ottimizzazione della Potenza Dissipata nei Circuiti e Sistemi Digitali

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Metodologie di Stima e Ottimizzazionedella Potenza Dissipatanei Circuiti e Sistemi Digitali Cristina Silvano Dottorato di Ricerca in Ingegneria dell’Informazione - XI Ciclo Dipartimento di Elettronica per l’Automazione Università degli Studi di Brescia Anno Accademico 1997-1998

  2. Sommario • Introduzione • Obiettivi della Ricerca • Metodologia di Stima della Potenza Dissipata a Livello Software • Metodologia di Stima della Potenza Dissipata ad Alto Livello • Tecniche di Codifica per Ridurre la Potenza Dissipata a Livello dei Bus di Sistema • Metodologia di Stima della Potenza Dissipata a Livello dei Bus di Sistema • Tecniche di Assegnamento degli Stati nelle FSM per Ridurre la Potenza Dissipata • Conclusioni e Sviluppi Futuri Cristina Silvano - Università di Brescia

  3. Introduzione • Le problematiche legate al consumo di potenza nei circuiti integrati e sistemi digitali sono diventate di importanza fondamentale a causa di diversi fattori. • Fattori tecnologici: • Aumento delle frequenze di funzionamento • Crescente livello di integrazione • Fattori legati all’evoluzione del mercato: • Enorme diffusione di sistemi portatili alimentati da batterie a limitata autonomia • Fattori economici • La dissipazione di potenza causa surriscaldamento pertanto sono necessari package costosi che implicano un incremento del costo globale dei dispositivi Cristina Silvano - Università di Brescia

  4. Introduzione • L’enorme diffusione sul mercato di sistemi portatili ad elevate prestazioni ha reso il problema del consumo di potenza contestuale al problema del raggiungimento delle prestazioni. • Tecniche di progetto orientate a bassa dissipazione di potenza e accurati metodi di stima della potenza devono essere considerati ai diversi livelli di astrazionedurante la progettazione. • Tecniche di ottimizzazione e stima della potenza dissipata ad alto livellosono fondamentali per determinare il consumo globale e per raggiungere le prestazioni del sistema nel rispetto dei tempi di progetto. Cristina Silvano - Università di Brescia

  5. Introduzione • Principali vantaggi delle tecniche di ottimizzazione e stima della potenza ad alto livello: • Determinare in anticipo il bilancio di potenza delle componenti HW e SW di un sistema prima che i dati di progetto siano disponibili, senza sintetizzare ogni alternativa di progetto. • Esplorare lo spazio di progetto architetturale in tempi accettabili e misurare l’efficacia e i vantaggi delle diverse soluzioni. • Raggiungere le prestazioni globali nel rispetto dei tempi di progetto. • L’accuratezza relativadelle stime ad alto livello è molto più importante dell’accuratezza assoluta, infatti l’obiettivo finale è il confronto di diverse alternative di progetto. • Ad alto livello possono essere sfruttati maggiori gradi di libertà per realizzare ottimizzazioni della potenza dissipata. Cristina Silvano - Università di Brescia

  6. Sorgenti di Dissipazione di Potenza nei Circuiti CMOS • Tre sono le sorgenti di dissipazione di potenza nei circuiti CMOS: PMedia = PComm. + PCorto-Circuito + PPerdita • Parte predominante è PComm La maggior parte delle tecniche di riduzione della potenza è costituita da tecniche di ottimizzazione della potenza di commutazione: PComm. =  CL V 2dd f CLK dove  è l’attività di commutazionedi una porta logica definita come probabilità che il nodo di uscita esegua una transizione ad ogni ciclo di clock. • Si definisce capacità efficaceCeff=  CLil termine che include sia la capacità di carico sia l’attività di commutazione. • Fissata fCLK, per minimizzare PComm occorre: • Ridurre la capacità efficace Ceff • Ridurre la tensione di alimentazione Vdd Cristina Silvano - Università di Brescia

  7. Obiettivi della Ricerca • Definizione di tecniche di stima della potenza dissipata a livello sistema da integrare in un flusso di progetto congiunto HW/SW per sistemi digitali. • Metodologia di stima della potenza dissipata a livello software. • Metodologia di stima della potenza dissipata ad alto livello. • Metodologia di stima della potenza dissipata a livello dei bus di sistema. • Definizione di tecniche di ottimizzazione della potenza dissipata a livello sistema. • Tecniche di codifica dei bus di sistema adatte per la comunicazione tra microprocessore e sotto-sistema di memoria. • Tecniche di assegnamento degli stati nelle Macchine a Stati Finiti (FSM). Cristina Silvano - Università di Brescia

  8. Metodologia di Stima della Potenza a Livello Software • La disponibilità di una metodologia di progetto congiunto HW/SW è di primaria importanza durante tutte le fasi del progetto di sistemi digitali dedicati. • Le tecniche di co-progettazione si propongono di raggiungere i requisiti a livello sistema sfruttando la sinergia tra le parti HW e SW. • Metriche di stima della potenza associata al software sono necessarie per guidare la fase di partizionamento in modo da misurare e confrontare soluzioni di progetto alternative . Cristina Silvano - Università di Brescia

  9. Principali Tecniche di Stima della Potenza a Livello Software • Tecniche di stima della potenza associata al software sono apparse soltanto recentemente. • Approcci basati sulla simulazione della descrizione a livello RT o logico del processore. • Approcci basati sulla stima dell’attività di commutazione dei bus di sistema. • Approcci basati sulla stima a livello di istruzione. • Non esistono tool commerciali per l’analisi di potenza del software. Cristina Silvano - Università di Brescia

  10. Metodologia di Stima della Potenza a Livello Software • Obiettivi della ricerca: • Definizione di una metodologia di stima statica e dinamica della potenza a livello del software da integrare in un ambiente di co-progettazione HW/SW per sistemi dedicati. • Metodologia di analisi basata sulle caratteristiche dell’architettura di sistema in termini di processore e sotto-sistema di memoria. • Indipendenza della metodologia proposta dal linguaggio di specifica ad alto livello e dal processore target. • Realizzazione di un programma per l’applicazione automatica della metodologia proposta. Cristina Silvano - Università di Brescia

  11. Ambiente di Co-progettazione TOSCA • L’ambiente di co-progettazione TOSCA (Tools for System Co-design Automation) costituisce il framework per lo sviluppo della metodologia di stima proposta. • Il metodo di stima parte dal modello del sistema interno all’ambiente TOSCA e basato sui linguaggi OCCAM2 e VIS: • Il linguaggio VIS (Virtual Instruction Set) costituisce un livello di descrizione intermedia (pseudo-assembler) che permette alla metodologia di essere indipendente dal processore target. • Il linguaggio OCCAM2 consente alla metodologia proposta di essere indipendente da: • Linguaggio di descrizione ad alto livello. • Caratterizzazione specifica del sistema in termini di parti HW e SW (partizionamento). • Il linguaggio OCCAM2 permette la modellizzazione delle funzionalità di sistema ad alto livello attraverso la rappresentazione di processi paralleli e sequenziali. Cristina Silvano - Università di Brescia

  12. Ambiente di Co-progettazione TOSCA Cristina Silvano - Università di Brescia

  13. Metodologia di Stima della Potenza a Livello Software Design Entry LEVEL 0 Estimation LEVEL 0 Profiling OCCAM2 Annotated OCCAM2 Compilation & Linking Back-Annotation LEVEL 1 Estimation LEVEL 1 Profiling VIS Annotated VIS Mapping Back-Annotation Libraries LEVEL 2 Annotation ASSEMBLER Annotated ASSEMBLER Cristina Silvano - Università di Brescia

  14. Metodologia di Stima della Potenza a Livello Software • Analisi in potenza operante a 3 livelli di descrizione: • Linguaggio ad alto livello (OCCAM2) • Linguaggio pseudo-assembler a livello intermedio (VIS) • Linguaggio assembler del processore target • Dati relativi alla caratterizzazione in potenza dell’architettura di sistema sono raccolti in 2 file: • Processor Technology File: contiene i dati di potenza associati ad ogni istruzione e relative modalità di indirizzamento previste dall’insieme di istruzioni del processore target. • Memory Technology File: contiene i dati di potenza delle operazioni di lettura/scrittura dei diversi livelli di gerarchia del sotto-sistema di memoria (on-processor e off-processor). Cristina Silvano - Università di Brescia

  15. Metodologia di Stima della Potenza a Livello Software • Compilazione del Software • PHASE 1: Compilazione da OCCAM2 a VIS • PHASE 2: Mappatura da VIS a target-assembler • Back-Annotation del Software • PHASE 1 : Back-Annotation da target-assembler a VIS • PHASE 2: Back-Annotation da VIS a OCCAM2 • Stima della Potenza del Software (Analisi Statica) • LEVEL 2: Fase di annotazione in potenza • LEVEL 1: Fase di stima della potenza a livello intermedio • LEVEL 0: Fase di stima della potenza ad alto livello • Profiling del Software (Analisi Dinamica) • LEVEL 0: Profiling funzionale di OCCAM2 • LEVEL 1: Profiling strutturale di VIS Cristina Silvano - Università di Brescia

  16. Compilazione del Software • PHASE 1: Compilazione da OCCAM2 a VIS • Il codice VIS viene generato attraverso diversi passi di compilazione controllabili dall’utente. • Il codice VIS viene schedulato basandosi su un approccio semi-dinamico. • Applicate diverse strategie di scheduling. • Per gli scopi della fase di back-annotation, ogni istruzione VIS mantiene traccia dell’istruzione OCCAM2 originaria. • PHASE 2: Mappatura da VIS a target-assembler • La mappatura è basata su una libreria. • Re-targeting non coinvolge la prima fase di compilazione. • Per gli scopi della fase di back-annotation, ogni istruzione del target-assembler mantiene traccia dell’istruzione VIS originaria. Cristina Silvano - Università di Brescia

  17. Back-Annotation del Software • PHASE1 : Back-Annotation da target-assembler a VIS • Le istruzioni assembler sono caratterizzate in base ai dati contenuti nei file tecnologici relativi al processore target. • Le figure di consumo di potenza dipendono dalle modalità di indirizzamento previste e dall’architettura del sotto-sistema di memoria. • La dissipazione statica di un’istruzione VIS viene calcolata sommando i contributi delle istruzioni assembler espanse. • PHASE 2: Back-Annotation da VIS a OCCAM2 • La dissipazione statica di un’istruzione OCCAM2 viene calcolata sommando i contributi delle istruzioni VIS espanse. • La back-annotation considera il fatto che la traduzione da istruzioni complesse coinvolge larghe porzioni del codice VIS. Cristina Silvano - Università di Brescia

  18. Stima della Potenza del Software (Analisi Statica) • LEVEL 2: Fase di annotazione in potenza • Le istruzioni assembler sono annotate con i dati derivati dai file tecnologici relativi al processore target. • LEVEL 1: Fase di stima della potenza a livello intermedio • Le istruzioni VIS sono annotate con i dati derivati dal modello analitico e parametrico del set di istruzioni del processore target. • Differenti insiemi di parametri caratterizzano i diversi processori. • Sia il modello analitico sia i parametri sono derivati da una fase di benchmarking e analisi statistica. • LEVEL 0: Fase di stima della potenza ad alto livello • La potenza associata al codice OCCAM2 funzionale viene derivata dalla stima ottenuta a livello intermedio. • Si considera il costo implicito dovuto allo scheduling e alla gestione di strutture dati ausiliarie. Cristina Silvano - Università di Brescia

  19. Profiling del Software (Analisi Dinamica) • LEVEL 0: Profiling funzionale del codice OCCAM2 • Le istruzioni funzionali del codice OCCAM2 vengono simulate. • Il profiling a questo livello risulta di accuratezza limitata ma richiede tempi di esecuzione ridotti. • LEVEL 1: Profiling strutturale del codice VIS • Le istruzioni del codice VIS compilato e schedulato vengono simulate. • Il profiling a questo livello fornisce stime più accurate al costo di un maggior tempo di esecuzione. Cristina Silvano - Università di Brescia

  20. Metodologia di Stima della Potenza ad Alto Livello • Principali problemi legati alla stima di potenza ad alto livello: • La stima di potenza è fortemente dipendente dai vettori di ingresso (strongly pattern-dependent) cioè dipende dalle caratteristiche degli ingressi applicati al circuito. • Ai più alti livelli di astrazione, la conoscenza di alcune caratteristiche del circuito è molto limitata. Cristina Silvano - Università di Brescia

  21. Metodologia di Stima della Potenza ad Alto Livello • Obiettivi della ricerca: • Definizione di un ambiente integrato per la stima della potenza associata alla parte HW dei sistemi dedicati descritti in VHDL a livello comportamentale e RT e basato sulla probabilità dei segnali di ingresso fornite dal progettista. • Possibilità di confrontare diverse soluzioni nello spazio di progetto architetturale senza richiedere la sintesi del progetto. • Realizzazione di un programma per l’applicazione automatica del modello teorico studiato. Cristina Silvano - Università di Brescia

  22. Principali Tecniche di Stima della Potenza ad Alto Livello • Tecniche di stima della potenza ad alto livello sono apparse soltanto recentemente. • Livello Architetturale/RT • Metodi analitici, basati su correlazione tra potenza dissipata e capacità/attività di commutazione dei nodi. • Metodi empirici, basati su un approccio di macro-modellizzazione a partire da misure di potenza ricavate da implementazioni esistenti. • Livello Comportamentale • Predizione statica dell’attività, basata su analisi statica per stimare la frequenza di accesso alle diverse risorse. • Predizione dinamica dell’attività, basata su analisi dinamica per determinare le frequenze di attivazione delle diverse risorse. • Il mercato dei tool EDA non offre strumenti per l’analisi accurata della potenza ad alto livello. Cristina Silvano - Università di Brescia

  23. Architettura Obiettivo a Livello Sistema Approccio System-On-a-Chip (SOC) Sistema sincrono e tutti i trasferimenti avvengono a livello di registri Cristina Silvano - Università di Brescia

  24. Modello di Stima della Potenza ad Alto Livello • Il modello è basato su unmetodo analiticoche correla la potenza dissipata associata alla descrizione VHDL alle capacità e attività di commutazione dei nodi. • L’approccio di stima è gerarchico: • Modelli analitici progettati ad-hoc per ogni tipologia di elementi dell’architettura obiettivo. • Modelli analitici basati su una libreria di macro-moduli e celle standard. • L’approccio di stima è debolmente dipendente dai pattern di ingresso e richiede probabilità di ingresso che riflettano il comportamento tipico degli ingressi. • Modello basato su stima probabilistica dell’attività di commutazione; le probabilità di ingresso sono derivate dalla specifica a livello sistema. Cristina Silvano - Università di Brescia

  25. Modello di Stima della Potenza ad Alto Livello • La potenza media dissipata da un generico ASIC è composta da: P = PIO + PCORE dove PIOe PCOREsono la potenza media dissipata dai nodi di ingresso/uscita e dai nodi interni dell’ASIC. • PCORE può essere espressa come: PCORE = PDP + PMEM + PCNTR + PPROC + PCLK dove i singoli termini rappresentano la potenza media dissipata da data-path, memoria, logica di controllo, processore e logica di distribuzione del clock. Cristina Silvano - Università di Brescia

  26. Stima di PDATA-PATH • La potenza media dissipata dal data-path è composta da: PDP = PREG + PMUX + PFU dove: PREG potenza media dissipata dai registri; PMUX potenza media dissipata dai multiplexer; PFU potenza media dissipata dalle unità funzionali. • Stima di PREG: • Il metodo denominatolive variable analysisè stato applicato al codice VHDL a livello comportamentale per stimare il numero di registri richiesti e la massima attività di commutazione di ogni registro. • L’algoritmo esamina la vita di una variabile in base alla sua definizione e uso nelle istruzioni del codice VHDL. • Il modello analitico dei registri tiene conto sia della potenza di commutazionesia della potenza di non-commutazione, dovuta ai pilotanti interni del clock. Cristina Silvano - Università di Brescia

  27. Stima di PDATA-PATH • Stima di PMUX: • Stima del numero dei percorsi nel data-path a partire dal codice VHDL per determinare la dimensione e il numero dei multiplexer. • Definizione del modello di potenza di un multiplexer non-invertente a due ingressi, basato sulla probabilità statica dell’ingresso di selezione e sulla massima attività di commutazione degli ingressi di dato. • Stima di PFU: • I modelli analitici delle unità funzionali sono basati sulla stima della complessità logica. • La complessità logica delle unità funzionali è descritta in termini di porte logiche equivalenti. Cristina Silvano - Università di Brescia

  28. Modello di Potenza delle FSM INGRESSI USCITE PRIMARI PRIMARIE x y 1 1 x y 2 2 x y n LOGICA m COMBINATORIA b b STATO STATO 1 1 b b PRESENTE PROSSIMO 2 2 b b VAR VAR REGISTRI DI STATO CLK Cristina Silvano - Università di Brescia

  29. Stima di PCNTR • La stima di potenza delle FSM, descritte a livello di Grafo di Transizione degli Stati (STG), è di tipo probabilistico e basata sul calcolo delle probabilità di transizione dei nodi, ricavate modellizzando le FSM come catene di Markov. • La potenza media dissipata dalla logica di controllo è composta da: PCNTR = PIN + PST_REG + PCOMB + POUT dove: PIN potenza media dissipata dagli ingressi primari; PST_REGpotenza media dissipata dai registri di stato; PCOMB potenza media dissipata dalla logica combinatoria; POUT potenza media dissipata dalle uscite primarie. Cristina Silvano - Università di Brescia

  30. Stima di PCNTR • Stima di PIN: • La stima di potenza dipende dalle attività di commutazione degli ingressi primari, ricavate dalla specifica a livello sistema o da simulazioni ad alto livello, e dalle capacità degli ingressi. • Stima di PST_REG: • L’attività di commutazione delle linee di stato dipende dalla codifica degli stati e dalle probabilità totali di transizione di stato. • Il modello analitico dei registri tiene conto sia della potenza di commutazione sia della potenza di non-commutazione. • Stima di PCOMB: • La stima di potenza della logica combinatoria è basata su una implementazione a due-livelli. • Stima di POUT: • La stima di potenza dipende dalle attività di commutazione delle uscite primarie, ricavate in base alla codifica delle uscite e alle probabilità totali di transizione delle uscite. Cristina Silvano - Università di Brescia

  31. Risultati Sperimentali • Risultati sperimentali sono stati ricavati da FSM standard del benchmark MCNC e da casi di studio industriali. • Le stime sono state confrontate con quelle ottenute dal tool Design Power di Synopsys per la stima di potenza operante a livello logico in modalità probabilistica. • La libreria di celle utilizzata è la libreria HCMOS6 di ST caratterizzata da 0.35 m e 3.3 V e operante a frequenza di 100 MHz. Cristina Silvano - Università di Brescia

  32. FSM - Potenza Sequenziale [W] Cristina Silvano - Università di Brescia

  33. FSM - Potenza Combinatoria [W] Cristina Silvano - Università di Brescia

  34. FSM - Potenza Totale [W] Cristina Silvano - Università di Brescia

  35. Risultati Sperimentali Cristina Silvano - Università di Brescia

  36. Tecniche di Codifica a Livello dei Bus di Sistema • Nei circuiti VLSI, le capacità di carico dei nodi di I/O sono maggiori di alcuni ordini di grandezza rispetto alle capacità dei nodi interni la potenza dissipata dagli I/O contribuisce per una frazione considerevole alla potenza di commutazione globale. • Un significativo risparmio di potenza può essere ottenuto diminuendo l’attività di transizione degli I/O attraverso tecniche di codifica. • Svantaggi: • Aumento della potenza interna a causa della presenza dei circuiti di codifica/decodifica. • Eventuale aggiunta di bit di ridondanza. Cristina Silvano - Università di Brescia

  37. Principali Tecniche di Codifica a Livello dei Bus di Sistema • Tecniche di codifica a livello di bus di sistema per limitare il numero di transizioni dei bus dati e indirizzi: • Per bus dati, caratterizzati da informazioni da trasmettere distribuite in modo casuale: • Codice One-hot garantisce 2 transizioni per ogni ciclo, ma richiede 2N bit. • Codice Bus-Invert aggiunge ridondanza per segnalare che gli N bit di dato trasmessi sono stati invertiti, quando la distanza di Hamming tra due dati successivi è maggiore di N/2. • Per bus indirizzi, caratterizzati da elevata sequenzialità: • Codice Gray è un codice non-ridondante che garantisce un singolo bit di transizione per indirizzi consecutivi. • Codici basati sulla definizione di Working Zone relativa allo spazio di indirizzamento e adozione del codice Modified One-hot (MOE). Cristina Silvano - Università di Brescia

  38. Codice Bus-Invert • Assunzioni: pattern equiprobabili e incorrelati  la probabilità di avere 0 oppure 1 su ogni linea del bus è pari a ½ in media N/2 transizioni per ciclo di clock sul bus. • Metodo di codifica: (B (t), INV (t)) = (b (t), 0) se H (t) N/2 (b´ (t), 1) se t > 0  H (t) > N/2 dove B (t) bus codificato al tempo t, INV (t) linea ridondante al tempo t, b (t) bus indirizzi al tempo t, H (t) = (B (t-1)  INV (t - 1), b (t)  0)distanza di Hamming e N larghezza del bus b (t). • Vantaggio: Garantisce che il massimo numero di transizioni per ciclo di clock sia N/2 valore dimezzato rispetto al valore originale. • Svantaggio: Richiede una linea ridondante sul bus per indicare quando il pattern è stato invertito. Cristina Silvano - Università di Brescia

  39. Codice Gray e Codice T0 • Per indirizzi sequenziali, il codice Gray è ottimo per codici non-ridondanti, richiedendo una commutazione sul bus indirizzi per ogni coppia di indirizzi consecutivi. • Per codici ridondanti, prestazioni migliori rispetto al codice Gray possono essere ottenute sfruttando il principio di località spaziale degli indirizzi. • Il codice T0 fornisce prestazioni asintotiche costituite da zero transizioni sul bus indirizzi nel caso di sequenza infinita di indirizzi consecutivi. • Il codice T0 offre prestazioni migliori del codice Gray anche nel caso realistico di sequenze di indirizzi consecutivi di lunghezza limitata. Cristina Silvano - Università di Brescia

  40. Codice T0 • Metodo di codifica: (B (t), INC (t)) = (B (t-1), 1) se t > 0  b (t) = b (t-1) + S (b (t), 0) altrimenti dove B (t) bus codificato al tempo t, INC (t) linea ridondante al tempo t, b (t) bus indirizzi al tempo t, S valore costante potenza di 2 chiamato stride. • Per sequenze ideali di indirizzi consecutivi di durata infinita, la linea INC è mantenuta a uno e tutte le altre linee di bus non presentano commutazioni, ottenendo prestazioni asintotiche di zero transizioniper indirizzi emessi consecutivi. Cristina Silvano - Università di Brescia

  41. Metodi di Codifica Misti • Obiettivo: sfruttare le peculiarità dei metodi di codifica illustrati per ottenere riduzioni di potenza a livello sistema attraverso la loro applicazione combinata. • Schemi di codifica proposti: • Codifica T0_BI, adatta per architetture basate su un singolo bus indirizzi usato per dati e istruzioni. • Codifica Dual_T0, estensione della codifica T0 per architetture basate su bus indirizzi condiviso nel tempo tra dati e istruzioni, come il bus relativo al microprocessore MIPS. • Codifica Dual_T0_BI, estensione della codifica T0_BI per architetture basate su bus indirizzi condiviso nel tempo. Cristina Silvano - Università di Brescia

  42. Metodi di Codifica Misti • Metodo di Codifica T0_BI: (B(t), INC(t), INV(t)) = (B(t-1), 1, 0) se t > 0 b(t) = b(t-1) + S = (b(t), 0, 0) se t  0 b(t)  b(t-1) + S H(t) (N+2) / 2 = (b´(t), 0, 1) se t > 0 b(t)  b(t-1) + S H(t) > (N+2) / 2 dove B (t) bus codificato al tempo t, INC(t) e INV (t) linee ridondanti al tempo t, b(t)bus indirizzi al tempo t, H(t) = (B(t-1)  INC(t - 1) INV(t - 1), b(t) 0 0)distanza di Hamming, Sstride e N larghezza del bus b (t). Cristina Silvano - Università di Brescia

  43. Metodi di Codifica Misti • Metodo di Codifica Dual_T0: (B (t), INC (t)) = (B (t-1), 1) se t > 0  SEL = 1 b (t) = b (t) + S = (b (t), 0) altrimenti dove B (t) bus codificato al tempo t, INC(t) linea ridondante al tempo t, b(t)bus indirizzi al tempo t, Sstride e b (t) dato da: b(t) = b(t-1) se SEL = 0 = b (t-1) se SEL = 1 Cristina Silvano - Università di Brescia

  44. Metodi di Codifica Misti • Metodo di Codifica Dual_T0_BI: (B (t), INCV (t)) = (B (t-1), 1) se t > 0  SEL =1 b (t) = b (t) + S (b´(t), 1) se t > 0  SEL =0  H (t) > N /2 (b (t), 0) altrimenti dove B (t) bus codificato al tempo t, INCV (t) linea ridondante al tempo t, b (t)bus indirizzi al tempo t, H (t) = (B (t-1)  INCV (t - 1), b (t) 0)distanza di Hamming, S lo stride e b (t) dato da: b(t) = b(t-1) se SEL = 0 = b (t-1) se SEL = 1 Cristina Silvano - Università di Brescia

  45. Confronto Prestazioni dei Metodi di Codifica Misti Cristina Silvano - Università di Brescia

  46. Consumo Codificatore/Decodificatore per Carichi Esterni Cristina Silvano - Università di Brescia

  47. Metodologia di Stima della Potenza a Livello dei Bus di Sistema • Obiettivi della ricerca: • Definizione di un modello per valutare l’effetto di tecniche di codifica sulla potenza dissipata dai bus di sistema in presenza di una gerarchia di memoria. • Modellizzazione di diverse configurazioni di sistema in termini di processore target, sotto-sistema di memoria e bus dati e indirizzi. • Definizione di un modello che includa diverse tecniche di codifica dei bus dati e indirizzi orientate alla bassa dissipazione di potenza. • Analizzare il comportamento dei bus di sistema utilizzando stream dati e indirizzi derivati • Tracciando il comportamento reale di microprocessori • Simulando l’esecuzione di un programma e la la generazione degli stream dati e indirizzi. • Realizzazione di un programma per l’applicazione automatica del modello teorico studiato. Cristina Silvano - Università di Brescia

  48. Modello di Sistema • Modello della gerarchia di memoria: • Memorie cache unificate o separate • Dimensione della cache • Dimensione del blocco • Grado di associatività (Cache a indirizzamento diretto, set associative e completamente associative) • Strategia di scrittura (Write-through e Write-back) • Politica di gestione del fallimento in scrittura (Write-allocate e No-write-allocate) • Politica di sostituzione del blocco (Random e LRU) • Gestione del problema della coerenza • Modello che implementa le principali tecniche di codifica del bus dati e indirizzi: • Binary, Bus-Invert, T0, T0_BI, Gray, Dual_T0 e Dual_T0_BI • Modello di generazione degli stream dati e indirizzi da parte del processore verso il sotto-sistema di memoria, considerando il principio di località spaziale e temporale. Cristina Silvano - Università di Brescia

  49. Configurazioni di Sistema • Il modello proposto consente di tracciare il comportamento dei bus dati e indirizzi a livello sistema per una vasta gamma di configurazioni processore-memoria. • Analizzatidue casi di studio che differiscono per il processore target, il sotto-sistema di memoria e i principali parametri di sistema: • Frequenza dei bus interni ed esterni • Carico capacitivo dei bus interni ed esterni • Tensione di alimentazione Cristina Silvano - Università di Brescia

  50. Casi di Studio • Sistema embedded basato su processore a 32-bit ARM7TDMI a bassa dissipazione e sotto-sistema di memoria composto da cache L1 e memoria principale. • Sistema di elaborazione high-end basato sul processore a 64-bit PowerPC604e e gerarchia di memoria composta da L1, L2 e memoria principale. • L1 composta da 32KB cache on-processor set associativa a 4-vie • L2 off-processor configurabile Cristina Silvano - Università di Brescia

More Related