DE10256462A1 - Vorrichtung und Verfahren zum Minimieren der durch Puncturing verursachten Ausgangsverzögerung - Google Patents

Vorrichtung und Verfahren zum Minimieren der durch Puncturing verursachten Ausgangsverzögerung

Info

Publication number
DE10256462A1
DE10256462A1 DE10256462A DE10256462A DE10256462A1 DE 10256462 A1 DE10256462 A1 DE 10256462A1 DE 10256462 A DE10256462 A DE 10256462A DE 10256462 A DE10256462 A DE 10256462A DE 10256462 A1 DE10256462 A1 DE 10256462A1
Authority
DE
Germany
Prior art keywords
index
memory
address
enable signal
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
DE10256462A
Other languages
English (en)
Inventor
Hae-Hong Lee
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of DE10256462A1 publication Critical patent/DE10256462A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2792Interleaver wherein interleaving is performed jointly with another technique such as puncturing, multiplexing or routing
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/276Interleaving address generation
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2771Internal interleaver for turbo codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2957Turbo codes and decoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0064Concatenated codes
    • H04L1/0066Parallel concatenated codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0067Rate matching
    • H04L1/0068Rate matching by puncturing

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

Eine Vorrichtung und ein Verfahren, bei denen Daten der Größe S in einem Speicher der Größe K, der eine zweidimensionale Matrix aus R Zeilen und C Spalten ist, gespeichert werden und Verschachtelungsindizes I in Übereinstimmung mit einer vorgegebenen Verschachtelungsregel erzeugt werden, um die Daten zufällig aus dem Speicher auszulesen. Falls ein erster Index größer als die Datengröße S ist, wird ein zweiter Index erzeugt und ausgegeben, bevor ungültige Daten, die in dem Speicher an der Stelle des ersten Index gespeichert sind, ausgegeben werden.

