-
Die Anmeldung betrifft eine Signalverarbeitungseinrichtung und eignet sich insbesondere für den Einsatz in der Hochfrequenz-Meßtechnik z. B. zur Auswertung von Mobilfunksignalen.
-
Bei der Realisierung von Meßgeräten für Nachrichtensignale für verschiedene Telekommunikationsstandards, insbesondere für Mobilfunksysteme besteht die Problematik, daß teilweise eine Auswertung in Echtzeit erfolgen muß, bei anderen Anwendungen aber eine Auswertung in Echtzeit aufgrund der hohen Datenrate und der begrenzten Ressourcen der digitalen Signalverarbeitungseinheit nicht möglich ist. In diesem Fall muß auf eine Nachverarbeitung zurückgegriffen werden.
-
Aus der
US 6,333,708 B1 geht ein Datenakquirierungssystem hervor, bei dem N Datenströme mit Datenworten aus jeweils m Bits am Ausgang eines Analog-Digital-Wandlers über einen Demultiplexer parallel einem RAM-Speicher und einer Echtzeitverarbeitungsschaltung zugeführt werden. Ein digitales Datenverarbeitungssystem kann über einen Datenbus auf Daten im RAM-Speicher oder von der Echtzeitverarbeitungsschaltung erzeugte Ergebnisse zugreifen.
-
Aus der
EP 0 629 044 B1 ist eine Signalverarbeitungseinrichtung nach dem Oberbegriff des Anspruchs 1 bekannt. Bei der dortigen Anwendung handelt es sich um eine Bildverarbeitung für Digitalkameras. Die Bildaufnahme erfolgt über einen schnellen Analog/Digital-Umsetzer und die dabei erzeugten Bilddaten werden in einem Zwischenspeicher abgelegt. Für eine Zoom-Funktion ist es notwendig, Interpolationen zwischen den einzelnen Bildpunkten zur Erzeugung von Zwischen-Bildpunkten vorzunehmen. Diese Interpolation erfolgt nicht in Echtzeit, sondern mit einer durch den Interpolator vorgegebenen Verarbeitungsgeschwindigkeit, so daß die Taktrate, mit welcher die Daten aus dem Zwischenspeicher ausgelesen werden, kleiner ist, als die Taktrate, mit welcher die Bilddaten in den Zwischenspeicher eingeschrieben werden. Die interpolierten Daten werden in einem Ausgangsspeicher zur Verfügung gestellt.
-
Nachteilig bei der aus der
EP 0 629 044 B1 bekannten Signalverarbeitungseinrichtung ist jedoch, daß die Daten stets in dem Zwischenspeicher zwischengespeichert werden müssen, auch dann, wenn keine Interpolation vorgenommen werden muß bzw. auch dann, wenn nur eine grobe Interpolation für wenige Zwischen-Bildpunkte vorgenommen werden muß, so daß die Verarbeitung auch in Echtzeit erfolgen kann. Aufgrund des stets zwischen dem Analog/Digital-Umsetzer und der dorthin interpolierenden Signalverarbeitungseinheit zwischengeschalteten Zwischenspeichers wird die Gesamtverarbeitungszeit für die Verarbeitungsvorgänge, die in Echtzeit erfolgen können, unnötig erhöht.
-
Der Erfindung liegt die Aufgabe zugrunde, eine Signalverarbeitungseinrichtung nach dem Oberbegriff des Anspruchs 1 derart weiterzubilden, daß die Gesamtverarbeitungszeit verringert wird und die Effektivität der Signalverarbeitung gesteigert wird.
-
Die Aufgabe wird durch die Merkmale des Anspruchs 1 gelöst.
-
Erfindungsgemäß ist eine Umschalteinrichtung vorhanden, mittels welcher die Signalverarbeitungseinheit so schaltbar ist, daß die Signalverarbeitungseinheit wahlweise entweder dem Zwischenspeicher nachgeschaltet wird, wenn dies zur Durchführung einer Nachverarbeitung in einem Nachverarbeitungsbetrieb erforderlich ist, oder aber unter Umgehung des Zwischenspeichers in einem Echtzeitbetrieb dem Analog/Digital-Umsetzer nachgeschaltet wird. In den Fällen, in welchen die Verarbeitung in Echtzeit erfolgen kann, wird eine unnötige Zwischenspeicherung im Zwischenspeicher somit vermieden.
-
Die Unteransprüche betreffen vorteilhafte Weiterbildungen der Erfindung.
-
Es ist vorteilhaft, der Signalverarbeitungseinheit einen Resampler vorzuschalten, welcher die Abtastrate des Analog/Digital-Umsetzers auf eine gewünschte Abtastrate der Signalverarbeitungseinheit umsetzt. Bei der Nachverarbeitung kann dabei die Performance der Signalverarbeitung durch entsprechende Einstellung der Eingangstaktrate der Signalverarbeitungseinheit von dem Resampler adaptiert werden. In der Regel ist die Nachverarbeitungszeit gegenüber der restlichen Verarbeitungszeit vernachlässigbar. Durch eine Nachverarbeitung mit entsprechend adaptierter Abtastrate kann eine hohe Performance, z. B. steilflankige Filter durch Verdoppelung der Taktzahl und der damit verbundenen Verdoppelung der Tapzahl, erreicht werden, ohne daß die Gesamtverarbeitungszeit merklich erhöht wird.
-
Besonders vorteilhaft ist es, bei der Nachverarbeitung durch die Methode des „Zero-Stuffing” (Einfügen von Null-Werten in die Abtastfolge) das nutzbare Nyquistband zu vergrößern.
-
Weiterhin ist es vorteilhaft, für die Datenbus-Verbindung zwischen dem Analog/Digital-Umsetzer und dem Zwischenspeicher einen Packer zu verwenden, der die Wortbreite der Datenworte des digitalen Eingangssignals erhöht.
-
Nachfolgend wird ein Ausführungsbeispiel der erfindungsgemäßen Signalverarbeitungseinrichtung unter Bezugnahme auf die Zeichnung näher beschrieben. In der Zeichnung zeigen:
-
1 ein Blockschaltbild eines Ausführungsbeispiels der erfindungsgemäßen Signalverarbeitungseinrichtung beim Normal-Betrieb;
-
2 das Spektrum nach dem Analog/Digital-Umsetzer im Vergleich zu der Durchlaß-Bandbreite des Eingangs-Tiefpasses des Resamplers;
-
3 das in 1 dargestellte Blockschaltbild in einem ersten Zustand beim Nachverarbeitungs-Betrieb;
-
4 das in 1 dargestellte Blockschaltbild in einem zweiten Zustand beim Nachverarbeitungs-Betrieb;
-
5 Spektren an unterschiedlichen Stellen des Blockschaltbilds nach 1 ohne „Zero-Stuffing”;
-
6 Spektren an unterschiedlichen Stellen des Blockschaltbilds nach 1 mit „Zero-Stuffing”;
-
In 1 ist das Gesamtblockschaltbild der erfindungsgemäßen Signalverarbeitungseinrichtung 1 gezeigt. Mit dieser Anordnung ist sowohl eine Echtzeitverarbeitung (Normalbetrieb) als auch eine Nachverarbeitung möglich. Generell sind in den Figuren die aktiven Signalpfade durch dicke Linien gekennzeichnet. In 1 sind die aktiven Signalpfade bei Normalbetrieb gezeigt. Am Eingang 2 wird das analoge Eingangssignal SAE vom A/D-Umsetzer 3 mit der Abtastrate fADC abgetastet. Das analoge Eingangssignal SAE liegt entweder im Basisband oder in Zwischenfrequenz(ZF)-Lage vor. Bei Basisband-Signalen sind zwei A/D-Umsetzer (Realteil I und Imaginärteil Q) notwendig, zwecks Übersichtlichkeit wurde in 1 jedoch nur ein A/D-Umsetzer 3 eingezeichnet.
-
Bei den nachfolgenden Erläuterungen werden nur Basisband-Signale betrachtet. Die nachfolgenden Betrachtungen gelten gleichermaßen für die ZF-Verarbeitung. Am Eingang des Resamplers 8 muss dann lediglich ein Mischer (NCO) zur Verschiebung ins Basisband vorgesehen werden.
-
Die abgetastete Folge des digitalen Eingangssignals SDE besitzt die Wortbreite w und wird zuerst zur Signalverarbeitungsstufe 4, die aus einem Multiplexer 5 und einem Packer 6 besteht, geführt. Vor der eigentlichen Signalverarbeitung muss die Taktrate auf die systemspezifische Taktrate der Signalverarbeitungseinheit gewandelt werden. Bei einer Datenübertragung wird in der Regel ein ganzzahliges Vielfaches der Symbolrate gewählt. Diese Aufgabe übernimmt der Resampler 8. Die Signalverarbeitungsstufe 7 besteht aus einem Multiplexer 9, dem Resampler 8 und der Signalverarbeitungseinheit 10.
-
Im Normalbetrieb ist die Eingangstaktrate fRes des Resamplers 8 gemäß fRes = fADC gleich der Abtastrate des A/D-Umsetzers 3. Im Resampler 8 wird vor der eigentlichen Abtastratenumsetzung eine Tiefpaß-Filterung in dem Eingangstiefpaß 22 durchgeführt. Dies ist notwendig, weil sonst Aliasing-Effekte auftreten würden. In 1 ist der Frequenzgang des Eingangs-Tiefpasses 22 schematisch gezeigt. Der Durchlaßbereich erstreckt sich im Beispiel über |f/fRes| ≤ 0.2 (1) und der Übergangsbereich erstreckt sich über 0.2 ≤ |f/fRes| ≤ 0.3.
-
Durch den Einsatz des Tiefpaß-Filters 22 darf auch ein nicht-bandbegrenztes Signal auf den Resampler 8 gegeben werden. Das Nutzspektrum des Eingangssignals muss lediglich im Durchlaßbereich vom Eingangs-Tiefpaß 22 liegen.
-
In der Signalverarbeitungseinheit 10 wird im Ausführungsbeispiel die Demodulation des Empfangssignals durchgeführt. Dort werden Signalverarbeitungensblöcke wie z. B. der NCO (Numerical Controlled Oscillator), Dezimations-Filter oder signalangepaßte FIR (Finit Impulse Response)-Filter verwendet. Die berechnete Ausgangsfolge wird im Anschluß an die Signalverarbeitung in den Ausgangsspeicher 17 (RAM 2) geschrieben, dem das Signal über Multiplexer 12 und 13 zugeführt wird, die in der Signalverarbeitungsstufe 14 angeordnet sind. Sobald die gewünschte Beobachtungslänge im Ausgangsspeicher 17 vorliegt, wird die Signalverarbeitung angehalten und der Ausgangsspeicher 17 (RAM 2) vom Host-Rechner 23 ausgelesen. Danach wird die Echtzeit-Signalverarbeitung wieder gestartet und der beschriebene Prozeß wiederholt sich.
-
Im Normalbetrieb ist die nutzbare Bandbreite durch die maximale Eingangs-Taktrate maxfRes der Signalverarbeitung eingeschränkt. Zur Veranschaulichung ist in 2 die maximal nutzbare Bandbreite im Normalbetrieb skizziert. Im oberen Bild in 2 wird das Spektrum nach dem A/D-Umsetzer 3 (siehe Stelle 1 in 1) gezeigt. Zwecks einfacher Darstellung wurde ein dreiecksförmiges Spektrum gewählt. Aus dem Vergleich mit dem Frequenzgang des Eingangs-Tiefpasses 22 des Resamplers 8 im unteren Bild erkennt man, dass das Eingangssignal SDE die verfügbare Bandbreite voll ausnutzt. Bei einer maximalen Eingangstaktrate von z. B. maxfRes = 100 MHz ergibt sich somit eine maximal nutzbare zweiseitige Bandbreite von maxBW = 40 MHz, d. h. 40% vom Nyquistbandes wird genutzt.
-
Allgemein ergibt sich die maximal nutzbare zweiseitige Bandbreite zu maxBW = 2·0.2·maxfRes. (2)
-
Der Erfindung liegt das technische Problem zugrunde, die nutzbare Bandbreite bei vorgegebener Hardware zu erhöhen. Die nutzbare Bandbreite kann um ein Vielfaches mit dem der vorliegenden Anmeldung zugrunde gelegten Konzept der Nachverarbeitung erhöht werden. Hierbei wird die leistungsfähige Signalverarbeitungs-Hardware in der Nachverarbeitung genutzt. Die Rechenzeit steigt zwar gegenüber der Echtzeit-Verarbeitung an. Allerdings ist die benötigte Nachverarbeitungs-Rechenzeit in der Regel wesentlich kürzer als der Zeitbedarf der restlichen Prozesse im Host-Rechner 23, d. h. aus Sicht des Host-Rechners 23 handelt es sich um eine Quasi-Echtzeit-Verarbeitung.
-
Nachfolgend wird auf die einzelnen Schritte des Verfahrens eingegangen. Zuerst wird die Abtastfolge in den Zwischenspeicher 11 (RAM 1) geschrieben. In 3 sind die aktiven Signalpfade beim Schreiben in den Zwischenspeicher 11 (RAM 1) gezeigt. Die Abtastrate fADC des A/D-Umsetzers 3 muss hinreichend groß gewählt werden, um die gewünschte Nutzbandbreite zu erreichen. In der Regel ist die Abtastrate fADC größer als die maximale Resampler-Eingangstaktrate maxfRes. In der Regel können die Abtastwörter nicht mit der hohen A/D-Abtastrate über den Datenbus 15 übertragen werden, weil die zulässige Rate überschritten wird. Deshalb werden die Abtastwörter mit der Wortbreite w auf den Packer 6 gegeben. Dort werden z. B. vier aufeinanderfolgende Worte zu einem Wort der Wortbreite 4w gepackt und anschließend mit der um den Faktor vier niedrigeren Wortrate fADC/4 über den Datenbus 15 in den Zwischenspeicher 11 (RAM 1) geschrieben. Nach der gewünschten Beobachtungsdauer wird der Schreibprozeß in den Zwischenspeicher 11 abgebrochen.
-
Die darauffolgende Nachverarbeitung wird in 4 gezeigt. Zuerst werden die gepackten Abtastwerte im Entpacker 16 wieder in die einzelnen Abtastwerte mit der Wortbreite w entpackt. Die entpackten Abtastwerte werden danach mit der vorgebbaren Eingangstaktrate fRes vom Resampler 8 über den Multiplexer 9 eingelesen. Nach Durchlaufen der Signalverarbeitungseinheit 10 wird die Ergebnisfolge in den Ausgangsspeicher 17 (RAM 2) geschrieben. Im Anschluß wird die Ergebnisfolge vom Host-Rechner 23 aus dem Ausgangsspeicher 17 (RAM 2) ausgelesen.
-
Eine Besonderheit der Nachverarbeitung ist die Möglichkeit, dass ein Austausch zwischen Performance und Rechenzeit vorgenommen werden kann. Das Verfahren soll anhand dem Beispiel eines FIR-Filters als Signalverarbeitungseinheit 10 erläutert werden:
- – In der Signalverarbeitung werde ein FIR-Filter mit der Ausgangs-Taktrate fFIR_out verwendet.
- – Die Gesamt-Dezimation Down zwischen Resampler-Eingang 18 und FIR-Ausgang 19 betrage
- – Die Impulsantwortlänge des FIR-Filters soll nofTaps Samples lang sein.
- – Bei der direkten Realisierung des FIR-Filters wären nofTaps Multiplizierer mit der Ausgangstaktrate fFIR_out notwendig. Zwecks Einsparung von Ressourcen wird nur ein Multiplizierer verwendet, welcher mit dem Systemtakt fsys arbeitet. Das Filter arbeitet sequentiell, d. h. es können innerhalb einer Ausgangs-Taktperiode maximal fsys/fFIR_out Multiplikationen durchgeführt werden. Damit wird die verfügbare Tapzahl durch die Restriktion begrenzt.
-
Durch Einsetzen von Gleichung (4) in Gleichung (3) ergibt sich für die Eingangs-Taktrate des Resamplers
8 die Anforderung
-
Die Interpretation von Gleichung (5) ist wie folgt:
Möchte man bei der Nachverarbeitung die Tapzahl nofTaps verdoppeln, muss die Eingangs-Taktrate des Resamplers 8 halbiert werden. Weiterhin erkennt man, dass die Eingangs-Taktrate des Resamplers 8 verdoppelt werden darf, wenn der Downsampling-Faktor Down verdoppelt wird.
-
Anhand des Beispiels wurde gezeigt, dass in der Nachverarbeitung die Performance der Signalverarbeitung fRes durch entsprechende Einstellung der Eingangstaktrate fRes des Resamplers 8 adaptiert werden kann. In der Regel ist die Nachverarbeitungszeit gegenüber der restlichen Verarbeitungszeit vernachlässigbar. Damit kann durch das Nachverarbeitungs-Konzept eine hohe Performance, z. B. steilflankige Filter durch Verdopplung der Tapzahl, erreicht werden, ohne die Gesamt-Rechenzeit merklich zu erhöhen. Bei der Online-Implementierung hingegen würde beispielsweise eine Verdopplung der Tapzahl nur durch eine Verdopplung der Multiplizierer-Anzahl erreicht werden, was zu einem erhöhten Ressourcenbedarf, sofern überhaupt verfügbar, und einem erhöhten Spitzenleistungsverbrauch des Chips führen würde.
-
In 5 ist entsprechend zur Online-Verarbeitung in 2 die maximal nutzbere Bandbreite für die Nachverarbeitung gezeigt. Im oberen Bild ist das Spektrum nach dem A/D-Umsetzer 3 (siehe Stelle 1 in 4) und im mittleren Bild das Spektrum nach dem Auslesen aus dem Zwischenspeicher 11 (RAM 1) (siehe Stelle 2 in 4) gezeigt. Der einzige Unterschied zwischen diesen beiden Spektren sind die unterschiedlichen Taktraten fADC bzw. fRes. Damit ergibt sich entsprechend zu Gleichung (2) die maximal nutzbare Bandbreite von maxBW = 2·0.2·maxfADC, (6) d. h. die nutzbare Bandbreite hängt nicht mehr von der maximalen Eingangs-Taktrate des Resamplers 8, sondern von der in der Regel wesentlich größeren maximalen Abtastrate vom A/D-Umsetzer 3 ab. Bei einer maximalen Abtastrate von beispielsweise maxfADC = 300 MHz ergibt sich somit eine maximal nutzbare zweiseitige Bandbreite von maxBW = 120 MHz, d. h. die Bandbreite wurde im Beispiel gegenüber der Online-Verarbeitung um den Faktor 3 erhöht.
-
Nachfolgend wird gezeigt, dass bei der Nachverarbeitung durch die Maßnahme des sog. „Zero-Stuffing” das nutzbare Nyquistband vergrößert wird. Im nachfolgenden Beispiel wird um den Upsampling-Faktor up = 2 upgesampelt, d. h. die Taktrate wird nach dem Entpacken durch Einfügen von Nullen verdoppelt (siehe Stelle 3 in 4). Das Einfügen von Nullen wird auch als „Zero-Stuffing” bezeichnet und wird durch den Multiplexer 21 im oberen Signalzweig nach dem Entpacker 16 aktiviert, indem durch den Multiplexer 21 auf den Up-Sampler 20 geschaltet wird, der die Null-Werte einfügt.
-
In 6 sind die einzelnen Spektren gezeigt. Im oberen Bild ist das Spektrum des Eingangssignals gezeigt. Man erkennt, dass die Bandbreite um den Faktor 2 auf 80% der Nyquistbandbreite erhöht wurde (vgl. mit 5). In den darunterliegenden Bilder wird gezeigt, dass dieses um den Faktor 2 breitere Spektrum unverzerrt verarbeitet wird. Im zweiten Bild von oben wird das Spektrum vor (Stelle 2 in 4) und im Bild darunter das Spektrum nach (Stelle 3 in 4) dem Zero-Stuffing gezeigt. Durch das Zero-Stuffing wurde lediglich die Abtastrate auf die Taktrate fRes verdoppelt. Beim Zero-Stuffing wird keine Filterung durchgeführt, d. h. das Spektrum wird nicht verändert. Damit erscheint das erste Wiederholspektrum nach dem Zero-Stuffing bei der halben Ausgangstaktrate.
-
Der Vergleich mit dem Eingangs-Tiefpaß 22 des Resamplers 8 im untersten Bild zeigt, dass das erste Wiederholspektrum vollständig durch den Tiefpaß 22 unterdrückt wird. Selbst wenn Spektralanteile im Transitionbereich liegen würden, stört das in der Regel auch nicht, weil dieser Bereich durch das signalangepaßte Filter in der nachfolgenden Signalverarbeitungseinheit 10 unterdrückt wird.
-
Damit ergibt sich gegenüber Gleichung (6) nochmals eine Steigerung der Bandbreite um den Faktor zwei auf maxBW = 2·0.2·maxfADC, (7) d. h. bei der Nachverarbeitung mit Zero-Stuffing wird 80% vom Nyquistband genutzt. Bei einer maximalen Abtastrate von beispielsweise maxfADC = 300 MHz ergibt sich somit eine maximal nutzbare zweiseitige Bandbreite von maxBW = 240 MHz, d. h. die Bandbreite wurde gegenüber der Online-Verarbeitung um den Faktor 6 erhöht.
-
Durch die Erhöhung des Upsampling-Faktors auf up = 3 würde das gesamte Nyquistband vom Eingangssignal im Durchlaßbereich des Tiefpaß-Filters 22 liegen. Zwar liegt dann auch ein Teil vom ersten Wiederholspektrum im Durchlaßbereich. Dieses Wiederholspektrum muss durch das signalangepaßte Filter nach dem Resampler 8 in der nachfolgenden Signalverarbeitungseinheit 10 unterdrückt werden.
-
Zusammenfassend ist Folgendes festzuhalten: Bei der Nachverarbeitung kann trotz des bandbegrenzenden Resamplers 8 die gesamte 100% Nyquistbandbreite des Eingangssignals analysiert werden. Natürlich gilt das nur asymptotisch, weil bei 100% Nyquistbandbreite ein unendlich steilflankiges signalangepaßtes Filter benötigt wird. Dies wird durch das Zero-Stuffing-Verfahren erreicht.
-
Die Erfindung ist nicht auf das dargestellte Ausführungsbeispiel beschränkt. Zum Beispiel können in der Signalverarbeitungseinheit 10 auch IIR-Filter oder andere digitale Signalverarbeitungselemente zum Einsatz kommen. Sämtliche Elemente des beschriebenen Ausführungsbeispiels sind beliebig miteinander kombinierbar.