student: enoiu eduard
DESCRIPTION
STUDENT: ENOIU EDUARD. CIRCUITE DE DECODARE RS(255,239) IMPLEMENTATE PE FPGA. ETAPELE PREZENTĂRII OBIECTIVELE CERCETĂRII CONTRIBUŢII SCOPUL PROIECTULUI METODOLOGIA CERCETĂRII ANALIZA CERCETĂRII CONCLUZII CERCETĂRI VIITOARE. CIRCUITE DE DECODARE RS(255,239) IMPLEMENTATE PE FPGA. - PowerPoint PPT PresentationTRANSCRIPT
ETAPELE PREZENTĂRII
1.OBIECTIVELE CERCETĂRII
2.CONTRIBUŢII
3.SCOPUL PROIECTULUI
4.METODOLOGIA CERCETĂRII
5.ANALIZA CERCETĂRII
6.CONCLUZII
7.CERCETĂRI VIITOARE
1. OBIECTIVELE CERCETĂRII
- folosirea algoritmului Berlekamp-Massey pentru decodorul RS
- implementarea unui sistem cu consum de putere redus
- comparare cu metoda automată de optimizare de putere Quartus
CONTRIBUŢII ADUSE:
- Optimizări pentru o mapare eficientă pe FPGA
- Optimizarea operaţiilor cu memoria în FPGA
- Reducerea consumului de putere prin metode specifice plăcilor FPGA Altera Cyclone
3. SCOPUL PROIECTULUI
- Realizarea unui sistem de decodare
- Decodor Reed-Solomon (255,239) cu consum redus de putere
- specific pentru aplicaţiile spaţiale dar nu numai.
ETAPELE PREZENTĂRII
1.OBIECTIVELE CERCETĂRII
2.CONTRIBUŢII
3.SCOPUL PROIECTULUI
4.METODOLOGIA CERCETĂRII
5.ANALIZA CERCETĂRII
6.CONCLUZII
7.CERCETĂRI VIITOARE
4. METODOLOGIA CERCETĂRII
k = biţi de informaţie
2t = biţi redundanţi
RS(n,k)
Date
k simboluri
Data Redundant
Codare Reed-Solomon
k 2t
n
Transmitere prin canal cu zgomot
FPGA (Field Programmable Gate Array)
-bloc logic FPGA generic
FPGA (Field Programmable Gate Array)
Programarea:
1. etapa de proiectare;
2. etapa de mapare/rutare;
3. etapa de verificare/simulare;
4. modificarea sau corectarea circuitului.
Consumul de putere în FPGA
-Blocurile de memorie incorporate consumă între 10% si 20% din puterea dinamică
-LUT-urile consumă la fel de multă putere ca memoria dar mai puţin ca flip-flop-urile
-Pentru optimizarea memoriei trebuie să reconfigurăm memoriile din circuit
Din Altera Corp. Cyclone Device Handbookam aflat procentajul de puterea dinamicăconsumată în medie pe un design.
Tehnici de reducere a nivelului puterii pe circuit
- mărimea bus-ului un multiplu al mărimii originale a bus-ului
- bufferele combină datele de la două sau mai multe scrieri consecutive
Tehnici de reducere a nivelului puterii pe circuit
Activitatea memoriei, original vs. cu buffer.
-activitatea memoriei este redusă cu 75% prin folosirea buffer-ului
-permite memoriei să fie dezactivată pentru un sfert sau mai mult din timpul pe care anterior trebuia să fie activă, reducând astfel semnificativ consumul de putere.
Lucrare ştiinţifică precedentă
- Un decodor Reed-Solomon cu putere redusă proiectat pentru comunicaţiile folosite în submarine ASIC
- Sistemul de faţă este proiectat pentru a furniza un decodor funcţional Reed-Solomon pentru un sistem bazat deja pe FPGA.
- întregul chip consumă 68.5 mW
- în termeni de consum de energie dinamică depăşeşte cu mult capabilităţile FPGA-urilor
Implementarea circuitelor de codare şi decodare RS
IMPLEMENTAREA CODORULUI REED-SOLOMON
g(x) = x16 + 59x15 + 13x14 + 104x13 + 189x12 + 68x11 + 209x10 + 30x9 + 8x8 + 163x7 + 65x6 + 41x5 + 229x4 + 98x3 + 50x2 + 36x + 59
- utilizează un polinom generator g(x)
- codorul generează biţi de paritate prin împărţirea informaţiei la polinomul generator, restul reprezentând biţi de paritate
Implementarea circuitelor de codare şi decodare RS
IMPLEMENTAREA DECODORULUI REED-SOLOMON
Schema de decodare
Implementarea circuitelor de codare şi decodare RS
Blocul de calcul al sindromului
-sindromul preia cuvinte de cod la o rată de 1 simbol/ciclu de ceas
- funcţia generatorului de sindrom este de a împărţi cuvantul de cod cu generatorul polinomial.
Implementarea circuitelor de codare şi decodare RS
Blocul de calcul a ecuaţiei cheii
- Algoritmul Berlekamp-Massey
- este folosit în această implementare din cauză că foloseşte mai puţine porţi pentru implementare decât alţi algoritmi cunoscuţi.-ecuaţia cheii este o ecuaţie ce descrie relaţia dintre sindromul S(x), Λ(x), Ω(x) si x2t.
Implementarea circuitelor de codare şi decodare RS
Blocul de localizare a erorii sau Căutarea Chien-calculează locaţia simbolurilor eronate în fiecare cuvânt de cod
Optimizări hardware
Optimizarea codului Verilog pentru o mapare eficientă RTL
-definirea explicită a fiecărui element individual de circuit şi a conexiunilor asociate, fără -taskuri, bucle sau for-uri
-ROM-ul inversat folosit în algoritmul Forney, un bloc de memorie încorporat în FPGA fost preîncărcat cu elemente GF inverse
-Rezultă o mapare mai curată a funcţiilor în FPGA
Optimizări hardware
Optimizarea memoriei
- dispozitivele Cyclone au o mărime a porturilor fizice I/O de 32 de biţi.
-dacă o valoare mai mică de 32 de biţi este accesată RAM-ul va consuma în continuare putere pentru 32 de biţi.
ETAPELE PREZENTĂRII
1.OBIECTIVELE CERCETĂRII
2.CONTRIBUŢII
3.SCOPUL PROIECTULUI
4.METODOLOGIA CERCETĂRII
5.ANALIZA CERCETĂRII
6.CONCLUZII
7.CERCETĂRI VIITOARE
Analiza si compararea rezultatelor
Optimizarea decodorului Reed-Solomon
Număr de
LUT-uriRegistre F(MHz)
Puterea
(mW)
4314 1178 65,26 36,55
Rezultatele generate din dezvoltarea modelelor folosind Quartus II, v9.0
Analiza si compararea rezultatelor
Optimizarea decodorului Reed-Solomon
Rezultatele optimizării automate a puterii cu Quartus ale modelului precedent
Număr de
LUT-uriRegistre F(MHz)
Puterea
(mW)
5021 1178 63,10 35,68
Analiza si compararea rezultatelor
LUT-uri Registre Putere (mW)
Unitate
Funcţională
Original Opt.
Putere
Original Opt.
Putere
Original Opt.
Putere
Calcul Sindrom 1290 1287 327 327 5.49 5.27
Berlekamp
Massey
1183 1042 431 431 9.40 7.13
Forney + Chien 1841 2692 420 420 20.08 21.7
FIFO 0 0 0 0 1.58 1.58
Total 4314 5021 1178 1178 36,55 35,68
Rezultatele puteriiper unitate
Analiza si compararea rezultatelor
Număr de
LUT-uriRegistre F(MHz)
Puterea
(mW)
Schimbare
3474 1806 108,25 23,29 -36,27%
Rezultatele design-ului cu cod Verilog optimizat fata de modelul original
Analiza si compararea rezultatelor
Defalcarea pe unităţi a consumului de energie pentru decodorul RS
Analiza si compararea rezultatelor
Unitatea
Funcţională
Putere (mW)
design
original
Putere (mW) Diferenţa
FIFO 1.58 2.91 84.17%
Generare
Sindrom5.49 3.71 -32.42%
Berlekamp-
Massey9.40 10,54 12,12%
Forney +
Chien20.08 6,13 -69,47%
Puterea pe unităţi funcţionale pentru codul original si pentru optimizare cod Verilog
Analiza si compararea rezultatelor
Unitatea
Funcţională
Putere (mW)
design
original
Putere (mW) Diferenţa
FIFO 1.58 2.91 84.17%
Generare
Sindrom5.49 3.71 -32.42%
Berlekamp-
Massey9.40 10,54 12,12%
Forney +
Chien20.08 6,13 -69,47%
Puterea pe unităţi funcţionale pentru codul original si pentru optimizare cod Verilog
Analiza si compararea rezultatelor
Optimizări ale memoriei
Schema de citire
Putere (mW)
4 x 8 3,932 x 16 3,081 x 32 2,06
Rezultatele consumului de putere ale memoriei cu buffer având unitatea de memorie de 2040 de biţi
Analiza si compararea rezultatelor
Optimizări ale memoriei
LUT-uri Registre F (MHz)Puterea
(mW)Schimbare
3720 3049 120,55 20.73 -43,28%
Rezultatele Optimizării memoriei
Analiza si compararea rezultatelor
Folosirea LUT-urilor din FPGA
Analiza si compararea rezultatelor
ETAPELE PREZENTĂRII
1.OBIECTIVELE CERCETĂRII
2.CONTRIBUŢII
3.SCOPUL PROIECTULUI
4.METODOLOGIA CERCETĂRII
5.ANALIZA CERCETĂRII
6.CONCLUZII
7.CERCETĂRI VIITOARE
Analiza si compararea rezultatelor
CONCLUZII
- am pornit de la de la un decodor RS(255,239) ce foloseşte algoritmul Berlekamp-Massey.
- am realizat un decodor optimizat din punct de vedere al puterii consumate de circuit pe un FPGA.
- o îmbunătăţire a puterii cu până la 43,28% faţă de implementarea de la care am pornit
- există metode de optimizare a consumului de putere la nivel de cod şi la nivel de adresare a memoriei din FPGA ce depăşesc cu mult optimizarea automată a programului Quartus II.
Analiza si compararea rezultatelor
CERCETĂRI VIITOARE
- implicarea în două proiecte în cadrul programului de master
Lunar Resort Dasher
INTELLIGENT EMBEDDED SYSTEM