DE20023169U1 - Turbo-Verschachtelungsvorrichtung - Google Patents

Turbo-Verschachtelungsvorrichtung

Info

Publication number
DE20023169U1
DE20023169U1 DE20023169U DE20023169U DE20023169U1 DE 20023169 U1 DE20023169 U1 DE 20023169U1 DE 20023169 U DE20023169 U DE 20023169U DE 20023169 U DE20023169 U DE 20023169U DE 20023169 U1 DE20023169 U1 DE 20023169U1
Authority
DE
Germany
Prior art keywords
weight
pos
interleaver
information bits
last
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.)
Expired - Lifetime
Application number
DE20023169U
Other languages
English (en)
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=26635221&utm_source=***_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=DE20023169(U1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of DE20023169U1 publication Critical patent/DE20023169U1/de
Anticipated expiration legal-status Critical
Expired - Lifetime 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
    • 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/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/2703Coding, 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 the interleaver involving at least two directions
    • H03M13/271Row-column interleaver with permutations, e.g. block interleaving with inter-row, inter-column, intra-row or intra-column permutations
    • 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/2703Coding, 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 the interleaver involving at least two directions
    • H03M13/271Row-column interleaver with permutations, e.g. block interleaving with inter-row, inter-column, intra-row or intra-column permutations
    • H03M13/2714Turbo interleaver for 3rd generation partnership project [3GPP] universal mobile telecommunications systems [UMTS], e.g. as defined in technical specification TS 25.212
    • 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/276Interleaving address generation
    • H03M13/2764Circuits therefore
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2562DVDs [digital versatile discs]; Digital video discs; MMCDs; HDCDs
    • 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

Landscapes

  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Detection And Correction Of Errors (AREA)
  • Ultra Sonic Daignosis Equipment (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
  • Container Filling Or Packaging Operations (AREA)
  • Transition And Organic Metals Composition Catalysts For Addition Polymerization (AREA)
  • Control Of Positive-Displacement Air Blowers (AREA)
  • Television Systems (AREA)
  • Complex Calculations (AREA)
  • Radar Systems Or Details Thereof (AREA)

Description

G4882-087/nf *l &Iacgr; I I ·" · · ·\
TURBO-VERSCHACHTELUNGSVORRICHTUNG HINTERGRUND DER ERFINDUNG
1. Sachgebiet der Erfindung
Die vorliegende Erfindung bezieht sich allgemein auf einen Turbo-Codierer, verwendet für Funkkommunikationssysteme (umfassend Satelliten-, ISDN-, Digital-Zellular-, W-CDMA- und IMT-2000 Systeme), und insbesondere auf eine interne Verschachtelungseinrichtung
bzw. einen Interleaver eines Turbo-Codierers.
2. Beschreibung des in Bezug stehenden Stands der Technik
Allgemein rechnet ein Interleaver, verwendet für einen Turbo-Codierer, eine Adresse eines Eingangs-Informations-Worts auf Zufallszeichen um (randomisiert) und verbessert eine Distanzeigenschaft eines Codeworts. Insbesondere ist entschieden worden, dass ein Turbo-Code in einem zusätzlichen Kanal (oder einem Daten-Übertragungskanal) von IMT-2000 (oder CDMA-2000) und IS-95C Air-Interfaces und in einem Daten-Kanal von UMTS (Universal Mobile Telecommunication System), vorgeschlagen durch ETSI (European Telecommunication Standards Institute), verwendet werden wird. Demzufolge ist eine Vorrichtung zum Umsetzen eines Interleavers für diesen Zweck erforderlich. Zusätzlich bezieht sich die Erfindung auf einen Fehler-Korrektur-Code, der stark die Funktionsverbesserung von existierenden und zukünftigen, digitalen Kommunikationssystemen beeinflusst.
Für einen existierenden, internen Interleaver für einen Turbo-Codierer (nachfolgend bezeichnet als ein Turbo-Interleaver) sind verschiedene Interleaver vorgeschlagen worden, wie beispielsweise ein PN-(Pseudo Noise)-Random-Interleaver, ein Random-lnterleaver, ein Block-Interleaver, ein Nicht-Linear-Interleaver und ein S-Random-Interleaver. Allerdings sind bisher solche Interleaver nur Algorithmen gewesen, ausgelegt dazu, deren Funktionsweisen im Hinblick auf wissenschaftliche Untersuchungen, im Gegensatz zu einer Implementierung, zu verbessern. Deshalb muss, wenn ein tatsächliches System ausgeführt wird, die Hardware-Umsetzungs-Komplexität berücksichtigt werden. Eine Beschreibung wird nun in Bezug auf Eigenschaften und Probleme, die dem herkömmlichen Interleaver für den Turbo-Codierer zugeordnet sind, vorgenommen werden.
Die Funktionsweise des Turbo-Codierers hängt von seinem internen Interleaver ab. Allgemein erhöht eine Erhöhung in der Eingangs-Frame-Größe bzw. -Block-Größe (d.h. die Zahl von Informations-Bits, umfasst in einem Frame) die Effektivität des Turbo-Codierers. Allerdings bewirkt eine Erhöhung einer Interleaver-Größe eine geometrische Vergrößerung bei Berechnungen. Deshalb ist es allgemein nicht möglich, den Interleaver für die große Frame-Größe bzw. Block-Größe auszuführen.
Deshalb werden allgemein die Interleaver durch Bestimmung von Zuständen, die verschiedene, gegebene Kriterien erfüllen, ausgeführt. Diese Kriterien sind wie folgt: Distanzeigenschaft (Distance Property): Die Distanz bzw. der Abstand zwischen benachbarten Code-Wort-Symbolen sollte in einem bestimmten Umfang beibehalten werden. Dies hat dieselbe Funktion wie eine Code-Wort-Distanz-Eigenschaft des konvolutionalen Codes, und als ein Kriterium, das dies anzeigt, wird ein minimaler, freier Abstand verwendet, der einen Wert eines Code-Wort-Pfads oder einer Code-Wort-Sequenz mit dem minimalen Hamming-Gewicht von den Code-Symbol-Sequenzen (oder Code-Wort-Pfaden), ausgegeben auf dem Trellis, ist. Allgemein ist es bevorzugt, dass der Interleaver so ausgelegt werden sollte, um den längeren freien Abstand bzw. die Distanz zu haben, falls dies möglich ist.
Random-Eigenschaft (Random Property): Ein Korrelationsfaktor zwischen Ausgangs-Wort-Symbolen nach einer Verschachtelung sollte viel niedriger als ein Korrelationsfaktor zwischen originalen Eingangs-Wort-Symbolen vor einer Verschachtelung sein. Das bedeutet, dass eine Umsetzung auf Zufallszeiten zwischen den Ausgangs-Wort-Symbolen vollständig durchgeführt werden sollte. Dies führt zu einem direkten Effekt auf die Qualität von Störinformationen, erzeugt bei einem kontinuierlichen Decodieren.
Obwohl die vorstehenden Kriterien bei einem allgemeinen Turbo-Interleaver anwendbar sind, ist es schwierig, klar die Eigenschaften zu analysieren, wenn sich der Interleaver in der Größe erhöht.
Zusätzlich ist ein anderes Problem, das auftritt, wenn der Turbo-Interleaver ausgelegt wird, dasjenige, dass der minimale, freie Abstand des Turbo-Codes entsprechend dem Typ des Eingangs-Code-Worts variiert. Das bedeutet, dass, wenn das Eingangs-Informations-Wort ein spezifisches Sequenz-Muster, definiert als ein kritisches Informations-Sequenz-Muster (Critical Information Sequenz Pattern - CISP), besitzt, der freie Abstand der Ausgangs-Code-Symbole, erzeugt von dem Turbo-
• - 3··
Codierer, einen sehr kleinen Wert besitzt. Falls das Eingangs-Informations-Wort ein Hamming-Gewicht 2 besitzt, tritt das CISP auf, wenn das Eingangs-Informations-Wort zwei Informations-Bits von "1" hat, und kann auch auftreten, wenn das Eingangs-Informations-Wort drei oder mehr Informations-Bits von "1" besitzt. Allerdings wird in den meisten Fällen, wenn das Eingangs-Informations-Wort zwei Informations-Bits von "1" besitzt, der minimale, freie Abstand gebildet und die meisten Fehlerereignisse treten in diesem Zustand auf. Deshalb wird, wenn der Turbo-Interleaver ausgelegt wird, allgemein eine Analyse für den Fall vorgenommen, wo das Eingangs-Informations-Wort das Hamming-Gewicht 2 besitzt. Ein Grund, dass das CISP existiert, ist der, dass der Turbo-Codierer allgemein einen RSC (Recursive Systematic Convolutional Codes) Codierer für die Komponenten-Codierer, dargestellt in Figur 1 (wird weiter nachfolgend beschrieben), verwendet. Um die Funktionsweise des Turbo-Codierers zu verbessern, sollte ein Grund-Polynom für ein Rückführ-Polynom (gf(x) von Fig. 1) von den Generator-Polynomen für den Komponenten-Codierer verwendet werden. Deshalb wiederholt, wenn die Zahl der Speicher des RSC Codierers m ist, eine Rückführ-Sequenz, erzeugt durch das Rückführ-Polynom, kontinuierlich dasselbe Muster unter einer Periode von 2m-1. Deshalb werden, falls das Eingangs-Informations-Wort "1" bei dem Fall entsprechend dieser Periode empfangen wird, dieselben Informations-Bits mit EXKLUSIV-ODER verknüpft, so dass der Zustand des RSC Codierers ein Gesamt-Null-Zustand von nun an wird, um so die Ausgangs-Symbole von allen O'en zu erzeugen. Dies bedeutet, dass das Hamming-Gewicht des Codeworts, erzeugt durch den RSC Codierer, einen konstanten Wert nach diesem Ereignis hat. Das bedeutet, dass der freie Abstand des Turbo-Codes nach dieser Zeit beibehalten wird und das CISP wird ein Hauptfall einer Verringerung in dem freien Abstand des Turbo-Codierers, wogegen, wie vorstehend angemerkt ist, ein großer, freier Abstand wünschenswert ist.
In diesem Fall (bei dem Turbo-Interleaver nach dem Stand der Technik) zerstreut, um den freien Abstand zu erhöhen, der Turbo-Interleaver unter Zufall das CISP Eingangs-Informations-Wort, um so eine Verringerung in dem freien Abstand an dem Ausgangs-Symbol des RSC Codierers der anderen Komponenten zu verhindern.
Die vorstehend angegebenen Eigenschaften sind grundsätzliche Merkmale des bekannten Turbo-Interleavers. Allerdings ist es für das CISP herkömmlich, dass das Informations-Wort das minimale Hamming-Gewicht besitzt, wenn das Eingangs-
♦ i
Informations-Wort das Hamming-Gewicht 2 besitzt. Mit anderen Worten wurde die Tatsache, dass das CISP gerade dann erzeugt werden kann, wenn das Eingangs-Informations-Wort das Hamming-Gewicht 1 besitzt (d.h. wenn das Eingangs-Informations-Wort ein Informations-Bit von "1" besitzt), übersehen, wenn die Informations-Wort-Eingabe zu dem Turbo-Codierer den Typ eines Blocks, aufgebaut aus Frames bzw. Blöcken, besaß.
Zum Beispiel zeigt ein Prime-Interleaver (PIL), ausgelegt als das Arbeitsmodell des Turbo-Code-Interleavers, spezifiziert durch den derzeitigen UMTS Standard, solche Probleme, was demzufolge eine verschlechterte Eigenschaft eines freien Abstands hat. Das bedeutet, dass der Ausführungs-Algorithmus des Modell-PIL-Turbo-Interleavers 3 Stufen umfasst, wobei die zweite Stufe, die die wichtigste Rolle spielt, eine Zufalls-Permutation in Bezug auf die Informations-Bits der jeweiligen Gruppen durchführt. Die zweite Stufe wird in drei Fälle unterteilt, Fall A, Fall B und Fall C, und der Fall B umfasst immer den Fall, bei dem der freie Abstand aufgrund des Ereignisses verringert wird, bei dem das Eingangs-Informations-Wort das Hamming-Gewicht 1 besitzt. Zusätzlich umfasst der Fall C gerade eine Möglichkeit dahingehend, dass ein solches Ereignis auftreten wird. Die detaillierten Probleme werden später unter Bezugnahme auf den PIL beschrieben werden.
Zusammengefasst sollte, wenn verschiedene Interleaver-Größen erforderlich sind, und die Hardware-Ausführungs-Komplexität in dem IMT-2000 oder UMTS System begrenzt ist, der Turbo-Interleaver so ausgelegt werden, um die optimale Interleaver-Funktion zu garantieren, indem die Einschränkungen berücksichtigt werden. Das bedeutet, dass der erforderliche Interleaver in der Lage sein sollte, eine gleichförmige Funktionsweise für verschiedene Verschachtelungs-Größen zu garantieren, während die vorstehend angegebenen Eigenschaften erfüllt werden. Genauer gesagt sind dabei verschiedene Typen von Interleavem für einen PCCC (Parallel Concatenated Convolutional Codes) Turbo-Interleaver vorgeschlagen worden und ein LCS (Linear Congruential Sequence) Turbo-Interleaver ist vorläufig als der Turbo-Interleaver in den IMT-2000 (oder CDMA-2000) und IS-95C Spezifikationen entschieden worden. Allerdings haben die meisten dieser Turbo-Interleaver die Probleme des CSIP mit einem Hamming-Gewicht 1 und die Details zum Ausführen dieser Turbo-Interleaver sind noch nicht definiert. Deshalb schlägt die vorliegende Erfindung eine Lösung für die Probleme eines Turbo-Interleavers, und eine neue Vor-
richtung zum Ausführen des Turbo-Interleavers, vor. Zusätzlich zeigt die Erfindung den PIL Interleave^ der eine Arbeitsvorgabe des UMTS Turbo-Interleavers ist, und schlägt eine Lösung eines solchen Problems dieses Interleaves vor.
Um zusammenzufassen hat der Stand der Technik die folgenden Nachteile.
(1) Der Turbo-Interleaver ist für eine infinite Frame- bzw. Block-Größe auf der Basis des CISP ausgelegt, für das das Eingangs-Informations-Wort das Hamming-Gewicht 2 besitzt, ohne Berücksichtigung der Tatsache, dass eine Bestimmung des CISP gemäß dem Typ des Eingangs-Informations-Worts auf die Frame- bzw. Block-Größe beschränkt ist. Allerdings besitzt, in einem tatsächlichen System, der Frame bzw. Block eine finite Größe, was demzufolge eine Herabsetzung des freien Abstands des Turbo-Codes bewirkt.
(2) Beim Auslegen des existierenden Turbo-Interleavers wurde die Tatsache, dass das Eingangs-Informations-Wort ein Hamming-Gewicht 1 haben kann, nicht berücksichtigt. Mit anderen Worten sollte, für die finite Frame- bzw. Block-Größe, die Turbo-Interleaver-Design-Regel unter Berücksichtigung der Tatsache bestimmt werden, dass der minimale, freie Abstand, erzeugt in dem PCCC Turbo-Codierer, durch das CISP bestimmt wird, das das Hamming-Gewicht 1 besitzt. Allerdings wurde dies nicht vollständig für die existierenden Turbo-Interleaver berücksichtigt.
(3) Der Prime-Interleaver (PIL), ausgelegt als die Arbeitsanwendung des Turbo-Code-Interleavers, definiert durch die UMTS Spezifikation, umfasst solche Probleme, was zu einer verschlechterten Funktion des freien Abstands führt.
ZUSAMMENFASSUNG DER ERFINDUNG
Es ist deshalb eine Aufgabe der vorliegenden Erfindung, eine Verschachtelungsvorrichtung bzw. einen Interleaver zum Analysieren von Eigenschaften eines Turbo-Interleavers und eine Eigenschaft eines Sequenz-Musters kritischer Informationen (Critical Information Sequence Pattern - CISP) zu schaffen, um die Funktionsweise des Turbo-Interleavers zu verbessern.
Es ist eine andere Aufgabe der vorliegenden Erfindung, eine Verschachtelungsvorrichtung zum Verbessern der Funktion des freien Abstands eines Turbo-Codes für den Fall zu schaffen, bei dem ein Eingangs-Informations-Wort ein Hamming-Gewicht
1 besitzt, wenn das Informations-Wort, eingegeben in den Turbo-Interleaver, einen Block-Typ besitzt, aufgebaut aus Frames bzw. Blöcken.
Es ist eine weitere Aufgabe der vorliegenden Erfindung, eine Verschachtelungsvorrichtung und ein -verfahren zum Lösen des Problems zu schaffen, dass der freie Abstand verringert wird, wenn ein Eingangs-Informations-Wort ein Hamming-Gewicht 1 in einem Prime-Interleaver (PIL) besitzt, der der Turbo-Interleaver ist, spezifiziert in der UMTS Spezifikation.
Diese Aufgabe wird durch die Gegenstände der Ansprüche 1, 5 und 7 gelöst.
KURZE BESCHREIBUNG DER ZEICHNUNGEN
Die vorstehenden und andere Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung werden aus der nachfolgenden, detaillierten Beschreibung ersichtlich werden, wenn sie in Verbindung mit den beigefügten Zeichnungen vorgenommen wird, in denen:
Fig. 1 zeigt ein Diagramm, das einen allgemeinen, parallelen Turbo-Codierer darstellt;
Fig. 2 zeigt ein Diagramm, das einen allgemeinen Interleaver darstellt;
Fig. 3 zeigt ein Diagramm, das einen allgemeinen De-Interleaver darstellt;
Fig. 4 zeigt ein Diagramm, das ein Verfahren zum Erzeugen eines Sequenz-Musters für kritische Informationen (CISP) in einem Turbo-Interleaver darstellt;
Fig. 5 zeigt ein Diagramm, das ein anderes Verfahren zum Erzeugen des CISP in dem Turbo-Interleaver darstellt;
Fig. 6 zeigt ein Diagramm, das ein Verfahren zum Lösen eines Problems darstellt, das auftritt, wenn das CISP von Fig. 4 erzeugt wird;
Fig. 7 zeigt ein Diagramm, das ein Verfahren zum Lösen eines Problems darstellt, das auftritt, wenn das CISP von Fig. 5 erzeugt wird;
Fig. 8 zeigt ein Diagramm, das ein anderes Verfahren zum Lösen eines Problems darstellt, das auftritt, wenn das CISP in dem Turbo-Interleaver erzeugt wird;
Fig. 9 zeigt ein Diagramm, das ein Verfahren zum Erzeugen des CISP in einem zweidimensionalen Turbo-Interleaver darstellt;
Fig. 10 zeigt ein Diagramm, das ein Verfahren zum Lösen eines Problems darstellt, das auftritt, wenn das CISP von Fig. 7 erzeugt wird;
Fig. 11 zeigt ein Blockdiagramm, das eine Verschachtelungsvorrichtung zum Unterdrücken des CISP gemäß einer Ausführungsform der vorliegenden Erfindung darstellt; und
Fig. 12 zeigt ein Flussdiagramm zum Erläutern eines Verschachtelungsverfahrens eines modifizierten PIL (Prime Interleave^ gemäß einer Ausführungsform der vorliegenden Erfindung.
DETAILLIERTE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORM
Eine bevorzugte Ausführungsform der vorliegenden Erfindung wird hier nachfolgend unter Bezugnahme auf die beigefügten Zeichnungen beschrieben. In der folgenden Beschreibung werden ausreichend bekannte Funktionen oder Konstruktionen nicht im Detail beschrieben werden, da sie die Erfindung in unnötigem Detail verschleiern würden.
Vor einer Beschreibung der Erfindung wird die Beschreibung die Probleme darlegen, die auftreten, wenn ein Eingangs-Informations-Wort, das eines der Design-Kriterien ist, verwendet in dem existierenden Turbo-Interleaver/De-Interleaver, auf einer Frame-Einheit-Basis bzw. Block-Einheit-Basis verarbeitet wird, und dann ein Effekt analysiert wird, dass das CISP mit einem Hamming-Gewicht 1 das Hamming-Gewicht der Ausgangs-Code-Symbole besitzt. Als nächstes wird die Beschreibung ein Verfahren angeben, um die Probleme zu lösen und den Funktionsunterschied durch Analyse des minimalen, freien Abstands zu verifizieren.
Fig. 1 stellt eine Struktur eines allgemeinen, parallelen Turbo-Codierers dar, der im Detail in dem US-Patent Nr. 5,446,474, herausgegeben am 29. August 1995, offenbart ist, das hier unter Bezugnahme darauf eingeschlossen wird.
Wie Fig. 1 zeigt, umfasst der Turbo-Codierer einen ersten Komponenten-Codierer 111 zum Codieren von Eingangs-Frame-Daten, einen Interleaver 112 zum Verschachteln der Eingangs-Frame-Daten und einen zweiten Komponenten-Codierer 113 zum Codieren eines Ausgangs des Interleaves 112. Ein bekannter RSC (Recursive Systematic Convolutional CODES) Codierer wird typischerweise für den ersten und den zweiten Komponenten-Codierer 111 und 113 verwendet. Nachfolgend wird der erste RSC Komponenten-Codierer 111 als RSC1 bezeichnet und der zweite RSC Komponenten-Codierer 113 wird als RSC2 bezeichnet. Weiterhin besitzt
der Interleaver 112 dieselbe Größe wie der Eingangs-Informations-Bit-Frame und ordnet die Sequenz der Informations-Bits, geliefert zu dem zweiten Komponenten-Codierer 113, zu, um die Korrelation zwischen den Informations-Bits zu reduzieren.
Die Fig. 2 und 3 stellen grundsätzliche Strukturen des allgemeinen Interleaves und des De-Interleavers jeweils dar.
Unter Bezugnahme auf Fig. 2 wird ein Interleaver zum Verschachteln von Frame-Daten, ausgegeben von dem ersten Komponenten-Codierer, beschrieben. Ein Adressen-Generator 211 erzeugt eine Lese-Adresse zum Ändern der Sequenz der Eingangs-Daten-Bits gemäß einer Eingangs-Frame-Datengröße L und eines Eingangstakts und versorgt einen Interleaver-Speicher 212 mit der erzeugten, gelesenen Adresse. Der Interleaver-Speicher 212 speichert sequenziell Eingangsdaten in einem Schreibmodus eines Betriebs und gibt die gespeicherten Daten entsprechend der gelesenen Adresse, geliefert von dem Adressen-Generator 211, in einem Lesemode eines Betriebs aus. Ein Zähler 213 zählt den Eingangstakt und liefert den Taktzählwert zu dem Interleaver-Speicher 212 als eine Schreibadresse. Wie vorstehend beschrieben ist, speichert der Interleaver sequenziell Eingangs-Daten in dem Interleaver-Speicher 212 in dem Schreibmode eines Betriebs und gibt die Daten, gespeichert in dem Interleaver-Speicher 212, gemäß der gelesenen Adresse, geliefert von dem Adressen-Generator 211, in dem Lesemode eines Betriebs, aus. Alternativ ist es auch möglich, die Sequenz der Eingangs-Daten-Bits vor einem Speichern von diesen in dem Interleaver-Speicher in dem Schreibmode eines Betriebs zu ändern und sequenziell die gespeicherten Daten in dem Lesemode eines Betriebs zu lesen.
Unter Bezugnahme auf Fig. 3 wird ein De-Interleaver beschrieben. Ein Adressen-Generator 311 erzeugt eine Schreibadresse zum Umspeichem der Sequenz der Eingangs-Daten-Bits in der originalen Sequenz entsprechend einer Eingangs-Frame-Datengröße L und eines Eingangstakts und liefert an einen De-Interleaver-Speicher 312 die erzeugte Schreibadresse. Der De-Interleaver-Speicher 312 speichert Eingangs-Daten entsprechend der Schreibadresse, geliefert von dem Adressen-Generator 311, in dem Schreibmode eines Betriebs, und gibt sequenziell die gespeicherten Daten in dem Lesemode eines Betriebs aus. Ein Zähler 313 zählt den Eingangstakt und liefert den Taktzählwert zu dem Interleaver-Speicher 312 als eine Lese-Adresse. Wie vorstehend beschrieben ist, besitzt der De-Interleaver dieselbe
&iacgr;-9"
Struktur wie der Interleaver, besitzt allerdings die umgekehrte Operation des Interleavers. Der De-Interleaver ist nur von dem Interleaver dahingehend unterschiedlich, dass die Eingangs-Daten unterschiedliche Sequenzen in sowohl dem Lese- als auch dem Schreibmode haben. Deshalb wird, zur Vereinfachung, die Beschreibung nachfolgend unter Bezugnahme nur auf den Interleaver vorgenommen.
Allgemein besitzt, da der Turbo-Code ein Linear-Block-Code ist, ein neues Informationswort, erhalten durch Hinzufügen eines Nicht-Null-Informationsworts zu einem Eingangs-Informations-Wort, dieselbe Codewort-Verteilungs-Eigenschaft. Deshalb wird, gerade obwohl die Eigenschaft basierend auf dem All-Null-Informations-Wort entwickelt ist, dieselbe Funktionsweise gegeben werden, verglichen mit der Funktionsweise, die unter Verwendung des Nicht-Null-Informationsworts bestimmt ist. Demzufolge wird eine Beschreibung nachfolgend unter Bezugnahme auf den Fall vorgenommen werden, bei dem das Eingangs-Informations-Wort das All-Null-Codewort ist. Das bedeutet, dass die Funktionsweise des Turbo-Codes unter der Annahme analysiert werden wird, dass das Eingangs-Informations-Wort alle Null-Bits hat und nur ein gegebenes Informations-Bit "1" ist.
Um die Funktionsweise des Turbo-Codierers zu verbessern, kann ein Grund-Polynom für ein Rückführ-Polynom von einem Generator-Polynom für den Komponenten-Codierer verwendet werden. Das Rückführ-Polynom ist durch Ausdrücken einer Abzweigung (tapping) gegeben, das einer Rückführung in den RSC Komponenten-Codierern 111, 113 der Fig. 1 in einem Polynom unterliegt, und das Rückführ-Polynom ist definiert als gf(x). Falls Fig. 1, dann gf(x)=1+x2+x3. Das bedeutet, dass die höchste Ordnung die Tiefe eines Speichers anzeigt, und die am weitesten rechts liegende Verbindung bestimmt, ob der Koeffizient x3 von gf(x) den Wert 0 oder 1 hat. Deshalb wiederholt, wenn die Zahl der Speicher für den RSC Codierer m ist, eine Rückführ-Sequenz, erzeugt durch das Rückführ-Polynom, kontinuierlich dasselbe Muster unter einer Periode von 2m-1. Demzufolge werden, wenn ein Eingangs-Informations-Wort "1" zu Anfang entsprechend zu dieser Periode empfangen wird (z.B. für m=3, wenn ein Eingangs-Informations-Wort von "10000001..." empfangen ist), dieselben Informations-Bits mit EXKLUSIV-ODER verknüpft, so dass der Zustand des RSC Codierers ein All-Null-Zustand folglich wird, was demzufolge die Ausgangs-Symbole von allen 0'en erzeugt. Dies bedeutet, dass das Hamming-Gewicht des Codeworts, erzeugt durch den RSC Codierer, den konstanten Wert von
1 nach diesem Ereignis hat. Das bedeutet, dass der freie Abstand des Turbo-Codes nach dieser Zeit beibehalten wird, und das CISP wird eine Hauptursache einer Verringerung in dem freien Abstand des Turbo-Codierers.
In diesem Fall verteilt, um den freien Abstand zu erhöhen, der Turbo-Interleaver unter Zufall das CISP Eingangs-Informations-Wort, um so eine Abnahme in dem freien Abstand an dem Ausgangs-Symbol des anderen Komponenten-RSC-Codierers zu verhindern. Tabelle 1 nachfolgend zeigt eine Rückführ-Sequenz, erzeugt von gf(x)=1+x2+x3. In Tabelle 1 zeigt X(t) ein Eingangs-Informations-Bit zu einer Zeit t des Eingangs-Informations-Worts an. Weiterhin zeigen m(t), m(t-1) und m(t-2) drei Speicherzustände des RSC Codierers jeweils an. Hierbei ist, da die Zahl von Speichern 3 ist, die Periode 23-1=7.
[Tabelle 1]
m(t) m(t-1) m(t-2) t=0 X(O)=I
1 O O t=1 X(I)=O
O 1 O t=2 X(2)=0
1 O 1 t=3 X(3)=0
1 1 O t=4 X(4)=0
1 1 1 t=5 X(5)=0
O 1 1 t=6 X(6)=0
O O 1 t=7 if X(7)=1
1 O O t=8
O O O t=9
O O O
Anhand von Tabelle 1 ist festzustellen, dass, falls X(t=1) zu der Zeit t 6=7 gilt, dann m(t), m(t-1) und m(t-2) alle Null-Zustände demzufolge werden. Deshalb wird das Hamming-Gewicht der folgenden Ausgangs-Symbole immer Null. In diesem Fall wird sich, falls der Turbo-Interleaver den RSC2 mit der Eingangs-Informations-Sequenz "10000001000..." liefert, wie es ist, das Hamming-Gewicht der Ausgangs-Symbole zu der folgenden Zeit von t=7 nicht danach ändern, gerade in dem RSC2, unter Verwendung desselben Rückführ-Polynoms, und zwar aus demselben Grund. Dies bewirkt eine Abnahme in dem freien Abstand der gesamten Ausgangs-Symbole des Turbo-Codierers. Um dies zu verhindern, ändert der Turbo-Interleaver die originale Eingangs-Informations-Sequenz "10000001000..." zu einer Eingangs-Informations-Sequenz eines unterschiedlichen Musters (zum Beispiel ändert sich eine Position
des Informations-Bits "1" entsprechend 110000000...) und liefert die sich ergebende Sequenz zu dem RSC2. Deshalb erhöht sich, gerade obwohl eine Erhöhung in dem Hamming-Gewicht in dem RSC1 gestoppt wird, das Hamming-Gewicht kontinuierlich in dem RSC2, so dass sich der gesamte freie Abstand des Turbo-Codierers erhöht. Dies kommt daher, dass das Rückführ-Polynom, das den Infinit-Impuls-Ansprech-(IIR)-Filter-Typ besitzt, kontinuierlich das infinite Ausgangs-Symbol "1" gerade für ein Eingangs-Informations-Bit "1" erzeugt. Gleichung 1 nachfolgend stellt die Beziehung zwischen dem RSC1 und dem RSC2 im Hinblick auf das Hamming-Gewicht oder den freien Abstand des Turbo-Codierers dar.
[Gleichung 1]
HW(Ausgangs-Code-Sequenz) = HW(RSCI Code-Sequenz) + HW(RSC2 Code-Sequenz) wobei HW das Hamming-Gewicht ist.
Aus Gleichung 1 ist festzustellen, dass eine Hamming-Gewicht-Balance zwischen RSC1 und RSC2 sehr wichtig ist. Insbesondere ist festzustellen, dass der minimale, freie Abstand des Turbo-Codes für das minimale Hamming-Gewicht des Eingangs-Informations-Worts erzeugt wird, wenn die NR (Infinite Impulse Response) Charakteristik des RSC Codierers berücksichtigt wird. Allgemein wird der minimale, freie Abstand erzielt, wenn das Eingangs-Informations-Wort das Hamming-Gewicht 2 besitzt, wie dies vorstehend erwähnt ist.
Allerdings tritt, wie vorstehend beschrieben ist, der minimale freie Abstand auf, wenn das Eingangs-Informations-Wort das Hamming-Gewicht 3, 4, 5, ..., besitzt, ebenso wie dann, wenn das Eingangs-Informations-Wort das Hamming-Gewicht 2 hat. Dies tritt auf, wenn das Eingangs-Informations-Wort auf einer Frame-Einheit-Basis empfangen wird, wie folgt.
Zum Beispiel wird, wenn nur das Informations-Bit, angeordnet an der letzten Position des Eingangs-Informations-Worts, d.h. die letzte Position des Frame, "1" ist und alle anderen Informations-Bits 0'en sind, das Hamming-Gewicht des Eingangs-Informations-Worts 1. In diesem Fall wird die Zahl von Symbolen "1", ausgegeben von dem RSC1, sehr klein, da dort nicht weiter ein Eingangs-Informations-Wort vorhanden ist. Natürlich existieren, wenn Null-End-Bits (Zero Tail Bits) verwendet werden, dort zwei Symbole, allerdings werden diese unabhängig verwendet im Gegensatz dazu, dass sie einer Turbo-Verschachtelung unterworfen werden. Deshalb wird hier angenommen, dass das Gewicht leicht erhöht wird. Da das konstante Gewicht
addiert wird, wird dies von einer Analyse des Interleavers ausgeschlossen werden. In diesem Fall ist anhand von Gleichung 1 festzustellen, dass der RSC2 eine große Zahl von Ausgangs-Symbolen "1" erzeugen sollte, um den gesamten, freien Abstand zu erhöhen.
Nun wird, unter Bezugnahme auf die Fig. 4 bis 10, eine Beschreibung vergleichend unter Berücksichtigung der Probleme des Stands der Technik und der Lösungen der Probleme vorgenommen.
In den Fig. 4 bis 10 geben die quer schraffierten Teile die Position an, wo das Eingangs-lnformations-Bit "1" ist, und die anderen Teile geben die Positionen an, wo das Eingangs-Informations-Bit "0" ist.
Falls, wie in Fig. 4 dargestellt ist, der Turbo-Interleaver die Position des Eingangs-Informations-Worts verschiebt (oder permutiert), wo das Original-Symbol des RSC1 "1" ist, und zwar zu der letzten Position des Frame nach einer Verschachtelung, wird die Zahl von Ausgangs-Symbolen "1", erzeugt von dem RSC2, sehr klein werden. In diesem Fall verringert sich, da der RSC1 und der RSC2 eine sehr kleine Zahl von Ausgangs-Symbolen "1" entsprechend zu Gleichung 1 erzeugen, der gesamte, freie Abstand drastisch. Allerdings wird, falls, wie in Fig. 5 dargestellt ist, der Turbo-Interleaver die Position des Eingangs-Informations-Worts verschiebt, wo das originale Symbol des RSC1 "1" ist, zu der ersten Position oder einer Position nahe der voranführenden Position des Frame bzw. Blocks nach einer Verschachtelung, die Zahl von Ausgangs-Symbolen "1", erzeugt von dem RSC2, erhöht werden. Dies kommt daher, dass eine Vielzahl von Symbolen "1" über (N(lnterleaver Size)-h(a number of "1")) (N(lnterleaver-Größe)-h(eine Zahl von "1") Zustands-Übergängen für den RSC2 Codierer ausgegeben werden. In diesem Fall erzeugt der RSC2 eine große Zahl von Ausgangs-Symbolen "1", um dadurch den gesamten, freien Abstand zu erhöhen.
Zusätzlich zu dem verringerten, freien Abstand, der dann auftritt, wenn der interne Interleaver das Eingangs-Informations-Bit "1", angeordnet an der letzten Position des Frame, zu der letzten Position des Frame verschiebt, wie dies in Fig. 4 dargestellt ist, falls eines von zwei Informations-Bits von "1", angeordnet an der Endposition des Frame, noch an der endenden Position des Frame angeordnet sein wird (oder nahe dazu), gerade nach einer Verschachtelung, wie dies in Fig. 6 dargestellt ist, wird sich der gesamte, freie Abstand verringern.
. . &idigr; j j ;
Zum Beispiel ist, falls die Operationen des internen Interleaves in dem Frame-Mode, dargestellt in Fig. 6, wo zwei Symbole, angeordnet an der endenden Position des Frame, 1'en sind und die anderen Symbole alle O'en sind, dann das Hamming-Gewicht des Eingangs-Informations-Worts 2. In diesem Fall wird die Zahl von Ausgangs-Symbolen "1", erzeugt von dem RSC1, sehr klein, da dort kein weiteres Eingangs-lnformations-Bit vorhanden ist. Deshalb sollte, entsprechend Gleichung 1, der RSC2 eine große Anzahl von Ausgangs-Symbolen "1" erzeugen, um den gesamten, freien Abstand zu erhöhen. Allerdings wird, gerade dann, wie in Fig. 6 dargestellt ist, der Turbo-Interleaver die Position der vorstehenden zwei Symbole zu der endenden Position (oder nahe zu der endenden Position) des Frame, gerade nach einer Verschachtelung, verschieben, wobei der RSC2 auch eine kleine Anzahl von Ausgangs-Symbolen "1" erzeugt. Allerdings wird, falls, wie in Fig. 7 dargestellt ist, der Turbo-Interleaver die Position der vorstehenden zwei Symbole zu der voranführenden Position (oder nahe zu der voranführenden Position) des Frame verschiebt, der RSC2 eine große Anzahl von Symbolen "1" erzeugen. Das bedeutet, dass der RSC2 Codierer eine Vielzahl von Symbolen "1" über (N-H) Zustands-Übergänge (N= Interleaver Size (Interleaver-Größe), h= eine Zahl eines Symbols "1") ausgibt. In diesem Fall erzeugt deshalb der RSC2 die erhöhte Anzahl von Ausgangs-Symbolen "1", um dadurch den gesamten, freien Abstand zu erhöhen.
Dieses Prinzip kann auf den Fall erweitert werden, wo der Turbo-Interleaver in dem Frame-Mode arbeitet, dargestellt in Fig. 8, wo eine Vielzahl von Informations-Bits "1" an der endenden Periode (oder der Dauer) des Frame existiert und die anderen Informations-Bits alle O'en sind. Gerade in diesem Fall wird der gesamte, freie Abstand durch Verschieben der Informations-Bits, die an der endenden Position des Frame existieren, zu der voranführenden Position des Frame oder zu Positionen näher zu der voranführenden Position erhöht, wie dies in Fig. 8 dargestellt ist. Natürlich besitzt, da der Turbo-Code der Linear-Block-Code ist, gerade das neue Informationswort, erhalten durch Addieren eines Nicht-Null-Informationsworts zu einem solchen Informationswort, dieselbe Eigenschaft. Deshalb wird eine Beschreibung nachfolgend auf der Basis des All-Null-Informations-Worts vorgenommen.
Zusammengefasst sollten, wenn der Turbo-Interleaver ausgelegt wird, die folgenden Bedingungen ebenso wie die Zufallseigenschaft und die Abstandseigenschaft erfüllt
werden, um eine Funktionsweise des Turbo-Decodierers und den freien Abstand des Turbo-Codierers zu garantieren.
Zustand 1: Beim Auslegen jedes Turbo-Interleavers sollten die Informations-Bits entsprechend einer spezifischen Periode von der letzten Position des Frame zu der vordersten Position des Frame durch Verschachtelung verschoben werden, um den freien Abstand des Turbo-Codes zu erhöhen.
Zustand 2: Die Informations-Bits entsprechend zu der letzten Position des Frame sollten zu einer Position verschoben werden, die der letzten Position vorausgeht (falls möglich zu der voranführenden Position des Frame), und zwar durch Verschachtelung, um den freien Abstand des Turbo-Codes zu erhöhen.
Diese Zustände sind auf einen 2-dimensionalen Turbo-Interleaver ebenso wie auf den vorstehend beschriebenen 1-dimensionalen Interleaver anwendbar. Der 1-dimensionale Interleaver führt eine Verschachtelung aus, unter Berücksichtigung des Eingangs-Informations-Frame als eine Gruppe, wie in den Fig. 4 bis 8 dargestellt ist. Der 2-dimensionale Interleaver führt eine Verschachtelung durch Unterteilen des Eingangs-Informations-Frame in eine Mehrzahl von Gruppen durch. Fig. 9 stellt eine 2-dimensionale Verschachtelung dar, wobei das Eingangs-Informations-Wort das Hamming-Gewicht 1 besitzt.
Wie dargestellt ist, werden die Eingangs-Informations-Bits sequenziell in die jeweiligen Gruppen (oder Reihen) hineingeschrieben. Das bedeutet, dass die Eingangs-Informations-Bits sequenziell in die Gruppen (oder Reihen) rO, M, ..., r(R-1) geschrieben werden. In jeder Gruppe werden die Eingangs-Informations-Bits sequenziell von links nach rechts geschrieben. Danach ändert ein Turbo-Verschachtelungs-Algorithmus unter Zufall die Positionen von RxC Elementen (d.h. Eingangs-Informations-Bits), wobei R die Zahl von Reihen ist, C die Zahl von Spalten ist, oder, äquivalent, die Zahl von Informations-Bits in einer Gruppe. In diesem Fall ist es bevorzugt, den Turbo-Verschachtelungs-Algorithmus so auszulegen, dass das Informations-Bit, angeordnet an der letzten Position (oder der am weitesten rechts liegenden Position) der letzten Gruppe, an der vordersten Position angeordnet sein sollte, falls möglich, während der Ausgabe. Natürlich kann, in Abhängigkeit von der Reihenfolge eines Auswählens der Gruppen, das Eingangs-Informations-Bit, angeordnet an der letzten Position, zu der vordersten Position (oder nahe dazu) der entsprechenden Gruppen verschoben werden. Weiterhin können Zustand 1 und Zu-
stand 2 in einen k-dimensionalen Turbo-Interleaver (wobei k>2) ebenso wie in den 2-dimensionalen Interleaver normiert werden.
Fig. 10 stellt einen Fall dar, bei dem das Eingangs-Informations-Wort das Hamming-Gewicht von über 2 besitzt. Wie dargestellt ist, werden die Informations-Bits, angeordnet an der letzten Position der letzten Gruppe, zu den voranführenden Positionen der letzten Gruppe durch Verschachtelung verschoben. Natürlich wird die detaillierte Verschiebungs- (oder Verschachtelungs-) Regel gemäß einem Algorithmus für einen spezifischen Interleaver bestimmt. Die Erfindung liefert Zustand 1 und Zustand 2, die notwendigerweise beim Bestimmen der Verschachtelungs-Regelung erfüllt werden sollten.
Als nächstes wird eine Beschreibung des PIL Interleaves vorgenommen, der die Probleme des Stands der Technik besitzt, und dann wird eine weitere Beschreibung einer Lösung der Probleme vorgenommen, die der PIL Interleaver besitzt.
Erste Stufe, (1) bestimme, eine Reihen-Zahl, so dass
R = 10 in dem Fall gültig ist, dass die Zahl von Eingangs-Informations-Bits K 481 bis 530 ist, und
R = 20 in dem Fall gültig ist, dass die Zahl von Eingangs-Informations-Bits K irgendeine andere Block-Länge mit Ausnahme 481 bis 530 ist,
(2) bestimme eine Spalten-Zahl C, so dass für Fall 1 C=p=53 gültig ist, wobei &rgr; = minimale Primzahl, und Fall 2 ist
(i) finde minimale Primzahl p, so dass 0=<(p+1 )-K/R
(ii) falls (0=<p-K/R), dann gehe zu (iii), ansonsten C=p+1
(iii) falls (0=<p-1K/R), dann C=p-1, ansonsten C=p.
Eine zweite Stufe, FaII-B, falls C=p+1, von einem Verschachtelungs-Algorithmus, für den PIL Interleaver, der zuvor als UMTS Turbo-Codierer bestimmt wurde, wird zuerst beschrieben. In Gleichung 2 nachfolgend gibt R die Zahl von Gruppen (oder Reihen) an, und besitzt einen Wert von R=10 oder R=20. Weiterhin gibt C die Größe jeder Gruppe an und wird durch eine Primzahl &rgr; bestimmt, die am nächsten zu R/K liegt, bestimmt in Stufe 1, entsprechend einem Wert K/R, wobei K die Größe der tatsächlichen Eingangs-Informations-Bits eines Frame bzw. Blocks ist. In FaII-B gilt immer, dass C=p+1. Deshalb wird die tatsächliche Größe des PIL Interleaves ein Wert, bestimmt durch RxC, was größer als C ist. Weiterhin gibt Cj(i) eine Position der Informations-Bits an, erhalten durch zufälliges Permutieren der Position der Ein-
'MK-
gangs-Informations-Bits in der Gruppe auf der Basis einer i-ten Gruppe, wobei i=0,1,2,3,...,p. Zusätzlich zeigt Pj einen Anfangs-Einstell-Wert (initial seed value) an, gegeben für einen j-ten Reihen-Vektor, und wird zu Anfang durch den Algorithmus gegeben.
[Gleichung 2]
B-1) Ein Grund-Root (a primitive root) gO wird aus einer gegebenen Zufalls-Initialisierungs-Konstanten-Tabelle (3GPP TS 25.212 Tabelle 2; Tabelle einer Primzahl &rgr; (prime &rgr;) und eines zugeordneten Grund-Root) ausgewählt, so dass gO ein Grund-Root eines Felds, basierend auf der Primzahl p, ist.
B-2) Konstruieren einer Basis-Sequenz C(i), die für eine Reihen-Vektor-Randomisierung (Zufallserzeugung) verwendet werden soll, wird unter Verwendung der folgenden Formel erzeugt.
C(i)=[gO &khgr; C (i-1)] mod p, i=1,2,3 p-2, C(O)=I
B-3) Wähle die minimale Primzahl-Einstellung {q,, j=0,1,2,...,R-1} aus, so dass g.c.dfaj, p-1} = 1, cjj > 6 und qfqo-i),
wobei g.c.d ein größter, gemeinsamer Teiler ist und qo=1 gilt.
B-4) {Pj, j=0,1,2,...,R-1} was ein neuer Primzahl-Satz ist, wird aus {cy, j=0,1,2,...,R-1} berechnet, so dass &rgr;&rgr;&ogr;) = q gilt, wobei J=O, 1, ... R-1 und &rgr;&ohgr; das Inter-Reihen-Permutations-Muster, definiert in der dritten Stufe, ist.
B-5) Elemente der j-ten Intra-Reihen-Permutation als folgendes Verfahren.
Cj(i)=C([i &khgr; pj] mod (p-1)), i=0,1,2,3,...,p-2,
Cj(p-1)=0, und
Cj(P)=P
Eine dritte Stufe
Führe die Reihen-Permuation basierend auf den folgenden &rgr;0) (j=0,1,2,..., R-1) Mustern durch, wobei pfl) die originale Reihenposition der j-ten Permutations-Reihe ist.
Die Verwendung dieser Muster ist wie folgt; wenn die Zahl eines Eingangs-Informations-Bits K 320 bis 480 Bit ist, führe ein Gruppen-Auswahl-Muster pA durch, wenn die Zahl eines Eingangs-Informations-Bit K 481 bis 530 Bits ist, führe Gruppen-Auswahl-Muster pe durch, wenn die Zahl eines Eingangs-Informations-Bit K 531 bis 2280 Bit ist, führe ein Gruppen-Auswahl-Muster pA durch, wenn die Zahl eines Eingangs-Informations-Bit K 2281 bis 2480 Bit ist, führe ein Gruppen-Auswahl-
Muster &rgr;&Bgr; durch, wenn die Zahl eines Eingangs-Informations-Bit K 2481 bis 3160 Bit ist, führe ein Gruppen-Auswahl-Muster pA durch, wenn die Zahl eines Eingangs-Informations-Bit K 3161 bis 310 Bit ist, führe ein Gruppen-Auswahl-Muster pB durch, und wenn die Zahl eines Eingangs-Informations-Bit K 3211 bis 5114 Bit ist, führe ein Gruppen-Auswahl-Muster pA durch. Das Gruppen-Auswahl-Muster ist wie folgt;
pA: {19, 9, 14, 40, 2, 5, 7, 12, 18, 10, 8, 13, 17, 3, 1, 16, 6, 15, 11} für R=20
pB: {19, 9, 14,40,2,5,7, 12, 18, 16, 13, 17, 15,3, 1,6, 11,8, 10}fürR=20
Pc: {9, 8, 7, 6, 5, 4, 3, 2, 1,0} für R=10.
Es sollte hier angemerkt werden, dass die letzte Operation von B-5) als Cj(p)=p definiert ist. Das bedeutet, dass dann, wenn die Position des Eingangs-Informations-Bits vor einer Verschachtelung &rgr; ist, die Position des Eingangs-Informations-Bits an der Position &rgr; gerade nach einer PIL Verschachtelung beibehalten wird. Deshalb halten für die letzte Gruppe (j=19) die Informations-Bits CR.i(P)=Ci9(p), die an der letzten Position existieren, dieselbe Position i=P bei, die die letzte Position der 19. Gruppe ist. Deshalb wird Zustand 2 für ein Auslegen des Turbo-Interleavers nicht erfüllt.
Das bedeutet, dass, um das Problem zu lösen, das der PIL Interleaver hat, Algorithmus-Schritt B-5) wie folgt modifiziert werden kann. Die Erfindung liefert sechs Verfahren von B-5-1) bis B-5-6), anhand eines Beispiels von diesen, wobei eine optimale Funktionsweise über Simulationen im Hinblick auf die Eigenschaften des Turbo-Interleavers bestimmt werden können.
Eines der folgenden 6 Verfahren wird ausgewählt.
B-5-1) Positionen von CR-i(0) und CR-i(p) werden gegeneinander ausgetauscht. R=10oder20
B-5-2) Positionen von CR.i(p-1) und CR-i(p) werden gegeneinander ausgetauscht. R=10oder20
B-5-3) für jedes j werden Positionen von Cj(O) und Cj(p) gegeneinander ausgetauscht. j=0,1,2,..., R-1
B-5-4) für jedes j werden Positionen von Cj(p-1) und Cj(p) gegeneinander ausgetauscht. j=0,1,2,..., R-1
B-5-5) für jedes j wird eine optimale Austauschposition k für den verwendeten Verschachtelungs-Algorithmus aufgesucht, um Positionen von Cj(k) und Cj(p) gegeneinander auszutauschen.
B-5-6) für eine (R-1)-te Reihe wird eine optimale Austauschposition k für den verwendeten Verschachtelungs-Algorithmus gesucht, um Positionen von CR-i(k) und Cr-i(p) gegeneinander auszutauschen.
Die Fig. 11 und 12 stellen ein Blockdiagramm und ein Flussdiagramm gemäß einer Ausführungsform der vorliegenden Erfindung jeweils dar.
Wie Fig. 11 zeigt, erzeugt ein Reihen-Vektor-Permutation-Block (oder Reihen-Vektor-Permutation-Index-Generator) 912 einen Index zum Auswählen eines Reihen-Vektors gemäß einem Zählen eines Reihen-Zählers 911 und liefert den erzeugten Index zu einem Hoch-Adressen-Puffer des Adressen-Puffers 918. Der Reihen-Vektor-Permutation-Block 912 ist ein Gruppen-Selektor für ein sequenzielles oder zufälliges Auswählen, wenn das Eingangs-Informations-Wort in eine Vielzahl von Gruppen unterteilt wird, die unterteilten Gruppen. Ein Spalten-Vektor-Permutation-Block (oder ein Elementen-Permutation-Index-Generator des Spalten-Vektors) 914 erzeugt, in Abhängigkeit von einem modifizierten PIL Algorithmus 915, einen Index zum Permutieren der Positionen der Elemente in dem entsprechenden Reihen-Vektor (oder der Gruppe) gemäß einem Zählen eines Spalten-Zählers 913, und liefert den erzeugten Index zu einem Niedrig-Adressen-Puffer des Adressen-Puffers 918. Der Spalten-Vektor-Permutation-Block 914 ist eine Einrichtung zum Umrechnen auf Zufallszeichen (Randomizer) zum Permutieren der Position der Informations-Bits in der Gruppe, die sequenziell in der Reihenfolge der Eingabe, entsprechend einer gegebenen Regel, gespeichert wurden. Ein RAM (Random Access Memory) 917 speichert temporär Daten, erzeugt in dem Prozess des Programms. Eine Durchsichtstabelle 916 speichert Parameter zur Verschachtelung und für das Grund-Root (primitive root). Die Adressen, erhalten durch Reihen-Permutation und Spalten-Permutation (d.h. die Adressen, gespeichert in dem Adressen-Puffer 918), werden als eine Adresse für eine Verschachtelung verwendet.
Fig. 12 zeigt ein Flussdiagramm des modifizierten PIL Algorithmus. Eine Beschreibung nachfolgend bezieht sich auf die zweite Stufe. FaII-B, in dem PIL Algorithmus. Wie Fig. 12 zeigt, wird ein Grund-Root gO von einer gegebenen Zufalls-Initialisierungs-Konstanten-Tabelle, im Schritt 1011, ausgewählt. Danach wird, im Schritt 1013, eine Basis-Sequenz C(i) zum Umrechnen auf Zufallszeichen der Elemente (oder Informations-Bits) der Gruppe unter Verwendung der folgenden Formel erzeugt.
C(i)=[gOxC(i-1)]mod p, i=i,2,3,...,p-2, C(O)=I
Danach wird, im Schritt 1015, ein Minimum-Primzahl-Satz {q, j=0,1,2,...,R-1}, gegeben für den Algorithmus, berechnet. Dann wird im Schritt 1017 ein Primzahl-Satz {pj, j=0,1,2,...,R-1} von dem berechneten, minimalen Primzahl-Satz berechnet. Als nächstes werden, im Schritt 1019, die Elemente der j-ten Gruppe mit dem folgenden Verfahren auf Zufallszeichen umgerechnet.
Cj(i)=c([i &khgr; pj mod (p-1)), i=0,1,2,3 p-2,
Cj(P-D=O
Hierbei wird, um den minimalen, freien Abstand des Turbo-Codierers zu erhöhen, während die Elemente der Gruppe aus Zufallszeichen umgerechnet werden, eines von B-5-1) bis B-5-6) ausgewählt, um die Informations-Bits, die an der letzten Position des Frame existieren, zu anderen Positionen nach einer Verschachtelung zu permutieren (oder zu verschieben).
B-5-1) bedeutet, dass die Positionen des ersten Informations-Bits und des letzten Informations-Bits in der letzten Gruppe gegeneinander ausgetauscht werden. B-5-2) bedeutet, dass die letzten zwei Informations-Bits in der letzten Gruppe gegeneinander ausgetauscht werden. B-5-3) bedeutet, dass, für jede Gruppe, das Informations-Bit, das an der letzten Position existiert, und das Informations-Bit, das an der vordersten Position existiert, gegeneinander ausgetauscht werden. B-5-4) bedeutet, dass, für jede Gruppe, die Positionen der letzten zwei Informations-Bits ausgetauscht werden. B-5-5) bedeutet, dass, für jede Gruppe, eine optimale Position k für eine gegebene Verschachtelungs-Regelung gesucht wird, um eine Position des Informations-Bits, das an der letzten Position jeder Reihe existiert, gegen eine Position des Informations-Bits, das an der Position k existiert, auszutauschen. Schließlich bedeutet B-5-6), dass, für die letzte Gruppe, eine optimale Position k für eine gegebene Verschachtelungs-Regelung gesucht wird, um eine Position des Informations-Bits, das an der letzten Position existiert, gegen eine Position des Informations-Bits, das an der Position k existiert, auszutauschen.
Durch Anwenden des modifizierten Algorithmus bei dem PIL Interleaver ist es möglich, eine Verringerung in dem freien Abstand des Turbo-Codierers zu verhindern. Tabelle 2 nachfolgend zeigt ein Gewicht-Spektrum (Weight Spectrum) des PIL Interleavers vor einer Modifikation und Tabelle 3 nachfolgend zeigt ein Gewicht-Spektrum (Weight Spectrum) des PIL Interleaves nach einer Modifikation.
20 "1 "i ·: :·&Ogr;&bgr;&udigr;·.
In den Tabellen 2 und 3 gibt K die Größe des Eingangs-Informations-Frame bzw. Blocks an, Dfree(1) gibt einen freien Abstand an, berechnet mit dem CISP, für das das Eingangs-Informations-Wort das Hamming-Gewicht 1 besitzt, und Dfree(2) gibt einen freien Abstand an, berechnet mit dem CISP, für das das Eingangs-Informations-Wort das Hamming-Gewicht 2 besitzt. Zum Beispiel wird, für K=600, Dfree(1) des originalen PIL Interleaves durch 25/39/49/53/57/... in Tabelle 2 angezeigt, und dies bedeutet, dass der minimale, freie Abstand 25 beträgt und der nächste minimale, freie Abstand 39 beträgt. Ähnlich bedeutet Dfree(2)=38/38/42/..., dass der minimale, freie Abstand 38 ist. Deshalb wird angemerkt, dass der minimale, freie Abstand entsprechend dem freien Abstand durch das CISP mit dem Hamming-Gewicht 1 bestimmt wird. Um eine Verringerung in dem freien Abstand durch das CISP mit dem Hamming-Gewicht 1 zu verhindern, verwendet die Erfindung das B-5-1) Verfahren in diesem Beispiel. Das bedeutet, dass Dfree(1) durch Entfernen des CISP mit dem Hamming-Gewicht 1 verbessert wird.
Tabelle 2 nachfolgend stellt ein Gewicht-Spektrum des PIL Interleaves vor einer Modifikation dar
[Tabelle2]
Dfiw<2)
600
POs. = 599, Mm. Weight= 25 25/39/49/53/37/51/165/67/67/77/ Pös. = 29,inm_pl -36,Mn. Weight»» 38/38/42/42/42/42/42/42/42/42/
640
Pns.-639, - Min. Weight=25 25/37/53/33/53/69/71/73775/77/ PDS.=440,mm_pl=447,MiniWaghl=40 40/40/42/42/44/44/46/46/46/48/
760
MinvWafcht=25 §^7#7ji'l^3/
840
PbS.
36/38M0/42/42/42/44/46M6M6/ :
880
960
Pos: = 879, Min. Weight ="25 25/47/ 57/ 61/ 65/71/ 83/ 89/93/93/ Paa. =294,min_pl = 308; Mm. Weight=40 40/44/46/46/46/48/54/56/56/58/
Pbs. = 959, Mm. Weight=25 25/45/ 6|/ 65/69/71/73/ 87/ 87/ 89/ Pos. = 568,min_pl = 575,Mm: WdgW« 36/38/38/42/42/42/42/44/44/46/
1080
Pas. = 1079. Min. Weight=25 25/49/61/65/67/77/85/89/93/97/ Pos. = 1016, nm_pl = 1030, Mm.Weight:= 42/42/46/48/48/50/52/52/54/54/
1200
Pos. = 1199. Mm. Weight = 25/ S3/ 65/ 69/85/ 85/ 89/ 89/ 95/ 10V Pas. = 953.mm_pl - 967,Min. Wight= 38/38/42/42/42/42/46/48/50/50/
1240
Pos. = 1239, Mm. Weight=25
25/ 53/ 67/ 69/ 71/ 85/ 93/ 93/103/105/ Pos. = 1053, mmj>] = 1060, Min. Weight= 38/38/40/40/42/42/46/46/46/48/
136&Ogr;
Pos. = 1359. Min. VAd^H=25 25/57/65/73/85/91/93/105/107/107/ Pos.» 64, min_pl = 71, Min. Wagt*« 38/42/42/42/42/44/46/46/46/50/
144&Ogr;
Pos.= 1439, Min.Weight =
25/53/6V 73/77/87/89/97/105/109/ 36/42/42/46/46/50/50/52/54/58/
1480
Pos. = 1479, MmVfeigbt=25 25/61/65/77/77/83/95/101/ 109/117/ Pos. = 1103, jnm_pl - 1110, Min. Weight «=42 42/42/44/48/50/50/50/50/54/54/
1600
Pos. = 1599. Min. Weight=25 25/61/65/83/83/93/97/105/105/113/ Pos. = 315,mm_pl = 322, Min. Weignt-38 38/38/38/40/42/44/50/50/50/54/
16g0 &igr; Poe. = 1679, Min.Weight=25
25/69/69/81/89/9V103/ 113/117/125/ 504,iniii_pl=518,Mm.Wcigfr=44 44/46/50/50/52/52/54/62/62/62/
I ^*-*!7**, Mm. Waght=25
25/69/81/85/105/105/109/109/117/ Pos. = 1439, min_pl * 1446, Mn. Weight = 34/42/42/42/46/48/50/58/60/62/
196O &igr; Pos.-: 1959, Min. Weight =25
25/ 77/ 79/ 83/ 89/ 91/ 97/109/113/125/ Pos. - 1161. min_pl = 1175. Mm. Wagte »40 40/44/44/46/48/50/50/52/54/64/
2040
Pos. = 2039, Min. Weight= 25 25/75/77/77/93/109/109/113/129/133/ Pos. = 1932,min_pl - 1939,Mm. Weight·= 38/40/54/54/56/64/64/74/74/74/
2080
Pos. «2079. Min. Weight= 25 25/69/77/81/93/103/109/111/119/121/ Pas. <= 928, mm_pl = 935, Min. Wäght -40/42/46/54/54/56/58/72/76/88/
2160
Pos. =2159, Min. Weight= 25 25/77/81/93/93/97/99/105/107/129/ Pw. « 644, mm_pl-651. Mm. Weight «=38 38/42/46/50/52/54/54/54/54/60/
2200
Pos. = 2199, Mis. Weight= 25
25/57/ 63/ 81/ 97/101/117/121/133/141/ Pos. = 1973.xnin_pl = 1980,Mm. Weiht=42 42/ 42/ 44/ 32/ 52/54/54/54ZiO/ 62/
2280
Pos. = 2279, Min. Weight= 25
25/75/ 87/ 89/ 97/101/113/ 121/133/139/ Pas. = 1136,min_pl = 1150. Mm. Weihte-42 42/42/42/44/SO/54/54/54/62/62/
2560
Pos. =2559, Min Weight= 25
25/71/ 73/ 95/ 97/109/119/149/149/153/ Pas. = 1663, mm_pl ·= 1670. Min. Weight*42 42/42/46/4S/S4/56/56/56/62/62/ .
Pas. = 2639, Min Weight= 25 25/87/93/101/109/117/119/133/141/143/ Pos. = 1582, minjtl = 1589. Mm. WdgU 38/42/42/42/44/46/50/56/62/66/
38
12760
Pos. = 2759. Min. Weight= 25 25/97/101/103/113/113/121/141/143/ Pos. = 820. min_pl » 834,Mm. Weight=42 42/4V 52/54/SV 62/62/66/66166/
2800
Pos. = 2799, Mm. Weight= 25
25/85/ 97/ 97/101/101/113/119/137/137/ Pas. - 412,mm_pl = 419,Mm. Wägtet-44 44/58/62/62/70/72/72/76/80/82/
3000
Pas. = 2999, Min. Weight=25
25/85/ 89/ 105/123/127/155/157/165/171/ Pos. = 2396, min_pl = 2403, Mm. WeigU 34/38/40/50/54/54/54/58/74/76/
34
Pos. = 3039. Min. Weight «= 25
25/61/ 89/ 95/105/115/121/133/135/141/ Pos. = 604,mJn_pl ·= 611.Min Wsght 38/38/42/46/46/52/52/64/66/76/
38
Pos. = 3159. Min.Weight= 25 25/101/101/105/109/125/127/141/ 14V149/ Pas. = 2524, njin_pl = 2538, Mm. Weigb* «IT 38/42/46/56/68/76/76/78/90/90/
Pos. = 3279. Min. Weight=25 25/93^05/11^121/125/125/131/131/133/ Pos. = 3109. min_pl = 3123,Mm. Wdgbl 42/SO/52/£2/62/76/90/90/90/90/
42
3360
Pos. «3359,; Min. Wright=25
25A7W%3/&Iacgr;07/1&Idigr;7/129/441/141/153A169/ m,Wdgji|«
.3480
3600
; Mg 25/87/99/ 105/113/117/133/133/141/145/ Pos.= 104#ini^ripi^^ 38/38/.S4/,54/S6/58/58/58/6p/62/,:,
Pos.*3599; Min. Wright =25
25/ 97/109/121/137/139/153/167/167/177/ Pos. = 1438, jmn_pl = 1445, Mm. Wrigbt-42/46/48/54/54/62/74/76/90/90/
3640
Pos. = 3639, Min. Wright=25
25/ 87/ 97/125/137/137/137/149/163/169/ Pos.= 3262, min_pl = 3276, Min. mti 54/S8/58/62/66/68/72/.74/82/88/
3840
Pos.-3839, MmWright=25
25/53/97/'· 11V117/129/145/147/151/153/ Pos. s 759, min_pl- 773, MiB. Wogt 42/56/58/62/62/62/62/66/70/72/
3880
Pos. = 3879. Min.Wright=25
25/ 91/ 93/121/129/133/145/173/173/177/ Pos. &bgr; 383,jmnj>l = 397,MmIWgIiI 54/56/60/62/66/-74/86/90/90/90/
3960
Pos.-3959, MmWagtat= 25
25/ 91/ 105/125/125/133/135/137/ 141/143/ Pos. =1372, xninjrt = 1386, Mm. Weigh 40/62/68/78/88/90/90/90/90/90/
4000
Pos. = 3999, Mm.Wrigtal=25
25/7V 85/133/149/149/149/153/161/175/ = 797.inmj>l-804,Mm.Vfeigfat 38/42/42/50/54/54/54/54/54/56/
4240
Pos.=4239, Min.Waght=25
25/109/119/143/151/153/157/165/169/193/ Pos. = 3392, min_pl = 3399, Mia Weigh 40/42/42/46/50/66/80/90/90/90/
4480
Pos. = 4479, Min.Wrigat=25
25/ 89/ 89/ 89/117/119/137/149/ 159/161/ Pos. - 892,mmj>l - 899,Mm. Wdgh 38/38/42/42/42/46/54/64/90/90/
4560
Pos. »4559, Min. Wright= 25
25/113/121/125/137/149/161/165/175/177/ Pos. = 1368, mmj>l = 1382, Mm. Weigh 44/58/66/68/70/70/82/84/86/88/
4600
4680
4800
Pos. =4599. Mm.Wright=25
25/ 69/107/121/129/149/151/153/159/ 161/
Pos. =4679. Min.Wright=25
25/ 99/109/137/ 14V153/171/177/179/187/ Pos. =4799. Min.Wagtat= 25 25/65/83/129/133/141/157/159/165/169/ Pos. = 3676, mm_pl = 3683. Mis. Wäg 34/48/50/58/62/66/66/76/86/90/
Pos. »= 928. jnm_pl = 942, Mia. Weight-42
42/44/50/58/62/62/64/68/84/86/
Pos. = 949, mm_pl«= 963, Mm. Weight«
42/42/50/56/58/66/66/66/70/70/
4840
Pos. =4839. Mm.Weight=2S
25/ 95/129/141/ 14V151/157/161/173/177/ Pos. * 3858, min_pl - 3872, Min. Wägt 42/72/80/82/84/90/90/90/90/90/
5040
Pos. = 5039, Min. Weight= 25
25/157/165/165/175/177/189/189/193/197/ Pos.= 4534, nmTpl= 4548, Mm. Wagl 46/S4/ 54/ 58/ 60/ 60/ 62/76/ 82/ 90/
5160
Pos. = 5159. Min. Weight= 25
25/ 81/ 95/137/137/145/147/165/181/185/ Pos. = 2314,mm_pl = 2321, Mm. Wdgh 40/40/46/50/58/58/58/62/66/84/
!5280
!5400
Pos. =5279. Mm.Wcight=25
25/75/101/109/ 13V137/165/169/181/185/ Pos. = 1579.min_pl = 1593. Min, Wogt 42/50/62/66/70/72/82/82/90/90/
5440
Pos.-5399. Mm.Weight=25 25/ 99/117/117/125/133/169/173/189/197/ Pos. =5439. Mm. Wright= 25 ~
25/73/109/ 143/169/169/169/173/175/181/ Pos. = 5124. mm_pl =5131. Min. Weight-38 38/50/52/54/58/72/90/90/90/90/ P5S. =4617S min_pl =4624. Min. Weight-50 50/58/60/62/76/90/90/90/90/90/
15560
5640
!5680
5880
16160
Pos. = 5559. Mm.Wright = 25 25/105/141/143/177/ 18V189/193/193/201/ Pos. = 5639, Mm.W=ight=3 '
25/101/115/145/153/153/ 15V165/169/173/ Pos. = 4441. mmj>l = 4448, Min, Wdgtat« 38/42/46/54/66/78/84/88/88/90/
P. 5679. Mm.Waght
25/101/14S/165/173/181/187/187/193/197/
Pos. ·= 1120,mni_pl = 1134,Mm. Wdght=42
42/62/76/86/86/90/90/90/90/90/
Pos. = 851.mm_p1 = 858,Mm. Weight=
50/54/62/74/78/80/82/84/88/88/
Pos. = 5879, MiaWnght=25
25/103/129/ 16V173/177/189/199/ 201/2OU
Pos. = 6159. Mm. Wright= 25
25/129/155/157/1<5/187/197/20V 209/217/ P»=4410.mmj»l=4417,Mm.Wdght=42 42/52/72/80/90/90/90/90/90/90/ Pos. - 5849,mm_pl =5863,Mm. Weight-42 42/44/46/58/90/90/90/90/90/90/
Pos. = 6239. Mm.Wright
= 6279. Mm.Wright=25 25/117/133/137/161/175/177/195/197/197/
Pos. = 305,nrin_p! = 319, Mio. Weight »42
42/42/62/80/90/90/90/90/90/90/
Pos. = 5323, jnmjtl = 5337. Mm. Wdght=
44/68/72/72/80/88/90/90/90/90/
Pos. = 6359. Mia. Wright= 25
25/109/ 137/:i41/141/145/ UV. 161/187/201/ Pos. = 5081,mm_pl =5095, Min. Weight = 8/42/^62/78/186/90/90/^90/ .-'
Pös! = 6639,. Mm.WrigJil=25;
25/ 10&Idigr;/ 109/TJ9/147/175/177/ i857209/217£
Pos. = 3645tUäi3>l·= 3652. Kfit Weight=44 !
44/54/58/60>64/90/90/90790/90/ ' &iacgr;
6760 Pos. =6759, Mia Weight=25
25/ 10V12V165/203/21V217/229/249/249/
Pos. = 6409, nrinjrt = 6423, Mb. Weight=42
42/50/70/84/90/.90/9O/90/90/90/
6960 PoS. = 6959. Min. Weight = 25
2V123/14V14V161/209/211/217/219/223/
Pos. = 5565, jnm_pl = 5572, Mia Weight = 34
34/50/54/62/66/80/82/88/90/90/
7000 Pos. = 6999. Min. Weight=25
25/111/ UV 14V197/221/ 221/233/ 23V 237/
Pos.·= 3846, mm_pl = 3853, Min. Weight= 38 .
38/52/54/60/62/72/84/90/90/90/
7080 Pos. = 7079, Min.Weight=25
25/117/129/161/165/169/171/175/175/177/
Pos. = 2122, imn_pl = 2129, Min. Weight=38
38/42/50/54/54/58/72/84/88/90/
7200 Pos. «7199, Min. Weight =25
25/167/169/173/18V18V21V217/22V 22V
Pos. = 6833, nrinj)!= 6840, Min. Weight=44
44/50/66/84/90/90/90/90/90/90/
7360 Pos.=7359, Min.Weight=25
25/81/157/169/173/173/183/221/221/221/
Pos.= 1836, «mj>I = 1843, Min. Weight=46
46/60/72/82/82/90/90/90/90/90/
7480 Pos. =7479, Min.Wrighl=25
25/117/153/201/207/217/217/227/229/233/
Pos. = 1865,mmj>l = 1872. Min. Weight=46 .
46/66/66/72/82/82/90/90/90/90/
7600 Pos. = 7599, Min. Weight= 25
25/ 12V15V157/201/ 221/223/ 239/24V251/
Pos. = 1893,nrin_pl = 1900, Min. Weight = 46
46/56/58/72/84/90/90/90/90/90/
7680 Pos. = 7679, Min. Weight= 25
25/133/153/157/189/207/237/241/243/253/
Pos. = 2865, min_pl = 2872, Min. Wdght= 78
78/90/90/90/90/90/90/90/90/90/
7800 Pos.=7799, MiaWfcight = 25
25/115/151/157/181/193/209/241/249/251/
Pos. = 1170,min_pl = 1184, Min. Wdght=44
44/50/64/72/76/80/86/90/90/90/
7960 Pos. = 7959, Min. Weight= 25
25/ 13V14V153/169/169/185/217/223/223/
Pos. = 398, min_pl = 405, Mm. Wright = 40
40/80/86/88/90/90/90/90/90/90/
8040 Pos. = 8039. Min. Weight =25
25/109/109/111/141/ 18V 201/219/241/ 249/
Pos. = 7O54,min_pl = 7068,Mm. Weight«= 56
56/68/90/90/90/90/90/90/90/90/
Tabelle 3 nachfolgend stellt ein Gewicht-Spektrum des PIL Interleavers nach einer Modijfikation dar. [Tabelle 3]
K DfireeOyPILSS Dfree(2yPILSS
600 pos. = 569, KGa Weight= 39
39/ 41/ 49/ 53/ 57/ 61/ 65/ 67/ 67/ 77/
pos. =29.min_pl = 36, Min. Weight=38
38/38/42/42/42/42/42/42/42/42/
640 Pos.-607, Min. Weight = 37
37/43/53/53/53/69/71/73/75/77/
pos. = 440, nrin_pl= 447, Min. Weight = 40
40/40/42/42/44/44/46/46/46/48/
760 Pos. = 721. Min. Weight = 41
■41/45/57/57/59/69/75/77/81/83/
pos. = 33, min_pl =40, Min. Wright=38
38/38/38/42/42/42/42/44/44/50/
«40 pos. = 797, Min. Weight «45
45/ 45/ 57/ 65/ 65/ 79/ 79/ 83/ 85/ 87/
pos. = 461,min_pl = 468. Mk Wright - 36
36/38/40/42/42/42/44/46/46/46/
880 pos. = 835, Min. Weight = 47
47/49/57/61/65/TU S3/W/93/93/
pos. = 294, min_pl-308, Min. Wright »40 .
40/44/46/46/46/48/56/56/58/62/
960 Pos.-911, KGn. Weight=45
45/49/61/65/69/71/73/87/87/89/
pos. = 568, min_pl = 575, Min. Wright = 36
36/38/38/42/42/42/42/44/44/46/
1080 Pos. »1025, Min.Wright=49
49/ 53/ 61/ 65/ 67/77/ 85/ 89/ 93/ 97/
pos. = 1016, min_p] = 1030, Min. Wright=42
42/42/46/48/48/50/52/52/54/54/
1200 pos. = 1139, Mk Weight = 53
53/59/65&Lgr;69/85/85/89/89V: 95/103/
pos. = 953. mhvpl = 967, Min. Waght =» 3»
38/38/42/"42/42/42/46^48/5IVSP/. /..
1240 ■&rgr;&ogr;&kgr;*· 1177;JhHtL Weight = 53
53/ 57/ 67/69/ 71/ 85/ 93/ 93/103/105/
pos:= 10;53;njiÜ_pl = 1^5Ö,»*l·^^.WrigJ*=38
38/38/40/40/42/42/46/46/46/48/
1360 pos. = 1291. Min. Weight= 57
57/61/65/73/85/91/93/105/107/107/
pos. = 64, minjpl =71, Min. Weight=38
38/42/42/42/42/44/46/46/46/50/
1440 posL=1429, Min. Weight= 53
53/ 63/ 65/ 73/ 77/ 87/ 89/ 97/105/109/
mos.=497, min_pl = 504. Mk Wright« 36
36/42/42/46/46/50/50/52/54/58/
1480 &rgr;&ogr;8.=&Iacgr;405. Min. Weight=61
61/65/67/77/77/83/95/101/109/117/
pos. = 1103, nrin_pl = 1110, Min: Wright=42
42/42/44/48/50/50/50/50/54/54/
1600 pos.= 1573. Min.Wright=61
61/ 65/ 69/ 83/ 83/ 93/ 97/105/105/113/
pos. = 315. min_pl = 322, Min. Weight = 3«
38/38/38/40/42/44/50/50/50/54/
1680 pos. = 1595, Min. Wright= 69
69/ 69/ 69/ 81/ 89/ 95/103/113/117/125/
pos. == 504, min_pl = 518. Min. Wcaght = 44
44/46/50/50/52/SV 54/62/62/G2J
1800 pos. = 1709, Min. Weight=69
69/ 73/81/85/105/105/109/109/117/121/
pos. = 1439,mmj>l = 1446, Min. Wright= 34
34/42/42/42/46748/50/58/60/62/
1960 pos.= 1861, Min.Weight = 77
77/ 77/ 79/ 83/ 89/ 91/ 97/109/113/125/
"pos· = 11«. nnn_pl = 1&Idigr;75, Min. Wright=40
40/44/44/46/48/50/50/52/54/64/
2040 pos. = 2014, Min. Weight = 75
75/77/77/ 83/ 93/109/109/113/129/133/
pos. = 1114, minjpl = 1121, Min. Weight = 40
4U/ 547 54/ 56/ 64/ 64V 74/ 74/ 747*0/
2080 pos. = 2038, Min. Wright=69
69/ 77/ 81/ 81/ 93/103/109/111/119/ 12V
pos. = 928. min_pl = 935, Mio. Wright=40
40/42/46/54/54/56/58/76/88/90/
IP05-=2106· Min-Weight=77
77/81/85/93/93/97/99/105/107/129/ pas. = 644, min_pl = 651, Mia Weight 38/42/46/50/52/54/54/54/54/60/
2200
pas. = 2181, Min. Weight=57
57/ 63181/ 85/ 97/101/117/121/133/141/ Pas.= 1973, xainjpl = 1980, Mb. weight=42 42/42/44/52/52/54/54/54/60762
2280
pas. =2254, Mia. Weight - 75 75/87/89/ 89/ 97/101/113/ 121/133/139 pas. = 1136, annjpl = 1150, Mia Weight 42/42/421441 SOl SAI54/54163/62/
2560
pas. =2545, Min.Weight = 71 71/73/95/ 97/ 97/109/119/ 149/149/153/ pas. = I663,mmjpl = 1670, Min. Weight 42/4614V 54156/56156162164/T2/
2640
pos.=2574, Mm. Weight =87
87/ 93/ 97/ 101/109/117/119/133/141/143/ pas. = 1582,min_pl = 1589,Mm. Weight 3V AV 42142/44146150/56162/661
2760
pos. = 2621, Min. Weight =97
97/101/101/103/113/113/121/141/143/ 14V pas. = 820,min_pl « 834,Min. Weight=42 42/48/52/54/58/62/62/66/66/66/
2800
pas. = 2730, Min. Weight = 85 85/ 97/ 97/101/101/101/113/119/137/137/ pas. = 412, min_pl = 419, Min. Weight 44/58/62/62/66/70/72/72/76/80/
44
3000
pas. = 2962. Min. Weight · 85 85/ 89/105/ 109/123/127/155/157/ 16V171/ pas. &bgr; 2396, min_pl = 2403, Min. Weight= 34/38/40/50/54/54/54/58/74/76/
pas. = 3014. Min. Weight= 6] 61/ 89/ 95/105/109/ &Pgr; 5/121/133/ 13V 141/ pas. ■ 604, nnn_pl = 611, Min. Weight -38/38/42/46/46/52/52/64/66/76/
3160
pas. = 3065, Min. Weight =101 101/101/ 105/109/ 11V12V 127/141/145/149/ pas. = 2524,mm_pl = 2538. Mm. Weight.= 38/42/46/56/68/76/76/78/90/90/
I pas. = 3198, Min. Weight = 93
93/ 10V113/117/121/ 12V125/131/131/ 13V j pas. = 3109, nrin_pl = 3123, Mia Weight 42/50/52/62/62/76/90/90/90/90/
3360
3339i Min. Weight =71 ■ 71/73/107/117/117/129/. 141/141/153/169/ pas. = 3019, mm_pl = 3026. Min. Weight 42/52/54/66/76/80/88/90/90/90/
3480
pas. = 3436. Mm.Weight=87 87/99/ 10V113/117/121/133/133/141/145/ pas. = 1042, min_pl = 1049, Mbe. Weight= 38/38/54/54/56/58/58/58/60/62/
3600
pas. = 3510. Mia Weight = 97 97/109/121/ 12V137/139/153/167/167/177/ pas. = 1438, mm_pl = 1445, MiaWeight 42/46/48/54/54/62/74/76/90/90
3640
pas. = 3594. Mia Weight= 87 87/ 97/ 12V12V137/137/137/149/163/169/ pas. = 3262, mm_pl =3276, Mia Weight= 54/58/58/ 62/ 66/68/72/74/ZlI88/
13840
3829, MiaWeight=53 53/ 97/115/117/129/133/145/147/151/153/ 759,inm_pl=773,MiaWeight-42 42/5615V62162/62/62/66170172/ .
3880
pas. = 3825, Mia Weight= 91 :9t/93/«l&V329? 133/133/ 14V\7& 173/177/ pas. = 383,mm_pl = 393; Mm: Weight s 54/'5ÖiSÖ/6a/66/74/86/9O/.i>0/,90/ .
3960
&rgr;&uacgr;&udigr;.«35,10; MiaWaght= 91 ■■'■' ' 91/105/125/125/ 13&Ggr;3/&Idigr;3&ngr;&Idigr;37/137/1417143/ pas. = 1372,-nÜnjpl = 1386. Mia-Weight=40 \ '40162/68/78/%V90l90/90/90/90;
4000
pas. = 3977, MaWaght=75 7V 8V133/139/149/149/149/ 15V161/175/ pos. = 797, mm_pl = 804, Mm. Weight=38 38/42/42/50/54/54/54/54/54/56/
4240
pas. =4134, Mia Weight= 109 109/ 119/143/ 14V151/ 15y 157/165/169/ 193/ ! pas. = 3392, mm_pl - 3399, Mia Weight= 40/42/42/46/50/66/80/90/90/90/
40
4480
pas. =4405. MiaWeight=89 89/ 89/ 89/117/119/137/149/149/159/161/ - pas. = 892,nrin_pl = 899, Mia Weight= 38/38/42/42/42/46/54/64/90/90/
38
4560
MiaWeight=113 113/121/ 12V137/149/ 15V161/ 16V17V177/ pas. = 1368,nrin_pl = 1382, Mia Weight= 44/58/66/68/70/70/82/84/86/88/
44
pas. =4561, Min. Weight =69 69/107/ 12V129/149/151/153/153/159/161/ pas. = 3676,min_pl = 3683, Mia Weight= 34/48/50/58/62/66/66/76/86/90/
34
pos.=4656, Min. Weight= 99 99/109/137/143/153/157/171/177/179/187/ pas. = 928, rniDj»! = 942, Mio. Weight = ! 4214Al 501SV 6216216Al 6V 94/Ul
pas. =4765. Mia Weight= 65 65/83/129/133/141/157/159/ 161/165/169/ pas. = 949,mmj>l = 963,Mm. Wdght 42/42/50/56/58/66/66/66/70&Lgr;70/.
42
pas. =4780, Mia Weight= 95 95/129/ 141/145/151/ 157/161/ 163/173/177/ pas. = 3858, min_pl = 3872, Mia Weight= 42/72/80/82/84/90/90/90/90/90/
42
pas. = 5029, Mia Weight= 157 157/165/ 16V16V175/177/189/189/193/197/ pas. = 4534, nuVpl = 4548, Mia Weight 46/541541SV601601SU161 til901
46
5160 pos. = 5140, Mia Weight = 81
81/95/137/137/145/147/165/169/181/185/
pas. = 2314, xmn_pl = 2321. Mm. Vfcighl« 40
40/40/46/50/58/58/58/62/66/84/
5280 &rgr;&ogr;&bgr;. = 5258, Min. Weight=75
75/101/109/133&Lgr;37/165/169/173/181/185/
pos. = 1579,&pgr;&pgr;&eegr;_&rgr;1 = 1593,Mm. Waght-42
42/50/62/66/70/72/82/82/90/90/
5400 POS.-5332, Min.Weigm = 99
99/117/117/125/133/169/173/179/189/197/
pos.-1883,mm_pl-1890. Mm. Weight «50
50/52/54/58/72/90/9O/9O/9O/9O/
5440 &rgr;&ogr;&bgr;.«5394, Min.Weigfat-73
73/109/143/169/169/169/173/175/177/181/
pos.=4617,nim_pl=4624,Mm. Wdght-50
50/58/60/62/76/90/90/90/90/90/
5560 pos. = 5520. Min. Weight =105
105&Lgr;41/143/177/181/181/189/1 93/193/201/
POS.-4441. mm_pl=4448. Mm. Weight -38
38/42/46/54/66/78/84/88/88/90/
5640 pas. -5587, Min. Weight = 101
101&Lgr;15/145&Lgr;53/153/153&Lgr;65/169/173/173/
pos=1120.inin_pl=1134,Mm. Vfcight-42
42/62/76/86/86/90/90/90/90/90/
5680 &rgr;&ogr;&bgr;,-5585. Min. Weight= 101
101/145/165/173/181/187/187/187/193/197/
P0S.-8S1, mm_pl=858, Min. Weight-50
50/54/62/74/78/80/82/84/88/88/
5880 pas. = 5806. Mis. Weight = 103
103/129/161/173/177/189/189/1 99/201/201/
pas.-4410.mm_pl-4417,Mia Weight-42
42/52/72/80/90/90/90/90/90/90/
6160 pas. = 6111. Min. Weight= 129
129/153/157/165/187/197/197/205GO9/217/
P0S.-5849,111111^1=5863, Mn. wagni«u
42/44/46/58/90/90/90/90/90/90/
6240 pas.-6140, Min. Weight - 119
119/119&Lgr;23/169/185/197/199/203&OHacgr;13/213/
POS.-305. nrin_pl=319. Mm. Weight-42
42/42/62/80/90/90/90/90/90/90/
6280 pas.-6234. Mm Weight-117
117&Lgr;33/137&Lgr;61/175/177&Lgr;95/197/197&Lgr;99/
POS.-5323, xnm_pl-5337. Mm. Weight -44
44/68/72/72/80/88/90/90/90/90/
636&Ogr; pas.-6280. Mis. Weight-109
109&Pgr;37/141/141/145/147/161/187/201/205/
pos.=5081, mm_pl-5095, Min. Weight =38
38/42/46/62/78/86/90/90/90/90/
6640 pot. -6590, Min. Weight- 101 POS.-3645. mm_pl-36S2, Mm. Weight -44
44/54/58/60/64/90/90/90/90/90/
6760 pas.-6658, Min. Weight-105 50/70/84/90/90/90/90/90/90/90/
696&Ogr; pas. = 6894, Mm. Weight-123
123&Lgr;45/145/161&Lgr;09/211/217/219/221/223/
34/50/54/62/66/80/82/88/90/90/
700&Ogr; pas. »6912. Min. Weight-111
111/14S/145/197/221/221/221/233Ä35/237/
POS.-3846, miiijpl=3853. Mm. Weigtt=38
38/ 52/ 54/60/ 62/ 72/ 84/ 90/ 90/ 90/
708&Ogr; pos.-.7018i Mm. Weight- 117
117/129/16&Kgr;165/169/17&Idigr;&Lgr;75/175/177/181/
POS.-2122, mm_pl=2m Ma. ^fcigk^» I
38/42/50/54/54758/72/84/88/>qr
720&Ogr; pas. «6994; Min. Weight-167
167/169/173/1*5/185/215/217/225/225/229/
&rgr;&agr;&bgr;.·=68331;&iacgr;&idiagr;&ohacgr;&uacgr;>1-684&bgr;, Mm. W^j^44
44/ 50/ 66/ 84/ 90/ 90/ 90/ 90? 90/90/
736&Ogr; jsa = 7298, Mm. Weight-81
81/157/169/173/173/183/221/221/221/229/
l«s.=l 836,DmJl=IMS, Mia. Wagm=46
46/ 60/ 72/ 82/ 82/ SO/ SO/ BV M* 50/
7480 pos. = 7386, Min. Weight= 117
117/153/201/207/217/217/227/229/ 233/ 233/
46/66/66/72/82/82/90/90/90/90/
76OO PO3.-7528, Min. Weight-125
125/155/157/201/221/223/239/241/245/251/
pos=l893,jnin_pl=l900,Mia. Wage=«
46/56/58/72/84/90/90/90/90/90
7680 pos. = 7526. Min. Weight-133
133/153/157/189/207/237/241/241/243/253/
POS.-2865; mm_pl-2872. Mm. VWHgDF*/«
78/90/90/90/90/90/90/90/90/90/
7800 POS.-7702, Mm.^Waght=115
115/151/157/181/193/209/241/245/249/251/
pos.=1170, mm_pl=H84, Mia. Weisht=44
44/50/64/72/76/80/86/90/90/90/
pos.=398,min_pl=405,Min. WdgliMO
40/80/86/88/90/90/90/90/90/90/
7960 pas. = 7832, Mm. Weight= 135
135/145/153/169/169/185&Ogr;17&Lgr;23/223/237/
pos.=7054, min_pl=7068, Mm. Weight-56
56/68/90/90/90/90/90/90/90/90/
g040 pos. = 8006. Mia Weight= 109
1&Ogr;9&Lgr;&Ogr;9&Lgr;11/141/185/201/219/241/249/253/
Wie vorstehend beschrieben ist, unterdrückt der neuartige Turbo-Codierer eine Abnahme in dem freien Abstand, verursacht durch eines oder mehr Informations-Bits von "1", angeordnet an der letzten Periode eines Daten-Frame bzw. -Block, eingegeben zu dem Komponenten-Codierer, unter Verwenden des internen Interleaves, um dadurch zu einer Umsetzung eines Turbo-Codierers mit einer hohen Funktion beizutragen.

