-
Die
Erfindung betrifft eine Signalverzögerungseinrichtung und ein
Verfahren zur dynamischen Verzögerung
eines digital abgetasteten Signals.
-
Beispielsweise
für Signalgeneratoren,
welche Mobilfunksignale generieren, besteht die Notwendigkeit, die
im Basisband digital vorliegenden Signale dynamisch zu verzögern, beispielsweise
um den variablen Schwund (Fading) zu simulieren. Dynamisches Fading
ist für
Mobilfunkübertragungsstrecken,
bei welchen sich die Abschattungs- und Reflexionsbedingungen des
sich räumlich
bewegenden Mobilfunkgeräts
auf der Übertragungsstrecke
ständig ändern, eine
typische Kanaleigenschaft. In Signalgeneratoren für die Mobilfunkmeßtechnik
müssen
diese dynamischen Signalverzögerungen
daher in der Basisbandaufbereitung nachgebildet werden. Dynamische
Verzögerung
bedeutet dabei, daß die
Zeitverzögerung,
welche das Signal erfährt,
nicht konstant ist, sondern sich dynamisch ändert. Der Signalgenerator verfügt deshalb
in dem Basisband über
eine Signalverzögerungseinrichtung,
welche Gegenstand der vorliegenden Erfindung ist. Die gesamte Basisbandaufbereitung
und die Anordnung der erfindungsgemäßen Signalverzögerungseinrichtung
können
beispielsweise aus der
DE
101 24 372 A1 entnommen werden, wobei die Signalverzögerungseinrichtung dort
als Fadingeinheit (Fad A, Fad B) bezeichnet ist.
-
Solange
nur eine statische Verzögerung
in der Signalverzögerungseinrichtung
vorgenommen werden soll, ist dies nicht weiter problematisch. Für jeden
Abtastwert des Eingangssignals wird genau ein verzögerter Abtastwert
mit einer konstanten Verzögerung
erzeugt. Wenn dies im Rahmen der Genauigkeit ausreichend ist, genügt es, die
Abtastwerte des Eingangssignals in einen zyklischen Speicher zu schreiben,
beispielsweise in ein RAM (Random Access Memory) und zyklisch verspätet auszulesen. Eine
solche zyklische Speicheranordnung für einen Fading-Simulator ist beispielsweise
aus der
DE 101 08
922 A1 bekannt. Zur Erhöhung
der Genauigkeit kann dem zyklischen Speicher eine Interpolationseinrichtung
nachgeschaltet werden, die zwischen zwei Ausgangs-Abtastwerten des
zyklischen Speichers entweder linear, in der Regel jedoch mit einer Funktion
höherer
Ordnung, interpoliert.
-
Ein
Problem tritt dann auf, wenn die Verzögerung nicht statisch, also
konstant, sondern dynamisch, d. h. zeitlich variabel ist. Nimmt
die durch die Interpolation hervorgerufene Zusatzverzögerung gegenüber den
Ausgangs-Abtastwerten
des zyklischen Speichers zeitlich zu, so führt dies dazu, daß in einem
Bereich, der durch zwei aufeinanderfolgende, aus dem Speicher ausgelesene
Abtastwerte definiert ist, nicht nur ein Zwischenwert, sondern zwei
Zwischenwerte interpoliert werden müssen. Eine solche Bereichsüberschreitung
stellt noch kein tatsächliches Problem
dar. Während
ein neuer Wert in den Speicher eingeschrieben wird, wird kein neuer
Wert aus dem Speicher ausgelesen, so daß die Interpolationseinrichtung
dann nochmals eine Interpolation mit den gleichen Abtastwerten,
allerdings mit anderen Interpolationskoeffizienten, die der neuen,
zweiten Interpolationsstelle entsprechen, vornimmt.
-
Ein
tatsächliches
Problem ergibt sich aber, wenn die durch die Interpolation hervorgerufene
Zusatzverzögerung
zeitlich abnimmt und somit in einen Bereich zwischen zwei aufeinanderfolgenden
Ausgangs-Abtastwerten des Speichers kein Interpolationswert fällt und
statt dessen der nächste
Interpolationswert bereits in den nächsten Bereich zwischen den
nächsten
beiden benachbarten Ausgangs-Abtastwerten
des Speichers fällt.
Dies ist insofern problematisch, als in diesem Fall zwei Ausgangswerte gleichzeitig
aus dem Speicher ausgelesen werden müßten, was bei üblichen
Speichern mit einem Lesetor und einem Schreibtor nicht möglich ist.
Zwar gibt es auch aufwendigere Speicher mit einem Schreibtor und
zwei Lesetoren, diese Speicher sind jedoch erheblich teurer und
würden
den Aufwand deutlich erhöhen.
Auch die in der
DE
101 08 922 A1 vorgeschlagene Lösung mit dem Speicher nachgeschalteten Lese-Fifo-Speichern
würde den
Aufwand beträchtlich erhöhen.
-
Der
Erfindung liegt daher die Aufgabe zugrunde, eine Signalverzögerungseinrichtung
und ein Verfahren zur Verzögerung
eines digitalen Signals zu schaffen, die bzw. das mit einem geringen
Implementierungsaufwand auch beim Auftreten von Bereichsüberschreitungen
und Bereichsunterschreitungen eine dynamische Signalverzögerung ermöglicht.
-
Die
Aufgabe wird bezüglich
der Signalverzögerungseinrichtung
durch die Merkmale des Anspruchs 1 und bezüglich des Verfahrens durch
die Merkmale des Anspruchs 5 gelöst.
-
Der
Erfindung liegt die Erkenntnis zugrunde, daß es statt einer aufwendigen
Erhöhung
des Zugriffs auf die Speichereinrichtung vorteilhaft ist, den bei
der Bereichsunterschreitung benötigten
Zusatz-Abtastwert in einem parallel zu der Speichereinrichtung angeordneten
Register bereitzustellen. Wird die untere Bereichsgrenze erreicht,
so wird das Register mit dem Zusatz-Abtastwert geladen und kann ausgelesen
werden, wenn der passende Abtastwert am Ausgang der Speichereinrichtung
angekommen ist.
-
Die
Unteransprüche
betreffen vorteilhafte Weiterbildungen der Erfindung.
-
Vorteilhaft
wird nach dem Speichern eines Abtastwerts in dem Register der nächste wieder
der Speichereinrichtung zugeführte
Abtastwert markiert, beispielsweise durch ein von der Datenbreite
nicht belegtes Bit der Wortbreite der Speichereinrichtung. Wenn
dieser markierte Abtastwert den Ausgang der Speichereinrichtung
erreicht, kann dies anhand der Markierung erkannt werden und es
kann dann sowohl dieser markierte Abtastwert aus der Speichereinrichtung
als auch der Zusatz-Abtastwert aus dem Register der Interpolationseinrichtung
zugeführt
werden, so daß die
nächste
Interpolation nicht in dem nächsten
Bereich, sondern in dem übernächsten Bereich
vorgenommen werden kann. Diese Markierung ist jedoch zur Durchführung der
Erfindung nicht zwingend. Da die Laufzeit durch die Speichereinrichtung an
sich bekannt ist, könnte
auch durch eine – in
der Regel allerdings kompliziertere – Ablaufsteuerung erfaßt werden,
wann der auf den in dem Register gespeicherten Abtastwert unmittelbar
nachfolgende Abtastwert am Ausgang der Speichereinrichtung angekommen
ist. Die Laufzeit durch den Speicher ergibt sich aus der gewünschten
Grobverzögerung.
Sie hängt
nicht von der Speicherkapazität
ab.
-
Die
Interpolationseinrichtung besteht vorteilhaft aus einem Polyphasenfilter,
welchem zur Reduzierung des Aufwands ein Halbbandfilter (half-band filter)
vorgeschaltet ist.
-
Die
Erfindung wird nachfolgend unter Bezugnahme auf die Zeichnung näher beschrieben.
In der Zeichnung zeigen:
-
1A ein
Zeitschema zur Veranschaulichung einer statischen Verzögerung;
-
1B ein
Zeitschema zur Veranschaulichung einer dynamischen Verzögerung mit
einer Bereichsüberschreitung;
-
1C ein
Zeitschema zur Veranschaulichung einer dynamischen Verzögerung mit
einer Bereichsunterschreitung;
-
2 ein
Ausführungsbeispiel
der erfindungsgemäßen Signalverzögerungseinrichtung
in einem ersten Zustand;
-
3 ein
Ausführungsbeispiel
der erfindungsgemäßen Signalverzögerungseinrichtung
in einem zweiten Zustand;
-
4 ein
Ausführungsbeispiel
der erfindungsgemäßen Signalverzögerungseinrichtung
in einem dritten Zustand;
-
5 ein
Ausführungsbeispiel
der erfindungsgemäßen Signalverzögerungseinrichtung
in einem vierten Zustand;
-
6 ein
Ausführungsbeispiel
der erfindungsgemäßen Signalverzögerungseinrichtung
in einem fünften
Zustand;
-
7 ein
Flußdiagramm
zur Erläuterung
des erfindungsgemäßen Verfahrens
und
-
8 ein
Zeitschema zur Erläuterung
der Funktion des Halbbandfilters (half-band filter) und des Polyphasenfilters.
-
Bevor
anhand der 1A bis 1C die
der vorliegenden Erfindung zugrundeliegende Problematik erläutert wird,
wird zunächst
anhand von 2 der grundsätzliche Aufbau der Signalverzögerungseinrichtung 1 erläutert.
-
Ein
digital abgetastetes Eingangssignal Sin(k)
wird einer Speichereinrichtung 2 zugeführt. Das Eingangssignal Sin(k) wird in die Speichereinrichtung 2 zyklisch
eingespeichert. Die Speichereinrichtung erzeugt gewissermaßen eine
Grobverzögerung. Nach
dieser Grobverzögerung
wird der entsprechende Abtastwert aus der Speichereinrichtung 2 ausgelesen
und einer Interpolationseinrichtung 3 zugeführt, die
im dargestellten Ausführungsbeispiel
aus einem der Speichereinrichtung 2 nachgeschalteten Halbbandfilter
(half-band filter) 4 und einem dem Halbbandfilter (half-band
filter) 4 nachgeschalteten Polyphasenfilter 5 besteht.
-
Das
Polyphasenfilter 5 besteht im dargestellten Ausführungsbeispiel
aus einem ersten Verzögerungselement 61 , einem zweiten Verzögerungselement 62 und einem dritten Verzögerungselement 63 , einem ersten Multiplexer 71 , einem zweiten Multiplexer 72 , einem dritten Multiplexer 73 , einem vierten Multiplexer 74 und einem fünften Multiplexer 75 . Während
der fünfte
Multiplexer 75 eine später noch
zu beschreibende Sonderfunktion hat, dient der erste Multiplexer 71 zum Umschalten zwischen dem Eingang des
ersten Verzögerungselements 61 und dem Eingang des zweiten Verzögerungselements 62 . Der zweite Multiplexer 72 dient zum Umschalten zwischen dem
Eingang des zweiten Verzögerungselements 62 und dem Ausgang des ersten Verzögerungselements 61 bzw. dem Eingang des dem ersten Verzögerungselement 61 nachgeschalteten dritten Verzögerungselements 63 . Der dritte Multiplexer 73 dient zum Umschalten zwischen dem
Eingang des dritten Verzögerungselements 63 und dem Ausgang des zweiten Verzögerungselements 62 . Hingegen dient der vierte Multiplexer 74 zum Umschalten zwischen dem Ausgang
des zweiten Verzögerungselements 62 und dem Ausgang des dritten Verzögerungselements 63 .
-
Die
Ausgänge
der Multiplexer 71 bis 74 sind mit Multiplizierern 81 bis 84 verbunden.
Jeder Multiplizierer 81 bis 84 ist außerdem mit einem Koeffizientenspeicher 91 bis 94 verbunden,
in welchem mehrere auslesbare Multiplikationskoeffizienten I0 bis I3 gespeichert
sind. Nachdem die weniger signifikanten Bits der Ausgangssignale
der Multiplizierer 81 bis 84 abgeschnitten wurden, werden diese
Ausgangssignale paarweise einem ersten Addierer 101 und
einem zweiten Addierer 102 zugeführt, während die
Ausgänge
der Addierer 101 und 102 wiederum in einem dritten Addierer 103 zu einem Gesamtsignal summiert werden.
Nach einer Rundung in einer Rundungseinrichtung 11 steht
das Ausgangssignal Sout(k) als interpolierter
Abtastwert zur Verfügung.
-
Anhand
von 8 wird nachfolgend die grundsätzliche Arbeitsweise der Interpolationseinrichtung 3 erläutert. Dargestellt
sind am linken und rechten Bildrand zwei als ”Originalwerte” bezeichnete
Ausgangs-Abtastwerte x(k – 1)
und x(k) der Speichereinrichtung 2. Das Halbbandfilter
(half-band filter) 4 interpoliert zusätzlich zu diesen ”Originalwerten” einen
zeitlich exakt mittig liegenden Zwischenwert. In 8 sind
die drei Ausgangswerte y(2k – 3), y(2k – 2) und
y(2k – 1)
des Halbbandfilters (half-band filter) 4 dargestellt. Das
Polyphasenfilter 5 interpoliert im Ausführungsbeispiel an zehn äquidistanten
Polyphasen p0 bis p9 zwischen
den durch das Halbbandfilter (half-band filter) 4 erzeugten
Ausgangswerten. An welcher der zehn verschiedenen Polyphasen p0 bis p9 interpoliert
wird, hängt
von den aus den Koeffizientenspeichern 91 bis 94 ausgelesenen Koeffizienten ab. Eingestellt
wird die gewünschte
Polyphase über
die Adresse ”Read
Control” in 2.
Da die ungeraden Ausgangswerte y(2k – 1) und die geraden Ausgangswerte
y(2k) aus dem Halbbandfilter (half-band filter) 4 getrennt ausgegeben
werden und getrennten Verzögerungsketten
zugeführt
werden, kann durch Umschalten der Multiplexer 71 bis 74 zwischen den Bereichen ”Bereich 1” und ”Bereich 2” in 8 umgeschaltet
werden.
-
Bezogen
auf die Ausgangswerte x(k) der Speichereinrichtung 2 können somit
zwanzig äquidistante
Zwischenwerte wahlweise umschaltbar interpoliert werden. Dies ermöglicht eine
Feineinstellung der von der Signalverzögerungseinrichtung 1 insgesamt erzeugten
Signalverzögerung.
Im in 8 betrachteten Beispiel hat das Eingangsignal
Sin(k) eine Abtastrate von 100 MHz, d. h.
die Abtastperiode beträgt 10
ns. Mit der Speichereinrichtung 2 wird somit eine Grobverzögerung eines
Vielfachen von 10 ns erzeugt. Mit dem Halbbandfilter (half-band
filter) 4 und dem Polyphasenfilter 5 wird zusätzlich eine
Feinverzögerung
im Raster von 0,5 ns ermöglicht,
wodurch die Genauigkeit der einstellbaren Verzögerung erheblich vergrößert wird.
-
Anhand
der 1A bis 1C wird
das der Erfindung zugrundeliegende Problem erläutert. Dargestellt sind jeweils
eine Anzahl von ”Originalwerten” x(k) am
Ausgang der Speichereinrichtung 2 und daraus erzeugter
interpolierter Zwischenwerte SOut(k). In 1A ist
zunächst
der Fall einer statischen Verzögerung
dargestellt. Jedem Ausgangs-Abtastwert x(k) der Speichereinrichtung 2 entspricht
genau ein Ausgangs-Abtastwert
SOut(k) der Interpolationseinrichtung 3.
Dieser Fall ist unproblematisch.
-
1B zeigt
den Fall, daß die
durch die Signalverzögerungseinrichtung 1 hervorgerufene
Verzögerung τ mit der
Zeit t zunimmt, d. h. die Verzögerungsintervalle τ1 bis τ6 werden
zunehmend größer. In dem
durch die Ausgangs-Abtastwerte x(k – 4) und x(k – 3) der
Speichereinrichtung 2 begrenzten und in 1B grau
unterlegten Bereich 20 liegt nicht nur einer, sondern es
liegen zwei Ausgangs-Abtastwerte SOut(k – 3) und
SOut(k – 2).
Dieser Fall wird im Rahmen dieser Anmeldung als Bereichsüberschreitung
bezeichnet. Dieser Fall stellt noch kein allzu großes Problem
dar und kann auch bei einem RAM mit nur einem Schreibtor und einem
Lesetor dadurch gelöst werden,
daß in
die Speichereinrichtung 2 zwar ein neuer Abtastwert eingespeichert
wird, d. h. der Schreibzeiger verstellt, z. B. inkrementiert, wird,
aus der Speichereinrichtung 2 jedoch kein neuer Abtastwert
x(k) ausgelesen wird, d. h. der Lesezeiger nicht verstellt wird.
Folglich können
das Halbbandfilter (half-band filter) 4 und das Polyphasenfilter 5 mit
den gleichen Ausgangswerten eine nochmalige Interpolation, jetzt
allerdings an einer anderen Interpolationsstelle, d. h. mit gewechseltem
Bereich ”Bereich 1” und ”Bereich 2” in 8 und/oder
mit einer anderen Polyphase p0 bis p9, ausführen.
Bei einer Bereichsüberschreitung
nimmt die Grobverzögerung
der Speichereinrichtung 2 um eine Systemtaktperiode zu.
-
1C zeigt
den komplizierteren Fall, daß die
von der Signalverzögerungseinrichtung 1 hervorgerufene
Verzögerung τ mit der
Zeit t abnimmt, d. h. die Verzögerungsintervalle τ1 bis τs werden
zunehmend kleiner. In dem hier dargestellten Beispiel liegt der
Interpolationswert Sout(k – 2) nicht
im Bereich 21, der durch die Abtastwerte x(k – 4) und
x(k – 3)
am Ausgang der Speichereinrichtung 2 begrenzt ist, sondern
im darauffolgenden Bereich 22, der durch die Abtastwerte
x(k – 3)
und x(k – 2)
begrenzt ist. Die Berechnung von Sout(k – 2) findet
daher auf der Grundlage von zwei neuen Abtastwerten am Ausgang der Speichereinrichtung 2 statt.
Bei konventioneller Implementierung würde dies bedeuten, daß aus der Speichereinrichtung
zwei Ausgangswerte gleichzeitig ausgelesen werden müßten. Dies
könnte
nur mit einem relativ teuren RAM mit zwei Lesetoren oder aber mit
zwei parallel angeordneten RAM-Speicherbausteinen, die die gleiche
Information beinhalten, implementiert werden. Beide Lösungen wären äußerst aufwendig
und sind daher sehr nachteilig.
-
Zur
Lösung
dieses Problems wird erfindungsgemäß vorgeschlagen, parallel zu
der Speichereinrichtung 2 ein in 2 dargestelltes
Register 30 anzuordnen, das beim Anliegen eines Freigabesignals ”Enable” einen
Abtastwert SIn(k) des Eingangssignals speichert
und das ausgangsseitig mit der Interpolationseinrichtung 3,
im Ausführungsbeispiel
mit dem Halbbandfilter (half-band filter) 4, in Verbindung steht.
Außerdem
wird der ”Bereich 2” in 8 um
die Polyphase p10 ergänzt.
-
Die
Zusammenwirkung des Registers 30 mit der Speichereinrichtung 2 sowie
der Interpolationseinrichtung 3 wird nachfolgend anhand
der 2 bis 6 beschrieben. Dargestellt sind
jeweils unterschiedliche Verarbeitungszustände. Die jeweils aktiven Leitungen
sind mit durchgezogenen Strichen dargestellt. Die nichtaktiven Leitungen
sind mit punktierter Linienführung
dargestellt.
-
Die 2 und 3 zeigen
zunächst
den normalen Betrieb der Signalverzögerungseinrichtung 1 ohne
Aktivierung des Registers 30. Bei jedem Systemtakt wird
durch das Steuersignal ”Read & Write Control” jeweils
ein Abtastwert des digitalen Eingangssignals SIn(k)
in die Speichereinrichtung 2 eingeschrieben und ein der
Grobverzögerung
entsprechender Abtastwert x(k) ausgelesen. Die 2 und 3 unterscheiden
sich darin, daß bei
der 2 eine Interpolation im ”Bereich 1” in 8,
bei der 3 eine Interpolation im ”Bereich 2” in 8 durchgeführt wird.
Dies wird durch entsprechendes Umschalten der Multiplexer 71 bis 74 erreicht.
Der Multiplexer 75 ist in beiden
Fällen
so geschaltet, daß die
ungeraden Ausgangs-Abtastwerte y(2k – 1) dem Verzögerungselement 62 zugeführt werden. Entsprechend der
gewünschten
Polyphase wird mit der Adresse ”Read
Control” der
benötigte
Koeffizientensatz in den Speichern 91 bis 94 ausgewählt. Tritt der in 1B dargestellte
Fall der Bereichsüberschreitung
auf, so wird in die Speichereinrichtung 2 nur ein neuer
Abtastwert SIn(k) eingeschrieben, aber kein Abtastwert
x(k) ausgelesen.
-
Wird
die untere Bereichsgrenze in 8 bei 0
ns erreicht, so wird, wie in 4 dargestellt,
das Register 30 durch das Freigabesignal ”Enable” aktiviert.
Gleichzeitig wird das Schreibtor der Speichereinrichtung 2 deaktiviert.
Der nächste
Abtastwert SIn(k) des Eingangssignals wird
daher nicht in der Speichereinrichtung 2, sondern in dem
Register 30 gespeichert. Dadurch nimmt die Grobverzögerung der
Speichereinrichtung 2 um eine Systemtaktperiode ab. Anders
als bei der Bereichsüberschreitung
ist hier die Interpolationseinrichtung 3 zunächst noch nicht
von dieser Änderung
betroffen, da die Änderung am
Eingang der Speichereinrichtung 2 und nicht an ihrem Ausgang
vorgenommen wurde.
-
In 5 ist
dargestellt, daß im
nächsten
Systemtakt der nächste
Abtastwert SIn(k) wieder in der Speichereinrichtung 2 gespeichert
wird, wobei diesem Abtastwert allerdings eine Markierung hinzugefügt wird.
Dazu ist symbolisch eine Markierungseinrichtung 31 dargestellt.
Die Markierungseinrichtung 31 ist physisch in der Regel
nicht vorhanden, sondern Bestandteil des zentralen Prozessors. Für die Markierung
kann ein für
das Datenwort nicht benötigtes Bit
der Wortbreite der Speichereinrichtung 2 verwendet werden.
Die Markierung durchläuft
zusammen mit dem markierten Abtastwert die Speichereinrichtung 2.
Die Interpolationseinrichtung 3, im Ausführungsbeispiel
das Halbbandfilter (half-band filter) 4, registriert, wann
die Markierung am Ausgang der Speichereinrichtung 2 vorliegt.
-
In 6 ist
der Fall dargestellt, daß die
Markierung am Ausgang der Speichereinrichtung 2 auftritt
und von der Interpolationseinrichtung 3 erkannt wird. In
diesem Fall wird der Multiplexer 75 umgeschaltet
und von dem Halbbandfilter (half-band filter) 4 wird ein
zusätzlicher
Abtastwert erzeugt, der dem Verzögerungselement 62 anstelle des ungeraden Abtastwerts
y(2k – 1)
zugeführt
wird. Die Interpolationseinrichtung 3 führt also eine Interpolation
auf der Grundlage von zwei neuen Eingangswerten durch. Ein Eingangswert
wurde aus der Speichereinrichtung 2 ausgelesen. Der andere
Eingangswert wurde in dem Register 30 bis zum Eintreffen
der Markierung zwischengespeichert und dann aus diesem ausgelesen.
-
Mit
dem gleichzeitigen Einlesen von zwei neuen Werten in die Interpolationseinrichtung 3 ist die
Verringerung der Verzögerung
um eine Systemtaktperiode wirksam. Da aber bisher noch keine Bereichsunterschreitung
stattgefunden hat, sondern mit dem Erreichen der unteren Bereichsgrenze
lediglich die Möglichkeit
einer zukünftigen Unterschreitung
gegeben ist, muß die
Verzögerung
von einer Systemtaktperiode durch sofortiges Umschalten der Polyphase
von p0 im ”Bereich 1” auf p10 im ”Bereich 2” wieder
kompensiert werden. In der Summe hat sich an der Verzögerung noch
nichts geändert,
aber die Vorbereitungen für
eine tatsächliche
Bereichsunterschreitung, also die Änderung der Polyphase von p10 auf p9 im ”Bereich 2”, sind
abgeschlossen.
-
7 veranschaulicht
das erfindungsgemäße Verfahren
nochmals anhand eines Flußdiagramms.
-
Im
Schritt S100 ist der normale Betrieb dargestellt, d. h. bei jedem
Systemtakt wird der Schreibzeiger verstellt (z. B. inkrementiert),
welcher auf die nächste
zu beschreibende Speicherzelle der Speichereinrichtung 2 zeigt.
Entsprechend wird der Lesezeiger auf die nächste auszulesende Speicherzelle der
Speichereinrichtung 2 verstellt, z. B. inkrementiert.
-
Im
Schritt S101 wird geprüft,
ob die untere Bereichsgrenze, d. h. die Polyphase p0 im ”Bereich 1” in 8 erreicht
ist. Ist dies nicht der Fall, so kann die in 1C dargestellte
Bereichsunterschreitung ausgeschlossen werden. Es muß nun im
Schritt S102 geprüft
werden, ob statt dessen eine Bereichsüberschreitung vorliegt, d.
h. ein Wechsel von der Polyphase p10 im ”Bereich 2” mit einer
von der Interpolation hervorgerufenen Zusatzverzögerung von im Beispiel 10 ns
zu der Polyphase p0 im ”Bereich 1” in 8 mit
einer durch die Interpolation hervorgerufenen Zusatzverzögerung von
0,5 ns. Ist dies nicht der Fall, so verzweigt das Flußdiagramm
wieder zum Schritt S100.
-
Liegt
dagegen eine Bereichsüberschreitung vor,
so wird im Schritt S103 nur der Schreibzeiger, nicht jedoch der
Lesezeiger der Speichereinrichtung 2 verstellt. Durch diese
Maßnahme
verlängert
sich die durch die Speichereinrichtung 2 hervorgerufene Verzögerung.
-
Gleichzeitig
müssen
die Schieberegister des Halbbandfilters (half-band filter) 4 und
die Verzögerungselemente 61 , 62 und 63 des Polyphasenfilters 5 deaktiviert
werden, damit diese nicht um einen Takt weiterschieben. Nachdem
mit der neuen Polyphase eine zweite Interpolation im gleichen Bereich 20 in 1B vorgenommen
wurde, verzweigt das Flußdiagramm
wieder zum Schritt S100.
-
Wurde
dagegen im Schritt S101 festgestellt, daß eine Bereichsunterschreitung
vorliegt, so wird zunächst
im Schritt S104, welcher der 4 entspricht,
ein Abtastwert SIn(k) anstatt in die Speichereinrichtung 2 in
das Register 30 geladen. Dabei wird der Schreibzeiger der
Speichereinrichtung 2 natürlich nicht verstellt. Da gleichzeitig
jedoch ein Abtastwert aus der Speichereinrichtung 2 ausgelesen
wird, muß der
Lesezeiger verstellt werden. Durch diese Maßnahme verkürzt sich die durch die Speichereinrichtung 2 hervorgerufene
Verzögerung.
Der Schritt S104 ist in 4 dargestellt.
-
Im
Schritt S105, welcher der 5 entspricht,
wird im nächsten
Systemtakt sowohl der Schreibzeiger als auch der Lesezeiger verstellt,
aber der als nächstes
in die Speichereinrichtung 2 eingeschriebene Abtastwert
mit einer Markierung versehen.
-
Im
Schritt S106 wird der normale Betrieb so lange fortgesetzt, bis
im Schritt S107 festgestellt wird, daß die Markierung am Ausgang
der Speichereinrichtung 2 eingetroffen ist. Dies bedeutet,
daß der
in dem Register 30 gespeicherte Zusatzwert zusammen mit
dem nun am Ausgang der Speichereinrichtung 2 anliegenden
Abtastwert x(k) über
das Halbbandfilter 4 und den Multiplexer 75 dem
Verzögerungselement 62 des Polyphasenfilters 5 zugeführt werden
kann, so wie dies in 6 dargestellt ist. Die Polyphase
wird von 0 ns auf 10 ns geändert.
-
Es
sei noch darauf hingewiesen, daß die Laufzeit
des markierten Abtastwerts durch die Speichereinrichtung 2 unschädlich ist,
da der Systemtakt wesentlich höher
ist als die zeitliche Änderung
der Verzögerungszeit.
Anders ausgedrückt
werden für eine
bestimmte Polyphase eine Vielzahl von Abtastwerten interpoliert,
bevor zur nächsten
Polyphase gewechselt wird. In dieser Zeit ist der markierte Abtastwert
mit hoher Sicherheit am Ausgang der Speichereinrichtung 2 angekommen.
In 1B und 1C sind
die Veränderungen
der Verzögerungszeit
lediglich zur besseren Illustration übertrieben dargestellt.
-
Die
Erfindung ist nicht auf das dargestellte Ausführungsbeispiel beschränkt. Beispielsweise könnte, wie
bereits erwähnt,
anstatt der Markierung auch eine Ablaufsteuerung überwachen,
wann der Abtastwert, der auf den im Register 30 gespeicherten Abtastwert
folgt, am Ausgang der Speichereinrichtung 2 angelangt ist.