Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th...

28
Załącznik nr 2 Autoreferat Przedstawiający dorobek i osiągnięcia naukowe, w szczególności określone w art.16 ust 2 ustawy o stopniach naukowych i tytule naukowym oraz o stopniach i tytule w zakresie sztuki Wojciech Sułek Politechnika Śląska Wydział Automatyki, Elektroniki i Informatyki Instytut Elektroniki Gliwice 2019

Transcript of Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th...

Page 1: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

Załącznik nr 2

Autoreferat

Przedstawiający dorobek i osiągnięcia naukowe, w szczególności

określone w art.16 ust 2 ustawy o stopniach naukowych i tytule

naukowym oraz o stopniach i tytule w zakresie sztuki

Wojciech Sułek

Politechnika ŚląskaWydział Automatyki, Elektroniki i Informatyki

Instytut Elektroniki

Gliwice 2019

Page 2: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

1 Dane osobowe

1.1 Imię i nazwisko

Wojciech Sułek

1.2 Posiadane dyplomy, stopnie naukowe

• Magister inżynierGliwice 2003, Politechnika Śląska, Wydział Automatyki, Elektroniki i Infor-matyki, kierunek: Elektronika i Telekomunikacja, specjalność: telekomunikacja,praca pt. „Optymalizacja wrażliwościowa struktur filtrów cyfrowych”, promo-tor: dr inż. Jacek Izydorczyk.

• Doktor nauk technicznych w dyscyplinie elektronikaGliwice 2009, Politechnika Śląska, Wydział Automatyki, Elektroniki i Infor-matyki, rozprawa pt. „Kody LDPC efektywnie dekodowane w strukturachprogramowalnych”, promotor: prof. dr hab. inż. Dariusz Kania.

1.3 Zatrudnienie w jednostkach naukowych

• od 2009 do nadal – adiunkt, Politechnika Śląska, Wydział Automatyki, Elek-troniki i Informatyki, Instytut Elektroniki.

• 2009 – asystent z doktoratem, Politechnika Śląska, Wydział Automatyki, Elek-troniki i Informatyki, Instytut Elektroniki.

• 2003-2008 – doktorant, Politechnika Śląska, Wydział Automatyki, Elektronikii Informatyki, Instytut Elektroniki.

2 Wskazanie osiągnięcia naukowego

2.1 Tytuł osiągnięcia naukowego

Systemy kodowania LDPC nad ciałem Galois z efektywną implemen-

tacją kodera i dekodera. (Cykl powiązanych tematycznie publikacji).

2.2 Wykaz publikacji stanowiących osiągnięcie naukowe

[WS1] W. Sułek, Pipeline processing in low-density parity-check codes hardwaredecoder, Bulletin of the Polish Academy of Sciences Technical Sciences, 59(2011), pp. 149–155. Indeksowany w JCR; IF=0.966.

[WS2] W. Sułek, On the Overflow Problem in Finite Precision Turbo Deco-ding Message Passing, IEEE Transactions on Communications, 60 (2012),pp. 1253–1259. Indeksowany w JCR; IF=1.750.

2

Page 3: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

[WS3] W. Sułek, M. Kucharczyk, and G. Dziwoki, GF(q) LDPC decoderdesign for FPGA implementation, in Proc. (IEEE) 10th Annual ConsumerCommunications & Networking Conference (CCNC), Las Vegas, USA, Janu-ary 2013, pp. 445–450. Materiały konferencyjne indeksowane w WoS.

[WS4] W. Sułek and M. Kucharczyk, Column Weights Optimization for Semi-Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe-rence on Telecommunications and Signal Processing (TSP), Prague, CzechRepublic, July 9-11, 2015, pp. 172–176. Materiały konferencyjne indeksowanew WoS.

[WS5] W. Sułek, Non-binary LDPC Decoders Design for Maximizing Throughputof an FPGA Implementation, Circuits, Systems, and Signal Processing, 35(2016), pp. 4060–4080. Indeksowany w JCR; IF=1.694.

[WS6] W. Sułek, Quasi-Regular QC-LDPC Codes Derived From Cycle Codes,IEEE Communications Letters, 20 (2016), pp. 1705–1708. Indeksowany wJCR; IF=1.988.

[WS7] W. Sułek and M. Kucharczyk, Partial parallel encoding and algorithmicconstruction of non-binary structured IRA codes, China Communications, 13(2016), pp. 103–116. Indeksowany w JCR; IF=0.903.

[WS8] W. Sułek and M. Kucharczyk, QC-LDPC Codes with Fast Encodingfor Error Control in NAND Flash Memories, in International Conference onSignals and Electronic Systems (ICSES), Kraków, Poland, September 10-12,2018, pp. 37–42. Materiały konferencyjne indeksowane w WoS.

[WS9] W. Sułek, Protograph Based Low-Density Parity-Check Codes Design withMixed Integer Linear Programming, IEEE Access, 7 (2019), pp. 1424–1438.Indeksowany w JCR; IF=3.557.

3 Omówienie celu naukowego prac i osiągniętych wyników

wraz z przedstawieniem ich ewentualnego wykorzystania.

3.1 Motywacja badań i cel naukowy

Rola szybkiej i skutecznej komunikacji cyfrowej w postępie współczesnego światajest nie do przecenienia. Jednym z podstawowych czynników napędzających rozwójmożliwości przesyłania informacji jest nieustanny progres szybkości i niezawodnościsystemów transmisji danych cyfrowych. Progres ten jest podtrzymywany przez pracebadawcze ukierunkowane na ulepszanie technik transmisji danych, prowadzonychw wielu ośrodkach akademickich i przemysłowych.Niezwykle istotnym elementem determinującym możliwości systemu transmisji

jest sposób kodowania przesyłanej informacji dla celów detekcji i korekcji błędów(kodowanie kanałowe). Wzrost możliwości obliczeniowych współczesnych układów

3

Page 4: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

cyfrowych wielkiej skali integracji umożliwia praktyczne stosowanie coraz bardziejzaawansowanych systemów kodowania. Pozwala to na skuteczniejszą korekcję, a coza tym idzie – transmisję z większą przepustowością i / lub zmniejszoną mocą sy-gnału. Jednym z najsilniejszych znanych sposobów kodowania kanałowego jest ko-dowanie LDPC (ang. Low-Density Parity-Check) [1, 2], stosowane w wielu współ-czesnych standardach transmisji, np. sieciach WLAN [3], telewizji cyfrowej DVB [4],sieciach mobilnych 5G [5]. Jednocześnie prace badawcze związane z rozwojem me-tod kodowania LDPC są kontynuowane w wielu ośrodkach na całym świecie. Pra-ce te obejmują wiele nietrywialnych, lecz ściśle powiązanych ze sobą zagadnień,w szczególności optymalizację macierzy kontrolnych ze względu na własności ko-rekcyjne [6–14,16], [WS4,WS6,WS9,WS13,WS21,WS8], algorytmy konstrukcji ko-dów o strukturze umożliwiającej efektywną implementację kodera [20], [WS7,WS8]i dekodera sprzętowego [22–25, 27], [WS9,WS21], kodowanie dające możliwość ad-aptacji do stanu kanału [26–28], uproszczone obliczeniowo algorytmy dekodowa-nia [24, 29–33], architektury i implementacje dekoderów sprzętowych, z szerokimspektrum wymaganych przepustowości [34–39], [WS1, WS2,WS3, WS5]. Najnow-sza literatura przedmiotu dotyczy także rozwinięcia idei kodowania LDPC na kodyniebinarne, definiowane nad ciałami Galois GF(q) wyższych rzędów [27, 33, 39–44],[WS3, WS4, WS5, WS6, WS21,WS22, WS24]. Kody takie osiągają lepsze własno-ści korekcyjne dla małych-średnich długości słów kodowych. Ze względu na dużązłożoność, konstrukcja „dobrych” kodów niebinarnych, jak również efektywna im-plementacja sprzętowa, niesie dodatkowe wyzwania badawcze.Kod LDPC opisywany jest przez macierz kontrolną kodu, która jest macierzą

rzadką. W celu osiągnięcia niskiej bitowej stopy błędów systemu, kody definiowanesą dla dużych bloków danych (typowo wiele tysięcy bitów), stąd macierz kontrolnama również duży rozmiar. Dla osiągnięcia dobrych własności korekcyjnych kodu ko-nieczne jest odpowiednie skonstruowanie macierzy. W zasadzie każde z zastosowańkodowania LDPC wymaga dobrania kodu do wymaganej długości bloku, sprawno-ści kodowania oraz przepustowości i związanej z nią architektury kodera i dekodera.Wymaga to skorzystania z algorytmu konstrukcji odpowiedniej macierzy kontrol-nej LDPC. Metody tworzenia macierzy kontrolnych definiujących kody o dobrychwłasnościach korekcyjnych są trudnym zagadnieniem, wciąż rozpatrywanym w naj-nowszych badaniach naukowych. Nietrywialne jest również zadanie projektowaniaefektywnych modułów kodera i dekodera sprzętowego, zapewniających odpowiedniąprzepustowość przy ograniczonych zasobach sprzętowych. Efektywne implementacjewykorzystują pewne podklasy kodów LDPC, dostosowanych do implementacji.Prace badawcze ukierunkowane na skuteczne i szybkie dekodowanie binarnych

kodów LDPC z wykorzystaniem układów programowalnych typu FPGA oraz kon-strukcję kodów efektywnie dekodowanych, były prowadzone przez autora niniejsze-go wniosku już w trakcie studiów doktoranckich. W rozprawie doktorskiej zostałaopisana implementacja sprzętowego modułu dekodera TDMP (ang. Turbo-DecodingMessage-Passing) oraz heurystyczne algorytmy konstrukcji binarnych kodów AA-LDPC (Architecture-Aware LDPC ). Po obronie doktoratu w 2009r., badania doty-czące kodów LDPC były kontynuowane, a w szczególności dotyczyły nowych zagad-

4

Page 5: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

nień związanych z niebinarnym kodowaniem LDPC.Podstawowym celem tych badań było opracowanie rozwiązań, które będą na tyle

uniwersalne, że pozwolą konstruować kody nie tylko binarne, ale kody definiowanenad ciałami Galois GF(q) o dowolnym rzędzie, rozmiarze bloku i sprawności, dostoso-wane do sprzętowej implementacji kodera i dekodera. Celem było także opracowaniesprzętowego dekodera niebinarnych kodów LDPC, efektywnie implementowanegow strukturach programowalnych typu FPGA. Dodatkowo kontynuowane były pracenad usprawnieniem i optymalizacją implementacji dekodera binarnego.W efekcie powstało kompleksowe narzędzie umożliwiające przeprowadzenie pro-

