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 p1[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]

Podobne dokumenty