Claims (7)

1. Turbo-Codierer, der aufweist:
einen ersten Codierer zum Codieren eines Frame bzw. Blocks von Eingangs- Informations-Bits, um erste, codierte Symbole zu erzeugen;
einen Interleaver (Verschachtelungseinrichtung) zum Aufnehmen der Informations- Bits und zum Verschachteln der Position der Informations-Bits so, dass ein Informations-Bit, das an der letzten Position des Frame existiert, zu einer Position verschoben wird, die der letzten Position vorausgeht, um Nicht-Sequenz-Muster kritischer Informationen (Critical Information Sequence Pattern - CISP) zu erzeugen; und einen zweiten Codierer zum Codieren der verschachtelten Informations-Bits, um zweite, codierte Symbole zu erzeugen.
2. Turbo-Codierer nach Anspruch 1, wobei der Interleaver aufweist:
eine Steuereinheit zum Schreiben der Informations-Bits sequenziell in einen Speicher und zum Unterteilen der Informations-Bits in R Gruppen, wobei jede die C Informations-Bits besitzt; Permutieren der Adresse des Informations-Bits, geschrieben in einer j-ten Reihe (wobei j = 0, 1, 2, . . ., R - 1), zu Positionen Cj(i) in der Reihe entsprechend einem Algorithmus, gegeben durch
a) C(i) = [g0 × C(i -1)]mod p, i = 1, 2, . . ., (p - 2) und C(0) = 1
b) Cj(i) = C([i × pj] mod (p - 1)),
j = 0, 1, 2, . . ., (R - 1), i = 0, 1, 2, . . ., (p - 1), Cj(p - 1) = 0, und Cj(p) = p
c) Austauschen von CR-1(p) gegen CR-1(0)
wobei p (Primzahl) eine Primzahl anzeigt, die am nächsten zu K/R liegt, g0 (Grund- Root - primitive root) eine vorbestimmte Zahl entsprechend zu p anzeigt, und pj einen Grund-Zahl-Satz anzeigt.
3. Turbo-Codierer nach Anspruch 2, wobei der Interleaver aufweist:
einen Speicher zum Speichern des Informations-Bit-Frame sequenziell;
eine Einrichtung zum Umrechnen auf Zufallszeichen (Randomizer) zum Permutieren der Adresse der gespeicherten Informations-Bits entsprechend als Verschiebung der Adresse eines Informations-Bits, das an der letzten Position existiert, zu einer Position, die der letzten Position in der letzten Gruppe vorausgeht.
4. Turbo-Codierer nach Anspruch 3, wobei die Einrichtung zum Umrechnen auf Zufallszeichen eine Informations-Bit-Adresse austauscht, die an der letzten Position der letzten Gruppe existiert, gegen eine Informations-Bit-Adresse, die an einer ersten Position der letzten Gruppe existiert.
5. Vorrichtung zum Permutieren von Informations-Bit-Adressen eines Eingangs- Frame, der R Gruppen besitzt, von denen jede C Informations-Bits besitzt, in einem Prime-Interleaver (PIL), verwendet als ein interner Interleaver für einen Turbo- Codierer, wobei die Vorrichtung aufweist:
einen Speicher zum Speichern des Informations-Bit-Frame sequenziell;
eine Einrichtung zum Umrechnen auf Zufallszeichen (Randomizer) zum Permutieren der Adressen des Informations-Bits und zum Ändern der Adresse eines letzten Informations-Bits zu einer Position, die der Position in der letzten Gruppe vorausgeht.
6. Vorrichtung nach Anspruch 5, wobei die Einrichtung zum Umrechnen auf Zufallszeichen eine Informations-Bit-Position austauscht, die an der letzten Position der letzten Gruppe existiert, gegen eine Informations-Bit-Position, die an einer ersten Position der letzten Gruppe existiert.
7. Vorrichtung zum Verschachteln eines Frame von K Informations-Bits, die R Gruppen haben, von denen jede C Informations-Bits besitzt, in einem PIL Interleaver, verwendet als ein interner Interleaver für einen Turbo-Codierer, wobei die Vorrichtung aufweist:
eine Steuereinheit zum Schreiben vom Eingangs-Informations-Bits eines Frame (Blocks) in einen Speicher sequenziell und Permutieren der Position der Informations-Bits, geschrieben in einer j-ten Reihe (wobei j sein kann 0, 1, 2, . . ., oder R - 1), zu einer Position Cj(i) in der Reihe entsprechend einem Algorithmus, gegeben durch
a) Permutieren einer Basis-Sequenz C(i) = [go × C(i - 1)] mod p, i = 1, 2, . . ., (p - 2) und C(0) = 1
b) Durchführen einer Reihen-Permutation Cj(i) = C([i × p] mod (p - 1)),
j = 0, 1, 2, . . ., (R - 1), i = 0, 1, 2, . . ., (p - 1), Cj(p - 1) = 0, und Cj(p) = p
c) Austauschen von CR-1(p) gegen CR-1(0)
wobei p (Primzahl) eine Primzahl anzeigt, die am nächsten zu K/R liegt, g0 (Grund- Root - primitive root) eine vorbestimmte Zahl entsprechend zu p anzeigt, und pj einen Grund-Zahl-Satz anzeigt.
DE20023169U 1999-05-19 2000-05-19 Turbo-Verschachtelungsvorrichtung Expired - Lifetime DE20023169U1 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR19990018928 1999-05-19
KR19990018560 1999-05-21
PCT/KR2000/000504 WO2000070771A1 (en) 1999-05-19 2000-05-19 Turbo interleaving apparatus and method