jektu systemu kodowania LDPC, począwszy od utworzenia macierzy kontrolnej do-stosowanej do dowolnych wymagań, poprzez symulacje możliwości korekcyjnych ko-du, a skończywszy na sprzętowej implementacji kodeka (kodera i dekodera) opisa-nego w języku opisu sprzętu. Wynikiem prac badawczych jest jednotematyczny cyklpublikacji, przedstawiający metody projektowania kodów LDPC nad ciałem GF(q)zorientowanych na implementację oraz struktury sprzętowe umożliwiające efektywnedekodowanie binarnych, jak i niebinarnych kodów. Jako dorobek stanowiący osią-gnięcie, przedstawiam 9 najistotniejszych publikacji wyszczególnionych w sekcji 2.2,w tym 6 artykułów w czasopismach z listy Journal Citation Reports, wśród których5 publikacji jest wyłącznie mojego autorstwa. Pozostałe publikacje, które powstałypo obronie doktoratu, wymienione są w sekcji 4.1. W dalszej części niniejszego au-toreferatu przedstawiono skrótowy opis opracowanych rozwiązań i wyników badań.

3.2 Podstawowe definicje

Kody LDPC są klasą liniowych blokowych kodów korekcyjnych. Parametry kodu(N,K) wskazują rozmiar bloku kodowego i informacyjnego, tzn. w procesie kodowa-nia wektor informacyjny u = [u1, u2, . . . , uK ] jest przekształcany w wektor kodowyx = [x1, x2, . . . , xN ]. W przypadku najczęściej używanych kodów systematycznychoznacza to dopisanie M = N − K nadmiarowych symboli alfabetu kodowego. Dlakodów LDPC definiowanych nad ciałem Galois GF(q) [40], alfabet kodowy składasię z q symboli ciała, przy czym praktyczne znaczenie mają w zasadzie tylko kodyprzy q = 2p, gdzie p to liczba naturalna. Kod binarny może być interpretowany jakokod nad ciałem GF(2), czyli p = 1, natomiast dla p > 1 kod jest niebinarny. Poziomnadmiarowości kodowania jest wskazywany przez parametr nazywany sprawnościąkodu R = K/N .Dany kod LDPC definiowany jest przez jego macierz kontrolną H o rozmiarze

M × N , która jest macierzą rzadką nad ciałem GF(q), co w praktyce przenosi sięna możliwość stosowania iteracyjnego algorytmu dekodowania [2, 33] ze złożono-ścią obliczeniową liniowo zależną od N . Równanie kontrolne HxT = 0 (nad ciałemGF(q)) pozwala określić, czy wektor x jest poprawnym wektorem kodowym kodudefiniowanego przez H.Graficzną reprezentacją macierzy kontrolnej H jest dwustronny graf Tannera

G = (Vv ∪ Vc, E), w którym węzły (wierzchołki) kontrolne Vc = {c1, c2, . . . , cM}reprezentują równania kontrolne (wiersze macierzy kontrolnej), a węzły (wierzchoł-

5

Page 6: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

ki) symbolowe Vv = {v1, v2, . . . , vN} reprezentują kolejne symbole słowa kodowego(kolumny macierzy kontrolnej). Obydwie strony grafu połączone są krawędziamiE ⊆ Vv ×Vc, w miejscach odpowiadających niezerowym elementom H. Graf Tanne-ra określa sposób propagacji danych w iteracyjnym procesie dekodowania.Istnieje kilka rozwiązań układu kodowania (wyznaczania bitów nadmiarowych

w koderze). Prawdopodobnie najistotniejsza metoda, opisana w [45], wymaga ma-cierzy kontrolnej o strukturze:

H =

[

A B T

C D E

]

(1)

gdzie T to macierz dolnotrójkątna. W szczególnym przypadku stosuje się podma-cierz dwu-diagonalną (ang. dual-diagonal) [20], co jest rozwiązaniem powszechniestosowanym w rozwiązaniach przemysłowych i standardach telekomunikacyjnych,gdyż pozwala na implementację szybkich koderów sprzętowych.Znacznie bardziej złożonym problemem jest efektywna implementacja dekodera

i zagadnienia związane z konstrukcją kodów LDPC zorientowanych na implementa-cję dekodera. Tym kwestiom poświęcone są kolejne punkty niniejszego autoreferatu.Ogniwem łączącym wszystkie prace jest definicja kodów LDPC zorientowanych naimplementację – są to kody o macierzy kontrolnej posiadającej następującą struk-turę, złożoną z podmacierzy o rozmiarze P × P :

H =

w1,1Ps1,1 w1,2P

s1,2 · · · w1,JPs1,J

w2,1Ps2,1 w2,2P

s2,2 · · · w2,JPs2,J

......

. . ....

wI,1PsI,1 wI,2P

sI,2 · · · wI,JPsI,J

(2)

gdzie Ps to macierz binarna przesunięcia cyklicznego (Circulant Permutation Ma-trix – CPM) macierzy jednostkowej o s pozycji, si,j ∈ {0, 1, . . . , P − 1,∞}, przyczym podmacierz zerowa oznaczana jest jako P∞. W przypadku kodów binarnych,kod o macierzy jak w (2) jest kodem typu QC-LDPC (Quasi-Cyclic LDPC) [20].Dla kodów niebinarnych nad ciałem GF(q), współczynniki wi,j ∈ GF(q) określa-ją zawartość podmacierzy w tych miejscach, gdzie si,j 6= ∞. Taki kod niebinarnyniekoniecznie jest kodem typu QC, lecz należy do rodziny kodów efektywnie deko-dowanych (Architecture Aware – AA-LDPC [34]), bazujących na protografach [23].Zbiór współczynników wi,j stanowi tzw. macierz bazową koduW, a w przypadku ko-dów binarnych macierz bazowaW to macierz binarna o jedynkach w tych miejscach,gdzie si,j 6=∞, a więc wskazuje położenie niezerowych podmacierzy w H.Tak określona macierz (2) pozwala na efektywną implementację kodera, a przede

wszystkim szeregowo-równoległego dekodera, z możliwością przesyłania danych (wia-domości) pomiędzy jednostkami obliczeniowymi z wykorzystaniem pamięci jedno-lub dwu-portowych, bez konfliktu dostępu do pamięci [20, 34,37], [WS7,WS9].

6

Page 7: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

3.3 Implementacja dekodera binarnego

Dekodery LDPC opierają się na iteracyjnych algorytmach dekodowania kodówblokowych, w szczególności algorytmie propagacji wiadomości BP (Belief Propa-gation) [1, 2]. Typowy algorytm BP funkcjonuje na zasadzie iteracyjnego oblicza-nia wiadomości – wartości LLR (Log Likelyhood Ratio) przybliżonych prawdopodo-bieństw a posteriori fn = log (P (xn = 0|y,H) /P (xn = 1|y,H)), gdzie y to wek-tor odebrany (obarczony błędami), xn to elementy dekodowanego wektora x, n =1, . . . , N , a fn to wartość LLR skojarzona z symbolem xn. Proces dekodowania jestprzerywany, gdy twarde decyzje podjęte na podstawie wartości tych prawdopodo-bieństw dają jedno z możliwych słów kodowych lub też osiągnięta zostanie założonamaksymalna liczba iteracji.Do realizacji badań, których efektem była rozprawa doktorska, obroniona w 2009

roku, wykonana została implementacja sprzętowa dekodera binarnych kodów LDPC,który jest oparty o szczególny sposób propagacji wiadomości, znany jako TDMP(Turbo Decoding Message Passing) [30]. Dekoder TDMP wykorzystuje tzw. harmo-nogram szeregowy, który polega na propagacji wiadomości do sąsiadujących węzłównatychmiast po obliczeniu ich nowych wartości, dzięki czemu uzyskuje się szybszązbieżność obliczeń oraz zmniejszone wymogi na pojemność pamięci. Po obronie dok-toratu, prace nad dekoderem TDMP, implementowanym w układzie FPGA, byłykontynuowane, a ich celem była dalsza optymalizacja struktury dekodera. Opu-blikowano opis oryginalnych rozwiązań, które pozwalają implementować dekodero znacznie ograniczonej długości słów wiadomości [WS2] oraz zoptymalizować kolej-ność propagacji wiadomości w celu przyspieszenia przetwarzania potokowego w de-koderze [WS1].Algorytm TDMP, opisany szczegółowo w [30], jest dosyć chętnie implementowa-

ny w znanych rozwiązaniach sprzętowych [34–36]. Implementacja w układzie FPGAwykorzystuje reprezentację stałoprzecinkową wiadomości w dziedzinie LLR, dla któ-rej zbiór możliwych wartości wiadomości można przedstawić następująco: Q(W,Z) ={−Z, . . . ,−2∆,−∆, 0,∆, 2∆, . . . , Z}, gdzie Z to granica zakresu, ∆ = Z/(2W−1−1),a W to długość słowa. W celu minimalizacji zasobów sprzętowych układu i zużyciaenergii, pożądane jest ograniczenie długości słowa W do kilku bitów. Precyzja wej-ściowych wartości LLR może być dosyć znacznie ograniczona, bez istotnego wpływuna proces dekodowania. Jednakże arytmetyka nasyceniowa w jednostkach obliczenio-wych jest źródłem błędów, które – przy typowej budowie jednostek obliczeniowych,wynikającej wprost z definicji algorytmu TDMP – propagują pomiędzy jednostkamiobliczeniowymi, nasilając się w kolejnych subiteracjach. Przy ograniczeniu precyzjido kilku bitów, ma to silnie negatywny wpływ na wyniki dekodowania. Efekt tenzostał po raz pierwszy opisany przez autora wniosku w [WS2]. Przedstawiono tamrównież opracowane modyfikacje dekodera TDMP, pozwalające na niwelację wpływupropagacji błędów nasycenia. Modyfikacje te obejmują:

• eliminację głównego składnika addytywnego błędu nasycenia, poprzez wyzna-czanie wiadomości tzw. zewnętrznych λ (ang. extrinsic message) jako różnicęnasyconej wartości wyjściowej jednostki obliczeniowej SISO (Soft Input Soft

7

Page 8: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

Output) i wiadomości wejściowej ρ;

• redukcję pozostałych składników błędu nasycenia poprzez przesunięcie wiado-mości wejściowej ρ w kierunku zera (Offset) lub normalizację współczynnikiemA < 1;

• redukcję pozostałych składników błędu nasycenia poprzez ograniczenie zakresuwiadomości zewnętrznych λ do [−Mλ,Mλ], gdzieMλ < Z, przy niezmienionymzakresie wiadomości a posteriori [−Z,Z].

