Hintergrund der Erfindung
Erfindungsgebiet
-
Die vorliegende Erfindung betrifft allgemein digitale
Filterung und insbesondere einen ROM-Filter, der weniger
Speicherkapazität als herkömmliche ROM-Filter benötigt.
Beschreibung des Standes der Technik
-
Bei vielen Anwendungen ist es notwendig, ein elektrisches
Signal zu filtern, um unerwünschte Frequenzen zu entfernen.
Beispielsweise wird bei digitalen Kommunikationen, bevor
die ausgehenden Digitaldaten den Träger modulieren, ein
Tiefpaßfilter verwendet, um die Daten so zu formen, daß sie
mit den spektralen Formerfordernissen des Systems
übereinstimmen. Beispielsweise zeigt Fig. 1 ein Blockschaltbild
des Übertragungsabschnittes eines schnurlosen Telefons. Das
Sprechsignal wird verstärkt und zu einem Sprachanalysator
geschickt, wo es in Digitalform umgewandelt wird. Dann wird
es durch eine Steuerlogik durchgeführt, die in Verbindung
mit einem Mikroprozessor arbeitet, um sowohl alle die
Zeitabstimmung betreffenden kritischen Aufgäben als auch
Datenpufferung, Datenkodierung/Dekodierung, Datenkompression und
andere digitale Verarbeitungsschritte auszuführen. Der
Mikroprozessor steuert die Benutzerschnittstelle, d. h. die
Tastensteuerung, den Anzeigetreiber, das
Verbindungsprotokoll. Der Ausgang der Steuerlogik ist typischerweise eine
Reihe von binären Datenimpulsen, wie sie in Fig. 2
dargestellt sind. Diese Impulse haben eine Bitdauer von Tb und
eine Frequenz fb = 1/Tb, wie in der Fig. 2 gezeigt. Die in
der Fig. 2 dargestellten Impulse sind sog. NRZ (ohne
Rückkehr auf Null) - Bits in welchen eine binäre Eins durch
eine positive Spannung und eine binäre Null durch eine
gleiche, negative Spannung repräsentiert ist. Wie bekannt,
können Datenbits entweder die Form von NRZ-Impulsen oder
von RZ-(Rückkehr auf Null)-Impulsen haben, deren Differenz
in dem Tastverhältnis der positiven Spannung liegt. In
einem NRZ-System ist das Tastverhältnis der positiven
Spannung 100%, während in einem RZ-System das Tastverhältnis
der positiven Spannung 50% ist. In beiden Systemen ist das
Tastverhältnis der negativen Spannung typischerweise 100%.
-
Die in Fig. 2 dargestellten Impulse können auf die in der
Fig. 3 gezeigte Art und Weise in dem Frequenzbereich
liegen, wobei in der Fig. 3 an der Ordinate die bei gegebener
Frequenz übertragene Leistung aufgetragen ist. Der größte
Teil der Leistung liegt in dem Bereich von OHz
(Gleichstrom) bis fb, wobei die verbleibende Leistung in einer
Reihe von Schleifen ist, die den Oberschwingungen der
Frequenzen im Bereich unterhalb von fb zuschreibbar sind. Die
Kurve berührt die Horizontalachse bei fb, 2fb, 3fb etc.
Typischerweise hat für die NRZ-Daten die Schleife zwischen fb
und 2fb ein Maximum, welches 13 db unterhalb des Maximums
der Hauptschleife ist, und die Schleife zwischen 2fb und
3fb hat ein Maximum, welches 9 db unterhalb des Maximums
der zweiten Schleife liegt.
-
Es ist wünschenswert, einen großen Teil der höheren
Frequenzen herauszufiltern, da sie, wenn sie nicht
herausgefiltert sind, mit der Sprech- oder Datenkommunikation auf
benachbarten Kanälen interferieren können. Gemäß dem
Nyquist-Theorem der Mindestbandbreite können die Antworten
auf die Rechteckdatenimpulse unabhängig beobachtet werden
(d. h. ohne Nachbarsymbolinterferenz), wenn sie einen
Tiefpaßfilter passiert haben, welcher eine Abschneidefrequenz
von fN = fb/2 hat, zusammen mit einem (x/sinx)-geformten
Amplitudenentzerrer.
-
Eine herkömmliche Technik zum Durchführen desselben ist es,
einen L-C-Filter zu verwenden, um die unerwünschten
Frequenzen auszufiltern. Ein weiteres bekanntes Verfahren ist
es, einen Festspeicher-ROM-Filter zu verwenden, der so
programmiert ist, daß er Information speichert, die im
wesentlichen die Antwort eines herkömmlichen L-C-Filters
simuliert. L-C-Filter arbeiten in dem analogen Bereich, während
ROM-Filter im digitalen Bereich arbeiten.
-
Die Fig. 4A-4C zeigen die Art und Weise, in welcher ein
ROM-Filter programmiert ist. Die Kurve R&sub1; in der Fig. 4A
nähert die Antwort eines L-C-Filters an den positiv
verlaufenden Datenimpuls, der oberhalb dargestellt ist. Ähnlich
nähert in der Fig. 4B die Kurve R&sub0; die Antwort eines L-C-
Filters an einen negativ verlaufenden Datenimpuls. Die
Kurven R&sub0; und R&sub1; werden als "Impulsantwortkurven" bezeichnet
und in den Fig. 4A und 4B erstrecken sie sich über eine
Zeitspanne gleich 6Tb. In einem ROM-Filter sind Daten
gespeichert, die den Werten der Kurven R&sub0; und R&sub1; an
vorgegebenen Intervallen, entsprechen.
-
Fig. 4C zeigt, wie eine Reihe von Bits 101 miteinander
interferieren würden, nachdem sie einen L-C-Filter passiert
haben. Es ist offensichtlich, daß der Ausgang des Filters
zu irgendeinem gegebenen Zeitpunkt gleich der Summation der
drei Impulsantwortkurven 41P, 42P und 43P ist, die um eine
Zeit Tb versetzt sind. Die Impulsantwortkurve 41P (die die
Kurve R&sub1; verdoppelt), resultiert aus dem "1"-Bit, welches
mit 41 bezeichnet ist; die Impulsantwortkurve 42P (die die
Kurve R&sub0; verdoppelt), resultiert aus dem "0"-Bit, das mit
42 bezeichnet ist; und die Impulsantwortkurve 43P (die die
Kurve R&sub1; verdoppelt), resultiert aus dem "1"-Bit, welches
mit 43 bezeichnet ist. Wie es aus einer Überprüfung der
Fig. 4C klar ersichtlich ist, ist die Summation der drei
Impulsantwort-Kurven in jedem separaten Tb-Intervall in der
Realität eine Summation von Segmenten der Kurven R&sub0; und R&sub1;,
die in den Fig. 4A und 4B dargestellt sind.
Beispielsweise ist in dem Intervall 0-1Tb die Kurve 43P die einzige
präsente Kurve, und die Summation ist daher einfach das
Segment der Impulsantwortkurve R&sub1; in dem Intervall 0-1Tb.
In dem Intervall 1Tb-2Tb, wird die Kurve R&sub1; im Intervall
Tb-2Tb der Kurve R&sub0; im Intervall 0-Tb hinzuaddiert. In dem
Intervall 2Tb-3Tb werden die Segmente der Kurve R&sub1; in den
Intervallen 0-Tb und 2Tb-3Tb dem Segment der Kurve R&sub0; im
Intervall Tb-2Tb hinzuaddiert. Ähnlich ist für jedes
Tb-Intervall die Summation der Kurven 41P-43P gleich einer
Summation der Impulsantwortkurven R&sub0; und R&sub1; in den
spezifizierten Zeitintervallen. Um die Figur zu vereinfachen zeigt
die Fig. 4C die Impulsantwortkurven für nur drei Bits. In
der Realität würden die Impulsantwortkurven für sechs
Datenbits summiert werden (unter der Annahme, daß die Länge
der Impulsantwortkurve = 6Tb ist). Somit repräsentiert die
Summation der Kurven in jedem Tb-Intervall die Addition von
sechs Segmenten der Kurven R&sub0; und R&sub1;, und abhängig von der
bestimmten Sequenz der Datenbits gibt es 64 mögliche
Summationskurven während jedes Tb-Intervalls.
-
Fig. 5 zeigt, wie die Impulsantwortkurven der Fig. 4A
und 4B durch Wählen einer spezifischen Anzahl von Punkten
innerhalb jedes Intervalles Tb digitalisiert werden können.
In der Fig. 5 ist jedes Tb-Intervall durch vier Datenpunkte
unterteilt, so daß jede der Impulsantwortkurven R&sub0; und R&sub1;
durch eine Gesamtzahl von 24 Datenpunkten definiert ist. Da
die Kurven R&sub0; und R&sub1; einander spiegelbildlich sind, kann
jeder Datenpunkt durch einen Wert An oder dessen Gegenteil
-An repräsentiert werden. Mit vier Datenpunkten während
jedes Tb-Intervalls können die Werte der Kurve R&sub1; als A&sub1; bis
A&sub2;&sub4; repräsentiert werden und die Werte der Kuxve R&sub0; können
als -A&sub1; bis -A&sub2;&sub4; repräsentiert werden.
-
Fig. 6 illustriert ein vereinfachtes Blockschaltbild eines
herkömmlichen ROM-Filters. Der ROM-Filter 60 hat ein 6-Bit-
Register 61, in welches die Übertragungsdaten geschoben
werden. Die Ausgänge der sechs Stufen des Registers 61
werden in einen Festspeicher (ROM 62) eingelesen. Der ROM 62
hat eine Anzahl von Gruppen von Speicherorten, die durch
die Ziffern 601, 602, ... 664 bezeichnet sind. Jede der
Speichergruppen 601-664 hat vier Orte, beispielsweise 602A,
602B, 602C und 602D. Der ROM 62 wird durch einen
Überabtast-Taktgenerator 63 gepulst, und der Ausgang des ROM 62
wird durch einen Digital-Analog-Konverter (DAC 64)
hindurchgeführt. An den Ausgang des DAC 64 ist ein
Tiefpaßfilter 65 angeschlossen.
-
Der Datenstrom wird in das Register 61 mit einer Rate von
fb = 1Tb geschoben. Die Taktrate fov des
Überabtast-Taktgenerators 63 ist gleich 4fb. Die Inhalte des Registers 61
bilden zusammen eine 6-Bit-Adresse, die eine der
Speichergruppen 601-664 identifiziert, deren individuelle Orte
(beispielsweise 602A-602D) mit Werten programmiert sind, die
die Summation der Datenpunkte auf den in der Fig. 5
gezeigten Kurven repräsentieren.
-
Ein Beispiel hilft bei der Erläuterung, wie Speichergruppen
601-664 programmiert werden. Es wird angenommen, daß die
6-Bit-Adresse 100101 gerade in das Register 61 geschoben
worden ist. Das heißt, daß das zuletzt in das Register 61
geschobene Bit "1" war. Während des folgenden Tb-Intervalls
kann der Teil der Impulsantwortkurve, welcher dieser
binären "1" eigen ist, durch die Werte A&sub1;, A&sub2;, A&sub3; und A&sub4; in
der Fig. 5 repräsentiert sein. Da das vorhergehende Bit "0"
war, sind die digitalen Werte, welche den Teil der
Impulsantwortkurve repräsentieren, der diesem Bit zugeordnet
werden kann, durch die Werte -A&sub5;, -A&sub6;, -A&sub7; und -A&sub8;
repräsentiert. Die Werte, welche durch die vorvorherige binäre
"0" repräsentiert sind, sind durch -A&sub9;, -A&sub1;&sub0;, -A&sub1;&sub1; und -A&sub1;&sub2;
repräsentiert. Für die vorvorherige binäre "1" würden die
Werte A&sub1;&sub3;, A&sub1;&sub4;, A&sub1;&sub5; und A&sub1;&sub6; sein. Der gleiche Vorgang
wurde für die verbleibenden zwei Bits folgen.
-
Wie vorstehend angegeben, pulst der
Überabtast-Taktgenerator 63 mit einer Rate gleich 4fb. Die vier Orte in jeder
der Speichergruppen 601-664 sind mit vier Werten
programmiert, die die Kurve definieren, welche durch Summieren der
Datenpunkte auf den Kurven R&sub0; und R&sub1; erhalten werden. Als
Beispiel wird angenommen, daß die 6-Bit-Adresse 100101, die
in der Fig. 6 gezeigt ist, die Speichergruppe 602
identifiziert. Der Speicherort 602A enthält daher die Werte:
-
A&sub1; - A&sub5; - A&sub9; + A&sub1;&sub3; - A&sub1;&sub7; + A&sub2;&sub1;.
-
Die Orte 602B, 602C und 602D enthalten die folgenden Werte:
-
602B: A&sub2; - A&sub6; - A&sub1;&sub0; + A&sub1;&sub4; - A&sub1;&sub8; + A&sub2;&sub2;.
-
602C: A&sub3; - A&sub7; - A&sub1;&sub1; + A&sub1;&sub5; - A&sub1;&sub9; + A&sub2;&sub3;
-
602D: A&sub4; - A&sub8; - A&sub1;&sub2; + A&sub1;&sub6; - A&sub2;&sub0; + A&sub2;&sub4;.
-
Ähnlich ist jede der verbleibenden Speichergruppen 601-664
so programmiert, daß sie eine Sequenz von vier Werten
entsprechend einer bestimmten Kombination von Bits im Register
61 enthält.
-
Nachdem der Überabtast-Taktgenerator 63 durch die vier
Summationen, welche durch die Werte, welche in jedem
Speicherort programmiert sind, repräsentiert sind, pulst, wird das
nächste Bit in das Register 61 geschoben, und der Vorgang
wiederholt. Die Sequenz der aus dem ROM-62 herausgelesenen
digitalen Werte wird in dem DAC64 in analoge Form
umgewandelt. Der analoge Ausgang des DAC64 wird im Tiefpaßfilter
65 geglättet.
-
Die Anzahl der Bits, die im ROM 62 erforderlich ist, kann
durch die folgende Formel ausgedrückt werden:
-
Sn · Δ · D
-
mit S gleich der Anzahl der Symbolzustände der Daten
(beispielsweise 2 für Binärdaten), n gleich der Anzahl der
Impulsantworten, die miteinander interferieren
(beispielsweise die Anzahl der Stufen im Register 61), Δ gleich der
Anzahl der Überabtast-Taktimpulse für jedes Datenbit
(fov/fb), und D gleich der Anzahl der Bits in dem, dem DAC
64 gelieferten Wort. Wenn beispielsweise der DAC 64 8-Bit-
Worte empfängt, ist die Anzahl der Bits, die für den ROM 62
erforderlich ist:
-
2&sup6; · 4 · 8 = 2048 Bits.
-
Mit der herkömmlichen Technologie würde ein derartiger
ROM eine Fläche in der Größenordnung von 600 Square Mils
( = 0,38 mm²) haben. Dies ist eine verwaltbare Größe. Die
ROM-Größe kann jedoch ein signifikantes Problem werden,
wenn Datensysteme verwendet werden, die mehr als zwei
Symbolzustände haben. Wenn beispielsweise ein System verwendet
wird, das fünf Symbolzustände hat, wird der vorstehende
Ausdruck 5&sup6; · 4 · 8, oder 500000 Bits. Die Fläche, die für
einen derartigen ROM erforderlich ist, liegt über 17000
Square Mills (10,97 mm²).
-
Somit besteht ein wirkliches Bedürfnis nach einem Filter
mit einer verringerten ROM-Größe, insbesondere wenn Daten,
die drei oder mehr Symbolzustände haben, gefiltert werden.
Zusammenfassung der Erfindung
-
Der Stand der Technik ist durch die EP-A-0495660
repräsentiert, die die Merkmale des Oberbegriffes des breitesten
Anspruches der vorliegenden Erfindung offenbart, und
bezieht sich auf das Speichern einer einzeln auswählbaren
Impulsantwortkurve.
-
Die Erfindung schafft einen ROM-Filter mit einem Register
mit einer Vielzahl von Stufen, die eine digitale
Repräsentation eines Symbols in einer Folge von Symbolen enthalten
können, einer Vielzahl von ROMs, von denen jeder
programmiert ist, um Daten zu halten, die ein jeweiliges
Zeitsegment einer Impulsantwortkurve repräsentieren, wobei eine
Vielzahl von Proben für jedes Segment vorliegt, und einem
Addierer zum Kombinieren der Ausgänge der ROMs, wobei der
Addierer ein Signal erzeugt, welches die Kombination der
Impulsantwortkurven für Symbole in dem Register
repräsentiert, dadurch gekennzeichnet, daß jeder ROM programmiert
ist, um Daten zu halten, die entsprechende Zeitsegmente
einer Vielzahl von unterschiedlichen Impulsantwortkurven
repräsentieren, die jeweils einem Symbolstatus entsprechen,
und die Stufen des Registers mit den ROMs gekoppelt sind,
so daß die Daten, die ein jeweiliges Zeitsegment einer
speziellen Antwortkurve repräsentieren, ausgewählt werden für
eine Ausgabe in Übereinstimmung mit dem Symbolstatus, der
durch die zugehörige Stufe des Registers repräsentiert
wird.
-
Die Ausführungsformen gemäß der vorliegenden Erfindung sind
insbesondere bei Datensystemen nützlich, die drei oder mehr
Symbolzustände haben. Beispielsweise würde bei dem
vorstehend beschriebenen Filter, der über 17000 Square Mills
(10,97 mm²) des ROM erfordern würde, die kombinierte Fläche
von ROM und Addierer in einer Ausführungsform gemäß der
vorliegenden Erfindung nur 700 Square Mills (0,45 mm²)
einnehmen.
Kurze Beschreibung der Figuren
-
Es zeigt:
-
Fig. 1 ein vereinfachtes Blockschaltbild des
Übertragungsabschnittes eines schnurlosen Telefons;
-
Fig. 2 einen Strom binärer Datenbits;
-
Fig. 3 im Frequenzbereich den Ausgang des in der Fig. 2
gezeigten Datenstroms;
-
Fig. 4A und 4B die Impulsantwort eines positiv gehenden,
Rechteck-Datenimpulses (binär "1") bzw. einen negativ
gehenden Rechteck-Datenimpuls (binär "0"),
-
Fig. 4C die Impulsantwort einer Reihe von Datenbits, die
miteinander interferieren;
-
Fig. 5 digitale Werte, welche die Impulsantwortkurven für
ein binäres "1" bzw. binäres "0" definieren;
-
Fig. 6 ein Blockschaltbild eines herkömmlichen ROM-Filters;
-
Fig. 7 ein Blockschaltbild eines einfachen ROM-Filters
gemäß der vorliegenden Erfindung;
-
Fig. 8 die Verteilung der Daten, die in den einzelnen ROMs
des ROM-Filters gespeichert sind;
-
Fig. 9A und 9B die tatsächlichen bzw. gefilterten Datenbits
in einem π/4-DQPSK-Kodiersystem;
-
Fig. 10 ein Blockschaltbild einer zweiten Ausführungsform
der Erfindung;
-
Fig. 11 die Konstellation für das π/4-DQPSK-Kodiersystem,
-
Fig. 12 ein Blockschaltbild der ROMs und zugehörigen
Elemente gemäß der zweiten Ausführungsform;
-
Fig. 13 die fünf Impulsantwortkurven für das
π/4-DQPSK-Kodiersystem, das die die Kurven definierenden Daten anzeigt,
wie sie den einzelnen ROMs zugeteilt sind; und
-
Fig. 14 einen Zeitplan des ROM der Zustandsmaschine und des
ROM-Filters gemäß der zweiten Ausführungsform.
Beschreibung der Erfindung
-
Fig. 7 zeigt eine erste Ausführungsform gemäß der
vorliegenden Erfindung. Der ROM-Filter 7 hat ein Schieberegister
70, dessen entsprechende Stufen an einen der ROMs 71, 72,
73, 74, 75 und 76 angeschlossen sind. Ein Ausgang jedes
ROMs 71 bis 76 ist an einen Addierer 77 angeschlossen,
dessen Ausgang durch einen DAC 78 und einen Tiefpaßfilter 79
geleitet wird. Die ROMs 71 bis 76 werden durch einen
Überabtast-Taktgenerator 80 getaktet.
-
Jeder der ROMs 71 bis 76 hat zwei Abschnitte, die bezogen
auf den ROM 71 als die Abschnitte 71A und 71B dargestellt
sind. Die Daten, welche in die ROMs 71 bis 76
einprogrammiert sind, werden weiterhin unter Bezugnahme auf die Fig.
8 illustriert, in welcher die Impulsantwortkurven R&sub1; und
R&sub0;, die in der Fig. 5 dargestellt sind, verdoppelt sind.
Bei diesem Beispiel sind jedoch die bezeichneten Abschnitte
der Kurven R&sub1; und R&sub0; auf einzelnen ROMs 71 bis 76 verteilt.
Beispielsweise bezugnehmend auf den ROM 71, enthält der
Unterabschnitt 71A vier Werte entsprechend der Kurve R&sub1; und
der Abschnitt 71B enthält vier Werte entsprechend der Kurve
R&sub0;. Das gleiche gilt für die ROMs 72 bis 76. Jeder
derselben ist mit acht Werten programmiert, von denen vier den
Werten auf der Kurve R&sub1; und vier den Werten auf der Kurve
R&sub0; entsprechen.
-
Die Datenbits in den entsprechenden Stufen des
Schieberegisters 70 bestimmen, welcher Abschnitt jedes der ROMs 71-76
gewählt ist. Somit bezeichnet die Präsenz einer binären "1"
in der Stufe, die dem ROM 71 zugeordnet ist, den Wert,
welcher im Abschnitt 71A gespeichert ist, welcher der Kurve R&sub1;
entspricht. Ähnlich bezeichnet die binäre "0", die in der
nächsten Stufe des Registers 70 gespeichert ist, Werte
entsprechend der Kurve R&sub0; in dem ROM 72, die binäre "0", die
in der nächsten Stufe des Schieberegisters 70 gespeichert
ist, bezeichnet Werte entsprechend der Kurve R&sub0;, die in dem
ROM 73 gespeichert sind; und so weiter.
-
Der Überabtast-Taktgenerator 80 erzeugt Taktimpulse mit
einer Rate gleich vier mal der Rate, mit der Datenbits in das
Register 70 geschoben werden. Somit werden jedesmal, wenn
ein neues Bit in das Register 70 geschoben wird, geeignete
Abschnitte der ROMs 71 bis 76 gewählt und vier Werte, die
repräsentativ für die Kurve R&sub1; oder Kurve R&sub0; sind, werden
der Reihe nach von den ROMs 71 bis 76 dem Addierer 77
zuge
führt. Wenn diese Werte im Addierer 77 summiert werden, ist
das Ergebnis eine digitale Repräsentation der
Impulsantwort, die den Bits eigen ist, welche in dem Register 70 zu
einem gegebenen Zeitpunkt gespeichert sind. Dieser digitale
Ausgang wird dem DAC 78 geliefert, wo er in Analogform
umgewandelt wird und dann zum Glätten durch den Tiefpaßfilter
79 geleitet wird.
-
Die Gesamtanzahl der Bits, die in den ROMs 71 bis 76
erforderlich ist, kann durch den folgenden Ausdruck
repräsentiert werden:
-
S · n · Δ · D
-
mit S, n, Δ und D wie vorstehend definiert. Für einen 8-
Bit-DAC brauchen die ROMs 71 bis 76 nur 384 Bits.
-
Wie vorstehend angegeben, ist die vorliegende Erfindung
insbesondere für Datensysteme nützlich, die mehr als zwei
Symbolzustände haben, da die erforderliche Anzahl von
Speicherzellen schnell mit der Anzahl der Symbolzustände
steigt. Dieser Aspekt der Erfindung wird anhand einer
zweiten Ausführungsform erläutert, die das π/4-DQPSK-System der
Kodierung verwendet. Unter den π/4 DQPSK-System werden fünf
Symbolzustände in eine Gruppe von 2 Symbolzuständen und
eine Gruppe von drei Symbolzuständen getrennt. Auf die
Daten in einem der zwei Sybolzustände können nur Daten in
einem der drei Symbolzustände folgen, und auf Daten in einem
der drei Symbolzustände können nur Daten in einem der zwei
Symbolzustände folgen. Dies ist in der Fig. 9A dargestellt,
wo die zwei Symbolzustände durch 1 V und -1 V repräsentiert
sind, und die drei Symbolzustände sind durch 1,4 V, 0 V und
-1,4 V repräsentiert. Das π/4-DQPSK-System ist vollständig
in einem Artikel von Y. Akaiwa mit dem Titel "Digital
Modulation/Demodulation Techniques for Mobile Radio
Communications in Japan", IEICE-Transactions, Vol. E74, Nr. 6, Juni
1991, Seite 1503-1511 beschrieben, auf das hier Bezug
genommen wird.
-
Ein Blockschaltbild dieser Ausführungsform ist in der Fig.
10 dargestellt. Die wirklich gesendeten Daten werden in ein
Register 100 eingelesen. Aus dem Register 100 treten die
Daten in einen Zustandsmaschine-ROM 101 ein, dem ein
Zustandsregister 102 zugeordnet ist. Der Zustandsmaschine-
ROM 101 ist eine maskenprogrammierbare Zustandsmaschine,
die die Datenbits in 3-Bit-Binärworte kodiert (3-Bit-Worte
sind bei dieser Ausführungsform erforderlich, da die
gesendeten Daten in irgendeinem der fünf Symbolzustände sein
können). Da diese Ausführungsform ein
Quadratur-Modulationssystem enthält, hat der Zustandsmaschine ROM 101 sowohl
I- als auch Q-Ausgänge, die die gesendeten Daten
repräsentierenden Symbole einem Dual-Mischer-Modulator liefern, der
lokale Oszillatoren mit einer Phasentrennung von 90º hat.
-
Die I- und Q-Ausgänge des Zustandsmaschine-ROM 101 sind an
ein I-Symbol-Register 103 bzw. ein Q-Symbol-Register 104
angeschlossen. Wie angegeben sind die Register 103 und 104
sechsstufige Register, wobei jede Stufe derselben ein Drei-
Bit-Wort halten kann. Die Drei-Bit-Worte, welche in den
Registern 103 und 104 gehalten sind, sind für einen der fünf
Symbolzustände in dem π/4-DQPSK-System repräsentativ. Die
Daten in diesen Registern werden in die ROM-Filter 105 und
106 eingegeben und werden in den DACs 107 und 108 in
analoge Ausgänge umgewandelt. Wie in einem herkömmlichen
Quadratur-Modulationssystem werden die Ausgänge der DACs 107
und 108 den Mischern 109 bzw. 110 zugeführt, die von einem
Oszillator 111 ein Signal empfangen. Die Phase des Signals
vom Oszillator 111 wird in einem Phasenschieber 112 um 90º
verschoben, bevor dieses an den Mischer 110 geliefert wird.
Die Ausgänge der Mischer 109 und 110 werden in einem.
Addierer 112 summiert, der das modulierte Signal liefert.
-
Die Funktionsweise des Zustandsmaschine-ROM 101 und der
Register 103 und 104 ist am besten anhand der Fig. 11 zu
verstehen, die die Signalphasenpunkte und Bahn des π/4-DQPSK-
Systems illustriert. Die vertikale Achse der Figur
repräsentiert das Symbol an den I-Ausgang, und die
Horizontalachse repräsentiert das Symbol an dem Q-Ausgang. Die Punkte
um den Umfang der Figur repräsentieren alle möglichen
Kombinationen der Symbole an den I- und Q-Ausgängen. Die
Pfeile repräsentieren zulässige Übergänge zwischen den
Punkten p&sub1;-p&sub8;. Bei jedem Beispiel gibt es von jedem Punkt
vier zulässige Übergänge. Beispielsweise vom Punkt p&sub1;(I = 0
V, Q = 1,4 V), kann der Übergang zu dem Punkt p&sub2;(I = 1 V, Q
= 1 V) zu dem Punkt p&sub4;(I = 1 V, Q = -1 V) zu dem Punkt p&sub6;(I
= -1 V, Q = -1 V) oder zu dem Punkt p&sub8; (I = -1 V, Q = 1 V)
erfolgen. Wenn der Übergang beispielsweise zum Punkt p&sub4;
erfolgt, muß der nächste Übergang zum Punkt p&sub1;, p&sub3;, p&sub5; oder
p&sub7; erfolgen. Im allgemeinen gehen die Übergänge von einem
Punkt auf einer der Achsen zu einem Punkt, der nicht auf
einer der Achsen ist, und umgekehrt.
-
Wiederum bezugnehmend auf Fig. 10 halten das
Zustandsregister 102 und jede der Stufen der Register 103 und 104 ein
3-Bit-Wort, welches einen der fünf möglichen Symbolzustände
repräsentiert. Beispielsweise könnte die Kodierung wie
folgt sein:
-
1,4 V: 010
-
1 v: 001
-
0 V: 000
-
-1V: 101
-
-1,4 V: 110
-
Weder die Kodierung noch die Anzahl der Symbole ist bei der
Erfindung kritisch. Stattdessen ist die Erfindung bei
irgendeiner Anzahl von Symbolen und jeglichem Kodiersystem
anwendbar.
-
Das Zustandsregister 102 hält ein 3-Bit-Wort, das einen der
Punkte p&sub1;-p&sub8; in Fig. 11 bezeichnet. Beispielsweise könnte
die Kodierung der Punkte p&sub1;-p&sub8; wie folgt angeordnet sein:
-
p&sub1;: 000
-
p&sub2;: 001
-
p&sub3;: 010
-
p&sub4;: 011
-
p&sub5;: 100
-
p&sub6;: 101
-
p&sub7;: 110
-
p&sub8;: 111
-
Die gesendeten Daten werden in das Register 100 mit einer
Taktrate gleich fb geschoben und paarweise in den
Zustandsmaschine-ROM-101 mit einer Taktrate gleich fb/2, die als
Symbol-Rate bekannt ist, eingegeben. Somit ist das Register
100 im Prinzip ein Reihe/parallel-Konverter, wobei Bitpaare
parallel dem Zustandsmaschine-ROM 101 zugeführt werden. Aus
diesem Grund sind die gesendeten Daten in der Fig. 10 als
XY-Paare dargestellt.
-
In Verbindung mit dem Wort, welches in dem Zustandsregister
102 gespeichert ist, definieren die Bitpaare, welche vom
Register 100 geliefert worden sind, einen der Übergänge,
die in der Fig. 11 dargestellt sind. Es wird beispielsweise
angenommen, daß ein Wort 000, welches den Punkt p&sub1;
bezeichnet, in dem Zustandsregister 102 gespeichert ist. Wie in
der Fig. 11 gezeigt, könnte der Übergang zum Punkt p&sub2; durch
00 definiert sein, der Übergang zum Punkt p&sub4; könnte durch
01 definiert sein, der Übergang zum Punkt p&sub6; könnte durch
11 definiert sein und der Übergang zum Punkt P&sub8; könnte
durch 10 definiert sein. Mit diesem System wäre ein
Übergang zum Punkt p&sub4; definiert, wenn das XY-Paar im Register
100 beispielsweise 01 war. Der Zustandsmaschine-ROM 101 ist
so programmiert, daß binäre Repräsentationen der Symbole 1 V
und -1 V dann an dessen I- bzw. Q-Ausgängen geliefert
wür
den, und das Zustandsregister 102 würde auf einen Wert
aktualisiert werden, der p&sub4; repräsentiert.
-
Bei dieser Ausführungsform ist der Zustandsmaschine-ROM 101
ein ROM mit 32 Bit mal 9 Bit. Der kombinierte 5-Bit-Eingang
von den Registern 100 und 102 konstituiert eine
Zeilenadresse, die in dem Zustandsmaschine-ROM 101 dekodiert
wird. Die Daten, die in jeder der Spalten in der
bezeichneten Zeile gespeichert sind, werden aus dem
Zustandsmaschine-ROM 101 herausgelesen. Drei Bits werden dem
I-Ausgang zugeführt und bezeichnen das Symbol, das in das
Register 103 geschoben werden soll, drei Bits werden dem
Q-Ausgang zugeführt und bezeichnen das Symbol, welches in das
Register 104 geschoben werden soll; drei Bits
repräsentieren einen der kombinierten I/Q-Datenpunkte, die in der Fig.
11 gezeigt sind und werden dem Zustandsregister 102
zugeführt. Somit hält das Zustandsregister 102 zu allen
Zeitpunkten Daten, welche den laufenden Zustand repräsentieren,
während das Register 100 Daten enthält, die den Übergang
zum nächsten Zustand definieren.
-
Fig. 12 zeigt die Struktur des I-Symbol-Registers 103 und
des ROM-Filters 105. (Q-Symbol-Register 104 und ROM-Filter
106 haben ähnliche Strukturen und werden daher nicht
separat beschrieben). Wie vorstehend beschrieben, hält das I-
Symbol-Register 103 sechs 3-Bit-Worte, von denen jedes für
ein Symbol repräsentativ ist. Jede der Stufen 103A bis 103F
ist an einen entsprechenden ROM 120 bis 125 angeschlossen.
Jeder der ROMs 120 bis 125 ist in fünf Abschnitte
unterteilt, jeder Abschnitt enthält Daten, die Punkte auf einer
der fünf möglichen Impulsantwortkurven, wie in der Fig. 13
gezeigt, beschreiben.
-
Fig. 13 zeigt Impulsantwortkurven C&sub1;, C&sub2;, C&sub3;, C&sub4; und C&sub5;,
die die Impulsantwort in dem π/4-DQPSK-System der Pegel
1,4 V, 1,0 V, 0 V, -1,0 V und -1,4 V zeigen. Die Daten in jedem
ROM betreffen ein vorgegebenes Zeitintervall, das durch die
Überabtastrate (over sample rate) bestimmt ist, wie dies
ebenfalls in der Fig. 13 dargestellt ist. Beispielsweise
enthält der ROM 120 Daten für jede der Kurven C&sub1; bis C&sub5; für
das erste Zeitintervall, der ROM 121 enthält Daten für die
gleichen Kurven für das nächste Zeitintervall, etc. Jeder
der ROMs 120 bis 125 ist durch einen Überabtast-Takt 130
getaktet, der bei dieser Ausführungsform mit einer Taktrate
fov gleich dem achtfachen der Symbolrate, oder dem
vierfachen der Datenbitrate fb ist.
-
Die entsprechenden Ausgänge der ROMs 120 bis 125 werden an
einen Addierer 131 ausgegeben, dessen Ausgang durch den DAC
107 durchgeführt wird. Der Ausgang des DAC 107 ist ein
Analogsignal, das die gesendeten Daten nach der Filterung
repräsentiert.
-
Da die Symbole in das Register 103 geleitet werden,
repräsentiert der Ausgang jeder der Stufen 103A bis 103F eine
Adresse einer der fünf möglichen Antwortkurven, die in der
Fig. 13 gezeigt sind, während eines bestimmten
Zeitintervalls. Jeder Ausgang identifiziert einen Abschnitt eines
der ROMs 120 bis 125, die acht Werte enthalten, welche eine
Impulsantwortkurve während einem bestimmten Zeitsegment
definiert.
-
Der Überabtasttakt 130 bewirkt, daß die ROMs 120 bis 125
diese acht Werte aufeinanderfolgend dem Kopierer 131
zuführen, wo sie nach jedem Überabtast-Taktpuls addiert werden
und dem DAC 107 zugeführt werden. Dieser Vorgang wird
solange fortgesetzt, bis alle der acht Werte, welche die
Kurve während des Zeitintervalls definieren, dem Addierer
131 zugeführt worden sind. Dann wird ein neues Symbol in
das I-Symbol-Register 103 geschoben und der Vorgang
wiederholt. Auf diese Art und Weise liefert der Ausgang des DAC
107 ein Signal, welches für das gefilterte Sendedatum
repräsentativ ist.
-
Die ROMs 120 bis 125, die Abschnitte eines einzigen ROM
sein können, sind erforderlich, um nur Daten zu halten, die
die fünf möglichen Impulsantwortkurven C&sub1; bis C&sub5; während
eines bestimmten Zeitintervalls repräsentieren. Die
Addition der Daten findet außerhalb des ROM statt, und somit
muß der ROM nicht für alle möglichen
Kombinationseingangssignale Daten in einem besonderen Bereich des Speichers
halten. Stattdessen findet die Kombination der Daten im
Addierer 131 statt.
-
Dies verringert wesentlich die Anzahl der Speicherzellen,
die in dem ROM erforderlich sind. Für ein System mit fünf
Symbolzuständen, einer Sechs-Symbol-Impulsantwort, acht
Takt-Impulsen pro Symbol und einem Acht-Bit-DAC sind nur
1920 Bits erforderlich, verglichen mit 1000000 in einem
herkömmlichen ROM-Filter. Selbst wenn zugelassen ist, daß
ein Teil der Fläche durch den Addierer besetzt ist, würde
dieser ROM-Filter nur ungefähr 850 Square Mills (0,548 mm²)
einnehmen.
-
Somit erlaubt ein ROM-Filter gemäß der vorliegenden
Erfindung, daß die Matrizengröße (die size) merklich reduziert
wird, ohne daß die funktionellen Eigenschaften des Filters
verschlechtert werden.
-
Fig. 14 zeigt einen Zeitplan für das in der Fig. 10
dargestellte System. Wie angegeben, ist die Zustandsmaschine 101
freigegeben, kurz nachdem das zweite (Y)-Bit eines
Bitpaares in das Register 101 geschoben worden ist. Die I- und Q-
Ausgänge werden von dem Zustandsmaschine-ROM 101 während
der gleichen Zeitspanne geliefert. Die ROMs 120 bis 125 und
der Addierer 131 (Fig. 12) werden während der zweiten
Hälfte der gleichen Zeitspanne aktiviert. Der DAC 107 wird
synchron mit dem Zustandsmaschine-ROM 101 aktiviert. Die
Taktimpulse, die in der oberen Kurve der Fig. 14 gezeigt
sind, repräsentieren Impulse, die vom Taktgenerator 130
geliefert werden. Wie angegeben treten acht Taktimpulse
während eines einzigen Zyklus der Zustandsmaschine ROM 101
auf.
-
Obwohl die vorliegende Erfindung anhand der besonderen
Ausführungsformen erläutert worden ist, ist für den Fachmann
klar zu ersehen, daß zahlreiche alternative
Ausführungsformen ebenfalls in Übereinstimmung mit den breiten Prinzipien
der vorliegenden Erfindung, wie im Schutzumfang der
Patentansprüche angegeben, konstruiert werden können. Es ist
beabsichtigt, daß die Prinzipien der vorliegenden Erfindung
sich auf alle derartigen alternativen Ausführungsformen
erstrecken.