Es wird eine Abtastrateumwandlungsschaltung vorgesehen, die eine erweiterte transponierte Farrow-Struktur vorsieht, die einen optimierten Kompromiss zwischen Rauschpegeln und Rechenkomplexität sowohl für ein Upsampling als auch für ein Downsampling ermöglicht. Dies wird erreicht durch Ableiten jeder Ausgangsabtastung durch Faltung eines zeitkontinuierlichen Interpolationskerns mit einer zeitkontinuierlichen Schrittfunktion, die den Eingangsabtaststrom repräsentiert.
Die vorliegende Offenbarung betrifft eine Umwandlung einer digitalen Abtastrate und insbesondere Verfahren, Strukturen und Computerprogrammprodukte zur Abtastrateumwandlung, wobei eine digitale Eingangsabtastung mit einer ersten Frequenz in eine Ausgangsabtastung mit einer zweiten Frequenz umgewandelt wird.
Um von digitalen Systemen verarbeitet zu werden, muss ein kontinuierlich variierendes Signal in einen Satz von diskreten Abtastungen umgewandelt werden. Eine Abtastung ist ein Wert oder ein Satz von Werten an einem Punkt in dem Bereich, in dem das kontinuierlich variierende Signal abgetastet wird.
Es ist oft erwünscht, die Abtastrate eines digitalen Signals von einer Rate in eine andere umzuwandeln, zum Beispiel in Audio-, Video- oder Bildverarbeitungssystemen, bei denen Daten von verschiedenen Teilsystemen oder -komponenten verarbeitet werden müssen, die unterschiedliche Abtastraten erfordern.
Eine Abtastrateumwandlung kann mit einer Struktur implementiert werden, die verschiedene elektronische Komponenten vorsieht, die ausgebildet sind zum Speichern und Durchführen von arithmetischen Operationen auf Daten, um Algorithmen für eine Abtastrateumwandlung zu implementieren, wobei ein Eingangssignal mit einer ersten Abtastrate in ein Ausgangssignal mit einer zweiten Abtastrate umgewandelt wird. Abtastrateumwandlungsstrukturen können in geeigneter Weise als eine digitale Signalverabeitungs(DSP – digital signal processor)-Vorrichtung oder als ein Komponententeil einer DSP-Vorrichtung vorgesehen werden, die auch andere Funktionen durchführt. Eine DSP-Vorrichtung bietet eine geeignete Software- und Hardwarearchitektur für eine leistungseffiziente Verarbeitung von Algorithmen für tragbare Vorrichtungen oder andere Anwendungen, bei denen ein großer Bedarf an Leistungseffizienz besteht.
Bei der Gestaltung einer Abtastrateumwandlungsstruktur gibt es einen Kompromiss zwischen der Qualität und der rechnerischen Komplexität. In diesem Kontext kann die Qualität als Verhältnis zwischen der (gewünschten) Signalleistung und der (unerwünschten) Rauschleistung definiert werden. Die rechnerische Komplexität kann als die durchschnittliche Anzahl von arithmetischen Operationen (wie Multiplikation oder Addition) definiert werden, die erforderlich sind, um eine Ausgangsabtastung zu erzeugen. Eine höhere rechnerische Komplexität führt in der Regel zu einem höheren Leistungsverbrauch und größerem Platzbedarf (in Bezug auf den erforderlichen Speicherplatz und den erforderlichen physikalischen Schaltungsbereich). Es ist erwünscht, einen besseren Kompromiss zwischen diesen Faktoren zu haben.
Gemäß einem ersten Aspekt der Offenbarung ist ein Verfahren zum Umwandeln eines Stroms von Eingangsabtastungen in einen Strom von Ausgangsabtastungen vorgesehen, das aufweist ein Ableiten jeder Ausgangsabtastung durch Faltung eines zeitkontinuierlichen Interpolationskerns mit einer zeitkontinuierlichen Schrittfunktion, die den Eingangsabtaststrom repräsentiert.
Optional wird jede Eingangsabtastung durch ein Eingangsabtastintervall getrennt und die Faltung eines zeitkontinuierlichen Interpolationskerns mit einer zeitkontinuierlichen Schrittfunktion, die den Eingangsabtaststrom repräsentiert, weist ein Berechnen einer gewichteten Summe der zeitkontinuierlichen Impulsantwort auf, integriert über alle Werte des Eingangsabtaststroms über das Ausgangsabtastintervall.
Optional wird jede Ausgangsabtastung durch ein Ausgangsabtastintervall getrennt; und:
Optional wird die zuletzt bekannte Eingangsabtastung unter Verwendung einer Akkumulations- und Ladeeinheit gespeichert.
Eine Akkumulations- und Ladeeinheit kann jede geeignete Schaltung, Vorrichtung oder ein Code sein, die/der die Speicherung und Summierung einer Vielzahl von Werten vorsieht und derart ausgebildet ist, bei Empfang eines Auslösersignals den akkumulierten Wert zur Verfügung zu stellen und sich auf einen definierten Wert zurückzusetzen.
Optional weist der Interpolationskern eine stückweise Polynomfunktion einer gegebenen Polynomordnung auf und weist Matrixkoeffizienten auf, die aus Koeffizienten einer transponierten Farrow-Struktur einer Polynomordnung erzeugt werden, die niedriger als die gegebene Polynomordnung ist.
Optional weist der Interpolationskern einen B-Spline-Interpolator auf.
Optional definieren die Interpolatorkoeffizienten einen symmetrischen Phasenbereich.
Gemäß einem zweiten Aspekt der Offenbarung ist eine Struktur zum Umwandeln eines Stroms von Eingangsabtastungen in einen Strom von Ausgangsabtastungen vorgesehen, die ausgebildet ist zum Ableiten jeder Ausgangsabtastung durch Faltung eines zeitkontinuierlichen Interpolationskerns mit einer zeitkontinuierlichen Schrittfunktion, die den Eingangsabtaststrom repräsentiert.
Optional implementiert die Struktur einen Polynominterpolator und weist auf:
eine Phasenerzeugungseinheit, die einen neuen Phasenwert durch Hinzufügen einer Phasenänderung zu einer vorherigen Phase berechnet und eine Erzeugung einer Ausgangsabtastung auslöst;
einen Kammfilter, der ein Differenzsignal berechnet, das durch Subtrahieren eines vorherigen Eingangs von einem aktuellen Eingangswert gebildet wird;
einen oder mehrere Multiplikatoren, die das Differenzsignal mit Potenzen des neuen Phasenwerts multiplizieren;
eine Akkumulations- und Ladeeinheit, die bei der Erzeugung einer Ausgangsabtastung mit dem vorherigen Eingangsabtastwert geladen wird;
eine oder mehrere Akkumulations- und Dump- bzw. Verwerfen-Einheiten, die bei der Erzeugung einer neuen Ausgangsabtastung auf null zurückgesetzt werden;
eine Matrixmultiplikationseinheit, die mehrere Ausgänge unter Verwendung einer konstanten Koeffizienten-Multiplikation von Werten aus der Akkumulations- und Ladeeinheit und der Akkumulations- und Dump-Einheit bildet; und
eine Verzögerungs- und Additionseinheit, die verzögerte Versionen der Ausgänge der Matrixmultiplikationseinheit hinzufügt.
Gemäß einem dritten Aspekt der Offenbarung ist ein nicht-transitorisches Computerprogrammprodukt vorgesehen, das Anweisungen speichert, die bei Ausführung durch eine Computervorrichtung die Computervorrichtung aktivieren zum Umwandeln eines Stroms von Eingangsabtastungen in einen Strom von Ausgangsabtastungen, das ein Ableiten jeder Ausgangsabtastung durch Faltung eines zeitkontinuierlichen Interpolationskerns mit einer zeitkontinuierlichen Schrittfunktion aufweist, die den Eingangsabtaststrom repräsentiert.
Das Computerprogrammprodukt kann als eine oder mehrere Anweisungen oder Code auf einem computerlesbaren Medium gespeichert oder übertragen werden. Computerlesbare Medien umfassen sowohl Computerspeichermedien als auch Kommunikationsmedien, einschließlich jedes Mediums, das eine Übertragung eines Computerprogramms von einem Ort zum anderen erleichtert. Ein Speichermedium kann jedes verfügbare Medium sein, auf das ein Computer zugreifen kann. Zum Beispiel können derartige computerlesbare Medien RAM, ROM, EEPROM, CD-ROM oder einen anderen optischen Disk-Speicher, magnetischen Disk-Speicher oder andere magnetische Speichervorrichtungen oder jedes andere Medium aufweisen, das zum Tragen oder Speichern eines gewünschten Programmcodes in der Form von Anweisungen oder Datenstrukturen verwendet werden kann und auf das ein Computer zugreifen kann. Auch jede Verbindung wird ordnungsgemäß als computerlesbares Medium bezeichnet. Wenn zum Beispiel die Software von einer Website, einem Server oder einer anderen entfernten Quelle über ein Koaxialkabel, ein Faseroptikkabel, ein Twisted Pair, eine digitale Teilnehmerleitung (DSL – digital subscriber line) oder drahtlose Technologien, wie Infrarot, Funk und Mikrowelle, übertragen wird, dann sind das Koaxialkabel, Faseroptikkabel, Twisted Pair, DSL oder drahtlose Technologien, wie Infrarot, Funk und Mikrowelle, in der Definition von Medium enthalten. Disk und Disc, wie sie hier verwendet, umfasst Compact Disc (CD), Laser-Disc, optische Disc, DVD (digital versatile disc), Floppy-Disk and Blu-ray-Disc, wobei Disks normalerweise Daten magnetisch reproduzieren, während Discs Daten optisch mit Lasern reproduzieren. Kombinationen der obigen sollen ebenfalls in dem Umfang von computerlesbaren Medien aufgenommen sein. Die mit einem computerlesbaren Medium des Computerprogrammprodukts assoziierten Anweisungen oder Code können durch einen Computer ausgeführt werden, zum Beispiel von einem oder mehreren Prozessoren, wie einem oder mehreren digitalen Signalprozessoren (DSPs – digital signal processors), Universalmikroprozessoren, ASICs, FPGAs, oder anderen äquivalenten integrierten oder diskreten Logikschaltungen.
Die Offenbarung wird nachfolgend beispielhaft unter Bezugnahme auf die beigefügten Zeichnungen beschrieben, in denen:
Es ist oft wünschenswert, zwischen beliebigen Abtastraten umzuwandeln, und um dies zu ermöglichen, muss eine Approximation des kontinuierlichen Signals erzeugt und dann abgetastet werden. Dieser Vorgang wird als Interpolation bezeichnet.
Es wird ein Eingangssignal x(kT1) betrachtet, das mit einer Rate abgetastet wird, das in ein mit einer anderen Rate abgetastetes Ausgangssignal y(mT2) umzuwandeln ist. Dies wird in
Eine Abtastrateumwandlungs(SRC – sample rate conversion)-Gleichung, die das Ausgangssignal mit dem Eingangssignal in Beziehung setzt und die Filterung und Wiederabtastung von SRC für den Fall in
h(t) ist die zeitkontinuierliche Impulsantwort des erforderlichen Signals, die das Signal y(mT2) bei der neuen Abtastrate aus dem Eingangssignal x(kT1) bei der alten Abtastrate liefert. Oder, anders ausgedrückt, h(t) ist eine Funktion, die die Aktion repräsentiert, die der erforderliche Filter auf dem Eingangssignal durchführt, um dieses in das Ausgangssignal umzuwandeln. Die Gleichung [1] beschreibt ein zeitvariierendes System.
Es sollte angemerkt werden, dass wir eine Rationalfaktor-SRC haben, wenn T_1/T_2 = L/M mit L, M∊N+. Wenn L = 1 oder M = 1, haben wir eine Integerfaktor-SRC (d. h. eine der Abtastraten ist ein genaues Vielfaches der anderen Abtastrate). Wenn L = M = 1 ist, haben wir eine zeitdiskrete Faltung (d. h. keine SRC).
Im Allgemeinen muss die vollständige zeitkontinuierliche Impulsantwort h(t) bekannt sein. Für rationale und „ganzzahliger Wert”-SRC, wie oben beschrieben, variiert das durch die Gleichung [1] beschriebene System periodisch mit der Zeit. Somit sind für die Berechnung tatsächlich nur bestimmte Werte von h(t) erforderlich.
Um ein Berechnen der erforderlichen Abtastungen von h(t) zu vereinfachen, suchen wir nach einfachen Funktionen, die zeitkontinuierliche Impulsantworten beschreiben. Es wurde festgestellt, dass, da Polynome ein Beispiel für solche einfachen Funktionen sind, Polynomfilter bei einer SRC nützlich sind. Wir beschränken die Klasse der Polynomfilter auf stückweise polynome Impulsantworten, die aus gleich langen Stücke zusammengesetzt sind. Bei Polynomstücken des Grades Q und der Länge Δ können wir einen Ausdruck für h(t) ableiten, wie folgt:
Es gibt zwei Möglichkeiten für Δ, die die Gleichung [2] vereinfachen, nämlich Δ = T1 und Δ = T2. Unter Verwendung der obigen Gleichung [2] und Gleichung [1] und der Einstellung Δ = T1 ergibt sich:
⌊a⌋ bezeichnet die Abrunden-Operation, d. h. ⌊a⌋ bezeichnet die größte Ganzzahl a' derart, dass a' ≤ a.
μm ist die Inter-Abtastposition, d. h. der Abstand zwischen dem vorherigen Eingangssignal und dem aktuellen Ausgangssignal (siehe
Die obigen Gleichungen [3], [4] und [5] repräsentieren eine Implementierung von SRC, die als Farrow-Struktur bekannt ist, und
Die in
In den obigen Farrow-Struktur-Gleichungen [3], [4] und [5] kann, je höher die Ordnung der Polynomstücke ist, desto besser die Impulsantwort h(t) an die Anwendung angepasst werden. Wenn Polynome hoher Ordnung nicht möglich sind, können auch kürzere Polynome niedrigerer Ordnung verwendet werden. In diesem Fall sind mehr „Referenz”-Polyphasenzweige (d. h. Ausgangspunkte von Polynomstücken) erforderlich. Dies kann erreicht werden durch Verringern der Länge der Polynomstücke um einen Faktor J, d. h.:
Dies kann als eine Generalisierung der Farrow-Struktur betrachtet werden, die allgemein als die generalisierte Farrow-Struktur bekannt ist.
Da die Gleichung [6] eine Generalisierung liefert im Vergleich zu dem Fall, in dem Δ = T1, können wir den Fall mit Δ = T2 überspringen und stattdessen sofort
Wenn wir die Gleichungen [6] und [7] in Gleichung [2] oben ersetzen, haben wir:
Es ist anzumerken, dass bei J = 1 wir zu der ursprünglichen Farrow-Struktur zurückkehren und μk gleich μm wird, die zuvor definierte Inter-Abtastungsposition.
Die obigen Gleichungen [8], [9] und [10] beschreiben die Farrow-Struktur, wenn die Stücklänge Δ der Polynomstücke durch die obige Gleichung [7] definiert ist und als Transponierte Farrow-Struktur (TFS – Transposed Farrow Structure) bekannt ist.
Die Farrow-Struktur bietet eine effiziente Möglichkeit, eine Abtastratezunahme zwischen beliebigen Abtastraten zu implementieren und kann als Polynom-Polyphasen-Interpolator betrachtet werden. Jedoch sind die Übertragungsnullstellen des Filters um die ganzzahligen Vielfachen der Eingangsabtastrate gruppiert, was bedeutet, dass die Farrow-Struktur einem Aliasing unterworfen ist, wenn eine Abtastratenabnahme implementiert wird. Die transponierte Farrow-Struktur ist geeignet zum Implementieren einer Abtastratenabnahme, da ihre Übertragungsnullstellen um die ganzzahligen Vielfachen der Ausgangsabtastrate gruppiert sind, während dieselben Polynomfunktionen wie die Farrow-Struktur verwendet werden. Sie kann als ein Polynom-Polyphasen-Dezimator gesehen werden, der ein Anti-Aliasing vorsehen kann.
Während sowohl die Farrow-Struktur als auch die transponierte Farrow-Struktur im Prinzip Abtastraten zwischen beliebigen Werten umwandeln können, kann aufgrund von Abbildungs- und Aliasing-Problemen in der Praxis ein DSP nur mit einer Farrow-Struktur vorgesehen werden und nur zur Erhöhung einer Abtastrate verwendet werden, oder mit einer transponierten Farrow-Struktur und nur zur Verringerung einer Abtastrate verwendet werden. Wenn ein DSP vorgesehen werden soll, der eine beliebige Abtastrateumwandlung mit verbesserten Abbildungs- oder Aliasing-Eigenschaften verarbeiten kann, muss er sowohl eine Farrow-Struktur als auch eine transponierte Farrow-Struktur zusammen mit einer Erfassungsvorrichtung aufweisen, die die Abtastrate eines eingehenden Signals mit der Abtastrate eines Sollausgangssignals vergleicht und eine geeignete Auswahl zwischen entweder der Farrow-Struktur oder der transponierten Farrow-Struktur tätigt, abhängig davon, ob die Ausgangsabtastrate jeweils höher oder niedriger als die Eingangsabtastrate ist. Eine Implementierung beider Strukturen ist in Bezug auf einen Energieverbrauch und einen Chipbereich kostspielig, während eine Implementierung nur einer der Strukturen die Funktionalität des DSP begrenzt. Es ist wünschenswert, einen Abtastratewandler mit einem oder mehreren aus verbesserter Funktionalität, reduziertem Leistungsverbrauch, reduzierter Rechenkomplexität oder reduziertem Chipbereich vorzusehen.
Eine modifizierte transponierte Farrow-Struktur wird beschrieben bei
Während diese jedoch rechnerisch effizienter ist als die transponierte Farrow-Struktur von
In
x = Eingangsabtastung
y = Ausgangsabtastung
ω = Phaseninkrement
φ = Phase
A&L = Akkumulations- und Ladeeinheit
A&D = Akkumulations- und Dump-Einheit
z–1 = Verzögerungselement
ci,j = Konstante Koeffizientenwerte
+ = Addierer mit optionalen negierten Eingängen (markiert mit '–').
⊗ = Variabler Eingangsmultiplikator
t = Auslösereingang (bei Phasen-Wrap-around bzw. -Umlauf erzeugt)
Diese Struktur umfasst:
Wie oben beschrieben, ist eine allgemeine Gleichung, die das Filtern und erneute Abtasten eines Abtastratewandlers beschreibt:
In der Farrow-Struktur ist die Funktion h(t) eine stückweise Polynomfunktion:
Die Polynomabschnitte h(t) können definiert werden als:
Für jeden Polynomabschnitt j können wir die folgende Funktion definieren:
H(t) ist eine Funktion, die eine Koeffizientenmatrix auf die Polynomabschnitte der zeitkontinuierlichen Antwort h(t) anwendet.
Der verbesserte Abtastratewandler evaluiert das oben angeführte definitive Integral
Zu Beginn jedes Intervalls T2 ist die anfängliche Vermutung, dass es keine neue eingehende Abtastung über dieses Intervall gibt. Die letzte bekannte Abtastung, xprev, wird in den ersten Akkumulator geladen und die anderen Akkumulatoren werden auf null zurückgesetzt. Immer wenn eine eingehende Abtastung xprev ankommt, muss diese Vermutung verfeinert werden. Die Verfeinerung ist (xnew-xprev)ti, wobei wiederum die Annahme verwendet wird, dass es keine zusätzliche eingehende Abtastung über das aktuelle Restintervall gibt. Anschließend wird die letzte bekannte Abtastung auf den Wert einer eingehenden Abtastung aktualisiert. Am Ende des Intervalls T2 wird eine Ausgangsabtastung berechnet und das nächste Intervall T2 wird gestartet.
Eine Struktur gemäß der Offenbarung (die als „erweiterte” transponierte Farrow-Struktur oder ETFS (enhanced Transposed Farrow Structure) bezeichnet werden kann) reduziert eine Rechenkomplexität im Vergleich zu einer transponierten Farrow-Struktur derselben Ordnung erheblich. Die erweiterte transponierte Farrow-Struktur der Ordnung 2 erfordert 2 variable Multiplikatoren und 6 konstante Koeffizienten-Multiplikatoren, während die transponierte Farrow-Struktur 3 variable Multiplikatoren und 9 konstante Koeffizienten-Multiplikatoren verwendet. Es ist anzumerken, dass die transponierte Farrow-Struktur einen dedizierten Multiplikator für eine Multiplikation mit dem Phaseninkrement ω benötigt, was für die erweiterte transponierte Farrow-Struktur nicht erforderlich ist. Der Unterschied bei der Komplexität der Akkumulations- und Ladeeinheit im Vergleich zu der Akkumulations- und Dump-Einheit ist sehr gering: für die Akkumulations- und Ladeeinheit wird der Akkumulator bei Auslösung auf einen Startwert gesetzt und für die Akkumulations- und Dump-Einheit wird der Akkumulator auf null zurückgesetzt.
In der Praxis können die variablen Multiplikatoren unter Verwendung eines einzigen physikalischen Multiplikators implementiert werden, der alle erforderlichen Multiplikationen durchführt, durch Verwenden eines Systemtakts, der höher als die Eingangsabtastrate ist. In dem Beispiel, bei dem beide Multiplikatoren angewendet werden (wie in
Die Offenbarung ist auf jede Polynomordnung N ≥ 1 und jede Anzahl von Segmenten L ≥ 1 anwendbar. Die Größe der entsprechenden Koeffizientenmatrix ist LxK, wobei K = N + 1. Eine vorteilhafte Möglichkeit, die Matrixkoeffizienten für die ETFS der Ordnung N zu erzeugen, besteht darin, sie aus den Koeffizienten der TFS einer niedrigeren Polynomordnung N – 1 unter Verwendung der folgenden Gleichung abzuleiten:
Die Offenbarung ist nicht auf ein bestimmtes Interpolationsverfahren beschränkt und es gibt viele Verfahren, die verwendet werden können. Jedoch wird in einem bevorzugten Ausführungsbeispiel eine B-Spline-Interpolation verwendet, da diese zu Koeffizienten führt, die in nur wenigen Potenzen von zwei (und einem gemeinsamen Verstärkungsfaktor) ausgedrückt werden können. Als Ergebnis können die konstanten Koeffizienten-Multiplikatoren als eine Kombination von Verschiebungen-und-Addierungen effizient implementiert werden.
Die Koeffizientenmatrizen für eine B-Spline-Interpolation der Ordnung 0, 1 und 2 sind:
Die Koeffizienten entsprechend einer erweiterten B-Spline-Interpolation der Ordnung 1, 2 und 3 sind:
Transponierte Farrrow-Strukturen des in
Die Koeffizienten entsprechend einer modifizierten B-Spline-Interpolation der Ordnung 0, 1, 2, 3 sind:
Für eine erweiterte Farrow-Struktur gemäß der Offenbarung ist auch die symmetrische Phasenbereichsmodifikation möglich. Die allgemeine Formel zum Transformieren einer Koeffizientenmatrix MTF mit Dimensionen Lx(K – 1) für eine modifizierte transponierte Farrow-Struktur in eine Koeffizientenmatrix EMTF mit Dimensionen LxK für die erweiterte modifizierte transponierte Farrow-Struktur ist:
Als Ergebnis sind alle Spalten mit dem Index j > 1 entweder symmetrisch oder antisymmetrisch.
Für dieselbe Polynomordnung liefert die vorgeschlagene Struktur eine viel bessere Ergebnisqualität als die herkömmliche Farrow-Struktur, mit geringerer Rechenkomplexität. Für ein gegebenes Qualitätsziel ermöglicht die Erfindung, dass niedrigere Überabtastverhältnisse und/oder Interpolation niedrigerer Ordnung als die vorhandenen Strukturen verwendet werden, was zu niedrigeren Betriebsfrequenzen und damit zu geringerer Leistung und geringerem Flächenbedarf führt.
Die Leistungsspektren in
Die Spektren
Der Zeitbereich wird ebenfalls in
Es ist ersichtlich, dass die transponierten Farrow-Strukturen der ersten und zweiten Ordnung große Spitzen in dem Ausgang zeigen, die mit der erweiterten transponierten Farrow-Struktur gemäß der Offenbarung vermieden werden. Bei der herkömmlichen transponierten Farrow-Funktion wird das Eingangssignal durch eine Serie von Dirac-Delta-Impulsen repräsentiert, die um ein Intervall T1 beabstandet sind. Die Ausgangsabtastungen werden durch Falten des Eingangssignals mit einer zeitkontinuierlichen Impulsantwort h(t) berechnet. Wenn die Breite von h(t) geringer ist als der Abtastabstand des Ausgangs von T1, dann besteht der Ausgang aus gefalteten Delta-Impulsen, was zu Spitzen führt (schnelle Variationen in dem Ausgang). Bei einem Eingangssignal, das konstant ist (ungleich null), ist das Ausgangssignal zeitvariierend. Bei der erweiterten transponierten Farrow-Struktur wird das Eingangssignal effektiv durch eine schrittweise Funktion repräsentiert, die durch eine zeitkontinuierliche Impulsantwort h(t) gefaltet ist. Bei einem Eingangssignal, das konstant ist (ungleich null), wird auch das Ausgangssignal konstant.
Während diese Spitzen in dem Ausgang der transponierten Farrow-Strukturen erster und zweiter Ordnung mit spektralen Komponenten assoziiert sind, die außerhalb des hörbaren Bereichs sind, ist weiterhin eine zusätzliche Reserve in dem Datenpfad erforderlich, um eine Sättigung oder einen Umlauf zu verhindern. Dies ist aufgrund dessen, dass Variationen in dem Ausgangssignal zu einem höheren Dynamikbereich führen (größere Spitze-zu-Spitze-Werte). Als Ergebnis sind mehr Bits erforderlich, um das Signal akkurat zu repräsentieren (ein Abschneiden zu verhindern), und daher sind größere Multiplikatoren und Addierer zum Verarbeiten des Signals erforderlich, was zu einem größeren physikalischen Bereich führt. Diese zusätzliche Reserve kann bei der Verwendung der erweiterten transponierten Farrow-Struktur weggelassen werden, was eine leistungsfähigere und flächeneffizientere Implementierung ermöglicht.
Um das Verständnis der Offenbarung weiter zu unterstützen, zeigt
Im Vergleich zu dem Ausführungsbeispiel von
Eine Akkumulations- und Dump-Einheit (A&D) kann jede geeignete Schaltung, Vorrichtung oder jeder Code sein, die/der eine Speicherung und Summierung einer Vielzahl von Werten vorsieht und ausgebildet ist, bei Empfang eines Auslösersignals, zum Zurücksetzen des akkumulierten Werts auf null und Ausgeben des akkumulierten Werts. Als Beispiel zeigt
Die Akkumulations- und Dump-Einheit
Eine Akkumulations- und Ladeeinheit kann jede geeignete Schaltung, Vorrichtung oder jeder Code sein, die/der die Speicherung und Summierung einer Vielzahl von Werten vorsieht und ausgebildet ist, bei Empfang eines Auslösersignals, den akkumulierten Wert zur Verfügung zu stellen und sich auf einen definierten Wert zurückzusetzen. Als Beispiel zeigt
Die Akkumulations- und Ladeeinheit
Verschiedene Modifikationen und Verbesserungen können an Obigem vorgenommen werden, ohne von dem Umfang der Offenbarung abzuweichen.
Es ist offensichtlich, dass der Logikcode, Programme, Module, Prozesse, Verfahren und die Reihenfolge, in der die jeweiligen Elemente jedes Verfahrens durchgeführt werden, rein beispielhaft sind. Abhängig von der Implementierung können sie in jeder Reihenfolge oder parallel durchgeführt werden, sofern in der vorliegenden Offenbarung nichts anderes angegeben ist. Weiter bezieht sich der Logikcode nicht auf eine bestimmte Programmiersprache oder ist auf diese beschränkt und kann ein oder mehrere Module aufweisen, die auf einem oder mehreren Prozessoren in einer verteilten, nicht-verteilten oder Multiprozessorumgebung ausgeführt werden.
Das oben beschriebene Verfahren kann bei der Herstellung von „integrierte Schaltung”-Chips verwendet werden. Die resultierenden „integrierte Schaltung”-Chips können durch den Hersteller in roher Waferform (d. h. als ein einzelner Wafer, der mehrere nicht-konfektionierte Chips aufweist), als bloßer Chip oder in einer konfektionierten Form verteilt werden. In dem letzteren Fall ist der Chip in einer Einzel-Chip-Packung angebracht (wie ein Kunststoffträger, mit Leitungen, die an einem Motherboard oder einem anderen Träger höherer Schicht befestigt sind) oder in einer Multi-Chip-Packung (wie ein Keramik-Träger, der entweder eine oder beide Oberflächenverbindungen oder vergrabene Verbindungen hat). In jedem Fall wird der Chip dann mit anderen Chips, diskreten Schaltungselementen und/oder anderen Signalverarbeitungsvorrichtungen als Teil entweder (a) eines Zwischenprodukts, wie ein Motherboard, oder (b) eines Endprodukts integriert. Das Endprodukt kann jedes Produkt sein, das „integrierte Schaltung”-Chips enthält, die von Spielzeug und anderen Low-End-Anwendungen bis hin zu fortgeschrittenen Computerprodukten mit einer Anzeige, einer Tastatur oder einer anderen Eingangsvorrichtung und einem zentralen Prozessor reichen.
Während Aspekte der Erfindung unter Bezugnahme auf zumindest ein beispielhaftes Ausführungsbeispiel beschrieben wurden, ist für Fachleute offensichtlich, dass die Erfindung nicht darauf beschränkt ist. Vielmehr ist der Umfang der Erfindung nur in Verbindung mit den beigefügten Ansprüchen zu interpretieren und es ist offensichtlich, dass der/die Erfinder der Meinung ist/sind, dass der beanspruchte Gegenstand die Erfindung ist.
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.