-
Querverweis auf entsprechende Patentanmeldungen
-
Diese Anmeldung bezieht sich auf die ebenfalls anstehende US-Patentanmeldung mit der Seriennummer US 09/247,214, nunmehr US 6,445,735, eingereicht am 8. Februar 1999 unter dem Titel „Digitalfilter mit geschalteter Bandweite mit reduzierten Übergängen während des Schaltens” und die ebenfalls anstehende US-Patentanmeldung mit der Seriennummer US 09/382,727, nunmehr US 6,393,450, eingereicht am 25. August 1999 unter dem Titel „Digitalfilter mit geschalteter Bandweite mit Schwenkung”.
-
Diese Anmeldung bezieht sich außerdem auf die gleichzeitig unter dem Titel „Verfahren zum Entwerfen von Polynomen zur Steuerung des Schwenkens von anpassungsfähigen Digitalfiltern” eingereichte US-Patentanmeldung mit der Seriennummer 10/122776, nunmehr US 6,988,116, und die gleichzeitig unter dem Titel „Verfahren zum Schwenken eines Digitalfilters, das Filtersektionen mit passender Verstärkung bereitstellt” eingereichte US-Patentanmeldung mit der Seriennummer 10/122,529, nunmehr
US 2002/0136289 A1 .
-
Hintergrund der Erfindung
-
Die Erfindung bezieht sich allgemein auf einstellbare, in der Digitalsignalverarbeitung verwendete Digitalbandfilter und insbesondere auf das Verändern der Bandbreite eines Digitalfilters unter Verwendung von Filterkoeffizienten, die während des Filterbetriebs berechnet werden.
-
Digitalfilter manipulieren diskrete Stichproben eines Eingangssignals zur Erzeugung eines gefilterten Ausgangssignals. Im Fachgebiet sind verschiedene Filterstrukturen bekannt, wie z. B. solche von finiten Transversalfiltern (FIR) und infiniten Transversalfiltern (IIR). IIR-Filter höherer Ordnung (sorgen für größere Wahlmöglichkeit) sind typischerweise mithilfe einer Vielzahl von in Kaskade geschalteten Filtern niedrigerer Ordnung implementiert.
-
Während der Verarbeitung eines Signals kann eine Änderung beim Filtern des Signals erforderlich werden (d. h. eine Änderung der Bandbreite, Durchlasscharakteristik, Gruppenlaufzeit oder anderer Filterparameter). Zur Minimierung von Anforderungen an Hardware und/oder Software ist es wünschenswert, dass durch Änderung lediglich der Filterkoeffizienten vor und nach der Änderung dieselbe Filterstruktur verwendet werden kann.
-
In einem digitalsignalverarbeitenden (DSP) Radioempfänger wird zum Beispiel ein Digitalkanalfilter auf ein Zwischenfrequenz-(IR-)Signal zum Auswählen des gewünschten Signals und Sperren anderer Rundfunksignale angewendet. Für den Kanalfilter kann in Abhängigkeit des Vorhandenseins von störenden benachbarten oder wechselnden Kanalrundfunksignalen ein breiter oder schmaler Durchlassbereich verwendet werden. Beim Umschalten zwischen den zwei Bandbreiten durch Umschalten zwischen zwei Koeffizientensätzen in einem DSP-Filter kann die plötzliche Änderung der Bandbreite vom Hörer bemerkt und als Qualitätsmangel wahrgenommen werden. Audiosignalverarbeitungselemente in der Signalkette, wie z. B. eine automatische Verstärkungssteuerungs-(AGC-)Schleife oder ein Stereodekoder, können in den Übergängen versagen und zu einer weiteren Qualitätsverschlechterung des wiedergegebenen Audiosignals führen.
-
Wie in der ebenfalls anstehenden US-Patentanmeldung mit der Seriennummer US 09/382,727 beschrieben, kann eine allmählichere Änderung der Bandbreite (und damit eine Reduzierung der Schalteinflüsse) durch Verändern der Filterkoeffizienten in einer Reihe von Schritten anstelle des abrupten, direkten Schaltens zwischen Breit- und Schmalband realisiert werden. Die Berechnungs- oder Speicheranforderungen zur Erzeugung einer Anzahl von verschiedenen Filtern mit den gewünschten Charakteristiken sind jedoch unerwünscht groß. Im Stand der Technik ist ein Verfahren zur Variation der Position und der Breite eines digitalen Filters bekannt, welches in der
US 5 856 934 A beschrieben ist. Weiterhin ist in der
US 5 502 663 ein Digitalfilter offenbart, dessen Dämpfungs- und Frequenzparameter unabhängig verändert werden. Im Stand der Technik wird außerdem in der
US 2002/0042802 A1 ein nicht-rekursives Filter und ein Verfahren zur Bestimmung seiner Koeffizienten beschrieben.
-
Zusammenfassung der Erfindung
-
Die Erfindung hat den Vorteil der Erhaltung einer gewünschten Filtercharakteristik während des Veränderns, wobei Filterkoeffizienten auf rechentechnisch wirkungsvolle Art erhalten werden.
-
In einer Ausgestaltung der Erfindung wird ein Verfahren zum Verändern einer Bandbreitencharakteristik eines Digitalfilters in einem Bereich zwischen einer ersten Bandbreitencharakteristik und einer zweiten Bandbreitencharakteristik bereitgestellt, wobei das Digitalfilter eine Vielzahl von in Kaskade geschalteten Filtersektionen enthält und jede diesen Sektionen entsprechende Koeffizienten besitzt. Das Verfahren bildet ein Polynom zweiter oder höherer Ordnung zum Formen eines Änderungswertes eines der Koeffizienten der Bandbreitencharakteristik innerhalb des Bereichs. Zur Kennzeichnung einer gewünschten Bandbreitencharakteristik innerhalb des Bereichs wird ein Indexwert bestimmt. Der Indexwert wird in das Polynom eingegeben, um einen entsprechenden Koeffizientenwert für den einen Koeffizienten zu erhalten. Anschließend wird der Koeffizientenwert in die entsprechende Filtersektion geladen.
-
Kurzbeschreibung der Zeichnungen
-
1 zeigt Kurven der Empfangsfeldstärke in einem lokalen Empfangsgebiet, in dem der gewünschte, interessierende Radiokanal durch einen benachbarten Kanal gestört ist.
-
2 ist ein Blockdiagramm, das Teile eines DSP-Radioempfängers zeigt.
-
3 ist ein Blockdiagramm, das die Digitalsignalverarbeitung einer in der Erfindung verwendeten Zwischenfrequenz darstellt.
-
4 ist ein Blockdiagramm, das die innere Struktur eines Kanalfilters mit einer Kaskade von Filtersektionen zweiter Ordnung zeigt.
-
Die 5a und 5b sind Kurven, die Zwischenfiltercharakteristiken unter Verwendung des linearen Veränderns der Koeffizienten darstellen.
-
Die 6a und 6b zeigen für ideale Filterkoeffizienten passende Näherungen von Polynomen zweiter Ordnung.
-
Die 7a und 7b sind Kurven, die Zwischenfiltercharakteristiken unter Verwendung von Näherungen von Polynomen zweiter Ordnung zum Verändern der Koeffizienten darstellen.
-
8 ist ein Flussdiagramm, das eine Vorzugsausgestaltung des Betriebs eines DSP-Radioempfängers unter Verwendung von Näherungen von Polynomen zum Erhalten von Filterkoeffizientensätzen zeigt.
-
9 ist eine Kurve, die alternative Ausgestaltungen zum Verarbeiten eines Bandweitenindexes darstellt, der in die Filterkoeffizientenpolynome eingegeben wird.
-
10 ist ein Blockdiagramm, das einen DSP-Radioempfänger entsprechend einer Ausgestaltung der Erfindung darstellt.
-
11 ist ein Flussdiagramm, das eine Vorzugsausgestaltung zum Herleiten von in einem Gerät zu speichernden Polynomen unter Verwendung der Erfindung darstellt.
-
Ausführliche Beschreibung der Vorzugsausgestaltungen
-
1 zeigt ein Frequenzspektrum 10 einer gewünschten Rundfunksendung mit einer Zentralfrequenz 11 in einem gekennzeichneten Kanal fd zwischen einer unteren Frequenz 12 und einer oberen Frequenz 13. Es ist ein oberer benachbarter Kanal fu dargestellt, der ein Rundfunksignal 14 mit größtenteils keinem in den gewünschten Frequenzkanal hineinreichenden Signalgehalt enthält, wodurch der obere Frequenzkanal keine Störung verursacht. Es ist jedoch ein unterer benachbarter Kanal fl einer Rundfunksendung dargestellt, der ein Frequenzspektrum 15 mit einem wesentlichen Signalgehalt oberhalb der unteren Frequenz 12 des gewünschten Kanals besitzt. Die daraus resultierende Störung verschlechtert den Empfang der gewünschten Radiosendung.
-
Die Störung eines benachbarten Kanals kann durch Schmälerung des Durchgangsbereichs eines Durchgangsfilters im Empfänger durch Reduzierung des Signalgehalts des den Empfänger passierenden benachbarten Kanals vermindert werden. Damit zeigt 1 eine Schmalbandbreite 16, die in den Signalweg der Zwischenfrequenz zwecks Abschwächung einer Störung durch einen benachbarten Kanal geschaltet werden kann. Ist keine Störung durch einen benachbarten Kanal vorhanden, wird zwecks Maximierung der Qualität des empfangenen gewünschten Signals eine Breitbandbreite 17 verwendet. Im Empfänger wird die Zentralfrequenz 11 in eine Zwischenfrequenz übersetzt, die eine Nullpunkt-Zwischenfrequenz sein kann. In diesem Fall ist das Filter ein Tiefpassfilter.
-
2 ist ein Blockdiagramm, das einen Radioempfänger mit Digitalsignalverarbeitung darstellt. Eine an einen HF-Verstärker 21 gekoppelte Antenne 20 empfängt Rundfunk-HF-Signale. Die verstärkten HF-Signale werden an einem Eingang einer Mischeinrichtung 22 bereitgestellt. Ein lokaler Oszillator 23 stellt ein Mischsignal an einem zweiten Eingang der Mischeinrichtung 22 bereit, wobei das Mischsignal eine Frequenz unter Kontrolle einer Abstimmsteuerschaltung (nicht dargestellt) hat. Ein Trägersignal in Form eines Zwischenfrequenz-(IF-)Signals wird von der Mischeinrichtung 22 an einen Eingang eines Analog-zu-Digital-(A/D-)Wandlers 24 geliefert. Ein digitalisiertes IF-Signal wird zum Filtern, Demodulieren und zur weiteren Verarbeitung des resultierenden Audiosignals an einen Digitalsignalprozessor-(DSP-)Block 25 geliefert. Der Block 25 enthält Datenspeicher und Programmspeicher zur Durchführung dieser Funktionen. Ein Endaudiosignal wird vom DSP 25 an den Eingang des Digital-zu-Analog-(D/A-)Wandlers 26 geliefert, der ein Lautsprechersystem 27 mit analogen Audiosignalen versorgt.
-
Die Verarbeitung des digitalisierten IF-Signals im DSP 25 ist in 3 detaillierter dargestellt. Die der 3 entsprechenden Ausgestaltung ist besonders zum Verarbeiten von AM-Signalen ausgelegt. Das digitalisierte IF-Signal wird zur Erzeugung von Gleichtakt-(I-) und Quadraturphasen-(Q-)Signalen an den Eingang einer komplexen Mischeinrichtung 30 geliefert. Ein Oszillator 31 erzeugt ein Zuführungssignal fif, das nominell gleich der Zwischenfrequenz des IF-Signals ist, so dass das IF-Signal zu einer neuen IF-Frequenz mit ungefähr null Hertz gemischt wird. Das Zuführungssignal wird direkt an einen Eingang einer ersten Mischeinrichtung 32 und durch einen 90°-Phasenverschiebungsblock 33 an einen Eingang einer zweiten Mischeinrichtung 34 geleitet. Das digitalisierte IF-Signal wird zum Erzeugen der I- und Q-Signale an den entsprechenden Eingängen der Mischeinrichtungen 32 und 34 bereitgestellt. Die I- und Q-Signale werden in den Dezimierblöcken 35 bzw. 36 dezimiert, um als abtastfrequenzreduzierte Signale an den Eingängen der Kanalfilter 37 und 38 bereitgestellt zu werden.
-
In der Erfindung können andere Nichtnullpunkt-IF-Frequenzen oder nichtkomplexe Signaldarstellungen verwendet werden. Eine Nullpunkt-IF-Komplexdarstellung hat in der Digitalsignalverarbeitung viele Vorteile, wie z. B. kompakte Kodegröße, minimierte Chipfläche und effiziente Datenbehandlung.
-
Die Kanalfilter 37 und 38 können mit einem Koeffizientensatz aus einer Vielzahl von Koeffizientensätzen (d. h. einem Koeffizientensatz #1 oder einem Koeffizientensatz #2) über einen Multiplexer 40 unter Kontrolle eines Nachbarkanalerfassungsblocks 41 geladen werden. Der Koeffizientensatz #1 liefert zum Beispiel eine Breitbandbreite, während der Koeffizientensatz #2 eine Schmalbandbreite liefert. Beim Verändern zwischen einer Breitbandbreite und einer Schmalbandbreite werden Zwischenkoeffizientensätze geladen. In Abhängigkeit des Vorhandenseins benachbarter Kanalstörungen wird ein zu jeder Zeit zu verwendender Koeffizientensatz ausgewählt. Unter Verwendung einer Zwischenfrequenz von null Hertz werden die Kanalfilter 37 und 38 als Tiefpassfilter im schmaleren Filter implementiert, wobei das schmalere Filter eine obere Grenzfrequenz besitzt, die niedriger als die des breiteren Filters ist. Das Vorhandensein benachbarter Kanalstörungen kann unter Verwendung jedes üblichen im Fachgebiet bekannten Verfahrens erfasst werden. Die gefilterten Outputs der Kanalfilter 37 und 38 werden an einen Signaldetektor 42 zum Erzeugen eines Audiooutputs geliefert, das zum Beispiel linke und rechte Stereosignale enthalten kann.
-
Die Speicherblöcke für die Koeffizientensätze #1 und #2 können außerdem Koeffizientenwerte enthalten, die beim Verändern einer aus den Filtersektionen ausgewählten Filtersektion zu verwenden sind. Alternativ können Informationen gespeichert werden, die bei Bedarf die Berechnung dieser Veränderungskoeffizientenwerte ermöglichen.
-
Die Kanalfilter können unter Verwendung verschiedener Filterstrukturen und -typen implementiert werden. Hier wird ein infinites Transversalfilter (IIR), wie es in 4 gezeigt ist, als Beispiel beschrieben, da seine Verwendung wegen der Vorteile seiner kompakten Größe wünschenswert ist.
-
4 zeigt eine typische Architektur eines IIR-Filters, das aus drei zwischen einem Eingang x(n) und einem Ausgang y(n) in Kaskade geschalteten Sektionen zweiter Ordnung besteht. Ein Filter kann einen an einem Eingang eines Multiplizierers 45 eingebrachten Gesamtverstärkungsterm G0 enthalten, wobei der Multiplizierer an seinem anderen Eingang ein Input x(n) empfängt. Alternativ kann, wie im Fachgebiet bekannt, der Verstärkungsterm auf die einzelnen Sektionen verteilt werden.
-
Die Sektionen zweiter Ordnung 46, 47 und 48 sind zum Erzeugen eines Filters sechster Ordnung in Reihe geschaltet. Die erste Sektion 46 enthält einen Multiplizierer 50 zur Multiplikation des Inputs zur Sektion 46 mit einem Koeffizienten b0,1. Das resultierende Produkt wird an einen Eingang eines Summierers 51 geliefert. Der Ausgang des Summierers 51 bildet den Ausgangsknoten der Sektion 46 und ist außerdem ein innerer Knoten des gesamten Filters.
-
Das Input zu Sektion 46 wird durch eine Abtastperiode in einem Verzögerungsblock 52 und anschließender Eingabe in einen Multiplizierer 53 verzögert. Der Koeffizient b1,1 wird in einem zweiten Eingang des Multiplizierers 53 eingebracht und das Output an den Summierer 51 geliefert. Das Output des Verzögerungsblocks 52 wird nach einer weiteren Verzögerung im Verzögerungsblock 54 zunächst in einen Multiplizierer 55 zur Multiplikation mit einem Koeffizienten b2,1 geleitet. Das Output des Multiplizierers 55 wird an einen noch anderen Eingang des Summierers 51 geliefert. Die b-Koeffizienten stellen die Mitkopplungsterms von Sektion 46 bereit. Außerdem enthält Sektion 46 Rückkopplungsterms, wobei das Output des Summierers 51 in einem Verzögerungsblock 56 verzögert wird. Das verzögerte Output wird an einen Multiplizierer 57 übertragen, der außerdem einen Koeffizienten a1,1 empfängt. Das Output des Multiplizierers 57 wird an einen anderen Eingang des Summierers 51 übertragen. Das verzögerte Output vom Verzögerungsblock 56 wird durch einen Verzögerungsblock 58 und anschließend an einen Eingang eines Multiplizierers 59 geleitet. Koeffizient a2,1 wird an einen anderen Eingang des Multiplizierers 59 geliefert und das resultierende Produkt zum Summierer 51 gesendet. Die a-Koeffizienten stellen die Rückkopplungsterms von Sektion 46 bereit. Der den inneren Knoten von Sektion 46 umfassende Ausgang vom Summierer 51 ist mit dem Eingang des zweiten Bereichs 47 gekoppelt. Die Sektionen 46 und 47 sind überlappt dargestellt, da die Verzögerungsblöcke 56 und 57 von beiden Sektionen zwecks Minimieren der Hardwareanforderungen gemeinsam genutzt werden.
-
Das Input von Sektion 47 (von Summierer 51) wird in einen Multiplizierer 60 eingebracht, der außerdem Koeffizient b0,2 empfängt. Zusätzlich werden die b-Koeffizienten b1,2 und b2,2 in den Multiplizierer 62 bzw. 63 eingebracht, und die resultierenden Produkte werden im Summierer 61 addiert. Verzögerungsblock 64, Multiplizierer 65, Verzögerungsblock 66 und Multiplizierer 67 stellen wie in der vorherigen Sektion Rückkopplungsterms unter Verwendung der Koeffizienten a1,2 und a2,2 bereit. Sektion 48 arbeitet in derselben Weise mit den für die dritte Sektion verwendeten b-Koeffizienten b0,3, b1,3 und b2 , 3 und a-Koeffizienten a1,3 und a2,3. Zum Bereitstellen einer Endfilterung höherer Ordnung können nach Sektion 48 weitere Sektionen zweiter Ordnung in Kaskade geschaltet werden.
-
Zur Bestimmung entsprechender Werte für die a- und b-Koeffizienten für eine gewünschte Bandbreitencharakteristik sind verschiedene Verfahren unter Verwendung unterschiedlicher Typen von Filtern (z. B. Butterworth, Chebyshev oder Elliptic) allgemein bekannt. In der DSP-Hardware implementierte Filtersektionen können unterschiedliche ausgewählte Bandbreitencharakteristiken durch Laden unterschiedlicher a- und b-Koeffizienten bereitstellen. Zum Beispiel sind erster und zweiter Koeffizientensatz für das Bereitstellen einer ersten Bandbreitencharakteristik bzw. einer zweiten Bandbreitencharakteristik zwecks Schalten zwischen den Bandbreiten bei Verwendung derselben wie in der 3 gezeigten Filterhardware und -struktur einzeln hergeleitet worden (im Voraus durch die Filterkonstrukteure). Durch Austauschkoeffizientenwerte zwischen den beiden Koeffizientensätzen kann während des Betriebs des Radioempfängers entweder der Breitband- oder Schmalbandkanalfilter ausgewählt werden. Wie hier verwendet, bezieht sich ein Koeffizientensatz auf alle a- und b-Koeffizienten für alle Filtersektionen zum Bereitstellen einer Bandbreitencharakteristik.
-
Bei Verwendung der mit einem konventionellen Prozess erhaltenen Koeffizientensätze können wesentliche hörbare Wirkungen in einem Audiooutput auftreten, wenn die Filterkoeffizienten gewechselt werden. Die ebenfalls anstehende Patentanmeldung mit der Seriennummer US 09/382,727 lehrt zwecks Verringerung der hörbaren Änderung im Frequenzgang und anderer Auswirkungen eine allmähliche Änderung in der Gesamtfiltercharakteristik.
-
Würde die Bandbreite bei allen gewünschten Zwischenbandbreiten zwischen der breiten und schmalen Einstellung in diskreten Schritten unter Verwendung konventioneller Koeffizientenentwurfsverfahren verändert werden, wären ein hoher Speicherbedarf und/oder umfangreiche rechentechnische Ressourcen erforderlich. Wenn 50 Zwischenschritte gebraucht würden, müssten 50 verschiedene komplette Koeffizientensätze gespeichert werden, was hinsichtlich Speicherbelegung und zusätzlicher Prozessorzeit für den Austausch der gespeicherten Koeffizienten innerhalb und außerhalb des Prozessors teuer wäre. Die ebenfalls anstehende Patentanmeldung mit der Seriennummer US 09/382,727 verändert Koeffizienten einer einzelnen Filtersektion, wobei die veränderten Koeffizientenwerte zwischen ihren Anfangs- und Endwerten linear abgestuft werden. 5a zeigt eine durch lineares Verändern von Filterkoeffizienten erreichte Sperrbereichsdämpfung für eine Filtersektion, wie in der anstehenden Patentanmeldung beschrieben. Eine Kurve 80 zeigt die Charakteristik eines Schmalbandfilters und Kurve 81 die eines Breitbandfilters. Die Zwischenkurven 82 zeigen die durch lineares Verändern erhaltenen Charakteristiken von Zwischenfiltern, die im Wesentlichen aus den idealen Formen der Kurven 80 und 81 hergeleitet worden sind. 5b zeigt eine Durchgangsbereichsdämpfung für dasselbe wie in 5a gezeigte Verändern. Es ist ersichtlich, dass nach dem Verändern des Filters durch die interpolierten Koeffizientenwerte und anschließendem Laden der für die Endfilter (d. h. schmal oder breit) hergeleiteten Idealwerte in die Filtersektion eine abrupte Änderung der Filtercharakteristik bewirkt wird.
-
Die Erfindung stellt während des Bandbreitenveränderns eine idealere Filtercharakteristik bereit, wodurch mit nichtidealen Zwischencharakteristiken verbundene Nebenwirkungen vermieden werden. Außerdem stellt die Erfindung Zwischenbandbreitencharakteristiken bereit, die Leistungsspezifikationen erfüllen, durch die für Langzeitfilterung (d. h. nicht nur für kurze Perioden während des Veränderns) verwendete Bandbreitencharakteristiken erreicht werden können. Damit kann die Erfindung verwendet werden, um ein Digitalfilter mit variabler Bandbreite, der geringe rechentechnische und Speicheranforderungen stellt, aufzubauen.
-
Die Erfindung bildet die Varianz einzelner Koeffizienten einer oder mehrerer Sektionen eines Mehrsektionendigitalfilters mittels Polynomen zweiter Ordnung, wie in den 6a und 6b gezeigt werden. Die Kurve 83 repräsentiert eine idealisierte Variabilität von Werten der a1- und a2-Terme in einer bestimmten Sektion eines Tiefpassfilters über einen Bereich von Grenzfrequenzen des Filters. Während nur einige wenige dieser kontinuierlichen, idealen Filter tatsächlich entworfen werden, werden durch die Erfindung die resultierenden Koeffizientenwerte für jeden Koeffizienten an ein Polynom zweiter Ordnung angepasst. Zum Beispiel wird ein Polynom in 6a als a1 = –0,012266 + 2,317i + (–0,48752i2) gezeigt, wobei i ein Index entsprechend der Grenzfrequenz des gewünschten Filters (d. h. anteilige Abtastfrequenz des Digitalsystems) ist. 6b führt zu einer Polynomnäherung a2 = 0,67324 + 0,0035137i + 0,21376i2. Als Reaktion auf jede gewünschte Bandbreite (d. h. Grenzfrequenz) kann der Index i in entsprechende Polynome zur Erzeugung einer Polynomnäherung (wie durch die Punkte 84 gezeigt) der a-Terme unter Verwendung sehr geringer rechentechnischer und Speicherressourcen eingegeben werden. Wie zuvor beschrieben, können die b-Terme jeder Filtersektion als Reaktion auf die Werte der a-Terme berechnet werden. Die daraus resultierende Verbesserung in den Charakteristiken der Zwischenfilter wird in den 7a und 7b gezeigt, in denen die Kurven des Sperrbereichs bzw. des Durchlassbereichs dargestellt sind.
-
Anhand eines Beispiels eines AM-Kanalfilters achter Ordnung in Form eines als Direktformsektionen zweiter Ordnung in Vierfach-Kaskade implementierten IIR-Filters wird die Übertragungsfunktion für jede Sektion bestimmt als
wobei ein Sektionsindex X im Bereich von 0 bis 3 liegt und die vier Filtersektionen zweiter Ordnung repräsentiert. Die Filterkoeffizienten werden in der Laufzeit mithilfe eines Satzes von Polynomen und einer Verstärkungsberechnung berechnet, die eine DC-Verstärkung Eins sicherstellt. Die a
1- und a
2-Terme jeder einzelnen Sektion werden aus einem entsprechenden Satz Polynome zweiter Ordnung basierend auf dem Bandbreitenpositionsindex i wie folgt berechnet:
a1 = p0,1 + (p1,1·i) + (p2,1·i2), und a2 = p0,2 + (p1,2·i) + (p2,2·i2). Zur Sicherstellung einer für jede Sektion passenden Verstärkung kann die Verstärkung jeder Sektion veranlasst werden, in allen Sektionen gleich einer bestimmten Konstante, wie z. B. Verstärkung Eins (d. h. eine Verstärkung von 0 dB), zu sein. Alternativ können andere Verstärkungswerte oder unterschiedliche Verstärkungswerte für verschiedene Filtersektionen verwendet werden. Verstärkung Eins sorgt für eine gute Leistung und ermöglicht eine effiziente, auf den a-Termen in einer bestimmten Filtersektion basierende Berechnung der b-Terme. In einer Butterworth-Implementierung zum Beispiel leitet die nachfolgende Berechnung die b-Terme aus den a-Termen her:
In Abhängigkeit von der Hardware können die b-Terme auch wie folgt berechnet werden:
b1 = 0,25 + 0,5a1 + 0,5a2; b0 = b1 ÷ 2; und b2 = b0.
-
Der Laufzeitbetrieb eines diese Erfindung verwendenden Radioempfängers wird in 8 gezeigt. In Schritt 86 werden die Bandbreite des Kanalfilters und der entsprechende Index initialisiert (Der Empfänger kann z. B. zu Beginn das Schmalbandfilter verwenden, bis gute Empfangsbedingungen erkannt werden.). In Schritt 87 wird festgestellt, ob die Bandbreite erhöht (oder reduziert oder nicht modifiziert) werden sollte. Hat eine Erhöhung zu erfolgen, wird der Bandbreitenpositionsindex i in Schritt 88 um eine Vergrößerungsschrittweite erhöht. Hat eine Reduzierung zu erfolgen, wird der Bandbreitenpositionsindex i in Schritt 89 um eine Verkleinerungsschrittweite herabgesetzt. In einer Vorzugsausgestaltung variiert der Index i zwischen 0 und 1, wobei 0 das schmalste Filter (d. h. die niedrigste Grenzfrequenz) und 1 das breiteste Filter repräsentiert. Die Filterauflösung (d. h. die Anzahl der Zwischenfilter, die zwischen den Endpunkten des breiten und des schmalen Filters erreicht werden können) kann gleich der numerischen Auflösung des DSP sein, obwohl bei Anwendung des Veränderns eine viel niedrigere Auflösung verwendet werden würde. Die Vergrößerungsschrittweite muss nicht gleich der Verkleinerungsschrittweite sein, da ein schnelleres Verändern bei Schmälerung der Bandbreite vorteilhaft sein kann. Wenn das Erhöhen oder Herabsetzen des Indexes zu einem Index außerhalb des Bereichs führt, wird der Index auf 0 bzw. 1 gesetzt.
-
Die Schrittweiten während einer Veränderung in eine Richtung müssen nicht alle gleich sein. Es kann eine Änderung der Progressionsgeschwindigkeit des Veränderns erwünscht sein. Deshalb kann ein optionaler Schritt 90 verwendet werden, um den Anfangsindex bis zu einem gewandelten Index zwecks Bereitstellung einer nichtlinearen Teilung der Zwischenfilter über einen Bereich von beim Verändern verwendeter Grenzfrequenzen abzubilden. 9 zeigt eine Kurve 96 eines nicht gewandelten Index, der die Bandbreite oder Grenzfrequenz linear variiert. Die Kurven 97 und 98 stellen Beispiele einer nichtlinearen Beziehung zwischen dem Index und der Zwischenfrequenzbandbreite dar. Diese nichtlinearen Beziehungen können zum Beispiel durch Verwendung entsprechender Polynome zum Wandeln des Indexes erhalten werden. Damit kann der Anfangsindexwert schrittweise in gleichen Schrittweiten geändert werden, wird aber anschließend unter Verwendung eines Polynoms gewandelt, so dass eine nichtlineare Änderung der Schrittweite erhalten wird, wie durch die Kurven 97 oder 98 gezeigt. Diese Wandlung kann außerdem während des Betriebs des Empfängers in Abhängigkeit verschiedener Faktoren, wie z. B. der Schwierigkeit einer Störungsbedingung oder der Schwäche eines empfangenen Signals, modifiziert werden.
-
Auf der Basis des Endindexes (gewandelt oder nicht gewandelt) wird, beginnend bei Schritt 91, ein Zwischenbandfilter erhalten, wobei für jede Filtersektion Filterkoeffizienten berechnet werden. Die beste Leistung wird durch Veränderungskoeffizienten in jeder Sektion erreicht, wobei die Erfindung jedoch ein Verändern nicht aller Sektionen umfasst. Für die momentane Sektion werden die a1- und a2-Terme unter Verwendung der zuvor in Schritt 92 hergeleiteten und gespeicherten entsprechenden Polynome durch Polynome zweiter Ordnung angenähert. In Schritt 93 werden die b0-, b1- und b2-Terme für die momentane Sektion aus den Werten der a1- und a2-Terme berechnet. Es erfolgt ein Rücksprung auf Schritt 91 und die Schritte 92 und 93 werden wiederholt, bis ein Filterkoeffizient bestimmt worden ist.
-
Wenn alle Koeffizientenwerte bestimmt sind, werden sie in Schritt 94 in die Filtersektionen geladen, und in Schritt 95 wird eine Kanalfilterung unter Verwendung der neuen Zwischenfilter durchgeführt. Es erfolgt ein Rücksprung auf Schritt 87, um die Richtung zu bestimmen, die eventuell für weiteres Verändern erforderlich ist.
-
Wenn gewünscht, können weitere Schritte durchgeführt werden, um zu bestimmen, wann der Endpunkt (d. h. maximale oder minimale Grenzfrequenz) erreicht ist, und in die Filtersektionen kann anstelle einer Polynomnäherung ein separat gespeicherter Satz von idealen Filterkoeffizienten geladen werden. Umgekehrt können das untere und obere Bandbreitenextrem eines bestimmten Filters durch Aufzwingen minimaler und maximaler Werte auf den Bandbreitenindex gesteuert werden, so dass ein Verändern nur über einen Teil eines gesamten Bereichs durchgeführt wird, für den das Filter und die Polynome ursprünglich ausgelegt wurden (wobei die Polynomnäherungen immer angewendet werden).
-
In 10 ist ein Apparat zur Durchführung des Verfahrens von 8 dargestellt. An einem Qualitätsdetektor 100 und an einer Quadraturmischeinrichtung 107 wird ein Digitalsignal (z. B. ein AM-Rundfunkübertragungssignal) bereitgestellt. Der Qualitätsdetektor 100 kann ein Störungsdetektor (z. B. zum Bestimmen der Stärke unerwünschter Signale bei benachbarten Kanalfrequenzen, so dass durch Schmälerung der Kanalfilterbandbreite die störenden Signale abgedeckt werden können) oder ein Signalstärkedetektor sein (z. B. zum Feststellen, ob das gewünschte Signal schwach ist, wobei das Gesamtsignal im Verhältnis zum Rauschen durch Schmälerung des Kanalfilters verbessert werden kann). Detektor 100 stellt ein eine niedrige Qualität anzeigendes Signal an einem Zähler 101 bereit, der während des Signals niedriger Qualität mit einer durch eine Uhr 102 bestimmten Zählfrequenz vorwärts zählt. Nach einer festgelegten Anzahl von Zählimpulsen wird eine Gesamtzahl im Zähler 101 mit einem Schwellenwert in einem Komparator 103 verglichen. Damit müssen die Bedingungen niedriger Qualität (Störung oder schwaches Signal) für mindestens einen festgelegten Zeitmittelwert erfasst werden, bevor ein Umschalten in das Schmalbandfilter durch den Komparator 103 angezeigt wird.
-
Eine Steuerung 104 empfängt ein Output vom Komparator 103 und erneuert den am Speicherort 105 im Digitalsignalprozessor gespeicherten Bandbreitenindex i. Die auch als ROM-Daten im Digitalsignalprozessor speicherbaren Polynome zum Berechnen der Filterkoeffizientenwerte sind in einem Speicher 106 gespeichert. Die Steuerung 104 bestimmt die Filterkoeffizientenwerte entsprechend dem momentanen Wert des Index i und lädt sie für die I- und Q-Quadratursignale in die Kanalfilter 108 bzw. 109. Anschließend werden die Quadratursignale durch einen Detektor 110 erfasst (d. h. demoduliert).
-
11 zeigt einen Filterentwurfsprozess detaillierter. In Schritt 120 können konventionelle Digitalfilterentwurfshilfsmittel zum Berechnen von Filterkoeffizienten für mindestens das Schmalband-, Breitband- oder eines der Zwischenbandfilter verwendet werden. Vorzugsweise hat das Zwischenbandfilter eine Grenzfrequenz in der Mitte zwischen den Grenzfrequenzen des Schmal- und Breitbandfilters. Obwohl hier allgemein Tiefpassfilter dargestellt sind, könnten die Filter alternativ aus Hochpassfiltern bestehen.
-
Obwohl drei ideale Koeffizientensätze zum Bestimmen eines Polynoms ausreichen können, wird eine höhere Genauigkeit durch das Entwerfen weiterer für das Bestimmen der Polynomkoeffizienten zu verwendenden Zwischenfilter erreicht. Zum Beispiel sind in einem Tiefpassfilter mit einer Grenzfrequenz von –3 dB für das Schmalbandfilter von etwa 3 kHz und einer Grenzfrequenz von –3 dB für das Breitbandfilter von etwa 7 kHz bis zu etwa 20 ideal entworfene Filter mit Grenzfrequenzen in größtenteils gleichmäßiger Teilung von 3 kHz bis 7 kHz verwendet worden. Alternativ müssen die Teilungen der gewünschten Filter nicht linear sein. Eine engere Teilung kann in Teilen des Bereichs bereitgestellt werden, wo eine höhere Genauigkeit der Filterkoeffizientensätze erwünscht ist.
-
In Schritt 121 werden die Filtersektionen der einzeln manuell entworfenen Filter zum Bereitstellen des bestmöglichen Zusammenpassens von Q-Faktoren entsprechend gruppiert. Das bedeutet ein unabhängiges Neuordnen von Sektionen der Filter. In Schritt 122 werden die zusammenpassenden Sektionen zur Maximierung des dynamischen Bereichs und der Rauschleistung erneut zueinander geordnet, wie es den mit dem Fachgebiet vertrauten Personen bekannt ist. In Schritt 123 werden Polynome den hergeleiteten Koeffizientenwertsätzen der entsprechenden Filtersektionen angepasst. Alternativ könnte die Polynomanpassung selbstverständlich vor der Gruppierung und der Neuordnung durchgeführt werden. In Schritt 124 werden die Polynomkoeffizientensätze im DSP-Speicher gespeichert.
-
Zur weiteren Darstellung des Entwurfsprozesses wird ein detaillierteres Beispiel gezeigt. Das Kanalfilter besteht aus vier in Kaskade geschalteten Sektionen zweiter Ordnung (Biquadrate). Die Übertragungsfunktion jedes Biquadrats ist nachfolgend dargestellt.
Die Übertragungsfunktion zeigt, dass zum Verändern der Bandbreite der Filtersektion ein Modifizieren der Stelle von Pol(p
1) verwendet werden kann. Das erklärt, warm Polynomnäherungen nur für die a
1- und a
2-Terme notwendig sind. Die zuvor gezeigte Tiefpassfilterstruktur vorausgesetzt, kann eine Polynomnäherung zweiter Ordnung zum Darstellen von a
1 und a
2 verwendet werden, wenn die –3 dB-Grenzfrequenz geringer als ein Viertel der Abtastfrequenz ist. Die b-Terme können dann erneut aus den neuen a-Termen berechnet werden, damit die DC-Verstärkung Eins bleibt. Ein Satz Polynome wird zum Berechnen beider a-Terme in allen Stufen (z. B. 8 Polynome bei Verwendung von 4 in Kaskade geschalteten IIR-Filtersektionen zweiter Ordnung) auf der Basis eines Positionsindexes einer Kanalfilterbandbreite wie folgt hergeleitet:
a1,X = p0,1,X + (p1,1,X·i) + (p2,1,X·i2), und a2 ,X = p0,2,X + (p1,2,X·i) + (p2,2,X·i2), wobei p Polynomkoeffizienten sind und i der Bandbreitenindex ist. Da sich die Nullpunkte von H
LP auf der Nyquist-Abtastfrequenz befinden, werden die b
0-, b
1- und b
2-Koeffizienten jeder Biquadratsektion aus den a
1- und a
2-Koeffizienten effizient berechnet, so dass die DC-Verstärkung jeder Sektion Eins ist. Da bei DC z = e
jω = e
j0 ist, gilt:
b1 = 2b0; b2 = b0.
-
Unter Verwendung konventioneller Verfahren leitet ein Konstrukteur drei verschiedene Filter, und zwar das Schmalband-, das Mittelband- und das Breitbandfilter her. Vorzugsweise besitzt das Mittelband eine Bandbreite dicht am Mittelwert der Schmalband- und Breitbandbreiten. Vorzugsweise ist jedes Filter ein IIR-Filter achter Ordnung mit der Einschränkung, dass sich alle Nullpunkte auf der Nyquist-Frequenz befinden. Dieses Kriterium wird vom Entwurf jedes Filters als Butterworth-Sektion oder Zusammenstellung von Butterworth-Sektionen erfüllt.
-
Nachdem die konventionellen (d. h. idealen) Filter entworfen worden sind, werden ihre Übertragungsfunktionen in Sektionen zweiter Ordnung (Biquadrate) überführt. Vorzugsweise kann jede Sektion die DC-Verstärkung Eins und einen Nullpunkt auf der Nyquist-Frequenz haben.
-
Die Biquadrat-Sektionen der Schmalband-, Mittelband- und Breitbandfilter werden auf der Basis der allgemeinen Form der Größenwiedergabe jeder Sektion gruppiert. Zum Beispiel sollte die Sektion mit dem höchsten Q im Schmalbandfilter mit den höchsten Q-Sektionen der Mittelband- und Breitbandfilter usw. gruppiert werden. Eine direkte Lösung besteht darin, die Biquadratsektionen so zu ordnen, dass die Reihenfolge der Pole absteigend ist. Die Gruppierung der Sektionen hilft beim Umschalten zwischen den Filtern, die Sprungantwort zu minimieren.
-
Die Gruppen der Biquadratsektionen werden danach zur Berücksichtigung eines dynamischen Bereichs und zur Minimalisierung eines übermäßigen Rauschens neu geordnet. Bei Berücksichtigung eines dynamischen Bereichs ist es vorteilhaft abzusichern, dass maximale Signalpegel am Ausgang jeder Zwischensektion nicht überschritten werden. Übermäßiges Rauschen bezieht sich auf die Form von Abschneidungsrauschen, wie es sich durch darauffolgende kaskadengeschaltete Filtersektionen ausbreitet. Zum Minimieren des übermäßigen Rauschens wird das Ordnen der Sektionen gewählt. Ein einfaches Verfahren ist das Ordnen der Sektionen der Mittelbandfilter zur Berücksichtigung eines dynamischen Bereichs und bei übermäßigem Rauschen und anschließendes Neuordnen der Schmalband- und Breitbandfilter, um dieselben Gruppierungen, wie zuvor hergeleitet, beizubehalten. Ein alternatives Verfahren ist der Versuch, das Rauschen basierend auf allen drei Filtern zu minimieren.
-
Zur Näherungsberechnung der a1- und a2-Koeffizienten werden Polynome zweiter Ordnung für die Modellierung der Filterkoeffizientenwerte gebildet. Es sind nur die a1- und a2-Koeffizienten erforderlich, da b0, b1 und b2 dynamisch auf der Basis von a1 und a2 berechnet werden. Es kann in einigen DSP-Implementierungen wünschenswert sein, alle a1- und a2-Koeffizienten mit einem Faktor 2 abwärts zu skalieren, um die DSP-Implementierung widerzuspiegeln. Die Polynomnäherung würde also die momentanen, durch 2 dividierten a-Koeffizienten repräsentieren.
-
Vorzugsweise werden für jeden der skalierten a
1- und a
2-Terme die die Koeffizientensätze jeder Filtersektion am besten anpassenden Polynome zweiter Ordnung unter Verwendung der Näherung kleinster Quadrate hergeleitet. Durch dieses Verfahren wird der Polynomkoeffizientenvektor p bestimmt, der den quadratischen Fehler ||e
2|| minimiert, wie nachfolgend dargestellt:
wobei ind die Matrix der Indizes für das Polynom und a der Vektor der Filterkoeffizienten für das Schmalband-, Mittelband- und Breitbandfilter (oder mehr Sätze, wenn mehr ideale Filter entworfen werden) ist. Eine Lösung, die durch Einführen des Orthogonalitätsprinzips vereinfacht wird, ist explizit nachfolgend dargestellt:
Da der Bandbreitenindex von 0 bis 1 reicht, sind die Werte für ind
schmal, ind
mittel und ind
breit 0, 0,5 bzw. 1. Deshalb wird die vorherige Lösung zu
Zum Bestimmen der a
1- und a
2-Koeffizientensätze für jede der Biquadratsektionen wird eine Gesamtgleichung der 8 Gleichungen der Polynomsätze erzeugt. Die resultierenden Polynomkoeffizienten werden dann in den Prozessorspeicher geschrieben.