Description

  • Die Erfindung betrifft allgemein das Gebiet der digitalen Kommunikation im Bereich der Sender/Empfänger in einer Basisstation und der Sender/Empfänger in einer Mobilstation, die einen Turbo-Codierer besitzen, und insbesondere eine Vorrichtung und ein Verfahren für die Implementierung einer Verschachtelungseinrichtung für einen Turbo- Codierer sowie eine Technik zum Beseitigen einer durch das Puncturing verursachten Verzögerung.
  • Die Sender/Empfänger in Systemen der digitalen Kommunikation enthalten Kanalcodierer und Kanaldecodierer. Die am weitesten verbreiteten Kanalcodierer sind Faltungscodierer und Turbo-Codierer. Der Turbo-Codierer besitzt eine interne Verschachtelungseinrichtung, die die Reihenfolge der Datenausgabe aus einem Speicher relativ zu der ursprünglichen Reihenfolge der Daten, die in den Speicher durch Erzeugen zufällig ausgelesener Adressen eingegeben werden, ändert.
  • Wenn im Verlauf einer aufeinanderfolgenden Signalausgabe ein Signal einem Puncturing unterworfen wird und das nächste gültige Signal ausgegeben wird, bewirkt das Puncturing im allgemeinen eine Ausgangsverzögerung, d. h. eine nicht aufeinanderfolgende Ausgabe gültiger Signale vor und nach dem Puncturing. Fig. 1 zeigt einen Blockschaltplan einer herkömmlichen Verschachtelungseinrichtung 10. In Fig. 1 bezeichnet das Bezugszeichen 11 einen Adressengenerator für die Erzeugung von Adressen, um die Folge von Eingangsdaten bei ihrer Ausgabe zu ändern. Der Adressengenerator 11 erzeugt (K-S) ungültige Adressen, falls die Größe S der Eingangsdaten kleiner als die Größe K einer zweidimensionalen Matrix ist. Das Bezugszeichen 12 bezeichnet eine Puncturing-Einrichtung, die an den ungültigen Adressen ein Puncturing ausführt.
  • Fig. 2 veranschaulicht eine durch Puncturing verursachte Ausgangsverzögerung in der herkömmlichen Verschachtelungseinrichtung 10. Das Bezugszeichen 21 bezeichnet ein beispielhaftes Ausgangssignal des in Fig. 1 gezeigten Adressengenerators 11. Die markierten Abschnitte 21A und 21B bezeichnen die Positionen der ungültigen Adressen. Die Puncturing-Einrichtung 12 empfängt die Adressen im Signal 21 und gibt ein Signal 22 wie in Fig. 2 gezeigt aus, bei dem die markierten ungültigen Adressen einem Puncturing unterworfen worden sind. Wie aus dem Signal 22 hervorgeht, ist das Adressensignal aufgrund des Puncturing nicht kontinuierlich, weshalb die Adresse nach dem Puncturing verzögert wird.
  • Diese herkömmliche Technologie wird hauptsächlich auf Kanalcodierer und auf Kanaldecodierer im UMTS (Universal Mobil Telecommunication System) angewendet und erfordert zusätzliche komplexe Operationen für die Verarbeitung der Verzögerung,
  • Fig. 3 zeigt einen Blockschaltplan eines Turbo-Codierers 35, der als Kanalcodierer im UMTS verwendet wird. Die zu übertragenden Daten werden über einen Eingangsanschluß 30 im Turbo-Codierer 35 an einen Codierer 31 für eine erste Komponente und an eine Verschachtelungseinrichtung 32 geliefert. Der Codierer 31 für die erste Komponente codiert die Eingangsdaten und gibt ein erstes Paritätsbit P1 aus. Die Verschachtelungseinrichtung 32 ändert die Reihenfolge der Ausgangsdaten gegenüber der ursprünglichen Reihenfolge der Eingangsdaten. Ein Codierer 33 für die zweite Komponente codiert die verschachtelten Daten und gibt ein zweites Paritätsbit P2 aus. Außerdem werden die Eingangsdaten einfach als ein systematisches Bit X ausgegeben. Somit gibt der Turbo-Codierer 35 das systematische Bit X, das erste Paritätsbit P1 und das zweite Paritätsbit P2 für die eingegebenen Übertragungsdaten aus.
  • Ein (nicht gezeigter) Controller im UMTS bestimmt die Größe der Eingangsdaten, die von 40 bis 5112 Bit reicht, und meldet dem Turbo-Codierer 35 die Anzahl der eingegebenen Bits. Dann codiert der Turbo-Codierer 35 die Eingangsdaten. Die Eingangsdaten besitzen unterschiedliche Längen. Die Verschachtelungseinrichtung 32 enthält einen Speicher zum aufeinanderfolgenden Speichern der Eingangsdaten in der Reihenfolge, in der sie empfangen werden, sowie einen Adressengenerator, der Leseadressen in Übereinstimmung mit einer vorgegebenen Verschachtelungsregel erzeugt, um die Eingangsdaten in einer anderen Reihenfolge auszugeben. Beispielsweise hat eine zweidimensionale Matrix mit 15 Zeilen R und 16 Spalten C eine Größe K von 240 (K = R × C), die erforderlich ist, um Eingangsdaten der Größe S = 237 Bit zu speichern. Daher speichert der Speicher nacheinander Eingangsdaten aus 237 Bit an den 240 Speicherplätzen der Matrix, so daß ein Speicherplatz von 3 Bit unbenutzt bleibt. Der Adressengenerator erzeugt Adressen in Übereinstimmung mit der Verschachtelungsregel. Falls ein Verschachtelungsindex I, der in Übereinstimmung mit einer vorgegebenen Verschachtelungsregel erzeugt wird, größer als die Eingangsdatengröße S (237) ist, wird die Adresse ignoriert. Falls der erzeugte Index I kleiner oder gleich der Eingangsdatengröße S (237) ist, werden Daten, die an der Adresse im Speicher gespeichert sind, zum Codierer 33 für die zweite Komponente ausgegeben. Da Adressen, die größer als die Datengröße S sind, ignoriert werden müssen, ergibt sich eine nicht kontinuierliche Datenübertragung zum Codierer 33 für die zweite Komponente, was eine Zeitverzögerung hervorruft. Die Verzögerung erschwert die Schätzung einer genauen Verarbeitungszeit in der Verschachtelungseinrichtung 32, so daß eine zusätzliche Steuerschaltungsanordnung erforderlich ist, um die nicht kontinuierlichen Daten wieder zu einem kontinuierlichen Datenstrom zu machen.
  • Daher besteht ein Bedarf an einer effektiven Implementierung einer Verschachtelungseinrichtung für einen Turbo- Codierer und an der Schaffung einer Technik zum Entfernen einer durch Puncturing verursachten Verzögerung.
  • Der Erfindung liegt daher die Aufgabe zugrunde, eine Verschachtelungseinrichtung und ein Verfahren zum Ausgeben verschachtelter Daten ohne Zeitverzögerung zu schaffen.
  • Diese Aufgabe wird erfindungsgemäß gelöst durch eine Vorrichtung nach Anspruch 1. Weiterbildungen der Erfindung sind in den Neben- und Unteransprüchen angegeben.
  • Gemäß einem Merkmal der Erfindung werden eine Vorrichtung und ein Verfahren geschaffen, die Signale ausgeben, die nicht durch ein Puncturing, das an aufeinanderfolgenden Ausgangssignalen ausgeführt wird, verzögert sind.
  • Gemäß einem weiteren Merkmal der Erfindung wird eine Verschachtelungseinrichtung geschaffen, die für einen Codierer für die zweite Komponente in einem Turbo- Codierer aufeinanderfolgende Daten bereitstellt.
  • Gemäß einem nochmals weiteren Merkmal der Erfindung wird ein Verfahren zum Ausgeben von gespeicherten Daten aus einem Speicher geschaffen.
  • In der erfindungsgemäßen Vorrichtung und in dem erfindungsgemäßen Verfahren sind Daten der Größe S in einem Speicher der Größe K gespeichert, wobei der Speicher mit der Größe K eine zweidimensionale Matrix aus R Zeilen und C Spalten ist, wobei Verschachtelungsindizes I in Übereinstimmung mit einer vorgegebenen Verschachtelungsregel erzeugt werden, um die Daten zufällig aus dem Speicher auszugeben.
  • Es wird eine Vorrichtung offenbart, die in einem Speicher sequentiell gespeicherte Daten zufällig ausgibt und umfaßt: eine Verzögerungseinrichtung, die während einer ersten Zeitperiode ein erstes Steuersignal empfängt, während einer zweiten Zeitperiode ein zweites Steuersignal ausgibt und während einer dritten Zeitperiode ein drittes Steuersignal ausgibt; einen Indexgenerator, der das erste Steuersignal oder ein viertes Steuersignal empfängt und bei Empfang des ersten oder vierten Steuersignals einen Index ausgibt, wobei der Index eine Stelle im Speicher repräsentiert; und einen Komparator, der den Index mit einem Referenzparameter vergleicht, der die Größe der in dem Speicher gespeicherten Daten repräsentiert, und bei Empfang des zweiten Steuersignals das vierte Steuersignal zum Indexgenerator ausgibt, falls der Index größer als der Referenzparameter ist.
  • Ferner wird eine Verschachtelungseinrichtung offenbart, die der Steuerung eines Controllers unterliegt und umfaßt: einen Adressengenerator, der eine Adresse an einen Speicher ausgibt, wobei der Speicher sequentiell eingegebene Daten speichert und Daten, die bei Empfang der Adresse an dieser Adresse gespeichert werden, ausgibt, wobei der Controller die Größe der eingegebenen Daten bestimmt und umfaßt: eine Verzögerungseinrichtung, die ein primäres Indexfreigabesignal empfängt, während einer ersten Zeitperiode ein Komparatorfreigabesignal ausgibt und während einer zweiten Zeitperiode ein Adressengenerator-Freigabesignal ausgibt; einen Indexgenerator, der entweder das primäre Indexfreigabesignal oder ein sekundäres Indexfreigabesignal empfängt und bei Empfang des primären Indexfreigabesignals oder des sekundären Indexfreigabesignals einen Index ausgibt; und einen Komparator, der bei Empfang des Komparatorfreigabesignals den Index mit der Datengröße vergleicht und das sekundäre Indexfreigabesignal ausgibt, falls der Index größer als die Datengröße ist; wobei ein Eingang des Adressengenerators an den Ausgang des Indexgenerators angeschlossen ist und wobei bei Empfang des Adressengenerator- Freigabesignals eine Speicheradresse ausgegeben wird, die dem zuletzt erzeugten Index zugeordnet ist. Weiterhin wird ein Verfahren offenbart, bei dem gespeicherte Daten aus einem Speicher ausgegeben werden und das die folgenden Schritte umfaßt: sequentielles Speichern von Eingangsdaten in dem Speicher; Bestimmen der Größe der gespeicherten Eingangsdaten; Empfangen eines ersten Steuersignals und Erzeugen eines ersten Index; Vergleichen des ersten Index mit der Datengröße und Erzeugen des zweiten Index, falls der erste Index größer als die Datengröße ist; Erzeugen eines zweiten Steuersignals; Ausgeben einer Speicheradresse, die dem ersten Index zugeordnet ist, falls der zweite Index nicht erzeugt wird; und Ausgeben einer Speicheradresse, die dem zweiten Index zugeordnet ist, falls der zweite Index erzeugt wird.
  • Falls ein erster Index I größer als die Datengröße S ist, wird im allgemeinen ein zweiter Index erzeugt und ausgegeben, bevor im Speicher am Ort des ersten Index gespeicherte, ungültige Daten ausgegeben werden. Hierbei ist das Puncturing definiert als Ausgabe des nächsten Verschachtelungsindex ohne Ausgabe eines Index, der größer als die Datengröße ist. Dies ist dem Pruning-Konzept ähnlich, das im 3GPP (Third Generation Partnership Project) verwendet wird.
  • Weitere Merkmale und Vorteile der Erfindung werden deutlich beim Lesen der folgenden Beschreibung bevorzugter Ausführungsformen, die auf die Zeichnungen Bezug nimmt; es zeigen:
  • Fig. 1 die bereits erwähnte Ansicht einer typischen Verschachtelungseinrichtung;
  • Fig. 2 die bereits erwähnten Ausgangssignale, die eine typische Zeitverzögerung, die durch ein Puncturing verursacht wird, besitzen und aus der typischen Verschachtelungseinrichtung nach Fig. 1 ausgegeben werden;
  • Fig. 3 die bereits erwähnte Ansicht eines typischen Turbo-Codierers;
  • Fig. 4 eine Verschachtelungseinrichtung gemäß einer Ausführungsform der Erfindung;
  • Fig. 5 einen Funktionszeitablaufplan der Verschachtelungseinrichtung gemäß einer Ausführungsform der Erfindung; und
  • Fig. 6 einen Ablaufplan zur Erläuterung der Funktionsweise der Verschachtelungseinrichtung gemäß einer Ausführungsform der Erfindung.
  • In der folgenden Beschreibung werden wohlbekannte Funktionen oder Konstruktionen nicht im einzelnen beschrieben, da sie die Beschreibung der Erfindung mit unnötigen Einzelheiten belasten würde. In den Zeichnungen bezeichnen gleiche Bezugszeichen in allen Figuren ähnliche oder gleiche Teile.
  • Nun wird mit Bezug auf Fig. 4 eine Verschachtelungseinrichtung gemäß einer Ausführungsform der Erfindung beschrieben. Die Verschachtelungseinrichtung 40 speichert nacheinander in einem Speicher 45 unter der Steuerung eines (nicht gezeigten) Turbo-Codierer-Controllers Eingangsdaten. In jeder Zeitperiode T wird von dem Turbo- Codierer-Controller periodisch ein primäres Indexfreigabesignal IN_EA1 erzeugt. Das primäre Indexfreigabesignal IN_EA1 wird an den Eingang eines Indexgenerators 43 und an eine Verzögerungseinrichtung 41 angelegt und bei der Erzeugung von Adressenindizes verwendet. Die Verzögerungseinrichtung 41 verzögert das primäre Indexfreigabesignal IN_EA1 um eine Zeit T1, die kürzer als die Periode für die Erzeugung des primären Indexfreigabesignals IN_EA1 ist (d. h. T1 < T). Die Verzögerungseinrichtung 41 gibt ein erstes verzögertes Signal als ein Komparatorfreigabesignal COMP_EA aus. Das heißt, daß das Komparatorfreigabesignal COMP_EA erzeugt wird, bevor das zweite primäre Indexfreigabesignal IN_EA1 erzeugt wird.
  • Der Indexgenerator 43 speichert Informationen bezüglich der Größe K der zweidimensionalen Matrix und Anfangsparameter, die für die Erzeugung einer Pseudozufallszahl erforderlich sind. Bei Empfang des primären Indexfreigabesignals IN_EA1 gibt der Indexgenerator 43 einen Index I (I = 0, . . ., K-1) aus, der kleiner oder gleich K ist, wobei er die gegebenen Anfangsparameter in Übereinstimmung mit einer im voraus definierten Regel verwendet, wie sie beispielsweise in der UMTS-Norm definiert ist. Der Index I wird in einen Komparator 42 und in einen Adressengenerator 44 eingegeben. Der Komparator 42 vergleicht den Index I mit der Eingangsdatengröße S. Falls der Index I größer als die Eingangsdatengröße S ist, gibt der Komparator 42 ein sekundäres Indexfreigabesignal IN_EA2 aus. Das sekundäre Indexfreigabesignal IN_EA2 wird in den Indexgenerator 43 eingegeben und veranlaßt den Indexgenerator 43 dazu, einen weiteren Index I zu erzeugen. Der Indexgenerator 43 erzeugt bei Empfang entweder des primären oder des sekundären Indexfreigabesignals IN_EA1 bzw. IN_EA2 einen Index I.
  • Die Verzögerungseinrichtung 41 erzeugt außerdem ein Adressenfreigabesignal ADD EA, indem sie das primäre Indexfreigabesignal IN_EA1 um eine Zeit T2 verzögert. Die Zeit T2 ist länger als die Zeit T1 des Komparatorfreigabesignals COMP_EA, jedoch kürzer als die Zeit T, der Periode, in der das primäre Indexfreigabesignal IN_EA1 erzeugt wird (d. h. T1 < T2 < T). Die Verzögerungseinrichtung 41 überträgt das Adressenfreigabesignal ADD EA an den Adressengenerator 44. Wenn der Adressengenerator 44 das Adressenfreigabesignal ADD EA empfängt, setzt er den Index I, den er vom Indexgenerator 43 empfangen hat, in eine Leseadresse für den Speicher 45 um. Der Speicher 45 gibt dann die an dieser Adresse gespeicherten Daten aus. Der Index I am Eingang des Adressengenerators 44 ist zu dem Zeitpunkt, zu dem das Adressenfreigabesignal ADD EA empfangen wird, entweder der Index, der durch das primäre Indexfreigabesignal IN_EA1 erzeugt wird, oder der nächste Index I, der durch das sekundäre Indexfreigabesignal IN_EA2 erzeugt wird, falls dieses vom Komparator 42 erzeugt wird. Falls der zum Zeitpunkt des primären Indexfreigabesignals IN_EA1 erzeugte Index I kleiner als die Eingangsdatengröße S ist, wird der Index I durch den Adressengenerator 44 in eine Leseadresse umgesetzt. Falls der erzeugte Index größer als die Größe K der zweidimensionalen Matrix ist, wird der nächste Index, der in Reaktion auf das vom Komparator 42 ausgegebene zweite Indexfreigabesignal IN_EA2 erzeugt wird, durch den Adressengenerator 44 in eine Leseadresse umgesetzt. Da das Komparatorfreigabesignal COMP EA und das Adressenfreigabesignal ADD EA vor dem nächsten primären Indexfreigabesignal IN_EA1 erzeugt werden, werden Leseadressen nacheinander ohne Zeitverzögerung erzeugt.
  • Wie im Gebiet der digitalen Datenverarbeitung bekannt ist, werden Daten vorzugsweise auf der Grundlage eines Vielfachen eines Bytes (8 Bit) verarbeitet, da der Prozessor oder Controller so beschaffen ist, daß er Daten auf der Grundlage eines Vielfachen eines Bytes verarbeitet. Die Daten werden in Einheiten von 8 Bit oder in Einheiten eines Vielfachen von 8 Bit bei der durch die Leseadresse bezeichneten Adresse im Speicher gespeichert. Somit bezeichnen die oberen 9 Bit in der Adresse eine Zeile in der zweidimensionalen Matrix des Speichers 45, während die unteren 4 Bit eine Spalte in derselben Zeile bezeichnen. Hierbei wird die zweidimensionale Matrix auf der Grundlage der maximalen Daten bestimmt, die in einem Rahmen im UMTS empfangen werden können. Beispielsweise wird angenommen, daß 512 (Bit pro Zeile) × 16 (Bit pro Spalte), also 8192 Bit, empfangen werden. Der Standard der Matrix kann in Abhängigkeit vom Speicher geändert werden. Der Speicher 45 empfängt Daten beginnend bei einer 0-ten Zeile. Falls eine Verschachtelungseinrichtung beispielsweise 1025 als einen gültigen Index angibt, werden die oberen 9 Bit (64) einer Adresse (Zeile) des Speichers 45 zugewiesen. Falls hierbei der Datenwert, der 16 Bit besitzt, aus der entsprechenden Zeile des Speichers 45 gelesen wird, bezeichnen die unteren 4 Bit (1) eine Spalte von Daten aus 16 Bit, wobei Daten, die den gültigen Daten der Verschachtelungseinrichtung entsprechen, hiervon ausgelesen werden.
  • Dann empfängt der Codierer für die zweite Komponente von der Verschachtelungseinrichtung aufeinanderfolgende Bits und erzeugt zweite Paritätsbits. Der Codierer für die erste Komponente gibt erste Paritätsbits aus, indem er sequentielle Eingangsdaten ohne Verschachtelung codiert. Die Verzögerung erfordert eine umfangreiche zeitliche Neuordnung des Datenstroms, um die Korrelation zwischen den von den Codierern verarbeiteten Daten aufrechtzuerhalten. Da jedoch die Verschachtelungseinrichtung gemäß einer Ausführungsform der Erfindung Ausgangsdaten ohne jegliche durch das Puncturing verursachte Verzögerung erzeugt, besteht kein Bedarf an der Beachtung und Kompensation einer durch das Puncturing verursachten Zeitverzögerung, um die von den Codierern für die erste und für die zweite Komponente ausgegebenen Daten anzupassen.
  • Fig. 5 ist ein funktionaler Zeitablaufplan der in Fig. 4 gezeigten Verschachtelungseinrichtung. In Fig. 5 bezeichnet das Signal 51 das primäre Indexfreigabesignal IN_EA1. Das primäre Indexfreigabesignal IN_EA1 wird nach jeder Zeitperiode T erzeugt. Das Signal 51 zeigt, daß acht primäre Indexfreigabesignale IN_EA1 51a-51h erzeugt werden. Das Signal 52 zeigt sowohl das primäre Indexfreigabesignal IN_EA1 als auch das sekundäre Indexfreigabesignal IN_EA2. Es sind zwei sekundäre Indexfreigabesignale IN_EA2 52a und 52b gezeigt. Die Kombination aus den primären und sekundären Indexfreigabesignalen IN_EA1 und IN_EA2, die auf der Signalleitung 52 gezeigt sind, bilden die Eingänge in den Indexgenerator 43. Das Signal 53 bezeichnet Indizes, die vom Indexgenerator 43 erzeugt werden und in diesem Beispiel aus zehn Indizes 53A-53 J bestehen. Wie aus dem Signal 53 hervorgeht, werden in Reaktion auf jedes der primären und sekundären Indexfreigabesignale IN_EA1 und IN_EA2 neue Indizes ausgegeben. Das Signal 54 zeigt das Komparatorfreigabesignal COMP_EA, das aus acht erzeugten Signalen 54a-54h besteht. Das Komparatorfreigabesignal COMP_EA wird durch Verzögern des primären Indexfreigabesignals IN_EA1 um die erste Zeitperiode T1 erzeugt, wobei T1 kleiner als T ist (d. h. T1 < T). Das Signal 55 zeigt das Adressenfreigabesignal ADD EA und besteht ebenfalls aus acht Signalen 55a-55h. Das Adressenfreigabesignal ADD EA wird durch Verzögern des primären Freigabesignals IN EA1 um eine zweite Zeitperiode T2 erzeugt, wobei T2 größer als T1, jedoch kleiner als T ist (d. h. T1 < T2 < T). Das Signal 56 bezeichnet ein Adressensignal, das vom Adressengenerator 44 ausgegeben wird. Wie in Fig. 5 gezeigt ist, werden als Ausgänge des Adressengenerators 44 acht Adressensignale 56A', 56B', 56C', 56E', 56F', 56H', 56I' und 56J' erzeugt.
  • Nun wird mit Bezug auf die Fig. 4 und 5 die Funktionsweise der Verschachtelungseinrichtung gemäß einer Ausführungsform der Erfindung beschrieben. Die Speichergröße K und die anfänglichen Parameter der Verschachtelungseinrichtung sind in einem Speicher des Turbo-Codierers gespeichert. Die Eingangsdaten werden im Speicher 45 empfangen, wobei die Datengröße S bestimmt und im Speicher des Turbo-Codierers gespeichert wird. Ein erster Index 53A wird vom Indexgenerator 43 ausgegeben, wenn dieser ein erstes primäres Indexfreigabesignal IN_EA1 51a empfängt. Ein erstes Komparatorfreigabesignal COMP_EA 54a wird durch Verzögern des ersten primären Indexfreigabesignals IN_EA1 51a in der Verzögerungseinrichtung 41 um eine erste Zeitperiode, die gleich T1 ist, erzeugt. Der Komparator 42 vergleicht den ersten Index 53A mit der Eingangsdatengröße S. Da in diesem Beispiel der Index 53A kleiner als S ist, wird ein sekundäres Indexfreigabesignal IN_EA2 nicht erzeugt. Nachdem das erste primäre Indexfreigabesignal IN_EA1 51a um die zweite Zeitperiode T2 verzögert worden ist, gibt die Verzögerungseinrichtung 41 ein erstes Adressenfreigabesignal ADD EA 55a aus, das vom Adressengenerator 44 erzeugt wird, der seinerseits eine Adresse 56A' ausgibt. Der Adressengenerator 44 liefert die Adresse 56A' an den Speicher 45, wodurch der Speicher 45 dazu veranlaßt wird, Daten, die bei der Adressenstelle 56A' gespeichert sind, auszugeben. Die ausgegebenen Daten werden zum Codierer 33 für die zweite Komponente weitergeleitet, um codiert zu werden.
  • Vom Indexgenerator 43 wird bei Empfang eines zweiten primären Indexfreigabesignals IN_EA1 51b ein zweiter Index 53B ausgegeben. Ein zweites Komparatorfreigabesignal COMP_EA 54b wird erzeugt, indem das zweite primäre Indexfreigabesignal IN_EA1 51b in der Verzögerungseinrichtung 41 um die erste Zeitperiode T2 verzögert wird. Der Komparator 42 vergleicht den zweiten Index 53B mit der Eingangsdatengröße S. Da in diesem Beispiel erneut der Index 53B kleiner als S ist, wird das sekundäre Indexfreigabesignal IN_EA2 nicht erzeugt. Nachdem das zweite primäre Indexfreigabesignal IN_EA1 51b um die zweite Zeitperiode T2 verzögert worden ist, gibt die Verzögerungseinrichtung 41 ein zweites Adressenfreigabesignal ADD EA 55b aus, das vom Adressengenerator 44 empfangen wird, der seinerseits eine Adresse 56B' ausgibt. Der Adressengenerator 44 liefert die Adresse 56B' an den Speicher 45, wodurch dieser dazu veranlaßt wird, bei der Adressenstelle 56B' gespeicherte Daten auszugeben. Die ausgegebenen Daten werden zum Codierer 33 für die zweite Komponente weitergeleitet, um codiert zu werden. Bei Empfang eines dritten primären Indexfreigabesignals IN_EA1 51c wird vom Indexgenerator 43 ein dritter Index 53C ausgegeben. Durch Verzögern des dritten primären Indexfreigabesignals IN_EA1 51c in der Verzögerungseinrichtung 41 um die erste Zeitperiode T1 wird ein drittes Komparatorfreigabesignal COMP_EA 54c erzeugt. Der Komparator 42 vergleicht den dritten Index 53C mit der Eingangsdatengröße S. Da in diesem Beispiel der Index 53C wiederum kleiner als S ist, wird das sekundäre Indexfreigabesignal IN_EA2 nicht erzeugt. Nach der Verzögerung des dritten primären Indexfreigabesignals IN_EA1 51c um die dritte Zeitperiode T2 gibt die Verzögerungseinrichtung 41 ein drittes Adressenfreigabesignal ADD EA 55c aus, das vom Adressengenerator 44 empfangen wird, der seinerseits eine Adresse 56C' ausgibt. Der Adressengenerator 44 liefert die Adresse 56C' zum Speicher 45, wodurch dieser dazu veranlaßt wird, Daten, die bei der Adressenstelle 56C' gespeichert sind, auszugeben. Die ausgegebenen Daten werden zum Codierer 33 für die dritte Komponente weitergeleitet, um codiert zu werden.
  • Wenn an die Verschachtelungseinrichtung 40 ein viertes primäres Indexfreigabesignal IN_EA1 51d geliefert wird, gibt der Indexgenerator 43 einen vierten Index 53D aus. Ein viertes Komparatorfreigabesignal COMP_EA 54d wird erzeugt, nachdem das vierte primäre Indexfreigabesignal IN_EA1 51d um die erste Zeitperiode T1 verzögert worden ist. Der Komparator 42 vergleicht den vierten Index 53D mit der Datengröße S. In diesem Beispiel ist der Index 53D größer als die Datengröße S. weshalb der Komparator 42 ein sekundäres Indexfreigabesignal IN_EA2 52a erzeugt. In Reaktion auf das sekundäre Indexfreigabesignal IN_EA2 52a erzeugt der Indexgenerator 43 einen fünften Index 53E, wenn er das sekundäre Indexfreigabesignal IN_EA2 52a empfängt. Nachdem das vierte primäre Indexfreigabesignal IN_EA1 51d um die zweite Zeitperiode T2 verzögert worden ist, gibt die Verzögerungseinrichtung 41 ein viertes Adressenfreigabesignal ADD EA 55d aus, während der Adressengenerator 44 entsprechend dem vierten Adressenfreigabesignal ADD_EA 55d eine Adresse 56E' ausgibt. Da der Adressengenerator 44 kein Adressenfreigabesignal ADD_EA empfangen hat, als der vierte Index 53D an seinem Eingang anlag, hat er den vierten Index 53D nicht verarbeitet. Nur in dem Fall, in dem das vierte Adressenfreigabesignal ADD_EA 55d vom Adressengenerator 44 empfangen wird, gibt dieser eine gültige Adresse 56E' auf der Grundlage des fünften Index 53E aus, der am Eingang des Adressengenerators 44 anliegt, wenn das vierte Adressenfreigabesignal ADD_EA 55d empfangen wird. Auf diese Weise wird der ungültige Index 53D ignoriert, da er eine Speicheradresse repräsentiert, die größer als die Datengröße S ist, außerdem wird ein nächster Index 53E vom Indexgenerator 43 erzeugt, bevor der Adressengenerator 44 auf die ungültige Adresse einwirkt. Der Adressengenerator 44 liefert die Adresse 56E' zum Speicher 45, wodurch dieser dazu veranlaßt wird, bei der Adressenstelle 56E' gespeicherte Daten auszugeben. Die ausgegebenen Daten werden zum Codierer 33 für die dritte Komponente weitergeleitet, um codiert zu werden.
  • Ein sechster Index 53F wird vom Indexgenerator 43 ausgegeben, wenn er ein fünftes primäres Indexfreigabesignal IN_EA1 51e empfängt. Ein fünftes Komparatorfreigabesignal COMP_EA 54e wird durch Verzögern des fünften primären Indexfreigabesignals IN_EA1 51e in der Verzögerungseinrichtung 41 um die erste Zeitperiode T1 erzeugt. Der Komparator 42 vergleicht den sechsten Index 53F mit der Eingangsdatengröße 5. Da in diesem Beispiel wiederum der Index 53F kleiner als die Datengröße S ist, wird ein sekundäres Indexfreigabesignal IN_EA2 nicht erzeugt. Nachdem das fünfte primäre Indexfreigabesignal IN_EA1 51e um die fünfte Zeitperiode T2 verzögert worden ist, gibt die Verzögerungseinrichtung 41 ein fünftes Adressenfreigabesignal ADD EA 55e aus, das vom Adressengenerator 44 empfangen wird, der seinerseits eine Adresse 56F' ausgibt. Der Adressengenerator 44 liefert die Adresse 56F an den Speicher 45, wodurch dieser veranlaßt wird, bei der Adressenstelle 56F' gespeicherte Daten auszugeben. Die ausgegebenen Daten werden zum Codierer 33 für die fünfte Komponente weitergeleitet, um codiert zu werden.
  • Wenn an die Verschachtelungseinrichtung 40 ein sechstes primäres Indexfreigabesignal IN_EA1 51f geliefert wird, gibt der Indexgenerator 43 einen sechsten Index 53G aus. Ein sechstes Komparatorfreigabesignal COMP_EA 54f wird erzeugt, nachdem das sechste primäre Indexfreigabesignal IN_EA1 51f um die erste Zeitperiode T1 verzögert worden ist. Der Komparator 42 vergleicht den sechsten Index 53 G mit der Datengröße S. In diesem Beispiel ist der Index 53G wieder größer als die Datengröße S. weshalb der Komparator 42 ein sekundäres Indexfreigabesignal IN_EA2 52b erzeugt. In Reaktion auf das sekundäre Indexfreigabesignal IN_EA2 52b erzeugt der Indexgenerator 43 einen achten Index 53H, wenn er das sekundäre Indexfreigabesignal IN_EA2 52b empfängt. Nachdem das sechste primäre Indexfreigabesignal IN_EA1 51f um die zweite Zeitperiode T2 verzögert worden ist, gibt die Verzögerungseinrichtung 41 das sechste Adressenfreigabesignal ADD_EA 55f aus und erzeugt der Adressengenerator 44 in Übereinstimmung mit dem sechsten Adressenfreigabesignal ADD_EA 55f eine Adresse 56H'. Da der Adressengenerator 44 kein Adressenfreigabesignal ADD_EA empfangen hat, als an seinem Eingang der sechste Index 53G anlag, hat der Adressengenerator 44 den sechsten Index 53G nicht verarbeitet. Nur wenn das sechste Adressenfreigabesignal ADD_EA 55f beim Adressengenerator 44 empfangen wird, gibt der Adressengenerator 44 eine gültige Adresse 56H' auf der Grundlage des achten Index 53H aus, der am Eingang des Adressengenerators 44 anliegt, wenn das sechste Adressenfreigabesignal ADD_EA 55f empfangen wird. Auf diese Weise wird der ungültige Index 53G ignoriert, da er eine Speicheradresse repräsentiert, die größer als die Datengröße S ist, wobei ein nächster Index 53H durch den Indexgenerator 43 erzeugt wird, bevor der Adressengenerator 44 auf die ungültige Adresse einwirkt. Der Adressengenerator 44 liefert die Adresse 56H' an den Speicher 45, der dazu veranlaßt wird, bei der Adressenstelle 56H' gespeicherte Daten auszugeben. Die ausgegebenen Daten werden zum Codierer 33 für die dritte Komponente weitergeleitet, um codiert zu werden.
  • Der Prozeß wird in ähnlicher Weise wie für die Verarbeitung des Index 53A für die Verarbeitung der Indizes 53I und 53J fortgesetzt, was die Erzeugung der Adressen 56I' und 56J' durch den Adressengenerator 44 zur Folge hat. Dadurch ist ein Zyklus aus acht primären Indexfreigabesignalen abgeschlossen. In dem früheren Beispiel, in dem die Datengröße S gleich 237 ist, würde der Prozeß fortgesetzt, bis sämtliche 237 gültigen Adressen erzeugt sind.
  • Wie oben beschrieben worden ist, wird das sekundäre Indexfreigabesignal IN_EA2 sofort nach der Freigabe des Komparators 42 erzeugt, falls ein erzeugter Index I größer als die Datengröße S ist, außerdem wird ein nächster Index durch den Indexgenerator 43 erzeugt. Dann wird das Adressenfreigabesignal ADD EA erzeugt, um eine Adresse ohne Zeitverzögerung zu erzeugen. Gemäß der UMTS- Verschachtelungsregel werden keine Werte größer als S nacheinander für die Eingabe von Daten mit irgendeiner Größe erzeugt, weshalb kein Bedarf an einem Vergleich eines durch das sekundäre Indexfreigabesignal IN_EA2 erzeugten Index mit der Datengröße S besteht.
  • In der obigen Beschreibung wird ein Index als ein Medium für die Erzeugung einer Adresse verwendet. Alternativ könnte der Index selbst als eine Adresse ausgegeben werden. In diesem Fall arbeitet der Indexgenerator 43 als ein Adressengenerator, der in Reaktion auf das Adressenfreigabesignal ADD EA wahlweise eine Adresse ausgibt.
  • Fig. 6 ist ein Ablaufplan, der die Funktionsweise der Verschachtelungseinrichtung 40 gemäß einer Ausführungsform der Erfindung veranschaulicht. Wie in Fig. 6 gezeigt ist, werden in dem Turbo-Codierer die Werte einer zweidimensionalen Matrix, d. h. R, C und K, sowie ein Anfangsparameter für die Verschachtelung gespeichert. Im Schritt 61 speichert der Turbo-Codierer Eingangsdaten sequentiell im Speicher und bestimmt die Datengröße S. Im Schritt 62 wird von der Verzögerungseinrichtung 41 und vom Indexgenerator 43 ein erstes primäres Indexfreigabesignal IN_EA1 empfangen. Im Schritt 63 erzeugt der Indexgenerator 43 einen ersten Index. Im Schritt 64 wird der Index I mit der Datengröße S verglichen, um zu bestimmen, ob I kleiner oder gleich S ist. Falls festgestellt wird, daß der Index I kleiner oder gleich der Datengröße S ist, werden im Schritt 65 Daten ausgegeben, die zu dem ersten Index gehören. Falls jedoch im Schritt 64 festgestellt wird, daß der Index I größer als die Datengröße S ist, erzeugt der Indexgenerator 43 der Verschachtelungseinrichtung 40 im Schritt 66 ein sekundäres Indexfreigabesignal. Dann erzeugt der Indexgenerator 43 im Schritt 67 einen zweiten Index. Der zweite Index wird zum Adressengenerator 44 geschickt, um im Schritt 65 Daten, die dem zweiten Index zugeordnet sind, auszugeben. Anschließend bestimmt der Turbo-Codierer-Controller im Schritt 68, ob die Anzahl ausgegebener Indizes gleich der Datengröße S ist. Falls die Anzahl der ausgegebenen Indizes nicht gleich der Datengröße S ist, kehrt der Prozeß zum Schritt 62 zurück, um auf ein zweites primäres Indexfreigabesignal zu warten. Wenn jedoch die Anzahl ausgegebener Indizes gleich der Datengröße S ist, endet der Prozeß, um auf den nächsten Datenblock zu warten, falls ein solcher vorhanden ist.
  • Somit erlauben die erfindungsgemäße Vorrichtung und das erfindungsgemäße Verfahren die sukzessive Datenausgabe ohne durch das Puncturing verursachte Zeitverzögerung.
  • Obwohl die Erfindung mit Bezug auf bestimmte bevorzugte Ausführungsformen gezeigt und beschrieben worden ist, kann der Fachmann selbstverständlich verschiedene Änderungen hinsichtlich der Form und der Einzelheiten vornehmen, ohne vom Erfindungsgedanken und vom Umfang der Erfindung, der durch die beigefügten Ansprüche definiert ist, abzuweichen.

