PDF version - Politechnika Śląska, Wydział Elektryczny
Transkrypt
PDF version - Politechnika Śląska, Wydział Elektryczny
ELEKTRYKA Zeszyt 2 (222) 2012 Rok LVIII Janusz WALCZAK, Rafał STĘPIEŃ Instytut Elektrotechniki i Informatyki, Politechnika Śląska w Gliwicach DYSKRETNE MODELOWANIE REJESTRÓW LFSR Streszczenie. W artykule zaproponowano metodę opisu dowolnego rejestru LFSR z wykorzystaniem terminologii układów i sygnałów dyskretnych. Podano uogólnione równania rejestru LFSR oraz metody ich tworzenia. Pokazano także budowę struktur rejestrów wynikającą z proponowanych równań. Słowa kluczowe: rejestry LFSR, sekwencje pseudolosowe, cyfrowe przetwarzanie sygnałów DISCRETE MODELING OF LFSR REGISTERS Summary. This paper shows a method of describing pseudo random signal generators with LFSR registers in discrete circuits and signal terminology. The generalized equations of the LFSR register and their creation are shown. The LFSR structures based on proposed equations are also shown. Keywords: LFSR register, pseudorandom sequences, digital signal processing 1. WSTĘP Generatory sekwencji pseudolosowych zbudowane na rejestrach z liniowym sprzężeniem znajdują wiele zastosowań w technice. Przykładowe zastosowania takich sekwencji można znaleźć w pracach [1] oraz [2]. Metody generacji sygnałów przypadkowych dzieli się na dwie grupy – rysunek 1. Pierwsza z nich umożliwia generację sygnałów w pełni losowych i wykorzystuje naturalne źródła szumów występujące w przyrodzie, np. szum termiczny czy śrutowy [1]. Druga umożliwia generację sygnałów pseudolosowych programowo opierając się na różnych technikach algorytmicznych lub sprzętowych, często z wykorzystaniem rejestrów przesuwnych z liniowym sprzężeniem zwrotnym (LFSR – Linear Feedback Shift Registers) [6]. Artykuł jest rozwinięciem pracy [5], w której opisano równania rejestru LFSR z dwuwejściową bramką XOR, z wykorzystaniem aparatu matematycznego cyfrowego przetwarzania sygnałów. 98 J. Walczak, R. Stępień Rys. 1. Źródła sygnałów losowych Fig. 1. The random signal sources 2. GENERATORY Z REJESTRAMI LFSR Generator sygnału pseudolosowego składa się z następujących bloków: a) liniowego rejestru przesuwnego o długości N z możliwością ustawienia wartości początkowej, b) bloku sprzężenia zwrotnego, c) generatora sygnału zegarowego, d) ewentualnego przetwornika cyfrowo-analogowego zamieniającego ciąg bitów (bądź liczb zawartych w rejestrze) na sygnał analogowy. Na rysunku 1 zaznaczono bloki a –c. Dyskretne modelowanie rejestrów LFSR… 99 Rys. 2. Typowy rejestr LFSR Fig. 2. A typical LFSR register Sygnał wyjściowy generatora jest określany stanem jednego z bitów rejestru, np. najmniej znaczącego bitu, por. rys. 2. Sygnał ten jest zawsze okresowy. Maksymalna długość sekwencji wyjściowej wynosi [1]: l 2N 1 (1) gdzie: N – rząd rejestru, l – długość sekwencji wyjściowej. Jeśli długość sekwencji wyjściowej jest równa długości maksymalnej (1), to taką sekwencję nazywa się m sekwencją. W pracy [5] opisano metodę modelowania dyskretnego generatorów pseudolosowych wykorzystujących rejestry LFSR. Modelowanie to dotyczyło rejestru z dwuwejściową bramką XOR pełniącą funkcję sprzężenia zwrotnego. Wielomiany opisujące funkcję sprzężenia zwrotnego są w tym przypadku trójmianami pierwotnymi modulo 2. W większości przypadków trójmiany pierwotne umożliwiają wygenerowanie m sekwencji. Istnieją przypadki generatorów LFSR, na przykład o długości 8 czy 12 [7], które nie mają trójmianów pierwotnych modulo 2, co uniemożliwia wygenerowanie m sekwencji. Z przeglądu wielomianów pierwotnych [2], [4], [7] wynika, że wykorzystanie do opisu rejestrów LFSR wielomianu modulo 2 w postaci: L( x ) x a x b x c x d 1 , (2) oraz trójmianów pierwotnych modulo 2: L( x ) x a x b 1 , (3) umożliwia stworzenie dyskretnego opisu każdego rejestru LFSR. Elementem sprzężenia zwrotnego w przypadku wielomianu (2) jest czterowejściowa bramka XOR. 100 J. Walczak, R. Stępień 3. UOGÓLNIONY DYSKRETNY MODEL GENERATORA Do opisu pracy generatora pseudolosowego zbudowanego na bazie rejestrów LFSR wykorzystano terminologię układów dyskretnych. Model dyskretny powstaje poprzez znalezienie dyskretnych równań różnicowych układu generatora. Równania te dotyczą samego rejestru przesuwnego oraz bloku sprzężenia zwrotnego, który jest realizowany poprzez bramkę XOR. Z punktu widzenia przetwarzania sygnałów rejestr przesuwny o długości N jest elementem opóźniającym o N próbek (potrzeba N cykli zegarowych, aby próbka wyjściowa x[n] bloku XOR przeszła przez cały rejestr). Opis matematyczny takiej sekwencji jest następujący: y[n] x[n N ] (4) Sam rejestr (bez bloku sprzężenia zwrotnego) może zostać opisany za pomocą równania (4). Do stworzenia pełnego opisu rejestru LFSR potrzeba także opisu matematycznego bramki XOR. Stosując opis matematyczny używany w cyfrowym przetwarzaniu sygnałów, otrzymuje się dla dwuwejściowej bramki XOR równanie wyjścia [5]: x[n] x[n i] x[n j ] 2 x[n i ]x[n j ] (5) gdzie: i, j numery odczepów rejestru LFSR służące do realizacji sprzężenia zwrotnego, x[n] – sygnał wyjściowy bramki XOR. Chcąc uogólnić opis matematyczny na rejestry o dowolnej długości N, należy zauważyć, że niektóre długości (N=12,13) nie posiadają wielomianów pierwotnych, utworzonych z dwóch odczepów, umożliwiających wygenerowanie m sekwencji. Dlatego dla pełnego opisu należy uwzględnić inną konfigurację sprzężenia zwrotnego. Dokonując przeglądu wielomianów pierwotnych, można zauważyć, że dla długości N>4 do N=786 [7], [8] wszystkie kolejne rejestry rzędu N=5,6,7…..786 umożliwiają generację m-sekwencji z wykorzystaniem czterech odczepów. Istnieją także dłuższe rejestry (N>786) [8], które mają konfigurację z czterema odczepami i umożliwiają generację m sekwencji, ale ich stosowanie nie jest już praktyczne, ze względu na olbrzymie długości generowanych sekwencji oraz trudności w implementacji sprzętowej i programowej. Przykładowo, rejestru o długości N=200 długość generowanej sekwencji wynosi 2200-1. Tak długa sekwencja zapewnia okres powtórzenia (dla częstotliwości taktowania rejestru 1 GHz): Tg (2 N 1)Tc 5 10 43 lat . (6) Dyskretne modelowanie rejestrów LFSR… 101 Stosując ograniczenie dla maksymalnej liczby odczepów równej 4 (dla N>4), można dokonać analizy dowolnego (N>4) rejestru LFSR. Generator LFSR z czterema odczepami powstaje przez podanie sygnałów z czterech wybranych odczepów rejestru na wejście bloku sprzężenia zwrotnego. Jeśli odczepy będą tworzyły wielomian pierwotny [2], to taki generator będzie generatorem m sekwencji. Przykład generatora z czterema odczepami przedstawia rysunek 3. Rys. 3. Generator LFSR zbudowany na czterowejściowej bramce XOR Fig. 3. The LFSR generator based on four inputs XOR gate W celu uzyskania równań generatora z rejestrami LFSR dla większej liczby odczepów równanie (5) należy stosować rekurencyjnie, otrzymując w ten sposób funkcję opisującą (równania różnicowe) wielowejściową bramkę XOR. Z logicznego punktu widzenia sprowadza się to do szeregowego połączenia bramek XOR. Rysunek 4 pokazuje konstrukcję czterowejściowej bramki XOR. Rys. 4. Czterowejściowa bramka XOR Fig. 4. The four inputs XOR gate Opis matematyczny powstaje poprzez wyprowadzenie równania dla bramki XOR z trzema wyjściami (żaden rejestr LFSR nie posiada konfiguracji z trzema odczepami). Następnie wyprowadza się równanie czterowejściowej bramki XOR. Równanie (5) można uogólnić na p-wejściową bramkę XOR. Równania takie można otrzymać stosując kolejne podstawienia funkcji wyjściowej poprzedniej bramki jako elementu wejściowego kolejnej bramki oraz dodatkowego wejścia (rysunek 4). 102 J. Walczak, R. Stępień Wprowadzając oznaczenia: yp[n] – wyście p-wejściowej bramki XOR, x[n-i], x[n-j], x[n-k], n[n-j] – kolejne wejścia bramki, otrzymuje się poniższe wzory. Dla p=2 równanie to przyjmuje następującą postać: y 2 [n] x[n i ] x[n j ] 2 x[n i ]x[n j ] . (7) Dla p=3 równanie wyjścia określa wzór: y 3 [n] y 2 [n] x[n k ] 2 y 2 [n]x[n k ] . (8) Po podstawieniu równania (7) do równania (8) otrzymuje się: y 3 [n] x[n j ] x[n k ] 2 x[n j ]x[n k ] x[n i](1 2 x[n j ](1 2 x[n k ]) . (9) Równanie (9) przedstawia model sygnałowy trójwejściowej bramki XOR. Równanie czterowejściowej bramki powstaje z równania (9): y 4 [n] y 3 [n] x[n l ] 2 y 3 [n]x[n l ] . (10) Po podstawieniu równania (8) do równania (9) oraz skróceniu zapisu otrzymuje się model sygnałowy czterowejściowej (p=4) bramki XOR: y 4 [n] x[n k ] x[n i ](1 2 x[n j ])(1 2 x[n k ])(1 2 x[n l ]) (11) x[n l ] 2 x[n k ]x[n l ] x[n j ](1 2 x[n k ])(1 2[n l ]). Równanie (11) opisujące czterowejściową bramkę XOR (rysunek 4) można przedstawić w formie bloków stosowanych w cyfrowym przetwarzaniu sygnałów. Schemat blokowy czterowejściowej bramki XOR pokazano na rysunku 5. Rys. 5. Struktura czterowejściowej bramki XOR Fig. 5. The structure of the four inputs XOR gate Ogólne równanie p-wejściowej bramki XOR jest następujące: y p [n] y p 1 [n] x[n p ] 2 y p1[n]x[n p ] . Schemat blokowy takiej struktury pokazano na rysunku 6: (12) Dyskretne modelowanie rejestrów LFSR… 103 Rys. 6. Uogólniona struktura p-wejściowej bramki XOR Fig. 6. The generalized p-inputs XOR gate Przykładowo, dla p=6 należy policzyć wszystkie funkcje wyjściowe dla p=1 do p=5. Funkcję wyjściową (p=6) otrzymuje się poprzez operację XOR (7) funkcji wyjściowej dla p=5 oraz szóstego wejścia. Wraz ze wzrostem ilości odczepów opis sygnałowy p-wejściowej bramki XOR staje się coraz bardziej skomplikowany. Dlatego w tej pracy nie dokonano analizy rejestrów LFSR z więcej niż czterema odczepami. Uzasadnione jest to tym, że przy dwóch i czterech odczepach można opisać wszystkie praktycznie stosowane rejestry LFSR. 4. PODSUMOWANIE W artykule zaprezentowano metodę opisu rejestrów LFSR z wykorzystaniem terminologii sygnałów dyskretnych. W proponowanym opisie rezygnuje się z arytmetyki modulo oraz działań w ciele GF(2). W zamian do opisu generatorów proponowane są równania rekurencyjne. Dzięki uogólnieniu tych równań na p-wejściową bramkę XOR, będącą elementem sprzężenia zwrotnego, otrzymano model matematyczny, który może być wykorzystywany do analizy dowolnego rejestru LFSR. BIBLIOGRAFIA 1. Kotulski Z.: Generatory liczb losowych: algorytmy, testowanie, zastosowania. „Matematyka Stosowana” 2001, nr 2, s. 1-6. 2. Schneier B.: Kryptografia dla praktyków. Vol. 2, WNT, Warszawa 2002, s. 464-475. 3. Mutagi R.N.: Pseudo noise sequences for engineers, Electronics & Communication Engineering Journal, Vol. 8 Issue 2, April 1996, p. 79-87. 104 J. Walczak, R. Stępień 4. Alfke P.: Efficient Shift Registers, LFSR Counters, and Long Pseudo-Random Sequence Generators, Xilinx application note. July 7, 1996, Vol. 1.1. 5. Walczak J., Stępień R.: Modeling Of The Pseudo Random Signal Generators Using Digital Filters. Materiały konferencyjne IC-SPETO, maj 2010, s. 85-86. 6. Golomb S. W.: Shift Register Sequences. Laguna Hills, C A Aegean. Park Press, 1982. 7. Dane liczbowe firmy New Wave Instruments dotyczące rejestrów LFSR: http://www.newwaveinstruments.com/resources/articles/m_sequence_linear_feedback_shi ft_register_lfsr.htm, październik 2010. 8. Ward R., Molteno T. V.: Department of Physics, University of Otago: Table of Linear Feedback Shift Registers. Recenzent: Dr hab. inż. Ryszard Porada, prof. Pol. Poznańskiej Wpłynęło do Redakcji dnia 20 września 2012 r. Prof. dr hab. inż. Janusz WALCZAK Mgr inż. Rafał STĘPIEŃ Politechnika Śląska Wydział Elektryczny Instytut Elektrotechniki i Informatyki ul. Akademicka 10 44-100 Gliwice Tel.: (032) 237 21 90; e-mail: [email protected] Tel.: (032) 237 19 09; e-mail: [email protected]