W publikacji [WS2] uzasadniono te modyfikacje i przedstawiono wyniki pokazują-ce istotną poprawę wyników dekodowania, uzyskanych w implementacji w układzieFPGA. Przykładowe wyniki symulacji dekodera kodu (1056,816), o długości słowaW = 6, przy modulacji BPSK i zakłóceniach AWGN, przedstawione są poniżej narys. 1. Zmodyfikowany dekoder daje wyniki bardzo zbliżone do wyników dekodowa-nia zmiennoprzecinkowego (Full precision).

1 1.5 2 2.5 3 3.5 4 4.5 510

−7

10−6

10−5

10−4

10−3

10−2

10−1

100

SNR[dB]

Err

or R

ate

Full PrecisionStage IOffset ρ, C = 0.19×ZNormalized ρ, A = 0.5Norm. ρ & Limited λ, M

λ = 0.7×Z

BER

FER

Rys. 1: Bitowa stopa błędów (BER) i blokowa stopa błędów (FER) binarnegokodu (1056,816), dekodowanego w dekoderze TDMP implementowanym w układzieFPGA, z precyzją wiadomości W = 6 bitów.

Opracowana implementacja programowalnego dekodera TDMP może być przy-stosowana do dekodowania dowolnego kodu AA-LDPC, przy czym liczba jednostekobliczeniowych (SISO) jest równa rozmiarowi podmacierzy P . Konsekwencją jestścisły związek pomiędzy macierzą kontrolną (rozmiarem podmacierzy) a możliwądo uzyskania przepustowością. W celu maksymalizacji dopuszczalnej częstotliwościzegarowej, wykorzystywane są rejestry potokowe, rozmieszczone w eksperymental-nie dobranych punktach jednostek obliczeniowych. Konsekwencją zastosowania re-jestrów potokowych jest opóźnienie toru przetwarzania w każdej subiteracji, które

8

Page 9: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

można zdefiniować jako TP cykli zegarowych od momentu odczytu ostatniej danejz pamięci wiadomości do zapisu pierwszej zaktualizowanej danej do pamięci wiado-mości. Jeśli kolejna subiteracja wymaga skorzystania z danych aktualizowanych wbezpośrednio poprzedzających subiteracjach, to wymagane jest oczekiwanie na ukoń-czenie zapisu wymaganych danych do pamięci przed rozpoczęciem subiteracji. Wy-maga to wprowadzenia cykli bezczynności, niekorzystnie wpływających na szybkośćdekodowania. Okazuje się jednak, że cykle bezczynności można prawie całkowiciewyeliminować, jeśli obliczenia będą wykonywane w odpowiedniej kolejności [WS1].W pracy [WS1] przedstawiono wyprowadzenie wzorów, które na podstawie struk-

tury macierzy bazowej W oraz czasu przetwarzania potokowego TP pozwalają nawyznaczenie sumarycznej liczby cykli bezczynności Tidle. Następnie opisano algorytmtakiego przekształcenia (zmiany kolejności kolumn i wierszy) macierzy bazowej Wkodu, aby uzyskać macierz, dla której kolejność przetwarzania danych pozwala naznaczną redukcję Tidle. Zamiana kolejności wierszy / kolumn jest przy tym neutralnadla własności korekcyjnych kodu.Przeprowadzono szereg eksperymentów numerycznych, z których część wyników

przedstawiona jest w Tab. 1 [WS1]. W tabeli zawarto liczby cykli bezczynności Tidleoraz przepustowości dekodera TDMP implementowanego w układzie Virtex II fir-my Xilinx, dla kilku różnych macierzy bazowychW uzyskanych algorytmem PEG,przed oraz po zaproponowanej optymalizacji (W′). Eksperymenty potwierdzają sku-teczność opracowanego algorytmu, który w wielu przypadkach pozwala zredukowaćcykle bezczynności nawet do zera. Przedstawione przepustowości uzależnione są odliczby jednostek obliczeniowych P . Dla odpowiednio dużej wartości P , dekoder uzy-skuje przepustowości na poziomie setek Mb/s. Prawidłowe funkcjonowanie dekoderazostało zweryfikowane z wykorzystaniem płyty z układem FPGA.

Tabela 1: Liczba cykli zegarowych bezczynności w każdej iteracji (Tidle) oraz prze-pustowość dekodera przed (W) i po optymalizacji struktury macierzy bazowej (W′)

Macierz bazowa Tidle PrzepustowośćW W′ W W′

W55×110 (R = 0.5), reg. 217 0 P · 1.46 [Mb/s] P · 2.41 [Mb/s]W64×128 (R = 0.5), irreg. 813 0 P · 0.727 [Mb/s] P · 1.99 [Mb/s]W30×90 (R = 0.66), irreg. 318 16 P · 1.42 [Mb/s] P · 2.79 [Mb/s]W16×64 (R = 0.75), reg. 253 78 P · 1.56 [Mb/s] P · 2.56 [Mb/s]

3.4 Implementacja dekodera niebinarnego

Iteracyjne dekodowanie kodów LDPC nad ciałami GF(q = 2p) wyższych rzędów(p > 1) wymaga przetwarzania i propagacji pomiędzy jednostkami obliczeniowymiwiadomości w postaci wektorów prawdopodobieństw [40], określających rozkładydla całego zbioru q możliwych symboli nad ciałem GF(q). Wartości inicjalizującedekoder to zbiór prawdopodobieństw fan = P (xn = a|yn), dla każdego n = 1, . . . , N ,

9

Page 10: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

oraz dla każdego a ∈ GF(q). Podstawowa formuła algorytmu oparta na sumie iloczy-nów – SPA (Sum Product Algorithm) [40] cechuje się dużą złożonością obliczeniową,którą można określić jako O(q2). Znane są metody dekodowania o zmniejszonejzłożoności, z których najistotniejsze to: – zastosowanie przetwarzania wiadomościpoddanych transformacie Fouriera (w ciele GF(q)), FFT-BP [32], co pozwala zre-dukować złożoność obliczeniową do O(q log(q)); – obliczenia na wiadomościach pod-danych przekształceniu funkcjami logarytmicznymi [46, 47], co pozwala ograniczyćliczbę poziomów kwantyzacji wiadomości; – algorytmy obliczeń przybliżonych, takiejak min-max [48], EMS (Extended Min-Sum) [33], EMS z ograniczonym wektoremwiadomości [49].Implementacja sprzętowa dekodera niebinarnego stanowi duże wyzwanie, ze wzglę-

du na dużą złożoność koncepcyjną i obliczeniową. Jeszcze 10 lat temu bardzo niewie-le było publikacji poświęconych tej kwestii. Pojawiające się później prace opisywałyimplementacje przystosowane w szczególności do układów typu ASIC [50–53], wy-korzystujących zwłaszcza algorytmy o wymaganiach obliczeniowych zredukowanychkosztem pewnego pogorszenia własności korekcyjnych (min-max, EMS). Specyfikątych rozwiązań jest także pozbycie się operacji mnożenia liczb (wiadomości w dzie-dzinie logarytmicznej), gdyż sprzętowe układy mnożące zajmują znaczną powierzch-nię układów ASIC. Wciąż niewiele było doniesień o implementacjach w układachtypu FPGA. Tymczasem układy te są chętnie wykorzystywane np. w systemach ko-munikacyjnych na potrzeby wojska, systemów ochrony i innych szeroko stosowanychsystemach transmisji o stosunkowo mniejszej skali produkcji.Nieliczne publikacje przedstawiające wyniki syntezy dekoderów niebinarnych dla

układów FPGA [39,54, 55] wykorzystywały także rozwiązania pozbawione układówmnożących. Tymczasem wszystkie współcześnie produkowane układy FPGA zawie-rają wielką liczbę sprzętowych układów mnożących, które mogą być wykorzystaniena potrzeby realizacji określonego fragmentu algorytmu dekodowania.Prace podjęte przez autora wniosku miały na celu kompleksowe rozwiązanie pro-

blemów wiążących się z implementacją niebinarnych dekoderów LDPC w układachtypu FPGA. W szczególności za cel postawiono opracowanie rozwiązania, które po-zwoli osiągnąć jak największą przepustowość dekodera w danym układzie FPGAoraz będzie skalowalne, tzn. da możliwość dostosowania do rozmiaru układu FPGA(ilości zasobów sprzętowych) z jednej strony, a przepustowości dekodera z dru-giej [WS3,WS5].Zaproponowana została modyfikacja algorytmu FFT-BP, w której obliczenia sko-

jarzone z węzłami kontrolnymi (jednostki CNU – Check Node Unit) wykonywane sąw dziedzinie prawdopodobieństw (beliefs) i wykorzystują operacje mnożenia rzeczy-wistego, natomiast obliczenia skojarzone z węzłami symbolowymi wykonywane sąw dziedzinie logarytmicznej. Schemat jednostki sprzętowej węzła CNU realizującejten algorytm przedstawiony jest na rys. 2 [WS5]. Dzięki takiemu rozwiązaniu: – da-ne zapisywane do pamięci wiadomości oraz przetwarzane w układach permuterówi jednostkach VNU (Variable Node Unit) są w dziedzinie logarytmicznej, więc wy-magają stosunkowo małej liczby bitów reprezentacji stałoprzecinkowej; – operacjeFFT i IFFT są wykonywane w dziedzinie prawdopodobieństw, więc wymagają tylko

10

Page 11: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

operacji sumowania; – przeliczanie prawdopodobieństw odbywa się w układach mno-żących ze sprzężeniem zwrotnym, dzięki czemu wynik jest dokładny (a nie przybli-żony jak np. w algorytmie EMS) oraz istnieje możliwość wykorzystania sprzętowychukładów mnożących osadzonych w FPGA; – normalizacja wymaga mnożenia przezodwrotność skrajnego elementu wektora po wykonaniu operacji FFT, co równieżpozwala na skorzystanie ze sprzętowych układów mnożących.

Rec. Multiplier 1

Rec. Multiplier 2

Rec. Multiplier q

Normalization

FFT IFFT

exp(x) 1

exp(x) 2

exp(x) q lo

g(x)

1

log(

x) 2

log(

x) q

Permutation P Permutation P-1

qWl

qWpe

qWpe

qWp

qWp

qWp

qWl

qWlqWl

Rys. 2: Jednostka CNU.