Publications (1)

Publication Number Publication Date
DE20023169U1 true DE20023169U1 (de) 2003-04-24

Family

ID=26635221

Family Applications (2)

Application Number Title Priority Date Filing Date
DE20023169U Expired - Lifetime DE20023169U1 (de) 1999-05-19 2000-05-19 Turbo-Verschachtelungsvorrichtung
DE60032441T Expired - Lifetime DE60032441T2 (de) 1999-05-19 2000-05-19 Vorrichtung und verfahren zur turboverschaltelung

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE60032441T Expired - Lifetime DE60032441T2 (de) 1999-05-19 2000-05-19 Vorrichtung und verfahren zur turboverschaltelung

Country Status (14)

Country Link
US (2) US6598202B1 (de)
EP (6) EP1367729A1 (de)
JP (1) JP3359912B1 (de)
CN (6) CN1271795C (de)
AT (1) ATE349108T1 (de)
AU (1) AU752231B2 (de)
CA (1) CA2337918C (de)
CY (2) CY1105921T1 (de)
DE (2) DE20023169U1 (de)
DK (2) DK1097516T3 (de)
ES (2) ES2408118T3 (de)
IL (2) IL140661A (de)
PT (2) PT1097516E (de)
WO (1) WO2000070771A1 (de)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1367729A1 (de) 1999-05-19 2003-12-03 Samsung Electronics Co., Ltd. Gerät und Verfahren zur Turboverschachtelung
US6789218B1 (en) * 2000-01-03 2004-09-07 Icoding Technology, Inc. High spread highly randomized generatable interleavers
US7302621B2 (en) * 2000-01-03 2007-11-27 Icoding Technology, Inc. High spread highly randomized generatable interleavers
JP2001285077A (ja) * 2000-03-31 2001-10-12 Mitsubishi Electric Corp 通信装置および通信方法
US6854077B2 (en) * 2000-08-05 2005-02-08 Motorola, Inc. Apparatus and method for providing turbo code interleaving in a communications system
FR2823923A1 (fr) * 2001-04-18 2002-10-25 Koninkl Philips Electronics Nv Procede et ensemble d'interconnexion sans fil pour etablir une communication bidirectionnelle entre deux dispositifs audio et/ou video
US7085969B2 (en) * 2001-08-27 2006-08-01 Industrial Technology Research Institute Encoding and decoding apparatus and method
JP3624874B2 (ja) * 2001-11-19 2005-03-02 日本電気株式会社 インターリービング順序発生器、インターリーバ、ターボエンコーダ、及びターボデコーダ
US7586993B2 (en) * 2001-12-06 2009-09-08 Texas Instruments Incorporated Interleaver memory selectably receiving PN or counter chain read address
JP3669433B2 (ja) * 2001-12-25 2005-07-06 ソニー株式会社 インターリーブ装置及びインターリーブ方法、符号化装置及び符号化方法、並びに復号装置及び復号方法
MXPA05001714A (es) 2002-08-13 2005-04-19 Nokia Corp Intercalacion de simbolo.
JP2006500850A (ja) * 2002-09-25 2006-01-05 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ データを再帰的に計算するための回路
US20040103359A1 (en) * 2002-11-27 2004-05-27 Molina Robert Jose Dynamic real time generation of 3GPP turbo decoder interleaver sequence
KR100518295B1 (ko) * 2003-03-14 2005-10-04 삼성전자주식회사 디지털 통신 시스템의 디인터리빙장치 및 그의디인터리빙방법
DE60312325T2 (de) * 2003-08-29 2007-11-08 Mitsubishi Electric Information Technology Centre Europe B.V. Verfahren zum Senden von Daten in einem Telekommunikationssystem mit wenigstens einem Sender und wenigstens einem Empfänger mit wenigstens einer Empfangsantenne
US8077743B2 (en) * 2003-11-18 2011-12-13 Qualcomm Incorporated Method and apparatus for offset interleaving of vocoder frames
JP4539107B2 (ja) * 2004-02-12 2010-09-08 富士通株式会社 送信装置、ビット配置方法
JP4909498B2 (ja) 2004-02-27 2012-04-04 日本電気株式会社 インターリーブパラメータ演算方法/プログラム/プログラム記録媒体/装置、携帯電話機
TWI237448B (en) * 2004-04-12 2005-08-01 Benq Corp Method for interleaving data frame and circuit thereof
KR20060004198A (ko) * 2004-07-08 2006-01-12 삼성전자주식회사 이동통신 시스템에서 블록 디인터리버 버퍼의 운용 방법및 장치
KR101131323B1 (ko) * 2004-11-30 2012-04-04 삼성전자주식회사 이동통신 시스템에서 채널 인터리빙 장치 및 방법
JP4848359B2 (ja) * 2005-02-03 2011-12-28 パナソニック株式会社 並列インターリーバ、並列デインターリーバ及びインターリーブ方法
KR100708474B1 (ko) * 2005-09-15 2007-04-18 삼성전자주식회사 선형 합동 인터리버의 매개변수 결정 방법 및 그를 이용한 선형 합동 인터리버
DE102006026895B3 (de) * 2006-06-09 2007-11-08 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Interleaver-Vorrichtung, Empfänger für ein von der Interleaver-Vorrichtung erzeugtes Signal, Sender zum Erzeugen eines Sendesignals, Verfahren zum Verarbeiten eines Codeworts, Verfahren zum Empfangen eines Signals und Computer-Programm
US8379738B2 (en) 2007-03-16 2013-02-19 Samsung Electronics Co., Ltd. Methods and apparatus to improve performance and enable fast decoding of transmissions with multiple code blocks
US8386878B2 (en) 2007-07-12 2013-02-26 Samsung Electronics Co., Ltd. Methods and apparatus to compute CRC for multiple code blocks
WO2009014298A1 (en) * 2007-07-20 2009-01-29 Electronics And Telecommunications Research Institute Address generation apparatus and method of data interleaver/deinterleaver
CN101359977B (zh) * 2007-08-02 2012-09-26 财团法人工业技术研究院 适用于数据切换多路复用的方法及装置
US8555148B2 (en) * 2007-09-18 2013-10-08 Samsung Electronics Co., Ltd. Methods and apparatus to generate multiple CRCs
US8161360B1 (en) * 2007-10-31 2012-04-17 Link—A—Media Devices Corporation Integrated interleaved codes
US8200733B1 (en) 2008-04-15 2012-06-12 Freescale Semiconductor, Inc. Device having interleaving capabilities and a method for applying an interleaving function
US8982832B2 (en) * 2008-04-28 2015-03-17 Qualcomm Incorporated Wireless communication of turbo coded data with time diversity
US20110047434A1 (en) * 2008-04-28 2011-02-24 Qualcomm Incorporated Wireless communication of turbo coded atsc m/h data with time diversity
US8612820B2 (en) * 2009-04-11 2013-12-17 Qualcomm Incorporated Apparatus and methods for interleaving in a forward link only system
CN101931419B (zh) * 2009-06-24 2013-04-03 中兴通讯股份有限公司 一种turbo码内交织器的计算方法及装置
DE102011006112B4 (de) * 2011-03-25 2024-01-18 Siemens Aktiengesellschaft Elektrischer Schalter und Überstromauslösemodul
US9160370B2 (en) * 2014-01-02 2015-10-13 Oracle International Corporation Single component correcting ECC using a reducible polynomial with GF(2) coefficients

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL186790C (nl) 1980-07-14 1991-02-18 Philips Nv Werkwijze voor het coderen van een reeks van blokken tweetallige databits in een reeks van blokken van tweetallige kanaalbits, alsmede modulator, demodulator en registratiedrager te gebruiken bij de werkwijze.
US4802170A (en) * 1987-04-29 1989-01-31 Matrox Electronics Systems Limited Error disbursing format for digital information and method for organizing same
FR2675971B1 (fr) 1991-04-23 1993-08-06 France Telecom Procede de codage correcteur d'erreurs a au moins deux codages convolutifs systematiques en parallele, procede de decodage iteratif, module de decodage et decodeur correspondants.
US5483541A (en) * 1993-09-13 1996-01-09 Trw Inc. Permuted interleaver
US5548775A (en) * 1993-12-30 1996-08-20 International Business Machines Corporation System and method for adaptive active monitoring of high speed data streams using finite state machines
US5446474A (en) 1994-01-19 1995-08-29 Lockheed Missiles & Space Company, Inc. Redeployable furlable rib reflector
US5537420A (en) * 1994-05-04 1996-07-16 General Instrument Corporation Of Delaware Convolutional interleaver with reduced memory requirements and address generator therefor
KR970036265A (ko) 1995-12-29 1997-07-22 한승준 무릎 보호용 완충 패드가 장착된 자동차의 인스트루먼트 패널
KR0176888B1 (ko) 1996-01-24 1999-04-15 구자홍 광디스크 기록재생기의 서보 제어 장치
US5996104A (en) 1996-09-13 1999-11-30 Herzberg; Hanan System for coding system
US6035434A (en) * 1997-06-12 2000-03-07 Advanced Micro Devices, Inc. System and method for bit interleaving of half-rate speech data
US6101465A (en) * 1997-06-12 2000-08-08 Advanced Micro Devices, Inc. System and method for bit interleaving of full-rate speech data
KR19990012821A (ko) * 1997-07-31 1999-02-25 홍성용 전자기파 흡수체 조성물과 이의 제조 방법, 전자기파 흡수용도료 조성물과 이의 제조 방법 및 이의 도포 방법
WO1999012265A1 (fr) 1997-09-02 1999-03-11 Sony Corporation Codeur/decodeur turbo et procede de codage/decodage turbo
EP0963048A3 (de) * 1998-06-01 2001-02-07 Her Majesty The Queen In Right Of Canada as represented by the Minister of Industry Maximale logarithmische a-posteriori-wahrscheinlichkeitsdekodierung und entsprechende turbodekodierung
US6007995A (en) 1998-06-26 1999-12-28 Isis Pharmaceuticals Inc. Antisense inhibition of TNFR1 expression
DE69936626T2 (de) * 1998-08-06 2008-05-21 Samsung Electronics Co., Ltd., Suwon Kanalkodierung und -dekodierung für ein kommunikationssystem
US6334197B1 (en) * 1998-08-17 2001-12-25 Hughes Electronics Corporation Turbo code interleaver with near optimal performance
ATE329413T1 (de) * 1998-08-20 2006-06-15 Samsung Electronics Co Ltd Vorrichtung und verfahren zur einfügung von vorher bekannten bits in die eingangsstufe eines kanalkodierers
US6704370B1 (en) * 1998-10-09 2004-03-09 Nortel Networks Limited Interleaving methodology and apparatus for CDMA
US6304991B1 (en) 1998-12-04 2001-10-16 Qualcomm Incorporated Turbo code interleaver using linear congruential sequence
EP1367729A1 (de) 1999-05-19 2003-12-03 Samsung Electronics Co., Ltd. Gerät und Verfahren zur Turboverschachtelung
KR100393608B1 (ko) * 2000-09-29 2003-08-09 삼성전자주식회사 유.엠.티.에스시스템내 터보부호화기의 내부 인터리버 및인터리빙 수행 방법
EP1576735B1 (de) * 2002-12-16 2016-04-06 Telecom Italia S.p.A. Adressberechnung für interleaver in turbo encodern und decodern