Claims (13)

1. Vorrichtung zum zufälligen Ausgeben von in einem Speicher (45) sequentiell gespeicherten Daten, gekennzeichnet durch
Mittel (43), die in einen ersten Index (I) erzeugen, der eine Stelle in dem Speicher (45) repräsentiert;
Mittel (42), die einen Referenzparameter (S), der die Größe eines Blocks eingegebener Daten, die in dem Speicher (45) gespeichert sind, repräsentiert, mit dem ersten Index (I) vergleichen; und
Mittel (44), die an der Speicherstelle gespeicherte Daten ausgeben, falls der Referenzparameter (S) kleiner oder gleich dem ersten Index (I) ist.
2. Vorrichtung nach Anspruch 1, gekennzeichnet durch Mittel (43), die einen zweiten Index (I) erzeugen, falls der Referenzparameter (S) größer als der erste Index (I) ist.
3. Vorrichtung nach Anspruch 2, dadurch gekennzeichnet, daß die Mittel zum Erzeugen des ersten Index (I) einen Indexgenerator (43) umfassen, der bei Eingabe eines primären bzw. eines sekundären Steuersignals (IN_EA1, IN_EA2) einen ersten Index (I) bzw. einen zweiten Index (I) erzeugt.
4. Vorrichtung nach Anspruch 3, dadurch gekennzeichnet, daß das primäre Steuersignal (IN_EA1) ein Signal ist, das von den Mitteln (43) zum Erzeugen des ersten Index (I) periodisch empfangen wird, um die Erzeugung des ersten Index (I) auszulösen.
5. Vorrichtung nach Anspruch 4, dadurch gekennzeichnet, daß das sekundäre Steuersignal (IN_EA2) ein Signal ist, das von der Vorrichtung erzeugt wird, falls der Referenzparameter (S) größer als der erste Index (I) ist, und von den Mitteln (43) zum Erzeugen des zweiten Index (I) empfangen wird, um die Erzeugung des zweiten Index (I) auszulösen.
6. Vorrichtung nach Anspruch 5, dadurch gekennzeichnet, daß die Vergleichsmittel einen Komparator (42) umfassen, der den Index (I) vom Indexgenerator (43) und den Referenzparameter (S) empfängt und das zweite Steuersignal (IN_EA2) ausgibt, falls der Index (I) kleiner oder gleich dem Referenzparameter (S) ist.
7. Vorrichtung nach Anspruch 6, dadurch gekennzeichnet, daß die Mittel zum Ausgeben von Daten einen Adressengenerator (44) umfassen, der einen Speicherausgabebefehl bei Eingabe eines dritten Steuersignals (ADD EA) erzeugt.
8. Vorrichtung zum zufälligen Ausgeben von in einem Speicher (45) sequentiell gespeicherten Daten, gekennzeichnet durch eine Verzögerungseinrichtung (41), die während einer ersten Zeitperiode (T) ein erstes Steuersignal (IN_EA1) empfängt, während einer zweiten Zeitperiode (T1) ein zweites Steuersignal (COMP_EA) ausgibt und während einer dritten Zeitperiode (T2) ein drittes Steuersignal (ADD_EA) ausgibt;
einen Indexgenerator (43), der entweder das erste Steuersignal (IN_EA1) oder ein viertes Steuersignal empfängt und bei Empfang des ersten oder des vierten Steuersignals einen Index (I) ausgibt, wobei der Index (I) eine Stelle in dem Speicher (45) repräsentiert; und einen Komparator (42), der den Index (I) mit einem Referenzparameter (S) vergleicht, der die Größe der in dem Speicher (45) gespeicherten Daten repräsentiert, und bei Empfang des zweiten Steuersignals (IN_EA2) zum Indexgenerator (43) das vierte Steuersignal ausgibt, falls der Index (I) größer als der Referenzparameter (S) ist.
9. Vorrichtung nach Anspruch 8, dadurch gekennzeichnet, daß die dritte Zeitperiode (T2) größer als die zweite Zeitperiode (T1) und kleiner als die erste Zeitperiode (T) ist.
10. Vorrichtung nach Anspruch 9, gekennzeichnet durch einen Adressengenerator (44), der den Index (I) empfängt und dann, wenn er das dritte Steuersignal (ADD_EA) empfängt, an den Speicher (45) eine Speicheradresse ausgibt, die durch den Index (I) repräsentiert wird.
11. Vorrichtung nach Anspruch 10, dadurch gekennzeichnet, daß der Speicher (45) Daten ausgibt, die sich bei der Speicheradresse befinden.
12. Verfahren zum Ausgeben gespeicherter Daten aus einem Speicher (45), gekennzeichnet durch die folgenden Schritte:
sequentielles Speichern eingegebener Daten im Speicher (45);
Bestimmen der Größe (S) der gespeicherten eingegebenen Daten;
Empfangen eines ersten Steuersignals (IN_EA1) und Erzeugen eines ersten Index (I);
Vergleichen des ersten Index (I) mit der Datengröße (S) und Erzeugen eines zweiten Index (I), falls der erste Index (I) größer als die Datengröße (S) ist; Erzeugen eines zweiten Steuersignals (IN_EA2);
Ausgeben einer dem ersten Index (I) zugeordneten Speicheradresse, falls der zweite Index (I) nicht erzeugt wird; und
Ausgeben einer dem zweiten Index (I) zugeordneten Speicheradresse, falls der zweite Index (I) erzeugt wird.
13. Verschachtelungseinrichtung (40), die von einem Controller gesteuert wird und einen Adressengenerator (44) zum Ausgeben einer Adresse an einen Speicher (45) besitzt, wobei der Speicher (45) eingegebene Daten sequentiell speichert und bei der Adresse gespeicherte Daten ausgibt, wenn er die Adresse empfängt, wobei der Controller die Datengröße (S) der eingegebenen Daten bestimmt, gekennzeichnet durch eine Verzögerungseinrichtung (41), die ein primäres Indexfreigabesignal (IN_EA1) empfängt und während einer ersten Zeitperiode (T) ein Komparatorfreigabesignal (COMP_EA) ausgibt und während einer zweiten Zeitperiode (T1) ein Adressengenerator-Freigabesignal (ADD_EA) ausgibt;
einen Indexgenerator (43), der das primäre Indexfreigabesignal (IN_EA1) und ein sekundäres Indexfreigabesignal (IN_EA2) empfängt und bei Empfang des primären Indexfreigabesignals (IN_EA1) oder des sekundären Indexfreigabesignals (IN_EA2) einen Index (I) ausgibt; und
einen Komparator (42), der bei Empfang des Komparatorfreigabesignals (COMP_EA) den Index (I) mit der Datengröße (S) vergleicht und das sekundäre Indexfreigabesignal (IN_EA2) ausgibt, falls der Index (I) größer als die Datengröße (S) ist;
wobei ein Eingang des Adressengenerators (44) mit dem Ausgang des Indexgenerators (43) verbunden ist und wobei der Adressengenerator (44) bei Empfang des Adressengenerator-Freigabesignals (ADD_EA) eine Speicheradresse ausgibt, die dem zuletzt erzeugten Index (I) zugeordnet ist.
DE10256462A 2001-12-03 2002-12-03 Vorrichtung und Verfahren zum Minimieren der durch Puncturing verursachten Ausgangsverzögerung Withdrawn DE10256462A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/004,707 US6871270B2 (en) 2001-12-03 2001-12-03 Device and method for minimizing puncturing-caused output delay

