Sunday 26 November 2017

Filtr Średniometryczny O Stałym Punkcie


Przeprowadzka Średnia. Ten przykład uczy, jak obliczyć średnią ruchową serii czasowej w programie Excel Średnia średnica ruchoma służy do wygładzania szczytów i dolin niezgodności w celu łatwego rozpoznania trendów.1 Po pierwsze, spójrzmy na nasz szereg czasowy.2 Na karcie Dane kliknij pozycję Analiza danych. Należy nacisnąć przycisk Analiza danych Kliknij tutaj, aby załadować dodatek Analysis ToolPak.3 Wybierz Średnia ruchoma i kliknij przycisk OK.4 Kliknij pole Zakres wejściowy i wybierz zakres B2 M2. 5 Kliknij w polu Interwał i wpisz 6.6 Kliknij w polu Zakres wyjściowy i wybierz komórkę B3.8 Wykres wykresu tych wartości. Instrukcja, ponieważ ustawiamy przedział na 6, średnia ruchoma jest średnią z poprzednich 5 punktów danych i bieżący punkt danych W rezultacie szczyty i doliny są wygładzone Wykres pokazuje tendencję wzrostową Excel nie może obliczyć średniej ruchomej dla pierwszych 5 punktów danych, ponieważ nie ma wystarczająco dużo poprzednich punktów danych.9 Powtórz kroki od 2 do 8 dla przedziału 2 i przedziału 4. Konkluzja La rger odstępu, im więcej szczytów i dolin są wygładzane Im krótszy odstęp czasu, tym bardziej zbliżają się średnie ruchome do rzeczywistych punktów danych. Naukowiec i inżynier Inżynier ds. przetwarzania sygnałów cyfrowych Steven W Smith, Ph. D. Rozdział 28 Procesory sygnałów cyfrowych. Niełączone względem punktu zmiennoprzecinkowego Przetwarzanie sygnałów cyfrowych można podzielić na dwie kategorie, punkt stały i punkt zmiennoprzecinkowy Odwołuje się do formatu używanego do przechowywania i manipulowania liczbami wewnątrz urządzeń Punkty stałego punktu DSP zazwyczaj reprezentują każdą liczbę z co najmniej 16 bitów, chociaż można używać innej długości Na przykład firma Motorola produkuje rodzinę stałych punktów DSP, które korzystają z 24 bitów Istnieją cztery wspólne sposoby, że te 2 16 65536 możliwe wzorce bitów mogą reprezentować liczbę W niezaznaczonej liczby całkowitej zapisany numer może zająć dowolna liczba całkowita od 0 do 65,535 Podobnie, liczba całkowita podpisana używa dwóch s dopełnienia, aby zakres obejmował liczby ujemne, od -32,768 do 32,767 Z notatką ułamkową jonowy, poziomy 65,536 są rozproszone równomiernie pomiędzy 0 a 1 Wreszcie, podpisany format frakcji pozwala na ujemne liczby, równomiernie rozmieszczone między -1 i 1. W porównaniu z liczbami zmiennopozycyjnymi DSP zwykle wykorzystuje minimum 32 bity do zapisania każdej wartości. wiele więcej wzorów bitowych niż dla stałego punktu, 2 32 4,294,967,296 jest dokładną Najważniejszą cechą zapisu zmiennoprzecinkowego jest to, że reprezentowane liczby nie są rozmieszczone w jednolitym odstępie W najbardziej popularnym formacie ANSI IEEE Std 754-1985 największe i najmniejsze liczby to 3 4 10 38 i 1 210 -38 Przedstawione wartości są nierówno rozstawione między tymi dwoma skrajnymi tak, że różnica między dwiema liczbami jest około dziesięciometrowa mniejsza niż wartość liczb Jest to ważne, ponieważ powoduje duże luki pomiędzy duże liczby, ale małe odstępy między małymi liczbami Notacja zmiennoprzecinkowa jest omówiona bardziej szczegółowo w rozdziale 4. Wszystkie monitory DSP zmiennoprzecinkowe mogą również obsługiwać numery stacjonarne, konieczność implementacji counte rs, pętli i sygnałów pochodzących z ADC i przejścia do DAC Nie oznacza to jednak, że matematyka punktów stałych zostanie przeprowadzona tak szybko, jak operacje zmiennoprzecinkowe zależy od architektury wewnętrznej Na przykład, układy DSP firmy SHARC są zoptymalizowane zarówno w przypadku operacji typu zmiennoprzecentowego, jak i stałego i wykonuje je z taką samą wydajnością Z tego powodu urządzenia SHARC są często określane jako 32-bitowe DSP, a nie tylko Floating Point. Rysunek 28-6 ilustruje podstawowe kompromisy pomiędzy stałymi i zmiennoprzecinkowe DSP W rozdziale 3 podkreśliliśmy, że arytmetyka punktów stałych jest dużo szybsza niż zmiennoprzecinkowe w komputerach o ogólnym zastosowaniu. Jednak w przypadku urządzeń DSP prędkość jest mniej więcej taka sama, co powoduje, że sprzęt jest wysoce zoptymalizowany pod kątem operacji matematycznych. zmiennoprzecinkowy DSP jest bardziej skomplikowany niż dla stałego urządzenia punktu Wszystkie rejestry i magistrale danych muszą mieć szerokość 32 bitów zamiast 16 mnożników, a ALU musi być w stanie szybko perforować rm arytmetyka zmiennoprzecinkowa, zestaw instrukcji musi być większy, dzięki czemu mogą obsługiwać zarówno numery zmiennoprzepustowe, jak i stałe, a więc na punkcie zmiennoprzecinkowym 32 bit ma lepszą precyzję i wyższy zakres dynamiczny niż punkt stały 16 bit Ponadto programy często zmieniają się mają krótszy cykl rozwojowy, ponieważ programista nie musi zwykle martwić się takimi kwestiami, jak przepełnienie, niedociążenie i okrągły błąd. Z drugiej strony punkty stałej DSP są tradycyjnie tańsze niż urządzenia typu floating point. Nic się nie zmienia szybciej cena elektroniki jaką znajdziesz w książce będzie nieaktualna przed wydrukowaniem Mimo to koszt jest kluczowym czynnikiem zrozumienia, w jaki sposób DSP się rozwijają i musimy dać ogólny pomysł. Gdy ta książka została ukończona 1999, punkty sprzedaży DSP o stałym punkcie sprzedaży w przedziale od 5 do 100, podczas gdy urządzenia typu pływającego znajdowały się w przedziale od 10 do 300 Ta różnica kosztów może być postrzegana jako miara względnej złożoności między devi ces Jeśli chcesz dowiedzieć się więcej na temat dzisiejszych cen. Teraz zwróćmy uwagę na wydajność, co może 32-bitowy system zmiennoprzecinkowy, 16-bitowy punkt stały może odpowiedzieć na pytanie to stosunek sygnału do szumu Załóżmy, że przechowujemy numer w 32-bitowym formacie zmiennoprzecinkowym Jak wspomniano wcześniej, różnica między tym numerem a sąsiednim sąsiadem wynosi około dziesięć milionów wartości numeru Aby zapisać numer, to musi być zaokrąglony w górę lub w dół o maksymalnie połowę wielkości szczeliny Innymi słowy, za każdym razem, gdy zapisujemy numer w notacji zmiennoprzecinkowej, dodajemy sygnał do szumu. To samo dzieje się, gdy liczba jest przechowywana jako 16 - bit wartości punktu stałego, z wyjątkiem tego, że dodany hałas jest znacznie gorszy To dlatego, że luki między sąsiadującymi liczbami są znacznie większe Przykładowo, załóżmy, że przechowujemy numer 10.000 jako ze znakowaną liczbą całkowitą, która działa od -32,768 do 32,767. Różnica między numerami to jedna dziesięć tysięcznych wartości liczby jesteśmy stori ng Jeśli chcemy zapisać numer 1000, różnica między cyframi to tylko jedna tysięczna wartość. Niezostanie w sygnałach jest zwykle reprezentowane przez jego odchylenie standardowe. Zostało to omówione szczegółowo w Rozdziale 2 W tym miejscu ważny jest fakt, że odchylenie standardowe tego hałasu kwantyzacji wynosi około jednej trzeciej wielkości odstępu Oznacza to, że stosunek sygnału do szumu w celu zapisania numeru zmiennoprzecinkowego wynosi około 30 milionów do jednego, podczas gdy dla stałej liczby punktów jest to tylko około dziesięć - thousand to jeden Innymi słowy, zmiennoprzecinkowy ma około 30 000 razy mniej hałasu kwantyzacji niż punkt stały. Spowoduje to ważny sposób, że DSP różnią się od tradycyjnych mikroprocesorów. Załóżmy, że implementujemy filtr FIR w stałym punkcie. W tym celu pętlę każdy współczynnik, pomnożyć go przez odpowiednią próbkę z sygnału wejściowego i dodać produkt do akumulatora Oto problem W tradycyjnych mikroprocesorach ten akumulator to kolejna 16-bitowa zmienna stała Aby uniknąć przepełnienia, musimy skalować dodawane wartości i odpowiednio dodać hałas kwantyzacji na każdym kroku W najgorszym przypadku ten hałas kwantyzacji po prostu doda, znacznie obniżając stosunek sygnału do szumu systemu Na przykład w 500 filtrów FIR współczynnik hałasu na każdej próbce wyjściowej może być 500 razy hałasu na każdej próbce wejściowej Stosunek sygnału do szumu dziesięć tysięcy do jednego spadł do upiornego dwudziestu jeden chociaż jest to skrajny przypadek, to ilustruje główny punkt, w którym wiele operacji jest przeprowadzanych na każdej próbce, jest złe, bardzo złe Zobacz rozdział 3, aby uzyskać więcej szczegółów. DP obsługiwać ten problem za pomocą rozszerzonego akumulatora precyzyjnego Jest to specjalny rejestr, który ma 2-3 razy jako wiele bitów jako innych lokalizacji pamięci Na przykład, w 16-bitowym DSP może mieć 32 do 40 bitów, podczas gdy w urządzeniach SHARC DSP zawiera 80 bitów dla stałego używania tego zakresu Ten rozszerzony zakres praktycznie eliminuje hałas okrągły, podczas gdy akumulacja jest w postępy o przy czym naliczany jest okrągły błąd, gdy akumulator jest skalowany i przechowywany w pamięci 16 bitowej Ta strategia działa bardzo dobrze, chociaż ogranicza to, w jaki sposób należy wykonać pewne algorytmy W porównaniu z liczbą zmiennoprzepustową ma taki niski poziom hałasu kwantyzacji, że te techniki są Zazwyczaj nie jest to konieczne. Poza mniejszym hałasem kwantyzacji, systemy punktów zmiennoprzecinkowych są również łatwiejsze w opracowywaniu algorytmów dla większości technik DSP opartych na wielokrotnych powtórzeniach i uzupełnieniach W stałym punkcie należy rozważyć możliwość przepełnienia lub niedotknięcia po każdej operacji Programista musi ciągle rozumieć amplitudę liczb, jak gromadzą się błędy kwantyzacyjne i jakie skalowanie ma się odbyć W porównaniu z tymi kwestiami nie pojawiają się w zmiennym punkcie, liczby zajmują się sobą, z wyjątkiem rzadkich przypadków. lepiej zrozumiesz ten problem, Rys. 28-7 przedstawia tabelę z podręcznika użytkownika SHARC Opisuje sposób, w jaki multipl może być przeprowadzona zarówno dla formatów stałych, jak i zmiennoprzecinkowych Najpierw należy sprawdzić, jak mogą być mnożone liczby zmiennoprzecinkowe, tylko jeden jest taki, że Fn Fx Fy, gdzie Fn, Fx i Fy jest jednym z 16 rejestrów danych Nie jest to prostsze. W porównaniu z wszystkimi możliwymi poleceniami do mnożenia punktów stałych Są to liczne opcje niezbędne do skutecznego radzenia sobie z problemami zaokrąglania, skalowania i formatowania. Na rysunkach 28-7, Rn, Rx, a Ry odnoszą się do dowolnego z 16 rejestrów danych, a MRF i MRB to 80-bitowe akumulatory pionowe linie wskazują opcje Na przykład lewy górny wpis w tej tabeli oznacza, że ​​wszystkie następujące polecenia są prawidłowymi poleceniami Rn Rx Ry, MRF Rx Ry , a MRB Rx Ry Innymi słowy, wartość każdego z dwóch rejestrów może być mnożona i umieszczona w innym rejestrze lub w jednym z rozszerzonych akumulatorów precyzyjnych. Ta tabela pokazuje również, że liczby mogą być podpisane lub niepodpisane S lub U, a także może być frakcyjny lub całkowity F lub I Opcja RND i SAT ns to sposoby kontrolowania zaokrąglania i rejestrowania przepełnienia. Istnieją inne szczegóły i opcje w tabeli, ale nie są ważne dla naszej obecnej dyskusji Ważnym założeniem jest to, że programista punktów stałych musi zrozumieć dziesiątki sposobów wykonywania bardzo podstawowych zadań mnożenia W przeciwieństwie do tego, że programista zmiennoprzecinkowy może poświęcić swój czas skupiając się na algorytmie. Pomyśl o tych kompromisach między punktem stałym a zmiennoprzecinkowym, w jaki sposób wybrać, który z nich należy użyć Oto kilka rzeczy do rozważenia Najpierw, spójrz, ile bitów jest używanych ADC i DAC W wielu aplikacjach 12-14 bitów na próbkę stanowi zwrotnica dla stałego i zmiennoprzecinkowego sygnału. Na przykład, telewizory i inne sygnały wideo zwykle wykorzystują 8-bitowe ADC i DAC, a dokładność punktu stałego jest do zaakceptowania. profesjonalne aplikacje audio mogą pobierać próbki z maksymalnie 20 lub 24 bitów, a na pewno wymagają pływającego punktu w celu przechwytywania dużego zakresu dynamicznego. Kolejną rzeczą, na którą warto spojrzeć, jest komplement xity algorytmu, który zostanie uruchomiony Jeśli jest to stosunkowo proste, zastanów się, czy jest to bardziej skomplikowane, pomyśl, że zmiennoprzecinkowe Na przykład filtrowanie FIR i inne operacje w domenie czasu wymaga tylko kilkudziesięciu linii kodu, co czyni je odpowiednimi dla punktu stałego W przeciwieństwie do algorytmów w dziedzinie częstotliwości, takich jak analiza spektralna i splot FFT, są bardzo szczegółowe i mogą być znacznie trudniejsze do zaprogramowania Podczas gdy mogą one być zapisywane w stałym punkcie, czas rozwoju będzie znacznie zmniejszony, jeśli używany jest zmiennoprzecinkowy Uważaj na pieniądze, jak ważny jest koszt produktu i jak ważne jest koszty rozwoju Jeśli wybierzesz punkt stały, koszt produktu zostanie obniżony, ale koszt rozwoju będzie prawdopodobnie wyższy ze względu na tym trudniejsze algorytmy W odwrotnym tempie, zmiennoprzecinkowe zwykle skutkują szybszym i tańszym cyklem rozwojowym, ale droższym produktem końcowym. Ilustracja 28-8 przedstawia niektóre z głównych trendów DSP Rysunek a ilustruje wpływ, jaki procesory sygnałów cyfrowych miały na rynku wbudowanym Są to aplikacje, które używają mikroprocesora do bezpośredniego działania i sterowania większym systemem, takim jak telefon komórkowy, kuchenka mikrofalowa lub panel wyświetlacza samochodowego. Mikrokontroler nazw jest często używanych do odwoływania się do tych urządzeń, aby odróżnić je od mikroprocesorów używanych w komputerach osobistych Jak pokazano na rysunku, około 38 wbudowanych projektantów zaczęło już korzystać z układów DSP, a kolejne 49 rozważa przełącznik. Duża przepustowość i moc obliczeniowa DSP często czyni je idealnym wyborem dla osadzonych konstrukcji. Jak pokazano na rysunku b, o dwa razy więcej inżynierów obecnie stosuje się stały punkt, ponieważ wykorzystuje się punkty zmiennoprzecinkowe. Jednak to zależy w dużym stopniu od aplikacji. Stały punkt jest bardziej popularny w konkurencyjnych produktach konsumenckich, w których koszt Elektronika musi być bardzo niska Dobrym przykładem jest telefon komórkowy Kiedy jesteś w konkurencji sprzedawać miliony swojego produktu, a różnica w kosztach zaledwie kilku dolarów może być różnicą między sukcesem a porażką. Dla porównania, zmiennoprzecinkowy jest bardziej powszechny, gdy wymagana jest większa wydajność, a koszt nie jest ważny For. instance, przypuśćmy, że projektujesz medyczny system obrazowania, taki skaner tomografii komputerowej Tylko kilkaset model będzie kiedykolwiek sprzedawany, po cenie kilkuset tysięcy dolarów każda Dla tej aplikacji koszt DSP jest nieistotny, ale wydajność jest krytyczna Na przekór większej liczby stałych punktów DSP, rynek zmiennoprzecinkowy jest najszybciej rosnącym segmentem Jak pokazano na rysunku c, ponad połowa inżynierów korzystających z 16-bitowych urządzeń planuje migrację do miejsca zmiennego w pewnym momencie w najbliższej przyszłości. Przed opuszczeniem tego tempa należy podkreślić, że zmiennoprzecinkowe i stałe punkty zwykle odpowiednio 32 bitów i 16 bitów, ale nie zawsze Na przykład rodzina SHARC może reprezentować liczby w 32-bitowym punkcie stałym, tryb, który jest powszechny w cyfrowych aplikacjach audio To powoduje, że poziomy kwantyzacji 2 32 są rozmieszczone równomiernie w stosunkowo niewielkim zakresie, np. od -1 do 1. W porównaniu do notacji zmiennoprzecinkowej poziomy kwantyzacji 2 32 są logarytmicznie nad dużym zakresem, typowo 3 4 10 38 Daje to 32-bitową dokładną dokładność, co oznacza, że ​​błąd kwantyzacji na jakiejkolwiek próbce będzie mniejszy Jednak 32-bitowy zmiennoprzecinkowy ma wyższy zakres dynamiczny, co oznacza większą różnicę między największą liczbą a liczbą najmniejsza liczba, którą można przedstawić. Najważniejsza jest pozycja etykiety na wykresie, która określa, gdzie ma zastosowanie format. Na przykład można obejrzeć etykietę ProductFormat, która zawsze podchodzi do współczynnika mnożnikowego w przepływie sygnału. Etykieta wskazuje, że współczynniki pozostaw element mnożący o długości słowa i długości frakcji związanej z operacjami produktu, które zawierają współczynniki. Przeglądając tabelę, widzisz e ProductFormat odnosi się do właściwości ProductFracLength ProductWordLength i ProductMode, które w pełni definiują format współczynników po pomnożeniu lub operacji produktu. W tej tabeli można zobaczyć właściwości związane z minimalną fazą, przenosić średnią implementację obiektów lustrzanych dfilt. Note Tabela zawiera listę wszystkich właściwości, które może mieć filtr Wiele właściwości jest dynamicznych, co oznacza, że ​​istnieją tylko w odpowiedzi na ustawienia innych właściwości Nie widzisz wszystkich wymienionych właściwości cały czas Aby wyświetlić wszystkie właściwości filtru w dowolnym momencie, use. where hd jest filtrem. Aby uzyskać więcej informacji na temat właściwości tego filtra lub dowolnego obiektu dfilt, patrz Właściwości filtru stałego. Ustawia tryb stosowany do reagowania na warunki przelewu w arytmetyce punktu stałego. Wybierz spośród limitów nasycenia wyjście do największej dodatniej lub ujemnej wartości reprezentatywnej lub owinięcie zestaw wartości przepełnienia do najbliższej reprezentowalnej wartości przy użyciu modułu modułowego hmetic Wybór, który dokonujesz, wpływa tylko na akumulator i arytmetykę wyjściową Współczynnik i arytmetykę wejściową zawsze nasycają Wreszcie produkty nigdy nie przepełniają utrzymują pełną precyzję. Dla wyjścia z operacji produktu ustawia się długość frakcji używane do interpretacji danych Ta właściwość staje się zapisywalna można zmienić wartość po ustawieniu parametru ProductMode na SpecifyPrecision. Określ, jak filtr obsługuje dane wyjściowe operacji produktu Wybierz pełną dokładność FullPrecision lub czy zachować najbardziej znaczący bit KeepMSB lub najmniej znaczący bit KeepLSB w wyniku, gdy konieczne jest skrócenie słowa danych Aby można było ustawić precyzję długości frakcji używanej przez dane wyjściowe z multiplies, ustaw ProductMode na SpecifyPrecision. Specyfikuje długość słowa używanego dla wyników operacji mnożenia Ta właściwość staje się zapisywana, można zmienić wartość, gdy użytkownik ustaw ProductMode na SpecifyPrecision. Specyfikuje czy zresetować stany filtru i mnie mory przed każdą operacją filtrowania Pozwala zdecydować, czy filtr zachowuje stany z poprzednich etapów filtrowania False jest ustawieniem domyślnym. Określa tryb, w którym filtr używa do kwantyzacji wartości liczbowych, gdy wartości leżą pomiędzy wartością reprezentatywną dla słowa formatu danych a długością frakcji. - Okrągły do ​​najbliższej reprezentatywnej liczby całkowitej Związany z najbliższą lub nawet zapisaną liczbą całkowitą Jest najmniej stronnicza w metodach dostępnych w tym oprogramowaniu. fix - Okrągły w kierunku zera. floor - Okrągły w kierunku ujemnej nieskończoności. nearest - Zaokrąglić w kierunku najbliższego rundy Ties w kierunku pozytywnego nieskończoności. Round - w kierunku najbliższego kręgu w kierunku negatywnej nieskończoności dla liczb ujemnych i w kierunku pozytywnej nieskończoności dla pozytywnych liczb. Wybór, który wykonujesz, wpływa tylko na akumulator i arytmetykę wyjściową Współczynnik i arytmetykę wprowadzania zawsze okrągłe. produkty nigdy nie przepełniają, zachowują pełną precyzję. Określa, czy filtr używa podpisanego czy unsig Współczynniki punktów stałoprądowych Tylko współczynniki odzwierciedlają to ustawienie właściwości. Wybierz kraj.

No comments:

Post a Comment