Also Published As

Publication number Publication date
PT1097516E (pt) 2007-01-31
AU752231B2 (en) 2002-09-12
EP1097516A4 (de) 2002-06-12
EP1367730A1 (de) 2003-12-03
CN100442679C (zh) 2008-12-10
US6598202B1 (en) 2003-07-22
WO2000070771A1 (en) 2000-11-23
IL169471A0 (en) 2007-07-04
CN1274096C (zh) 2006-09-06
ATE349108T1 (de) 2007-01-15
EP1097516A1 (de) 2001-05-09
EP1367726B1 (de) 2013-02-20
DK1367726T3 (da) 2013-05-06
CN1497866A (zh) 2004-05-19
IL140661A (en) 2006-10-31
IL169471A (en) 2010-04-29
EP1367731A1 (de) 2003-12-03
ES2275508T3 (es) 2007-06-16
CN1520058A (zh) 2004-08-11
EP1367726A1 (de) 2003-12-03
DK1097516T3 (da) 2007-01-29
USRE43212E1 (en) 2012-02-21
JP2003500885A (ja) 2003-01-07
IL140661A0 (en) 2002-02-10
CN1520060A (zh) 2004-08-11
CN100574116C (zh) 2009-12-23
EP1367730B1 (de) 2018-03-28
CN1520059A (zh) 2004-08-11
EP1097516B1 (de) 2006-12-20
EP1367728A1 (de) 2003-12-03
CY1114077T1 (el) 2016-07-27
CA2337918C (en) 2006-02-21
DE60032441T2 (de) 2007-06-06
PT1367726E (pt) 2013-05-10
CN1171393C (zh) 2004-10-13
JP3359912B1 (ja) 2002-12-24
CY1105921T1 (el) 2011-04-06
ES2408118T3 (es) 2013-06-18
CN1520044A (zh) 2004-08-11
CA2337918A1 (en) 2000-11-23
CN1271795C (zh) 2006-08-23
DE60032441D1 (de) 2007-02-01
CN1318225A (zh) 2001-10-17
AU4621300A (en) 2000-12-05
EP1367729A1 (de) 2003-12-03
CN1271796C (zh) 2006-08-23

