1 / 46

Cyfrowe przetwarzanie sygnałów

Cyfrowe przetwarzanie sygnałów. mgr inż. Adam Łutkowski adam.lutkowski@gmail.com p.211. Plan wykładu. Wprowadzenie Sygnał Próbkowanie i kwantyzacja Dyskretna transformata Fourier’a Filtry cyfrowe Implementacja sprzętowa – procesory sygnałowe. Wprowadzenie – zalety i wady DSP.

nikkos
Download Presentation

Cyfrowe przetwarzanie sygnałów

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Cyfrowe przetwarzanie sygnałów mgr inż. Adam Łutkowski adam.lutkowski@gmail.com p.211

  2. Plan wykładu • Wprowadzenie • Sygnał • Próbkowanie i kwantyzacja • Dyskretna transformata Fourier’a • Filtry cyfrowe • Implementacja sprzętowa – procesory sygnałowe

  3. Wprowadzenie – zalety i wady DSP

  4. Wprowadzenie – pełny tor przetwarzania DSP dB dB f f opcjonalne sygnały sterujące DSP LP ADC DAC LP Analogowy sygnał wejściowy Analogowy filtr anty-aliasingowy Cyfrowe przetwarzanie sygnału Przetwornik cyfrowo-analogowy Analogowy filtr rekonstrukcyjny Przetwornik analogowo-cyfrowy

  5. Próbkowanie i kwantyzacja sygnału próbkowanie kwantyzacja Sygnał ciągły Sygnał dyskretny Sygnał cyfrowy xc(nT) 3 2 kwantyzacja 1 0 0 1 2 3 n T próbkowanie (sampling)

  6. Twierdzenie o próbkowaniu Whittakera-Nyquista-Kotielnikova-Shannona: Jeśli sygnał ciągły nie posiada składowych widma o częstotliwości równej i większej niż B, to może on zostać wiernie odtworzony z ciągu jego próbek tworzących sygnał dyskretny, o ile próbki te zostały pobrane w odstępach czasowych nie większych niż 1/(2B). Częstotliwość Nyquista: Maksymalna częstotliwość składowa sygnału która może zostać odtworzona bez zniekształceń po próbkowaniu fN=fs/2

  7. Przykład: próbkowanie dźwięku Zakres słyszalny przez człowieka: 20Hz – 20kHz Typowe częstotliwości próbkowania 44.1 kHz (Audio CD) – daje fN= 22.05 kHz Dlaczego stosuje się też 88.2 kHz lub 192kHz? (zniekształcenia harmoniczne po użyciu filtrów) 7

  8. Aliasing Błędna rejestracja sygnałów o wysokiej częstotliwości jako sygnały o niskiej częstotliwości. Spowodowane jest to zbyt niską częstotliwością próbkowania. Przykłady aliasingu: * sinus 1kHz – 7kHz * próbkowanie 8kHz * Piersi – Bałkanica * próbkowanie 4410kHz * j.w. * Porównanie z oryginałem i filtrem LP 2205 kHz

  9. Kwantyzacja 2Q Q Q Q/2 0 -Q/2 -Q -2Q 0 100 200 300 400 500 600 700

  10. Kwantyzacja - głębia bitowa Ilość liczb do zapisania na n bitach = 2n: 1 bit = 2 liczby (maks 1) 2 bity = 4 liczby (maks 11=3) 3 bity = 8 liczb (maks 111 = 7) 4 bity = 16 liczb (maks 111 = 15) itd. Każdy dodatkowy bit to 6dB zakresu sygnału. Przejście między głębią 8-bitową a 4-bitową Przykład dla głębi 16,8,4 i 2 bitowej (2s na każdą głębię)

  11. Głębia bitowa Zakres słyszalnych dźwięków 0dB do 120dB 120/6  20 bitów Główne standardy kwantyzacji to: 16 bitów (96dB) i 24 bity (144dB) 16 bitów wystarcza bo wykorzystujemy Dithering 11

  12. Dithering Randomizacja błędu kwantyzacyjnego. Eliminuje harmoniczne zakłócenia w zamian wprowadzając równomierny szum. Np. 2.7 – możemy: przyciąć (zawsze 2), zaokrąglić (zawsze 3), ditherować (losowo 30% przyciąć i 70% zaokrąglić w górę)

  13. Pytania z kwantyzacji i aliasingu • Czemu służy filtr dolnoprzepustowy na wejściu przetwornika ADC? • Standard audio CD dlaczego 16bitów i 44100Hz, • Dlaczego w telefonii używa się próbkowania 8000Hz? • Kiedy zjawisko aliasingu najbardziej słychać w dźwięku?

  14. Joseph Fourier(1768-1830) Dyskretna transformata Fourier’a Genialny fizyk i matematyk. Twórca Szeregu Fouriera i Analizy Fourierowskiej.

  15. Sin i cos jako wektory bazowe Sygnały okresowe (lub wycinki dowolnego sygnału) spełniające odpowiednie warunki (np.. ciągłości i ograniczoności) możemy przedstawić jako kombinację sinusów i cosinusów.

  16. Szereg Fouriera gdzie: tzw. pulsacja podstawowa Sposób wyliczenia współczynników zaproponowany przez Fouriera (iloczyny skalarne funkcji bazowychi funkcji rozwijanej w szereg) 16

  17. Dyskretne Przekształcenie Fouriera (DFT) Sygnał okresowy x(t) jest próbkowany N razy w czasie jego okresu T , tj. T=Nt . Otrzymywany jest sygnał dyskretny x(n) o okresie N: x(n) x(t) t T t 0 1 2 N-1 Nt

  18. Dyskretne Przekształcenie Fouriera (DFT) Najmniejsza częstotliwość szeregu Fouriera (tzw. częstotliwość podstawowa) wynosi: Częstotliwości kolejnych k-tych harmonicznych analizy: x(t) fo=1/T=1/(Nt) T t N-1 0 1 2 2fo Nt 18

  19. Dyskretne Przekształcenie Fouriera (DFT) DFT proste: indeks próbki w czasie k = 0, 1, 2, …, N-1 DFT odwrotne: numer harmonicznej n = 0, 1, 2, …, N-1

  20. DFT przykład N=4 ? Wynik DFT należy dodatkowo podzielić przez liczbę próbek aby otrzymać znormalizowaną amplitudę danej harmonicznej.

  21. DFT przykład N=4 Wynik DFT należy dodatkowo podzielić przez liczbę próbek aby otrzymać znormalizowaną amplitudę danej harmonicznej.

  22. Filtry cyfrowe – SOI i NOI Filtry dzielimy na: filtry o skończonejodpowiedzi impulsowej (SOI/FIR) tzw. filtry nierekursywne filtry o nieskończonejodpowiedzi impulsowej (NOI/IIR) tzw. filtry rekursywne 22

  23. Dlaczego projektować filtr? Nie wystarczy zrobić DFT sygnału, przemnożyć widmo i zrobić odwrotne DFT?

  24. Dlaczego projektować filtr? Nie wystarczy zrobić DFT sygnału, przemnożyć widmo i zrobić odwrotne DFT? * Sygnał dźwięku próbkowany 44kHz ; * 1s sygnału to 44000 próbek ; * Pełne widmo (1Hz do 44kHz) to 44000 prążków do przemnożenia i policzenia odwrotnego DFT (dodatkowo 1s opóźnienia)

  25. Równanie różnicowe filtru Jeżeli wszystkie współczynniki a(n) są zerowe to równanie różnicowe opisuje filtr cyfrowy SOI, w przeciwnym przypadku filtr NOI 25

  26. h(n) – odpowiedź impulsowa x(n) y(n) y(n) = x(n)  h(n) Projektowanie filtru SOI Dla filtru SOI współczynniki filtru = jego odpowiedź impulsowa!

  27. Metody projektowania filtrów SOI • metoda okien czasowych – skracamy nieskończoną odpowiedź impulsową filtru poprzez splot ze skończonym oknem • metody aproksymacji – próbkowanie widma z niższą rozdzielczością, nadając różne wagi prążkom, w celu przybliżenia kształtu widma (często iteracyjnie)

  28. Projektowanie filtrów SOI metodą okien czasowych A() 0  Chcemy zaprojektować idealnyfiltr dolnoprzepustowy. Otrzymujemy nierealizowalną, nieskończoną w czasie charakterystykę odpowiedzi impulsowej: Należy ograniczyć czas trwania tej odpowiedzi. 28

  29. Projektowanie filtrów SOI metodą okien czasowych Zastosowanie okna czasowego ograniczającego czas trwania tej odpowiedzi pozwala uzyskać filtr realizowalny fizycznie. Przykład: dla filtru LP o f0 = 0.4*fmax i odpowiedzi impulsowej ograniczonej do 51 próbek:b=0.4*sinc(0.4*(-25:25)); uzyskuje sięcharakterystykę: [H,f] = freqz(b,1,512,2); plot(f,abs(H)),grid; 29

  30. Projektowanie filtrów SOI metodą okien czasowych 1.4 1.2 1 0.8 0.6 0.4 0.2 0 0 0.2 0.4 0.6 0.8 1 tzw. efekt Gibbsa~9% amplitudy impulsu f Efekt Gibbsa – charakterystyczny wygląd aproksymacji funkcji szeregiem Fouriera w punktach nieciągłości. Można go zredukować stosując zamiast okna prostokątnego wycinającego odpowiedź impulsową, okno o kształcie podobnym do funkcji Gaussa, np. okno Hamminga 30

  31. Projektowanie filtrów SOI metodą okien czasowych Okno Hamminga %MATLAB b=b.*hamming(51)’;[H,f]=freqz(b,1,512,2);plot(f,abs(H)),grid f  rząd filtru  31

  32. Projektowanie filtrów SOI metodą okien czasowych Minimalizacja efektu Gibbsa dzięki zastosowaniu okna Hamminga f W programie Matlab opisaną procedurę projektowania filtrów implementuje instrukcja syntezy filtru FIR ‘fir1’ 32

  33. Projektowanie filtrów NOI 33

  34. Projektowanie filtrów NOI Metoda bezpośrednia - aproksymacyjna: % MATLAB% [b,a]=yulewalk(n,f,m)% n – rząd filtru% f – próbki char. częstotl. z zakresu <0,1>% m – dyskretne częstotl. z zakresu <0,1> f = [0 0.6 0.6 1]; m = [1 1 0 0]; [b,a] = yulewalk(8,f,m); [h,w] = freqz(b,a,128); plot(f,m,w/pi,abs(h),'--') Nieliniowa faza! Zobacz też ‘zplane(b,a)’ 34

  35. Projektowanie filtrów NOI Metoda niezmienności odpowiedzi impulsowej: Wyznacz odpowiedzi impulsowe tych filtrów % MATLAB%dolnoprzepustowy Butterwotha[b,a]=butter(5,0.4) %pasmowoprzepustowy Czebyszewa typu I[b,a]=cheby1(4,1,[.4 .7]) %górnoprzepustowy Czebyszewa typu II[b,a]=cheby2(6,60,.8,’high’) %pasmowozaporowy eliptyczny[b,a] = ellip(3,1,60,[.4 .7],’stop’); 35

  36. Porównanie filtrów SOI i NOI NOI SOI • z definicji stabilne • łatwe projektowanie • łatwo zapewnić liniową fazę • uzyskanie stromej charakterystyki wymaga dużego rzędu filtru • skończoną dokładność reprezentacji współczynników filtru nie jest dokuczliwa • mogą być niestabilne • bardziej złożone projektowanie • nieliniowa faza • możliwość uzyskiwania bardzo stromej charakterystyki przy niskim rzędzie filtru • problemy implementacyjnez uwagi na skończoną dokładność reprezentacji współczynników filtru 36

  37. Trzy główne typy korelacji: Splot Korelacja wzajemna Autokorelacja wikipedia.org

  38. Korelacja wzajemna • określanie stopnia podobieństwa sygnałów • wyszukanie znanej sekwencji w sygnale • rozpoznawanie wzorców • określanie kierunku źródła dźwięku • miara jakości akustyki sal koncertowych

  39. Autokorelacja • wykrycie okresowości w sygnale • odszumianie sygnału • pomiar wysokości tonu podstawowego • detekcja tempa/rytmu piosenki

  40. Układy cyfrowe do DSP

  41. Implementacja sprzętowa - procesory sygnałowe Jak implementować sprzętowo DSP? -używając procesorów sygnałowych Czemu procesory sygnałowe? -specyficzna architektura rdzenia Po co implementować? -mniejsze zużycie energii, niższa cena

  42. Procesor sygnałowy • Przystosowany do potokowego przetwarzania danych: • mnogość szeregowych interfejsów komunikacyjnych, • zwielokrotnione bloki ALU rdzenia dla zrównoleglenia, przetwarzania • rozbudowany blok MAC (Multiply And Accumulate) • blok do operacji na liczbach zmiennoprzecinkowych • wysoka częstotliwość taktowania

  43. Procesor sygnałowy - rdzeń • Rdzeń procesora TMS320C6713: • 2 bloki mogące wykonywać te same operacje, • Każdy blok posiada 4 różne jednostki: • D – operacje transferu i adresowania danych; • M – układ MAC • S – operacje arytmetyczno-logiczne • L – operacje logiczne w tym przesunięcia bitowe. • możliwość wykonania do 8 równoległych mnożeń z akumulacją. • Maksymalna częstotliwość - 225MHz

  44. Procesor sygnałowy – pozostałe peryferia EMIF – kontroler obsługi zewnętrznych pamięci McASP – wielokanałowy nadajnik/odbiornik do przesyłu danych w standardzie audio. McBSP – buforowany wielokanałowy nadajnik/odbionik. Może obsługiwać wiele różnych magistrali szeregowych. I2C – kontroler magistrali zgodnej z I2C. Timer – 2 licznik 32-bitowe GPIO – 16 wyprowadzeń wejścia/wyjścia ogólnego użytku HPI – obsługa równoległego interfejsu Host - Port

  45. Pytania? ?

  46. Dziękuję za uwagę

More Related