W publikacjach [WS3,WS5] zaproponowano także szereg rozwiązań zwiększa-jących efektywność implementacji poszczególnych elementów dekodera sprzętowegoimplementowanego w FPGA. Zaproponowano i uzasadniono podział ścieżki prze-twarzania danych na 3 części o zróżnicowanej liczbie bitów reprezentacji stałoprze-cinkowej – Wl, Wp, Wpe na rys. 2 – co pozwala na zmniejszenie liczby bitów danychw dziedzinie logarytmicznej oraz po normalizacji, przy zachowaniu dużej precyzjidanych przed normalizacją (Wpe), która to precyzja ma bardzo istotny wpływ naskuteczność algorytmu dekodowania. Przedstawiono rozważania i wyniki ekspery-mentalne wskazujące dobry kompromis co do wartości Wl, Wp, Wpe. Opracowanoukłady aproksymowanego wyznaczania wartości nieliniowych funkcji log(y) i 1/y zapomocą zmodyfikowanej metody BTM (Bipartite Table Method) [57]. Opracowa-na modyfikacja pozwala na dokładniejsze niż metodą BTM wyznaczanie wartościfunkcji przy wartościach y bliskich zera (dla których pochodna i druga pochod-na tych funkcji mają duże wartości bezwzględne), co, jak wykazały eksperymenty,ma istotny wpływ na wyniki dekodowania, gdyż istotne jest precyzyjne przelicza-nie prawdopodobieństw bliskich zera. Opracowano specyficzny sposób propagacjiwiadomości w ścieżce przetwarzania CNU: na zmianę wprowadzane są wiadomości

11

Page 12: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

skojarzone z 4 różnymi węzłami kontrolnymi, co, w połączeniu z odpowiednim bufo-rowaniem, pozwala na wykorzystanie rejestrów potokowych w układach mnożących(np. dla układów Virtex-6 zalecane są 3 rejestry potokowe) ze sprzężeniem zwrot-nym, przy braku jakichkolwiek cykli, w których układy mnożące byłyby bezczyn-ne. W pracy [WS5] przedstawiono też efektywną strukturę układów permutującychprawdopodobieństwa (P i P−1 na rys. 2). Wymienione rozwiązania pozwoliły naminimalizację podstawowych zasobów logicznych układu FPGA wymaganych przezdekoder.Opracowano implementację dekodera opartą o architekturę szeregową, z jed-

ną jednostką CNU i jedną VNU, a następnie implementację opartą o architekturęszeregowo-równoległą, z P równoległymi CNU i VNU. Konfigurowalność wartościP pozwala na łatwą skalowalność dekodera, przy czym liczba jednostek obliczenio-wych P jest równa rozmiarowi podmacierzy P w (2). Utworzony generator opisu wjęzyku VHDL umożliwia dostosowanie do kodów niebinarnych LDPC definiowanychmacierzą jak w (2), o dowolnych rozmiarach i dowolnym rzędzie ciała GF(q). Prze-prowadzono syntezę dekodera korzystając z różnych narzędzi, oraz zweryfikowanofunkcjonowanie dekodera w układzie Virtex-6.Porównanie wyników syntezy zaproponowanego dekodera, z wcześniej znanymi

implementacjami w układach FPGA [39,54] przedstawione są w Tab. 2 [WS5]. Sze-regowy dekoder kodu nad ciałem GF(8), w porównaniu z rozwiązaniem opisanymw [54], wymaga ponad dwukrotnie mniej podstawowych zasobów (bloki Slice), osią-gając jednocześnie prawie dwukrotnie większą przepustowość. Kosztem jest koniecz-ność wykorzystania 16 układów mnożących (bloki DSP48). Szeregowo-równoległydekoder kodu nad ciałem GF(32) (ostatnia kolumna w Tab. 2) osiąga większą prze-pustowość niż rozwiązanie opisane w [39], wymagając ponad dwukrotnie mniej pod-stawowych zasobów logicznych. Opracowany dekoder może być zmieszczony np.w stosunkowo małym układzie rodziny Virtex4: XC4VSX55, zajmując odpowied-nio 22494 bloków Slice (co stanowi 91% dostępnych w XC4VSX55), 172 bloki RAM(54%) oraz 192 bloki DSP48 (38%), podczas gdy nie jest możliwe zmieszczenie w tymFPGA dekodera [39], gdyż liczba wymaganych bloków Slice (47341) znacznie prze-kracza liczbę zasobów XC4VSX55. Zaproponowane mapowanie algorytmu zarównodo podstawowych komórek logicznych, jak i układów mnożących, jak również pozo-stałe poczynione optymalizacje elementów dekodera, dają możliwość umieszczaniadekoderów w mniejszych układach FPGA lub uzyskanie zwiększonej przepustowości.

3.5 Konstrukcja kodów LDPC nad ciałem GF(q)

Istnieje mnogość możliwych wymagań co do: długości bloku kodu N , jego spraw-ności R, rzędu ciała q, rozmiaru podmacierzy P – mającego związek z przepustowo-ścią dekodera, a także zagęszczenia niezerowych elementów – nieregularności koduzwiązanej z własnościami korekcyjnymi. W związku z tym, najcenniejszymi efektamiprac naukowych dotyczących kodów LDPC o dobrych własnościach korekcyjnych niesą konkretne macierze kontrolne, a sposoby lub algorytmy tworzenia kodów, któremogą być zastosowane w mniej lub bardziej ograniczonym zakresie wspomnianych

12

Page 13: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

Tabela 2: Wyniki syntezy (Xilinx XST, FPGA rodziny Virtex) opracowanych la-tach 2012-2016 dekoderów LDPC nad ciałami GF(8) i GF(32) w porównaniu zewcześniejszymi rozwiązaniami.

GF(8) GF(32)[54] [WS5] [WS5] [39] [WS5] [WS5]

Algorytm FFT-BP FFT-BP FFT-BP Min-Max FFT-BP FFT-BP15 iter. 15 iter. 15 iter. 15 iter. 15 iter.

Kod (N,K) (720,360) (720,360) (720,360) (744,653) (744,372) (744,372)Równoległość Szereg. Szereg. Szer.–Równ. Szer.–Równ. Szereg. Szer.–Równ.

P = 8 P = 3Bloki Slice 4660 1777 14535 47341 7240 22494 (91%)Bloki RAM 16 25 48 180 109 172 (54%)Układy DSP48 0 16 128 0 64 192 (38%)Maks. fclock [MHz] 99.7 179.5 170.8 106.2 138.4 130.2Przepustowość [Mbps] 1.09 2.05 15.62 9.3 5.26 14.84Przep./fclock [bps/Hz] 0.0109 0.0114 0.0914 0.0876 0.038 0.114

wyżej parametrów. Metody te mogą być zróżnicowane w zależności od zastosowań,gdyż aplikacje kodów mogą mieć odmienne wymagania co do własności – np. w jed-nych istotniejszy jest tzw. waterfall region krzywej korekcyjnej, czyli rejon o sto-sunkowo dużej wartości BER (Bit Error Rate), w którym krzywa zaczyna opadać,a w innych aplikacjach tzw. error floor region, czyli rejon przy małej wartości BER,w którym krzywa może mieć tendencje niekorzystnej zmiany charakteru z wklęsłegona wypukły.Zdecydowana większość znanych metod tworzenia kodów o dobrych własnościach

korekcyjnych (zoptymalizowanych dla danych parametrów) opiera się o odpowiedniąkonstrukcję grafu Tannera kodu, ze względu na ścisły związek pomiędzy własnościa-mi korekcyjnymi kodu a jego grafem. W szczególności istotny jest rozkład stopniwierzchołków symbolowych oraz liczba i parametry pewnych szczególnych strukturgrafu: podgrafów indukowanych przez zbiory wierzchołków typu SS (Stopping Set)oraz TS (Trapping Set) [58,59], które mogą powodować zatrzymywanie procesu de-kodowania w tzw. pułapkach [59]. Ponieważ struktury te są tożsame z cyklamiw grafie lub też składają się z pewnej liczby połączonych krótkich cykli, algorytmyoptymalizacji grafu polegające na minimalizacji obecności krótkich cykli są stoso-wane w zdecydowanej większości prac badawczych dotyczących tego zagadnienia.Najkrótszy cykl w grafie nazywany jest obwodem grafu.Znane od dosyć dawna metody deterministyczne wykorzystujące algebrę ciał

skończonych, pewne konstrukcje geometryczne lub konfiguracje kombinatoryczne[7, 10, 11, 24] pozwalają konstruować zoptymalizowane grafy, jednak ich ogranicze-niem jest fakt, że są one przeznaczone w zasadzie tylko dla kodów regularnych, o ści-śle określonych długościach bloku N i stopie R. Ograniczenia tego nie mają metodypseudolosowe oraz algorytmiczne, polegające na sukcesywnym wstawianiu kolejnychwęzłów i krawędzi do konstruowanego grafu. Skuteczną i prawdopodobnie najlepiejznaną tego typu metodą jest algorytm PEG (Progressive Edge Growth) [9,12]. W wy-niku otrzymywany jest jednak graf kodu z pełnej klasy LDPC, nie uwzględniającyograniczeń implementacyjnych.

13

Page 14: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

Uniwersalne metody tworzenia kodów zorientowanych na implementację zwykleopierają się także o komputerowe metody poszukiwania dobrych skojarzonych gra-fów. Konstrukcja kodu o macierzy przedstawionej w (2) jest wykonywana w kilkuetapach, z których najważniejsze to:

1. określenie dystrybucji stopni wierzchołków grafu;

2. utworzenie grafu bazowego, czyli grafu skojarzonego z macierzą bazową W,zwanego także protografem;

3. ekspansja grafu bazowego (protograph lifting);

4. w przypadku kodu niebinarnego – wybór wartości niezerowych elementówwW.

Pierwsze dwa z wymienionych etapów są wykonywane z wykorzystaniem me-tod tworzenia grafów skojarzonych z kodami pełnej klasy LDPC. Optymalizacjędystrybucji stopni wierzchołków można przeprowadzić z wykorzystaniem klasycz-nej metody ewolucji rozkładów prawdopodobieństw density evolution [6]. Następniewyżej wspomniany algorytm PEG pozwala na utworzenie grafu bazowego o dobrychwłasnościach. Alternatywnie można skorzystać z wyników prac prezentujących zop-tymalizowane protografy [17, 23].Kluczowym etapem decydującym o własnościach uzyskanego grafu, a zatem

także o własnościach kodu, jest etap ekspansji grafu bazowego, polegający na P -krotnym powieleniu każdego wierzchołka i krawędzi protografu, przy zastosowaniuokreślonych permutacji krawędzi. Po stronie macierzy kontrolnych, ekspansja ozna-cza zastąpienie niezerowych elementów macierzy bazowej W, podmacierzami per-mutacji o rozmiarze P × P . W odniesieniu do kodów o macierzy kontrolnej (2),podmacierze mają postać przesunięć cyklicznych macierzy jednostkowej Psi,j . Zbiórwszystkich wartości si,j, dla 1 ¬ i ¬ I, 1 ¬ j ¬ J określa ekspansję grafu bazo-wego (macierzy bazowej), a zatem metoda (algorytm) ekspansji sprowadza się dowyznaczenia wszystkich wartości si,j.Zbiór możliwych rozwiązań ekspansji jest skończony (gdyż 0 ¬ si,j < P ) i ist-

