2004
Poznańskie Warsztaty Telekomunikacyjne Poznań 9 - 10 grudnia 2004 Marcin Adamski
Aleksander Ţariov Wydział Informatyki Politechnika Szczecińska Ul. Żołnierska 49 71 – 210 Szczecin madamski@wi.ps.pl aleksander.carev@wi.ps.pl
SYNTEZA ALGORYTMÓW DYSKRETNEGO SPLOTU CYKLICZNEGO Z WYKORZYSTANIEM MACIERZY DIADNEJ
Streszczenie: W artykule przedstawiono rozwinięcie metody [1] pozwalającej na syntezowanie algorytmów realizujących operację dyskretnego splotu cyklicznego. Omówiona metoda wykorzystuje macierz specjalną zwaną diadną.
Po przedstawieniu właściwości macierzy specjalnej i specyfiki metody, jej wyniki zostały porównane z wynikami uzyskiwanymi dzięki istniejącym i współcześnie wykorzystywanym algorytmom.
1. WSTĘP
Operacja splotu dyskretnego jest użytecznym narzędziem jakościowej analizy sygnałów i systemów dyskretnych. Początkowo splot był narzędziem analizy w odniesieniu tylko do sygnałów ciągłych, ale obecnie oddziaływuje na każdy aspekt przetwarzania sygnałów cyfrowych. Istota operacji sprowadza się do przetworzenia dwóch ciągów wejściowych dającego w wyniku pojedynczy ciąg wyjściowy[2].
∑
−=
⋅
−=
10 N
k
k j k
j
x h
y (1)
⎥ ⎥
⎥ ⎥
⎦
⎤
⎢ ⎢
⎢ ⎢
⎣
⎡
⋅
⎥ ⎥
⎥ ⎥
⎦
⎤
⎢ ⎢
⎢ ⎢
⎣
⎡
=
⎥ ⎥
⎥ ⎥
⎦
⎤
⎢ ⎢
⎢ ⎢
⎣
⎡
−
−
−
−
−
−
−
− 1
1 2
0 3 2 1
2 1 0 1
1 2 1 0
1 1 2
. ...
. . . . .
...
...
.
N N
N N
N N N
N
x
x x
h h
h h
h h
h h
h h
h h
y y y
(2)
Powyższy zapis sprowadza nas do zwykłego rachunku macierzowo – wektorowego. Z racji faktu, że istnieje prosty stosunek pomiędzy cyrkulantem a macierzą Transformaty Fouriera w bazie zespolonych funkcji wykładniczych, bardzo często sploty cykliczne wylicza się za pomocą Przekształcenia Fouriera. Na tym fakcie opiera się twierdzenie o splocie, które jest podstawowym prawem w dziedzinie przetwarzania sygnałów[3].
Poprzez zastosowanie Dyskretnej Transformaty Fouriera operację splotu w dziedzinie czasu możemy zastąpić mnożeniem w dziedzinie częstotliwości.
Proponowana metoda oferuje prostsze podejście do operacji splotu niż to ma miejsce w przypadku stosowanie DFT oraz IDFT. Metoda skupia się na
minimalizacji liczby mnożeń w operacji splotu w dziedzinie czasu. Drogą do realizacji tejże minimalizacji jest zastosowanie macierzy specjalnej zwanej macierzą diadną.
2. MACIERZ DIADNA
Macierz specjalna zwana macierzą diadną [1]
stanowi podstawowy element proponowanej metody obliczania splotu cyklicznego. Najprostszą jej postacią jest macierz o wymiarach 2x2:
⎥ ⎦
⎢ ⎤
⎣
= ⎡ a b
b
D
2a (3)
Możliwe jest tworzenie macierzy o wymiarach będących potęgą dwójki. Macierz diadną wyższych rzędów uzyskuje się poprzez blokowe składanie macierzy rzędu niższego, np. macierz stopnia 2
3tworzymy z macierzy 2
2, a każdą macierz stopnia 2
2– z macierzy rzędu 2
1, czyli o wymiarach 2x2:
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥ ⎥
⎥
⎦
⎤
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢ ⎢
⎢
⎣
⎡
=
⎥ ⎥
⎥ ⎥
⎦
⎤
⎢ ⎢
⎢ ⎢
⎣
⎡
⎥ =
⎦
⎢ ⎤
⎣
= ⎡
a b c d e f g h
b a d c f e h g
c d a b g h e f
d c b a h g f e
e f g h a b c d
f e h g b a d c
g h e f c d a b
h g f e d c b a
A B C D
B A D C
C D A B
D C B A
A B
B D A
2 2 2 2
2 2 2 2
2 2 2 2
2 2 2 2
4 4
4 4 8
(4)
Macierz diadną tworzymy w oparciu o macierz zwaną cyrkulantem. Pierwsze wiersze obu macierzy muszą być identyczne. Pozostałe elementy tworzymy w taki sposób aby powstała macierz miała budowę blokowo - diadną.
Macierz diadną wyższych rzędów należy w celu uproszczenia zapisu i liczenia przekształcić do postaci blokowo – diagonalnej[1]. Zapis w tej postaci dla powyższej macierzy D
8przedstawia (5):
⎥ ⎦
⎢ ⎤
⎣
⎡
⋅ −
⎥ ⎦
⎢ ⎤
⎣
⎡
−
⋅ +
⎥ ⎦
⎢ ⎤
⎣
⎡
⋅ −
= 1 1
1 1 0
0 1
1 1 1 2 1
4 4 4 4
8