Publications (1)

Publication Number Publication Date
DE10256462A1 true DE10256462A1 (de) 2003-07-24

Family

ID=21712125

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10256462A Withdrawn DE10256462A1 (de) 2001-12-03 2002-12-03 Vorrichtung und Verfahren zum Minimieren der durch Puncturing verursachten Ausgangsverzögerung

Country Status (8)

Country Link
US (2) US6871270B2 (de)
JP (1) JP3730211B2 (de)
KR (1) KR20030045593A (de)
CN (1) CN1303834C (de)
DE (1) DE10256462A1 (de)
FR (1) FR2833115A1 (de)
GB (1) GB2383242B (de)
IT (1) ITMI20022518A1 (de)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7349691B2 (en) * 2001-07-03 2008-03-25 Microsoft Corporation System and apparatus for performing broadcast and localcast communications
US6954885B2 (en) * 2001-12-14 2005-10-11 Qualcomm Incorporated Method and apparatus for coding bits of data in parallel
EP1575175B1 (de) * 2004-03-10 2008-10-08 Telefonaktiebolaget LM Ericsson (publ) Addressgenerator für einen Verschachtelungsspeicher und einen Entschachtelungsspeicher
US7529724B1 (en) 2004-09-21 2009-05-05 Emc Corporation Servicing work requests between units of a storage device
US8122201B1 (en) * 2004-09-21 2012-02-21 Emc Corporation Backup work request processing by accessing a work request of a data record stored in global memory
US7437650B2 (en) * 2005-04-12 2008-10-14 Agere Systems Inc. Pre-emptive interleaver address generator for turbo decoders
IN2012DE00954A (de) 2012-03-29 2015-09-11 Samsung India Electronics Pvt Ltd
US10198462B2 (en) * 2012-04-05 2019-02-05 Microsoft Technology Licensing, Llc Cache management

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07253922A (ja) * 1994-03-14 1995-10-03 Texas Instr Japan Ltd アドレス生成回路
US5636224A (en) * 1995-04-28 1997-06-03 Motorola Inc. Method and apparatus for interleave/de-interleave addressing in data communication circuits
CN1150680C (zh) * 1997-07-30 2004-05-19 三星电子株式会社 自适应信道编码方法和装置
TW385602B (en) * 1998-05-26 2000-03-21 Koninkl Philips Electronics Nv Transmission system with adaptive channel encoder and decoder
TW377427B (en) * 1998-05-26 1999-12-21 Koninklijke Philips Electronics Nv Transmission system having a simplified channel decoder applicable to mobile phone systems for better reliability in serial transmission
US6339834B1 (en) * 1998-05-28 2002-01-15 Her Majesty The Queen In Right Of Canada, As Represented By The Minister Of Industry Through The Communication Research Centre Interleaving with golden section increments
US6304991B1 (en) * 1998-12-04 2001-10-16 Qualcomm Incorporated Turbo code interleaver using linear congruential sequence
KR100306282B1 (ko) * 1998-12-10 2001-11-02 윤종용 통신시스템의인터리빙/디인터리빙장치및방법
US6625234B1 (en) * 1998-12-10 2003-09-23 Nortel Networks Limited Efficient implementations of proposed turbo code interleavers for third generation code division multiple access
US6314534B1 (en) * 1999-03-31 2001-11-06 Qualcomm Incorporated Generalized address generation for bit reversed random interleaving
CA2368027C (en) * 1999-04-06 2006-03-28 Beong-Jo Kim 2-dimensional interleaving apparatus and method
JP2001196941A (ja) 2000-01-13 2001-07-19 Matsushita Electric Ind Co Ltd インタリーブ装置およびインタリーブ方法
US6549998B1 (en) * 2000-01-14 2003-04-15 Agere Systems Inc. Address generator for interleaving data
AU2001252744B2 (en) * 2000-04-21 2004-11-04 Samsung Electronics Co., Ltd Flexible data rate matching apparatus and method in a data communication system
EP2293452B1 (de) * 2000-07-05 2012-06-06 LG ELectronics INC. Verfahren zum Punktieren eines turbocodierten Datenblock
US6996767B2 (en) * 2001-08-03 2006-02-07 Combasis Technology, Inc. Memory configuration scheme enabling parallel decoding of turbo codes