Similar Documents

Publication Publication Date Title
DE20023169U1 (de) Turbo-Verschachtelungsvorrichtung
DE60020637T2 (de) Ratenanpassung und Kanalverschachtelung für ein Kommunikationssystem
DE10030407B4 (de) Verfahren zur optimalen Ratenanpassung in einem Mobilkommunikationssystem
DE69936683T2 (de) Verschachtelung unter Verwendung von Inkrementen basierend auf dem Goldenen Schnitt
DE60009973T2 (de) Verschachtelungsverfahren, Verschachtelungsgerät, Turbokodierungsverfahren und Turbokodierer
DE69909649T2 (de) Effiziente implimentierung von vorgeschlagenem turbokodeverschachteler für die dritte generation von kodemultiplexvielfachzugriff (cdma)
DE69838451T2 (de) Verfahren und schaltung zur adaptiven kanalkodierung
DE60034203T2 (de) Vorrichtung zur übereinstimmung der datenrate und verfahren zur datenübertragung
DE60124488T2 (de) Verschachteler und Verschachtelungsverfahren für einen UMTS Turboenkoder
DE69529546T2 (de) Sequentieller Interleaver und Adressgenerator mit verringertem Speicheraufwand
DE20023252U1 (de) Vorrichtung zum Verschachteln/Entschachteln für ein Kommunikationssystem
DE60002705T2 (de) Binnen-reihen permutationen für turbocode
DE102005010006B4 (de) Verfahren und Vorrichtung zum Terminieren einer iterativen Turbo-Dekodierung
DE69907011T2 (de) Verallgemeinerter faltungsver- und -entschachteler
DE60108892T2 (de) Modul, vorrichtung und verfahren zum hochbitratigen dekodieren eines verketteten codes
DE69905255T2 (de) Verbesserte verschachteler für turbo-kodes
DE69837077T2 (de) Verschachteler für Turbo-Kodierer
DE10206727A1 (de) Kombinierter Ver-und Entschachteler sowie Turbo-Decodierer mit kombiniertem Ver-und Entschachteler
EP0067301A2 (de) Einrichtung zur Erzeugung von Prüfbits zur Sicherung eines Datenwortes
DE60112445T2 (de) Modifikation eines Verschachtelermusters
DE69908629T2 (de) Hybrid verschachteler für turbo-kodierer
EP1323269A2 (de) Abschnittsweise entschachtelung
DE60311997T2 (de) Verfahren zur ersten Verschachtelung für einen Sender mit zwei Verschachtelern
DE20023803U1 (de) Turbo-verschachtelungsvorrichtung
EP2139120B1 (de) Interleaver

Legal Events

Date Code Title Description
R207 Utility model specification

Effective date: 20030528

R150 Utility model maintained after payment of first maintenance fee after three years

Effective date: 20030814

R151 Utility model maintained after payment of second maintenance fee after six years

Effective date: 20060531

R152 Utility model maintained after payment of third maintenance fee after eight years

Effective date: 20080610

R071 Expiry of right