Jeśli optymalizujesz czas inżynierii i jesteś na platformie, która dobrze obsługuje duże FFT (nie jestem stałym punktem), skorzystaj z porady hotpaw2 i użyj szybkiego konwolucji . Będzie działać znacznie lepiej niż naiwne wdrożenie FIR i powinno być stosunkowo łatwe do wdrożenia.
Z drugiej strony, jeśli masz trochę czasu na to, aby uzyskać najlepszą implementację lub jesteś na platformie z punktem stałym, powinieneś użyć wielowierszowej struktury filtrowania w górę i odejmowania. Ale trochę trudniej jest wszystko naprawić.
Mam dostęp do zaufanych i wysoce zoptymalizowanych implementacji narzędzi do szybkiego konwolucji i filtrowania wielowirnikowego. Szybki splot zajmuje około 3 razy dłużej, aby uzyskać równoważną wydajność sygnału w porównaniu ze strukturą wielopasmową. Co więcej, nawet na platformie zmiennoprzecinkowej. Luka znacznie się powiększy w stałym punkcie dsp.
W ogólnych warunkach:
Konwersja w dół:
Użyj 8 stopni półpasmowych filtrów dziesiętnych na 2, aby przekształcić sygnał 48 kHz w sygnał 187,5 Hz. Pierwszy etap tego próbkowania w dół może mieć bardzo szerokie pasmo przejściowe, pozwalając na alias energii, o ile nie aliasuje z powrotem do zakresu poniżej 60 Hz. W miarę postępu etapów liczba kranów musi się zwiększać, ale będą one stosowane przy stopniowo malejących częstotliwościach próbkowania, więc całkowity koszt każdego etapu pozostaje niewielki.
Filtracja:
Przeprowadź dokładne filtrowanie wokół 60 Hz mc, aby zachować energię, którą ostatecznie chcesz odjąć. Filtrowanie z małą szybkością ma podwójną zaletę:
- Szerokość pasma przejściowego 1 Hz jest 256 razy większa pod względem częstotliwości cyfrowej przy niskiej częstotliwości w stosunku do pierwotnej. Dlatego każde dotknięcie filtra ma 256 razy większą moc.
- Sam sygnał ma niższą częstotliwość, więc filtr musi przetworzyć tylko 1/256 danych.
Konwersja w górę:
Zasadniczo jest to odwrotność etapów dziesiętnych. Każdy z 8 stopni interpolatora podwaja szybkość, szacując próbkę, która przechodzi między kolejnymi próbkami wejściowymi. Pasmo przejściowe staje się szersze wraz ze wzrostem częstotliwości próbkowania.
Odejmować:
Odejmij swój filtrowany dolnoprzepustowy sygnał o pełnej szybkości od sygnału oryginalnego. Jeśli odpowiednio dostosowałeś wszystkie opóźnienia grupowe, ogólną strukturą będzie filtr górnoprzepustowy z wąską przepustowością przejścia.