DE69332975T2 - Digitales filter mit hoher genauigkeit und effizienz - Google Patents

Digitales filter mit hoher genauigkeit und effizienz Download PDF

Info

Publication number
DE69332975T2
DE69332975T2 DE69332975T DE69332975T DE69332975T2 DE 69332975 T2 DE69332975 T2 DE 69332975T2 DE 69332975 T DE69332975 T DE 69332975T DE 69332975 T DE69332975 T DE 69332975T DE 69332975 T2 DE69332975 T2 DE 69332975T2
Authority
DE
Germany
Prior art keywords
frequency domain
filter
output
block
blocks
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Revoked
Application number
DE69332975T
Other languages
English (en)
Other versions
DE69332975D1 (de
Inventor
Stanley David McGRATH
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dolby Australia Pty Ltd
Original Assignee
Lake Technology Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=27157669&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=DE69332975(T2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Lake Technology Ltd filed Critical Lake Technology Ltd
Application granted granted Critical
Publication of DE69332975D1 publication Critical patent/DE69332975D1/de
Publication of DE69332975T2 publication Critical patent/DE69332975T2/de
Anticipated expiration legal-status Critical
Revoked legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03HIMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
    • H03H17/00Networks using digital techniques
    • H03H17/02Frequency selective networks
    • H03H17/06Non-recursive filters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/14Fourier, Walsh or analogous domain transformations, e.g. Laplace, Hilbert, Karhunen-Loeve, transforms
    • G06F17/141Discrete Fourier transforms
    • G06F17/142Fast Fourier transforms, e.g. using a Cooley-Tukey type algorithm
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03HIMPEDANCE NETWORKS, e.g. RESONANT CIRCUITS; RESONATORS
    • H03H17/00Networks using digital techniques
    • H03H17/02Frequency selective networks
    • H03H17/0211Frequency selective networks using specific transformation algorithms, e.g. WALSH functions, Fermat transforms, Mersenne transforms, polynomial transforms, Hilbert transforms
    • H03H17/0213Frequency domain filters using Fourier transforms

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Algebra (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Discrete Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)
  • Filters And Equalizers (AREA)
  • Analysing Materials By The Use Of Radiation (AREA)

Description

  • Erfindungsgebiet
  • Die Erfindung betrifft die Technik der elektronischen Signalverarbeitung und insbesondere, aber nicht ausschließlich, eine elektronische Filterumgebung, in der relativ hohe Genauigkeit und Effizienz erwünscht ist, und in der eine relativ kurze Durchlaufverzögerung (latency, im folgenden als Totzeit bezeichnet) gewünscht wird.
  • Beschreibung des Stands der Technik
  • In 1 werden elektronische Filter verwendet, um die Kennlinie eines ankommenden elektronischen Signals zu verändern, um so ein Ausgabesignal bereitzustellen, das in einer vorgegebenen Art geändert ist. In dem in 1 gezeigten Fall ist ein Sperrfilter (Notch-Filter) dargestellt, bei dem in der Frequenzdomäne die Frequenzen im Spektrum des ankommenden Signals S1 in dem F1- bis zu dem F2-Band gedämpft werden, um ein Ausgabesignal S2 zu erzeugen.
  • Jedes Filter kann aus vollständig analogen Bauteilen gebildet sein, obwohl in jüngster Zeit ein Vorzug dahingehend besteht, in vielen Fällen das Filter in digitaler Art auszubilden. Die digitale Ausbildung kann mittels einer dedizierten digitalen Schaltung oder mittels eines Computers (Mikroprozessors) geschehen, der programmiert ist, um als Filter zu arbeiten.
  • Filter haben viele Anwendung in dem Feld der elektronischen Modellierung von Real-Worls-Bedingungen. Beispielsweise können Filter verwendet werden, um ein Modell der akustischen Charakteristika von Räumen oder Hallen zu liefern. Filter werden auch verwendet, um Mängel in Systemen zu modellieren, um so geeignete Korrekturfaktoren für den Zweck der Entfernung (Löschung) von Imperfektionen in Signalen zu bewirken, die durch die Mängel verursacht werden.
  • Häufig ist es wünschenswert, dass eine solche Verarbeitung in „Echtzeit" geschieht. Auch ist es wünschenswert, dass effektiv keine Verzögerung beim Filtern eines Signals, das in einer echten/lebendigen Umgebung erzeugt wird, vorhanden ist, so dass die von dem Filter durchgeführten Modellierungs/Korrektur-Schritte für alle Zwecke und Absichten ohne jede vom dem Endbenutzer wahrnehmbare Verzögerung sind.
  • Um dies zu erreichen, muss die von dem Filter F bei der Durchführung seiner Filterfunktion eingeführte Verzögerung so verringert sein, dass sie eine vernachlässigbare Große ist. D. h., die Zeit, zu der das Signal S1 zuerst dem Filter F vorgestellt wird, und die Zeit, wenn die Ergebnisse der Filterung durch das Filter F des ersten ankommenden Abschnitts des Signals S1 am Ausgang des Filters S2 erhältlich ist, müssen im wesentlichen gleich sein. Die Verzögerung zwischen diesen zwei Ereignissen wird im folgenden „Totzeit" (latency) des Filtersystems genannt.
  • Wenn das Filter F in digitaler Art ausgestaltet ist, mag es zuerst notwendig sein, das ankommende Signal S1 (über einen Analog/Digital-Wandler) abzutasten, dann die Filterfunktion durchzuführen und dann das Digitalsignal zurück in ein Analogsignal (mittels eines Digital/Analog-Wandlers) umzuwandeln. Die Abtastprozesse entnehmen Abtastwerte des ankommenden Signals bei diskreten Zeitintervallen ti. Die Zeit zwischen jeder Abtastung ist üblicherweise gleich.
  • Die Abtastverarbeitung selbst führt endliche Verzögerung in das System ein. Zusätzlich, wenn das Filter mittels einer der gängigen Schnell-Faltungs-Techniken (fast convoluten techniques) implementiert ist, wird eine Verzögerung eingeführt, die, allgemein gesprochen, proportional der Genauigkeit (oder Länge) des Filters ist.
  • Mathematisch gesprochen ist der Filtervorgang (d. h. der Schritt des Auferlegens der Filtercharakteristika auf das ankommende Signal S1 zum Erzeugen des Ausgabesignals S2) als „Faltung" (convolution) in der Zeitdomäne bekannt. Der Schritt der Faltung in der Zeitdomäne wird zu einem Multipliziervorgang in der Frequenzdomäne. D. h., wenn das ankommende Signal S1 zunächst abgetastet wird, anschließend in die Frequenzdomäne Fourier transformiert wird, wird die Frequenzantwort des Filters F1 mit der Fourier-Transformation des Signals S1 vektor-multipliziert. Das Signal wird dann invers Fourier transformiert bzw. rücktransformiert, um eine Abtastwert-Ausgabe (convolved output) zu erzeugen (der nach Bedarf in eine analoge Form zurückgewandelt werden kann).
  • 2 zeigt die Art einer Faltungsvorrichtung (convolver, auch als Finites Impulsantwortfilter (FIR-Filter) bekannt), wobei deren Impulsantwort {ak} gemessen wird (für einen Faltungsvorgang bei einer Behandlung von Abtastdaten). Für ein physikalisches Filter ist ak Null für alle k < 0. Für eine allgemeine Eingabesequenz {xk}, wird die Filterausgabe {yk} festgelegt als:
    Figure 00030001
  • Ein lineares Filter wie dieses hat eine messbare Totzeit d, die festgelegt ist als: αd ≠ 0, und αk = 0 für alle k < d (2)
  • Anders gesagt, ad ist der erste von Null verschiedene Wert in der Ausgabesequenz. Die Totzeit d ist in einem physikalischen System nie negativ. In ähnlicher Art können wir für ein Filter mit finiter Pulsantwort bestimmen, welcher der letzte von Null verschiedene Wert in der Ausgabesequenz ist. Dies wird uns die Länge der Impulsantworten geben. Wir werden die Länge lτ nennen, denn dies heißt, dass ad+t–l der letzte von Null verschiedene Wert in der Ausgabesequenz ist (siehe 3).
  • Typische Schemata zum Implementieren von FIR-Filtern fallen in zwei Kategorien:
    • 1. Zeitdomänenfilter, die Ausgabeabtastwerte berechnen, wenn jeweils ein neuer Eingabeabtastwert ankommt, ermöglicht so geringe Totzeiten wie d = 0 oder d = 1. Typische Filterlängen (l) sind kurz.
    • 2. Filter mit schneller Faltung (fast convolution filters), die eine Anzahl von Ausgabeabtastwerten in einem Block berechnen. Typische Filterlängen (l) können sehr lang sein. Die kürzeste erzielbare Totzeit hängt üblicherweise von der Filterlänge ab, d ≈ l ÷ K ode K ≈ l ÷ d (3)wobei K ein Maß für die Effizienz des jeweils verwendeten Algorithmus ist. Ein typischer Wert von K für einen herkömmlichen verwendeten Algorithmus mit schneller Faltung, wie er in den 4 und 5 gezeigt ist, beträgt 0,5.
  • WO-8803341 offenbart eine Echo-Löschvorrichtung, bei der ein Eingabesignal in Blöcke unterteilt wird, und hinsichtlich der verminderten Anzahl von Abtastwerten in jedem Block wird eine schnelle Fourier-Transformation und ein digitales Filtern vom FIR-Typ durchgeführt, um die Prozessverzögerung zu verringern, während die Anzahl der Berechnungen verringert wird. Insbesondere implementierte die Echo-Löschvorrichtung aus WO-88/03341 ein Verfahren mit infiniter Impulsantwortfilterung (FIR-Filterung) eines Eingabesignals zum Erzeugen eines gefilterten Ausgabesignals, das ein Echoauslöschsignal ist. Das Verfahren verwendet den Fehler zwischen einem von dem Eingabesignal hergeleiteten Echosignal, welches durch einen Echoweg läuft, und dem gefilterten Ausgabesignal, um adaptiv eine Filtereigenschaft durch Steuern (die in den Größen von Zeitdomänen-Impulsantwortwerten spezifiziert ist), bei seiner Abschätzung der Impulsantwort auf einem Echoweg ist. Das Verfahren umfasst die Schritte:
    • (a) Unterteilen des Eingangssignals in überlappende, aufeinanderfolgende Eingangsblöcke mit 2N-Abtastwerten, wobei jeder aufeinanderfolgende Eingangsblock um N-Abtastwerte relativ zu dem vorangehenden Eingangsblock verzögert ist;
    • (b) Auffrischen aller k-Frequenzdomänenkoeffizienten für Blöcke mit dem Fehler durch:
    • (i) Nehmen von N Werten des Fehlers;
    • (ii) Hinzufügen von N Nullwerten zu den N Werten des Fehlers, um einen Block aus 2N mit nullversetzten Werten (zero-padded values) zu bilden;
    • (iii) Berechnen einer Frequenzdomänentransformation des Blockes mit den 2N nullversetzten Werten, um 2N aufgefrischte Fehlerkoeffizienten zu bilden; und
    • (iv) Benutzen der aufgefrischten Fehlerkoeffizienten zum Auffrischen des entsprechenden der k Frequenzdomänenkoeffizientenblöcke; und
    • (c) für jeden Eingangsblock:
    • (i) Berechnen einer Frequenzdomänentransformation des Eingangsblocks zum Ausbilden eines entsprechenden Frequenzdomäneneingangsblocks;
    • (ii) Kombinieren der jüngsten k aufeinanderfolgenden Frequenzdomäneneingangsblöcke mit k Frequenzdomänenkoeffizientenblöcke zum Erzeugen von k frequenzdomänengefilterten Blöcken;
    • (iii) Zusammenaddieren der k frequenzdomänengefilterten Blöcke zum Ausbilden eines einzelnen Frequenzdomänenausgabeblocks;
    • (iv) Berechnen einer inversen öder Rück-Transformation, die das Inverse der Frequenzdomänentransformation ist, des Frequenzdomänenausgabeblocks zum Erzeugen eines Zeitdomänenausgabeblocks;
    • (v) Verwerfen der ersten N Abtastwerte des Zeitdomänenausgabeblocks, um einen neuen Satz von N Ausgabeabtastwerten zu erzeugen; und
    • (vi) Ausgeben der N Ausgabewerte als ein Abschnitt des gefilterten Signals.
  • Es ist eine Aufgabe der bevorzugtesten Ausführungsform der Erfindung, ein Verfahren und eine Vorrichtung bereitzustellen, um eine relativ lange Faltung für digital abgetastete Daten bereitzustellen, um so eine relativ hohe Effizienz für eine gegebene Länge bereitzustellen, besser, als sie herkömmlich mit anderen Verfahren erzeugt wird.
  • In dieser Beschreibung wird angenommen, dass die Filtercharakteristika in etwa linear modelliert werden können, so dass die Prinzipien der Überlagerung angewendet werden können.
  • Dementsprechend wird erfindungsgemäß ein Verfahren für ein finites Impulsantwortfiltern (FIR-Filtern) eines Eingangssignals mit einem vorgegebenen Abschnitt einer gewünschten Zeitdomänenimpulsantwort bereitgestellt, die eine Filtercharakteristik darstellt und hinsichtlich der Größen der Zeitdomänenimpulsantwortwerte festgelegt ist, um so ein gefiltertes Ausgabesignal zu erzeugen, wobei das Verfahren die Schritte umfasst:
    • (a) Aufteilen des Eingangssignal in überlappende aufeinanderfolgende Eingangsblöcke von P Abtastungen, wobei jeder aufeinanderfolgende Eingangsblock um N Abtastungen bezüglich des vorherigen Eingangsblocks verzögert ist, wobei P ≤ 2N – 1 ist;
    • (b) Erzeugen von den wesentlichen M Frequenzdomänenkoeffizientenblöcken durch:
    • (i) Aufteilen des vorbestimmten Teils des gewünschten Zeitdomänenimpulses in eine Reihe von Segmenten;
    • (ii) Berechnen einer Frequenzdomänen-Transformation von jedem Segment, um einen entsprechenden Block der M Frequenzdomänen-Koeffizientenblöcke zu bilden; und
    • (c) für jeden Eingangsblock:
    • (i) Berechnen einer Frequenzdomänentransformierten des Eingangsblocks, um einen entsprechenden Frequenzdomäneneingangsblock zu bilden;
    • (ii) Zusammenfassen der letzten M aufeinanderfolgenden Frequenzdomäneneingangsblöcke mit M Frequenzdomänenkoeffizientenblöcke, um M frequenzdomänengefilterte Blöcke zu erzeugen;
    • (iii) Aufsummieren der M frequenzdomänengefilterten Blöcke, um einen einzigen Frequenzdomänenausgangsblock zu bilden;
    • (iv) Berechnen einer Inversentransformation oder Rücktransformierten, die die Umkehrung der Frequenzdomänen-Transformierten des Frequenzdomänenausgangsblocks ist, um einen Zeitdomänenausgangsblock zu bilden;
    • (v) Verwerfen vorbestimmter Teile des Zeitdomänen-Ausgangsblocks, um einen neuen Satz von N-Ausgangsabtastungen zu bilden; und
    • (vi) Ausgeben der N Ausgabeabtastungen als einen Teil des Ausgabesignals.
  • Ausführungsformen der Erfindung werden nun unter Bezugnahme auf die beiliegenden Zeichnungen beschrieben, in denen zeigt/zeigen:
  • 1 ein verallgemeinertes Blockdiagramm eines Filtervorgangs in der Frequenzdomäne;
  • 2 die grundlegende Technik, die für ein Faltungsfilter verwendet wird;
  • 3 die Totzeit und Länge des Filters aus 2;
  • 4 ein Flussdiagramm von einem Verfahren zur Verarbeitung von Abtastdaten aus dem Stand der Technik mittels eines Fast-Fourier-Transformationsansatzes;
  • 5 einen weiteren beispielhaften Ansatz nach 4; 6, 7, 8 ein Verfahren zur Filterung entsprechend einer verallgemeinerten ersten erfindungsgemäßen Ausführungsform, wobei gegenüber dem Ansatz aus 4 ein relativ hoher Effizienzfaktor K erreicht werden kann;
  • 9 ein Diagramm einer Ausführungsform der Erfindung, die das Verfahren aus 8 anwendet, wobei die Anzahl der Unterfilter gleich 6 ist;
  • 10 ein Blockdiagramm eines aufsummierten Filters, der in vorteilhafter Weise zum Teil mit dem Filter aus 8 ausgestaltet sein kann;
  • 11 ein Blockdiagramm eines zusammengefügten Filters aus 10, mit Unterfiltern, von denen einige das Verfahren aus 8 implementieren;
  • 12 die Art der Verarbeitung eines Eingabesignals in einem Beispiel der Filteranordnung aus 10, welche fünf Filterabschnitte verwendet;
  • 13 die Art der Auswahl der Filtercharakteristika des Filters aus 12;
  • 14 ein Blockdiagramm einer alternativen Implementation des zusammenfassenden Filters aus 8;
  • 15 einen typischen Verfahrensablauf einer (bekannten) Algorithmusimplementation mit schneller Faltung, die für die Filter F2 bis F5 aus 12 verwendbar ist;
  • 16 eine DFT-Vorrichtung, die die Basis für die Erläuterung eines Fourier-Transformationsalgorithmus ist, der zur Verarbeitung von Echtzeichen folgend aus reellen Zahlen optimiert ist; und
  • 17 ein Blockdiagramm einer weiteren Ausführungsform der Erfindung, bei der das aufaddierte Filter aus 10 mit einer modifizierten diskreten Fourier-Transformation implementiert ist.
  • Detaillierte Beschreibung der bevorzugten Ausführungsformen der Erfindung
  • 1. Hocheffizientes Filter
  • 4 zeigt den Zeitverlauf eines typischen Algorithmus mit schneller Faltung. Dies ist ein Algorithmus mit „Overlap-Discard", der mittels Fast-Fourier-Transformation (FFT) implementier ist. 2M Wörter von Eingabedaten, die während dieser Zeitsegmente a und b ankommen, werden vollständig während des Zeitsegments c mit einer Vorwärts-Fourier-Transformation, einer Vektormultiplikation und einer Rück-FFT bearbeitet. Die resultierenden M Wörter an Ausgabedaten werden zwischengespeichert, um während des Zeitsegments d an dem Ausgang bereit zu sein. Die FFT und die inverse FFT (IFFT) werden nur verwendet, um die Daten zwischen der Zeitdomäne und der Frequenzdomäne zu transformieren. Der tatsächliche Filtervorgang wird in dem Vektormultiplikationsvorgang durchgeführt, der tatsächlich nur einen kleinen Bruchteil der gesamten Computerzeit benötigt. Somit sind die relevanten Parameter für das Filtern in 4:
    Länge = M;
    Totzeit = 2 M; und
    damit K = 0,5.
  • Unter Bezug auf die 6, 7 und 8 wird die Logik hinter dem Verfahren und der Vorrichtung entsprechend der derzeit bevorzugten erfindungsgemäßen Ausführungsform hergeleitet.
  • 6 zeigt ein Filter der Länge ML, wobei die Filtercharakteristika für jedes Teil- oder Komponentenfilter F1, F2, ... Fn voneinander getrennte, diskrete Teilabschnitte der beschriebenen Filtercharakteristik der gesamten Filteraordnung sind. Die Verzögerung L, 2L... (M – 1)L werden auferlegt, um nach der Addition eine Ausgabe Fk äquivalent zu jener zu erreichen, die erhalten wird, wenn Eingangsabtasterte xk durch ein Filter laufen, wobei das Filter die Filtercharakteristik hat, von der die Filtercharakteristikabschnitte der Filter F1, F2... abgeleitet sind. 7 wird hergeleitet durch Implementieren der Filter F1, F2... aus 6 mit dem Fourier-Transformationsalgorithmus aus 5.
  • In 8 ermöglicht die Neuorganisation des Filters aus 7, so dass nur ein schnelles Fourier-Transformationsmodul 11 und ein inverses schnelles Fourier-Transformationsmodul 12 verwendet werden. Es ist implizit, dass das schnelle Fourier-Transformationsmodul ausgestaltet ist, um einen Block von Abtastwerten vom Eingang xk gleich dem Doppelten der Länge jedes Filters, Filter 1, Filter 2, Filter 3... zu bearbeiten, die in 8 gezeigt sind.
  • Wie vorangehend dargelegt wurde, wird die Filtercharakteristik (Impulsantwort) jedes aufeinanderfolgenden Filters F1, F2, ... genommen, und sie entspricht aufeinanderfolgenden entsprechenden Abschnitten von der Impulsantwort, die für das gesamte Filtermodul gewünscht ist.
  • Die Zeitverzögerung L, bevor jeder fast-fourier-transformierte Block von Daten durch das nächste Filter läuft, ist gleich der Hälfte der Abtastlänge, die ursprünglich von dem schnellen Fourier-Transformationsmodul verarbeitet wurde.
  • 9 zeigt die Berechnung eines Blocks von Ausgabedaten im ähnlichen Stil wie 4, aber mit dem in den 6, 7 und 8 hergeleiteten, hinsichtlich der Effizienz bezüglich der Länge/Totzeit und der Verzögerung verbesserten Verfahren. Das Verfahren aus 5, wie es in 9 verwendet wird, wird im Anschluss zusammengefasst.
  • Während des Zeitabschnitts oder -segments h werden die während der Zeitsegmente f und g angekommenen Eingabedaten der schnellen Fast-Fourier-Transformation unterzogen und der resultierende Block von Frequenzdomänen-Eingabedaten wird für die weitere Verwendung gespeichert. Wir berechnen dann den nächsten Block der Frequenzdomänen-Ausgabedaten, der die inverse Fourier-Transformierte ist, und präsentieren diese Ausgabe während des Zeitsegments i. Der alte Ansatz zur Berechnung der schnellen Faltung nahm nur den letzten Block von Frequenzdomänen-Eingabedaten und multiplizierte ihn mit einem Vektor, der die gewünschte Filterantwort darstellt, um die neuen Frequenzdomänen-Ausgabedaten zu erhalten. Das Verfahren mit verbesserter Länge/Totzeit-Effizienz nimmt eine Anzahl von vorangehenden Frequenzdomänen-Eingabedatenblöcke zur Berechnung der neuen Frequenzdomänen-Ausgabedatenblöcke, wie es in 9 gezeigt ist. Bei diesem Beispiel werden Blöcke gefilterter Daten als Filter A, Filter B, ... Filter F bezeichnet. In diesem Beispiel ist das implementierte Filter sechsmal so lang wie das Filter, das in 4 implementiert ist, aber es hat keine größere Totzeit. Durch Vergleich mit 4 ergeben sich die relevanten Parameter des Filters aus 9 als:
    Länge = 6 M,
    Totzeit = 2 M,
    und daher K = 3.
  • 8 fasst die Logik hinter der Implementierung der Ausführungsform aus 9 zusammen.
  • Insbesondere ist anzumerken, dass die fortschreitenden Verzögerungen L, 2L, 3L, ... (M – 1)L aus 8 in 9 erzielt werden, indem verzögerte überlappende Gruppierungen aufeinanderfolgender Abtastwerte a, b, c, d, ... genommen werden.
  • Die oben beschriebene Filteranordnung kann in vorteilhafter Weise bei einer Filteranordnung mit kurzer Totzeit verwendet werden, wie sie in 10 gezeigt ist.
  • 10 zeigt eine Architektur zur Implementierung eines FIR-Filters durch Zusammenfügen von N Filtern. Wenn jedes Filter gekennzeichnet ist durch: Filter Fi, Totzeit di, Länge li, dann sind die N Filter im allgemeinen so gewählt, dass ihre Totzeiten in aufsteigender Reihenfolge geordnet sind, und dass des weiteren di+1 = di + li, d. h., dass der erste von Null verschiedene Wert der Impulsantwort des Filters Fi+1 unmittelbar nach dem letzten von Null verschiedenen Wert der Impulsantwort des Filters Fi kommt. Somit führt die Aufsummierung der Filterergebnisse zu einem einzelnen langen Filter, dessen Impulsantwort die Summe der Impulsantworten der N Teilfilter ist.
  • Die wichtige Eigenschaft dieses Filters ist, dass die Länge/Totzeit-Effizienz K höher ist, als jede der Teilfilter-Effizienzen.
  • D. h., das Filter aus 10 verwendet die Techniken des Zusammenfügens von mehreren Filtern, um ein neues Filter zu bilden, das so lang wie die Summe der Teilfilterlängen ist, und dessen Totzeit kürzer als die Totzeit des Teilfilters mit kürzester Totzeit ist.
  • 11 zeigt eine Implementation des Filters 10 mit kurzer Totzeit aus 10, bei dem drei Filtermodule F1, F2, F3 vorhanden sind. Das erste Filtermodul F1 ist Zeitdomänenfilter mit kurzer Totzeit (d = 0), während die Filter F2 und F3 entsprechend der in Bezug auf 8 und 2 beschriebenen Ausführungsform implementiert sind.
  • 2. FIR-Filter mit kurzer Totzeit
  • Wie es vorangehend beschrieben wurde, zeigt 10 eine Architektur zum Implementieren eines FIR-Filters durch Zusammenfügen von N Filter. Wenn ein solches Filter wie folgt charakterisiert wird: Filter Fi, Totzeit di, Länge li, dann werden die N Filter im allgemeinen so gewählt, dass ihre Totzeiten in aufsteigender Reihenfolge geordnet sind, und dass des weiteren di+1 = di + li gilt. D. h., der erste von Null verschiedene Wert in der Impulsantwort des Filters Fi+1 kommt unmittelbar nach dem letzten von Null verschiedenen Wert in der Impulsantwort des Filters Fi. Somit führt die Summation der Filterergebnisse zu einem einzelnen langen Filter mit einer Impulsantwort, die die Summe der Impulsantworten der N Teilfilter ist.
  • Die wichtige Eigenschaft des Filters ist die Längen-/Totzeit-Effizienz K, die höher als jede der Teilfilter-Effizienzen ist.
  • D. h., das Filter aus 10 und 12 nutzt die Technik des Zusammenfügens mehrerer Filter zur Ausbildung eines neuen Filters, das so lang wie die Summe der Teilfilterlängen ist, und dessen Totzeit so kurz wie die Totzeit des Teilfilters mit kürzester Totzeit ist.
  • Insbesondere verwendet die Teilfilteranordnung aus 12 die Technik einer Kombination eines ersten Zeitdomänenfilters (kurze Totzeit) mit zusätzlichem schnellen Faltungsfiltern (langer Totzeit) zur Maximierung der Filterlänge, während die Totzeit minimiert wird. Diese Technik wird implementiert, indem N Filter F1, F2, ... Fn zusammengefügt werden, wobei F1 ein Filter mit sehr kurzer Totzeit ist, der mit Zeitdomänentechniken implementiert ist, und wobei die anderen Filter Fi jeweils mit schneller Faltungstechnik implementiert sind. Genauer gesagt, wendet die Anordnung die Technik an, bei der N – 1 Filter mit schneller Faltung Fi zu einer Reihe von Filtern zusammengesetzt werden, wobei jeder eine größere Filterlänge als sein Vorgänger hat, und somit eine größere Totzeit hat, aber wobei nach wie vor die Eigenschaft bewahrt wird, dass dd+1 = di + li. Dies stellt sicher dass das Filter F, das aufgebaut ist, indem N Teilfilter zusammengesetzt sind, eine Impulsantwort ohne „Löcher" hat.
  • Insbesondere in 12 umfasst das zusammengesetzte Filter F fünf Filterabschnitte F1, F2, F3, F4 und F5. Die Impulsantwort ak des zusammengesetzten Filters F ist oben in 12 gezeigt und hat eine Gesamtabtastlänge von 1024 Abtastwerten.
  • Das Filter F1 hat eine Impulsantwort mit den ersten 64 Abtastwerten der Impulsantwort ak. D. h., das Filter hat eine Länge von 64 Abtastwerten. Das Filter, wie es aufgebaut ist, hat Filter mit kurzer Totzeit (wie hier beispielsweise in dem Motorola-Dokument APR 7/D in Bezug auf die DSP 56000-Reihe integrierte Schaltung erwähnt ist). Das Filter hat eine effektive Totzeit von Null.
  • Die darauffolgenden Filter F2, F3, F4 und F5 sind mit Techniken der digitalen schnellen Faltung implementiert. 15 zeigt den grundlegenden Algorithmus einer solchen Technik, was umfasst, Durchführen einer schnellen Fourier-Transformation der ankommenden Abtastdaten, Multiplizieren der transformierten Datenabtastwerte mit der Impulsantwort des Filters, Wandeln der schnellen Fourier-Transformation unterzogenen Abtastwerte zurück in die Zeitdomäne mit einer inversen schnellen Fourier-Transformation und dann Ausgeben der Daten. Ein Überlapp/Verwerfungs-Verfahren wird verwendet, wobei nur ein Teil der Ausgabedaten verwendet wird.
  • Die Länge und die Totzeit der zusätzlichen Filter F2, F3, F4 und F5 wird entsprechend der Regel ausgewählt, die diagrammartig in 13 dargestellt ist, wobei jeder Filterabschnitt eine Totzeit gleich der Summe der Länge und der Totzeit des unmittelbar vorangehenden Filterabschnitts hat.
  • In diesem Fall ist das Endergebnis ein Filter mit einer Gesamtlänge von 1024 Abtastwerten und einer Totzeit gleich 0. 14 zeigt eine Variation des Filters aus 8, wobei eine Verzögerung eingeführt ist, nachdem der Filteralgorithmus in der Frequenzdomäne angewendet wird.
  • 3. Optimiertes Real-String-Handling
  • In 16 ist ein allgemeines Verfahren zur Frequenzanalyse über diskrete Fourier-Transformation (im folgenden DFT bezeichnet), das effizient durch eine elektronische Vorrichtung mit einem schnellen Fourier-Transformationsalgorithmus implementiert werden kann (im folgenden als FFT bezeichnet).
  • Die DFT ist formuliert, um effektiv betrieben zu werden, wenn die Eingabedaten und Ausgabedaten beide komplex sind (mit einer reellen und einer imaginären Komponente). Wenn die Dateneingabe in das DFT reell ist, enthalten die Ausgabedaten von dem Betrieb eine gewisse Redundanz, die anzeigt, dass eine Verarbeitung, die zu diesen Ausgabedaten führt, unnötig war. Bei dieser Ausführungsform wird eine neue Transformation zum Betreiben bezüglich reeller Zahlen in digitaler Umgebung beschrieben, die viele der gleichen Anwendungen hat, wie die DFT, aber ohne die Nachteile des DFTs zum Betrieb mit reellen Zahlen. Für den Zweck dieses Dokuments wird der hier beschriebene Algorithmus als modifizierte diskrete Fourier- Transformation (MDFT) bezeichnet. Die DFT wird entsprechend der folgenden Gleichung berechnet.
  • Figure 00150001
  • Wenn die Eingabedaten x(k) reell sind (d. h., dass keine imaginären Komponenten vorhanden sind), haben die Ausgabedaten X(n) die folgenden Eigenschaften:
    Figure 00150002
    X(n) = [X(N – n)]* für 0 < n < N/2wobei der * Operator verwendet wird, um die komplexe Konjugation zu bezeichnen. D. h., der imaginäre Teil von X(0), der imaginäre Teil von X(N/2) und aller {X(n) : N/2 < n <N} sind redundant. Der Prozess zum Extrahieren nur der nötigen Information aus der DFT-Ausgabe ist daher nicht trivial.
  • Eine alternative Transformation ist unten gezeigt:
    Figure 00150003
  • Dies ist gleich der Standard-DFT mit der Ausnahme, dass der Ausgabevektor Y(n) die Signale von Frequenzkomponenten bei unterschiedlichen Frequenzen des DFT darstellt. Der Ausgabevektor Y(n) hat Redundanz (genau wie die DFT-Ausgabe X(n)), mit der Ausnahme, dass der redundante Teil der Daten einfacher extrahiert wird aus Y(n) als aus X(n). Die Redundante in Y(n), die sich ergibt, wenn x(k) reell ist, kann wie folgt ausgedrückt werden: Y(n) = [Y(N – 1 – n)]* (4)
  • Das schließt ein, dass die zweite Hälfte des Vektors Y(n) einfach das komplex konjugierte der ersten Hälfte ist, so dass nur die erste Hälfte des Ausgabevektors benötigt wird, um alle Informationen zu erhalten, wenn x(k) reell ist.
  • Eine alternative Betrachtungsweise der obigen Gleichung ist, dass alle ungeraden Elemente des Vektors einfach komplex konjugiert der geraden Elemente sind:
    Figure 00160001
  • D. h., dass wir nur die geraden Elemente von Y(n) berechnen müssen, um alle benötigte Information modifizierten DFT für das reelle Signal x(k) zu erhalten. Wir können das Array Z(p) als das Array bezeichnen, das die geraden Elemente von Y(n) enthält, und zwar wie folgt: Z(P) = Y(2P) für 0 ≤ p < N/2 (6)
  • Beruhend auf der vorangehenden Gleichung für Y(n) erhalten wir:
    Figure 00160002
    die nach einiger Umwandlung wird zu
    Figure 00160003
    wenn wir einen komplexen Vektor der Länge N/2 aus dem reellen Vektor der Länge N erzeugen, dann gilt:
    Figure 00160004
    wobei man sehen kann, dass Z(p) = DFT(N/2)[xl(l)] (10)
  • D. h., wir haben den Vektor Z(p) mit einer DFT der Länge N/2 berechnet.
  • Wir sagen, dass Z(p) = MDFT[x(k)], (wobei MDFT den modifizierten diskreten Fourier-Transformations-Operator anzeigt). Die Prozedur, der zur Berechnung von Z(p) zu folgen ist, ist dann wie folgt:
    • 1. Nehmen des Eingangsvektors x(k) der Länge N, wobei jedes Element von x(k) reell ist.
    • 2. Erzeugen des Vektors x'(l), einem komplexen Vektor der Länge N/2 durch das Verfahren aus Gleichung 9, wie es oben dargestellt ist.
    • 3. Berechnen der N/2-Punkt-DFT von x'(l), um den komplexen Ergebnisvektor Z(p) der Länge N/2 zu erhalten.
  • Das MDFT hat viele Eigenschaften, die es nützlich bei ähnlichen Anwendungen wie das DFT machen. Zunächst kann es verwendet werden, um die lineare Faltung der gleichen Art wie das DFT durchzuführen. Zweitens hat es eine inverse Transformation, die sehr ähnlich der Vorwärts-Transformation aussieht. x'(k) = IDFT(N/2)[Z(p)] (11)wobei IDFT die N/2-Punkt-inversdiskrete Fourier-Transformation anzeigt.
  • Der Algorithmus kann in einer elektronischen Vorrichtung implementiert sein, der ein Satz von N-reellen Zahlen zugeführt wird, und wobei N/2 komplexe Ausgabezahlen erzeugt werden, die die MDFT-Eingabedaten darstellen. Die Vorrichtung verwendet digitale arithmetische Elemente zum Durchführen jeder der arithmetischen Operationen (oder Rechenschritte), wie es im vorangehenden Text dargestellt wurde.
  • Eine weitere Ausführungsform der Erfindung ist ein Paar von Vorrichtungen, wobei die erste eine MDFT berechnet, wie es vorangehend beschrieben wurde, und die zweite eine inverse MDFT berechnet, wobei die vorangehend in diesem Dokument beschriebenen Prozeduren verwendet werden. Durch Durchlassen überlappender Blöcke von Daten zu einem kontinuierlichen Strom von Eingabedaten durch den MDFT-Computer, dann Multiplizieren der Z(p)-Koeffizienten durch geeignete Filterkoeffizienten, dann Durchlassen der sich ergebenden Daten durch den Invers-MDFT-Computer und dann Rekombinieren der Segmente der Ausgabedaten in geeigneter Weise, kann ein Prozessor für die modifizierte schnelle Faltung aufgebaut werden.
  • Wie vorangehend beschrieben wurde, wurde eine Modifikation der DFT beschrieben, die diese bei einer Anzahl von Anwendungen nützlicher macht, insbesondere, aber ohne Beschränkung hierauf, bei Echtzeit-Filteranwendungen, die vorangehend beschrieben wurde. Alle diese Erweiterungen für die DFT können auch auf den FFT-Algorithmus angewendet werden, oder auf andere schnelle Implementationen der DFT.
  • Beispiel 1:
  • 17 zeigt eine Implementation eines zusammengesetzten Filters aus 11, wobei die modifizierte diskrete Fourier-Transformation (MDFT), die unmittelbar vorher beschrieben wurde, für den Zweck der Umwandlung des Datenstroms in die Frequenzdomäne und die entsprechende inversmodifizierte diskrete Fourier-Transformation (IMDFT) angewendet werden, folgend auf die Anmeldung des Filteralgorithmus und vor dem Verwerfen oder der Umwandlung aus der Frequenzdomäne.
  • Im Filter F2 in 17 nimmt die MDFT 64 reelle Wörter als Eingabe und erzeugt 32 komplexe Wörter als Ausgabe. Die IMDFT nimmt 32 komplexe Wörter als Eingabe und erzeugt 64 reelle Wörter als Ausgabe.
  • Im Filter F3 aus 17 nimmt die MDFT 256 reelle Wörter als Eingabe und erzeugt 128 komplexe Wörter als Ausgabe. Die IMDFT nimmt 128 komplexe Wörter als Eingabe und erzeugt 256 reelle Wörter als Ausgabe.
  • Das Filter aus 17 ist mit einem Motorola DSP 56001-Prozessor aufgebaut, der Software (bootfähig von einem ROM oder einem anderen Host-Computer) umfasst, um den Algorithmus zu implementieren. Die Verzögerungselemente sind mit einer Bank externer Speicherchips aufgebaut, die drei MCM 6206 Speicherchips enthalten.
  • Die Dateneingabe und Ausgabe zwischen der analogen und digitalen Domänen wird durch einen ADC- und einen DAC-Chip, einen Kristalloszillator CS 4216, durchgeführt, wobei eine Kommunikation über den synchronen, seriellen Kommunikationsport des DSP 56001 erfolgt.
  • Industrielle Anwendbarkeit
  • Ausführungsformen der Erfindung werden auf digitale Filter, die als Software, Hardware oder als Kombination beider ausgeführt sind, für Anwendungen bei Audiofiltervorgängen oder elektronischer Modellierung von akustischen Systemeigenschaften angewendet. Das Verfahren ist weit anwendbar auf dem Gebiet der Signalverarbeitung und kann in vorteilhafter Weise beispielsweise verwendet werden bei: adaptiver Filterung; Audio-Reveberation-Verarbeitung; adaptive Echo-Löschung; Raumverarbeitung; Virtuel-Reality-Audio; Korrelationsradar; Radarpulskompression; Dekonvolution; seismische Analyse; Telekommunikation; Mustererkennung; Robotronik; dreidimensionaler akustischer Modellierung; Audio-Post-Production (einschließlich Sprachverarbeitung; Auto-Reverberant-Matching); Audioentzerrung; Kompression; Sonar; Ultraschall; sichern Kommunikationssystemen; digitalem Audio-Rundfunk; akustischen Analysen; Überwachung; Rauschlöschung; Echolöschung.

Claims (14)

  1. Verfahren zum Filtern eines Eingangssignals mit finiter Impulsantwort (FIR) mittels eines vorbestimmten Teils einer gewünschten Zeitdomänen-Impulsantwort, die eine Filtercharakteristik darstellt und hinsichtlich Zeitdomänen-Impulsantwortwerten spezifiziert ist, um ein gefiltertes Ausgangssignal zu erzeugen, wobei das Verfahren folgende Schritte umfasst: (a) Aufteilen des Eingangssignals in überlappende aufeinanderfolgende Eingangsblöcke von P Abtastungen, wobei jeder aufeinanderfolgende Eingangsblock um N Abtastungen bezüglich des vorhergehenden Eingangsblocks verzögert wird, wobei P > 2N – 1 ist; (b) Erzeugen von im wesentlichen M Frequenzdomänen-Koeffizientenblöcken durch: (i) Aufteilen des vorbestimmten Teils des gewünschten Zeitdomänen-Impulses in eine Reihe von Segmenten; (ii) Berechnen einer Frequenzdomänen-Transformation von jedem Segment, um einen entsprechenden Block der M Frequenzdomänen-Koeffizientenblöcke zu bilden; und (c) für jeden Eingangsblock: (i) Berechnen einer Frequenzdomänen-Transformierten des Eingangsblocks, um einen entsprechenden Frequenzdomänen-Eingangsblock zu bilden; (ii) Zusammenfassen des letzten M aufeinander folgenden Frequenzdomänen-Eingangsblöcke mit M Frequenzdomänen-Koeffizientenblöcken, um M Frequenzdomänengefilterte Blöcke zu erzeugen; (iii) Aufsummieren der M Frequenzdomänengefilterten Blöcke, um einen einzigen Frequenzdomänen-Ausgangsblock zu bilden; (iv) Berechnen einer Rücktransformierten, die die Umkehrung der Frequenzdomänen-Transformierten des Frequenzdomänen-Ausgangsblocks ist, um einen Zeitdomänen-Ausgangsblock zu bilden; (v) Verwerfen vorbestimmter Teile des Zeitdomänen-Ausgangsblocks, um einen neuen Satz von N Ausgangsabtastungen zu bilden; und (vi) Ausgeben der N Ausgangsabtastungen als einen Teil des Ausgangssignals.
  2. Verfahren gemäß Anspruch 1, bei dem P gleich 2N ist.
  3. Verfahren gemäß einem der vorhergehenden Ansprüche, bei dem mindestens eine der Frequenzdomänen-Transformation und der Frequenzdomänen-Transformierten eine Fast-Fourier-Transformierte mit N reellen Punkten umfasst, die N komplexe Werte in dem Frequenzdomänen-Koeffizientenblock erzeugt.
  4. Verfahren gemäß Anspruch 3, bei dem die Rücktransformierte eine Fast-Fourier-Rücktransformierte mit N komplexen Werte umfasst, die 2N Punkte reeller Werte in dem Ausgangsblock erzeugt.
  5. Verfahren gemäß einem der vorhergehenden Ansprüche, bei dem der Schritt des Zusammenfassens der Frequenzdomänen-Eingangsblöcke eine elementweise Multiplikation der Frequenzdomänen-Eingangsblöcke umfasst.
  6. Verfahren gemäß einem der vorhergehenden Ansprüche, bei dem das Aufsummieren der Frequenzdomänen-gefilterten Blöcke eine elementweise Addition der Blöcke umfasst.
  7. Verfahren gemäß einem der vorhergehenden Ansprüche, bei dem das Zusammenfassen und das Aufsummieren in einer einzigen Operation durchgeführt werden, wobei die aufeinander folgenden Ergebnisse der Zusammenfassungsoperationen in dem Frequenzdomänen-Ausgangsblock akumuliert werden.
  8. Verfahren gemäß einem der vorhergehenden Ansprüche, bei dem der Zeitdomänen-Ausgangsblock eine Länge von 0,5 P aufweist.
  9. Verfahren gemäß einem der vorhergehenden Ansprüche, bei dem der Verwerfungsschritt (v) ein Verwerfen von P – N Abtastungen umfasst.
  10. Verfahren gemäß einem der vorhergehenden Ansprüche, bei dem der vorbestimmte Teil einer gewünschten Impulsantwort M mal N Zeitdomänenwerte h(k) umfasst, wobei 0 < k < NM und der m-te Block (0 < m < M) von Werten aus den N Abtastpunkten h(mN) bis h (mN + N – 1) zusammengesetzt ist.
  11. Verfahren gemäß Anspruch 1, bei dem das Verfahren parallel auf eine Reihe vorbestimmter Teile einer gewünschten Gesamtimpulsantwort angewendet wird, die eine Filtercharakteristik darstellt und hinsichtlich Zeitdomänen-Antwortwerten spezifiziert ist, wobei die Ausgaben jeder parallelen Anwendung des Verfahrens zusammengefasst werden, um eine Gesamtausgabe zu bilden, die ein Filtern des Eingangssignals mit der gewünschten Gesamtimpulsantwort umfasst.
  12. Verfahren gemäß Anspruch 11, bei dem die Reihe von vorbestimmten Teilen unterschiedliche Längen haben.
  13. Verfahren gemäß Anspruch 12, bei dem die Anfangs elemente der Reihe von vorbestimmten Teilen kürzer als nachfolgende Elemente der Reihe sind.
  14. Verfahren gemäß Anspruch 11, bei dem die Latenzzeit der Anwendung des Verfahrens geändert wird, so dass jede parallele Anwendung des Verfahrens eine Ausgabe zur im wesentlichen gleichzeitigen Zusammenfassung erzeugt.
DE69332975T 1992-07-07 1993-07-05 Digitales filter mit hoher genauigkeit und effizienz Revoked DE69332975T2 (de)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
AUPL338792 1992-07-07
AUPL338792 1992-07-07
AUPL338692 1992-07-07
AUPL338692 1992-07-07
AUPL835793 1993-04-20
AUPL835793 1993-04-20
PCT/AU1993/000330 WO1994001933A1 (en) 1992-07-07 1993-07-05 Digital filter having high accuracy and efficiency

Publications (2)

Publication Number Publication Date
DE69332975D1 DE69332975D1 (de) 2003-06-18
DE69332975T2 true DE69332975T2 (de) 2004-05-19

Family

ID=27157669

Family Applications (1)

Application Number Title Priority Date Filing Date
DE69332975T Revoked DE69332975T2 (de) 1992-07-07 1993-07-05 Digitales filter mit hoher genauigkeit und effizienz

Country Status (8)

Country Link
US (1) US5502747A (de)
EP (2) EP1304797A3 (de)
JP (3) JP3636361B2 (de)
AU (1) AU689439B2 (de)
CA (1) CA2139511C (de)
DE (1) DE69332975T2 (de)
DK (1) DK0649578T3 (de)
WO (1) WO1994001933A1 (de)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102016200637B3 (de) * 2016-01-19 2017-04-27 Sivantos Pte. Ltd. Verfahren zur Reduktion der Latenzzeit einer Filterbank zur Filterung eines Audiosignals sowie Verfahren zum latenzarmen Betrieb eines Hörsystems

Families Citing this family (68)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5757684A (en) * 1995-11-17 1998-05-26 Rincon Research Corporation Adaptive co-channel interference canceler using spectral symmetry
FR2744871B1 (fr) * 1996-02-13 1998-03-06 Sextant Avionique Systeme de spatialisation sonore, et procede de personnalisation pour sa mise en oeuvre
JP2921472B2 (ja) * 1996-03-15 1999-07-19 日本電気株式会社 音声および雑音の除去装置、音声認識装置
US5999574A (en) * 1996-03-29 1999-12-07 Icom Incorporated Digital filter system, carrier reproduction circuit using the digital filter system, and demodulation circuit using the carrier reproduction circuit
US6151373A (en) * 1997-04-03 2000-11-21 At&T Corp. Weak signal resolver
US6169723B1 (en) * 1997-07-02 2001-01-02 Telefonaktiebolaget Lm Ericsson Computationally efficient analysis and synthesis of real signals using discrete fourier transforms and inverse discrete fourier transforms
WO1999014983A1 (en) 1997-09-16 1999-03-25 Lake Dsp Pty. Limited Utilisation of filtering effects in stereo headphone devices to enhance spatialization of source around a listener
US5903480A (en) * 1997-09-29 1999-05-11 Neomagic Division-free phase-shift for digital-audio special effects
US6480534B1 (en) * 1997-10-08 2002-11-12 Texas Instruments Incorporated Apparatus and method for a reduced component equalizer circuit
US6166744A (en) * 1997-11-26 2000-12-26 Pathfinder Systems, Inc. System for combining virtual images with real-world scenes
FI116505B (fi) 1998-03-23 2005-11-30 Nokia Corp Menetelmä ja järjestelmä suunnatun äänen käsittelemiseksi akustisessa virtuaaliympäristössä
CA2325482C (en) * 1998-03-25 2009-12-15 Lake Technology Limited Audio signal processing method and apparatus
US6519486B1 (en) 1998-10-15 2003-02-11 Ntc Technology Inc. Method, apparatus and system for removing motion artifacts from measurements of bodily parameters
US7991448B2 (en) 1998-10-15 2011-08-02 Philips Electronics North America Corporation Method, apparatus, and system for removing motion artifacts from measurements of bodily parameters
AUPP790598A0 (en) * 1998-12-23 1999-01-28 Lake Dsp Pty Limited Efficient impulse response convolution method and apparatus
US7111155B1 (en) 1999-05-12 2006-09-19 Analog Devices, Inc. Digital signal processor computation core with input operand selection from operand bus for dual operations
US6820189B1 (en) 1999-05-12 2004-11-16 Analog Devices, Inc. Computation core executing multiple operation DSP instructions and micro-controller instructions of shorter length without performing switch operation
US6859872B1 (en) 1999-05-12 2005-02-22 Analog Devices, Inc. Digital signal processor computation core with pipeline having memory access stages and multiply accumulate stages positioned for efficient operation
US7107302B1 (en) * 1999-05-12 2006-09-12 Analog Devices, Inc. Finite impulse response filter algorithm for implementation on digital signal processor having dual execution units
JP2001076451A (ja) 1999-09-06 2001-03-23 Toshiba Corp ディスク記憶装置におけるヘッド位置決め制御システム及びヘッド位置決め制御方法
SE519885C2 (sv) * 2000-03-27 2003-04-22 Ericsson Telefon Ab L M Förfarande och anordning för omvandling av samplingsfrekvens
AUPQ732100A0 (en) * 2000-05-05 2000-06-01 Clarity Eq Pty Limited High order filters with controllable delay and performance
US6704438B1 (en) * 2000-05-08 2004-03-09 Aloka Co., Ltd. Apparatus and method for improving the signal to noise ratio on ultrasound images using coded waveforms
WO2002017486A1 (en) * 2000-08-25 2002-02-28 Sgs-Thomson Microelectronics Asia Pacific (Pte) Ltd. Method for efficient and zero latency filtering in a long impulse response system
FI113147B (fi) 2000-09-29 2004-02-27 Nokia Corp Menetelmä ja signaalinkäsittelylaite stereosignaalien muuntamiseksi kuulokekuuntelua varten
US6856649B2 (en) * 2001-03-30 2005-02-15 Koninklijke Philips Electronics N.V. Initialization scheme for a hybrid frequency-time domain equalizer
JP4620907B2 (ja) * 2001-07-04 2011-01-26 日本無線株式会社 遅延波キャンセラ
US7047263B2 (en) * 2001-08-14 2006-05-16 Texas Instruments Incorporated Fast-settling digital filter and method for analog-to-digital converters
US7881485B2 (en) * 2002-11-21 2011-02-01 Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E. V. Apparatus and method of determining an impulse response and apparatus and method of presenting an audio piece
DE10254470B4 (de) * 2002-11-21 2006-01-26 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Bestimmen einer Impulsantwort und Vorrichtung und Verfahren zum Vorführen eines Audiostücks
US7359692B2 (en) * 2003-06-30 2008-04-15 Zarbana Digital Fund, Llc Method of and device for antennae diversity switching
US7502816B2 (en) 2003-07-31 2009-03-10 Panasonic Corporation Signal-processing apparatus and method
DK1695590T3 (da) * 2003-12-01 2014-06-02 Wolfson Dynamic Hearing Pty Ltd Fremgangsmåde og apparat til fremstilling af adaptive, retningsbestemte signaler
AU2003291581A1 (en) * 2003-12-16 2005-07-05 Telefonaktiebolaget Lm Ericsson (Publ) Method and arrangement for signal processing comprising first and second pulse compression filters
US20050223050A1 (en) * 2004-04-01 2005-10-06 Chi-Min Liu Efficient method and apparatus for convolution of input signals
TWI242372B (en) * 2004-08-20 2005-10-21 Coretronic Corp Voice broadcast apparatus
FR2874757B1 (fr) * 2004-09-02 2006-11-10 Helita Soc Par Actions Simplif Methode d'evaluation de l'etendue de la zone de protection conferee par un dispositif de capture de coup de foudre
DE102005010057A1 (de) 2005-03-04 2006-09-07 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Vorrichtung und Verfahren zum Erzeugen eines codierten Stereo-Signals eines Audiostücks oder Audiodatenstroms
EP1758386A1 (de) 2005-08-25 2007-02-28 Coretronic Corporation Audiowiedergabegerät
US7839953B2 (en) 2006-05-25 2010-11-23 Kabushiki Kaisha Toshiba Transmission signal generating unit and radar transmission device using the same
EP1879293B1 (de) * 2006-07-10 2019-02-20 Harman Becker Automotive Systems GmbH Partitionierte Schnellfaltung in der Zeit- und Frequenzdomäne
EP1879292B1 (de) * 2006-07-10 2013-03-06 Harman Becker Automotive Systems GmbH Partitionierte schnelle Faltung
US7912884B2 (en) * 2006-12-04 2011-03-22 Aloka Co., Ltd. Method and apparatus for implementing finite impulse response filters without the use of multipliers
KR20080072224A (ko) * 2007-02-01 2008-08-06 삼성전자주식회사 오디오 부호화 및 복호화 장치와 그 방법
US8139760B2 (en) * 2007-02-27 2012-03-20 Freescale Semiconductor, Inc. Estimating delay of an echo path in a communication system
KR101496760B1 (ko) * 2008-12-29 2015-02-27 삼성전자주식회사 서라운드 사운드 가상화 방법 및 장치
US8479133B2 (en) * 2009-01-27 2013-07-02 Xilinx, Inc. Method of and circuit for implementing a filter in an integrated circuit
US8543635B2 (en) 2009-01-27 2013-09-24 Xilinx, Inc. Digital signal processing block with preadder stage
JP2010219582A (ja) * 2009-03-13 2010-09-30 Sony Corp フィルタリング装置、フィルタリング方法、プログラムおよびサラウンドプロセッサ
EP2489207A4 (de) 2009-10-12 2013-10-30 Nokia Corp Mehrweganalyse zur audioverarbeitung
JP5499906B2 (ja) * 2010-05-28 2014-05-21 富士通株式会社 受信装置
US8943117B1 (en) * 2011-04-18 2015-01-27 Arthur Torosyan Method and apparatus for hybrid digital filtering
JP5545885B2 (ja) * 2011-05-26 2014-07-09 日本電信電話株式会社 信号シフト装置及び方法
JP6070572B2 (ja) * 2011-12-20 2017-02-01 日本電気株式会社 ディジタルフィルタ回路およびディジタルフィルタ処理方法
WO2013125173A1 (ja) * 2012-02-20 2013-08-29 日本電気株式会社 ディジタルフィルタ回路、ディジタルフィルタ処理方法及びディジタルフィルタ処理プログラム記憶媒体
JP6015431B2 (ja) * 2012-12-26 2016-10-26 オンキヨー株式会社 サンプリングレート変換装置及びプログラム
US9820074B2 (en) 2013-03-15 2017-11-14 Apple Inc. Memory management techniques and related systems for block-based convolution
WO2014168777A1 (en) 2013-04-10 2014-10-16 Dolby Laboratories Licensing Corporation Speech dereverberation methods, devices and systems
US9431987B2 (en) 2013-06-04 2016-08-30 Sony Interactive Entertainment America Llc Sound synthesis with fixed partition size convolution of audio signals
US11488574B2 (en) 2013-12-02 2022-11-01 Jonathan Stuart Abel Method and system for implementing a modal processor
US9805704B1 (en) 2013-12-02 2017-10-31 Jonathan S. Abel Method and system for artificial reverberation using modal decomposition
US11087733B1 (en) 2013-12-02 2021-08-10 Jonathan Stuart Abel Method and system for designing a modal filter for a desired reverberation
US10019980B1 (en) 2015-07-02 2018-07-10 Jonathan Abel Distortion and pitch processing using a modal reverberator architecture
JP2017046199A (ja) * 2015-08-27 2017-03-02 パナソニックIpマネジメント株式会社 フィルタ装置
KR101710012B1 (ko) * 2015-11-10 2017-02-24 성균관대학교산학협력단 수신기에서의 에너지 하베스팅 방법 및 상기 방법을 사용하는 수신기, 및 이를 위한 블라인드 변조방식 검출 방법 및 장치
CN105759305A (zh) * 2016-03-22 2016-07-13 成都理工大学 一种自适应级联消褶积梯形合成的数字脉冲幅度分析器
US10393784B2 (en) 2017-04-26 2019-08-27 Raytheon Company Analysis of a radio-frequency environment utilizing pulse masking
US10559295B1 (en) 2017-12-08 2020-02-11 Jonathan S. Abel Artificial reverberator room size control

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3118473C2 (de) * 1981-05-09 1987-02-05 Felten & Guilleaume Fernmeldeanlagen GmbH, 8500 Nürnberg Verfahren zur Aufbereitung elektrischer Signale mit einer digitalen Filteranordnung
US4740322A (en) * 1985-07-29 1988-04-26 The Lubrizol Corporation Sulfur-containing compositions, and additive concentrates, lubricating oils, metal working lubricants and asphalt compositions containing same
NL8601604A (nl) * 1986-06-20 1988-01-18 Philips Nv Frequentie-domein blok-adaptief digitaal filter.
US4951269A (en) * 1986-10-30 1990-08-21 Fujitsu Limited Echo canceller with short processing delay and decreased multiplication number
FR2622069B1 (fr) * 1987-10-16 1995-04-07 Thomson Csf Dispositif de filtrage numerique et radar comportant un tel dispositif
US4821289A (en) * 1987-12-21 1989-04-11 Cyclotomics, Inc. Multiple parallel channel equalization architecture
JPH065822B2 (ja) * 1989-01-19 1994-01-19 日本電気株式会社 並列処理形トランスバーサル等化器
US5224123A (en) * 1990-03-19 1993-06-29 Kabushiki Kaisha Toshiba Transversal equalizer
ES2076983T3 (es) * 1990-03-28 1995-11-16 Alcatel Nv Metodo para la determinacion de los coeficientes de un filtro fir en ecualizadores.
EP0554494B1 (de) * 1992-02-07 1995-06-14 Siemens Aktiengesellschaft Adaptives nichtrekursives Digitalfilter

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102016200637B3 (de) * 2016-01-19 2017-04-27 Sivantos Pte. Ltd. Verfahren zur Reduktion der Latenzzeit einer Filterbank zur Filterung eines Audiosignals sowie Verfahren zum latenzarmen Betrieb eines Hörsystems
EP3197181A1 (de) 2016-01-19 2017-07-26 Sivantos Pte. Ltd. Verfahren zur reduktion der latenzzeit einer filterbank zur filterung eines audiosignals sowie verfahren zum latenzarmen betrieb eines hörsystems
US10142741B2 (en) 2016-01-19 2018-11-27 Sivantos Pte. Ltd. Method for reducing the latency period of a filter bank for filtering an audio signal, and method for low-latency operation of a hearing system

Also Published As

Publication number Publication date
EP1304797A3 (de) 2007-11-28
EP0649578B1 (de) 2003-05-14
JP3636361B2 (ja) 2005-04-06
US5502747A (en) 1996-03-26
AU4413193A (en) 1994-01-31
CA2139511C (en) 2004-09-07
EP0649578A4 (de) 1996-05-08
JPH08501667A (ja) 1996-02-20
AU689439B2 (en) 1998-04-02
DE69332975D1 (de) 2003-06-18
DK0649578T3 (da) 2003-09-15
EP1304797A2 (de) 2003-04-23
WO1994001933A1 (en) 1994-01-20
EP0649578A1 (de) 1995-04-26
JP2003179467A (ja) 2003-06-27
JP2008017511A (ja) 2008-01-24
CA2139511A1 (en) 1994-01-20

Similar Documents

Publication Publication Date Title
DE69332975T2 (de) Digitales filter mit hoher genauigkeit und effizienz
DE69925905T2 (de) Blinde trennung von quellen durch faltung mit hilfe eines vielfachdekorrelationsverfahrens
DE69125349T2 (de) Einstellungsverfahren für Einrichtungen zur Auslöschung Signalzerstreuungen in Nachrichtenübertragungssystemen
DE3510660C2 (de)
DE60038432T2 (de) Akustische echo- und rauschkompensation
DE2818204A1 (de) Signalverarbeitungsanlage, insbesondere zur beseitigung von raumnachhall
DE69132844T2 (de) Schneller Rechner zur Durchführung einer Vorwärts- und Rückwärtstransformation
DE3650348T2 (de) Zweidimensionalfiltereinrichtungen mit begrenzter Impulsantwort.
DE102017203804B4 (de) Umwandlung digitaler Abtastrate
DE3587393T2 (de) Autokorrelationsfilter.
DE69737699T2 (de) Gerät und verfahren zur fft-berechnung
DE2308865A1 (de) Kontinuierliches verfahren und vorrichtung fuer die diskrete fourier-transformation
DE102008010962A1 (de) Subharmonische Spiegelunterdrückung in Digital/Analog-Umwandlungssystemen
DE2125230B2 (de) Verfahren und Schaltungsanordnung zur modifizierenden Verarbeitung digitaler Informationssignalfolgen
DE2246729A1 (de) Verfahren und vorrichtung fuer die gleichzeitige trennung und demodulation eines frequenzmultiplexen signals
DE2707936C3 (de) Einseitenband-FrequenzmultiplexÜbertragungssystem
DE68926154T2 (de) Pipelineprozessor zur Durchführung des LMS Algorithmus
CH638319A5 (de) Adaptiv arbeitendes verfahren und schaltungsanordnung zur unterdrueckung von stoeranteilen des dopplerfrequenzspektrums bei einem radarempfaenger.
DE60126105T2 (de) Adaptives frequency domain filter mit partitionierten blöcken
DE3852921T2 (de) Digitale Filteranordnung und Radar mit solch einer Anordnung.
DE10255687B4 (de) Verfahren zur Verringerung des Crestfaktors eines Multiträgersignals
DE102005012977A1 (de) Verfahren und System zur Rauschmessung mit den kombinierbaren Unterverfahren Messen, Identifizieren und Beseitigen von sinusförmigen Störsignalen in einem Rauschsignal
DE4328139A1 (de) Schaltungsanordnung zur Echoauslöschung
DE69602962T2 (de) Filteranordnung mit entscheidungsrückkopplung im frequenzbereich
DE69226816T2 (de) Verarbeitungssystem zur Geisterbildauslöschung eines Videosignales

Legal Events

Date Code Title Description
8363 Opposition against the patent
8331 Complete revocation