nieją prace proponujące wyczerpujące przeszukanie przestrzeni rozwiązań [18]. Zewzględu na wykładniczą zależność liczności zbioru możliwych rozwiązań od licz-by niezerowych podmacierzy Psi,j , praktyczne zastosowanie tego typu metod jestograniczone do bardzo małych grafów. Dla większych grafów znane są metody po-szukiwania algorytmicznego wykazujące dosyć dobrą skuteczność, ale nie gwaran-tujące uzyskania najlepszego możliwego wyniku. W pracy [15] hierarchiczne kodyQC-LDPC są konstruowane z wykorzystaniem losowo inicjalizowanej optymalizacjialgorytmem hill climbing poszukującym lokalnie optymalnego rozwiązania, maksy-malizującego obwód grafu (czyli długość najkrótszego cyklu). W [16] zapropono-wany jest algorytm oparty o pętlę poszukiwań, która generuje losowe rozwiązania,rejestruje wszystkie spośród nich cechujące się grafem o określonym obwodzie, a na-stępnie dokonywany jest ostateczny wybór w oparciu o krzywą BER uzyskiwanąna drodze symulacji Monte-Carlo. Inne podobne algorytmy, wykorzystujące metody

14

Page 15: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

heurystyczne, pseudo-losowe lub poszukiwanie lokalnego optimum obejmują mię-dzy innymi [19, 42, 43]. Celem jest zwykle tylko maksymalizacja obwodu grafu lubteż poszukiwanie minimalnego rozmiaru podmacierzy P , dla którego jest możliweosiągnięcie zadanego obwodu. Część z wymienionych badań dotyczy tylko pewnejpodklasy kodów QC-LDPC, w szczególności kodów o grafie bazowym całkowiciepołączonym.Wymienione metody konstrukcji są zdefiniowane w postaci pseudo-kodów po-

kazujących algorytmy tworzenia grafu (lub macierzy). Prace podjęte w ostatnimczasie przez autora niniejszego wniosku miały na celu zaproponowanie modelu, któ-ry pozwoliłby na zdefiniowanie problemu ekspansji grafu w postaci układu równańi nierówności liniowych, wraz ze ściśle zdefiniowaną funkcją celu, która pozwoli nauwzględnienie w procesie optymalizacji nie tylko obwodu grafu, ale także dodat-kowych kryteriów, pozwalających na osiągnięcie lepszych wyników, w szczególnościpoprawionych własności korekcyjnych uzyskiwanych kodów. W zaproponowanymmodelu, w funkcji celu podlegającej optymalizacji odzwierciedlony jest każdy cyklistniejący w grafie bazowym, z indywidualną wagą przypisaną do każdego cyklu.Efektem jest czytelny model matematyczny i uniwersalny algorytm tworzenia ko-dów LDPC nad ciałem GF(q) zorientowanych na implementację, zarówno binarnych,jak i niebinarnych. Prace te, opublikowane w [WS9], zostaną krótko przedstawionew kolejnych kilku akapitach niniejszego opracowania. W trakcie prac okazało się,że zaproponowany model może być sformułowany w postaci programowania całko-witoliczbowego (MILP – Mixed Integer Linear Programming). W artykule [WS9]skupiono się jednakże na sformułowaniu problemu w przedstawiony powyżej, zwek-toryzowany sposób, nie rozważano natomiast algorytmów MILP rozwiązania pro-blemu, wykorzystując istniejące oprogramowanie.Opracowany model i metoda konstrukcji opiera się na znanej współzależności

pomiędzy cyklami w grafie kodu QC-LDPC a cyklami w jego grafie bazowym [22].Na potrzeby modelu ta współzależność została przedefiniowana następująco. Jeśliw grafie bazowym istnieje zamknięta sekwencja krawędzi (closed walk) et1 ∼ et2 ∼· · · ∼ et2l ∼, to w grafie kodu po ekspansji nie istnieją skojarzone cykle wtedyi tylko wtedy gdy

∑2lk=1(−1)

k−1stk 6≡ 0 mod P , gdzie stk to przesunięcie cyklicznepodmacierzy skojarzonej z krawędzią grafu bazowego etk .W pierwszym kroku metody graf bazowy jest analizowany w celu określenia

wszystkich łańcuchów zamkniętych o długości do pewnej wartości limitu. Dla łań-cucha o indeksie d, gdzie d = 1, . . . , D, wspomniany wyżej warunek formułowa-ny jest w zapisie wektorowym następująco: a(d) · sT 6≡ 0 mod P , gdzie a(d) =[a1(d), a2(d), . . . , aT (d)], gdzie at(d) to liczba przejść przez krawędź et w łańcu-chu d-tym w kierunku zgodnym ze skierowaniem krawędzi minus liczba przejśćw kierunku przeciwnym, gdzie e1, . . . , eT to wszystkie krawędzie grafu bazowego,a s = [s1, s2, . . . , sT ] to skojarzone przesunięcia cykliczne w H. W publikacji [WS9]przedstawiono krok po kroku, jak tego typu warunek rozpisać na układ nierównościliniowych. Następnie pokazano, że problem tworzenia grafu kodu QC-LDPC możnasformułować następująco: określić zawartość wektora s = [s1, s2, . . . , sT ], 0 ¬ st < P

15

Page 16: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

oraz y = [y1, y2, . . . , yU ], 0 ¬ yu ¬ 1, która minimalizuje funkcję celu:

z =[

01×T , c]

·

[

sT

yT

]

(3)

przy ograniczeniach:

A ·

[

sT

yT

]

¬ bT (4)

gdzie macierz współczynników A składa się z: A = col[A(1),A(2), · · · ,A(D)],gdzie A(d) definiuje współczynniki nierówności warunku dla d-tego łańcucha, łącz-nie z wektorem b. Wektor y to pomocniczy wektor binarny, natomiast wektorc = [c(1), c(2), · · · , c(D)] zawiera współczynniki (wagi) przypisane do poszcze-gólnych łańcuchów. Można zauważyć, że rozwiązanie spełniające zależności (3)-(4)jest w istocie rozwiązaniem całkowitoliczbowego problemu programowania liniowego(MILP). Zawartość tak zdefiniowanych macierzy współczynników A, b, c może byćwprost przekazana do komercyjnych narzędzi rozwiązujących tego typu problemy,np. funkcji intlinprog środowiska Matlab. W publikacji [WS9] przedstawionoogólne zależności wskazujące sposób wypełniania tych macierzy.Opracowana formuła funkcji celu, z wykorzystaniem wag zawartych w wektorze

c, odzwierciedla istnienie cykli w grafie po ekspansji, skojarzonych z wybranymiłańcuchami. W publikacji [WS9] zaproponowano kilka metod wykorzystania takiejfunkcji celu. Pierwsza metoda polega na sformułowaniu problemu w taki sposób,że optymalizowany jest obwód grafu (jak w większości innych prac dotyczących te-go tematu). Lepsze wyniki daje metoda polegająca na dodatkowym uwzględnieniuw funkcji celu łańcuchów o długości równej obwodowi grafu z jednakowymi wagami.Zaproponowano także metodę, w której wagi są powiązane z parametrem wskazują-cym na liczbę zewnętrznych połączeń cyklu (EMD – Extrinsic Message Degree [8]).Duża wartość EMD oznacza małe prawdopodobieństwo, że cykl jest fragmentempodgrafu indukowanego przez zbiór TS, a więc ma mniejszy negatywny wpływ nawłasności korekcyjne kodu.W [WS9] pokazano także, w jaki sposób należy generować niezerowe współczyn-

niki nad ciałem GF(q) dla kodów niebinarnych (etap 4 konstrukcji kodu). Wyko-rzystano koncepcję binarnych obrazów macierzy [41], dostosowując ją do kodówzorientowanych na implementację i rozszerzając zbiór zoptymalizowanych wektorówwspółczynników. Przedstawiono także sposoby ograniczenia przestrzeni poszukiwań:poprzez normalizację pierwszego wiersza i pierwszej kolumny współczynników si,jw (2) oraz poprzez ograniczenie sumy w warunku na nieistnienie cyklu do zakresuod −P do P .Finalnym efektem prac jest uniwersalny algorytm konstrukcji kodów nad ciałem

GF(q) zorientowanych na implementację, o macierzy kontrolnej jak (2), o dowolnymrozmiarze bloku N , sprawności R, rozmiarze podmacierzy P . W [WS9] zaprezen-towano szereg wyników eksperymentalnych potwierdzających skuteczność zapropo-nowanej metody, w szczególności dla kodów niebinarnych o krótkiej-średniej długo-ści bloku. Przykładowe wyniki, prezentujące bitową stopę błędów w funkcji Eb/N0

16

Page 17: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

w kanale BI-AWGN dla utworzonych kodów nad ciałem GF(8) o różnych rozmiarachbloków, w porównaniu do kodów o zoptymalizowanym obwodzie, dla których wynikizaczerpnięto z [43], przedstawione są na rys. 3.

0.5 1 1.5 2 2.5 3E

b/N

0 [dB]

10-4

10-3

10-2

10-1

100

Blo

ck E

rror

Rat

e

Rys. 3: Własności korekcyjne utworzonych kodów nad ciałem GF(8).

Publikacja [WS9] jest ostatnim osiągnięciem autora wniosku, jednakże na uwagęzasługują także wcześniejsze prace dotyczące konstrukcji kodów zorientowanych naimplementację.Kody niebinarne, w przeciwieństwie do binarnych, nie wymagają dużej niere-

gularności dystrybucji stopni węzłów grafu. Tradycyjne metody ewolucji gęstościprawdopodobieństwa [6] dla celów wyznaczenia dystrybucji stopni nieregularnegokodu binarnego (etap 1 konstrukcji kodu QC-LDPC) dają rozwiązanie asympto-tyczne, tzn. optymalne dla nieskończonej długości bloku N , lecz stanowiące pewneprzybliżenie optimum dla skończonej długości bloku. Wydaje się, że dla kodów nie-binarnych nie ma potrzeby stosowania tej skomplikowanej procedury. Dla dużychrzędów ciała znakomite własności mają kody regularne o stopniu wszystkich węzłów(wadze kolumny H) równej dwa [44] – są to kody nazywane w angielskojęzycznejliteraturze regular cycle codes. W przypadku kodów nad ciałami o mniejszych rzę-dach (2 < q ¬ 64), dodatkowy zysk kodowania może zostać osiągnięty poprzezwprowadzenie pewnej liczby węzłów stopnia 3. Takie kody nazywane są kodamisemi-regularnymi, gdyż graf zawiera węzły o tylko dwóch stopniach: 2 i 3.W [WS6] autor wniosku przedstawił oryginalną metodę konstrukcji semi-regular-

