-
Gebiet der
Erfindung
-
Die
vorliegende Erfindung betrifft einen Faltungsverschachteler, einen
Faltungsentschachteler, ein Faltungsverschachtelungsverfahren und
ein Faltungsentschachtelungsverfahren, welche zur digitalen Übertragung
von Satellitenrundfunk, Bodenwellenrundfunk, CAN-Rundfunk, etc.
und zum Lesen/Schreiben einer Speichereinheit wie einer Festplatte
erforderlich sind.
-
Hintergrund
der Erfindung
-
Ein
Faltungsentschachtelungsverfahren ist wirksam als eine Gegenmaßnahme gegen
Burstfehler.
-
Burstfehler
werden unter Verwendung von Satellitenrundfunk als Beispiel kurz
beschrieben. Eine Rundfunkwelle von einer Rundfunkstation auf der
Erde wird zu einem Satelliten übertragen
und von dem Satelliten zu einem Satellitenrundfunkempfänger weitergeleitet,
der im Haus vorgesehen ist.
-
Die
von der Rundfunkstation über
den Satelliten zum Haus übertragene
Welle ist einem Einfluss durch Gewitter, Regen oder ähnlichem
auf dem Übertragungsweg
unterworfen und während
die Welle einem solchen Einfluss unterworfen ist, treten Fehler
in den Daten auf. Diese Fehler werden als "Burstfehler" bezeichnet.
-
Bei
der digitalen Übertragung
wird eine Information zur Fehlerkorrektur zu den Originaldaten vorab
hinzugefügt
und daher ist es möglich,
Fehler zu korrigieren, solange die Fehler innerhalb eines vorbestimmten
Bereichs von Bits in jedem Segment sind. Da jedoch die Burstfehler
fortlaufend in dem gesamten Bereich auftreten, ist es unmöglich, Burstfehler
zu korrigieren.
-
Daher
werden als Gegenmaßnahme
gegen Burstfehler zu übertragende
Daten vorab vorübergehend
verteilt. Um genau zu sein, werden bei der vorübergehenden Verteilung an der
Sendeseite, auch wenn Burstfehler in dem Vorgang der Übertragung auftreten,
die Burstfehler beim Wiederherstellen der vorübergehenden Positionen der
verteilten Daten an der Empfangsseite verteilt, wodurch die Burstfehler innerhalb
eines korrigierbaren Bereichs einer Bitanzahl in jeder Dateneinheit
begrenzt werden können.
-
Auf
diese Weise ist ein Verfahren zum vorübergehenden Verteilen der zu übertragenden
Daten "Faltungsverschachteln" und ein Verfahren
zum Wiederherstellen der vorübergehenden
Positionen der verteilten Daten auf der Empfangsseite ist "Faltungsentschachteln".
-
Ein
für den
oben genannten Zweck verwendeter Faltungsverschachteler wurde zum
Beispiel in der japanischen Offenlegung Hei. 7-170201 vorgeschlagen.
-
13 ist
ein Blockschaltbild, welches einen im oben genannten Stand der Technik
offenbarten Faltungsverschachteler darstellt. In 13 werden Eingangsdaten,
welche durch einen Eingangsanschluss 1000 seriell in den
Verschachteler eingegeben werden, in ein Seriell-/Parallel-Umwandlungs-Schieberegister 3000 entsprechend
einem Hochgeschwindigkeitstakt eingegeben, welcher durch einen Takteingangsanschluss 2000 eingegeben
wird, wobei die seriellen Daten in N Stufen paralleler Signale umgewandelt
werden.
-
Dann
gibt das Seriell-/Parallel-Umwandlungs-Schieberegister 3000 die
N Stufen der parallelen Signale zusammen mit dem Taktsignal aus,
welches einer 1/N-Frequenzteilung
durch einen N-Stufen-Teiler 4000 unterworfen wurde. Die
N Stufen paralleler Signale werden entsprechend in Schieberegister 5001, 5002, 5003,
..., 500(N-1) eingegeben, welche die darin eingegebenen
Daten verzögern, wobei
diesen parallelen Signalen Verzögerungszeiten
proportional zu den Stufennummern der entsprechenden Schieberegister,
M, 2M, 3M, ..., (N-1)M gegeben werden. Dann werden die N Stufen
paralleler Signale, welche durch die Schieberegister 50041, 5002, 5003,
..., 500(N-1) verzögert
wurden, in einen Parallel-/Seriell-Umwandlungs-Schieberegister 6000 eingegeben,
um in ein serielles Signal umgewandelt zu werden. Das serielle Signal
wird von dem Ausgangsan schluss 7000 als durch Verschachteln
der Daten an dem Eingangsanschluss 1000 erhaltene Daten
ausgegeben.
-
14 ist
ein Blockschaltbild, welches einen Faltungsentschachteler zum Entschachteln
der durch den in 13 gezeigten Faltungsverschachteler
verschachtelten Daten zeigt. In 14 werden
an einen Eingangsanschluss 11000 angelegte Eingangsdaten
in ein Seriell-/Parallel-Umwandlungs-Schieberegister 13000 entsprechend
einem durch einen Taktanschluss 12000 eingegebenen Hochgeschwindigkeitstakt
eingelesen, wobei die Eingangsdaten in N Stufen paralleler Signale
umgewandelt werden.
-
Dann
gibt das Seriell-/Parallel-Umwandlungs-Schieberegister 13000 die
N Stufen paralleler Signale zusammen mit dem Taktsignal aus, welches einer
1/N-Frequenzteilung
durch einen N-Stufen-Frequenzteiler 14000 unterworfen wurde.
Die N Stufen paralleler Signale werden entsprechend in Schieberegister 900(N-1), ..., 9003, 9002, 9001 eingegeben, welche
die eingegebenen Daten verzögern,
wodurch diesen parallelen Signalen Verzögerungszeiten proportional
zu den Stufennummern der entsprechenden Schieberegister (N-1)M,
..., 3M, 2M, M gegeben werden. Dann werden die durch die Schieberegister 900(N-1),
..., 9003, 9002, 9001 entsprechend verzögerten N
Stufen paralleler Signale in ein Parallel-/Seriell-Umwandlungs-Schieberegister 16000 eingegeben,
um in ein serielles Signal umgewandelt zu werden. Das serielle Signal
wird von einem Ausgangsanschluss 17000 als durch Entschachteln
der Daten an dem Eingangsanschluss 11000 erhaltene Daten
ausgegeben.
-
Wie
oben beschrieben, erfordern der in 13 gezeigte
Faltungsverschachteler und der in 14 gezeigte
Faltungsentschachteler mehrere Stufen von Schieberegistern, resultierend
in einer Zunahme der Schaltungsgröße.
-
Inzwischen
wurde als Stand der Technik, welcher das oben beschriebene Problem
lösen kann, ein
Faltungsverschachteler vorgeschlagen, der einen RAM verwendet.
-
Der
Aufbau des Faltungsverschachtelers ist in 15 gezeigt.
In 15 umfasst der Faltungsverschachteler einen Single-Port-RAM 13,
eine Eingangsda tensteuerungseinrichtung 9, eine Auswahlsignalerzeugungseinrichtung 10,
eine RAM-Steuerungseinrichtung 11, eine Adresserzeugungseinrichtung 3,
eine Schreibeinrichtung 12, eine Leseeinrichtung 14 und
einen Ausgangssignalauswähler 15.
Der Single-Port-RAM 13 gibt Daten zu der Leseeinrichtung 14 aus.
Die Eingangsdatensteuerung 9 gibt Eingangsdaten des Faltungsverschachtelers
zu der Eingangsdatenschreibeinrichtung 12 und dem Ausgangssignalauswähler 15 aus.
Die Auswahlsignalerzeugungseinrichtung 10 gibt ein Steuerungssignal
zu dem unteren Adressauswähler 7 und
der RAM-Steuerungseinrichtung 11 aus. Die RAM-Steuerungseinrichtung 11 gibt
ein Steuerungssignal zu dem RAM 13 und dem Ausgangssignalauswähler 15 aus.
Die Adresserzeugungseinrichtung 3 gibt eine Adresse zu der
Schreibeinrichtung 12 und der Leseeinrichtung 14 aus.
Die Schreibeinrichtung 12 gibt eine Adresse und Daten zu
dem RAM 13 aus. Die Leseeinrichtung 14 gibt eine
Adresse und Daten zu dem RAM 13 aus. Der Ausgangssignalauswähler 15 erzeugt
ein Ausgangssignal des Faltungsverschachtelers.
-
Die
Adresserzeugungseinrichtung 3 umfasst eine obere Adresserzeugungseinrichtung 4,
eine untere Adresserzeugungseinrichtung 5 und eine Ausgangstiminganpassungseinrichtung 8.
Die obere Adresserzeugungseinrichtung 4 gibt eine obere Adresse
für jeden
Kanal zu der Ausgangstiminganpassungseinrichtung 8 und
der Leseeinrichtung 14 aus. Die untere Adresserzeugungseinrichtung 5 gibt eine
untere Adresse für
jeden Kanal zu der Ausgangstiminganpassungseinrichtung 8 und
der Leseeinrichtung 14 aus.
-
Die
untere Adresserzeugungseinrichtung 5 umfasst eine Zählereinheit 6 und
einen unteren Adressauswähler 7.
Die Zählereinheit 6 gibt
eine untere Adresse für
jeden Kanal zu dem unteren Adressauswähler 7 aus. Die Zählereinheit 6 umfasst
Zähler 60~6C entsprechend
Kanälen
ch0~chC. Der untere Adressauswähler 7 gibt
eine untere Adresse zu der Ausgangstiminganpassungseinrichtung 8 aus.
-
Die
in 15 gezeigte Auswahlsignalerzeugungseinrichtung 10 und
die Adresserzeugungseinrichtung 3 dienen beide als ein
Eingangsseitenauswähler
in dem Arbeitsprinzip, welches später unter Verwendung von 16 beschrieben
wird. Andererseits dienen der Ausgangssignalauswähler 15 und die Adresserzeu gungseinrichtung 3 beide
als ein Ausgangsseitenauswähler
in dem Arbeitsprinzip.
-
Nachfolgend
wird das Arbeitsprinzip des in 15 gezeigten
Faltungsverschachtelers anhand von 16 beschrieben.
-
In 16 bezeichnet
Bezugszeichen 102 einen Single-Port-RAM, welcher mit einer
Taktfrequenz f synchron ist, und die Bezugszeichen 100 und 101 bezeichnen
an der Eingangsseite und der Ausgangsseite des Single-Port-RAM 102 angeordnete
Auswähler.
Der Single-Port-RAM 102 hat mehrere Stufen von Speicherbereichen
entsprechend den jeweiligen Kanälen
und jeder weist eine Bitbreite b auf und die Anzahl der Speicherbereiche
ist gleich "Tiefe(m) × Anzahl
der Kanäle(N)", wobei m die Anzahl
von Daten in Bitbreiteneinheiten ist und 0 ≤ N ≤ C. Die Auswähler 100 und 101 wählen die
Kanäle
ringförmig und
synchron zueinander aus. Um genau zu sein, beginnen diese Auswähler 100 und 101 bei
ch0, erhöhen
nacheinander die Kanalnummer und kehren zu Kanal 0 zurück, wenn
Kanal chC gelesen ist, um den gleichen Vorgang wie oben zu wiederholen.
-
Zu
Anfang wählen
beide Auswähler 100 und 101 Kanal
ch0 aus. Da auf diesem Kanal kein Verzögerungselement vorhanden ist,
durchläuft
das Signal auf Kanal ch0 den Faltungsverschachteler, ohne verzögert zu
werden.
-
Als
nächstes
wählen
die Auswähler 100 und 101 ch1
aus. Da ein FIFO durch den RAM (Speicherbereich) 102-0 in
diesem Kanal implementiert ist, wird ein durch diesen RAM 102-0 verzögertes Signal ausgegeben.
-
Danach
wählen
die Auswähler 100 und 101 in
gleicher Weise nacheinander ch2, ch3, ..., chN-1 aus, wobei Signale,
welche um das 2-, 3-, ..., N-1(>1)-fache
der Verzögerung
von ch1 verzögert sind,
durch RAM 102-1, RAM 102-2, ..., RAM 102-(N-2),
entsprechend ausgegeben werden.
-
Dann
wählen
die Auswähler 100 und 101 chN
aus. Auf diesem Kanal wird ein um das N(>1)-fache der Verzögerung von ch1 verzögertes Signal durch
RAM 102-(N-1) ausgegeben.
-
Dann
wählen
die Auswähler 100 und 101 chC
aus. Auf diesem Kanal wird ein Signal, welches um das C-(>N)-fache der Verzögerung auf
Kanal ch1 verzögert
ist, durch RAM 102-(C-1) ausgegeben.
-
Zum
nächsten
Zeitpunkt wählen
die Auswähler 100 und 101 erneut
ch0 aus, um den obigen Ablauf zu wiederholen.
-
Wie
oben beschrieben, liest der Faltungsverschachteler die ältesten
Daten aus dem Speicherbereich des RAM entsprechend dem ausgewählten Kanal,
schreibt die Eingangsdaten des Faltungsverschachtelers in die Adresse,
von welcher die Daten gelesen wurden, und gibt die gelesenen Daten
als das Ausgangssignal des Faltungsverschachtelers aus.
-
Durch
Wiederholen der oben erwähnten
Verarbeitung führt
der Faltungsverschachteler eine Faltungsverschachtelung für die Eingangsdaten
aus.
-
Nachfolgend
wird eine Beschreibung der Wirkungsweise des in 15 gezeigten
Faltungsverschachtelers gegeben.
-
Der
Faltungsverschachteler erfasst zu verschachtelnde Eingangsdaten
von dem Eingangsdatenanschluss 1 unter Verwendung der Eingangsdatensteuerungseinrichtung 9 und
schreibt die Daten unter Verwendung der Schreibeinrichtung 12 in
den RAM 13. Zu diesem Zeitpunkt zählen die Zähler 60~6C der
unteren Adresserzeugungseinrichtung 5 für die b-Bit Daten der entsprechenden
Kanäle ch0~chC
entsprechend diesen Kanälen
die unteren Adressen des RAM 13 und der untere Adressauswähler 7 wählt eine
dieser unteren Adressen aus. Die so ausgewählte untere Adresse und die
von der oberen Adresserzeugungseinrichtung 4 ausgegebene obere
Adresse des RAM 13 werden in die Ausgangstiminganpassungseinrichtung 8 eingegeben,
in welcher deren Ausgangstimings angepasst werden und diese Adressen
werden dann in die Schreibeinrichtung 12 eingegeben, um
eine Schreibadresse des RAM 13 anzugeben.
-
Bezogen
auf die Daten von ch0 überträgt die Eingangsdatensteuerungseinrichtung 9 diese
Daten nicht durch den RAM 13 sondern direkt zu dem Ausgangssignalauswähler 15.
Die RAM-Steuerungseinrichtung 11 wählt diese nicht verzö gerten Daten
aus, welche von der Eingangsdatensteuerungseinrichtung 9 direkt
zu dem Ausgangssignalauswähler 15 gesendet
wurden, und gibt diese Daten von dem Ausgangsanschluss 2 nach
außen
aus.
-
Weiterhin
sind die Speicherbereiche für
die Daten von ch1~chN~chC, deren Größen in der Reihenfolge dieser
Kanäle
allmählich
zunehmen, in dem RAM 13 durch die obere Adresserzeugungseinrichtung 4 eingestellt.
Adressen innerhalb der entsprechenden Speicherbereiche werden durch
die Zählereinheit 6 der
unteren Adresserzeugungseinrichtung 5 erzeugt und diese
Adressen werden durch den unteren Adressauswähler 7 jedes mal ausgewählt, wenn der
Auswähler 7 die
entsprechenden Kanäle
nacheinander auswählt.
Bezogen auf die Kanäle,
an welche b-Bit-Daten sequenziell angelegt werden, wird der folgende
Vorgang in jedem Speicherbereich für jeden Kanal ausgeführt. Das
heißt,
die Daten werden an eine Adresse in dem Speicherbereich geschrieben und
zum nächsten
Zeitpunkt werden die Daten aus der Adresse gelesen, um an die nächste Adresse
geschrieben zu werden. Auf diese Weise werden den Daten auf den
Kanälen
ch0~chN~chC entsprechend allmählich
zunehmende Verzögerungszeiten
gegeben.
-
Als
nächstes
wird unter Verwendung von 17 eine
Beschreibung des Aufbaus eines Faltungsentschachtelers gegeben,
welcher die durch den in 15 gezeigten
Faltungsverschachteler verschachtelten Daten entschachtelt.
-
In 17 umfasst
der Faltungsentschachteler einen Single-Port-RAM 33, eine
Eingangsdatensteuerungseinrichtung 29, eine Auswahlsignalerzeugungseinrichtung 30,
eine RAM-Steuerungseinrichtung 31, eine Adresserzeugungseinrichtung 23,
eine Schreibeinrichtung 32, eine Leseeinrichtung 34 und einen
Ausgangssignalauswähler 35.
Der Single-Port-RAM 33 gibt Daten zu der Leseeinrichtung 34 aus.
Die Eingangsdatensteuerungseinrichtung 29 gibt Eingangsdaten
des Faltungsentschachtelers zu der Eingangsdatenschreibeinrichtung 32 und
dem Ausgangssignalauswähler 35 aus.
Die Auswahlsignalerzeugungseinrichtung 30 gibt ein Steuerungssignal
zu dem unteren Adressauswähler 37 und
der RAM-Steuerungseinrichtung 31 aus.
Die RAM-Steuerungseinrichtung 31 gibt ein Steuerungssignal
zu dem RAM 33 und dem Ausgangssignalauswähler 35 aus.
Die Adresserzeugungseinrichtung 23 gibt eine Adresse zu
der Schreibeinrichtung 32 und zu der Leseeinrichtung 34 aus.
Die Schreibeinrichtung 32 gibt eine Adresse und Daten zu
dem RAM 33 aus. Die Leseeinrichtung 34 gibt eine
Adresse und Daten zu dem RAM 33 aus. Der Ausgangssignalauswähler 35 erzeugt
ein Ausgangssignal des Faltungsentschachtelers.
-
Die
Adresserzeugungseinrichtung 23 umfasst eine obere Adresserzeugungseinrichtung 24, eine
untere Adresserzeugungseinrichtung 25 und eine Ausgangstiminganpassungseinrichtung 28.
Die obere Adresserzeugungseinrichtung 24 gibt eine obere
Adresse für
jeden Kanal zu der Ausgangstiminganpassungseinrichtung 28 und
der Leseeinrichtung 34 aus. Die untere Adresserzeugungseinrichtung 25 gibt
eine untere Adresse für
jeden Kanal zu der Ausgangstiminganpassungseinrichtung 28 und
der Leseeinrichtung 34 aus.
-
Die
untere Adresserzeugungseinrichtung 25 umfasst eine Zählereinheit 26 und
einen unteren Adressauswähler 27.
Die Zählereinheit 26 gibt
eine untere Adresse für
jeden Kanal zu dem unteren Adressauswähler 27 aus. Die Zählereinheit 26 umfasst
Zähler 260~26C entsprechend
den Kanälen ch0~chC.
Der untere Adressauswähler 27 gibt
eine untere Adresse zu der Ausgangstiminganpassungseinrichtung 28 aus.
-
Die
Auswahlsignalerzeugungseinrichtung 30 und die Adresserzeugungseinrichtung 23 dienen
beide als ein Eingangsseitenauswähler
in dem Arbeitsprinzip, welches später unter Verwendung von 18 beschrieben
wird. Andererseits dienen der Ausgangssignalauswähler 35 und die Adresserzeugungseinrichtung 23 beide
als ein Ausgangsseitenauswähler
in dem Arbeitsprinzip.
-
Nachfolgend
wird die Wirkungsweise des Faltungsentschachtelers anhand von 18 beschrieben.
-
In 18 bezeichnet
Bezugszeichen 1112 einen Single-Port-RAM, welcher mit einer
Taktfrequenz f synchronisiert ist, und die Bezugszeichen 1110 und 1111 bezeichnen
Auswähler,
welche an der Eingangsseite und der Ausgangsseite des Single-Port-RAM 1112 angeordnet
sind. Der Single-Port-RAM 1112 weist mehrere Stufen von Speicherbereichen
entsprechend den jeweiligen Kanälen
auf und jede mit einer Bitbreite b, und die Anzahl der Speicherbereiche
ist gleich zu "Tie fe(m) × (maximale
Kanalanzahl(C) – Kanalnummer
(N)-1)", mit 0 ≤ N ≤ C. Die Auswähler 1110 und 1111 wählen die
Kanäle
ringförmig
und synchron miteinander aus. Um genau zu sein, beginnen diese Auswähler 1110 und 1111 bei
ch0, erhöhen
nacheinander die Kanalnummer und kehren zu ch0 zurück, wenn
sie chC erreichen, um den gleichen Ablauf wie oben zu wiederholen.
-
Zuerst
wählen
beide Auswähler 1110 und 1111 ch0
aus. Auf diesem Kanal wird ein Signal, welches um ein C-(>1)-faches mehr verzögert ist,
als die Verzögerung
auf ch1 des Faltungsverschachtelers, durch RAM 1112-0 ausgegeben.
-
Als
nächstes
wählen
die Auswähler 1110 und 1111 ch1
aus. Auf diesem Kanal wird ein Signal, welches um das (C-1)-fache
der Verzögerung
auf Kanal ch1 des Faltungsverschachtelers verzögert ist, durch RAM 1112-1 ausgegeben.
-
Danach
wählen
die Auswähler 1110 und 1111 in
gleicher Weise ch2, ch3, ..., chN-1 aus und Signale, welche um das
(C-2)-, (C-3)-, ..., (C-(N-1))- (>1)
fache der Verzögerung
auf Kanal ch1 des Faltungsverschachtelers verzögert sind, werden durch RAM 1112-2,
RAM 1112-3, ..., RAM 1112-(N-1) ausgegeben.
-
Dann
wählen
die Auswähler 1110 und 1111 chN
aus. Auf diesem Kanal wird ein Signal, welches um das (C-N)-fache
der Verzögerung
auf Kanal ch1 des Faltungsverschachtelers verzögert ist, von dem RAM 1112-N ausgegeben.
-
Danach
wählen
die Auswähler 1110 und 1111 chC
aus. Da auf diesem Kanal kein Verzögerungselement existiert, durchläuft das
Signal auf chC den Faltungsentschachteler, ohne verzögert zu
werden.
-
Zu
dem nächsten
Zeitpunkt wählen
beide Auswähler 1110 und 1111 erneut
ch0 aus, um den oben erwähnten
Vorgang zu wiederholen.
-
Wie
oben beschrieben, liest der Faltungsentschachteler die ältesten
Daten aus dem Speicherbereich des RAM entsprechend dem ausgewählten Kanal,
schreibt die eingegebenen Daten des Faltungsentschachtelers in die
Adresse, von welcher Daten gelesen wurden, und gibt die gelesenen
Daten als das Ausgangssignal des Faltungsentschachtelers aus.
-
Durch
Wiederholen der oben erwähnten
Verarbeitung werden die Eingangsdaten in dem gleichen Datenformat
wiederhergestellt, wie dasjenige vor der Faltungsverschachtelung.
-
Als
nächstes
wird eine Beschreibung der Wirkungsweise des Faltungsentschachtelers
gegeben.
-
Der
Faltungsentschachteler erfasst eingegebene, zu entschachtelnde Daten
von dem Eingangsdatenanschluss 21 unter Verwendung der
Eingangsdatensteuerungseinrichtung 29 und schreibt dann
die Daten unter Verwendung der Schreibeinrichtung 32 in
den RAM 33. Zu diesem Zeitpunkt werden für b-Bit Daten
der entsprechenden Kanäle
ch0~chN~chC die Zähler 260~26N~26C der
unteren Adresserzeugungseinrichtung 25 entsprechend diesen
Kanälen die
unteren Adressen des RAM 33 zählen und der untere Adressauswähler 27 wählt eine
dieser unteren Adressen aus. Die so ausgewählte untere Adresse und die
von der oberen Adresserzeugungseinrichtung 24 ausgegebene
obere Adresse des RAM 33 werden in die Ausgangstiminganpassungseinrichtung 28 eingegeben,
worin deren Ausgangstimings angepasst werden, und dann werden diese
Adressen in die Schreibeinrichtung 32 eingegeben, um eine Schreibadresse
des RAM 33 anzugeben.
-
Bezogen
auf die Daten von chC überträgt die Eingangsdatensteuerungseinrichtung 29 diese
Daten nicht durch den RAM 33 sondern direkt zu dem Ausgangssignalauswähler 35.
Die RAM-Steuerungseinrichtung 31 wählt diese nicht verzögerten Daten aus,
welche von der Eingangsdatensteuerungseinrichtung 29 direkt
zu dem Ausgangssignalauswähler 35 gesendet
wurden, und gibt diese Daten von dem Ausgangsanschluss 22 nach
außen
aus.
-
Weiterhin
sind für
die Daten von ch1~chN~chC Speicherbereiche, deren Größen sich allmählich in
der Reihenfolge dieser Kanäle
verringern, in dem RAM 33 durch die obere Adresserzeugungseinrichtung 24 eingestellt.
Adressen innerhalb der entsprechenden Speicherbereiche werden durch die
Zählereinheit 26 der
unteren Adresserzeugungseinrichtung 25 erzeugt und diese
Adressen werden von dem unteren Adressauswähler 27 jedesmal dann ausgewählt, wenn
der Adressauswähler 27 die
entsprechenden Kanäle
nacheinander auswählt.
Bezo gen auf die Kanäle,
an welche b-Bit-Daten sequenziell angelegt werden, wird der folgende
Vorgang mit jedem Speicherbereich für jeden Kanal ausgeführt. Das
heißt,
die Daten werden an die Adressen in dem Speicherbereich geschrieben
und zum nächsten Zeitpunkt
werden die Daten von den Adressen gelesen, um an die nächste Adresse
geschrieben zu werden. Auf diese Weise werden den Daten der Kanäle ch0~chN~chC
entsprechend allmählich
verringerte Verzögerungszeiten
gegeben.
-
Dadurch
werden den Kanälen
ch0~chN~chC durch den in 16 gezeigten
Faltungsentschachteler allmählich
geringer werdende Verzögerungszeiten
gegeben, während
diesen Kanälen
durch den in 15 gezeigten Faltungsverschachteler
allmählich zunehmende
Verzögerungszeiten
gegeben wurden. Synthetisch wird allen Kanälen die gleiche Verzögerungszeit
gegeben, wodurch die Datenmatrix, welche durch den in 15 gezeigten
Faltungsverschachteler verschachtelt wurde, durch den in 16 gezeigten
Faltungsentschachteler entschachtelt (wiederhergestellt) wird.
-
Daher
ist es, wenn ein digitales System als eine integrierte Schaltung
aufgebaut ist, erforderlich, dass so viele Schaltungen wie möglich in
der selben integrierten Schaltung untergebracht werden und das gleiche
ist erforderlich für
ein System mit einem Faltungsverschachteler und einem Faltungsentschachteler.
Daher sind bei dieser Art von System weitere Verringerungen in Flächen- und
Energieverbrauch des Faltungs-Verschachtelers und -Entschachtelers erforderlich.
-
Die
US 3,652,998 offenbart Verschachteler, welche
die Bits in einer Gruppe der Länge
B in der Eingangsfolge verteilen, so dass jedes Paar in der Ausgangsfolge
wenigstens N Bits getrennt ist, in welcher die Verzögerungsschaltung
(z. B. ein oder mehrere Schieberegister) mit einer Steuerungsschaltung zusammenwirken,
um eine Mehrzahl von Verzögerungspfaden
zu definieren, von denen jeder eine konstante Länge aufweist, wobei die Anzahl
dieser Pfade gleich der Periode P des Verschachtelers ist.
-
Die
EP 0 026 050 offenbart einen
Verschachteler, welcher ein Folge von Kodewörtern empfängt und welcher die Bits von
jedem Kodewort über
einen langen Zeitabschnitt verteilt, so dass keine zwei Bits des
Kodeworts durch weniger als ein bestimmtes Zeitintervall getrennt
sind. Dieses Zeitintervall wird ausgewählt, um die Wahrscheinlichkeit,
dass zwei oder mehr Bits des selben Kodeworts durch die selbe Beeinflussung
beeinträchtigt
werden, zu minimieren. Der Verschachteler ist angeordnet, um eine
insbesondere ökonomische
Verwendung von Datenspeicherkapazität bereitzustellen. Der Verschachteler
besteht aus einer Mehrzahl (K-1) serieller Schieberegister, in welchen
jedes Kodewort (K) Bits enthält.
Jedes Schieberegister hat eine Kapazität, welche ein unterschiedliches
ganzzahliges Vielfaches eines vorbestimmten Betrages (N) ist, und
Daten werden vorübergehend
für einen
Zeitabschnitt, welcher proportional zu ihrer Kapazität ist, in
den entsprechenden Registern gespeichert. Daten werden durch Schalter
in die und aus den geeigneten Schieberegistern geleitet.
-
Die
GB 2 315 002 offenbart einen
Faltungsverschachteler zum Verschachteln eines Datenstroms, welcher
aus einer Anzahl N von Daten mit einem vorbestimmten Verschachtelungspegel
B gebildet ist, um den Datenstrom für eine Fehlerkorrektur zu randomisieren,
mit: einem Eingangspuffer; einem Speicher; einer Adresserzeugungseinheit;
einem Ausgangspuffer; und einer Steuerung, und ein Verfahren zum
Erzeugen einer Adresse des Speichers werden offenbart. Bei dem Verfahren
zum Erzeugen einer Adresse des Speichers wird ein Basisspeicher, dessen
Nummer des vertikalen Endes B-1 ist und dessen horizontale Länge (B-1) × M Zelle
ist, in einen Zwischenspeicher transformiert, dessen Nummer des
vertikalen Endes B-1 ist und dessen horizontale Länge (B/2) × M Zelle
ist, und eine physikalische Adresse zum Ansprechen des Zwischenspeichers wird
erzeugt. Die physikalische Adresse wird während einer Taktperiode aufrechterhalten,
während
der Speicher die Daten liest, die vorher während der ersten Halbperiode
des Taktes an der Speicherposition entsprechend der physikalischen
Adresse gespeichert wurden, und die gegenwärtig eingegebenen Eingangsdaten
an der selben Speicherposition entsprechend der physikalischen Adresse
während
der letzten Halbperiode des Taktes speichert.
-
Die
EP 0 681 373 offenbart einen
Faltungsverschachteler und ein Adressierungsschema. Bis zu B aufeinanderfolgende
Zeichen mit Fehlern können so
verschachtelt werden, dass sie voneinander durch wenigstens N dazwischen
liegende Zeichen getrennt sind. Ein Speicher, wie ein RAM, ist ausgebildet,
um (B-1) Zellen
zunehmender Größe zum Speichern
von Zeichen aus einem Daten strom bereitzustellen. Eine erste der
Zellen (CELL 1) hat M Speicherpositionen, angepasst zum Speichern
von M Zeichen. Jede nachfolgende der Zellen (CELL 2, CELL3) hat
M mehr Speicherpositionen als die unmittelbar vorausgehende Zelle
zum Speichern von M mehr Zeichen als die unmittelbar vorausgehende
Zelle, mit M=N/B. Die Zellen werden aufeinanderfolgend adressiert,
um ein nächstes
Zeichen von dem Strom in eine nächste Schreibzeichenposition
in einer gegenwärtig
adressierten Zelle zu schreiben und um ein Zeichen aus einer Position
der gegenwärtig
adressierten Zelle zu lesen, welche der nächsten Schreibzeichenposition unmittelbar
folgt. Die Positionen werden in einer ersten umlaufenden Weise angesprochen,
so dass der letzten Position in einer Zelle die erste Position in
der Zelle folgt. Die Zellen werden in einer zweiten umlaufenden
Weise adressiert, so dass der (B-1)-ten Zelle die erste Zelle folgt,
oder umgekehrt. Eine eingefügte Übertragungsstufe
kann innerhalb des RAM zwischen der (B-1)-ten Zelle und der ersten
Zelle vorgesehen sein, um das nächste
Zeichen für
den Verschachteler-Ausgang direkt zu Übertragen. Jedes aufeinanderfolgende
Zeichen aus dem Strom wird in eine der nächsten folgenden der Zellen
geschrieben. Ein Entschachteler mit dem gleichen Aufbau wird vorgeschlagen.
-
ZUSAMMENFASSUNG
DER ERFINDUNG
-
Eine
Aufgabe der vorliegenden Erfindung ist es, einen Faltungsverschachteler,
einen Faltungsentschachteler, ein Faltungsverschachtelungsverfahren und
ein Faltungsentschachtelungsverfahren anzugeben, welche Verringerungen
in dem Flächen-
und Energieverbrauch durch Optimieren eines RAM-Steuerungssystems verwirklichen können.
-
Andere
Aufgaben und Vorteile der Erfindung werden aus der folgenden detaillierten
Beschreibung erkennbar. Die detaillierte Beschreibung und die beschriebenen
besonderen Ausführungsformen
sind nur zur Illustration vorgesehen, da zahlreiche Hinzufügungen und
Modifikationen innerhalb des Umfangs der Erfindung für den Durchschnittsfachmann
in der detaillierten Beschreibung erkennbar sind.
-
Gemäß einem
ersten Aspekt der vorliegenden Erfindung ist ein Faltungsentschachteler
vorgesehen, welcher eine Faltungsentschachtelung für eine Daten gruppe
ausführt,
in welcher die eingegebene/ausgegebene Datenbreite b Bit beträgt, die
Tiefe, d. h., die Anzahl der Daten in Bit-breiten Einheiten, m ist,
die Anzahl der Kanäle
n ist und die maximale Kanalanzahl C ist (n = ganze Zahl, welche
die Bedingung 0 ≤ n ≤ C erfüllt, b,
m, C = natürliche
Zahlen), und der Faltungsentschachteler umfasst: eine erste Speichereinrichtung
mit einer Datenbreite von j × b Bit
(j = natürliche
Zahl nicht kleiner als 2); eine Eingangsdaten-Steuerungseinrichtung zum Verteilen der
Eingangsdaten des Faltungsentschachtelers zu einer Bitanschlusseinrichtung,
eine zweite Speichereinrichtung und eine Ausgangsdaten-Steuerungseinrichtung;
wobei die zweite Speichereinrichtung ausgebildet ist zum Verzögern der
Eingangsdaten von der Eingangsdaten-Steuerungseinrichtung für jede Gruppe
mit wenigstens zwei Kanälen,
wobei die Bitanschlusseinrichtung ausgebildet ist zum Verbinden der
Eingangsdaten von der Eingangsdaten-Steuerungseinrichtung und der
Eingangsdaten von der zweiten Speichereinrichtung, um Daten zu erzeugen, welche
in die erste Speichereinrichtung einzugeben sind, mit einer Datenbreite
von j × b
Bit; eine Adresserzeugungseinrichtung zum Erzeugen von Adressen
der ersten Speichereinrichtung; eine Bitseparationseinrichtung zum
Umwandeln ausgegebener Daten von der ersten Speichereinrichtung
in Daten mit einer Datenbreite von b Bit und die von dem Faltungsentschachteler
auszugeben sind; und wobei die Ausgangsdaten-Steuerungseinrichtung zum Ausgeben von
Ausgangsdaten von der Bitseparationseinrichtung nach außerhalb
des Faltungsentschachtelers ausgebildet ist. Daher ist die RAM-Adresserzeugungseinrichtung
optimiert, wodurch die Fläche
der Adresserzeugungseinrichtung minimiert ist und die Häufigkeit
von Zugriffen auf den RAM verringert ist. Dadurch kann eine Faltungsentschachtelung
mit minimalem Energieverbrauch ausgeführt werden und sie kann weiterhin
auch mit einem bei niedriger Frequenz arbeitenden RAM ausgeführt werden.
-
Gemäß einem
zweiten Aspekt der vorliegenden Erfindung umfasst der Faltungsentschachteler des
ersten Aspekts die Adresserzeugungseinrichtung, welche die Adresserzeugung
derart ausführt, dass
die erste Speichereinrichtung eine Verzögerung von (C-i)S ausführt (S =
vorbestimmter Betrag der Verzögerung,
0 < S), für die i-te
Gruppe aus Gruppen, in welchen sämtliche
Kanäle
gruppiert sind, so dass jede Gruppe höchstens k Kanäle umfasst,
wobei die i-te Gruppe Kanäle
von dem ik-ten Kanal bis zu dem ((i+1)k-1)-ten Kanal umfasst (k
= natürliche
Zahl nicht größer als
C, i = ganze Zahl, welche die Beziehung 0 ≤ i ≤(ganzzahliger Teil von (C/k))
erfüllt,
(i+1)k-1 ≤C);
wobei
die zweite Speichereinrichtung eine ausreichende Kapazität aufweist,
um eine Verzögerung äquivalent
zu einem Mangel in der Verzögerung
der ersten Speichereinrichtung für
die Verzögerung
von (C-n)T auszuführen
(T = vorbestimmter Verzögerungsbetrag,
S ≤ T), die
auf die Daten in dem n-ten Kanal ausgeübt wird; und
mit einer
Schalteinrichtung zum aufeinanderfolgenden Umschalten der Kanäle jedesmal,
wenn Daten aus b Bit und der Tiefe m eingegeben werden, so dass
der Kanal der Dateneingabe für
die erste Speichereinrichtung und für die zweite Speichereinrichtung
in der Kanalnummer identisch mit der Kanalnummer des Kanals der
Datenausgabe von der ersten Speichereinrichtung ist. Daher können, die
gleichen Wirkungen, wie oben beschrieben, erreicht werden.
-
Gemäß einem
dritten Aspekt der vorliegenden Erfindung ist in dem Faltungsentschachteler
des zweiten Aspekts C eine ungerade Zahl, k ist 2, S und T erfüllen die
Beziehung S = T und die zweite Speichereinrichtung führt eine
Verzögerung
von T für
den (2h+1)-ten Kanal aus (h = ganze Zahl, welche die Beziehung 0 ≤ 2h+1 ≤C erfüllt) und
führt nicht
eine Verzögerung
für den
2h-ten Kanal aus. Daher können die
gleichen Wirkungen, wie oben beschrieben, erreicht werden.
-
Gemäß einem
vierten Aspekt der vorliegenden Erfindung sind bei dem Faltungsentschachteler des
ersten Aspekts die zweite Speichereinrichtung und die erste Speichereinrichtung
aus der gleichen Art Speichereinrichtung aufgebaut. Daher können die gleichen
Wirkungen, wie oben beschrieben, erreicht werden.
-
Gemäß einem
fünften
Aspekt der vorliegenden Erfindung ist bei dem Faltungsentschachteler des
ersten Aspekts die erste Speichereinrichtung durch ein RAM aufgebaut.
Daher können
die gleichen Wirkungen, wie oben beschrieben, erreicht werden.
-
Gemäß einem
sechsten Aspekt der vorliegenden Erfindung weist bei einem Faltungsverschachteler
des fünften
Aspekts der RAM j Eingabe/Ausgabe-Anschlüsse auf (j = natürliche Zahl
nicht kleiner als 2). Daher können
die gleichen Wirkungen, wie oben beschrieben, erreicht werden.
-
KURZBESCHREIBUNG
DER ZEICHNUNGEN
-
1 ist
ein Blockschaltbild, welches einen Faltungsverschachteler gemäß einer
ersten Ausführungsform
der vorliegenden Erfindung darstellt;
-
2 ist
eine Darstellung zum Erläutern
der Wirkungsweise des Faltungsverschachtelers der ersten Ausführungsform;
-
3 ist
ein Zeitdiagramm des Faltungsverschachtelers der ersten Ausführungsform;
-
4 ist
ein Blockschaltbild, welches einen Faltungsentschachteler gemäß einer
zweiten Ausführungsform
der vorliegenden Erfindung darstellt;
-
5 ist
eine Darstellung zum Erläutern
der Wirkungsweise des Faltungsentschachtelers der zweiten Ausführungsform;
-
6 ist
ein Zeitdiagramm des Faltungsentschachtelers der zweiten Ausführungsform;
-
7 ist
ein Blockschaltbild, welches einen Faltungsverschachteler gemäß einer
dritten Ausführungsform
der vorliegenden Erfindung darstellt;
-
8 ist
eine Darstellung zum Erläutern
der Wirkungsweise des Faltungsverschachtelers der dritten Ausführungsform;
-
9 ist
ein Zeitdiagramm des Faltungsverschachtelers der dritten Ausführungsform;
-
10 ist
ein Blockschaltbild, welches einen Faltungsentschachteler gemäß einer
vierten Ausführungsform
der vorliegenden Erfindung darstellt;
-
11 ist
eine Darstellung zum Erläutern der
Wirkungsweise des Faltungsentschachtelers der vierten Ausführungsform;
-
12 ist
ein Zeitdiagramm des Faltungsentschachtelers der vierten Ausführungsform;
-
13 ist
ein Blockschaltbild, welches einen zum Beispiel in der japanischen
Offenlegung Nr. Hei. 7-170201 offenbarten Faltungsverschachteler
zeigt;
-
14 ist
ein Blockschaltbild, welches einen von dem Faltungsverschachteler
in 13 abgeleiteten Faltungsentschachteler zeigt;
-
15 ist
ein Blockschaltbild, welches einen Faltungsverschachteler gemäß einem
weiteren Stand der Technik zeigt;
-
16 ist
eine Darstellung zum Erläutern der
Wirkungsweise des Faltungsverschachtelers in 15;
-
17 ist
ein Blockschaltbild, welches einen Faltungsentschachteler gemäß einem
weiteren Stand der Technik zeigt;
-
18 ist
eine Darstellung zum Erläutern der
Wirkungsweise des Faltungsentschachtelers in 17;
-
19 ist
ein Blockschaltbild, welches einen Faltungsverschachteler gemäß einer
fünften
Ausführungsform
der Erfindung zeigt; und
-
20 ist
ein Blockschaltbild, welches einen Faltungsentschachteler gemäß einer
sechsten Ausführungsform
der vorliegenden Erfindung zeigt.
-
DETAILLIERTE
BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORMEN
-
Nachfolgend
werden Ausführungsformen der
vorliegenden Erfindung anhand der 1 bis 12 beschrieben.
-
[Ausführungsform 1]
-
In
einem Faltungsverschachteler gemäß der ersten
Ausführungsform
der vorliegenden Erfindung sind Adresszähler für eine RAM-Einheit für jeweils zwei
Kanäle
als eine Einheit zusammengefasst und verringern dadurch die Schaltungsgröße der peripheren
Einheit des RAM und seinen Energieverbrauch.
-
1 ist
ein Blockschaltbild, welches die Struktur eines Faltungsverschachtelers
gemäß einer ersten
Ausführungsform
zeigt.
-
In 1 umfasst
der Faltungsverschachteler einen Single-Port-RAM 53 (erste
Speichereinrichtung in Anspruch 3), eine Eingangsdatensteuerungseinrichtung 46,
eine Auswahlsignalerzeugungseinrichtung 50, einen Schieberegisterauswähler 59,
eine Schieberegistereinheit 48 (zweiter Speicher in Anspruch
3), einen Schieberegisterauswähler 60,
ein Register 49, Register 491 und 492,
eine Bitverbindungseinrichtung 47, eine obere Adresserzeugungseinrichtung 41,
eine untere Adresserzeugungseinrichtung 42, eine Ausgangstiminganpassungseinrichtung 45,
eine Schreibeinrichtung 52, eine Leseeinrichtung 54,
einen Ausgangssignalauswähler 55, eine
Bitseparationseinrichtung 56, ein Register 57, eine
Ausgangsdatensteuerungseinrichtung 58 und eine RAM-Steuerungseinrichtung 61.
-
Der
Single-Port-RAM 53 gibt Daten zu der Leseeinrichtung 54 aus.
Die Eingangsdatensteuerungseinrichtung 46 gibt Eingangsdaten 61 des
Faltungsverschachtelers zu dem Register 49, dem Ausgangssignalauswähler 55 und
dem Schieberegisterauswähler 59 aus.
Die Auswahlsignalerzeugungseinrichtung 50 gibt ein Steuerungssignal
zu der Eingangsdatensteuerungseinrichtung 46, der oberen Adresserzeugungseinrichtung 41,
dem unteren Adressauswähler 44,
den Schieberegisterauswählern 59 und 60 und
der RAM-Steuerungseinrichtung 61 aus. Der Schieberegisterauswähler 59 gibt
Daten zu der Schieberegistereinheit 48 aus. Die Schieberegistereinheit 48 umfasst
Schieberegister 481, 483~48C-2, 48C entsprechend
den Kanälen
ch1, ch3~chC~2, chC und gibt Daten der Schieberegister in Gruppen,
die jede zwei Kanälen
entspricht, zu dem Schieberegisterauswähler 60 aus. Der Schieberegisterauswähler 60 gibt
Daten zu der Bitverbindungseinrichtung 47 aus. Das Register 49 gibt
Daten zu der Bitverbindungseinrichtung 47 aus. Das Register 491 behält Ausgangsdaten
von der Eingangsdatensteuerungseinrichtung 46 und gibt
die Daten zu dem Ausgangssignalauswähler 55 aus. Die Bitverbindungseinrichtung 47 gibt
Daten zu der Schreibeinrichtung 52 des RAM 53 aus.
Die obere Adresserzeugungseinrichtung 41 gibt eine obere
Adresse des RAM 53 zu der Schreibeinrichtung 52 durch
die Ausgangstiminganpassungseinrichtung 45 aus. Die untere Adresserzeugungseinrichtung 42 gibt
eine untere Adresse des RAM 53 zu der Schreibeinrichtung 52 durch
die Ausgangstiminganpassungseinrichtung 45 aus. Die Ausgangstiminganpassungseinrichtung 45 gibt
eine Adresse und ein Steuerungssignal zu der Schreibeinrichtung 52 aus.
Die Schreibeinrichtung 52 gibt Daten, eine Adresse und
ein Steuerungssignal zu dem RAM 53 aus. Die Leseeinrichtung 54 gibt eine
Adresse und ein Steuerungssignal zu dem RAM 53 aus und
gibt Daten zu dem Ausgangssignalauswähler 55 aus. Der Ausgangssignalauswähler 55 gibt Daten
zu der Bitseparationseinrichtung 56 aus. Die Bitseparationseinrichtung 56 gibt
Daten zu der Ausgangsdatensteuerungseinrichtung 58 und
dem Register 57 aus. Das Register 57 gibt Daten
zu der Ausgangsdatensteuerungseinrichtung 58 aus. Die Ausgangsdatensteuerungseinrichtung 58 gibt
ein Ausgangssignal 62 des Faltungsverschachtelers nach außen aus.
Die RAM-Steuerungseinrichtung 61 steuert den RAM 53 und
den Ausgangssignalauswähler 55.
-
Die
untere Adresserzeugungseinrichtung 42 umfasst eine Zählereinheit 43 und
einen unteren Adressauswähler 44.
Die Zählereinheit 43 umfasst Zähler 432, 434 43N ~ 43C-1 entsprechend
den Kanälen
ch2/ch3, ch4/ch5 ~ chN/chN+1 ~ chC-1/chC. Die Zählereinheit 43 gibt
die unteren Adressen in Gruppen zu dem unteren Adressauswähler 44 aus, wobei
jede Gruppe zwei Kanälen
entspricht. Der untere Adressauswähler 44 gibt die untere
Adresse zu der Ausgangstiminganpassungseinrichtung 45 aus.
-
Die
Auswahlsignalerzeugungseinrichtung 50 und die Adresserzeugungseinrichtung 40 dienen
als ein Eingangsseitenauswähler
in dem später
beschriebenen Arbeitsprinzip. Weiterhin dienen der Ausgangssignalauswähler 55 und
die Adresserzeugungseinrichtung 40 in dem Arbeitsprinzip
als ein Ausgangsseitenauswähler.
-
Nachfolgend
wird das Arbeitsprinzip des Faltungsverschachtelers gemäß der ersten
Ausführungsform
der vorliegenden Erfindung anhand von 2 und dem
Zeitdiagramm 3 beschrieben.
-
Der
Faltungsverschachteler der ersten Ausführungsform wird verwirklicht
durch Ersetzen der in 16 gezeigten Speicherbereiche 102-0,
..., 102-(C-1) durch Schieberegister (zweite Verzögerungseinheit
in Anspruch 1) 122-0, ..., 122-(C-1)/2 und Speicherbereiche (erste
Verzögerungseinheit
in Anspruch 1) innerhalb des Single-Port-RAM (Bitbreite 2b)
..., 123-(N/2-1), ..., 123-((C-1)/201) und Verwenden
von Auswählern 120 und 121,
welche die Kanäle
ringförmig
umschalten. Diese Auswähler 120 und 121 beginnen
bei ch0, erhöhen
nacheinander die Kanalnummer und kehren beim Erreichen von chC zu
ch0 zurück,
um den gleichen Ablauf wie oben zu wiederholen.
-
Zu
Anfang wählen
beide Auswähler 120 und 121 Kanal
ch0 aus. Da in diesem Kanal kein Verzögerungselement vorhanden ist,
durchläuft
das Signal in ch0 den Faltungsverschachteler, ohne verzögert zu
werden.
-
Als
nächstes
wählen
die Auswähler 120 und 121 ch1
aus. Auf diesem Kanal ist ein FIFO durch das Schieberegister 122-0 implementiert
und ein durch dieses Schieberegister verzögertes Signal wird ausgegeben.
-
Dann
wählen
die Auswähler
chN aus. Die Daten dieses Kanals werden durch ein (nicht dargestelltes)
Register gehalten, bis der nächste
Kanal chN+1 ausgewählt
wird. Die Daten von chN und chN+1 werden gleichzeitig in den RAM 123-(N/2-1) eingegeben
und die Daten von chN werden um das N-(>1)-fache der Verzögerung auf ch1 durch den RAM 123-(N/2-1) ausgegeben.
-
Auf
chN+1 wird die gleiche Verzögerung
wie diejenige auf ch1 durch das Schieberegister 122-0 durch
das Schieberegister 122-N/2 vorgenommen und eine Verzögerung um
das N-(>1)-fache derjenigen
auf ch1 wird zu dieser durch den RAM 123-(N/2-1) hinzugefügt. Folglich
wird ein um das (N+1)-fache der Verzögerung auf ch1 verzögertes Signal
ausgegeben.
-
Danach
wählen
die Auswähler 120 und 121 chC
aus. Auf diesem Kanal wird die gleiche Verzögerung wie diejenige auf ch1
durch das Schieberegister 122-0 durch das Schieberegister 122-(C-1)/2 vorgenommen
und eine Verzögerung
um das C-1-(>N)-fache
derjenigen auf ch1 wird zu dieser Verzögerung durch den RAM 123-((C-1)/2-1) hinzugefügt. Folglich wird
ein um das C-fache der Verzögerung
von ch1 verzögertes
Signal ausgegeben.
-
Zu
dem nächsten
Zeitpunkt wählen
die Auswähler 120 und 121 erneut
ch0 aus, um den oben genannten Vorgang zu wiederholen.
-
Insbesondere,
wenn die Auswähler 120 und 121 den
Kanal chN zum Zeitpunkt t auswählen,
werden die Eingangsdaten des Faltungsverschachtelers in die Eingangsdatensteuerungseinrichtung 46 eingegeben
und diese Daten werden von dem Register 49 behalten. Zum
Zeitpunkt t+1 (die Auswähler 120 und 121 wählen den
Kanal chN+1 aus) werden die Eingangsdaten des Faltungsverschachtelers
in das Schieberegister 122-N/2 eingegeben und das Schieberegister 122-N/2 führt eine
Verschiebung aus, wodurch das Ausgangssignal der Eingangsdatensteuerungseinrichtung 46 und
das Ausgangssignal des Registers 49 gleichzeitig in den
Single-Port-RAM 123-(N/2-1) geschrieben werden, wie die
unteren b Bit und die oberen b Bit entsprechend durch die Bitverbindungseinrichtung 47.
Zum Zeitpunkt t+Nxmx(C+1) werden diese Daten gleichzeitig gelesen und
die oberen b Bit werden von dem Faltungsverschachteler ausgegeben,
während
die unteren b Bit durch die Bitseparationseinrichtung 56 und
die Ausgangsdatensteuerungs einrichtung 58 in dem Register 57 gespeichert
werden. Zum Zeitpunkt t+Nxmx(C+1) wird das Ausgangssignal des Registers 57 von
dem Faltungsverschachteler durch die Ausgangsdatensteuerungseinrichtung 58 ausgegeben. Durch
Wiederholen der oben genannten Verarbeitung wird eine Faltungsverschachtelung
verwirklicht.
-
Als
nächstes
wird die Wirkungsweise des Faltungsverschachtelers anhand von 1 beschrieben.
-
Der
Faltungsverschachteler erfasst zu verschachtelnde Eingangsdaten
von dem Eingangsanschluss 61 durch die Eingangsdatensteuerungseinrichtung 46 und
schreibt die Daten durch die Schreibeinrichtung 52 in den
RAM 53. Zu diesem Zeitpunkt ist ein Adresszähler zwei
Kanälen
(ch) mit b-Bit Daten zugeordnet. Dann zählen die Zähler 432 ~ 43N ~ 43C-1 der
unteren Adresserzeugungseinrichtung 42 entsprechend ch2
und ch3 (nachfolgend ch2/ch3) ~ chN-1 und chN (chN-1/chN) ~ chC-1
und chC (chC-1/chC) die unteren Adressen des RAM 53. Der untere
Adressauswähler 44 wählt einen
dieser Zähler,
welche die Zählereinheit
der unteren Adresserzeugungseinrich-tung 42 bilden, entsprechend
dem durch die Auswahlsignalerzeugungseinrich-tung 50 erzeugten
Auswahlsignal aus. Die so ausgewählte untere
Adresse und die von der oberen Adresserzeugungseinrichtung 41 ausgegebene
obere Adres-se des RAM 53 werden in die Ausgangstiminganpassungseinrichtung 45 eingegeben,
in welcher deren Timings angepasst werden, und danach werden diese
Adressen in die Schreibeinrichtung 52 eingegeben, um eine
Schreib-adresse für
den RAM 53 anzugeben.
-
Zu
diesem Zeitpunkt werden zu Anfang die Daten von ch0 eingegeben und
zum nächsten
Zeitpunkt werden die Daten von ch1 eingegeben. Die Auswahlsignalerzeugungseinrichtung 50 steuert
die Eingangsdatensteuerungseinrichtung 46 derart, dass die
Daten von ch0 nicht durch den RAM 53 sondern durch das
Register 490 direkt zu dem Ausgangssignalauswähler 55 übertragen
werden. Weiterhin steuert die RAM-Steuerungseinrichtung 61 unter
der Steuerung der Auswahlsignalerzeugungseinrichtung 50 den
Ausgangssignalauswähler 55 derart,
dass der Auswähler 55 die
nicht verzögerten
Daten auswählt, welche
von der Eingangsdatensteuerungseinrichtung 46 direkt zu
dem Ausgangssignalauswähler 55 ausge geben
werden und gibt diese Daten von dem Ausgangsanschluss nach außen aus.
-
Weiterhin
werden, bezogen auf die Daten von ch1, die Daten von der Eingangsdatensteuerungseinrichtung 46 um
eine vorbestimmte Verzögerungszeit
T (>0) entsprechend
der Kapazität
des Schieberegisters 481 von ch1 verzögert, welches durch die Schieberegisterauswähler 59 und 60 ausgewählt wird,
und die verzögerten
Daten werden in das Register 492 eingegeben. Die RAM-Steuerungseinrichtung 61 unter
der Steuerung der Auswahlsignalerzeugungseinrichtung 50 steuert
den Ausgangssignalauswähler 55 derart,
dass er die durch das Schieberegister 481 von ch1 verzögerten und
von dem Register 492 gelieferten Daten auswählt und
die Daten von dem Ausgangsanschluss 62 nach außen ausgibt.
-
Weiterhin
werden, bezogen auf Daten von ch2~chN~chC Speicherbereiche für diese
Daten in dem RAM 53 durch die obere Adresserzeugungseinrichtung 41 und
die Zählereinheit
der unteren Adresserzeugungseinrichtung 42 derart eingestellt, dass
die Größen dieser
Speicherbereiche in der Reihenfolge der Kanäle ansteigen, jeder um eine
Verzögerungszeit
von 2T, mit zwei Kanälen
als Einheit, und diese Speicherbereiche werden durch einen (nicht dargestellten)
oberen Adressauswähler
und den unteren Adressauswähler 44 für jeweils
zwei Kanäle
als eine Einheit ausgewählt.
Bezogen auf die Kanäle,
an welche zwei Kanäle
mit b Bit Daten sequenziell angelegt werden, wird der folgende Vorgang
für jeden Speicherbereich
für jeweils
zwei Kanäle
ausgeführt. Das
heißt,
die Daten werden an eine Adresse in dem Speicherbereich geschrieben
und zum nächsten Zeitpunkt
werden die Daten von der Adresse gelesen und an die nächste Adresse
geschrieben.
-
Weiterhin
wählen,
bezogen auf die Kanäle von
ch1, ch3~chN+1, chN+3~chC, die Schieberegisterauswähler 59 und 60 nacheinander
die Schieberegister der entsprechenden Kanäle für jeweils zwei Kanäle aus der
Schieberegistereinheit 48 aus. Die Kapazitäten dieser
Schieberegister werden vorab derart eingestellt, dass die Kapazitäten den
Inkrementen der Verzögerungszeit
T von den gleichmäßigen Kanälen ch0,
ch2 ~ chN-1 ~ chC, entsprechen und die von dem Schieberegisterauswähler 60 ausgegebenen
Daten werden mit den Daten der gleich mäßigen Kanäle ch0, ch2 ~ chN-1 ~ chC durch
die Bitverbindungseinrichtung 47 durch das Register 49 verbunden,
wodurch den Daten der Kanäle
ch0 ~ chN ~ chC ein allmählicher
Anstieg der Verzögerungszeiten
gegeben werden kann.
-
Nachdem
die Daten von ch1 eingegeben wurden, werden die Daten von ch2 eingegeben
und zum nächsten
Zeitpunkt werden die Daten von ch3 eingegeben. Bezogen auf die Daten
von ch2 steuert die Auswahlsignalerzeugungseinrichtung 50 den Vorgang
wie folgt. Das heißt,
die Eingangsdatensteuerungseinrichtung 46 gibt diese Daten
in das Register 49 ein, das Register 49 kompensiert
die Daten von ch2 derart, dass diese Daten die Bitverbindungseinrichtung 47 gleichzeitig
mit den durch das Schieberegister 483 verzögerten Daten
von ch3 erreichen, die Bitverbindungseinrichtung 47 verbindet
die Daten von ch2 und die Daten von ch3 und diese so verbundenen
Daten von ch2 und ch3 werden in den RAM 53 eingegeben.
-
Zu
diesem Zeitpunkt steuert die Auswahlsignalerzeugungseinrichtung 50 die
obere Adresserzeugungseinrichtung 41 derart, dass sie eine
Adresse des Speicherbereichs des RAM 53 entsprechend ch2 erzeugt,
und steuert den unteren Adressauswähler 44 derart, dass
er das Ausgangssignal des Zählers 432 in
der Zählereinheit 43 der
unteren Adresserzeugungseinrichtung 42 auswählt, um
eine Adresse des Speicherbereichs entsprechend ch3 auszugeben. Die
Ausgangstiminganpassungseinrichtung 45 passt die Timings
zum Ausgeben der Adressen der Speicherbereiche entsprechend ch2
und ch3 an und gibt diese Adressen zu der Schreibeinrichtung 52 für den RAM 53 aus.
-
Dadurch
werden die Daten von ch2/ch3 in den Speicherbereich des RAM 53 entsprechend ch2/ch3
geschrieben.
-
Weiterhin
wählt die
RAM-Steuerungseinrichtung 61 unter der Steuerung der Auswahlsignalerzeugungseinrichtung 50 die
Daten aus, welche um 2T verzögert
und von dem RAM 53 durch die Leseeinrichtung 54 in
den Ausgangssignalauswähler 55 übertragen
wurden.
-
Die
Daten von ch2 und die Daten von ch3 werden gleichzeitig von dem
Ausgangssignalauswähler 55 und
getrennt durch die Bitseparationseinrichtung 56 ausgegeben.
Die Daten von ch2 werden durch die Ausgangsdatensteuerungseinrichtung 58 und
den Ausgangsanschluss 62 nach außen ausgegeben.
-
Die
Daten von ch3 werden in das Register 57 eingegeben und
um eine vorbestimmte Verzögerungszeit
T (>0) verzögert. Dann
werden die Daten von dem Register 57 durch die Ausgangsdatensteuerungseinrichtung 58 und
den Ausgangsanschluss 62 nach außen ausgegeben.
-
Dadurch
wird den Daten von ch3 eine Verzögerung
gegeben, welche um die vorbestimmte Zeit T (>0) länger
ist, als diejenige der Daten von ch2.
-
Danach
werden durch den gleichen Vorgang, wie oben beschrieben, Verzögerungszeiten entsprechend
geradzahligen Vielfachen von T den geradzahligen Kanälen durch
den RAM 53 erteilt, während
Verzögerungszeiten
entsprechend ungeradzahligen Vielfachen von T den ungeradzahligen Kanälen durch
die Schieberegister und das RAM 53 erteilt werden.
-
Während bei
einem bekannten Faltungsverschachteler eine Adresserzeugungsschaltung
für jeden
Kanal benötigt
wird, wird bei dem Aufbau dieser Ausführungsform eine Adresserzeugungsschaltung für zwei Kanäle benötigt. Daher
werden die Adresserzeugungsschaltungen auf 1/2 verringert, resultierend in
einer beträchtlichen
Verringerung in der Schaltungsgröße. Während weiterhin
im Stand der Technik ein Lese-/Schreib-Vorgang für einen Kanal von Eingangsdaten
in den Single-Port-RAM benötigt
wird, wird in dieser ersten Ausführungsform
ein Lese-/Schreib-Vorgang für
zwei Kanäle
mit Eingangsdaten benötigt,
resultierend in einer Verringerung des Energieverbrauchs. Da weiterhin
die Frequenz, mit welcher der RAM angesprochen wird, verringert
ist, kann auch ein RAM verwendet werden, der bei einer relativ niedrigen
Arbeitsfrequenz arbeitet. Da die Schieberegister 122 (siehe 2)
in Verbindung mit einem Single-Port-RAM verwendet werden, kann weiterhin
die Adresserzeugungseinheit des RAM vereinfacht werden, wodurch
die Adresserzeugung des RAM erleichtert wird.
-
Während in
dieser ersten Ausführungsform zwei
Kanäle
als eine Gruppe vereinigt sind und eine Adresserzeugungsschaltung
einer Gruppe zugewiesen ist, kann eine Adresserzeugungsschaltung
drei oder mehr Kanälen
zugewiesen sein.
-
Allgemein
ist die Eingangs-/Ausgangs-Datenbreite b Bit, die Tiefe (die Anzahl
der Daten in Bitbreiten-Einheiten) ist m, die Anzahl von Kanälen ist
n und die maximale Kanalanzahl ist C (n ist eine ganze Zahl, welche
die Beziehung 0 ≤ n ≤ C erfüllt und
b, m, C sind natürliche
Zahlen).
-
Insbesondere
wenn der Faltungsverschachteler dieser Ausführungsform auf die DVB-Spezifikation,
C = 11, angewendet wird, ist die Anzahl von Kanälen 12 und
die Tiefe ist 17. Weiterhin angewendet auf die amerikanische
Ground-Wave-Spezifikation,
C = 51, ist die Anzahl der Kanäle 52 und die Tiefe
ist 4.
-
Während weiterhin
in dieser ersten Ausführungsform
ein Verzögerungsäquivalent
einer Differenz in Verzögerungen
zwischen zwei benachbarten Kanälen
durch das Schieberegister gegeben ist, kann eine größere Verzögerung als
diese Differenz durch das Schieberegister gegeben sein.
-
Während weiterhin
in dieser Ausführungsform
ein Single-Port-RAM verwendet wird, kann ein Multiple-Port-RAM für eine Hochgeschwindigkeits-E/A
verwendet werden.
-
[Ausführungsform 2]
-
Bei
einem Faltungsentschachteler gemäß einer
zweiten Ausführungsform
der Erfindung sind die Adresszähler
für einen
RAM für
jeweils zwei Kanäle zu
einer Einheit zusammengefasst und verringern dadurch die Schaltungsgröße der peripheren
Einheit des RAM und ihren Energieverbrauch.
-
4 ist
eine Blockdarstellung, welche den Aufbau eines Faltungsentschachtelers
gemäß der zweiten
Ausführungsform
darstellt.
-
In 4 umfasst
der Faltungsentschachteler einen Single-Port-RAM 83 (erste
Speichereinrichtung in Anspruch 11), eine Eingangsdatensteuerungseinrichtung 76,
eine Auswahlsignalerzeugungseinrichtung 80, einen Schieberegisterauswähler 89, eine
Schieberegistereinheit 78 (zweite Speichereinrichtung in
Anspruch 11), einen Schieberegisterauswähler 90, ein Register 79,
Register 791 und 792, eine Bitverbindungseinrichtung 77,
eine obere Adresserzeugungseinrichtung 71, eine untere Adresserzeugungseinrichtung 72,
eine Ausgangstiminganpassungseinrichtung 75, eine Schreibeinrichtung 82,
eine Leseeinrichtung 84, eine Ausgangsdatensteuerungseinrichtung 88 und
eine RAM-Steuerungseinrichtung 81.
-
Der
Single-Port-RAM 83 gibt Daten zu der Leseeinrichtung 84 aus.
Die Eingangsdatensteuerungseinrichtung 76 gibt Eingangsdaten 91 des
Faltungsentschachtelers zu der Bitverbindungseinrichtung 77,
dem Register 791 und dem Schieberegisterauswähler 89 aus.
Die Auswahlsignalerzeugungseinrichtung 80 gibt ein Steuerungssignal
zu der Eingangsdatensteuerungseinrichtung 76, der oberen Adresserzeugungseinrichtung 71,
dem unteren Adressauswähler 74,
den Schieberegisterauswählern 89 und 90 und
der RAM-Steuerungseinrichtung 81 aus. Der Schieberegisterauswähler 89 gibt
Daten zu der Schieberegistereinheit 78 aus. Die Schieberegistereinheit 78 umfasst
Schieberegister 780, 782 ~ 78N, 78N+2 ~ 78C-3, 78C-1 entsprechend
den Kanälen
ch0, ch2 ~ chN, chN+2 ~ chC-3,
chC-1, und gibt Daten von den Schieberegistern in Gruppen, wobei jede
Gruppe zwei Kanälen
entspricht, zu dem Schieberegisterauswähler 90 aus. Der Schieberegisterauswähler 90 gibt
Daten zu dem Register 79 und dem Register 792 aus.
Das Register 79 gibt Daten zu der Bitverbindungseinrichtung 77 aus.
Das Register behält
die Ausgangsdaten von der Eingangsdatensteuerungseinrichtung 76 und
gibt die Daten zu dem Ausgangssignalauswähler 85 aus. Das Register 792 behält die Ausgangsdaten
von dem Schieberegisterauswähler 90 und
gibt die Daten zu dem Ausgangssignalauswähler 865 aus. Die
Bitverbindungseinrichtung 77 gibt Daten zu der Schreibeinrichtung 82 des RAM 83 aus.
Die obere Adresserzeugungseinrichtung 71 gibt eine obere
Adresse des RAM 83 durch die Ausgangstiminganpassungseinrichtung 75 zu
der Schreibeinrichtung 82 aus. Die untere Adresserzeugungseinrichtung 72 gibt
eine untere Adresse des RAM 83 durch die Ausgangstiminganpassungseinrichtung 75 zu
der Schreibeinrichtung 82 aus. Die Ausgangstiminganpassungseinrichtung 75 gibt
eine Adresse und ein Steuerungssignal zu der Schreibeinrichtung 82 aus.
Die Schreibeinrichtung 82 gibt Daten, eine Adresse und
ein Steuerungssignal zu dem RAM 83 aus. Die Leseeinrichtung 84 gibt
eine Adresse und ein Steuerungssignal zu dem RAM 83 aus und
gibt Daten zu dem Ausgangssignalauswähler 85 aus. Der Ausgangssignalauswähler 85 gibt
Daten zu der Bitseparationseinrichtung 86 aus. Die Bitseparationseinrichtung 86 gibt
Daten zu der Ausgangsdatensteuerungseinrichtung 88 und
dem Register 87 aus. Das Register 87 gibt Daten
zu der Ausgangsdatensteuerungseinrichtung 88 aus. Die Ausgangsdatensteuerungseinrichtung 88 gibt
ein Ausgangssignal 92 des Faltungsentschachtelers nach
außen
aus. Die RAM-Steuerungseinrichtung 81 steuert den RAM 83 und
den Ausgangssignalauswähler 85.
-
Die
untere Adresserzeugungseinrichtung 72 umfasst eine Zählereinheit 73 und
einen unteren Adressauswähler 74.
Die Zählereinheit 73 umfasst Zähler 730, 732 ~ 73N ~ 73C-3 entsprechend
den Kanälen
ch0/ch2, chN/chN+2 ~ chN/chN+1 chC-3/chC-2. Die Zählereinheit 73 gibt
untere Adressen in Gruppen, wobei jede Gruppe zwei Kanälen entspricht,
zu dem unteren Adressauswähler 74 aus. Der
untere Adress-auswähler 74 gibt
die untere Adresse zu der Ausgangstiminganpassungseinrichtung 75 aus.
-
Die
Auswahlsignalerzeugungseinrichtung 80 und die Adresserzeugungseinrichtung 70 dienen
als ein Eingangsseitenauswähler
in dem später
beschriebenen Arbeitsprinzip. Weiterhin dienen der Ausgangssignalauswähler 85 und
die Adresserzeugungseinrichtung 70 als ein Ausgangsseitenauswähler in
dem Arbeitsprinzip.
-
Nachfolgend
wird das Arbeitsprinzip des Faltungsentschachtelers gemäß der zweiten
Ausführungsform
anhand von 5 und Zeitdiagramm 6 beschrieben.
-
Der
Faltungsentschachteler dieser zweiten Ausführungsform wird verwirklicht
durch Ersetzen der in 18 gezeigten Speicherbereiche 1112-0,
..., 1112-(C-1) durch
Schieberegister (zweite Verzögerungseinheit
in Anspruch 9) 132-0, ..., 132-(C-1)/2 und Speicherbereiche
(erste Verzögerungseinheit
in Anspruch 9) innerhalb des Single-Port-RAM (Bitbreite 2b) 133-0,
..., 133-N/2 und Verwenden von Auswählern 130 und 131,
welche die Kanäle
ringförmig umschalten.
Diese Auswähler 130 und 131 beginnen bei
ch0 und erhöhen
nach und nach die Kanalnummer und kehren zu ch0 zurück, wenn
sie chC erreichen, um den gleichen Vorgang wie oben zu wiederholen.
-
Zu
Anfang wählen
beide Auswähler 130 und 131 Kanal
ch0 aus. Auf diesem Kanal wird eine Verzögerung wie diejenige auf chC-1
durch das Schieberegister 132-(C-1)/2 (wird später beschrieben)
durch das Schieberegister 132-0 ausgeübt und die Daten von ch0 werden
von einem (nicht dargestellten) Register behalten, bis der nächste Kanal
ch1 ausgewählt
ist. Die Daten von ch0 und die Daten von ch1 werden gleichzeitig
in den RAM 133-0 eingegeben und diese Daten werden um das
C-1-(>N)-fache der Verzögerung auf
chC-1 verzögert,
welche später
beschrieben wird.
-
Daher
wird auf dem Kanal ch0, auf dem das Schieberegister 132-0 vorhanden
ist, ein um das C-fache der Verzögerung
auf chC-1 verzögertes
Signal ausgegeben. Bezogen auf ch1 wird, da kein Schieberegister 132-0 für diesen
Kanal vorhanden ist, ein um das C-1-fache der Verzögerung auf
chC-1 verzögertes
Signal ausgegeben.
-
Dann
wählen
die Auswähler 130 und 131 chN
aus. Auf diesem Kanal wird ein Signal, welches um das C-N-(>1)-fache der Verzögerung auf
ch1 durch das Schieberegister 132-N/2 und den RAM 133-N/2 verzögert ist,
ausgegeben.
-
Weiterhin
werden die auf chN+1 ausgewählten
Daten zusammen mit den auf chN ausgewählten Daten in den RAM 133-N/2 eingegeben.
Da auf chN+1 kein Schieberegister 132-N/2 vorhanden ist, wird
ein um das C-(N+1)-(>1)-fache
der Verzögerung auf
ch1 durch den RAM 133-N/2 verzögertes Signal ausgegeben.
-
Weiterhin
wird auf chC-1 eine Verzögerung nur
durch das Schieberegister 132-(C-1)/2) herbeigeführt und
die Daten von chC~1 werden in dem Register 792 behalten,
um durch die Verzögerung
des Registers 79 kompensiert zu werden.
-
Danach
wählen
die Auswähler 130 und 131 chC
aus. Da kein Verzögerungselement
auf diesem Kanal außer
dem Register 791 vorhanden ist, welches die Verzögerung des
Registers 79 kompensiert, durchläuft das Signal von chC den
Faltungsentschachteler, ohne der ursprünglichen Verzögerung unterworfen
zu sein.
-
Zum
nächsten
Zeitpunkt wählen
die Auswähler 130 und 131 erneut
ch0 aus, um den oben genannten Vorgang zu wiederholen.
-
Insbesondere,
wenn die Auswähler 130 und 131 den
Kanal chN zum Zeitpunkt t auswählen,
werden die Eingangsdaten des Faltungsentschachtelers für diesen Kanal
chN in das Schieberegister 132-N/2 eingegeben, das Schieberegister 132-N/2 führt eine Verschiebung
aus und das Ausgangssignal des Schieberegisters 132-N/2 wird
in dem Register 79 gespeichert. Zum Zeitpunkt t+1 (die
Auswähler 130 und 131 haben
den Kanal chN+1 ausgewählt)
werden die Ausgangsdaten von dem Register 79 und die Eingangsdaten
von dem Faltungsentschachteler gleichzeitig in den Single-Port-RAM 133 geschrieben,
als die unteren b Bit und die oberen b Bit. Zum Zeitpunkt t+(C-(N+1)) × m × (C+1)
werden diese Daten gleichzeitig gelesen und die oberen b Bit werden von
dem Faltungsentschachteler ausgegeben, während die unteren b Bit in
dem Register 87 gespeichert werden. Zum Zeitpunkt t+1 +(C-(n+1)) × m × (C+1) wird
das Ausgangssignal des Registers 87 von dem Faltungsentschachteler
ausgegeben. Durch Wiederholen des oben beschriebenen Vorgangs wird
eine Faltungsentschachtelung verwirklicht.
-
Als
nächstes
wird die Wirkungsweise des Faltungsentschachtelers dieser zweiten
Ausführungsform
anhand von 4 beschrieben.
-
Der
Faltungsentschachteler erfasst zu entschachtelnde Eingangsdaten
von dem Eingangsdatenanschluss 91 durch die Eingangsdatensteuerungseinrichtung 76 und
schreibt diese Daten durch die Schreibeinrichtung 82 in
den RAM 83. Zu diesem Zeitpunkt ist ein Adresszähler je
zwei Kanälen
(ch) mit b-Bit Daten zugewiesen. Dann zählen die Zähler 730 ~ 73N ~ 73C-1 der
unteren Adresserzeugungseinrichtung 72 entsprechend ch0
und ch1 (nachfolgend ch0/ch1) ~ chN-1 und chN (chN-1/chN) ~ chC-3 und
chC-2 (chC-3/chC-2) entsprechend die unteren Adressen des RAM 83.
Der untere Adressauswähler 74 wählt eine
dieser unteren Adressen aus. Die so ausgewählte untere Adresse und die
von den oberen Adresserzeugungseinrichtung 71 ausgegebene
obere Adresse des RAM 83 werden in die Ausgangstiminganpassungseinrichtung 75 eingegeben,
in welcher deren Ausgangstimings angepasst werden, und danach in
die Schreibeinrichtung 82 eingegeben werden, um eine Schreibadresse
für den
RAM 83 anzugeben.
-
Zu
diesem Zeitpunkt werden zuerst die Daten von ch0 eingegeben und
dann werden zum nächsten
Zeitpunkt die Daten von ch1 eingegeben. Bezogen auf die Daten von
ch2~chN~chC werden Speicherbereiche für diese Daten in dem RAM 83 durch
die obere Adresserzeugungseinrichtung 71 und die Zählereinheit
der unteren Adresserzeugungseinrichtung 72 derart eingestellt,
dass die Größen dieser
Speicherbereiche in der Reihenfolge der Kanäle zunehmen, jeder um eine
Verzögerungszeit 2T
(>0) mit zwei Kanälen als
eine Einheit und diese Speicherbereiche werden durch einen (nicht
dargestellten) oberen Adressauswähler
und den unteren Adressauswähler 74 für je zwei
Kanäle
als eine Einheit nacheinander ausgewählt. Bezogen auf die Kanäle, an welche
zwei Kanäle
mit b-Bit Daten sequenziell angelegt werden, wird der folgende Vorgang
in jedem Speicherbereich für
je zwei Kanäle
ausgeführt.
Das heißt,
die Daten werden an eine Adresse in dem Speicherbereich geschrieben
und zum nächsten
Zeitpunkt werden die Daten von der Adresse gelesen und an die nächste Adresse
geschrieben.
-
Weiterhin
wählen
die Schieberegisterauswähler 89 und 90,
bezogen auf die ungeradzahligen Kanäle ch1, ch3 ~ chN+1, chN+3
~ chC nacheinander die Schieberegister der entsprechenden Kanäle für jeweils
zwei Kanäle
aus der Schieberegistereinheit 78 unter der Steuerung der
Auswahlsignalerzeugungseinrichtung 80 aus. Die Kapazitäten dieser Schieberegister
werden vorab derart eingestellt, dass die Kapazitäten den
Erhöhungen
der Verzögerungszeit
T der geradzahligen Kanäle
ch0, ch2 ~ chN-1 ~ chC-1 entsprechen und der Datenausgang des Schieberegisterauswählers 90 mit
den Daten der geradzahligen Kanäle
ch0, ch2 chN-1 ~ chC-1 durch die Bitverbindungseinrichtung 77 durch
das Register 79 verbunden sind, wodurch der allmähliche Anstieg der
Verzögerungszeiten
den Daten von ch0 ~ chN ~ chC gegeben werden kann.
-
Entsprechend
steuert die Auswahlsignalsteuerungseinrichtung 80, bezogen
auf die Daten von ch0, die Eingangsdatensteuerungseinrichtung 76 und
die Schieberegisterauswähler 89 und 90 derart,
dass diese Daten um eine vorbestimmte Verzögerungszeit T (>0) entsprechend der
Kapazität
des durch die Schieberegisterauswähler 89 und 90 ausgewählten Schieberegisters 780 für ch0 verzögert werden,
um in das Register 79 eingegeben zu werden.
-
Das
Register 79 behält
die Daten von ch0, bis die Daten von ch1 durch die Eingangsdatensteuerungseinrichtung 76 eintreffen
und die Bitverbindungseinrichtung 77 verbindet die Daten
von ch0 von dem Register 79 und die Daten von ch1 von der
Eingangsdatensteuerungseinrichtung 76 zum Ausgeben der
verbundenen Daten zu der Schreibeinrichtung 82 des RAM 83.
-
Zu
diesem Zeitpunkt steuert die Auswahlsignalerzeugungseinrichtung 80 die
obere Adresserzeugungseinrichtung 71 derart, dass sie eine
Anfangsadresse des Speicherbereichs des RAM 83 entsprechend
ch0 erzeugt, und steuert den unteren Adressauswähler 74 derart, dass
er den Ausgang des Zählers 730 in
der Zählereinheit 73 der
unteren Adresserzeugungseinrichtung 72 auswählt, um
eine Adresse des Speicherbereichs entsprechend ch1 auszugeben. Die
Ausgangstiminganpassungseinrichtung 75 passt die Timings
an, um diese Adressen der Speicherbereiche entsprechend ch0/ch1
auszugeben und gibt diese Adressen der Speicherbereiche zu der Schreibeinrichtung 82 für den RAM 83 aus.
-
Dadurch
werden die Daten von ch0/ch1 in die Speicherbereiche des RAM 83 entsprechend ch0/ch1
geschrieben.
-
Weiterhin
wählt die
RAM-Steuerungseinrichtung 81 unter der Steuerung der Auswahlsignalerzeugungseinrichtung 80 die
Daten aus, welche um (C-1)T verzögert
und von dem RAM 83 durch die Leseeinrichtung 84 zu
dem Ausgangssignalauswähler 85 übertragen
wurden.
-
Die
von dem Ausgangssignalauswähler 85 gleichzeitig
ausgegebenen Daten von ch0 und die Daten von ch1 werden durch die
Bitseparationseinrichtung 86 separiert. Die Daten von ch0
werden in das Register 87 eingegeben und um eine vorbestimmte
Verzögerungszeit
T (>0) verzögert. Dann werden
die Daten aus dem Register 87 durch die Ausgangsdatensteuerungseinrichtung 88 und
den Ausgangsanschluss nach außen
ausgegeben.
-
Weiterhin
werden die Daten von ch1 durch die Ausgangsdatensteuerungseinrichtung 88 und den
Ausgangsanschluss 92 nach außen ausgegeben, wie sie sind.
-
Dadurch
werden die Daten, welche eine vorbestimmte Verzögerungszeit CT durch das Schieberegister 780 und
den RAM 83 verzögert
wurden, von dem Anschluss 92 ausgegeben.
-
Danach
werden durch den gleichen Vorgang wie oben beschrieben, ungeradzahligen
Vielfachen von T entsprechende Verzögerungszeiten geradzahligen
Kanälen
durch den RAM 83 gegeben, während Verzögerungszeiten entsprechend geradzahligen Vielfachen
von T den ungeradzahligen Kanälen durch
Schieberegister und den RAM 83 gegeben werden.
-
Weiterhin
werden, bezogen auf die Daten auf chC-1, die Daten von der Eingangsdatensteuerungseinrichtung 76 um
eine vorbestimmte Verzögerungszeit
T (>0) entsprechend
der Kapazität
des Schieberegisters 78C-1 für chC-1 verzögert, welches
durch die Schieberegisterauswähler 89 und 90 ausgewählt ist,
um in das Register 792 eingegeben zu werden. Die RAM-Steuerungseinrichtung 81 unter
der Steuerung der Auswahlsignalerzeugungseinrichtung 80 steuert
den Ausgangssignalauswähler 85 derart, dass
er die durch das Schieberegister 78C-1 verzögerten und
von dem Register 792 gelieferten Daten auswählt und
die Daten von dem Ausgangsanschluss nach außen ausgibt.
-
Bezogen
auf die Daten auf chC steuert die Auswahlsignalerzeugungseinrichtung 50 die
Eingangsdatensteuerungseinrichtung 76 derart, dass sie
diese Daten nicht durch den RAM 83, sondern durch das Register 791 direkt
zu dem Ausgangssignalauswähler 85 sendet.
Weiterhin steuert die RAM-Steuerungseinrichtung 81 unter
der Steuerung der Auswahlsignalerzeugungseinrichtung 80 den Ausgangssignalauswähler 85 derart,
dass er die Daten auswählt,
welche nicht der ursprünglichen
Verzögerung
unterworfen und von der Eingangsdatensteuerungseinrichtung 76 direkt
zu dem Ausgangssignalauswähler 85 gesendet
wurden und gibt die Daten von dem Ausgangsanschluss 92 nach
außen
aus.
-
Dadurch
werden den entsprechenden Kanälen
ch0 ~ chN ~ chC durch den in 4 gezeigten Faltungsentschachteler
allmählich
geringer werdende Verzögerungszeiten
gegeben, während
diesen Kanälen
durch den in 1 gezeigten Faltungsverschachteler
allmählich
ansteigende Verzögerungszeiten
gegeben werden. Synthetisch wird allen Kanälen die gleiche Verzögerungszeit
gegeben, wodurch die Datenmatrix, welche durch den in 1 gezeigten
Faltungsverschachteler verschachtelt wurde, durch den in 4 gezeigten
Faltungsentschachteler entschachtelt wird.
-
Während bei
einem bekannten Faltungsverschachteler eine Adresserzeugungsschaltung
für jeden
Kanal benötigt
wird, wird in der Anordnung dieser zweiten Ausführungsform eine Adresserzeugungsschaltung
für zwei
Kanäle
benötigt.
-
Daher
werden die Adresserzeugungsschaltungen auf 1/2 verringert, resultierend
in einer beträchtlichen
Verringerung der Schaltungsgröße. Während weiterhin
im Stand der Technik ein Lese-/Schreib-Vorgang für einen Kanal mit Eingangsdaten
in dem Single-Port-RAM benötigt
wird, wird in dieser zweiten Ausführungsform ein Lese-/Schreib-Vorgang
für zwei
Kanäle
mit Eingangsdaten benötigt,
resultierend in einer Verringerung des Energieverbrauchs. Da weiterhin
die Frequenz verringert wird, mit welcher der RAM angesprochen wird,
kann auch ein RAM verwendet werden, der mit einer relativ niedrigen
Arbeitsfrequenz arbeitet. Da weiterhin die Schieberegister 132 (siehe 5)
in Kombination mit dem Single-Port-RAM
verwendet werden, wird die Adresserzeugungseinheit des RAM vereinfacht,
wodurch die Adresserzeugung des RAM erleichtert wird.
-
Während in
dieser zweiten Ausführungsform zwei
Kanäle
als eine Gruppe vereinigt werden und eine Adresserzeugungsschaltung
einer Gruppe zugewiesen ist, kann eine Adresserzeugungsschaltung drei
oder mehr Kanälen
zugeordnet sein.
-
Allgemein
ist die Breite der Eingangs-/Ausgangsdaten b Bit, die Tiefe (die
Anzahl der Daten in Bitbreiten-Einheiten) ist m, die Anzahl der
Kanäle
ist n und die maximale Kanalanzahl ist C (n ist eine ganze Zahl,
welche die Beziehung 0 ≤ n ≤ C erfüllt und
b, m, C sind natürliche
Zahlen).
-
Insbesondere,
wenn der Faltungsentschachteler dieser Ausführungsform auf eine DVB-Spezifikation
angewendet wird, C = 11, d. h., die Anzahl der Kanäle ist 12 und
die Tiefe ist 17. Weiterhin angewendet auf eine amerikanische
Grundwellenspezifikation, C = 51, d. h., die Anzahl der
Kanäle
ist 52 und die Tiefe ist 4.
-
Während weiterhin
in dieser zweiten Ausführungsform
eine Verzögerung äquivalent
zu einer Differenz in Verzögerungen
zwischen zwei benachbarten Kanälen
durch das Schieberegister gegeben ist, kann eine größere Verzögerung als
diese Differenz durch das Schieberegister gegeben werden.
-
Während in
dieser Ausführungsform
zweiten Ausführungsform
ein Single-Port-RAM
verwendet wird, kann weiterhin ein Multiple-Port-RAM für Hochgeschwindigkeits-E/A
verwendet werden.
-
[Ausführungsform 3]
-
In
einem Faltungsverschachteler gemäß einer
dritten Ausführungsform
der Erfindung werden Adresszähler
für einen
RAM für
je zwei Kanäle
als eine Einheit zusammengefasst und verringern dadurch die Schaltungsgröße der peripheren
Einheit des RAM und ihren Energieverbrauch. Da sämtliche Verzögerungen
durch den RAM alleine verwirklicht werden, kann der Faltungsverschachteler
weiterhin aufgebaut werden, ohne verschiedene Arten von Speichereinheiten
zu mischen.
-
7 ist
ein Blockschaltbild, welches den Aufbau eines Faltungsverschachtelers
gemäß der dritten
Ausführungsform
zeigt.
-
In 7 umfasst
der Faltungsverschachteler einen Single-Port-RAM 213 (Speichereinrichtung
in Anspruch 6), eine Eingangsdatensteuerungseinrichtung 206,
ein Register 208, eine Bitverbindungseinrichtung 207,
eine Auswahlsignalerzeugungseinrichtung 210, ein RAM-Steuerungseinrichtung 211,
eine Adresserzeugungseinrichtung 200, eine Schreibeinrichtung 212,
eine Leseeinrichtung 214, einen Ausgangssignalauswähler 215,
eine Bitseparationseinrichtung 216, ein Register 217 und
eine Ausgangsdatensteuerungseinrichtung 218.
-
Der
Single-Port-RAM 213 gibt Daten zu der Leseeinrichtung 214 aus.
Die Eingangsdatensteuerungseinrichtung 206 gibt Eingangsdaten 221 des Faltungsverschachtelers
zu der Bitverbindungseinrichtung 207 und dem Ausgangssignalauswähler 215 aus.
Das Register 208 gibt Daten zu der Bitverbindungseinrichtung 207 aus.
Die Bitverbindungseinrichtung 207 gibt Daten zu der Schreibeinrichtung 212 aus.
Die Auswahlsignalerzeugungseinrichtung 210 gibt ein Steuerungssignal
zu der Adresserzeugungseinrichtung 200, der Adresserzeugungseinrichtung 223,
der RAM-Steuerungseinrichtung 211 und dem Ausgangssignalauswähler 215 aus.
Die RAM-Steuerungseinrichtung 211 gibt ein Steuerungssignal
zu dem RAM 213 aus. Die Adresserzeugungseinrichtung 200 gibt
eine RAM-Adresse
zu der Schreibeinrichtung 212 und der Leseeinrichtung 214 aus.
Die Schreibeinrichtung 212 gibt eine RAM-Adresse und Daten
zu dem RAM 213 aus. Die Leseeinrichtung 214 gibt
eine RAM-Adresse zu dem RAM 213 aus und gibt Daten zu dem
Ausgangssignalauswähler 215 aus.
Der Ausgangssignalauswähler 215 gibt
Daten zu dem Register 208 und der Bitseparationseinrichtung 216 aus.
Die Bitseparationseinrichtung 216 gibt Daten zu der Ausgangsdatensteuerungseinrichtung 218 und
dem Register 217 aus. Das Register 217 gibt Daten
zu der Ausgangsdatensteuerungseinrichtung 218 aus. Die
Ausgangsdatensteuerungseinrichtung 218 gibt Daten 222 als
das Ausgangssignal des Verschachtelers aus.
-
Die
Adresserzeugungseinrichtung 200 umfasst eine obere Adresserzeugungseinrichtung 201, eine
untere Adresserzeugungseinrichtung 202 und eine Ausgangstiminganpassungseinrichtung 205. Die
obere Adresserzeugungseinrichtung 201 erzeugt eine obere
Adresse des RAM 213 entsprechend einem durch die Auswahlsignalerzeugungseinrichtung 210 erzeugten
Auswahlsignal und gibt die obere Adresse zu der Ausgangstiminganpassungseinrichtung 205 aus.
Die untere Adresserzeugungseinrichtung 202 erzeugt eine
untere Adresse des RAM 213 entsprechend einem durch die
Auswahlsignalerzeugungseinrichtung 210 erzeugten Auswahlsignal
und gibt die untere Adresse zu der Ausgangstiminganpassungseinrichtung 205 aus.
Die Ausgangstiminganpassungseinrichtung 205 gibt eine RAM-Adresse zu
der Schreibeinrichtung 212 und der Leseeinrichtung 214 aus.
-
Die
untere Adresserzeugungseinrichtung 202 umfasst eine Zählereinheit 203 und
einen unteren Adressauswähler 204.
Die Zählereinheit 203 umfasst
Zähler 2032, 2034 ~ 203N ~ 203C-1 entsprechend
den Kanälen
ch2/ch3, ch4/ch5 ~ chN/chN+1 ~ chC-1/chC. Die Zählereinheit 203 gibt
untere Adressen für
je zwei Kanäle
aus zu dem unteren Adressauswähler 204 aus.
Der untere Adressauswähler 204 gibt
die unteren Adressen zu der Ausgangstiminganpassungseinrichtung 205 aus.
-
Weiterhin
umfasst die Adresserzeugungseinrichtung 223 eine obere
Adresserzeugungseinrichtung 224, eine untere Adresserzeugungseinrichtung 225 und
eine Ausgangstiminganpassungseinrichtung 221. Die obere
Adresserzeugungseinrichtung 224 gibt eine obere RAM-Adresse
zu der Ausgangstiminganpassungseinrichtung 221 aus und die
untere Adresserzeugungseinrichtung 225 gibt eine untere
RAM-Adresse zu der Ausgangstiminganpassungseinrichtung 221 aus.
Die Ausgangstiminganpassungseinrichtung 221 gibt eine RAM-Adresse zu
der Schreibeinrichtung 212 und der Leseeinrichtung 214 aus.
-
Die
Auswahlsignalerzeugungseinrichtung 210, die Adresserzeugungseinrichtung 200 und
die Adresserzeugungseinrichtung 223 dienen als ein Eingangsseitenauswähler in
dem später
beschriebenen Arbeitsprinzip. Weiterhin dienen der Ausgangssignalauswähler 215,
die Adresserzeugungseinrichtung 200 und die Adresserzeugungseinrichtung 223 in
dem Arbeitsprinzip als ein Ausgangsseitenauswähler.
-
Nachfolgend
wird das Arbeitsprinzip des Faltungsverschachtelers gemäß dieser
dritten Ausführungsform
anhand von 8 und Zeitdiagramm 9 beschrieben.
-
Der
Faltungsverschachteler dieser dritten Ausführungsform wird verwirklicht
durch Ersetzen der in 16 gezeigten Speicherbereiche 102-0,
..., 102-(C-1) durch Speicherbereiche innerhalb des Single-Port-RAM
(Bitbreite B) 142-0, ..., 142-C/2 und Speicherbereiche
innerhalb des Single-Port-RAM (Bitbreite 2b) ..., 143-(N/2-1),
..., 143-((C-1)/2-1), gezeigt in 8, und Verwenden
von Auswählern 140 und 141,
welche die Kanäle
ringförmig
umschalten. Diese Auswähler 140 und 141 beginnen
bei ch0, erhöhen
aufeinanderfolgend die Kanalnummer und kehren zu ch0 zurück, wenn
sie chC erreichen, um den gleichen Vorgang wie oben zu wiederholen.
-
In
dieser dritten Ausführungsform
können
die Speicherbereiche 142-0, ..., 142-C/2 in einem
weiteren RAM enthalten sein, getrennt von den Speicherbereichen 143-(N/2-1),
..., 143-((C-1)/201). Wenn diese Speicherbereiche 142-0,
..., 142-C/2 und 143-(N/2-1),
..., 143-((C-1)/2-1) in dem selben RAM enthalten sind,
können
die Speicherbereiche 142-0, ..., 142-C/2 zu zweit
zusammengefasst werden, um die Bitbreite gleich derjenigen der Speicherbereiche 143-(N/2-1),
..., 143-((C-1)2-1) zu
machen.
-
Zu
Anfang wählen
beide Auswähler 140 und 141 ch0
aus. Da in diesem Kanal kein ursprüngliches Verzögerungselement
vorhanden ist, durchläuft
das Signal auf ch0 den Faltungsverschachteler, ohne der ursprünglichen
Verzögerung
unterworfen zu werden.
-
Als
nächstes
wählen
die Auswähler 140 und 141 ch1
aus. Auf diesem Kanal ist ein FIFO durch den Speicherbereich 142-0 innerhalb
des RAM 213 implementiert und ein durch diesen Speicherbereich 142-0 verzögertes Signal
wird ausgegeben.
-
Dann
wählen
die Auswähler 140 und 141 chN
aus. Die Daten von chN werden von einem (nicht dargestellten) Register
behalten, bis der nächste
Kanal chN+1 ausgewählt
ist und die Daten auf chN+1 werden um das N-(>1)-fache der Verzögerung auf ch1 durch den Speicherbereich 143-(N/2-1) in
dem RAM 213 verzögert.
-
Auf
chN+1 wird die gleiche Verzögerung
wie diejenige auf ch1 durch den Speicherbereich 142-0 des
RAM 213 durch den Speicherbereich 142-N/2 des
RAM 213 bewirkt und zusätzlich
wird eine Verzögerung
um das N-(>1)-fache
derjenigen auf ch1 durch den Speicherbereich 143-(N/2-1)
des RAM 213 bewirkt. Danach wird ein um das (N+1)-fache
der Verzögerung
auf ch1 verzögertes
Signal ausgegeben.
-
Danach
wählen
die Auswähler 140 und 141 chC
aus. Auf diesem Kanal wird durch den Speicherbereich 142-(C-1)/2 des
RAM 213 die gleiche Verzögerung wie diejenige auf ch1
durch den Speicherbereich 142-0 des RAM 213 bewirkt
und eine Verzögerung
um das C-1-(>N)-fache
derjenigen auf ch1 wird durch den Speicherbereich 143-((C-1)/2-1) des
RAM 213 bewirkt. Danach wird ein um das C-fache der Verzögerung auf
ch1 verzögertes
Signal ausgegeben.
-
Zum
nächsten
Zeitpunkt wählen
die Auswähler 140 und 141 erneut
ch0 aus, um den oben erwähnten
Vorgang zu wiederholen.
-
Insbesondere,
wenn die Auswähler 140 und 141 den
Kanal chN zum Zeitpunkt t auswählen,
speichert die Eingangsdatensteuerungseinrichtung 206 die
Eingangsdaten 221 des in 7 gezeigten
Faltungsverschachtelers in dem Register 208 durch den Ausgangssignalauswähler 215.
Zum Zeitpunkt t+1 (die Auswähler
wählen
dann den Kanal chN+1 aus) werden die ältesten Daten aus dem Speicherbereich 142-N/2 des
RAM 213 ausgelesen und die Eingangsdaten des Faltungsverschachtelers
werden an die Adresse geschrieben, von welcher die Daten gelesen wurden.
Weiterhin werden die gelesenen Daten des Ausgangs des Registers 208 gleichzeitig
in den Speicherbereich 143-(N/2-1) des RAM 213 als
die unteren b Bit und die oberen b Bit geschrieben. Zum Zeitpunkt
t+Nxmx(C+1) werden diese Daten gleichzeitig ausgelesen und die oberen
b Bit werden von dem Faltungsverschachteler ausgegeben, während die
unteren b Bit in dem Register 217 gespeichert werden. Zum
Zeitpunkt t+1+Nxmx(C+1) wird das Ausgangssignal des Registers 217 von
dem Faltungsverschachteler ausgegeben. Durch Wiederholen der oben
beschriebenen Verarbeitung wird eine Faltungsverschachtelung verwirklicht.
-
Als
nächstes
wird die Wirkungsweise des Faltungsverschachtelers dieser dritten
Ausführungsform
beschrieben.
-
Der
Faltungsverschachteler erfasst die zu verschachtelnden Eingangsdaten
von dem Eingangsdatenanschluss 221 durch die Eingangsdatensteuerungseinrichtung 206 und
schreibt die Daten durch die Schreibeinrichtung 212 in
den RAM 213. Zu diesem Zeitpunkt ist ein Adresszähler zwei
Kanälen (ch)
mit b Bit Daten zugeordnet. Dann zählen die Zähler 2032 ~ 203N ~ 203C-1 der
unteren Adresserzeugungseinrichtung 202 entsprechend ch2
und ch3 (nachfolgend ch2/ch3) chN-1 und chN (chN-1/chN) ~ chC-1
und chC (chC-1/chC) die unteren Adressen des RAM 213. Der
untere Adressauswähler 202 wählt einen
dieser Zähler
aus. Die derart ausgewählte
untere Adresse und die von der oberen Adresserzeugungseinrichtung 201 ausgegebene
obere Adresse des RAM 213 werden in die Ausgangstiminganpassungseinrichtung 205 eingegeben,
in welcher deren Ausgangstimings angepasst werden und danach werden
diese Adressen in die Schreibeinrichtung 212 eingegeben,
um eine Schreibadresse für den
RAM 213 anzugeben.
-
Zu
diesem Zeitpunkt werden zu Anfang Daten von ch0 eingegeben und zum
nächsten
Zeitpunkt werden Daten von ch1 eingegeben. Die Auswahlsignalerzeugungseinrichtung 210 steuert
die Eingangsdatensteuerungseinrichtung 206 derart, dass
die Daten von ch0 nicht durch den RAM 213 sondern direkt zu
dem Ausgangssignalauswähler 215 übertragen werden.
Weiterhin steuert die RAM-Steuerungseinrichtung 211 unter
der Steuerung der Auswahlsignalerzeugungseinrichtung 210 den
Ausgangssignalauswähler 215 derart,
dass der Auswähler 215 die nicht
verzögerten
Daten auswählt,
welche von der Eingangsdatensteue rungseinrichtung 206 direkt
zu dem Ausgangssignalauswähler 215 gesendet
wurden.
-
Weiterhin
werden, bezogen auf die Daten auf ch1, die von dem Ausgangssignalauswähler 215 zu dem
Register 208 übertragenen
Daten auf ch0 mit den von der Eingangsdatensteuerungseinrichtung 206 ausgegebenen
Daten von ch1 durch die Bitverbindungseinrichtung 207 kombiniert.
Die RAM-Steuerungseinrichtung 211 unter der Steuerung der
Auswahlsignalerzeugungseinrichtung 210 steuert den RAM 213 durch
die Schreibeinrichtung 212. Zu diesem Zeitpunkt führen die
Auswahlsignalerzeugungseinrichtung 210 und die RAM-Steuerungseinrichtung 211 den
folgenden Vorgang in jedem Speicherbereich für je zwei Kanäle aus.
Das heißt,
die von der Adresserzeugungseinrichtung 223 erzeugte obere Adresse
und untere Adresse werden als Adressen des RAM 213 verwendet
und, bezogen auf die von der Adresserzeugungseinrichtung 223 erzeugten Adressen
werden Daten an eine Adresse in jedem Speicherbereich geschrieben
und zum nächsten Zeitpunkt
werden die Daten von der Adresse gelesen, um an eine andere Adresse
geschrieben zu werden. Dadurch werden die Daten von ch0 und ch1
um eine vorbestimmte Zeit durch den als ein FIFO arbeitenden RAM 213 verzögert.
-
Die
gleichzeitig aus dem RAM 213 gelesenen Daten von ch0 und
ch1 werden in die Bitseparationseinrichtung 216 durch den
Ausgangssignalauswähler 215 unter
der Steuerung der Auswahlsignalerzeugungseinrichtung 210 eingegeben
und die Daten von ch0 werden zu der Ausgangsdatensteuerungseinrichtung 218 ausgegeben,
wie sie sind, während
die Daten von ch1 durch das Register 217 und den Ausgangsanschluss 222 nach
außen
ausgegeben werden. Dadurch werden Verzögerungen äquivalent zu den durch die
in 1 gezeigte Schieberegistereinheit bewirkten Verzögerungen
verwirklicht.
-
Weiterhin
werden, bezogen auf die Daten von ch2 ~ chN ~ chC unter der Steuerung
der Auswahlsignalerzeugungseinrichtung 210 Speicherbereiche
für diese
Daten in dem RAM 213 durch die obere Adresserzeugungseinrichtung 201 und
die Zählereinheit
der unteren Adresserzeugungseinrichtung 202 derart eingestellt,
dass die Größen dieser Speicherbereiche
in der Reihenfolge der Kanäle
zunehmen, mit zwei Kanälen
als eine Einheit, und diese Speicherbereiche wer den durch einen
(nicht dargestellten) oberen Adressauswähler und den unteren Adressauswähler 204 für jeweils
zwei Kanäle
als eine Einheit nacheinander ausgewählt. Bezogen auf die Kanäle, an welche
zwei Kanäle
mit b Bit Daten sequenziell angelegt werden, wird der folgende Vorgang
in jedem Speicherbereich für
jeweils zwei Kanäle
ausgeführt.
Das heißt,
die Daten werden an eine Adresse in dem Speicherbereich geschrieben
und zum nächsten
Zeitpunkt werden die Daten von der Adresse gelesen, um an die nächste Adresse
geschrieben zu werden.
-
Weiterhin
führt die
Adresserzeugungseinrichtung 223, bezogen auf die ungeradzahligen
Kanäle
ch1, ch3 ~ chN+1, chN+3 ~ chC, unter der Steuerung der Auswahlsignalerzeugungseinrichtung 210 eine
Adresserzeugung unter Verwendung der Speicherbereiche des RAM 213 derart
aus, dass eine Verzögerungszeit,
welche äquivalent
zu einer Differenz zwischen Verzögerungszeiten
ist, die ein ungeradzahliger Kanal und ein dem ungeradzahligen Kanal
benachbarter geradzahliger Kanal besitzen, erzeugt wird.
-
Dadurch
wird eine Verzögerungszeit
2T/3T ch2/ch3 gegeben, ..., und eine Verzögerungszeit (C-3)T/(C-2)T wird
chC-3/chC-2 gegeben.
-
Dieser
Vorgang ist vorgesehen, um die gleichen Verzögerungszeiten unter Verwendung
des RAM 213 herzustellen, wie die durch die in 1 gezeigte
Schieberegistereinheit gegebenen.
-
Dadurch
ist eine Verzögerungszeit
entsprechend ch1, ch3, ..., chC-2, chC gegeben.
-
Daher
erzeugt die Adresserzeugungseinrichtung 223 Verzögerungszeiten äquivalent
zu den durch die in 1 gezeigte Schieberegistereinheit 48 gegebenen,
in welcher die Schieberegister entsprechend den jeweiligen Kanälen aufeinanderfolgend
für jeweils
zwei Kanäle
ausgewählt
werden und diese Schieberegister haben die Kapazitäten äquivalent
zu den Erhöhungen
in der Verzögerungszeit
von den geradzahligen Kanälen
ch0, ch2 ~ chN-1 ~ chC-1, wodurch den Daten der Kanäle ch0 ~
chN ~ chC allmählich
ansteigende Verzögerungszeiten
gegeben werden.
-
Das
heißt,
die Daten von chN werden, wie die Daten von ch0 durch den Ausgangssignalauswähler 215 in
das Register 208 eingegeben und mit den Daten von chN+1
durch die Bitverbindungseinrichtung 207 verbunden, um in
den RAM 213 eingegeben zu werden.
-
In
dem RAM 213 werden Speicherbereiche entsprechend chN und
chN+1 durch die Adresserzeugungseinrichtungen 223 und 200 eingestellt
und die Daten von chN und chN+1 werden um eine Verzögerungszeit
(N+1)T in diesen Bereichen entsprechend verzögert.
-
Dann
werden die Daten von chN und chN+1 gleichzeitig aus dem RAM 213 gelesen,
um in die Bitseparationseinrichtung 216 unter der Steuerung des
Ausgangssignalauswählers 215 eingegeben
zu werden.
-
Die
Bitseparationseinrichtung 216 gibt sofort die Daten von
chN durch die Ausgangsdatensteuerungseinrichtung 218 zu
dem Ausgangsanschluss 222 aus. Andererseits werden die
Daten von chN+1 vorübergehend
in dem Register 217 gespeichert und dann werden sie durch
die Ausgangsdatensteuerungseinrichtung 218 zu dem Ausgangsanschluss 222 ausgegeben.
-
Entsprechend
können
durch aufeinanderfolgendes Auswählen
der Kanäle
von ch0 bis chC unter der Steuerung der Auswahlsignalerzeugungseinrichtung 210 Verzögerungszeiten,
welche T um T mit den Erhöhungen
der Kanalnummer ansteigen, den entsprechenden Kanälen gegeben
werden.
-
Während bei
dem bekannten Faltungsverschachteler eine Adresserzeugungsschaltung
für jeden
Kanal benötigt
wird, wird in dem Aufbau dieser Ausführungsform eine Adresserzeugungsschaltung für zwei Kanäle benötigt. Daher
sind die Adresserzeugungsschaltung auf 1/2 verringert, resultierend
in einer beträchtlichen
Verringerung der Schaltungsgröße. Da die
Adresserzeugungsschaltungen unter Verwendung nur eines RAM ohne
Verwendung von Schieberegistern implementiert werden können, wird weiterhin
die Integration höherer
Dichte, verglichen mit der ersten Ausführungsform der Erfindung, verwirklicht.
-
Während weiterhin
im Stand der Technik ein Lese-/Schreib-Vorgang für einen Kanal für Eingangsdaten
in dem Single-Port-RAM benötigt
wird, wird in dieser dritten Ausführungsform ein Lese-/Schreib-Vorgang
für zwei
Kanäle
für Eingangsdaten
benötigt,
resultierend in einer Verringerung des Energieverbrauchs. Da die
Häufigkeit,
mit welcher der RAM angesprochen wird, verringert ist, kann weiterhin
auch ein RAM verwendet werden, der mit einer relativ niedrigen Arbeitsfrequenz
arbeitet.
-
Während in
dieser dritten Ausführungsform zwei
Kanäle
als eine Gruppe vereinigt sind und eine Adresserzeugungsschaltung
einer Gruppe zugewiesen ist, kann eine Adresserzeugungsschaltung
drei oder mehr Kanälen
zugewiesen sein.
-
Allgemein
beträgt
die Eingangs-/Ausgangs-Datenbreite b Bit, die Tiefe (die Anzahl
von Daten in Bitbreiteneinheiten) ist m, die Anzahl von Kanälen ist
n und die maxmale Kanalnummer ist C (n ist eine ganze Zahl, welche
die Beziehung 0 ≤ n ≤ C erfüllt, und
b, m, C sind natürliche
Zahlen).
-
Insbesondere,
wenn der Faltungsverschachteler dieser Ausführungsform auf die DVB-Spezifikation
angewendet wird, C = 11, d. h., die Anzahl von Kanälen ist 12 und
die Tiefe ist 17. Weiterhin angewendet auf die amerikanische
Grundwellenspezifikation, C = 51, d. h., die Anzahl der
Kanäle
ist 52 und die Tiefe ist 4.
-
Während in
dieser dritten Ausführungsform weiterhin
eine Verzögerung äquivalent
zu einer Differenz in den Verzögerungen
zwischen zwei benachbarten Kanälen
nicht durch Schieberegister sondern durch einen Speicherbereich
des RAM gegeben ist, kann eine größere Verzögerung als die Differenz zwischen
Kanälen
durch diesen Speicherbereich des RAM gegeben sein.
-
Während in
dieser dritten Ausführungsform ein
Single-Port-RAM verwendet wird, kann weiterhin ein Multiple-Port-RAM
für Hochgeschwindigkeits-E/A verwendet
werden.
-
[Ausführungsform 4]
-
In
einem Faltungsentschachteler gemäß einer
vierten Ausführungsform
der Erfindung werden Adresszähler
für ein
RAM für
jeweils zwei Kanäle
als eine Einheit zusammengefasst, um dadurch die Schaltungsgröße der peripheren
Einheit des RAM und ihren Energieverbrauch zu verringern. Weiterhin kann,
da sämtliche
Verzögerungen
allein durch den RAM verwirklicht werden, der Faltungsentschachteler
aufgebaut werden, ohne verschiedene Arten von Speichereinheiten
zu mischen.
-
10 ist
ein Blockschaltbild, welches den Aufbau eines Faltungsverschachtelers
gemäß der vierten
Ausführungsform
zeigt.
-
In 10 umfasst
der Faltungsentschachteler einen Single-Port-RAM 243 (Speichereinrichtung in
Anspruch 14), eine Eingangsdatensteuerungseinrichtung 236,
ein Register 238, eine Bitverbindungseinrichtung 237,
eine Auswahlsignalerzeugungseinrichtung 240, eine RAM-Steuerungseinrichtung 241, eine
Adresserzeugungseinrichtung 253, eine Schreibeinrichtung 242,
eine Leseeinrichtung 244, einen Ausgangssignalauswähler 245,
eine Bitseparationseinrichtung 246, ein Register 247 und
eine Ausgangsdatensteuerungseinrichtung 248.
-
Der
Single-Port-RAM 243 gibt Daten zu der Leseeinrichtung 244 aus.
Die Eingangsdatensteuerungseinrichtung 236 gibt Eingangsdaten 251 des Faltungsentschachtelers
zu der Bitverbindungseinrichtung 237 und dem Ausgangssignalauswähler 245 aus.
Das Register 238 gibt Daten zu der Bitverbindungseinrichtung 237 aus.
Die Bitverbindungseinrichtung 237 gibt Daten zu der Schreibeinrichtung 242 aus.
Die Auswahlsignalerzeugungseinrichtung 240 gibt ein Steuerungssignal
zu der Adresserzeugungseinrichtung 230, der Adresserzeugungseinrichtung 253,
der RAM-Steuerungseinrichtung 241 und dem Ausgangssignalauswähler 245 aus.
Die RAM-Steuerungseinrichtung 241 gibt ein Steuerungssignal
zu dem RAM 243 aus. Die Adresserzeugungseinrichtung 253 gibt
eine RAM-Adresse
zu der Schreibeinrichtung 242 und der Leseeinrichtung 244 aus.
Die Schreibeinrichtung 242 gibt eine RAM-Adresse und Daten
zu dem RAM 243 aus. Die Leseeinrichtung 244 gibt
eine RAM-Adresse zu dem RAM 243 aus und gibt Daten zu dem
Ausgangssignalauswähler 245 aus.
Der Ausgangssignalauswähler 245 gibt
Daten zu dem Register 238 und der Bitseparationseinrichtung 246 aus.
Die Bitseparationseinrichtung 246 gibt Daten zu der Ausgangsdatensteuerungseinrichtung 248 und
dem Register 247 aus. Das Register 247 gibt Daten
zu der Ausgangsdatensteuerungseinrichtung 248 aus. Die
Ausgangsdatensteuerungseinrichtung 248 gibt Ausgangsdaten 252 zu diesem
Entschachteler aus.
-
Die
Adresserzeugungseinrichtung 230 umfasst eine obere Adresserzeugungseinrichtung 231, eine
untere Adresserzeugungseinrichtung 232 und eine Ausgangstiminganpassungseinrichtung 235. Die
obere Adresserzeugungseinrichtung 231 erzeugt eine obere
Adresse des RAM 243 gemäß einem durch
die Auswahlsignalerzeugungseinrichtung 240 erzeugten Auswahlsignal
und gibt die obere Adresse zu der Ausgangstiminganpassungseinrichtung 235 aus.
Die untere Adresserzeugungseinrichtung 232 erzeugt eine
untere Adresse des RAM 243 und gibt die untere Adresse
zu der Ausgangstiminganpassungseinrichtung 235 aus. Die
Ausgangstiminganpassungseinrichtung 235 gibt eine RAM-Adresse
zu der Schreibeinrichtung 242 und der Leseeinrichtung 244 aus.
-
Die
untere Adresserzeugungseinrichtung 232 umfasst eine Zählereinheit 233 und
einen unteren Adressauswähler 234.
Die Zählereinheit 233 umfasst
Zähler 2330, 2332 ~ 233N ~ 233C-3 entsprechend
den Kanälen
ch0/ch1, ch2/ch3 chN/chN+1 ~ chC-3/chC-2. Die Zählereinheit 233 gibt
untere Adressen für
jeweils zwei Kanäle
zu dem unteren Adressauswähler 234 aus.
Der untere Adressauswähler 234 gibt
die unteren Adressen zu der Ausgangstiminganpassungseinrichtung 235 aus.
-
Weiterhin
umfasst die Adresserzeugungseinrichtung 253 eine obere
Adresserzeugungseinrichtung 254, eine untere Adresserzeugungseinrichtung 255 und
eine Ausgangstiminganpassungseinrichtung 251. Die obere
Adresserzeugungseinrichtung 254 gibt eine obere Adresse
des RAM 243 zu der Ausgangstiminganpassungseinrichtung 251 aus und
die untere Adresserzeugungseinrichtung 255 gibt eine untere
Adresse des RAM 243 zu der Ausgangstiminganpassungseinrichtung 251 aus.
Die Ausgangstiminganpassungseinrichtung 251 gibt eine Adresse
des RAM 243 zu der Schreibeinrichtung 242 und
der Leseeinrichtung 244 aus.
-
Die
Auswahlsignalerzeugungseinrichtung 240, die Adresserzeugungseinrichtung 230 und
die Adresserzeugungseinrichtung 253 dienen als ein Eingangsseitenauswähler in
dem später
beschriebenen Arbeitsprinzip. Weiterhin dienen der Ausgangssignalauswähler 245,
die Adresserzeugungseinrichtung 230 und die Adresserzeugungseinrichtung 253 in
dem Arbeitsprinzip als Ausgangsseitenauswähler.
-
Nachfolgend
wird das Arbeitsprinzip des Faltungsentschachtelers gemäß dieser
vierten Ausführungsform
anhand von 11 und Zeitdiagramm 12 beschrieben.
-
Der
Faltungsentschachteler dieser vierten Ausführungsform wird verwirklicht
durch Ersetzen der in 18 gezeigten Speicherbereiche 112-0,
..., 112-(C-1) durch Speicherbereiche innerhalb des Single-Port-RAM
(Bitbreite b) 152-0, ..., 152-((C-1)/2) und in 11 gezeigte
Speicherbereiche innerhalb des Single-Port-RAM (Bitbreite 2b) 153-0, 153-(N/2), ...
und Verwenden von Auswählern 150 und 151,
welche die Kanäle
ringförmig
umschalten. Diese Auswähler 150 und 151 beginnen
bei ch0, erhöhen
aufeinanderfolgend die Kanalnummer und kehren zu ch0 zurück, wenn
chC erreicht ist, um den gleichen Vorgang wie oben zu wiederholen.
-
In
dieser vierten Ausführungsform
können die
Speicherbereiche 152-0, ..., 152-((C-1)/2) in einem anderen RAM
getrennt von den Speicherbereichen 153-0, ..., 153-(N/2),
... enthalten sein. Wenn diese Speicherbereiche 152-0,
..., 152-((C-1)/2) und 153-0,
..., 153-(N/2) in dem selben RAM enthalten sind, können die
Speicherbereiche 152-0, ..., 152-((C-1)/2) zu
zweit zusammengefasst sein, um die Bitbreite gleich derjenigen der
Speicherbereiche 153-0, ..., 153-(N/2) zu machen.
-
Zu
Anfang wählen
beide Auswähler 150 und 151 ch0
aus. Auf diesem Kanal wird eine Verzögerung wie diejenige auf chC-1
durch den Speicherbereich 152-((C-1)/2) des RAM 243 (wird
später
beschrieben) durch den Speicherbereich 152-0 des RAM 243 herbeigeführt und
weiterhin wird eine C-1-(>N)-fache
Verzögerung
derjenigen auf chC-2 (wird später
beschrieben) durch den Speicherbereich 153-0 des RAM 243 herbeigeführt. Danach
wird ein um das C-fache der Verzögerung
auf chC-1 verzögertes
Signal ausgegeben.
-
Als
nächstes
wählen
die Auswähler 150 und 151 ch1
aus. Auf diesem Kanal wird, da kein Speicherbereich 152-0 des
RAM 243 vorhanden ist, ein um das C-1-fache der Verzögerung auf chC-1 verzögertes Signal
ausgegeben.
-
Dann
wählen
die Auswähler 150 und 151 chN
aus. Die Daten von chN werden in einem (nicht dargestellten) Register
behalten, bis der nächste
Kanal chN+1 ausgewählt
wird. Die Daten auf chN werden um das C-N-(>1)-fache der Verzögerung auf chC-1 durch die
Speicherbereiche 152-N/2 und 153-N/2 in dem RAM 243 verzögert, um
ausgegeben zu werden.
-
Auf
chN+1 wird, da kein Speicherbereich 152-N/2 des RAM 243 vorhanden
ist, ein durch den Speicherbereich 153-N/2 des RAM 243 um
das C-(N+1)-(>1)-fache der Verzögerung auf
chC-1 verzögertes
Signal ausgegeben.
-
Weiterhin
wird auf chC-1 eine Verzögerung nur
durch den Speicherbereich 152-((C-1)/2) des RAM 243 hervorgerufen.
-
Danach
wählen
die Auswähler 150 und 151 chC
aus. Da kein ursprüngliches
Verzögerungselement
auf diesem Kanal vorhanden ist, durchläuft das Signal von chC den
Faltungsentschachteler, ohne der ursprünglichen Verzögerung unterworfen
zu werden.
-
Zu
dem nächsten
Zeitpunkt wählen
die Auswähler 150 und 151 erneut
ch0 aus, um den oben erwähnten
Vorgang zu wiederholen.
-
Dadurch
werden den entsprechenden Kanälen
ch0 ~ chN ~ chC durch den in 10 gezeigten Faltungsentschachteler
allmählich
abnehmende Verzögerungszeiten
gegeben, während
diesen Kanälen durch
den in 7 gezeigten Faltungsverschachteler allmählich ansteigende
Verzögerungszeiten
gegeben werden. Synthetisch wird allen Kanälen die gleiche Verzögerung gegeben,
wodurch die Datenmatrix, welche durch den in 7 gezeigten
Faltungsver schachteler verschachtelt wurde, durch den in 10 gezeigten
Faltungsentschachteler entschachtelt (wiederhergestellt) wird.
-
Insbesondere
wenn die Auswähler 150 und 151 den
Kanal chN zum Zeitpunkt t auswählen,
werden die ältesten
Daten aus dem Speicherbereich 152-N/2 des RAM 243 gelesen
und die Eingangsdaten des Faltungsentschachtelers werden an die Adresse
geschrieben, von welcher die Daten gelesen wurden. Weiterhin werden
die gelesenen Daten in dem Register 238 in 10 gespeichert.
Zum Zeitpunkt t+1 (die Auswähler
wählen
den Kanal chN+1 aus) werden die Eingangsdaten des Faltungsentschachtelers
und der Ausgang des Registers 238 gleichzeitig in den Speicherbereich 153-N/2 des RAM 243 als
die unteren b Bit und die oberen b Bit geschrieben. Zum Zeitpunkt
t+Nxmx(C+1) werden diese Daten gleichzeitig gelesen und die oberen
b Bit werden von dem Faltungsentschachteler ausgegeben, während die
unteren b Bit in dem Register 247 gespeichert werden. Zum
Zeitpunkt t+1+Nxmx(C+1) wird das Ausgangssignal des Registers 247 von
dem Faltungsentschachteler ausgegeben. Durch Wiederholen dieser
oben beschriebenen Verarbeitung wird ein Faltungsentschachteln verwirklicht.
-
Als
nächstes
wird die Wirkungsweise des Faltungsentschachtelers dieser vierten
Ausführungsform
beschrieben.
-
Der
Faltungsverschachteler erfasst zu entschachtelnde Eingangsdaten
von dem Eingangsdatenanschluss 251 durch die Eingangsdatensteuerungseinrichtung 236 und
schreibt die Daten durch die Schreibeinrichtung 242 in
den RAM 243. Zu diesem Zeitpunkt ist ein Adresszähler zwei
Kanälen
mit b Bit Daten zugewiesen. Dann zählen die Zähler 2330 ~ 233C-3 der
unteren Adresserzeugungseinrichtung 232 entsprechend den
Kanälen
ch0 und ch1 (nachfolgend ch0/ch1) ~ chN-1 und chN (chN-1/chN) ~
chC-3 und chC-2 (chC-3/chC-2) die unteren Adressen des RAM 243.
Der untere Adressauswähler 232 wählt einen
dieser Zähler
aus. Die derart ausgewählte
untere Adresse und die von der oberen Adresserzeugungseinrichtung 231 ausgegebene
obere Adresse des RAM 243 werden in die Ausgangstiminganpassungseinrichtung 235 eingegeben,
in welcher deren Ausgangstimings angepasst werden. Danach werden
diese Adressen in die Schreibeinrichtung 242 eingegeben,
um eine Schreibadresse 213 zu dem RAM 243 zu geben.
-
Zu
diesem Zeitpunkt werden die Daten von ch0 durch den Ausgangssignalauswähler 245 in
das Register 238 eingegeben und durch die Bitverbindungseinrichtung 237 mit
den Daten von ch1 verbunden, um in den RAM 243 eingegeben
zu werden.
-
In
dem RAM 243 werden die ch0 und ch1 entsprechenden Speicherbereiche
durch die Adresserzeugungseinrichtungen 253 und 230 eingestellt
und die Daten von ch0 und ch1 werden entsprechend um eine Verzögerungszeit
CT in diesen Bereichen verzögert.
-
Dann
werden die Daten von ch0 und ch1 gleichzeitig aus dem RAM 243 gelesen,
um unter der Steuerung des Ausgangssignalauswählers 245 in die Bitseparationseinrichtung 246 eingegeben
zu werden.
-
Die
Bitseparationseinrichtung 246 gibt sofort die Daten von
ch0 durch die Ausgangsdatensteuerungseinrichtung 248 zu
dem Ausgangsanschluss 252 aus. Andererseits werden die
Daten von ch1 vorübergehend
in dem Register 247 gespeichert und dann durch die Ausgangsdatensteuerungseinrichtung 248 zu
dem Ausgangsanschluss 252 ausgegeben.
-
Weiterhin
werden bezogen auf Daten von ch2~chN~chC-2 unter der Steuerung der
Auswahlsignalerzeugungseinrichtung 240 Speicherbereiche
für diese
Daten in dem RAM 243 durch die obere Adresserzeugungseinrichtung 231 und
die Zählereinheit 233 der
unteren Adresserzeugungseinrichtung 232 derart eingestellt,
dass die Größen dieser Speicherbereiche
in der Reihenfolge der Kanäle
abnehmen, mit zwei Kanälen
als eine Einheit, und diese Speicherbereiche werden durch einen
(nicht dargestellten) oberen Adressauswähler und den unteren Adressauswähler 234 für jeweils
zwei Kanäle
als eine Einheit nacheinander ausgewählt. Bezogen auf die Kanäle, an welche
zwei Kanäle
mit b-Bit Daten sequenziell angelegt werden, wird der folgende Vorgang
mit jedem Speicherbereich für
jeweils zwei Kanäle
ausgeführt.
Das heißt,
die Daten werden an eine Adresse in dem Speicherbereich geschrieben
und zum nächsten
Zeitpunkt werden die Daten von der Adresse gelesen, um an die nächste Adresse
geschrieben zu werden.
-
Weiterhin
führt die
Adresserzeugungseinrichtung 253 unter der Steuerung der
Auswahlsignalerzeugungseinrichtung 240, bezogen auf die
geradzahligen Kanäle
ch2 ~ chN-1 ~ chC-1, eine Adresserzeugung unter Verwendung der Speicherbereiche
des RAM 243 derart aus, dass eine Verzögerungszeit, welche äquivalent
zu einer Differenz zwischen Verzögerungszeiten
ist, die zu einem ungeradzahligen Kanal und einem dem ungeradzahligen Kanal
benachbarten geradzahligen Kanal gehören, erzeugt wird.
-
Dadurch
wird die Verzögerungszeit CT/(C-1)T
ch0/ch1 gegeben, eine Verzögerungszeit (C-2)T/(C-3)T
wird ch2/ch3 gegeben, ..., und eine Verzögerungszeit 3T/2T wird chC-3/chC-2
gegeben.
-
Dieser
Vorgang dient dazu, die gleiche Verzögerung unter Verwendung des
RAM 243 zu bewirken, wie die durch die in 4 gezeigte
Schieberegistereinheit gegebene.
-
Dadurch
ist eine Verzögerungszeit
T ch0, ch2, ..., chC-3, chC-1 gegeben.
-
Insbesondere
die Adresserzeugungseinrichtung 253 erzeugt Verzögerungszeiten äquivalent
zu den durch die in 4 gezeigte Schieberegistereinheit 78 gegebenen,
in welcher die den jeweiligen Kanälen entsprechenden Schieberegister
nacheinander für
jeweils zwei Kanäle
ausgewählt
werden und diese Schieberegister haben Kapazitäten äquivalent zu den Anstiegen
in der Verzögerungszeit
von den ungeradzahligen Kanälen
ch1, ch3 ~ chN ~ chC, wodurch den Daten auf den Kanälen ch0
~ chN ~ chC allmählich
geringer werdende Verzögerungszeiten gegeben
werden.
-
Entsprechend
können
durch aufeinanderfolgendes Auswählen
der Kanäle
von ch0 bis chC-2 unter der Steuerung der Auswahlsignalerzeugungseinrichtung 240 den
entsprechenden Kanälen
Verzögerungszeiten
gegeben werden, welche T um T mit dem Anstieg der Kanalnummer zunehmen.
-
Danach
werden die Daten von chC-1 eingegeben und schließlich werden die Daten von
chC eingegeben. Bezogen auf die Daten von chC-1 werden die Daten
von chC, die von dem Ausgangssignalauswähler 245 zu dem Register 238 gesendet
werden, mit den von der Eingangsdatensteuerungseinrichtung 236 ausgegebenen
Daten von chC-1 durch die Bitverbindungseinrichtung 237 zusammengefasst. Die
RAM-Steuerungseinrichtung 241 unter der Steuerung der Auswahlsignalerzeugungseinrichtung steuert
den RAM 243 derart, dass die zusammengefassten Daten durch
die Schreibeinrichtung 242 in den RAM 243 geschrieben
werden. Zu diesem Zeitpunkt führen
die Auswahlsignalerzeugungseinrichtung 240 und die RAM-Steuerungseinrichtung 241 den
folgenden Vorgang für
jeden Speicherbereich für jeweils
zwei Kanäle
aus. Das heißt,
die obere Adresse und die untere Adresse, erzeugt von der Adresserzeugungseinrichtung 253,
werden als Adressen des RAM 243 verwendet und bezogen auf
die durch die Adresserzeugungseinrichtung 253 erzeugten
Adressen werden Daten an eine Adresse in jedem Speicherbereich geschrieben
und zum nächsten Zeitpunkt
werden die Daten aus der Adresse gelesen, um an eine andere Adresse
geschrieben zu werden. Dadurch wird keine Verzögerung für chC bewirkt, während eine
Verzögerung
einer vorbestimmten Periode durch den als ein FIFO arbeitenden RAM 243 für chC-1
bewirkt wird.
-
Weiterhin
steuert die Auswahlsignalerzeugungseinrichtung 240, bezogen
auf die Daten von chC, die Eingangsdatensteuerungseinrichtung 236 derart,
dass die Daten von chC nicht durch den RAM 243, sondern
direkt zu dem Ausgangssignalauswähler 245 gesendet
werden. Weiterhin steuert die RAM-Steuerungseinrichtung 241 unter
der Steuerung der Auswahlsignalerzeugungseinrichtung 240 den
Ausgangssignalauswähler 245 derart,
dass er die nicht verzögerten
Daten auswählt,
welche von der Eingangsdatensteuerungseinrichtung 206 direkt
zu dem Ausgangssignalauswähler 245 gesendet
wurden.
-
Die
aus dem RAM 243 gelesenen Daten von chC und chC-1 werden
durch den Ausgangssignalauswähler 245 in
die Bitseparationseinrichtung 246 eingegeben. Die Daten
von chC werden wie sie sind durch den Ausgangsanschluss 252 ausgegeben
und die Daten von chC-1 werden durch das Register 247 und
den Ausgangsanschluss 252 ausgegeben. Dadurch werden Verzögerungen äquivalent zu
den durch die in 4 gezeigte Schieberegistereinheit bewirkten
Verzögerungen
verwirklicht.
-
Während bei
dem bekannten Faltungsentschachteler eine Adresserzeugungsschaltung
für jeden
Kanal benötigt
wird, wird bei dem Aufbau dieser Ausführungsform eine Adresserzeugungsschaltung für zwei Kanäle benötigt. Daher
werden die Adresserzeugungsschaltungen auf 1/2 verringert, resultierend in
einer beträchtlichen
Verringerung der Schaltungsgröße. Da die
Adresserzeugungsschaltungen ohne Verwendung von Schieberegistern
implementiert werden können,
wird weiterhin die Dichte der Integration erhöht, resultierend in einer weiteren
Verringerung der Schaltungsgröße, verglichen
mit der zweiten Ausführungsform.
-
Während weiterhin
im Stand der Technik ein Lese-/Schreib-Vorgang für einen Kanal mit Eingangsdaten
in dem Single-Port-RAM benötigt
wird, wird in dieser vierten Ausführungsform ein Lese-/Schreib-Vorgang
für zwei
Kanäle
mit Eingangsdaten benötigt,
resultierend in einer Verringerung des Energieverbrauchs. Da weiterhin
die Frequenz, mit welcher auf den RAM zugegriffen wird, verringert
ist, kann auch ein auf einer relativ niedrigen Frequenz arbeitender
RAM verwendet werden.
-
Während in
dieser vierten Ausführungsform zwei
Kanäle
in einer Gruppe vereinigt sind und eine Adresserzeugungsschaltung
einer Gruppe zugeordnet ist, kann eine Adresserzeugungsschaltung
drei oder mehr Kanälen
zugeordnet sein.
-
Allgemein
beträgt
die Eingangs-/Ausgangs-Datenbreite b Bit, die Tiefe (die Anzahl
der Daten in Bitbreiten Einheiten) ist m, die Anzahl von Kanälen ist
n und die maximale Kanalanzahl ist C (n ist eine ganze Zahl, welche
die Beziehung 0 ≤ n ≤ C erfüllt und
b, m, C sind natürliche
Zahlen).
-
Insbesondere,
wenn der Faltungsentschachteler dieser Ausführungsform auf die DVB-Spezifikation
angewendet wird, C = 11, d. h., die Kanalanzahl ist 12,
und die Tiefe ist 17. Weiterhin bei der Anwendung auf die
amerikanische Grundwellenspezifikation, C = 51, d. h.,
die Kanalanzahl ist 52 und die Tiefe ist 4.
-
Während weiterhin
in dieser vierten Ausführungsform
eine Verzögerung äquivalent
zu einer Differenz in Verzögerungen
zwischen zwei benachbarten Kanälen
nicht durch Schieberegister sondern durch einen Speicherbereich
des RAM gegeben wird, kann eine größere Verzögerung als die Differenz zwischen
Kanälen
durch diesen Speicherbereich des RAM gegeben werden.
-
Während darüber hinaus
in dieser vierten Ausführungsform
ein Single-Port-RAM verwendet wird, kann ein Multiple-Port-RAM für Hochgeschwindigkeits-E/A
verwendet werden.
-
[Ausführungsform 5]
-
In
einem Faltungsverschachteler gemäß einer
fünften
Ausführungsform
der Erfindung werden, wenn Adresszähler für ein RAM für jeweils zwei Kanäle als eine
Einheit zusammengefasst werden, diese Adresszähler durch einen Addierer und
eine Registereinheit implementiert, wodurch die Schaltungsgröße der peripheren
Einheit des RAM weiter verringert wird.
-
19 ist
ein Blockschaltbild, welches den Aufbau eines Faltungsverschachtelers
gemäß der fünften Ausführungsform
darstellt.
-
In 19 umfasst
der Faltungsverschachteler einen Single-Port-RAM 313 (Speichereinrichtung in
Anspruch 6), eine Eingangsdatensteuerungseinrichtung 306,
ein Register 308, eine Bitverbindungseinrichtung 307,
eine Auswahlsignalerzeugungseinrichtung 310, eine RAM-Steuerungseinrichtung 311, eine
Adresserzeugungseinrichtung 300, eine Schreibeinrichtung 312,
eine Leseeinrichtung 314, einen Ausgangssignalauswähler 315,
eine Bitseparationseinrichtung 316, ein Register 317 und
eine Ausgangsdatensteuerungseinrichtung 318.
-
Der
Single-Port-RAM 313 gibt Daten zu der Leseeinrichtung 314 aus.
Die Eingangsdatensteuerungseinrichtung 306 gibt Eingangsdaten 321 des Faltungsverschachtelers
zu der Bitverbindungseinrichtung 307 und dem Ausgangssignalauswähler 315 aus.
Das Register 308 gibt Daten zu der Bitverbindungseinrichtung 307 aus.
Die Bitverbindungseinrichtung 307 gibt Daten zu der Schreibeinrichtung 312 aus.
Die Auswahlsignalerzeugungseinrichtung 310 gibt ein Steue rungssignal
zu der Adresserzeugungseinrichtung 300, der RAM-Steuerungseinrichtung 311 und
dem Ausgangssignalauswähler 315 aus.
Die RAM-Steuerungseinrichtung 311 gibt ein Steuerungssignal
zu dem RAM 313 aus. Die Adresserzeugungseinrichtung 300 gibt
eine RAM-Adresse zu der Schreibeinrichtung 312 und der Leseeinrichtung 314 aus.
Die Schreibeinrichtung 312 gibt eine RAM-Adresse und Daten
zu dem RAM 313 aus. Die Leseeinrichtung 314 gibt
eine RAM-Adresse zu dem RAM 313 aus und gibt Daten zu dem
Ausgangssignalauswähler 315 aus.
Der Ausgangssignalauswähler 315 gibt
Daten zu dem Register 308 und der Bitseparationseinrichtung 316 aus.
Die Bitseparationseinrichtung 316 gibt Daten zu der Ausgangsdatensteuerungseinrichtung 318 und
dem Register 317 aus. Das Register 317 gibt Daten
zu der Ausgangsdatensteuerungseinrichtung 318 aus. Die Ausgangsdatensteuerungseinrichtung 318 gibt
Daten 322 als das Ausgangssignal des Verschachtelers aus.
-
Die
Adresserzeugungseinrichtung 300 umfasst eine obere Adresserzeugungseinrichtung 301, eine
untere Adresserzeugungseinrichtung 302 und eine Ausgangstiminganpassungseinrichtung 305. Die
obere Adresserzeugungseinrichtung 301 erzeugt eine obere
Adresse des RAM 313 entsprechend einem von der Auswahlsignalerzeugungseinrichtung 310 erzeugten
Auswahlsignal und gibt die obere Adresse zu der Ausgangstiminganpassungseinrichtung 305 aus.
Die untere Adresserzeugungseinrichtung 302 erzeugt eine
untere Adresse des RAM 313 entsprechend einem durch die
Auswahlsignalerzeugungseinrichtung 310 erzeugten Auswahlsignal
und gibt die untere Adresse zu der Ausgangstiminganpassungseinrichtung 305 aus.
Die Ausgangstiminganpassungseinrichtung 305 gibt eine RAM-Adresse zu
der Schreibeinrichtung 312 und der Leseeinrichtung 314 aus.
-
Die
untere Adresserzeugungseinrichtung 302 umfasst ein Register 331,
einen Addierer 330, untere Adressauswähler 3041 und 3042 und
eine Registereinheit 303. Das Register 331 behält einen Schwellwert
für jeweils
zwei Kanäle.
Der Addierer 330 addiert das Ausgangssignal des unteren
Adressauswählers 3042 mit
dem Ausgangssignal des Registers 331. Der untere Adressauswähler 3041 gibt das
Ausgangssignal des Addierers 330 zu der Registereinheit 303 aus.
Die Registereinheit 303 umfasst Register 303-0 ~ 303-(C-1)/2-1 entsprechend
Kanälen
ch1, ch3, ..., chC-2. Die Ausgangstiminganpassungeinrichtung 305 gibt
eine un tere Adresse von dem unteren Adressauswähler 3042 zu der Schreibeinrichtung 312 aus.
-
Die
Auswahlsignalerzeugungseinrichtung 310 und die Adresserzeugungseinrichtung 300 dienen
in dem später
erläuterten
Arbeitsprinzip als ein Eingangsseitenauswähler. Weiterhin dienen der
Ausgangssignalauswähler 315 und
die Adresserzeugungseinrichtung 300 in dem Arbeitsprinzip
als ein Ausgangsseitenauswähler.
-
Der
Faltungsverschachteler dieser fünften Ausführungsform
implementiert eine Einrichtung entsprechend den in den unteren Adresserzeugungseinrichtungen 202 und 225 der
dritten Ausführungsform (siehe 7)
enthaltenen durch Verwenden des Addierers 330 und der Registereinheit 303,
welche beide in der unteren Adresserzeugungseinrichtung 302 enthalten
sind, wobei die Zähler
der dritten Ausführungsform
vereinigt werden, resultierend in einer weiteren Verringerung der
Schaltungsgröße des Faltungsverschachtelers.
-
Nachfolgend
wird die Wirkungsweise der unteren Adresserzeugungseinrichtung 302 bezogen
auf den Vorgang für
durch die unteren Adressauswähler 3041 und 3042 ausgewählten Kanal
beschrieben. Auf den mit dem bereits für die dritte Ausführungsform
beschriebenen Vorgang wird verzichtet.
-
Zuerst
wird, wenn die unteren Adressauswähler 3041 und 3042 Kanal
ch0 auswählen,
keine untere Adresse erzeugt, da auf diesem Kanal des Verschachtelers
kein Verzögerungselement
der Daten vorhanden ist.
-
Als
nächstes
wird, wenn der untere Adressauswähler 3041 ungeradzahlige
Kanäle
auswählt, wie
ch1, ch3, ch5, ..., das Register 303-(C-1)/2 ausgewählt und
der untere Adressauswähler 3042 gibt Daten
zu der Ausgangstiminganpassungseinrichtung 305 und dem
Addierer 330 aus.
-
Der
Addierer 330 addiert "1" zu den Eingangsdaten.
Wenn das Ergebnis der Addition den in dem Register 331 gespeicherten
Schwellwert übersteigt,
gibt der Addierer 330 "0" zu dem unteren Adressauswähler 3041 aus,
und wenn er den Schwellwert nicht übersteigt, gibt der Addierer 330 das
Ergebnis der Addition zu dem Auswähler 3041 aus.
-
Der
untere Adressauswähler 3041 gibt
diesen Wert zu dem Register 303-(C-1)/2 aus. Zu diesem
Zeitpunkt wird, wenn der untere Adressauswähler 3041 den maximalen
Kanal aus den ungeradzahligen Kanälen wählt, das Register 303-(C-1)/2 auf den
Eingangsdatenwert aktualisiert.
-
Wenn
der untere Adressauswähler 3041 ch2 auswählt, wird
das Register 303-0 ausgewählt und der untere Adressauswähler 3042 gibt
Daten zu der Ausgangstiminganpassungseinrichtung 305 und dem
Addierer 330 aus.
-
Als
den Schwellwert für
jeden Kanal gibt das Register 331 einen Schwellwert entsprechend
dem Register 303-0 zu dem Addierer 330 aus. Der
Addierer 330 addiert "1" zu den Eingangsdaten.
Wenn das Ergebnis der Addition den Schwellwert übersteigt, gibt der Addierer 330 "0" zu dem unteren Adressauswähler 3041 aus,
und wenn er den Schwellwert nicht übersteigt, gibt der Addierer 330 das
Ergebnis der Addition zu dem Auswähler 3041 aus.
-
Der
untere Adressauswähler 3041 gibt
entweder "0" oder das Ergebnis
der Addition zu dem Register 303-0 aus, um das Register 303-0 auf
ein Eingangsdatenwert zu aktualisieren.
-
Wenn
der untere Adressauswähler 3041 ch4 auswählt, wird
das Register 303-1 ausgewählt und der untere Adressauswähler 3042 gibt
Daten zu der Ausgangstiminganpassungseinrichtung 305 und dem
Addierer 330 aus.
-
Als
den Schwellwert für
jeden Kanal gibt das Register 331 einen Schwellwert entsprechend
dem Register 303-1 zu dem Addierer 330 aus. Der
Addierer 330 addiert "1" zu den Eingangsdaten.
Wenn das Ergebnis der Addition den Schwellwert übersteigt, gibt der Addierer 330 "0" zu dem unteren Adressauswähler 3041 aus,
und wenn es den Schwellwert nicht übersteigt, gibt der Addierer 330 das
Ergebnis der Addition zu dem Auswähler 3041 aus.
-
Der
untere Adressauswähler 3041 gibt
entweder "0" oder das Ergebnis
der Addition zu dem Register 303-1 aus, um das Register
auf den Eingangsdatenwert zu aktualisieren.
-
Ebenso
wird, wenn der untere Adressauswähler 3041 chN
auswählt,
das Register 303-(N/2-1) ausgewählt und der untere Adressauswähler 3042 gibt
Daten zu der Ausgangstiminganpassungseinrichtung 305 und
dem Addierer 330 aus.
-
Wie
für den
Schwellwert für
jeden Kanal gibt das Register 331 den Schwellwert des Registers 303-(N/2-1) zu
dem Addierer 330 aus.
-
Der
Addierer 330 addiert "1" zu den Eingangsdaten.
Wenn das Ergebnis der Addition den Schwellwert übersteigt, gibt der Addierer 330 "0" zu dem unteren Adressauswähler 3041 aus,
und wenn es nicht den Schwellwert übersteigt, gibt der Addierer 330 das
Ergebnis der Addition zu dem Auswähler 3041 aus.
-
Der
untere Adressauswähler 3041 gibt
entweder "0" oder das Ergebnis
der Addition zu dem Register 303-(N/2-1) aus, um das Register 303-(N/2-1) auf
den Eingangsdatenwert zu aktualisieren.
-
Durch
Wiederholen des oben beschriebenen Vorgangs können die unteren Adresszählungen
des RAM durch den Addierer und die Registereinheit verwirklicht
werden, wodurch die Schaltungsgröße verglichen
mit der Adresszähler
verwendenden dritten Ausführungsform
verringert werden kann.
-
[Ausführungsform 6]
-
In
einem Faltungsentschachteler gemäß einer
sechsten Ausführungsform
der Erfindung werden, wenn Adresszähler für einen RAM für jeweils zwei
Kanäle
als eine Einheit zusammengefasst werden, diese Adresszähler durch
einen Addierer und eine Registereinheit implementiert, wodurch die Schaltungsgröße der peripheren
Einheit des RAM weiter verringert wird.
-
20 ist
ein Blockschaltbild, welches den Aufbau eines Faltungsentschachtelers
gemäß der sechsten
Ausführungsform
zeigt.
-
In 20 umfasst
der Faltungsentschachteler einen Single-Port-RAM 413 (Speichereinrichtung in
Anspruch 14), eine Eingangsdatensteuerungseinrichtung 406,
ein Register 408, eine Bitverbindungseinrichtung 407,
eine Auswahlsignalerzeugungseinrichtung 410, eine RAM-Steuerungseinrichtung 411, eine
Adresserzeugungseinrichtung 400, eine Schreibeinrichtung 412,
eine Leseeinrichtung 414, einen Ausgangssignalauswähler 415,
eine Bitseparationseinrichtung 416, ein Register 417 und
eine Ausgangsdatensteuerungseinrichtung 418.
-
Der
Single-Port-RAM 413 gibt Daten zu der Leseeinrichtung 414 aus.
Die Eingangsdatensteuerungseinrichtung 406 gibt Eingangsdaten 421 des Faltungsentschachtelers
zu der Bitverbindungseinrichtung 407 und dem Ausgangssignalauswähler 415 aus.
Das Register 408 gibt Daten zu der Bitverbindungseinrichtung 407 aus.
Die Bitverbindungseinrichtung 407 gibt Daten zu der Schreibeinrichtung 412 aus.
Die Auswahlsignalerzeugungseinrichtung 410 gibt ein Steuerungssignal
zu der Adresserzeugungseinrichtung 400, der RAM-Steuerungseinrichtung 411 und
dem Ausgangssignalauswähler 415 aus.
Die RAM-Steuerungseinrichtung 411 gibt ein Steuerungssignal
zu dem RAM 413 aus. Die Adresserzeugungseinrichtung 400 gibt
eine RAM-Adresse zu der Schreibeinrichtung 412 und der Leseeinrichtung 414 aus.
Die Schreibeinrichtung 412 gibt eine RAM-Adresse und Daten
zu dem RAM 413 aus. Die Leseeinrichtung 414 gibt
eine RAM-Adresse zu dem RAM 413 aus und gibt Daten zu dem
Ausgangssignalauswähler 415 aus.
Der Ausgangssignalauswähler 415 gibt
Daten zu dem Register 408 und der Bitseparationseinrichtung 416 aus.
Die Bitseparationseinrichtung 416 gibt Daten zu der Ausgangsdatensteuerungseinrichtung 418 und
dem Register 417 aus. Das Register 417 gibt Daten
zu der Ausgangsdatensteuerungseinrichtung 418 aus. Die Ausgangsdatensteuerungseinrichtung 418 gibt
Daten 422 als das Ausgangssignal des Entschachtelers aus.
-
Die
Adresserzeugungseinrichtung 400 umfasst eine obere Adresserzeugungseinrichtung 401, eine
untere Adresserzeugungseinrichtung 402 und eine Ausgangstiminganpassungseinrichtung 405. Die
obere Adresserzeugungseinrichtung 401 erzeugt eine obere
Adresse des RAM 413 entsprechend einem durch die Auswahlsignalerzeugungseinrichtung 410 erzeugten
Auswahlsignal und gibt die obere Adresse zu der Ausgangstiminganpassungseinrichtung 405 aus.
Die untere Adresserzeugungseinrichtung 402 erzeugt eine
untere Adresse des RAM 413 gemäß einem durch die Auswahlsignalerzeugungseinrichtung 410 erzeugten
Auswahlsignal und gibt die untere Adresse zu der Ausgangstiminganpassungseinrichtung 405 aus.
Die Ausgangstiminganpassungseinrichtung 405 gibt eine RAM-Adresse
zu der Schreibeinrichtung 412 und der Leseeinrichtung 414 aus.
-
Die
untere Adresserzeugungseinrichtung 402 umfasst ein Register 431,
einen Addierer 430, untere Adressauswähler 4041 und 4042 und
eine Registereinheit 403. Das Register 431 behält einen Schwellwert
für jeweils
zwei Kanäle.
Der Addierer 430 addiert das Ausgangssignal des unteren
Adressauswählers 4041 zu
dem Ausgangssignal des Registers 431. Der untere Adressauswähler 4041 gibt das
Ausgangssignal des Addierers 430 zu der Registereinheit 403 aus.
Die Registereinheit 403 umfasst Register 403-0 ~ 403-(C-1)/2-1 entsprechend
Kanälen
ch0/ch1 + chC-3/chC-2, und ein Register 403-(C-3)/2+1 entsprechend
Kanälen
ch0, ch2, ..., chC-1. Die Ausgangstiminganpassungseinrichtung 405 gibt
eine untere Adresse von dem unteren Adressauswähler 4042 zu der Schreibeinrichtung 412 aus.
-
Die
Auswahlsignalerzeugungseinrichtung 410 und die Adresserzeugungseinrichtung 400 dienen
in dem später
beschriebenen Arbeitsprinzip als ein Eingangsseitenauswähler. Weiterhin
dienen der Ausgangssignalauswähler 415 und
die Adresserzeugungseinrichtung 400 in dem Arbeitsprinzip
als ein Ausgangsseitenauswähler.
-
Der
Faltungsentschachteler dieser sechsten Ausführungsform implementiert Einrichtungen
entsprechend den in den unteren Adresserzeugungseinrichtungen 232 und 255 der
vierten Ausführungsform (siehe 10)
enthaltenen Zählern
unter Verwendung des Addierers 430 und der Registereinheit 403, welche
beide in der unteren Adresserzeugungseinrichtung 402 enthalten
sind, wodurch die Zähler
der dritten Ausführungsform
vereinigt werden, resultierend in einer weiteren Verringerung der
Schaltungsgröße des Faltungsentschachtelers.
-
Nachfolgend
wird die Wirkungsweise der unteren Adresserzeugungseinrichtung 402 bezogen
auf den Vorgang für
jeden durch die unteren Adressauswähler 4041 und 4042 ausgewählten Kanal
beschrieben. Auf den mit dem bereits in der vierten Ausführungsform
beschriebenen übereinstimmenden
Ablauf wird verzichtet.
-
Zuerst
wird, wenn die unteren Adressauswähler 4041 und 4042 chC
auswählen,
keine untere Adresse erzeugt, weil kein Verzögerungselement für Daten
auf diesem Kanal in dem Entschachteler vorhanden ist.
-
Als
nächstes
wird, wenn der untere Adressauswähler 4041 geradzahlige
Kanäle
auswählt,
wie ch0, ch2, ch4, ..., das Register 403-(C-3)/2+1 ausgewählt und
der untere Adressauswähler 4042 gibt
Daten zu der Ausgangstiminganpassungseinrichtung 405 und
dem Addierer 430 aus.
-
Der
Addierer 430 addiert "1" zu den Eingangsdaten.
Wenn das Ergebnis der Addition den in dem Register 431 gespeicherten
Schwellwert übersteigt,
gibt der Addierer 430 "0" zu dem unteren Adressauswähler 4041 aus,
und wenn er den Schwellwert nicht übersteigt, gibt des Addierer 430 das
Ergebnis der Addition zu dem Auswähler 4041 aus.
-
Der
untere Adressauswähler 4041 gibt
diesen Wert zu dem Register 403-(C-3)/2+1 aus. Zu diesem Zeitpunkt
wird, wenn der untere Adressauswähler 4041 den
maximalen Kanal aus den geradzahligen Kanälen auswählt, das Register 403-(C-3)/2+1 auf
den Eingangsdatenwert aktualisiert.
-
Wenn
der untere Adressauswähler 4041 ch2 auswählt, wird
das Register 403-0 ausgewählt und der untere Adressauswähler 4042 gibt
Daten zu der Ausgangstiminganpassungseinrichtung 405 und dem
Addierer 430 aus.
-
Als
den Schwellwert für
jeden Kanal gibt das Register 431 einen Schwellwert entsprechend
dem Register 403-0 zu dem Addierer 430 aus. Der
Addierer addiert "1" zu den Eingangsdaten.
Wenn das Ergebnis der Addition den Schwellwert übersteigt, gibt der Addierer 430 "0" zu dem unteren Adressauswähler 4041 aus,
und wenn es den Schwellwert nicht übersteigt, gibt der Addierer 430 das
Ergebnis der Addition zu dem Auswähler 4041 aus.
-
Der
untere Adressauswähler 4041 gibt
entweder "0" oder das Ergebnis
der Addition zu dem Register 403-0 aus, um das Register 403-0 auf
den Eingangsdatenwert zu aktualisieren.
-
Wenn
der untere Adressauswähler
ch4 auswählt,
wird das Register 403-1 ausgewählt und der untere Adressauswähler 4042 gibt
Daten zu der Ausgangstiminganpassungseinrichtung 405 und dem
Addierer 430 aus.
-
Als
den Schwellwert für
jeden Kanal gibt das Register 431 einen Schwellwert entsprechend
dem Register 403-1 zu dem Addierer 430 aus. Der
Addierer 430 addiert "1" zu den Eingangsdaten.
Wenn das Ergebnis der Addition den Schwellwert übersteigt, gibt der Addierer 430 "0" zu dem unteren Adressauswähler 4041 aus
und wenn er den Schwellwert nicht übersteigt, gibt der Addierer 430 das
Ergebnis der Addition zu dem Auswähler 4041 aus.
-
Der
untere Adressauswähler 4041 gibt
entweder "0" oder das Ergebnis
der Addition zu dem Register 403-1 aus, um das Register 403-1 auf
den Eingangsdatenwert zu aktualisieren.
-
Ebenso
wird, wenn der untere Adressauswähler 4041 chN
auswählt,
das Register 403-N/2 ausgewählt und der untere Adressauswähler 4042 gibt
Daten zu der Ausgangstiminganpassungseinrichtung 405 und
dem Addierer 430 aus.
-
Als
den Schwellwert für
jeden Kanal gibt das Register 431 den Schwellwert des Registers 403-N/2 zu
dem Addierer 430 aus.
-
Der
Addierer 430 addiert "1" zu den Eingangsdaten.
Wenn das Ergebnis der Addition den Schwellwert übersteigt, gibt der Addierer 430 "0" zu dem unteren Adressauswähler 4041 aus,
und wenn es den Schwellwert nicht übersteigt, gibt der Addierer 430 das
Ergebnis der Addition zu dem Auswähler 4041 aus.
-
Der
untere Adressauswähler 4041 gibt
entweder "0" oder das Ergebnis
der Addition zu dem Register 403-N/2 aus, um das Register 403-N/2 auf
den Eingangsdatenwert zu aktualisieren.
-
Durch
Wiederholen des oben beschriebenen Vorgangs können die unteren Adresszählungen
des RAM durch den Addierer und die Registereinheit verwirklicht
werden, wodurch die Schaltungsgröße verglichen
mit der Adresszähler
verwendenden vierten Ausführungsform
verringert werden kann.