Współczesne techniki informacyjne są multimedialne, można oczekiwać, że po cywilizacji pisma (i druku) nastąpi etap cywilizacji obrazowej czyli coraz większa jest potrzeba gromadzenia i przysyłania wielkiej liczby obrazów!
Potrzebne są zatem techniki umożliwiające skuteczną kompresję obrazów (w ogólności wszystkich gromadzonych i przesyłanych danych). Jednym z innowacyjnych sposobów transformacji obrazu, będącym obecnie przedmiotem zainteresowania jest transformacja falkowa
Transformacja falkowa jest już stosowana: a) jako integralna część standardu kompresji obrazu JPEG 2000, b) w kompresji oraz przetwarzaniu wyników badań medycznych, takich jak rezonans magnetyczny, tomograf komputerowy, badanie RTG. Ze względu na stosunkowo dużą złożoność algorytmiczną istotne stają się sposoby jej efektywnej realizacji za pomocą sprzętu.
..i tu z pomocą przychodzą nowe technologie i nowe metody syntezy logicznej Jak je wykorzystać do projektowania układów cyfrowego przetwarzania sygnałów i obrazu?
Łącznikiem tych problemów jest operacja MAC Data in Register Multiply and Accumulate: Loop algorithm MAC unit Wiele operacji mnożenia i dodawania Data out suma iloczynów: y N = c, x = = n 1 0 c[ n] x[ n] = c[0] x[0] + c[1] x[1] +... + c[ N 1] x[ N 1] Ustalony współczynnik n-ta próbka
Operacja Multiply and Accumulate Data in Register Mnożenie z akumulacją Loop algorithm MAC unit Filtry cyfrowe Filtry falkowe Data out Transformaty: DFT, FFT
Realizacja bezpośrednia wygodna dla procesorów sygnałowych Rejestr przesuwający Układ mnożący Akumulator X[N-1] X[1] X[0] C[N-1] C[1] C[0] + R Ogólnego przeznaczenia! nie jest odpowiednia dla struktur FPGA
Arytmetyka rozproszona y N = 1 n 0 c[ n] x[ n] = B 1 b= 0 2 b N 1 n= 0 f ( c[ n], x b [ n]) Rejestr przesuwający Logika DA Akumulator X B-1 [0] X 1 [0] X 0 [0] X B-1 [1] X 1 [1] X 0 [1] X B-1 [N-1] X 1 [N-1] X 0 [N-1] LUT + R Układ kombinacyjny typu LUT Ale układy DA są duże Do syntezy DA stosuje się dekompozycję!!!
Wyniki eksperymentów dla układów DA filtrów cyfrowych Komórki LUT Tablica DA FIR DA bez wejścia/wyjścia DA dekompozycji z dekompozycją F4 7/8 12 9 F5 11/11 45 32 F6 11/11 66 45 F7 11/12 48 35 F8 15/12 136 64 F9 19/16 279 159 586 344 % 100 58 Ponad 40% redukcja zasobów sprzętowych
Implementacja DA co dalej Jaki jest wpływ logiki DA na implementację całego filtru?
Implementacja całej struktury filtru FIR F4 F5 F6 F7 F8 F9 Struktura sumatorów Bez dekompozycji Z dekompozycją LCs F max [MHz] LCs F max [MHz] pipel. 288 51.28 264 53.76 comb. 224 25.25 204 26.60 pipel. 642 47.62 530 52.36 comb. 527 21.05 444 22.03 pipel. 808 38.61 632 41.49 comb. 710 19.27 551 19.61 pipel. 680 47.62 560 47.85 comb. 576 20.62 476 20.96 pipel. 1404 42.74 834 48.31 comb. 1314 22.73 746 22.73 pipel 2624 31.25 1672 38.61 comb. 2533 14.47 1564 20.92 12330 8477 % 100 68
Najnowsze struktury programowalne FPGA (Field Programmable Gate Array) Wbudowane bloki pamięci Elementy logiczne Różnorodność konfiguracji wbudowanych pamięci znacznie utrudnia proces syntezy
Interaktywny tryb pracy dekompozycji zrównoważonej X X X 3 X 4 X 2 X 1 G H1 H2 H Y Dekompozycja szeregowa Y 1 Y 2 Dekompozycja równolegr wnoległa Wygodny do syntezy układów cyfrowych w strukturach FPGA z wbudowanymi pamięciami
Synteza filtrów falkowych w strukturach FPGA z pamięciami Filtry Daubechies 9/7 Data in Register MAC unit Data out Filtry falkowe są stosowane w standardzie kompresji obrazów JPEG2000
Dekompozycja układu DA filtru falkowego typu ahp (7,16) EMB (7,15) (6,1) (7,8) (4,1) (3,1) (7,7) EMB FPGA (4,2) (6,8) ROM (7,3) (7,4) ROM (4,3) (6,3) (5,2) (6,1) 2 M512, 14LC (4,2) (4,2) (4,2) (4,1)
Dekompozycja układu DA filtru falkowego typu ahp (7,16) (6,5)ROM (6,16) (6,8)ROM (6,8)ROM 3 M512
Porównanie z systemem Quartus Typ filtru # / LC FF ROM fmax ahp Quartus 7 204 149 4xM512 159.44 ahp dec 7 208 153 3xM512 160.75 alp Quartus 9 240 182 2xM4K 129.75 alp dec 9 260 183 1xM4K 136.20 slp Quartus 7 208 150 5xM512 150.72 slp dec 7 222 151 2xM512 160.41 shp Quartus 9 236 181 7xM512, 1xM4K 133.51 shp dec 9 246 181 1xM4K 139.66
Porównanie całkowitej powierzchni EMB FPGA LC ROM Powierzchnia 1 LC = Powierzchnia 3 bitów w pamięci Brian Dipert, Counting on Gate Counts? Don't count on it, EDN Magazine, August 3, 1998
Porównanie realizacji filtrów falkowych ze względu na powierzchnię FIR Układ DA We/Wy Bez dekompozycji Logic Cells Z dekompozycją alp 9/16 8912 4876 ahp 7/16 2660 2160 slp 7/16 3184 1690 shp 9/16 8388 4834 23144 13560 % 100 58 42% redukcja pow. względem systemu Quartus
Inne zastosowania metod syntezy logicznej dotyczą realizacji transformat DFT, FFT Nadajnik OFDM Standardu WiMAX Źródło: Pawłowski, M. Matusz, J. Woźniak: WiMAX nowy standard szerokopasmowych sieci bezprzewodowych (1) i (2). PTiWT, z. 7 i 11, 2005.
Realizacja 16-punktowej transformaty DFT operującej na 12-bitowych próbkach 1. %*, 47 92% 70, a., 47 89:., 0/ 3 0 42 7 4. 30 2. %*$!, 47 92% 70,,., 47 89:., -:/4,3024/: $! 3. %* 70,,., 47 89:.a 43.05.,7 9209 74 5748 430, dla której mo na zastosowa zaawansowane procedury syntezy logicznej
Transformata Fouriera realizowana w strukturze arytmetyki rozproszonej x[0] Jakość tej realizacji w ogromnej mierze zależy od jakości implementacji bloków DA x[7] x7[7] x7[7] x6[7] x6[7] x5[7] x5[7] x4[7] x4[7] x3[7] x3[7] x2[7] x2[7] x1[7] x1[7] x0[7] x0[7] DA DA DA DA DA DA DA DA + + + + + + +
Wyniki eksperymentów 47 89,3 0857 9: 9: ( $!( 0,7 ( P7 05:894 4 7 05:894 4-98( FFT_LC 4723 (14%) 43,51 522,12 FFT_DSP 1554 (5%) 70 (100%) 48,93 587,16 DFT_DA 7222 (22%) 74,36 892,32 Uzyskanie największej przepustowości jest możliwe wyłącznie przy zastosowaniu zaawansowanych procedur syntezy logicznej
Podsumowanie 0 34 4. 083. 90. 34 4 2 740 0 9743. 3. 3 02, 34 4. 0830 90 0 31472,9 %0 0, 84 0 74 / 0. 4. 90 0,. 174, %0 0143, 42 7 4, &8 : 8 074 45,824 0 8 - /489 5/4 3907309: $ 8902 8-0 4/489 5:,-4303. 0 4 90. 3 $ 425708,4-7, 425708,8 3, 24 2: #4 54 3,,3 024 4-7, 7 594 7,1, -4303. /489 57,/ 4 8,90 9,73 24