nych niebinarnych kodów QC-LDPC, która nie wymaga procedury ewolucji gęsto-ści prawdopodobieństwa, łącząc w jednym algorytmie optymalizację stopni węzłów,macierzy bazowej i przesunięć cyklicznych w (2). Metoda opiera się na iteracyjnej

17

Page 18: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

procedurze wstawiania krawędzi do grafu, przy czym krawędzie wstawiane są gru-pami pozwalającymi na zachowanie struktury kodu typu QC-LDPC (2). W każdejiteracji spośród wszystkich możliwych opcji, wybierana jest taka grupa krawędzi,która tworzy najmniej „szkodliwe” nowe cykle w grafie kodu. Szkodliwość jest okre-ślana przez długość cykli, a przy jednakowej długości – przez parametr związanyz liczbą zewnętrznych połączeń tych cykli ACE (Approximate Cycle EMD [8]). Ite-racyjne wstawianie krawędzi jest kontynuowane tak długo, aż miara własności ko-rekcyjnych kodu przestanie ulegać poprawie. Punktem startowym algorytmu możebyć graf nie zawierający żadnej krawędzi lub też graf z wierzchołkami stopnia 2,o optymalnej strukturze ze względu na cykle, czyli tzw. (ν, g)-cage [44], utworzo-ny jedną ze znanych metod algebraicznych [44]. Wynikiem algorytmu jest graf kodusemi-regularnego, zawierający pewną liczbę węzłów stopnia 2 i 3. Dystrybucja stopniwęzłów jest zatem optymalizowana pośrednio, dzięki czemu można zastąpić proce-durę optymalizacji z wykorzystaniem ewolucji gęstości prawdopodobieństw (dającąwynik optymalny asymptotycznie), metodą, dla której otrzymany kod jest zweryfiko-wany już na etapie zaproponowanego algorytmu konstrukcji. Również macierz bazo-wa kodu jest tworzona pośrednio. Praktyczna przydatność opracowanego algorytmuzostała potwierdzona wynikami eksperymentalnymi [WS6], wskazującymi, że utwo-rzone semi-regularne kody QC-LDPC nad ciałami o różnych rzędach (2 < q ¬ 64)mają lepsze własności korekcyjne, szczególnie w obszarze error-floor, niż kody re-gularne, jak również podobne kody semi-regularne utworzone algorytmem I-PEG.Eksperymentalną metodę określania optymalnych dystrybucji stopni węzłów grafuniebinarnych kodów LDPC przedstawiono także w [WS4]. Przedstawione tam wyni-ki badań eksperymentalnych pozwalają na szybkie oszacowanie „dobrej” dystrybucjikodu semi-regularnego dla dowolnej stopy kodu R i rzędu ciała 2 < q ¬ 64.W pracach, których wynikiem była publikacja [WS7] zajmowano się podklasą nie-

binarnych kodów LDPC pod kątem efektywnej implementacji kodera sprzętowegoo dużej przepustowości. Kody charakteryzujące się liniową złożonością obliczeniowąoperacji kodowania są znane jako NB-IRA (Nonbinary Irregular Repeat Accumula-te). Zaproponowano strukturę sprzętowego kodera niebinarnego kodów S-NB-IRA,w którym przepustowość zależy od rozmiaru podmacierzy P , podobnie jak dla de-kodera (o czym wspomniano wyżej). Dzięki temu, parametr P może decydowaćjednocześnie o przepustowości kodera, jak i dekodera, ułatwiając projektowanie ko-deków sprzętowych. W [WS7] przedstawiono także kompleksowy algorytm tworzeniamacierzy kontrolnej kodu podklasy S-NB-IRA, w którym graf bazowy tworzony jestalgorytmem PEG, a wartości przesunięć cyklicznych w podmacierzach optymalizo-wane są algorytmem iteracyjnym.Rozważana była także specyfika projektowania kodów binarnych dla aplikacji w

kontrolerach pamięci NAND-Flash [WS8], gdzie, ze względu na konieczność stosowa-nia twardo-decyzyjnych algorytmów dekodowania, stopnie węzłów bitowych powinnymieć większą wartość średnią niż w kodach projektowanych dla celów telekomunika-cyjnych. W publikacji [WS8] przedstawiono konstrukcję tego typu kodów, zoriento-wanych na implementację zarówno dekodera, jak i sprzętowego kodera, o złożonościobliczeniowej liniowo zależnej od długości bloku oraz przedstawiono sposób adaptacji

18

Page 19: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

kodu do poziomu przekłamań rosnącego wraz ze zużyciem struktury pamięci. Ad-aptacja polega na rozszerzeniu kodu (dodatkowe makro-wiersze i makro-kolumny wmacierzy H – dodatkowe bity nadmiarowe) wraz ze skróceniem części informacyjnejsłowa kodowego.

3.6 Podsumowanie

Opisano osiągnięcie naukowe autora wniosku w zakresie projektowania systemówkodowania LDPC nad ciałem GF(q) z efektywną implementacją kodera i dekodera.Zestawiono i omówiono skrótowo treść publikacji składających się na jednotematycz-ny cykl. Podsumowując, wśród szczegółowych oryginalnych osiągnięć autora w tymobszarze prac badawczych należy wymienić:

• Przedstawienie modelu propagacji błędów nasycenia w dekoderze binarnychkodów LDPC typu TDMP ze stałoprzecinkowymi słowami wiadomości o ogra-niczonej precyzji; opracowanie modyfikacji jednostek obliczeniowych dekoderaTDMP pozwalających na niwelację negatywnego efektu tych błędów na wynikidekodowania [WS2].

• Określenie zależności, które na podstawie struktury macierzy bazowejW orazliczby cykli przetwarzania potokowego TP pozwalają na wyznaczenie suma-rycznej liczby cykli bezczynności Tidle w szeregowo-równoległym dekoderzeTDMP. Opracowanie metody przekształcenia macierzy bazowejW kodu, abyuzyskać macierz, dla której wartość Tidle jest istotnie zredukowana [WS1].

• Opracowanie struktury dekodera niebinarnych kodów LDPC, która, dzięki za-stosowaniu zaproponowanego zmodyfikowanego algorytmu FFT-BP, podziało-wi ścieżki przetwarzania na 3 części o zróżnicowanej zoptymalizowanej liczbiebitów reprezentacji wiadomości oraz układom aproksymowanego wyznaczaniawartości nieliniowych funkcji, zajmuje istotnie zmniejszoną liczbę podstawo-wych zasobów logicznych układu FPGA, pozwalając zmieścić dekoder w ukła-dzie FPGA o uboższej specyfikacji niż wcześniej znane rozwiązania i / lubosiągnąć zwiększoną przepustowość. Skalowalność jest zapewniana przez kon-figurowalność liczby jednostek obliczeniowych w dekoderze [WS3,WS5].

• Opisanie ekspansji grafu bazowego kodu QC-LDPC w postaci problemu opty-malizacyjnego definiowanego przez układ liniowych nierówności oraz liniowąfunkcję celu, umożliwiającą optymalizację nie tylko obwodu grafu, ale takżeliczby cykli o długości równej lub większej od obwodu, z uwzględnieniem ewen-tualnych wag uzależnionych od liczby zewnętrznych połączeń cyklu. Przedsta-wienie uniwersalnego algorytmu konstrukcji binarnych i niebinarnych kodówLDPC zorientowanych na implementację, opartego na zaproponowanym mode-lu, umożliwiającego uzyskanie zwiększonych możliwości korekcyjnych, zwłasz-cza w obszarze error floor, w porównaniu z innymi współczesnymi metoda-mi [WS9].

19

Page 20: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

• Opracowanie algorytmu konstrukcji semi-regularnych kodów QC-LDPC nadciałami GF(q), 2 < q ¬ 64, optymalizującego jednocześnie dystrybucję stopniwęzłów grafu, graf bazowy oraz wartości przesunięć cyklicznych w podmacier-zach [WS4,WS6].

• Zaproponowanie struktury efektywnej implementacji kodera niebinarnych ko-dów LDPC klasy NB-IRA, którego przepustowość zależy od wielkości podma-cierzy P , podobnie jak w dekoderze. Przedstawienie iteracyjnego algorytmukonstrukcji kodów NB-IRA [WS7].

4 Omówienie pozostałych osiągnięć naukowo-badawczych

Podczas studiów magisterskich podjąłem badania nad optymalizacją struktur fil-trów cyfrowych na cele implementacji w układach FPGA. Badania te, kontynuowanepo obronie pracy magisterskiej, dotyczyły w szczególności analizy wrażliwościowejstruktur filtrów cyfrowych IIR, przedstawienia struktur niskowrażliwościowych na-dających się do implementacji w układach FPGA, opracowania metod projektowaniafiltrów FIR zbudowanych na układach sumatorów, przy silnie ograniczonej precyzjiwspółczynników filtrów. Prowadziłem także prace dotyczące implementacji pewnychelementów warstwy fizycznej urządzeń WPAN (Wireless Personal Area Network),w szczególności kodeków kanałowych standardu IEEE 802.15.3, w postaci zopty-malizowanych opisów w językach opisu sprzętu. Efekty tych prac były publikowaneprzed obroną rozprawy doktorskiej, jednakże prace dotyczące rozmaitych aspektówimplementacji algorytmów cyfrowego przetwarzania sygnałów w układach FPGA sąkontynuowane także po obronie doktoratu.Lista pozostałych prac opublikowanych po doktoracie, czyli tych, które nie zo-

stały wykazane jako główny dorobek, przedstawiona jest poniżej, w sekcji 4.1. Obej-mują one pewne dodatkowe aspekty związane z kodowaniem LDPC, takie jak im-plementacja konfigurowalnej sieci połączeń w dekoderze LDPC [WS15,WS16], eks-pansja grafu algorytmem heurystycznym [WS10], opis struktury konfigurowalnegodekodera binarnego [WS11], opis środowiska symulacji nowoczesnych kodów kana-łowych [WS18], itp. Uczestniczyłem też w pracach związanych z rozwojem metodszerokopasmowej modulacji cyfrowej, w szczególności OFDM [WS12,WS19,WS20]oraz w pracach związanych z rozwojem metod dekompozycji funkcji logicznych napotrzeby układów programowalnych [WS17]. Prace dotyczące energooszczędnego de-kodera kodów LDPC implementowanego w układzie FPGA [WS26] prowadzę wewspółpracy z doktorantem – jestem promotorem pomocniczym w otwartym w 2019roku przewodzie doktorskim. Za działalność naukową zostałem dwukrotnie uhono-rowany Nagrodami JM Rektora Politechniki Śląskiej.Byłem kierownikiem grantu własnego finansowanego przez NCN „Kody LDPC