Also Published As

Publication number Publication date
US7093085B2 (en) 2006-08-15
GB2383242A (en) 2003-06-18
US20030105913A1 (en) 2003-06-05
CN1440209A (zh) 2003-09-03
US20050039106A1 (en) 2005-02-17
FR2833115A1 (fr) 2003-06-06
JP2003224479A (ja) 2003-08-08
JP3730211B2 (ja) 2005-12-21
GB0227187D0 (en) 2002-12-24
GB2383242B (en) 2004-03-24
ITMI20022518A1 (it) 2003-06-04
US6871270B2 (en) 2005-03-22
KR20030045593A (ko) 2003-06-11
CN1303834C (zh) 2007-03-07

Similar Documents

Publication Publication Date Title
DE3105199C2 (de) Verfahren und System zur Übertragung von Datenpaketen
EP0717503B1 (de) Digitales Codier- und Decodierverfahren
DE68925547T2 (de) Vorrichtung und Verfahren zur Zeichenbegrenzungsermittlung in einem seriellen codierten Datenstrom
DE3702490A1 (de) Verfahren und vorrichtung zur digitalen nachrichtenuebertragung und/oder -aufzeichnung und -wiedergabe
EP0698316B1 (de) Verfahren zum Übertragen von Bildern mit ungleichem Fehlerschutz
DE68923012T2 (de) Kodierungs- und Dekodierungsverfahren variabler Länge, Kodierungs- und Dekodierungsvorrichtung zur Ausführung dieses Verfahrens.
DE2805294C2 (de) Codierende Übertragungsanlage für Faksimile-Signale
DE3736193A1 (de) Sprachsignal-kodierverfahren
DE2558264B2 (de) Verfahren zur Verdichtung binärer Bilddaten
DE3027579A1 (de) Verfahren zum detektieren eines digitalen kodewortes und kodedetektor zum durchfuehren des verfahrens
DE2556625C3 (de)
DE10256462A1 (de) Vorrichtung und Verfahren zum Minimieren der durch Puncturing verursachten Ausgangsverzögerung
DE2826450C3 (de) Verfahren zum Steuern der Übertragung digitaler Signale und Anordnung zur Durchführung des Verfahrens bei einer digitalen Faksimileübertragungseinrichtung
DE2403651C3 (de) Schaltungsanordnung für die nichtlineare Umwandlung von digitalen Binärziffern in digitale Signale
DE60014367T2 (de) Zeitschlitz aufteilung in einem tdma system
DE10010238C2 (de) Verfahren zum Speichern von Pfadmetriken in einem Viterbi-Decodierer
DE60125571T2 (de) Verfahren und anordnung zur bereitstellung eines optimalen bitschutzes vor übertragungsfehlern
WO2001026274A1 (de) Verfahren und vorrichtung zum übermitteln von datenrahmen und verfahren und vorrichtung zur datenratenanpassung
EP1155498B1 (de) Vorrichtung und verfahren zum erzeugen eines datenstroms und vorrichtung und verfahren zum lesen eines datenstroms
DE2838228B2 (de) Verfahren zum Synchronisieren einer Datenbitfolge
DE69736647T2 (de) Digitale Multiplex-Vorrichtung
EP1232599B1 (de) Anordnung zum erzeugen eines digital modulierten prüfsignals
EP0479268B1 (de) Schaltungsanordnung und Verfahren zur getakteten Korrelations- und Signalverarbeitung mittels strukturprogrammierbarem Prozessor
DE3022047A1 (de) Digitales uebertragungssystem mit codier- und decodiervorrichtungen
EP0894381B1 (de) Verfahren zur steuerung des zugriffs auf einen von mehreren datenquellen gemeinsam benutzten übertragungskanal

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8139 Disposal/non-payment of the annual fee