nad ciałem GF(q) efektywnie dekodowane sprzętowo”, pozytywnie rozliczonego pu-blikacjami konferencyjnymi indeksowanymi w WoS oraz publikacjami w czasopi-smach z listy JCR. Byłem także laureatem konkursu „Staż Sukcesem Naukowca”,współfinansowanego ze środków Kapitał Ludzki Unii Europejskiej, dzięki czemu od-

20

Page 21: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

byłem 6-miesięczny staż w 2012r. w firmie Evatronix MA Sp. z o.o. (obecnie oddziałCadence Design Systems), projektującej wówczas komponenty wirtualne (IP cores)dla układów typu ASIC. Prowadziłem także prace badawczo-wdrożeniowe związa-ne z projektowaniem układów kodowania kanałowego na zlecenie kilku innych firm:SECOM s.c. (Wrocław), WB Electronics S.A. (oddział Gliwice) oraz Cadence De-sign Systems Kft. (Katowice). Opracowany sprzętowy kodek LDPC, wykorzystującywłasne macierze kontrolne, został wdrożony w zaawansowanym sprzęcie do monito-ringu, jak również sprzęcie wojskowym, produkowanym przez w/w firmy.Od 2012 roku wykonałem kilkanaście recenzji manuskryptów zgłoszonych do re-

dakcji następujących czasopism z listy JCR: IEEE Transactions on Communications,IEEE Communications Letters, IEEE Transactions on Very Large Scale IntegrationSystems, IEEE Transactions on Circuits and Systems I: Regular Papers, IEEE Ac-cess, oraz kilkadziesiąt recenzji dla redakcji innych czasopism oraz artykułów zgłoszo-nych na konferencje, takie jak np. International Conference on Telecommunicationsand Signal Processing (TSP), Computer Networks (CN), IEEE Symposium on Wi-reless Technology and Applications (ISWTA), IEEE Wireless Communications andNetworking Conference (WCNC), IEEE Globecom. Od kilku lat rokrocznie jestemczłonkiem komitetu programowego konferencji International Conference on Telecom-munications and Signal Processing (TSP) oraz komitetu programowego konferencjiComputer Networks (CN). Od 5 lat jestem członkiem organizacji IEEE.Mój dorobek naukowy od czasu uzyskania stopnia doktora stanowi: 6 publikacji

angielskojęzycznych, których jestem jedynym lub pierwszym autorem, w między-narodowych czasopismach z listy JCR, których sumaryczny impact factor (zgodniez rokiem publikacji) wynosi IF=10,86; 7 publikacji angielskojęzycznych w materia-łach konferencyjnych indeksowanych w bazie Web of Science; 13 publikacji angielsko-i polskojęzycznych w innych punktowanych czasopismach i konferencjach. Wedługbazy Web of Science, mój indeks Hirscha wynosi h=4, a liczba cytowań (bez auto-cytowań, na dzień 01.03.2019) wynosi 22.

4.1 Wykaz pozostałych publikacji

[WS10] W. Sułek, Seed Graph Expansion for Construction of Structured LDPCCodes, in Proc. (IEEE) International Symposium on Wireless Communica-tion Systems (ISWCS), University of Siena, Italy, September 2009, pp. 216–220.

[WS11] W. Sułek, Konfigurowalny dekoder kodów LDPC implementowany w ukła-dzie FPGA, Pomiary Automatyka Kontrola, vol. 55 (2009), str. 606–608.

[WS12] G. Dziwoki, M. Kucharczyk and W. Sułek, Transmission over UWBchannels with OFDM system using LDPC coding, Proceedings of SPIE, vol.7502 (2009), pp. 75021Q.

[WS13] W. Sułek and M. Kucharczyk, Generacja macierzy kontrolnych ko-dów LDPC zorientowanych na implementację, Przegląd Telekomunikacyjny

21

Page 22: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

i Wiadomości Telekomunikacyjne, vol. 82 (2009), nr 8-9/2009, str. 1155–1165.

[WS14] W. Sułek, Idle time reduction in TDMP implementation of LDPC deco-der, in Proc. (IEEE) Region 8 International Conference on ComputationalTechnologies in Electrical and Electronics Engineering, SIBIRCON, Irkutsk,Russia, July 11-15, 2010, pp. 44–49.

[WS15] W. Sułek, Banyan Switch Applied for LDPC Decoder FPGA Implementa-tion, in 10th International IFAC Workshop on Programmable Devices andEmbeded Systems, PDeS, Pszczyna, October 6-7, 2010, pp. 9–14.

[WS16] W. Sułek, Sieć Banyana w implementacji sprzętowej dekodera LDPC, Po-miary Automatyka Kontrola, vol. 57 (2011), str. 36–38.

[WS17] M. Kubica, W. Sułek and D. Kania, Modyfikacja grafu wyjść popra-wiająca efektywność wykorzystania iloczynów w strukturze programowalnej,Elektronika - Konstrukcje, Technologie, Zastosowania, nr 04/2011, str. 122–125.

[WS18] W. Sułek, Środowisko symulacji nowoczesnych systemów kodowania ko-rekcyjnego, Przegląd Telekomunikacyjny i Wiadomości Telekomunikacyjne,vol. 84 (2011), nr 8-9/2011, str. 795–801.

[WS19] G. Dziwoki and W. Sułek, Subchannel Ordering Scheme for LDPC-Coded OFDM Transmission Over Selective Channels, in 36th InternationalConference on Telecommunications and Signal Processing (TSP), Roma,Italy, July 2-4, 2013, pp. 66–70.

[WS20] G. Dziwoki, M. Kucharczyk and W. Sułek, OFDM Transmissionwith Non-binary LDPC Coding in Wireless Networks, Computer Networks,Communications in Computer and Information Science, vol. 370 (2013), pp.222–231.

[WS21] W. Sułek, M. Kucharczyk and G. Dziwoki, Construction of Struc-tured Nonbinary Low-Density Parity-Check Codes, 2nd International Con-ference on Advancements in Information Technology, Singapore, August24-25, 2013, pp. 402-406.

[WS22] W. Sułek, G. Dziwoki and M. Kucharczyk, Niebinarne kody LDPCzorientowane na implementację sprzętową, Przegląd Telekomunikacyjny iWiadomości Telekomunikacyjne, vol. 86 (2013), nr 8-9/2013, str. 1003–1010.

[WS23] M. Kucharczyk and W. Sułek,Wpływ gęstości macierzy kontrolnej nawłasności korekcyjne semi-regularnych niebinarnych kodów LDPC, PrzeglądTelekomunikacyjny i Wiadomości Telekomunikacyjne, vol. 87 (2014), nr 8-9/2014, str. 805–810.

22

Page 23: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

[WS24] W. Sułek, Message Quantization Scheme for Nonbinary LDPC DecoderFPGA Implementation, Journal of Communications, vol. 10 (2015), pp. 86–92.

[WS25] W. Sułek, Własności korekcyjne i efektywne kodowanie podklasy S-NB-IRA kodów LDPC, Przegląd Telekomunikacyjny i Wiadomości Telekomuni-kacyjne, vol. 88 (2015), nr 8-9/2015, str. 1150–1155.

[WS26] M. Kuc, W. Sułek, D. Kania, Sprzętowa implementacja dekodera LDPCw strukturze FPGA, Przegląd Elektrotechniczny, vol. 2019, Nr 3 (2019),pp. 58–62.

5 Bibliografia

[1] R. G. Gallager, Low-Density Parity-Check Codes, MIT Press, Cambridge,MA, 1963.

[2] D. J. C. MacKay, Good Error-Correcting Codes Based on Very Sparse Ma-trices, IEEE Trans. Inf. Theory, vol. 45 (1999), pp. 399–431.

[3] IEEE Standard for Information technology – Telecommunications and informa-tion exchange between systems – Local and metropolitan area networks – Specificrequirements Part 11: Wireless LAN Medium Access Control (MAC) and Phy-sical Layer (PHY) Specifications, IEEE Std 802.11-2012 (Revision of IEEE Std802.11-2007), 2012.

[4] Digital Video Broadcasting (DVB); Second generation framing structure, chan-nel coding and modulation systems for Broadcasting, Interactive Services, NewsGathering and other broadband satellite applications (DVB-S2), European Stan-dard ETSI EN 302–307 V1.2.1, 2009.

[5] H. Li, B. Bai, X. Mu, J. Zhang, H. Xu, Algebra-Assisted Constructionof Quasi-Cyclic LDPC Codes for 5G New Radio, IEEE Access, vol. 6 (2018),pp. 50229–50244.

[6] T. J. Richardson, M. A. Shokrollahi, and R. L. Urbanke, Design ofCapacity-Approaching Irregular Low-Density Parity-Check Codes, IEEE Trans.Inf. Theory, 47 (2001), pp. 619–637.

[7] Y. Kou, S. Lin, and M. P. C. Fossorier, Low-Density Parity-Check CodesBased on Finite Geometries: A Rediscovery and New Results, IEEE Trans. Inf.Theory, 47 (2001), pp. 2711–2736.

[8] T. Tian, C. Jones, J. D. Villasenor, and R. D. Wesel, Selective Avo-idance of Cycles in Irregular LDPC Code Construction, IEEE Trans. Commun.,52, No. 8 (2004), pp. 1242–1247.

23

Page 24: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

[9] X. Y. Hu, E. Eleftheriou, and D. M. Arnold, Regular and IrregularProgressive Edge-Growth Tanner Graphs, IEEE Trans. Inf. Theory, 51 (2005),pp. 386–398.

[10] J. M. F. Moura, J. Lu, and H. Zhang, Structured Low-Density Parity-Check Codes, IEEE Signal Process. Mag., 12 (2004), pp. 42–55.

[11] S. Ding, Z. Yang, J. Song, C. Pan, and J. Wang, Combinatorial Con-struction of Low-Density Parity-Check Codes for Short Block Length and HighRate Applications, in International Conference on Wireless Communications,Networking and Mobile Computing, Wuhan, China, September 2006, pp. 1–4.

[12] H. Chen and Z. Cao, A Modified PEG Algorithm for Construction of LDPCCodes with Strictly Concentrated Check-Node Degree Distributions, in IEEEWireless Communications and Networking Conference, Kowloon, China, March2007, pp. 564–568.

[13] X. Zheng, F. C. M. Lau, and C. K. Tse, Constructing Short-Length Ir-regular LDPC Codes with Low Error Floor, IEEE Trans. Commun., 58 (2010),pp. 2823–2834.

[14] R. Asvadi, A. H. Banihashemi, and M. Ahmadian Attari, Lowering theError Floor of LDPC Codes Using Cyclic Liftings, IEEE Trans. Inf. Theory, 57(2011), pp. 2213–2224.

[15] Y. Wang, S. C. Draper, and J. S. Yedidia, Hierarchical and High-GirthQC LDPC Codes, IEEE Trans. Inf. Theory, 59 (2013), pp. 4553–4583.

[16] I. E. Bocharova, B. Kudryashov, and R. Johannesson, Searching forBinary and Nonbinary Block and Convolutional LDPC Codes, IEEE Trans. Inf.Theory, 62 (2016), pp. 163–183.

[17] A. K. Pradhan, A. Thangaraj, and A. Subramanian, Construction ofNear-Capacity Protograph LDPC Code Sequences With Block-Error Thresholds,IEEE Trans. Commun., 64 (2016), pp. 27–37.

[18] A. Tasdighi, A. H. Banihashemi, and M.-R. Sadeghi, Efficient Search ofGirth-Optimal QC-LDPC Codes, IEEE Trans. Inf. Theory, 62 (2016), pp. 1552–1564.

[19] H. Xu, D. Feng, R. Luo, and B. Bai, Construction of Quasi-Cyclic LDPCCodes via Masking With Successive Cycle Elimination, IEEE Commun. Lett.,20 (2016), pp. 2370–2373.

[20] S. Myung, K. Yang, and J. Kim, Quasi-Cyclic LDPC Codes for Fast En-coding, IEEE Trans. Inf. Theory, 51 (2005), pp. 2894–2901.

24

Page 25: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

[21] Y. Zhang and W. E. Ryan, Structured IRA Codes: Performance Analysisand Construction, IEEE Trans. Commun., 55, No. 5 (2007), pp. 837–844.

[22] M. P. C. Fossorier, Quasi-Cyclic Low-Density Parity-Check Codes fromCirculant Permutation Matrices, IEEE Trans. Inf. Theory, 50 (2004), pp. 1788–1793.

[23] D. Divsalar, S. Dolinar, C. R. JoJones, and K. Andrews, Capacity-Approaching Protograph Codes, IEEE J. Sel. Areas Commun., 27 (2009),pp. 876–888.

[24] J. Li, K. Liu, S. Lin, and K. Abdel-Ghaffar, Algebraic Quasi-CyclicLDPC Codes: Construction, Low Error-Floor, Large Girth and a Reduced-Complexity Decoding Scheme, IEEE Trans. Commun., 62 (2014), pp. 2626–2637.

[25] D. G. M. Mitchell, R. Smarandache, and D. J. Costello, Jr., Quasi-Cyclic LDPC Codes Based on Pre-Lifted Protographs, IEEE Trans. Inf. Theory,60 (2014), pp. 5856–5874.

[26] H. Y. Park, K. S. Kim and K. C. Whang, Structured Puncturing for Rate-Compatible B-LDPC Codes with Dual-Diagonal Parity Structure, IEEE Trans.Wireless Commun., 7 (2008), pp. 3692–3696.

[27] J. Huang, W. Zhou and S. Zhou, Structured Nonbinary Rate-CompatibleLow-Density Parity-Check Codes, IEEE Comm. Letters 15 (2011), pp. 998–1000.

[28] J. Fang, Y. L. Guan, G. Bi, L. Wang, and F. C. M. Lau, Rate-Compatible Root-Protograph LDPC Codes for Quasi-Static Fading Relay Chan-nels, IEEE Trans. Veh. Technol., 65 (2016), pp. 2741–2747.

[29] J. Chen, A. Dholakia, E. Eleftheriou, M. P. C. Fossorier, and X.-Y. Hu, Reduced-Complexity Decoding of LDPC Codes, IEEE Trans. Commun.,53 (2005), pp. 1288–1299.

[30] M. M. Mansour, A Turbo-Decoding Message-Passing Algorithm for SparseParity-Check Matrix Codes, IEEE Trans. Signal Process., 54 (2006), pp. 4376–4392.

[31] M. Jiang, C. Zhao, L. Zhang, and E. Xu, Adaptive Offset Min-Sum Al-gorithm for Low-Density Parity Check Codes, IEEE Comm. Letters, 10 (2006),pp. 483–485.

[32] L. Barnault and D. Declercq, Fast Decoding Algorithm for LDPC overGF(2q), in Proc. (IEEE) Information Theory Workshop, Paris, France 2003,pp. 70–73.

25

Page 26: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

[33] D. Declercq and M. Fossorier, Decoding Algorithms for Nonbinary LDPCCodes Over GF(q), IEEE Trans. Commun. vol. 55(2007), pp. 633–643.

[34] M. M. Mansour and N. R. Shanbhag, High Throughput LDPC Decoders,IEEE Trans. VLSI Syst., 11, No. 6 (2003), pp. 976–996.

[35] M. M. Mansour and N. R. Shanbhag, A 640-Mb/s 2048-Bit ProgrammableLDPC Decoder Chip, IEEE Journal of Solid-State Circuits, 41 (2006), pp. 684–698.

[36] K. Zhang, X. Huang, and Z. Wang, High-Throughput Layered DecoderImplementation for Quasi-Cyclic LDPC Codes, IEEE J. Sel. Areas Commun.,27 (2009), pp. 985–994.

[37] Z. Zhang, L. Dolecek, B. Nikolic, V. Anantharam, and M. Wainw-right, Design of LDPC decoders for improved low error rate performance: qu-antization and algorithm choices, IEEE Trans. Commun., 57 (2009), pp. 3258–3268.

[38] C. Zhang, Z. Wang, J. Sha, L. Li, and J. Lin, Flexible LDPC DecoderDesign for Multigigabit-per-Second Applications, IEEE Trans. Circuits Syst. I,57 (2010), pp. 116–124.

[39] X. Zhang and F. Cai, Efficient Partial-Parallel Decoder Architecture forQuasi-Cyclic Nonbinary LDPC Codes, IEEE Trans. Circuits Syst. I, 58 (2011),pp. 402–414.

[40] M. C. Davey and D. J. C. MacKay, Low-Density Parity-Check Codes OverGF(q), IEEE Comm. Letters, vol. 2 (1998), pp. 165–167.

[41] C. Poulliat, M. Fossorier, and D. Declercq, Design of Regular (2,dc)-LDPC Codes over GF(q) Using Their Binary Images, IEEE Trans. Commun.,56 (2008), pp. 1626–1635.

[42] J. Huang, S. Zhou, and P. Willett, Structure, Property, and Design ofNonbinary Regular Cycle Codes, IEEE Trans. Commun., 58 (2010), pp. 1060–1071.

[43] J. Huang, L. Liu, W. Zhou, and S. Zhou, Large-Girth Nonbinary QC-LDPC Codes of Various Lengths, IEEE Trans. Commun., 58 (2010), pp. 3436–3447.

[44] C. Chen, B. Bai, G. Shi, X. Wang, and X. Jiao, Nonbinary LDPC Codeson Cages: Structural Property and Code Optimization, IEEE Trans. Commun.,63 (2015), pp. 364–375.

[45] T. J. Richardson and R. L. Urbanke, Efficient Encoding of Low-DensityParity-Check Codes, IEEE Trans. Inf. Theory, 47 (2001), pp. 638–656.

26

Page 27: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

[46] H. Song,J.R. Cruz, Reduced-Complexity Decoding of Q-ary LDPC Codes forMagnetic Recording, IEEE Trans. Magn., 39 (2003), pp. 1081–1087.

[47] H. Wymeersch, H. Steendam, M. Moeneclaey, Log-domain Decoding ofLDPC Codes over GF(q), in Proc. (IEEE) International Conference on Com-munications, Paris, France, June 2004, pp. 772–776.

[48] V. Savin, Min-Max decoding for non binary LDPC codes, in Proc. (IEEE)International Symposium on Information Theory, Toronto, Canada, July 2008,pp. 960–964.

[49] A. Voicila, D. Declercq, F. Verdier, M. Fossorier, P. Urard, Low-Complexity Decoding for Non-Binary LDPC Codes in High Order Fields, IEEETrans. Commun., 58 (2010), pp. 1365–1375.

[50] X. Chen and C.-L. Wang, High-Throughput Efficient Non-Binary LDPCDecoder Based on the Simplified Min-Sum Algorithm, IEEE Trans. CircuitsSyst. I, 59 (2012), pp. 2784–2794.

[51] E. Li, D. Declercq, and K. Gunnam, Trellis-Based Extended Min-Sum Al-gorithm for Non-Binary LDPC Codes and its Hardware Structure, IEEE Trans.Commun., 61 (2013), pp. 2600–2611.

[52] J. O. Lacruz, F. Garcia-Herrero, M. J. Canet, and J. Valls,Reduced-Complexity Nonbinary LDPC Decoder for High-Order Galois FieldsBased on Trellis Min-Max Algorithm, IEEE Trans. VLSI Syst., 24 (2016),pp. 2643–2653.

[53] C.-L. Lin, S.-W. Tu, C.-L. Chen, and H.-C. Chang, An Efficient DecoderArchitecture for Nonbinary LDPC Codes With Extended Min-Sum Algorithm,IEEE Trans. Circuits Syst. II, 63 (2016), pp. 863–867.

[54] C. Spagnol, E. M. Popovici, and W. P. Marnane, Hardware Imple-mentation of GF(2m) LDPC Decoders, IEEE Trans. Circuits Syst. I, 56 (2009),pp. 2609–2620.

[55] E. Boutillon, L. Conde-Canecia, and A. A. Ghouwayel, Design ofa GF(64)-LDPC Decoder Based on the EMS Algorithm, IEEE Trans. CircuitsSyst. I, 60 (2013), pp. 2644–2656.

[56] Y. L. Ueng, C. Y. Leong, C. J. Yang, C. C. Cheng, K. H. Liao,and S. W. Chen, An Efficient Layered Decoding Architecture for NonbinaryQC-LDPC Codes, IEEE Trans. Circuits Syst. I, 59 (2012), pp. 385–398.

[57] M.J. Schulte and J.E. Stine, Approximating Elementary Functions withSymmetric Bipartite Tables, IEEE Trans. Comput., 48 (1999), pp. 842–847.

27

Page 28: Autoreferat - Politechnika Śląska€¦ · Regular Nonbinary LDPC Codes, in Proc. (IEEE) 38th International Confe- rence on Telecommunications and Signal Processing (TSP), Prague,

[581 C. DI, D. PROIETTI, I. E. TELATAR, T. J. RICHARDSON, AND R. L. URBANKE, Finite-Length Analysis of Low-Density Parity-Check Codes on the Binary Erasure Channel, IEEE Trans. Inf. Theory, 48 (2002), pp. 1570-1579.

[59] T. RICHARDSON, Error Floors oj LDPC Codes, in Proc. 41st Annual. Allerton Conference on Communications, Control, and Computing, Monticello, USA, October 2003, pp. 1426-1435.

28