[go: up one dir, main page]

DE20023807U1 - Rate matching device for data communication system has one of rate matching blocks that punctures received symbols based on predetermined puncturing pattern in order to rate match received symbols - Google Patents

Rate matching device for data communication system has one of rate matching blocks that punctures received symbols based on predetermined puncturing pattern in order to rate match received symbols Download PDF

Info

Publication number
DE20023807U1
DE20023807U1 DE20023807U DE20023807U DE20023807U1 DE 20023807 U1 DE20023807 U1 DE 20023807U1 DE 20023807 U DE20023807 U DE 20023807U DE 20023807 U DE20023807 U DE 20023807U DE 20023807 U1 DE20023807 U1 DE 20023807U1
Authority
DE
Germany
Prior art keywords
rate matching
bits
rate
parameters
puncturing
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
DE20023807U
Other languages
German (de)
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
Priority claimed from EP00944447A external-priority patent/EP1101321B1/en
Publication of DE20023807U1 publication Critical patent/DE20023807U1/en
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/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
    • 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/63Joint error correction and other techniques
    • H03M13/635Error control coding in combination with rate matching
    • H03M13/6356Error control coding in combination with rate matching by repetition or insertion of dummy data, i.e. rate reduction
    • 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/63Joint error correction and other techniques
    • H03M13/635Error control coding in combination with rate matching
    • H03M13/6362Error control coding in combination with rate matching by puncturing
    • 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
    • H04L1/0069Puncturing patterns
    • 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/0059Convolutional 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/0064Concatenated codes
    • H04L1/0066Parallel concatenated codes

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)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

A channel encoder (200) processes the input information bits to obtain the encoded symbols. The rate matching blocks (231-239) whose number is equal to the denominator of the coding rate of the encoder, receive a number of encoded symbols separately. One of the rate matching blocks punctures the received symbols based on a predetermined puncturing pattern in order to rate match the received symbols. Independent claims are also included for the following: (a) a rate matching method; (b) and a symbol determining method.

Description

HINTERGRUND DER ERFINDUNGBACKGROUND OF THE INVENTION

1. Erfindungsgebiet1. Field of the invention

Die vorliegende Erfindung betrifft allgemein eine Kanalcodierungsvorrichtung für ein Datenübertragungssystem und insbesondere eine Vorrichtung zur Anpassung der Raten von kanalcodierten Symbolen.The The present invention relates generally to a channel coding apparatus for a Data transfer system and in particular a device for adapting the rates of channel-coded Symbols.

2. Beschreibung des Standes der Technik2. Description of the state of the technique

In digitalen Übertragungssystemen, z.B. Satellitensysteme, ISDN- (Integrated Services Digital Network) Systeme, digitale Zellensysteme, W-CDMA- (Wideband Code Division Multiple Access) Systeme, UMTS (Universal Mobile Telecommunication Systems) und IMT-2000 (International Telecommunication-2000) Systeme, werden im Allgemeinen Quellenbenutzerdaten vor dem Senden mit einem Fehlerkorrekturcode codiert, um die Zuverlässigkeit des Systems zu erhöhen. Zur Kanalcodierung werden typischerweise ein Konvolutionscode und ein linearer Blockcode verwendet, und für den linearen Blockcode wird ein einzelner Decoder verwendet. Neben solchen Codes wird in letzter Zeit in großem Umfang auch ein Turbocode benutzt, der zum Senden und Empfangen von Daten nützlich ist.In digital transmission systems, e.g. Satellite Systems, ISDN (Integrated Services Digital Network) Systems, Digital Cell Systems, W-CDMA (Wideband Code Division Multiple Access) systems, UMTS (Universal Mobile Telecommunication Systems) and IMT-2000 (International Telecommunication-2000) systems, will generally be source user data before sending with one Error correction code encoded to increase the reliability of the system. to Channel encoding will typically be a convolutional code and a linear block code is used, and for the linear block code a single decoder used. In addition to such codes will last Time in big Scope also used a turbo code, which is to send and receive useful for data is.

In Vielfachzugriffs-Übertragungssystemen, die vielfache Benutzer und Vielkanal-Übertragungssysteme mit vielfachen Kanälen unterstützen, werden kanalcodierte Symbole an eine gegebene Zahl von Sendekanalsymbolen angepasst, um die Effizienz der Datenübertragung zu steigern und die Systemleistung zu verbessern. Ein derartiger Vorgang wird "Ratenanpassung" genannt. Eine Ratenanpassung wird auch vorgenommen, um die Ausgangssymbolrate an die Sendesymbolrate anzupassen. Typische Ratenanpassungsverfahren umfassen das Punktieren oder Wiederholen von Teilen von kanalcodierten Symbolen.In Multiple access transmission systems, the multiple users and multi-channel transmission systems with multiple channels support, Channel coded symbols are added to a given number of transmit channel symbols adapted to increase the efficiency of data transmission and to improve the system performance. Such a process is called "rate matching". A rate adjustment is also made to match the output symbol rate to the transmit symbol rate adapt. Typical rate matching techniques include puncturing or repeating parts of channel coded symbols.

Eine herkömmliche Ratenanpassungsvorrichtung wird in 1 gezeigt. Gemäß 1 codiert ein Kanalcodierer 100 Eingangsinformationbits (k) mit einer Codierungsrate R = k/n und gibt codierte Symbole (n) aus. Ein Multiplexer (MUX) 110 multiplext die codierten Symbole. Ein Ratenanpassungsblock 120 passt die Rate der gemultiplexten codierten Symbole durch Punktieren oder Wiederholen an und gibt die in der Rate angepassten Symbole an einen Sender (nicht gezeigt) aus. Der Kanalcodierer 100 arbeitet bei jeder Periode eines Symboltakts mit einer Geschwindigkeit TAKT, und der Multiplexer 110 und der Ratenanpassungsblock 120 arbeiten bei jeder vorbestimmten Periode eines Takts mit einer Geschwindigkeit n × TAKT.A conventional rate matching device is disclosed in US Pat 1 shown. According to 1 encodes a channel coder 100 Input information bits (k) with a coding rate R = k / n and outputs coded symbols (n). A multiplexer (MUX) 110 multiplexes the coded symbols. A rate adjustment block 120 adjusts the rate of the multiplexed coded symbols by puncturing or repeating, and outputs the rate-adjusted symbols to a transmitter (not shown). The channel coder 100 at each cycle of a symbol clock operates at a rate CLOCK, and the multiplexer 110 and the rate matching block 120 operate at every predetermined period of a clock at a speed n × CLOCK.

Man sollte zur Kenntnis nehmen, dass sie Ratenanpassungsvorrichtung von 1 zur Anwendung auf den Fall vorgeschlagen wird, wo ein nicht systematischer Code, z.B. ein Konvolutionscode oder ein linearer Blockcode, zur Kanalcodierung verwendet wird. Für Symbole, die mit einem nicht systematischen Code, z.B. einem Konvolutionscode oder einem linearen Blockcode codiert werden, können, weil es kein Gewicht zwischen Symbolen gibt, d.h., weil die Fehleranfälligkeit der von dem Kanalcodierer 100 ausgegebenen codierten Symbole für jedes Symbol innerhalb eines Rahmens ähnlich ist, die durch den Kanalcodierer 100 codierten Symbole dem Ratenanpassungsblock 120 ohne Unterschied zugeführt werden und eine Punktierung oder Wiederholung erfahren, wie in 1 gezeigt.It should be noted that they rate adjustment device of 1 for application to the case where a non-systematic code, eg, a convolutional code or a linear block code, is used for channel coding. For symbols encoded with a non-systematic code, eg, a convolutional code or a linear block code, because there is no weight between symbols, that is, because the error rate of the channel coder 100 output coded symbols for each symbol within a frame that is represented by the channel coder 100 encoded symbols the rate matching block 120 be fed without distinction and undergo a puncturing or repetition, as in 1 shown.

Wenn aber systematische Codes, z.B. ein Turbocode, verwendet werden, besteht zwischen Symbolen ein Gewicht, so dass es für die kanalcodierten Symbole, die dem Ratenanpassungsblock 120 zugeführt werden, nicht gut ist, in gleichem Maße Punktierung oder Wiederholung zu erfahren. Weil das Gewicht zwischen Informationssymbolen und Paritätssymbolen nicht gleich ist, wird empfohlen, dass der Ratenanpassungsblock 120 Paritätssymbole aus den turbocodierten Symbolen punktieren darf, aber die Informationssymbole nicht punktieren sollte. Als Alternative kann der Ratenanpassungsblock 120 die Informationssymbole aus den turbocodierten Symbolen wiederholen, um die Energie der Symbole zu erhöhen, sollte aber, wenn möglich, die Paritätssymbole nicht wiederholen. Das heißt, es ist schwierig, die Ratenanpassungsvorrichtung von 1 zu verwenden, wenn ein Turbocode verwendet wird. Dies ist normal angesichts der Tatsache, dass die Struktur von 1 nur für nicht systematische Codes, z.B. konvolutionale Codes oder lineare Blockcodes, zur Verfügung steht, und der Turbocode neue Merkmale auf weist, die sich von denen der Konvolutionscodes und der linearen Blockcodes unterscheiden.However, if systematic codes, such as a turbo code, are used, there is a weight between symbols, so it is important for the channel coded symbols that match the rate matching block 120 It is not good to experience dotting or repetition to the same degree. Because the weight between information symbols and parity symbols is not equal, it is recommended that the rate matching block 120 Parity symbols may puncture from the turbo-coded symbols, but should not puncture the information symbols. Alternatively, the rate matching block 120 Repeat the information symbols from the turbo-coded symbols to increase the energy of the symbols, but should not, if possible, repeat the parity symbols. That is, it is difficult to use the rate matching device of 1 to use when a turbo code is used. This is normal given the fact that the structure of 1 only for non-systematic codes, such as convolutional codes or linear block codes, and the turbo code has new features different from those of the convolutional codes and the linear block codes.

Um solch ein Problem zu lösen, ist in letzter Zeit ein Verfahren zur Ratenanpassung der mit dem Turbocode kanalcodierten Symbole vorgeschlagen worden. Ein solches Verfahren kann jedoch nur beim Anpassen der Rate der turbocodierten Symbole benutzt werden, und kann nicht beim Anpassen der Rate der mit den bestehenden Konvolutionalcodes oder linearen Blockcodes kanalcodierten Symbole benutzt werden.In order to solve such a problem, a method of rate matching of the turbo code channel coded symbols has recently been proposed. However, such a method can only be used when adjusting the rate of the turbo-coded symbols, and can not be used in adjusting the rate of the existing convolutional or linear block code channel coded symbols.

Es besteht daher ein Bedarf an einer einzelnen Vorrichtung und einem Verfahren zur Ratenanpassung von sowohl mit einem bestehenden nicht systematischen Code als auch mit einem systematischen Code kanalcodierten Symbolen. Zum Beispiel benötigt ein Datenübertragungssystem, das bestimmt ist, sowohl nicht systematischen Code als auch systematischen Code zu unterstützen, zwei verschiedene Strukturen, um beide Codes in der Rate anzupassen, was zu einer Erhöhung der Komplexität führt. Wenn es aber möglich ist, die unterschiedlichen Codes mittels einer einzigen Struktur in der Rate anzupassen, wird die Komplexität der Implementierung verringert werden.It There is therefore a need for a single device and a Method of rate matching of both with an existing not systematic code as well as channel-coded with a systematic code Symbols. For example needed a data transmission system, that is, both non-systematic code and systematic To support code two different structures to adjust both codes in the rate what an increase the complexity leads. If possible is the different codes by means of a single structure Adjusting the rate reduces the complexity of the implementation become.

Es ist daher eine Aufgabe der vorliegenden Erfindung, eine Vorrichtung zur Ratenanpassung von sowohl mit einem nicht systematischen Code als auch mit einem systematischen Code kanalcodierten Symbolen mittels einer einzigen Struktur in einem Datenübertragungssystem zur Verfügung zu stellen.It It is therefore an object of the present invention to provide a device for rate matching of both with a non-systematic code as well as channel-coded symbols using a systematic code a single structure in a data transmission system put.

Es ist eine andere Aufgabe der vorliegenden Erfindung, eine Vorrichtung zur selektiven Ratenanpassung von mit einem nicht systematischen Code kanalcodierten Symbolen oder mit einem systematischen Code kanalcodierten Symbolen in einem Datenübertragungssystem bereitzustellen, das sowohl einen nicht systematischen Code als auch einen systematischen Code unterstützt.It Another object of the present invention is an apparatus for the selective rate adaptation of non-systematic Code channel-coded symbols or with a systematic code to provide channel coded symbols in a data transmission system, this includes both a non-systematic code and a systematic one Code supported.

Es ist eine weitere Aufgabe der vorliegenden Erfindung, eine Vorrichtung zur Ratenanpassung von kanalcodierten Symbolen bereitzustellen, um die Effizienz der Datenübertragung zu steigern und die Systemleistung in einem Datenübertragungssystem zu verbessern.It Another object of the present invention is a device to provide rate matching of channel coded symbols, about the efficiency of data transmission increase and system performance in a data transmission system to improve.

Um die obigen und andere Aufgaben zu erfüllen, werden eine Vorrichtung zur Anpassung einer Rate von kanalcodierten Symbolen in einem Datenübertragungssystem vorgeschlagen. Die Ratenanpassungsvorrichtung kann auf ein Datenübertragungssystem angewandt werden, das entweder einen nicht systematischen Code (Konvolutionalcode oder linearer Blockcode) oder einen systematischen Code (Turbocode) oder beide Codes benutzt. Die Ratenanpassungsvorrichtung umfasst eine Mehrzahl von Ratenanpassungsblöcken, deren Anzahl gleich einem Kehrwert der Codierungsrate des Kanalcodierers ist. Die Ratenanpassungsvorrichtung kann die mit einem nicht systematischen Code codierten Symbole oder die mit einem systematischen Code codierten Symbole in der Rate anpassen, indem Ausgangsparameter, die die Anzahl von Eingangssymbolen, die Anzahl von Ausgangssymbolen und die das Punktierungs/Wiederholungs-Schema bestimmenden Parameter einschließen, geändert werden.Around To accomplish the above and other objects will become a device for adjusting a rate of channel coded symbols in a data transmission system proposed. The rate adaptation device may be based on a data transmission system applied either a non-systematic code (convolutional code or linear block code) or a systematic code (turbo code) or both codes are used. The rate adjustment device comprises a plurality of rate matching blocks, the number of which equals one Inverse of the coding rate of the channel coder. The rate adjustment device can be the symbols encoded with a non-systematic code or the symbols encoded with a systematic code in the rate adjust by output parameters that represent the number of input symbols, the number of output symbols and the punctuation / repetition scheme include determining parameters.

KURZBESCHREIBUNG DER ZEICHNUNGENSUMMARY THE DRAWINGS

Die obigen und andere Aufgaben, Merkmale und Vorteile der vorliegenden Erfindung werden aus der folgenden ausführlichen Beschreibung klarer ersichtlich, wenn sie mit den begleitenden Zeichnungen in Verbindung gebracht wird.The Above and other objects, features and advantages of the present invention The invention will become more apparent from the following detailed description as shown in the accompanying drawings is brought.

1 ist eine Zeichnung, die eine Struktur einer Ratenanpassungsvorrichtung nach dem Stand der Technik darstellt. 1 Fig. 12 is a drawing illustrating a structure of a prior art rate matching device.

2 und 3 sind Zeichnungen, die Strukturen von Ratenanpassungsvorrichtungen gemäß Ausführungen der vorliegenden Erfindung darstellen. 2 and 3 FIG. 13 is drawings illustrating structures of rate matching devices according to embodiments of the present invention. FIG.

4 ist eine Zeichnung, die eine Struktur einer Ratenanpassungsvorrichtung durch Punktieren gemäß einer Ausführung der vorliegenden Erfindung darstellt. 4 Fig. 12 is a drawing illustrating a structure of a rate matching apparatus by puncturing according to an embodiment of the present invention.

5 ist eine Zeichnung, die eine Struktur einer Ratenanpassungsvorrichtung durch Punktieren gemäß einer anderen Ausführung der vorliegenden Erfindung darstellt. 5 Fig. 12 is a drawing illustrating a structure of a rate matching apparatus by puncturing according to another embodiment of the present invention.

6 ist eine ausführliche Zeichnung, die eine Struktur des in 5 gezeigten Turbocodierers darstellt. 6 is a detailed drawing showing a structure of the in 5 represents shown turbo encoder.

7 ist ein Flussdiagramm, das eine Ratenanpassungsprozedur durch Punktieren gemäß einer Ausführung der vorliegenden Erfindung darstellt. 7 FIG. 10 is a flowchart illustrating a rate matching procedure by puncturing according to an embodiment of the present invention. FIG.

8 ist eine Zeichnung, die eine Struktur einer Ratenanpassungsvorrichtung durch Punktieren gemäß einer weiteren Ausführung der vorliegenden Erfindung darstellt. 8th Fig. 12 is a drawing illustrating a structure of a rate matching device by puncturing according to another embodiment of the present invention.

9 ist eine Zeichnung, die eine Struktur einer Ratenanpassungsvorrichtung durch Wiederholen gemäß einer Ausführung der vorliegenden Erfindung darstellt. 9 Fig. 12 is a drawing illustrating a structure of a rate matching device by repeating according to an embodiment of the present invention.

10 ist eine Zeichnung, die eine Struktur einer Ratenanpassungsvorrichtung durch Wiederholen gemäß einer anderen Ausführung der vorliegenden Erfindung darstellt. 10 Fig. 12 is a drawing illustrating a structure of a rate matching device by repeating according to another embodiment of the present invention.

11 ist ein Flussdiagramm, das eine Ratenanpassungsprozedur durch Wiederholen gemäß einer Ausführung der vorliegenden Erfindung darstellt. 11 FIG. 10 is a flowchart illustrating a rate matching procedure by repeating according to an embodiment of the present invention. FIG.

AUSFÜHRLICHE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGDETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

Bevorzugte Ausführungen der vorliegenden Erfindung werden im Folgenden mit Verweis auf die begleitenden Zeichnungen beschrieben. In der folgenden Beschreibung werden wohl bekannte Funktionen oder Konstruktionen nicht im Einzelnen beschrieben, weil sie die Erfindung in unnötiger Einzelheit trüben würden.preferred versions The present invention will be described below with reference to the accompanying drawings. In the following description are not well-known functions or constructions in detail described because they would tarnish the invention in unnecessary detail.

Beim Entwerten einer Ratenanpassungsvorrichtung erforderliche VoraussetzungenWhen canceled a rate adjustment device required conditions

Bevor die Erfindung beschrieben wird, wird zuerst auf Voraussetzungen verwiesen, die in Betracht gezogen werden sollten, wenn mit einem nicht systematischen Code, z.B. einem Konvolutionalcode oder einem linearen Blockcode kanalcodierte Symbole in der Rate angepasst werden (in der folgenden Beschreibung wird der nicht systematische Code als ein Konvolutionalcode angenommen). Die Voraussetzungen 1A bis 3A unten sind die Voraussetzungen, die berücksichtigt werden sollten, wenn durch Punktieren codierte Symbole in der Rate angepasst werden, und die Voraussetzungen 1C und 2C unten sind die Voraussetzungen, die berücksichtigt werden sollten, wenn durch Wiederholen codierte Symbole in der Rate angepasst werden.

  • Voraussetzung 1A: Eine Eingangssymbolfolge aus codierten Symbolen sollte mittels eines Punktierungsschemas mit einer spezifizierten Periode punktiert werden.
  • Voraussetzung 2A: Die Anzahl punktierter Bits aus den Eingangssymbolen sollte, wenn möglich, minimiert werden.
  • Voraussetzung 3A: Ein gleichmäßiges Punktierungsschema sollte benutzt werden, so dass die Eingangssymbolfolge, die aus von einem Codierer ausgegebenen codierten Symbolen besteht, gleichmäßig punktiert wird.
  • Voraussetzung 1C: Eine Eingangssymbolfolge aus codierten Symbolen sollte mittels eines Wiederholungsschemas mit einer spezifizierten Periode wiederholt werden.
  • Voraussetzung 2C: Ein gleichmäßiges Wiederholungsschema sollte benutzt werden, so dass die Eingangssymbolfolge, die aus von einem Codierer ausgegebenen Symbolen besteht, gleichmäßig wiederholt wird.
Before describing the invention, reference is first made to conditions which should be considered when adapting channel-coded symbols in rate with a non-systematic code, eg, a convolutional code or a linear block code (in the following description, the non-systematic code assumed as a convolutional code). The prerequisites 1A to 3A below are the prerequisites that should be considered when adjusting punctured coded symbols in the rate, and conditions 1C and 2C below are the prerequisites that should be considered when repeating coded symbols in the rate be adjusted.
  • Condition 1A: An input symbol sequence of coded symbols should be punctured using a puncturing scheme with a specified period.
  • Condition 2A: The number of punctured bits from the input symbols should be minimized, if possible.
  • Prerequisite 3A: A uniform puncturing scheme should be used so that the input symbol sequence consisting of coded symbols output by an encoder is equally punctured.
  • Condition 1C: An input symbol string of coded symbols should be repeated by means of a repetition scheme with a specified period.
  • Condition 2C: A uniform repetition scheme should be used so that the input symbol sequence consisting of symbols output from an encoder is uniformly repeated.

Diese Voraussetzungen beruhen auf der Annahme, dass die Fehleranfälligkeit der von dem Codierer, der einen Konvolutionalcode benutzt, ausgegebenen Symbole für jedes Symbol innerhalb eines Rahmens (oder Codeworts) ungefähr gleich ist. Tatsächlich ist bekannt, dass, wenn die obigen Voraussetzungen als hauptsächliche Begrenzungsfaktoren beim Ausführen der Punktierung zur Ratenanpassung benutzt werden, positive Ergebnisse erhalten werden, wie in den folgenden Verweisungen gezeigt: [1] G. D. Forney, "Convolutional codes I: Algebraic structure", IEEE Trans. Inform. Theory, Vol. IT-16, Seiten 720–738, Nov. 1970, [2] J. B. Cain, G. C. Clark und J. M. Geist, " Punctured convolutional codes of a rate (n–1)/n and simplified maximum likelihood decoding", IEEE Trans. Inform. Theory, Vol. IT-25, Seiten 97–100, Jan 1979.These Prerequisites are based on the assumption that the error rate that output from the encoder using a convolutional code Symbols for every symbol within a frame (or codeword) is about the same is. Indeed It is known that if the above prerequisites are the main one Limiting factors when executing puncturing are used for rate matching, positive results as shown in the following references: [1] G. D. Forney, "Convolutional codes I: Algebraic structure ", IEEE Trans. Inform. Theory, Vol. IT-16, pp. 720-738, Nov. 1970, [2] J.B. Cain, G.C. Clark, and J.M. Geist, "Punctured convolutional codes of a rate (n-1) / n and simplified maximum likelihood decoding ", IEEE Trans. Inform. Theory, Vol. IT-25, Pages 97-100, Jan 1979.

Als nächstes wird auf die Voraussetzungen verwiesen, die berücksichtigt werden sollten, wenn mit einem systematischen Code kanalcodierte Symbole in der Rate angepasst werden (in der folgenden Beschreibung wird angenommen, dass der systematische Code ein Turbocode ist). Die Voraussetzungen 1B bis 5B unten sind die Voraussetzungen, die berücksichtigt werden sollten, wenn eine Ratenanpassung der durch Punktierung codierten Symbole erfolgt, und die Voraussetzungen 1D bis 5D sind die Voraussetzungen, die berücksichtigt werden sollten, wenn eine Ratenanpassung der durch Wiederholen codierten Symbole erfolgt.

  • Voraussetzung 1B: Da ein Turbocode ein systematischer Code ist, sollte der Teil, der Informationssymbolen aus den durch den Codierer codierten Symbolen entspricht, nicht punktiert werden. Außerdem sollte aus dem weiteren Grund, dass ein iterativer Decoder als Decoder für den Turbocode verwendet wird, der den Informationssymbolen entsprechende Teil nicht punktiert werden.
  • Voraussetzung 2B: Da ein Turbocodierer aus zwei parallel geschalteten Komponentencodierern besteht, ist vorzuziehen, den minimalen freien Abstand jedes der zwei Komponentencodierer für den minimalen Abstand des ganzen Codes zu maximieren. Um optimale Leistung zu erlangen, sollten deshalb die ausgegebenen Paritätssymbole der zwei Komponentencodierer gleichmäßig punktiert werden.
  • Voraussetzung 3B: Da in den meisten iterativen Decodern die Decodierung von dem ersten internen Decoder durchgeführt wird, sollte das erste Ausgangssymbol des ersten Komponentencodierers nicht punktiert werden. Mit anderen Worten, das erste Symbol eines Codierers sollte nicht punktiert werden, ungeachtet ob es eine Systematik oder Paritätsbits sind, weil das erste Symbol den Anfangspunkt der Codierung angibt.
  • Voraussetzung 4B: Die ausgegebenen Paritätssymbole jedes Komponentencodierers sollten mittels eines gleichmäßigen Punktierungsschemas punktiert werden, so dass die von dem Codierer ausgegebenen codierten Symbole, z.B. der bestehende Konvolutionalcode, gleichmäßig punktiert werden.
  • Voraussetzung 5B: Die für den Turbocodierer benutzten Abschlussschwanzbits sollten wegen der nachteiligen Wirkung auf die Leistung des Decoders nicht punktiert werden. Zum Beispiel hat ein SOVA- (Soft Output Viterbi Algorithm) Decoder eine niedrige Leistung, wenn die Abschlussschwanzbits punktiert werden, verglichen mit dem Fall, wo die Abschlussschwanzbits nicht punktiert werden.
  • Voraussetzung 1D: Da ein Turbocode ein systematischer Code ist, sollte ein Teil, der Informationssymbolen aus den durch den Codierer codierten Symbolen entspricht, wiederholt werden, um die Energie der Symbole zu steigern. Außerdem sollten, da ein iterativer Decoder als Decoder für den Turbocode benutzt wird, der den Informationssymbolen entsprechende Teil oft wiederholt werden.
  • Voraussetzung 2D: Da ein Turbocodierer aus zwei parallel geschalteten Komponentencodierern besteht, ist vorzuziehen, den minimalen freien Abstand jedes der zwei Komponentencodierer für den minimalen freien Abstand des ganzen Codes zu maximieren. Deshalb sollten, wenn die Paritätssymbole wiederholt werden, die ausgegebenen Paritätssymbole der zwei Komponentencodierer gleichmäßig wiederholt werden, um optimale Leistung zu erzielen.
  • Voraussetzung 3D: Da in den meisten iterativen Decodern die Decodierung von dem ersten internen Decoder durchgeführt wird, sollte das erste Ausgangssymbol des ersten Komponentendecoders vorzugsweise wiederholt werden, wenn die Paritätssymbole wiederholt werden.
  • Voraussetzung 4D: Die ausgegebenen Paritätssymbole jedes Komponentencodierers sollten mittels eines gleichmäßigen Wiederholungsschemas wiederholt werden, so dass die von dem Codierer ausgegebenen codierten Symbole, z.B. der bestehende Konvolutionalcode, gleichmäßig wiederholt werden.
  • Voraussetzung 5D: Die für den Turbocodierer benutzten Abschlussschwanzbits sollten wegen der Auswirkung auf die Leistung des Decoders wiederholt werden. Zum Beispiel hängt die Leistung eines SOVA- (Soft Output Viterbi Algoritm) Decoders davon ab, ob die Abschlussschwanzbits wiederholt werden oder nicht.
Next, reference is made to the requirements that should be considered when adapting channel-coded symbols in rate with a systematic code (in the following description, it is assumed that the systematic code is a turbo code). Conditions 1B through 5B below are the prerequisites that should be considered when rate matching the punctured coded symbols, and assumptions 1D through 5D are the prerequisites that should be considered when rate matching the symbols coded by repetition.
  • Condition 1B: Since a turbo code is a systematic code, the portion corresponding to information symbols from the symbols encoded by the encoder should not be punctured. In addition, for the other reason that an iterative decoder is used as a decoder for the turbo code, the part corresponding to the information symbols should not be punctured.
  • Condition 2B: Since a turbo encoder consists of two component encoders connected in parallel, it is preferable to maximize the minimum free space of each of the two component encoders for the minimum distance of the whole code. For optimal performance, therefore, the output parity symbols of the two component encoders should be dotted evenly.
  • Prerequisite 3B: Since in most iterative decoders, the decoding of the first internal deco which is performed, the first output symbol of the first component coder should not be punctured. In other words, the first symbol of an encoder should not be punctured, regardless of whether it is a system or parity bits, because the first symbol indicates the starting point of the encoding.
  • Condition 4B: The output parity symbols of each component coder should be punctured using a uniform puncturing scheme so that the coded symbols output by the coder, eg the existing convolutional code, are punctured evenly.
  • Condition 5B: The tail tail bits used for the turbo encoder should not be punctured because of the adverse effect on the performance of the decoder. For example, a SOVA (Soft Output Viterbi Algorithm) decoder has low power when the tail tail bits are punctured compared to the case where the tail bits are not punctured.
  • Condition 1D: Since a turbo code is a systematic code, a part corresponding to information symbols from the symbols encoded by the encoder should be repeated to increase the energy of the symbols. In addition, since an iterative decoder is used as a decoder for the turbo code, the part corresponding to the information symbols should be repeated often.
  • Condition 2D: Since a turbo encoder consists of two component coders connected in parallel, it is preferable to maximize the minimum free space of each of the two component coders for the minimum free space of the whole code. Therefore, if the parity symbols are repeated, the output parity symbols of the two component encoders should be evenly repeated to obtain optimum performance.
  • Requirement 3D: Since in most iterative decoders the decoding is performed by the first internal decoder, the first output symbol of the first component decoder should preferably be repeated when the parity symbols are repeated.
  • Prerequisite 4D: The output parity symbols of each component coder should be repeated by means of a uniform repetition scheme so that the coded symbols output by the coder, eg the existing convolutional code, are evenly repeated.
  • Requirement 5D: The tail tail bits used for the turbo encoder should be repeated because of the effect on the performance of the decoder. For example, the performance of a SOVA (Soft Output Viterbi Algoritm) decoder depends on whether the tail tail bits are repeated or not.

Die vorliegende Erfindung beabsichtigt, eine Ratenanpassungsvorrichtung zu implementieren, die nicht nur die Voraussetzungen 1A–3A und 1C–2C, sondern auch die Voraussetzungen 1B–5B und 1D–5D erfüllt. Das heißt, eine erfindungsgemäße Ratenanpassungsvorrichtung durch Punktieren dient als eine Ratenanpassungsvorrichtung, die die Voraussetzungen 1A bis 3A für konvolutional codierte Symbole erfüllt, und dient außerdem als eine Ratenanpassungsvorrichtung, die die Voraussetzungen 1B bis 5B für turbocodierte Symbole erfüllt. Die erfindungsgemäße Ratenanpassungsvorrichtung durch Wiederholen dient als eine Ratenanpassungsvorrichtung, die die Voraussetzungen 1C bis 2C für konvolutional codierte Symbole erfüllt, und dient außerdem als eine Ratenanpassungsvorrichtung, die die Voraussetzungen 1D bis 5D für turbocodierte Symbole erfüllt.The The present invention is intended to provide a rate matching device to implement that not only meets 1A-3A and 1C-2C but also meets the requirements 1B-5B and 1D-5D. That is, one Rate adjustment device according to the invention by puncturing serves as a rate matching device which Requirements 1A to 3A for convolutionally encoded symbols, and also serves as a rate matching device satisfying the requirements 1B to 5B for met turbocoded symbols. The rate adjustment device according to the invention by repetition serves as a rate matching device which the requirements 1C to 2C for convolutionally encoded symbols, and also serves as a rate matching device satisfying the requirements 1D to 5D for met turbocoded symbols.

Grundstruktur der Ratenanpassungsvorrichtungbasic structure the rate adjustment device

Erfindungsgemäße Ausführungen der Ratenanpassungsvorrichtungsstrukturen werden in 2 und 3 gezeigt. Insbesondere zeigt 2 ein Beispiel einer in Hardware implementierten Ratenanpassungsvorrichtung gemäß einer Ausführung der vorliegenden Erfindung, und 3 zeigt ein Beispiel einer in Software implementierten Ratenanpassungsvorrichtung gemäß einer Ausführung der vorliegenden Erfindung.Embodiments of the rate matching device structures according to the invention are disclosed in US Pat 2 and 3 shown. In particular shows 2 an example of a hardware implemented rate matching device according to an embodiment of the present invention, and 3 FIG. 12 shows an example of a software implemented rate adaptation device according to one embodiment of the present invention. FIG.

Gemäß 2 kanalcodiert ein Kanalcodierer 200 eingegebene Informationsbits mit einer Codierungsrate R = k/n und gibt codierte Symbole aus. Hier bezeichnet n die Zahl codierter Symbole, die ein Codewort ausmachen, und k bezeichnet die Zahl eingegebener Informationsbits, die ein Eingangsinformationswort ausmachen. Es gibt n Ratenanpassungsblöcke 231239, die jeweils codierte Symbole getrennt empfangen, die von dem Kanalcodierer 200 durch eine gemäß der Codierungsrate bestimmten Anzahl von Eingangssymbolen ausgegeben werden, und punktieren bzw. wiederholen die empfangenen Symbole. Die n Ratenanpassungsblöcke 231239 empfangen jeweils getrennt die codierten Symbole, die von dem Kanalcodierer 200 durch die durch Multiplizieren der Anzahl der codierten Symbole in einem Rahmen mit der Codierungsrate bestimmte Anzahl ausgegeben werden. Wenn z.B. die Zahl von codierten Symbolen in einem Rahmen 10 ist und die Codierungsrate R = 1/5 ist, empfangen die 5 Ratenanpassungsblöcke jeweils getrennt 2 Symbole. Jeder der Ratenanpassungsblöcke 231239 punktiert die empfangenen Symbole gemäß einem vorbestimmten Punktierungsschema oder wiederholt die empfangenen Symbole gemäß einem vorbestimmten Wiederholungsschema. Ein Multiplexer 240 multiplext die ratenangepassten Symbole von den Ratenanpassungsblöcken 231239 und gibt die gemultiplexten Symbole an einen Kanalsender (nicht gezeigt) aus. Da der Kanalsender jenseits des Umfangs der vorliegenden Erfindung liegt, wird ein ausführliche Beschreibung desselben hierin umgangen. Die Ratenanpassungsoperation der Ratenanpassungsblöcke 231239 wird aus der folgenden ausführlichen Beschreibung der Ausführungen der vorliegenden Erfindung klarer ersichtlich werden.According to 2 Channel encodes a channel encoder 200 input information bits at a coding rate R = k / n and outputs coded symbols. Here, n is the number of coded symbols that make up a codeword, and k is the number of input information bits that make up an input information word. There are n rate adjustment blocks 231 - 239 , each receiving coded symbols separately from the channel coder 200 are output by a number of input symbols determined according to the coding rate, and the received symbols puncture or repeat. The n rate adjustment blocks 231 - 239 each separately receive the coded symbols received from the channel coder 200 by the number determined by multiplying the number of coded symbols in a frame by the coding rate. For example, if the number of coded symbols in a frame is 10 and the coding rate is R = 1/5, the 5 rate matching blocks each separately receive 2 symbols. Each of the rate adjustment blocks 231 - 239 punctures the received symbols according to a predetermined puncturing scheme or repeats the received symbols according to a predetermined repeating scheme. A multiplexer 240 multiplexes the rate-adjusted symbols from the rate matching blocks 231 - 239 and outputs the multiplexed symbols to a channel transmitter (not shown). Since the channel transmitter is beyond the scope of the present invention, a detailed description thereof will be obviated herein. The rate matching operation of the rate matching blocks 231 - 239 will become more apparent from the following detailed description of the embodiments of the present invention.

Gemäß 3 kanalcodiert ein Kanalcodierer 200 eingegebene Informationsbits mit einer Codierungsrate R = k/n und gibt die codierten Symbole aus. Ein digitaler Signalprozessor (DSP) 250 mit einem Ratenanpassungsmodul führt die Ratenanpassung (oder punktieren/wiederholen) auf den durch den Kanalcodierer 200 kanalcodierten Symbolen mittels des Ratenanpassungsmoduls durch. Die durch den DSP 250 in der Rate angepassten Symbole werden an den Kanalsender ausgegeben. Der Ratenanpassungs-DSP 250 empfängt getrennt die codierten Symbole eines Rahmens von n getrennten Datenströmen, wobei die Zahl der von jedem Strom empfangenen Symbole gleich der gemäß der Codierungsrate bestimmten Zahl der Eingangssymbole ist, und punktiert/wiederholt die empfangenen Symbole in derselben Weise wie in 2 gezeigt. Mit anderen Worten, obwohl der DSP 250 ein einzelnes Element in Hardware ist, führt es dieselbe Ratenanpassungsoperation wie die n Ratenanpassungsblöcke von 2 durch. Der DSP 250 kann auch mit einer CPU (Central Processing Unit) implementiert werden, und die Ratenanpassungsoperation kann durch eine Unterroutine implementiert werden. Wenn hierin der Begriff "Ratenanpassungsblöcke" gebraucht wird, soll er auch die Ratenanpassungsmodule im DSP 250 betreffen.According to 3 Channel encodes a channel encoder 200 input information bits at a coding rate R = k / n and outputs the coded symbols. A digital signal processor (DSP) 250 with a rate matching module, rate matching (or puncturing / repeating) passes through the channel coder 200 channel-coded symbols by means of the rate matching module. The through the DSP 250 rate adjusted symbols are output to the channel transmitter. The Rate Matching DSP 250 separately receives the coded symbols of one frame of n separate data streams, the number of symbols received from each stream being equal to the number of input symbols determined according to the coding rate, and punctures / repeats the received symbols in the same manner as in FIG 2 shown. In other words, although the DSP 250 is a single element in hardware, it performs the same rate matching operation as the n rate matching blocks of 2 by. The DSP 250 can also be implemented with a CPU (Central Processing Unit), and the rate matching operation can be implemented by a subroutine. As used herein, the term "rate matching blocks" is also intended to be the rate matching modules in the DSP 250 affect.

Wie in 2 und 3 gezeigt, kann eine erfindungsgemäße Ratenanpassungsvorrichtung eine Struktur haben, die so viele Ratenanpassungsblöcke umfasst wie die der Codierungsrate entsprechende Zahl (d.h., ein Kehrwert der Codierungsrate, wenn k = 1, aber wenn k <> 1, dann kann die Zahl der Ratenanpassungsblöcke gleich einem Kehrwert der Codierungsrate multipliziert mit k sein), und jeder Ratenanpassungsblock empfängt so viele Symbole wie die durch Multiplizieren der Zahl der codierten Symbole in einem Rahmen mit der Codierungsrate bestimmte Zahl, und punktiert die empfangenen Symbole gemäß einem vorbestimmten Punktierungsschema oder wiederholt die empfangenen Symbole gemäß einem vorbestimmten Wiederholungsschema. Diese Struktur hat das Merkmal, dass die kanalcodierten Symbole getrennt verarbeitet werden, während die herkömmliche Ratenanpassungsvorrichtung von 1 die kanalcodierten Symbole in einer Rahmeneinheit verarbeitet. Die erfindungsgemäße Ratenanpassungsvorrichtung kann sowohl für Konvolutionscodes als auch für Turbocodes verwendet werden. Das heißt, die erfindungsgemäße Ratenanpassungsvorrichtung hat eine einzelne Struktur, die sowohl auf Konvolutionscodes als auch auf Turbocodes angewandt werden kann, obwohl zwei verschiedene Sätze von Voraussetzungen benötigt werden.As in 2 and 3 As shown, a rate matching apparatus of the present invention may have a structure including as many rate matching blocks as the number corresponding to the coding rate (ie, an inverse of the coding rate if k = 1, but if k <1, then the number of rate matching blocks may be equal to one reciprocal the coding rate multiplied by k), and each rate matching block receives as many symbols as the number determined by multiplying the number of coded symbols in a frame by the coding rate, and punctures the received symbols according to a predetermined puncturing scheme or repeats the received symbols according to a predetermined one rep scheme. This structure has the feature that the channel coded symbols are processed separately while the conventional rate matching apparatus of 1 processing the channel coded symbols in a frame unit. The rate matching device according to the invention can be used both for convolutional codes and for turbo codes. That is, the rate matching device of the present invention has a single structure that can be applied to both convolutional codes and turbo codes, although two different sets of prerequisites are needed.

Eine erfindungsgemäße Ratenanpassungsvorrichtung kann auch eine Struktur von 8 haben. Diese Ratenanpaasungsvorrichtung hat eine kombinierte Struktur der herkömmlichen Ratenanpassungsvorrichtung von 1 und der neuartigen Ratenanpassungsvorrichtung von 2 und 3. Einschließlich eines einzigen Ratenanpassungsblocks hat die Ratenanpassungsvorrichtung, obwohl durch Hardware implementiert, eine geringe Komplexität.A rate matching device according to the invention may also have a structure of 8th to have. This rate matching device has a combined structure of the conventional rate matching device of FIG 1 and the novel rate matching device of 2 and 3 , Including a single rate matching block, the rate matching device, though implemented by hardware, has a low complexity.

Gemäß 8 kanalcodiert ein Kanalcodierer 200 eingegebene Informationsbits mit einer Codierungsrate R = k/n und gibt codierte Symbole aus. Die codierten Symbole werden durch einen Multiplexer 260 gemultiplext, und die gemultiplexten Symbole werden an einen Ratenanpassungsblock 230 ausgegeben. Die durch den Ratenanpassungsblock 230 durch Punktieren/Wiederholen ratenangepassten Symbole werden an einen Kanalsender gesandt. Ein RAM (Random Access Memory) 270 speichert einen Ausgangswert, der während der durch den Ratenanpassungsblock 230 durchgeführten Ratenanpassung empfangen wird, und übergibt den Ausgangswert an den Ratenanpassungsblock 230. Der Kanalcodierer 200 arbeitet bei jeder Periode des Symboltakts mit einer Geschwindigkeit TAKT, und der Multiplexer 260 und der Ratenanpassungsblock 230 arbeiten bei einer vorbestimmten Periode eines Takts mit einer Geschwindigkeit von n × TAKT. Der an das RAM 270 übergebene Ausgangswert umfasst die Eingangssymbolzahl Nc, die Ausgangssymbolzahl Ni, den Fehlerwert 'e' und die das Punktierungs/Wiederholungsschema bestimmenden Parameter 'a' und 'b'. Die Zahl der für jeden Rahmen der codierten Symbole zu punktierenden Symbole wird durch die Eingangssymbolzahl Nc und die Ausgangssymbolzahl Ni bestimmt. Das RAM 270 speichert die Eingangssymbolzahl Nc entsprechend jedem Symboltakt in einer vorbestimmten Periode, die Ausgangssymbolzahl Ni, den Fehlerwert 'e' und die das Punktierungs/Wiederholungsschema bestimmenden Parameter 'a' und 'b'. Wenn die Ratenanpassung durch Punktieren erfolgt, empfängt der Ratenanpassungsblock 230 die entsprechende Eingangssymbolzahl Nc, die Ausgangssymbolzahl Ni, den Fehlerwert 'e' und die das Punktierungsschema bestimmenden Parameter 'a' und 'b', die im RAM 270 gespeichert sind, bei jeder Symboltaktperiode, um zu bestimmen, ob das bei jeder Symboltaktperiode verarbeitete einzelne Symbol punktiert werden muss, und führt das Punktieren gemäß dem entsprechenden Punktierungsschema durch. Wenn die Ratenanpassung durch Wiederholen erfolgt, empfängt der Ratenanpassungsblock 230 die entsprechende Eingangssymbolzahl Nc, die Ausgangssymbolzahl Ni, den Fehlerwert 'e' und die das Wiederholungsschema bestimmenden Parameter 'a' und 'b', die im RAM 270 gespeichert sind, bei jeder Symboltaktperiode, um zu bestimmen, ob das bei jeder Symboltaktperiode verarbeitete einzelne Symbol wiederholt werden muss, und führt das Wiederholen gemäß dem entsprechenden Wiederholungsschema durch.According to 8th Channel encodes a channel encoder 200 input information bits at a coding rate R = k / n and outputs coded symbols. The coded symbols are passed through a multiplexer 260 multiplexed, and the multiplexed symbols are sent to a rate matching block 230 output. The through the rate adjustment block 230 Symbols adjusted by puncturing / repeating are sent to a channel transmitter. A RAM (Random Access Memory) 270 stores an initial value that is entered by the rate matching block 230 rate adaptation received, and passes the output value to the rate matching block 230 , The channel coder 200 at each period of the symbol clock, it operates at a rate CLOCK, and the multiplexer 260 and the rate matching block 230 operate at a predetermined period of a clock at a speed of n × CLOCK. The one to the RAM 270 The output value passed includes the input symbol number Nc, the output symbol number Ni, the error value 'e', and the puncturing / repetition pattern determining parameter 'a' and 'b'. The number of symbols to be punctured for each frame of the coded symbols is determined by the input symbol number Nc and the output symbol number Ni. The RAM 270 stores the input symbol number Nc corresponding to each symbol clock in a predetermined period, the output symbol number Ni, the error value 'e', and the puncturing / repetition pattern determining parameters 'a' and 'b'. When the rate matching is done by puncturing, the rate matching block is received 230 the corresponding input symbol number Nc, the output symbol number Ni, the error value 'e' and the puncturing scheme determining parameters 'a' and 'b' stored in the RAM 270 are stored, at each symbol clock period, to determine whether the single symbol processed at each symbol clock period must be punctured, and puncturing according to the corresponding puncturing scheme. When the rate matching is done by repeating, the rate matching block is received 230 the corresponding input symbol number Nc, the output symbol number Ni, the Error value 'e' and the repetition scheme determining parameters 'a' and 'b', which are stored in RAM 270 at every symbol clock period, to determine whether the single symbol processed at each symbol clock period must be repeated, and performs the repetition according to the corresponding repetition scheme.

Wenn ein konvolutionaler Code oder ein linearer Blockcode in dem Kanalcodierer 200 benutzt wird, wird der Ausgangswert im RAM 270 auf einen spezifischen Punktierungs/ Wiederholungs-Parameter (Nc, Ni, e, b, a) gesetzt. Das heißt, der Ratenanpassungsblock (RMB) 230 arbeitet wie in 1 gezeigt, ohne das RAM 270 zu aktualisieren.If a convolutional code or a linear block code in the channel coder 200 is used, the output value is in RAM 270 to a specific puncturing / repetition parameter (Nc, Ni, e, b, a). That is, the rate matching block (RMB) 230 works like in 1 shown without the ram 270 to update.

Wenn in dem Kanalcodierer 200 ein Turbocode benutzt wird, sollte der Ratenanpassungsblock 230 sequentiell von RMB1 nach RMBn (jeder RMBx [x = 1 bis n] ist mit einem Satz von Werten für Nc, Ni, e, b und a verbunden) bei jeder als Periode 'n' bezeichneten Symboltaktperiode arbeiten (d.h., Periode n = die Periode eines Takts mit einer Geschwindigkeit TAKT). Mit anderen Worten, bei jeder Periode eines Takts mit der Geschwindigkeit von n × TAKT wird der Ratenanpassungsblock 230 mit den Werten für Nc, Ni, e, a und b von einem der RMBx [x = 1 bis n] aktualisiert. Für jede Periode von n wird somit der Ratenanpassungsblock 230 mit den Werten für Nc, Ni, e, b und a von jedem der RMBx aktualisiert. Zum Beispiel kann während einer Periode von 1/(n × TAKT) der Ratenanpassungsblock 230 die Werte für Nc, Ni, e, a und b vom RMB1 empfangen und dann bei der nächsten Periode von 1/(n × TAKT) die Werte für Nc, Ni, e, a und b vom RMB2 empfangen usw., bis die Werte vom RMBn durch den Ratenanpassungsblock 230 empfangen wurden. Derselbe Zyklus wird dann wieder in der nächsten Periode 'n' wiederholt. Die zu einem bestimmten Zeitpunkt verarbeiteten Zustandswerte von RMBx, d.h., die Parameterwerte (Nc, Ni, e, b, a) zum Bestimmen der Symbole und der Schemas zum Punktieren/Wiederholen, werden daher im RAM 270 für den Prozess beim nächsten Zeitpunkt gespeichert. Wenn dieser Wert benutzt wird, wenn der RMBx das nächste Mal wieder verarbeitet wird, ist es daher möglich, die Operation von n RMBs (RMB1–RMBn) mit einem einzigen RMB auszuführen. Da für eine Verarbeitungsrate n × TAKT wie in 1 und 2 gezeigt benutzt wird, wird die Komplexität nicht erhöht werden.If in the channel coder 200 a turbo code is used should the rate matching block 230 sequentially from RMB1 to RMBn (each RMBx [x = 1 to n] connected to a set of values for Nc, Ni, e, b, and a) operate at each symbol clock period designated as period 'n' (ie, period n = the Period of a clock at a speed CLOCK). In other words, every period of a clock at the speed of n × CLOCK becomes the rate matching block 230 with the values for Nc, Ni, e, a and b of one of the RMBx [x = 1 to n] updated. For each period of n, the rate matching block thus becomes 230 updated with the values for Nc, Ni, e, b and a from each of the RMBx. For example, during a period of 1 / (n × CLOCK), the rate matching block 230 receive the values for Nc, Ni, e, a, and b from the RMB1, and then at the next period of 1 / (n × CLOCK) receive the values for Nc, Ni, e, a, and b from the RMB2, and so on until the values from the RMBn through the rate matching block 230 were received. The same cycle is then repeated again in the next period 'n'. The state values of RMBx processed at a particular time, that is, the parameter values (Nc, Ni, e, b, a) for determining the symbols and the puncturing / repeating schemes, therefore, become in RAM 270 saved for the process at the next time. Therefore, if this value is used when the RMBx is next processed again, it is possible to perform the operation of n RMBs (RMB1-RMBn) with a single RMB. As for a processing rate n × TAKT as in 1 and 2 shown, the complexity will not be increased.

Unterdessen empfangen in 2 die Ratenanpassungsblöcke 231239 jeweils getrennt so viele durch den Kanalcodierer 200 codierte Symbole wie die durch Multiplizieren der Zahl von codierten Symbolen in einem Rahmen mit der Codierungsrate bestimmte Zahl. Man sollte aber zur Kenntnis nehmen, dass jeder der Ratenanpassungsblöcke 231239 auch getrennt eine unterschiedliche Zahl der durch den Kanalcodierer 200 codierten Symbole empfangen kann. Zum Beispiel könnte einer der Ratenanpassungsblöcke 231239 getrennt eine Zahl codierter Symbole empfangen, die kleiner ist als die durch Multiplizieren der Zahl der codierten Symbole in einem Rahmen mit der Codierungsrate bestimmte Zahl, und ein anderer Ratenanpassungsblock könnte getrennt eine Zahl codierter Symbole empfangen, die größer ist als die durch Multiplizieren der Zahl der codierten Symbole in einem Rahmen mit der Codierungsrate bestimmte Zahl. Der Einfachheit hal ber wird jedoch ein Fall beschrieben, wo jeder der Ratenanpassungsblöcke 231239 getrennt dieselbe Zahl von durch den Kanalcodierer 200 codierten Symbole empfängt.Meanwhile, receive in 2 the rate adjustment blocks 231 - 239 each separated by the channel coder 200 coded symbols such as the number determined by multiplying the number of coded symbols in a frame by the coding rate. It should be noted, however, that each of the rate matching blocks 231 - 239 Also separated is a different number of channels through the channel 200 can receive encoded symbols. For example, one of the rate matching blocks 231 - 239 receive separately a number of coded symbols smaller than the number determined by multiplying the number of coded symbols in one frame by the coding rate, and another rate matching block could separately receive a number of coded symbols greater than that by multiplying the number of coded symbols coded symbols in a frame with the coding rate specific number. For the sake of simplicity, however, a case will be described where each of the rate matching blocks 231 - 239 separated by the channel coder 200 encoded symbols.

Ausführungen der Ratenanpassungsvorrichtungversions the rate adjustment device

Es folgt nun eine Beschreibung der Ratenanpassungsvorrichtung gemäß einer Ausführung der vorliegenden Erfindung. Der Bequemlichkeit halber erfolgt die Beschreibung unter der Annahme, dass die Codierungsrate R = 1/3 ist und 3 Ratenanpassungsblöcke bereitgestellt werden. Man sollte jedoch zur Kenntnis nehmen, dass die erfindungsgemäße Ratenanpassungsvorrichtung für jeden Fall gilt, wo es n Ratenanpassungsblöcke gibt, d.h., die Codierungsrate R = k/n ist. Des Weiteren bezeichnet in der folgenden Beschreibung Ncs die vom Kanalcodierer ausgegebene Gesamtzahl der codierten Symbole in einem Rahmen. Nc gibt die Zahl der in jeden Ratenanpassungsblock eingegebenen Symbole an, und die Zahl der eingegebenen Symbole wird als Nc = R × Ncs bestimmt. In der folgenden Beschreibung ist R × Ncs = 1/3 × Ncs = Ncs/3. Ni bezeichnet die Zahl der von jedem Ratenanpassungsblock ausgegebenen Symbole, und die Zahl der ausgegebenen Symbole wird als Ni = R × Nis bestimmt, was in der Beschreibung Nis/3 ist, wobei Nis die Gesamtzahl der nach dem Ratenanpassungsprozess ausgegebenen Symbole ist. Das heißt, Nis ist die Gesamtzahl der von dem betreffenden Ratenanpassungsblock ausgegebenen Symbole. Die Zahl der durch jeden Ratenanpassungsblock zu punktierenden/wiederholenden Symbole (Bits) wird daher als y = Nc – Ni bestimmt. Die Werte Nc und Ni können variieren.It A description will now be given of the rate matching apparatus according to one execution of the present invention. For the sake of convenience, the Description assuming that the coding rate R = 1/3 is and 3 rates adjustment blocks to be provided. It should be noted, however, that the rate adjustment device according to the invention for each In the case where there are n rate matching blocks, that is, the coding rate R = k / n. Further referred to in the following description Ncs is the total number of coded symbols output by the channel encoder in a frame. Nc returns the number in each rate adjustment block entered symbols and the number of entered symbols is displayed as Nc = R × Ncs certainly. In the following description, R × Ncs = 1/3 × Ncs = Ncs / 3 system. Ni denotes the number of each rate matching block and the number of symbols output as Ni = RxNis determines what is in the description Nis / 3, where Nis is the total number is the symbol output after the rate matching process. The is called, Nis is the total number of the respective rate adjustment block output symbols. The number of times through each rate adjustment block to puncturing / repeating symbols (bits) is therefore called y = Nc - Ni certainly. The values Nc and Ni can vary.

Weiterhin verwendet die Erfindung die Parameter 'a' und 'b', die Ganzzahlen sind, die gemäß einem Punktierungs/Wiederholungs-Schema in einem Rahmen bestimmt werden, d.h., Ganzzahlen zum Bestimmen des Punktierungs/Wiederholungs-Schemas. Der Parameter 'a' ist ein Offsetwert zum Bestimmen der Position des ersten Symbols in dem Punktierungs/Wiederholungs-Schema. Das heißt, der Parameter 'a' bestimmt, welches der in einem Rahmen enthaltenen codierten Symbole als das erste Symbol des Punktierungs/Wiederholungs-Schemas zu nehmen ist. Wenn ein Wert des Parameters 'a' zunimmt, wird ein an der Vorderseite des Rahmens gelegenes Symbol punktiert bzw. wiederholt. Der Parameter 'b' ist ein Wert zum Steuern der Punktierungs- oder Wiederholungsperiode in dem Rahmen. Durch Ändern dieses Parameterwertes ist es möglich, alle in dem Rahmen enthaltenen codierten Symbole zu punktieren bzw. zu wiederholen.Furthermore, the invention uses the parameters 'a' and 'b', which are integers determined according to a puncturing / repeating scheme in a frame, that is, integers for determining the puncturing / repeating scheme. The parameter 'a' is an offset value for determining the position of the first symbol in the punctuation / repetition scheme. That is, the parameter 'a' determines which of the coded symbols contained in a frame is to be taken as the first symbol of the puncturing / repeating scheme. When a value of the parameter 'a' increases, a symbol located at the front of the frame is punctured or repeated. The parameter 'b' is a value for controlling the puncturing or repetition period in the frame. By changing this parameter value, it is possible to puncture all the coded symbols contained in the frame.

Wie oben beschrieben, kann eine erfindungsgemäße Ratenanpassungsvorrichtung die Ratenanpassung nicht nur durch Punktieren, sondern auch durch Wiederholen durchführen. Die Beschreibung einer erfindungsgemäßen Ratenanpassungsvorrichtung teilt sich in eine Vorrichtung zur Durchführung der Ratenanpassung durch Punktieren und eine Vorrichtung zur Durchführung der Ratenanpassung durch Wiederholen.As As described above, a rate matching device according to the invention the rate adjustment not only by puncturing, but also by Repeat. The description of a rate matching device according to the invention splits into a device for performing the rate adaptation Puncturing and a device for performing rate matching by To repeat.

A. Ausführungen der Ratenanpassungsvorrichtung durch PunktierenA. Designs the rate adaptation device by puncturing

1. Ausführung der Ratenanpassungsvorrichtung durch Punktieren (für einen Konvolutionalcode)1. Execution of the Rate adaptation device by puncturing (for a convolutional code)

4 zeigt die Struktur einer Ratenanpassungsvorrichtung durch Punktieren gemäß einer Ausführung der vorliegenden Erfindung. Diese Struktur wird benutzt, wenn die Ratenanpassungsvorrichtungen von 2 und 3 konvolutional codierte Symbole durch Punktieren in der Rate anpassen. 4 Fig. 10 shows the structure of a rate matching device by puncturing according to an embodiment of the present invention. This structure is used when the rate matching devices of 2 and 3 Adapt convolutionally encoded symbols by puncturing in the rate.

Gemäß 4 codiert ein Konvolutionalcodierer 210 eingegebene Informationsbits Ik mit einer Codierungsrate R = 1/3 und gibt codierte Symbole C1k, C2k und C3k aus. Die codierten Symbole C1k, C2k und C3k werden getrennt an Ratenanpassungsblöcke 231, 232 bzw. 233 übergeben. Der erste Ratenanpassungsblock 231 punktiert das codierte Symbol C1k. Hier erfolgt der Punktierungsprozess auf der Basis der punktierten Symbolzahl y = Nc – Ni, die durch die Eingangssymbolzahl Nc, die Ausgangssymbolzahl Ni und die das Punktierungsschema bestimmenden Parameter 'a' und 'b' bestimmt wird. Zum Beispiel kann der erste Ratenanpassungsblock 231 die Symbole '... 11x10x01x ...' ausgeben (worin x ein punktiertes Symbol angibt). Der zweite Ratenanpassungsblock 232 punktiert das codierte Symbol C2k. Hier erfolgt der Punktierungsprozess auf der Basis der punktierten Symbolzahl y = Nc – Ni, die durch die Eingangssymbolzahl Nc, die Ausgangssymbolzahl Ni und die das Punktierungsschema bestimmenden Parameter 'a' und 'b' bestimmt wird. Zum Beispiel kann der zweite Ratenanpassungsblock 232 die Symbole '... 11x11x10x ...' ausgeben (worin x ein punktiertes Symbol angibt). Der dritte Ratenanpassungsblock 233 punktiert das codierte Symbol C3k. Hier erfolgt der Punktierungsprozess auf der Basis der punktierten Symbolzahl y = Nc – Ni, die durch die Eingangssymbolzahl Nc, die Ausgangssymbolzahl Ni und die das Punktierungsschema bestimmenden Parameter 'a' und 'b' bestimmt wird. Zum Beispiel kann der dritte Ratenanpassungsblock 233 die Symbole '... 01x11x11x ...' ausgeben (worin x ein punktiertes Symbol angibt). Die durch die Ratenanpassungsblöcke 231, 232 und 233 in der Rate angepassten codierten Symbole werden durch einen Multiplexer 240 (in 4 nicht gezeigt) gemultiplext und an einen Kanalsender übergeben.According to 4 encodes a convolutional encoder 210 input information bits Ik at a coding rate R = 1/3 and outputs encoded symbols C1k, C2k and C3k. The coded symbols C1k, C2k and C3k are separated into rate matching blocks 231 . 232 respectively. 233 to hand over. The first rate adjustment block 231 dotted the coded symbol C1k. Here, the puncturing process is performed on the basis of the dotted symbol number y = Nc-Ni determined by the input symbol number Nc, the output symbol number Ni, and the puncturing scheme determining parameters 'a' and 'b'. For example, the first rate matching block 231 output the symbols '... 11x10x01x ...' (where x indicates a dotted symbol). The second rate adjustment block 232 dotted the coded symbol C2k. Here, the puncturing process is performed on the basis of the dotted symbol number y = Nc-Ni determined by the input symbol number Nc, the output symbol number Ni, and the puncturing scheme determining parameters 'a' and 'b'. For example, the second rate matching block 232 output the symbols '... 11x11x10x ...' (where x indicates a dotted symbol). The third rate adjustment block 233 dotted the coded symbol C3k. Here, the puncturing process is performed on the basis of the dotted symbol number y = Nc-Ni determined by the input symbol number Nc, the output symbol number Ni, and the puncturing scheme determining parameters 'a' and 'b'. For example, the third rate matching block 233 output the symbols '... 01x11x11x ...' (where x indicates a dotted symbol). The through the rate adjustment blocks 231 . 232 and 233 rate-matched coded symbols are passed through a multiplexer 240 (in 4 not shown) and handed over to a channel transmitter.

In 4 werden die Eingangssymbolzahl Nc und die Ausgangssymbolzahl Ni in gleicher Weise als Nc = R × Ncs und Ni = R × Nis für jeden Ratenanpassungsblock bestimmt. Jeder Ratenanpassungsblock punktiert jeder Block getrennt dieselbe Zahl von kanalcodierten Symbolen in der Annahme, dass die Fehleranfälligkeit von codierten Symbolen für jedes Symbol in einem Rahmen fast gleich ist. Das heißt, innerhalb eines Rahmens wird ein fast gleichmäßiges Punktierungsschema ungeachtet der verschiedenen gemäß dem Servicetyp bestimmten punktierten Bitzahlen bereitgestellt. Der Grund liegt in der Möglichkeit, alle Symbole in einem Rahmen für den Konvolutionscode gleichmäßig zu punktieren.In 4 For example, the input symbol number Nc and the output symbol number Ni are determined similarly as Nc = R × Ncs and Ni = R × Nis for each rate matching block. Each rate matching block separately punctures the same number of channel-coded symbols on the assumption that the error rate of coded symbols is nearly the same for each symbol in a frame. That is, within a frame, an almost uniform puncturing scheme is provided regardless of the various dotted numbers determined according to the service type. This is because of the ability to uniformly puncture all the symbols in a convolutional code frame.

Gemäß einer Ausführung der vorliegenden Erfindung werden deshalb die durch den Konvolutionscodierer 210 codierten Symbole getrennt und in gleicher Zahl an die Ratenanpassungsblöcke 231, 232 und 233 übergeben. Die Ratenanpassungsblöcke 231, 232 und 233 punktieren jeweils dieselbe Zahl der Eingangssymbole. An diesem Punkt können die Punktierungsschemaparameter entweder gleich oder unterschiedlich bestimmt werden. Das heißt, die Punktierungsschemas können für die Ratenanpassungsblöcke 231, 232 und 233 entweder gleich oder unterschiedlich bestimmt werden.According to an embodiment of the present invention, therefore, the convolutional coder 210 encoded symbols separated and in equal numbers to the rate matching blocks 231 . 232 and 233 to hand over. The rate adjustment blocks 231 . 232 and 233 each dot the same number of input symbols. At this point, the punctuation schema parameters can be determined to be the same or different. That is, the punctuation schemes may be for the rate matching blocks 231 . 232 and 233 be determined either the same or different.

2. Eine andere Ausführung der Ratenanpassungsvorrichtung durch Punktieren für Turbocode)2. Another version of the Rate adaptation device by puncturing for turbo code)

5 zeigt eine Struktur einer Ratenanpassungsvorrichtung gemäß einer anderen Ausführung der vorliegenden Erfindung. Diese Struktur wird benutzt, wenn die Ratenanpassungsvorrichtungen von 2 und 3 die turbocodierten Symbole durch Punktieren in der Rate anpassen. 5 FIG. 10 shows a structure of a rate matching device according to another embodiment of the present invention. FIG. This structure is used when the rate matching devices of 2 and 3 adjust the turbocoded symbols by puncturing in the rate.

Gemäß 5 codiert ein Turbocodierer 220 eingegebene Informationsbits Ik mit einer Codierungsrate R = 1/3 und gibt codierte Symbole C1k, C2k und C3k aus. Unter den codierten Symbolen wird das Informationssymbol C1k getrennt an den ersten Ratenanpassungsblock 231 übergeben, und die Paritätssymbole (oder Redundanzsymbole) C2k und C3k werden getrennt an den zweiten und dritten Ratenanpassungsblock 232 bzw. 233 übergeben. Der Turbocodierer 220 besteht aus einem ersten Komponentencodierer 222, einem zweiten Komponentencodierer 224 und einem Verschachteler 226, wie in 6 gezeigt. Der Aufbau des Turbocodierers 220 ist den Fachleuten wohl bekannt. Auf eine ausführliche Beschreibung wird daher verzichtet. Die Eingabe X(t) in den Turbocodierer 220 entspricht den in 5 gezeigten Eingabeinformationsbits Ik. Ausgänge X(t), Y(t) und Y'(t) entsprechen den in 5 gezeigten codierten Symbolen C1k, C2k bzw. C3k. Für den ersten Ausgang des Turbocodierers 220 werden die Eingabeinformationsbits Ik = X(t) wie sie sind ausgegeben, so dass in 5 die Eingabeinformationsbits Ik als C1k ausgegeben werden.According to 5 encodes a turbo encoder 220 input information bits Ik at a coding rate R = 1/3 and outputs encoded symbols C1k, C2k and C3k. Among the coded symbols, the information symbol C1k is separated to the first rate matching block 231 and the parity symbols (or redundancy symbols) C2k and C3k are separated to the second and third rate matching block 232 respectively. 233 to hand over. The turbo encoder 220 consists of a first component encoder 222 a second component encoder 224 and a nestler 226 , as in 6 shown. The construction of the turbo coder 220 is well known to those skilled in the art. A detailed description is therefore omitted. The input X (t) into the turbo encoder 220 corresponds to the in 5 shown input information bits Ik. Outputs X (t), Y (t) and Y '(t) correspond to those in 5 shown encoded symbols C1k, C2k and C3k. For the first output of the turbo coder 220 the input information bits Ik = X (t) are output as they are, so that in 5 the input information bits Ik are output as C1k.

Der erste Ratenanpassungsblock 231 punktiert die codierten Symbole C1k auf der Basis der folgenden Kriterien. Da die Codierungsrate R = 1/3 ist, wird die Eingangssymbolzahl Nc als Nc = R × Ncs = Ncs/3 bestimmt, was 1/3 der Gesamtzahl codierter Symbole ist. Die Ausgangssymbolzahl Ni wird auch als Ni = R × Ncs bestimmt, weil gemäß Voraussetzung 1B der Teil, der den Informationsbits entspricht, nicht punktiert wird. Die das Punktierungsschema bestimmenden Parameter 'a' und 'b' können auf eine Ganzzahl gesetzt werden, was aber ohne Bedeutung ist, weil gemäß Voraussetzung 1B keine Punktierung durchgeführt wird. Zum Beispiel kann der erste Ratenanpassungsblock 231 die Symbole '... 111101011 ...' ausgeben.The first rate adjustment block 231 punctured coded symbols C1k based on the following criteria. Since the coding rate is R = 1/3, the input symbol number Nc is determined as Nc = R × Ncs = Ncs / 3, which is 1/3 of the total number of coded symbols. The output symbol number Ni is also determined as Ni = R × Ncs because, according to requirement 1B, the part corresponding to the information bits is not punctured. The puncturing scheme determining parameters 'a' and 'b' can be set to an integer, which is irrelevant because according to Condition 1B no puncturing is performed. For example, the first rate matching block 231 output the symbols '... 111101011 ...'.

Der zweite Ratenanpassungsblock 232 punktiert die codierten Symbole C2k auf der Basis der folgenden Kriterien. Da die Codierungsrate R = 1/3 ist, wird die Eingangssymbolzahl Nc als Nc = R × Ncs = Ncs/3 bestimmt, was 1/3 der Gesamtzahl codierter Symbole ist. Weil gemäß den Voraussetzungen 2B und 4B die ausgegebenen Paritätssymbole der zwei Komponentendecoder gleichmäßig punktiert werden sollen und die gesamte ausgegebene Symbolzahl nach dem Punktieren für die ganzen Eingangssymbole (Ncs) in einem Rahmen Nis ist, ist die Zahl Ni der von dem zweiten Ratenanpassungsblock 232 nach dem Punktieren ausgegebenen Symbole Ni = [Nis – (R × Ncs)]/2. Wenn Ni = [Nis – (R × Ncs)]/2 eine ungrade Zahl ist, wird die Ausgangssymbolzahl Ni = [Nis – (R × Ncs) + 1]/2 oder Ni = [Nis – R × Ncs) – 1]/2. Einer der zwei Werte wird gemäß der Beziehung zwischen dem zweiten Ratenanpassungsblock 232 und dem dritten Ratenanpassungsblock 233 ausgewählt. Das heißt, wenn die Ausgangssymbolzahl des zweiten Ratenanpassungsblocks 232 als [Nis – (R × Ncs] + 1]/2 bestimmt wird, wird die Ausgangssymbolzahl des dritten Ratenanpassungsblocks 233 als [Nis – (R × Ncs) – 1]/2 be stimmt. Im Gegensatz dazu wird, wenn die Ausgangssymbolzahl des zweiten Ratenanpassungsblocks 232 als [Nis – (R × Ncs) – 1]/2 bestimmt wird, die Ausgangssymbolzahl des dritten Ratenanpassungsblocks 233 als [Nis – (R × Ncs) + 1]/2 bestimmt.The second rate adjustment block 232 punctured coded symbols C2k based on the following criteria. Since the coding rate is R = 1/3, the input symbol number Nc is determined as Nc = R × Ncs = Ncs / 3, which is 1/3 of the total number of coded symbols. According to conditions 2B and 4B, since the outputted parity symbols of the two component decoders are to be equally punctured and the total output symbol number after puncturing for the entire input symbols (Ncs) in one frame is Nis, the number Ni is that of the second rate matching block 232 Symbols output after puncturing Ni = [Nis - (R × Ncs)] / 2. When Ni = [Nis - (R × Ncs)] / 2 is an odd number, the output symbol number becomes Ni = [Nis - (R × Ncs) + 1] / 2 or Ni = [Nis-R × Ncs) -1] / 2. One of the two values becomes according to the relationship between the second rate matching block 232 and the third rate matching block 233 selected. That is, when the output symbol number of the second rate matching block 232 when [Nis - (R × Ncs] + 1] / 2) is determined, the output symbol number of the third rate matching block becomes 233 as [Nis - (R × Ncs) - 1] / 2 be true. In contrast, when the output symbol number of the second rate matching block becomes 232 is determined as [Nis - (R × Ncs) - 1] / 2, the output symbol number of the third rate matching block 233 determined as [Nis - (R × Ncs) + 1] / 2.

Die das Punktierungsschema bestimmenden Parameter 'a' und 'b' können gemäß einem gewünschten Punktierungsschema als Ganzzahlen gewählt werden. Diese Ganzzahlen werden nur gemäß dem Punktierungsschema bestimmt, und die Parameter können auf b = 1 und a = 2 gesetzt werden. Eine ausführliche Beschreibung eines Verfahrens zum Bestimmen der Ganzzahlen für die das Punktierungsschema bestimmenden Parameter erfolgt mit Verweis die unten stehenden Tabellen. Der zweite Ratenanpassungsblock 232 kann z.B. die Symbole '... 11x11x10x ...' ausgeben (worin x ein punktiertes Symbol angibt).The puncturing scheme determining parameters 'a' and 'b' may be selected as integers according to a desired puncturing scheme. These integers are determined only according to the punctuation scheme, and the parameters can be set to b = 1 and a = 2. A detailed description of a method of determining integers for the punctuation scheme determining parameter is provided by reference to the tables below. The second rate adjustment block 232 can, for example, output the symbols '... 11x11x10x ...' (where x indicates a dotted symbol).

Der dritte Ratenanpassungsblock 233 punktiert die codierten Symbole auf der Basis der folgenden Kriterien. Da die Codierungsrate R = 1/3 ist, wird die Eingangssymbolzahl als Nc als Nc = R × Ncs = Ncs/3 bestimmt, was 1/3 der Gesamtzahl von Eingangssymbolen (codierte Symbole) ist. Weil gemäß den Voraussetzungen 2B und 4B die ganzen Ausgangsparitätssymbole der zwei Komponentendecoder gleichmäßig punktiert werden sollen und die gesamte Ausgangssymbolzahl nach dem Punktieren für die ganzen Eingangssymbole in einem Rahmen Nis ist, beträgt die Zahl der von dem dritten Ratenanpassungsblock 233 ausgegebenen Symbole nach dem Punktieren Ni = [Nis – (R × Ncs)]/2. Wenn dieser Ausdruck eine ungrade Zahl ergibt, wird die Ausgangssymbolzahl Ni = [Nis – (R × Ncs) + 1]/2 oder [Nis – (R × Ncs) – 1]/2. Einer der zwei Werte wird gemäß der Beziehung zwischen dem zweiten Ratenanpassungsblock 232 und dem dritten Ratenanpassungsblock 233 ausgewählt. Das heißt, wenn die Ausgangssymbolzahl des zweiten Ratenanpassungsblocks 232 als [Nis – (R × Ncs) + 1]/2 bestimmt wird, wird die Zahl von Ausgangssymbolen des dritten Ratenanpassungsblocks 233 als [Nis – (R × Ncs) – 1]/2 bestimmt. Wenn andererseits die Ausgangssymbolzahl des zweiten Ratenanpassungsblocks 232 als [Nis – (R × Ncs) – 1]/2 bestimmt wird, wird die Ausgangssymbolzahl des dritten Ratenanpassungsblocks 233 als [Nis – (R × Ncs) + 1]/2 bestimmt.The third rate adjustment block 233 punctuates the coded symbols based on the following criteria. Since the coding rate is R = 1/3, the input symbol number is determined as Nc as Nc = R × Ncs = Ncs / 3, which is 1/3 of the total number of input symbols (coded symbols). Because, according to conditions 2B and 4B, the entire output parity symbols of the two component decoders are to be dotted evenly and the total output symbol number after puncturing is Nis for all the input symbols in a frame, the number is that of the third rate matching block 233 output symbols after puncturing Ni = [Nis - (R × Ncs)] / 2. If this expression gives an odd number, the output symbol number becomes Ni = [Nis - (R × Ncs) + 1] / 2 or [Nis - (R × Ncs) -1] / 2. One of the two values becomes according to the relationship between the second rate matching block 232 and the third rate matching block 233 selected. That is, when the output symbol number of the second rate matching block 232 is determined as [Nis - (R × Ncs) + 1] / 2, the number of output symbols of the third rate matching block becomes 233 as [Nis - (R × Ncs) - 1] / 2. On the other hand, if the output symbol number of the second rate matching block 232 is determined as [Nis - (R × Ncs) -1] / 2, the output symbol number of the third rate matching block becomes 233 determined as [Nis - (R × Ncs) + 1] / 2.

Die das Punktierungsschema bestimmenden Parameter 'a' und 'b' können gemäß einem gewünschten Punktierungsschema als Ganzzahlen gewählt werden. Diese Ganzzahlen werden nur gemäß dem Punktierungsschema bestimmt, und die Parameter können auf b = 1 und a = 2 gesetzt werden. Eine ausführliche Beschreibung eines Verfahrens zum Bestimmen der Ganzzahlen für die das Punktierungsschema bestimmenden Parameter erfolgt mit Verweis auf die unten stehenden Tabellen. Der dritte Ratenanpassungsblock 233 kann z.B. die Symbole '... 01x11x11x ...' ausgeben (worin x ein punktiertes Symbol angibt).The puncturing scheme determining parameters 'a' and 'b' may be selected as integers according to a desired puncturing scheme. These integers are determined only according to the punctuation scheme, and the parameters can be set to b = 1 and a = 2. A detailed Be A method of determining the integers for the punctuation scheme determining parameter is described with reference to the tables below. The third rate adjustment block 233 can, for example, output the symbols '... 01x11x11x ...' (where x indicates a dotted symbol).

In 5 werden die durch den Turbocodierer 220 codierten Symbole getrennt und dann zu gleichen Zahlen an die Ratenanpassungsblöcke 231, 232 und 233 übergeben. Der erste Ratenanpassungsblock 231 gibt die Eingangssymbole wie sie sind aus. Der zweite und dritte Ratenanpassungsblock 232 und 233 punktieren dieselbe Zahl von Eingangssymbolen. An diesem Punkt können die Punktierungsschemas entweder gleich oder unterschiedlich bestimmt werden. Das heißt, das Punktierungsschema kann für die Ratenanpassungsblöcke 232 und 233 gleich oder unterschiedlich bestimmt werden.In 5 be through the turbo encoder 220 coded symbols separated and then equal numbers to the rate matching blocks 231 . 232 and 233 to hand over. The first rate adjustment block 231 returns the input symbols as they are. The second and third rate matching block 232 and 233 punctuate the same number of input symbols. At this point, the punctuation schemes can be determined to be the same or different. That is, the punctuation scheme may be for the rate matching blocks 232 and 233 be determined the same or different.

3. Bestimmung von Parametern zur Punktierung3. Determination parameters for puncturing

In den hier erörterten Ausführungen der vorliegenden Erfindung punktieren die Ratenanpassungsblöcke dieselbe Zahl von Symbolen (ausgenommen der Ratenanpassungsblock 231 von 5). Die Ratenanpassungsblöcke können jedoch unterschiedliche Zahlen von Symbolen punktieren. Wenn die Zahl Ni der von den betreffenden Ratenanpassungsblöcken ausgegebenen Symbole unterschiedlich festgelegt wird, wird die Zahl von durch die betreffenden Ratenanpassungsblöcken punktierten Symbolen unterschiedlich bestimmt. Weiterhin kann das Schema der durch die betreffenden Ratenanpassungsblöcke punktierten Symbole durch Ändern der das Punktierungsschema bestimmenden Parameter 'a' und 'b' entweder gleich oder verschieden bestimmt werden. Das heißt, obwohl sie eine Einzelstruktur aufweist, kann eine erfindungsgemäße Ratenanpassungsvorrichtung Parameter, z.B. die Eingangssymbolzahl, die Ausgangssymbolzahl, die Zahl zu punktierender Symbole und die das Punktierungsschema bestimmenden Parameter, unterschiedlich festlegen. Tabelle 1 unten zeigt als Beispiel verschiedene Fälle der Parameter. Die Codierungsrate wird hier als R = 1/3 angenommen. Deshalb werden drei Ratenanpassungsblöcke bereitgestellt, und die betreffenden Ratenanpassungsblöcke empfangen getrennt dieselbe Zahl von Symbolen, d.h., Nc = Ncs/3 Symbole. Die Ratenanpassungsblöcke empfangen hierin getrennt dieselbe Symbolzahl, die durch Multiplizieren der Zahl der codierten Symbole mit der Codierungsrate bestimmt wird. Man sollte aber zur Kenntnis nehmen, dass die vorliegende Erfindung auch auf einen Fall angewandt werden kann, wo die Ratenanpassungsblöcke getrennt eine unterschiedliche Zahl von Symbolen empfangen, d.h., eine Zahl von Symbolen, die kleiner ist als die Zahl, die durch Multiplizieren der Zahl der codierten Symbole in einem Rahmen mit der Codierungsrate bestimmt wird, oder eine Zahl von Symbolen, die größer ist als die Zahl, die durch Multiplizieren der Zahl der codierten Symbole in einem Rahmen mit der Codierungsrate bestimmt wird. In der Beschreibung unten bezeichnen RMB1, RMB2 und RMB3 jeweils den ersten bis dritten Ratenanpassungsblock.In the embodiments of the present invention discussed herein, the rate matching blocks puncture the same number of symbols (except the rate matching block 231 from 5 ). The rate matching blocks, however, can puncture different numbers of symbols. When the number Ni of the symbols output from the respective rate matching blocks is set differently, the number of symbols punctured by the respective rate matching blocks is determined differently. Further, by changing the puncturing scheme determining parameters 'a' and 'b', the scheme of the punctured by the respective rate matching blocks can be determined to be the same or different. That is, although it has a single structure, a rate matching apparatus of the present invention may set parameters, such as the input symbol number, the output symbol number, the number of symbols to be punctured, and the puncturing scheme determining parameters differently. Table 1 below shows as an example different cases of the parameters. The coding rate is assumed here as R = 1/3. Therefore, three rate matching blocks are provided, and the respective rate matching blocks separately receive the same number of symbols, ie, Nc = Ncs / 3 symbols. The rate matching blocks herein separately receive the same symbol number which is determined by multiplying the number of coded symbols by the coding rate. It should be noted, however, that the present invention can also be applied to a case where the rate matching blocks separately receive a different number of symbols, that is, a number of symbols smaller than the number obtained by multiplying the number of symbols coded symbols in a frame is determined at the coding rate, or a number of symbols greater than the number determined by multiplying the number of coded symbols in a frame by the coding rate. In the description below, RMB1, RMB2 and RMB3 respectively denote the first to third rate matching blocks.

[Tabelle 1]

Figure 00190001
[Table 1]
Figure 00190001

In Tabelle 1 bezeichnen RMB1, RMB2, RMB3 Ratenanpassungsblöcke, und p, q, r, s, t, w, x, y und z sind Ganzzahlen. In den Fällen 9 und 10 ist (1/p + 1/q + 1/r) = 1.0. Dies ist, weil Nis(1/p + 11q + 1/t) = Nis. NA (nicht vorhanden) gibt an, dass die Eingangssymbole wie sie sind ohne Punktierung ausgegeben werden, wobei die Parameter 'a' und 'b' auf irgendeinen Wert gesetzt werden können. Die Parameter 'a' und 'b' sind hier positive Zahlen. Weiter wird der Fall gezeigt, wo die Eingangssymbole zur Durchführung der Ratenanpassung punktiert werden, so dass die Zahl der Eingangssymbole größer ist als die Zahl der Ausgangssymbole (d.h., Ncs > Nis). Es wird auf jeden Fall verwiesen.

  • Fall 1, Fall 2: In Fall 1 und Fall 2 werden die Symbole in einem Rahmen nach einem gleichmäßigen Schema punktiert. Insbesondere haben im Fall 1 die Ratenanpassungsblöcke dasselbe Punktierungsschema, weil die Parameter "a" und "b" gleich sind, und im Fall 2 haben die Ratenanpassungsblöcke verschiedene Punktierungsschemas, weil die Parameter "a" und "b" verschieden sind.
  • Fall 3: Beim systematischen Punktieren werden Informationssymbole nicht punktiert, sondern die Paritätssymbole werden punktiert. Da hier die das Punktierungsschema bestimmenden Parameter 'a' und 'b' gleich sind, führen RMB2 und RMB3 eine gleichmäßige Punktierung halb und halb mittels desselben Punktierungsschemas durch.
  • Fall 4: Beim systematischen Punktieren werden Informationssymbole nicht punktiert, und die Paritätssymbole werden punktiert. Da hier die das Punktierungsschema bestimmenden Parameter 'a' und 'b' verschieden sind, führen RMB2 und RMB3 eine gleichmäßige Punktierung halb und halb mittels verschiedener Punktierungsschemas durch.
  • Fall 5: Dies ist ein allgemeiner Fall für Fall 3. In diesem Fall wird der das Punktierungsschema bestimmende Parameter 'a' auf eine Ganzzahl 'p' gesetzt, so dass es möglich sein kann, die verschiedenen Punktierungsschemas festzulegen. Der Parameter 'a' wird für RMB2 und RMB3 auf denselben Wert gesetzt.
  • Fall 6: Dies ist ein allgemeiner Fall für Fall 4. In diesem Fall wird der das Punktierungsschema bestimmende Parameter 'a' auf Ganzzahlen 'p' und 'q' gesetzt, so dass es möglich sein kann, die verschiedenen Punktierungsschemas festzulegen. Der Parameter 'a' wird für RMB2 auf 'p' und für RMB3 auf 'q' gesetzt.
  • Fall 7: Dies ist ein weiterer allgemeiner Fall für Fall 5. In diesem Fall wird der das Punktierungsschema bestimmende Parameter 'a' auf eine Ganzzahl 'p' gesetzt, und der das Punktierungsschema bestimmende Parameter 'b' wird auf eine Ganzzahl 'q' gesetzt, so dass es möglich sein kann, die verschiedenen Punktierungsschemas festzulegen. Die Parameter 'a' und 'b' werden für RMB2 und RMB3 auf denselben Wert gesetzt.
  • Fall 8: Dies ist ein weiterer allgemeiner Fall für Fall 6. In diesem Fall wird der das Punktierungsschema bestimmende Parameter 'a' für RMB2 und RMB3 auf Ganzzahlen 'p' bzw. 'r' gesetzt, und der das Punktierungsschema bestimmende Parameter 'b' wird für RMB2 und RMB3 auf Ganzzahlen 'q' bzw. 's' gesetzt, so dass es möglich sein kann, die verschiedenen Punktierungsschemas festzulegen. Die Parameter 'a' und 'b' werden für RMB2 auf 'p' und 'q' und für RMB3 auf 'r' und 's' gesetzt.
  • Fall 9, Fall 10: In diesen Fällen werden alle möglichen Parameter geändert. Das heißt, die Ausgangssymbolzahl kann auf jede Ganzzahl gesetzt werden, und die das Punktierungsschema bestimmenden Parameter 'a' und 'b' können auch auf jede gegebene Ganzzahl gesetzt werden.
In Table 1, RMB1, RMB2, RMB3 denote rate matching blocks, and p, q, r, s, t, w, x, y and z are integers. In cases 9 and 10, (1 / p + 1 / q + 1 / r) = 1.0. This is because Nis (1 / p + 11q + 1 / t) = Nis. NA (not present) indicates that the input symbols are output as they are without puncturing, whereby the parameters 'a' and 'b' can be set to any value. The parameters 'a' and 'b' are positive numbers here. Further, the case is shown where the input symbols are punctured to perform the rate matching so that the number of input symbols is larger than the number of the output symbols (ie, Ncs> Nis). It will be referenced in any case.
  • Case 1, Case 2: In Case 1 and Case 2, the symbols in a frame are dotted according to a uniform scheme. Specifically, in case 1, the rate matching blocks have the same punctuation scheme because the parameters "a" and "b" are the same, and in case 2, the rate matching blocks have different puncturing schemes because the parameters "a" and "b" are different.
  • Case 3: In systematic puncturing, information symbols are not punctured, but the parity symbols are punctured. Since here the punctuation scheme determining parameters 'a' and 'b' are the same, RMB2 and RMB3 perform equal puncturing half and half by the same puncturing scheme.
  • Case 4: In systematic puncturing, information symbols are not punctured and the parity symbols are punctured. Since here the puncturing scheme determining parameters 'a' and 'b' are different, RMB2 and RMB3 perform a uniform puncturing half and half by means of different puncturing schemes.
  • Case 5: This is a general case for Case 3. In this case, the punctuation scheme determining parameter 'a' is set to an integer 'p' so that it may be possible to set the various puncturing schemes. Parameter 'a' is set to the same value for RMB2 and RMB3.
  • Case 6: This is a general case for case 4. In this case, the one that determines the puncturing scheme Parameter 'a' is set to integers 'p' and 'q', so it may be possible to set the different punctuation schemes. Parameter 'a' is set to 'p' for RMB2 and 'q' for RMB3.
  • Case 7: This is another general case for case 5. In this case, the punctuation scheme determining parameter 'a' is set to an integer 'p' and the punctuation scheme determining parameter 'b' is set to an integer 'q' so that it may be possible to set the different punctuation schemes. The parameters 'a' and 'b' are set to the same value for RMB2 and RMB3.
  • Case 8: This is another general case for case 6. In this case, the parameter 'a' determining the puncturing scheme for RMB2 and RMB3 is set to integers 'p' and 'r' respectively, and the parameter determining the puncturing scheme 'b' is set to integers 'q' and 's' respectively for RMB2 and RMB3, so it may be possible to set the different punctuation schemes. Parameters 'a' and 'b' are set to 'p' and 'q' for RMB2 and 'r' and 's' for RMB3.
  • Case 9, Case 10: In these cases all possible parameters are changed. That is, the output symbol number can be set to any integer, and the punctuation scheme determining parameters 'a' and 'b' can also be set to any given integer.

In Tabelle 1 können Fall 1 und Fall 2 angewandt werden, wenn die Ratenanpassung auf den konvolutional codierten Symbolen erfolgt, und die Fälle 3 bis 8 können angewandt werden, wenn die Ratenanpassung auf den turbocodierten Symbolen erfolgt.In Table 1 can Case 1 and Case 2 are applied when rate matching on the convolutionally encoded symbols, and cases 3 to 8 can be applied when the rate adaptation to the turbo-coded Symbols takes place.

Das Punktierungsschema kann gemäß einer Änderung des das Punktierungsschema bestimmenden Parameters 'a' geändert werden. Tabelle 2 unten zeigt eine Änderung des Punktierungsschemas gemäß einer Änderung des Parameters 'a'. In Tabelle 2 wird angenommen, dass Nc = 10, Ni = 8, y = Nc – Ni = 10 – 8 = 2 und b = 1. Die gemäß dem Punktierungsschema punktierten Symbole werden durch "x" dargestellt.The Punctuation scheme can according to a change of the punctuation scheme determining parameter 'a' changed become. Table 2 below shows a change in the punctuation scheme according to a change the parameter 'a'. In Table 2 becomes Suppose that Nc = 10, Ni = 8, y = Nc - Ni = 10 - 8 = 2 and b = 1. The according to the puncturing scheme dotted symbols are represented by "x".

[Tabelle 2]

Figure 00210001
[Table 2]
Figure 00210001

Aus Tabelle 2 ist zu ersehen, dass es möglich ist, verschiedene Punktierungsschemas zu erhalten, indem 'b' auf '1' festgelegt wird und 'a' auf verschiedene Werte gesetzt wird. Man kann verstehen, dass das erste Symbol des Punktierungsschemas vorne liegt, wenn der Wert 'a' erhöht wird. Es ist natürlich möglich, mehr verschiedenartige Punktierungsschemas zu erhalten, indem auch der Parameter 'b' verändert wird. Außerdem ist es möglich, die Punktierung des ersten Symbols zu verhindern, indem der Parameter 'b' auf '1' gesetzt wird und ein Wert benutzt wird, der Gleichung 1 unten für den Parameter 'a' erfüllt. Um die Voraussetzung 3B zu erfüllen, sollte der Parameter 'a' auf einen Wert innerhalb eines Bereichs von Gleichung 1 gesetzt werden. 1 <= a < |Nc/y| (1)worin |Nc/y| die größte Ganzzahl kleiner oder gleich Nc/y ist.From Table 2 it can be seen that it is possible to obtain different puncturing schemes by setting 'b' to '1' and setting 'a' to different values. It can be understood that the first symbol of the punctuation scheme is at the front when the value 'a' is increased. It is of course possible to obtain more different punctuation schemes by also changing the parameter 'b'. In addition, it is possible to prevent the puncturing of the first symbol by setting the parameter 'b' to '1' and using a value satisfying Equation 1 below for the parameter 'a'. To satisfy condition 3B, the parameter 'a' should be set to a value within a range of Equation 1. 1 <= a <| Nc / y | (1) where | Nc / y | the largest integer is less than or equal to Nc / y.

In Gleichung 1 ist für Nc = 10 und y = 2 Nc/y = 10/2 = 5. Daher werden die ersten Symbole nicht punktiert, wenn 'a' einen Wert von 1, 2, 3 und 4 hat.In Equation 1 is for Nc = 10 and y = 2 Nc / y = 10/2 = 5. Therefore, the first symbols become not punctured if 'a' is 1, 2, 3 and 4 has.

Um Voraussetzung 5B zu erfüllen, sollten die Schwanzbits nicht punktiert werden. Dazu sollte Nc auf einen Wert gesetzt werden, der bestimmt wird, indem die Zahl der Schwanzbits davon subtrahiert wird. Das heißt, wenn die Eingangssymbolzahl Nc auf Nc-NT gesetzt wird, wo NT die Zahl von Schwanzbits bezeichnet, werden die Schwanzbits nicht punktiert, womit Voraussetzung 5B erfüllt ist. Mit anderen Worten, die Schwanzbits gelangen nicht in den Ratenanpassungsblock. Das Ratenanpassungsschema berücksichtigt somit nur eine Rahmengröße von Nc-NT. Nach Punktieren oder Wiederholen durch den Ratenanpassungsblock werden die Schwanzbits nacheinander mit den Ausgangssymbolen des Ratenanpassungsblocks verkettet. Die Schwanzbits werden nicht verarbeitet und nur an das Ende der Ausgangssymbole angehängt.To satisfy requirement 5B, the tail bits should not be punctured. To do this, Nc should be set to a value that is determined by subtracting the number of tail bits from it. That is, when the input symbol number Nc is set to Nc-NT, where NT denotes the number of tail bits, the tail bits are not punctured, thus satisfying requirement 5B. In other words, the tail bits do not get into the rate matching block. The rate matching scheme thus takes into account only one frame size of Nc-NT. After puncturing or repeating by the rate matching block, the tail bits are sequentially concatenated with the output symbols of the rate matching block. The Tail bits are not processed and only appended to the end of the output symbols.

4. Ratenanpassungsalgorithmus durch Punktieren4. Rate matching algorithm by puncturing

7 zeigt eine Ratenanpassungsprozedur durch Punktieren gemäß einer Ausführung der vorliegenden Erfindung. Diese Prozedur wird auf der Basis eines in Tabelle 3 unten gezeigten Ratenanpassungsalgorithmus ausgeführt. "So = {d1, d2, ..., dNc}" bezeichnet die für einen Ratenanpassungsblock eingegebenen Symbole, d.h., die in einer Rahmeneinheit für einen Ratenanpassungsblock eingegebenen Symbols, und besteht insgesamt aus Nc Symbolen. Ein Schiebeparameter S(k) ist ein in dem Algorithmus benutzter Anfangswert und wird dauerhaft auf '0' gesetzt, wenn eine erfindungsgemäße Ratenanpassungsvorrichtung in einer Abwärtsstrecke eines digitalen Übertragungssystems verwendet wird (d.h., wenn eine Ratenanpassung auf den von der Basisstation an die Mobilstation zu sendenden codierten Symbolen erfolgt). 'm' gibt die Reihenfolge der zur Ratenanpassung eingegebenen Symbole an und hat die Reihenfolge 1, 2, 3, ..., Nc. Aus Tabelle 3 ist ersichtlich, dass die Parameter, die die Eingangssymbolzahl, die Ausgangssymbol zahl Ni und die das Punktierungsschema bestimmenden Parameter 'a' und 'b' enthalten, geändert werden können. Zum Beispiel können die Parameter wie in Tabelle 1 gezeigt geändert werden. Die Eingangssymbolzahl Nc kann gemäß der Codierungsrate R als ein Wert anders als Ncs/3 bestimmt werden. 7 entspricht dem Fall, wo der Algorithmus von Tabelle 3 auf eine Abwärtsstrecke eines digitalen Übertragungssystems angewandt wird, d.h., S(k) = 0. 7 shows a rate matching procedure by puncturing according to an embodiment of the present invention. This procedure is performed on the basis of a rate matching algorithm shown in Table 3 below. "So = {d1, d2, ..., dNc}" denotes the symbols input for a rate matching block, that is, the symbol inputted in a frame unit for a rate matching block, and consists of Nc symbols as a whole. A sliding parameter S (k) is an initial value used in the algorithm and is permanently set to '0' when a rate matching device of the invention is used in a downlink digital transmission system (ie, when rate matching is to be sent to the mobile station from the base station coded symbols). 'm' indicates the order of symbols entered for rate matching and has the order 1, 2, 3, ..., Nc. It can be seen from Table 3 that the parameters including the input symbol number, the output symbol number Ni, and the punctuation scheme determining parameters 'a' and 'b' can be changed. For example, the parameters may be changed as shown in Table 1. The input symbol number Nc may be determined according to the coding rate R as a value other than Ncs / 3. 7 corresponds to the case where the algorithm of Table 3 is applied to a downlink of a digital transmission system, ie, S (k) = 0.

[Tabelle 3]

Figure 00230001
[Table 3]
Figure 00230001

Wenn der Algorithmus von Tabelle 3 benutzt wird, werden die folgenden Vorteile bereitgestellt.If the algorithm used in Table 3 will be the following Benefits provided.

Erstens, es ist möglich, die codierten Symbole einer Rahmeneinheit variabel zu punktieren.First, it is possible, to variably puncture the coded symbols of a frame unit.

Zweitens, es ist möglich, verschiedene Punktierungsschemas durch Justieren der Parameter Nc, Ni, a und b zu erzeugen.Secondly, it is possible, different puncturing schemes by adjusting the parameters Nc, To produce Ni, a and b.

Drittens, es ist möglich, die Komplexität und Rechenzeit jedes Ratenanpassungsblocks um 1/R zu reduzieren. Das liegt daran, dass, wenn eine Mehrzahl von Ratenanpassungsblöcken benutz wird, die Zahl der durch jeden Ratenanpassungsblock zu punktierenden Symbole vermindert wird, verglichen mit dem Fall, wo ein Ratenanpassungsblock benutzt wird.Third, it is possible, the complexity and calculating time of each rate matching block by 1 / R. This is because when using a plurality of rate matching blocks is the number of points to be punctured by each rate matching block Symbols is reduced compared to the case where a rate matching block is used.

Gemäß 7 werden in Schritt 701 alle Arten Parameter einschließlich der Eingangsymbolzahl Nc, der Ausgangssymbolzahl Ni und der das Punktierungsschema bestimmenden Parameter 'a' und 'b' für den Ratenanpassungsprozess initialisiert. Wenn Nc und Ni durch Parameterinitialisierung bestimmt sind, wird die Zahl zu punktierender Symbole in Schritt 702 durch y = Nc – Ni bestimmt. In Schritt 703 wird ein Anfangsfehler 'e' zwischen vorhandenen und gewünschten Punktierungsverhältnissen errechnet. Der Anfangsfehler wird durch e = b·Nc mod a·Nc bestimmt.According to 7 be in step 701 initializes all kinds of parameters including the input symbol number Nc, the output symbol number Ni and the puncturing scheme determining parameters 'a' and 'b' for the rate matching process. When Nc and Ni are determined by parameter initialization, the number of symbols to be punctured becomes in step 702 determined by y = Nc - Ni. In step 703 an initial error 'e' between existing and desired puncturing ratios is calculated. The initial error is determined by e = b * Nc mod a * Nc.

Als Nächstes wird in Schritt 704 'm', der die Reihenfolge der Eingangssymbole angibt, auf '1' gesetzt. Danach werden in den Schritten 705 bis 709 die Symbole von dem Anfangssymbol an dahingehend untersucht, ob sie punktiert werden sollen oder nicht. Wenn in Schritt 707 festgestellt wird, dass der berechnete Fehlerwert 'e' kleiner oder gleich '0' ist, wird das entsprechende Symbol punktiert, und dann wird in Schritt 708 der Fehlerwert durch e = e + a·Nc aktualisiert. Andernfalls wird, wenn in Schritt 707 festgestellt wird, dass der berechnete Fehlerwert 'e' größer als '0' ist, keine Punktierung durchgeführt. Der Vorgang des Empfangens der codierten Symbole in Reihenfolge, des Bestimmens, ob auf den empfangenen Symbolen eine Punktierung durchgeführt wird, und des Durchführens der entsprechenden Punktierung wird wiederholend ausgeführt, bis in Schritt 705 festgestellt wird, dass alle Symbole in einem Rahmen vollständig empfangen wurden.Next will be in step 704 'm', which indicates the order of the input symbols, is set to '1'. After that, in the steps 705 to 709 the symbols from the beginning symbol to whether they should be punctured or not. When in step 707 it is determined that the calculated error value 'e' is less than or equal to '0', the corresponding symbol is punctured, and then in step 708 the error value is updated by e = e + a · Nc. Otherwise, if in step 707 it is determined that the calculated error value 'e' is greater than '0', no puncturing performed. The process of receiving the coded symbols in order, determining whether puncturing is performed on the received symbols, and performing the corresponding puncturing is performed repeatedly until in step 705 It is determined that all symbols in a frame have been completely received.

Wie durch den obigen Algorithmus gezeigt, wird die Position des ersten zu punktierenden oder zu wiederholenden Symbols durch die Parameter (a, b) gesteuert (Initial_Offset_m = die Position des ersten zu punktierenden Symbols). In dem obigen Algorithmus ist Initial_Offset_m = 'm', wenn für das erste Mal 'e' <= 0. Die Tabelle unten zeigt ein Beispiel zum Bestimmen von Initial Offset m. In dem Beispiel unten wird angenommen, dass bNc kleiner als aNc ist.As shown by the above algorithm, the position of the first to puncturing or repeating symbols by the parameters (a, b) controlled (Initial_Offset_m = the position of the first to puncturing symbol). In the above algorithm, Initial_Offset_m is = 'm', if for the first Times 'e' <= 0. The table below shows an example for determining initial offset m. In the example below, it is assumed that bNc is less than aNc.

Figure 00250001
Figure 00250001

"Initial Offset m = k = 4""Initial offset m = k = 4"

In den Gleichungen unten bezeichnet Ppnc die Periode des Punktierens oder Wiederholens in dem obigen Algorithmus. Initial Offset m = |bNc/ay| = |(b/a)·(Nc/y)| = |(b/a)·PpncPpnc = |Nc/y| wenn Nc/y eine Ganzzahl ist
= |Nc/y| +/- 1 wenn Nc/y keine Ganzzahl ist.
In the equations below, Ppnc denotes the period of puncturing or repeating in the above algorithm. Initial offset m = | bNc / ay | = | (b / a) · (Nc / y) | = | (b / a) · Ppnc Ppnc = | Nc / y | if Nc / y is an integer
= | Nc / y | +/- 1 if Nc / y is not an integer.

Wie in den obigen Gleichungen gezeigt, kann durch Steuern der Parameter (a, b) die Position des ersten zu punktierenden oder zu wiederholenden Symbols gesteuert werden.As Shown in the above equations, by controlling the parameters (a, b) the position of the first to be punctured or repeated Symbols are controlled.

Zum Beispiel nimmt der Wert von Initial-Offset_m ab, während 'a' zunimmt, wenn 'b' konstant bleibt. Durch Erhöhen von 'a' wird somit die Position des ersten zu punktierenden/wiederholenden Symbols näher an die erste Position geschoben. Wenn 'a' größer als by/Nc gewählt wird, dann ist Initial Offset m = 1, was bedeutet, dass das erste Symbol punktiert oder wiederholt werden wird. Demnach kann die Position des ersten zu punktierenden/wiederholenden Symbols manipuliert werden, indem ein Wert für 'a' zwischen 1 und Ppnc gewählt wird. Wenn z.B. 'b' = 1 und 'a' = 2, wird die Position des ersten zu punktierenden/wiederholenden Symbols immer gleich Ppnc/2 sein.To the For example, the value of Initial-Offset_m decreases while 'a' increases, while 'b' is constant remains. By elevating of 'a' is thus the position of the first symbol to be punctured / repeated closer to pushed first position. If 'a' is greater than selected by / Nc is, then initial offset m = 1, which means that the first Symbol will be punctured or repeated. Accordingly, the position of the first symbol to be punctured / repeated, by choosing a value for 'a' between 1 and Ppnc. If e.g. 'b' = 1 and 'a' = 2, the position of the first becomes puncturing / repeating symbol always be Ppnc / 2.

Was den Parameter 'b' angeht, steuert er den Initial Offset m zusammen mit 'a', und, wie unten gezeigt, kann, sobald der Wert für 'a' bestimmt worden ist, der Wert von 'b' als 1 <= 'b' <= 'a' ausgedrückt werden. Wenn 'a' konstant bleibt, wird Initial_Offset_m zunehmen, wenn 'b' zunimmt, und wird abnehmen, wenn 'b' abnimmt. Die Punktierungs/ Wiederholungs-Positionen können somit durch Manipulieren der Werte der Parameter (a, b) gesteuert werden.As for the parameter 'b', it controls the initial offset m together with 'a' and, as shown below, once the value for 'a' has been determined, the value of 'b' can be set to 1 <= ' b '<=' a 'are expressed. If 'a' remains constant, Initial_Offset_m will increase as 'b' increases, and will decrease as 'b' decreases. The puncturing / repeating positions can thus be controlled by manipulating the values of the parameters (a, b).

Obwohl der Wert von 'b' beliebig sein kann, ist es nicht sinnvoll, einen Wert von 'b' größer als 'a' zu wählen, wie unten gezeigt, weil der Anfangswert von 'e' zyklisch wird, sobald der Wert von 'b' größer als 'a' wird (d.h., der Wert von 'e' wiederholt sich selbst).
Lasse 'a' = 3;
der Anfangswert von e = (2·S(k)·y + Bnc) mod aNc;
e = bNc mod aNc, da S(k) = 0 in der Abwärtsstrecke;
wenn b = 1 dann e = Nc;
wenn b = 2 dann e = 2Nc;
wenn b = 3 dann e = 3Nc;
wenn b = 4 dann e = Nc;
wenn b = 5 dann e = 2Nc;
wenn b = 6 dann e = 3Nc;
Although the value of 'b' may be arbitrary, it does not make sense to choose a value of 'b' greater than 'a', as shown below, because the initial value of 'e' will become cyclic as soon as the value of 'b 'becomes greater than' a '(ie, the value of' e 'repeats itself).
Let 'a' = 3;
the initial value of e = (2 * S (k) * y + Bnc) mod aNc;
e = bNc mod aNc, since S (k) = 0 in the downlink;
if b = 1 then e = Nc;
if b = 2 then e = 2Nc;
if b = 3 then e = 3Nc;
if b = 4 then e = Nc;
if b = 5 then e = 2Nc;
if b = 6 then e = 3Nc;

Wie in dem obigen Beispiel gezeigt, ändert sich der Wert von 'e', wenn sich der Wert von 'b' ändert. Sobald aber der Wert von 'b' größer wird als 'a', wiederholt der Wert von 'e' sich selbst zyklisch. Es ist daher nicht sinnvoll, 'b' einen Wert größer als 'a' zuzuweisen. Zusammengefasst, das Punktierungs/Wiederholungs-Schema kann durch Manipulieren der Parameter (a, b) gesteuert werden.As shown in the above example changes the value of 'e', if the value of 'b' changes. But as soon as the value of 'b' gets bigger as 'a', repeats the Value of 'e' itself cyclically. It therefore does not make sense to assign 'b' a value greater than 'a'. In summary, the punctuation / repetition scheme can be controlled by manipulating the parameters (a, b).

B. Ausführungen der Ratenanpassungsvorrichtung durch WiederholenB. designs the rate adjusting device by repeating

1. Ausführung der Ratenanpassungsvorrichtung durch Wiederholen (für einen Konvolutional-Code)1. Execution of the Rate adaptation device by repeating (for a convolutional code)

9 zeigt die Struktur einer Ratenanpassungsvorrichtung einer erfindungemäßen Ausführung. Diese Struktur wird verwendet, wenn die Ratenanpassungsvorrichtungen von 2 und 3 konvolutional codierte Symbole durch Wiederholen in der Rate anpassen. 9 shows the structure of a rate matching device of an inventive execution. This structure is used when the rate matching devices of 2 and 3 adjust convolutionally encoded symbols by repeating in the rate.

Gemäß 9 codiert ein Konvolutionalcodierer 210 eingegebene Informationsbits Ik mit einer Codierungsrate R = 1/3 und gibt codierte Symbole C1k, C2k und C3k aus. Die codierten Symbole C1k, C2k und C3k werden getrennt an Ratenanpassungsblöcke 231, 232 bzw. 233 übergeben. Der erste Ratenanpassungsblock 231 wiederholt selektiv das codierte Symbol C1k. An diesem Punkt erfolgt der Wiederholungsprozess auf der Basis der Symbolwiederholungszahl y = Ni – Nc, die durch die Eingangssymbolzahl Nc, die Ausgangssymbolzahl Ni und die das Wiederholungsschema bestimmenden Parameter 'a' und 'b' bestimmt wird. Der erste Ratenanpassungsblock 231 kann z.B. die Symbole '... 11(11)101(00)010 ...' ausgeben (wobei (11) und (00) wiederholte Symbole bezeichnen).According to 9 encodes a convolutional encoder 210 input information bits Ik at a coding rate R = 1/3 and outputs encoded symbols C1k, C2k and C3k. The coded symbols C1k, C2k and C3k are separated into rate matching blocks 231 . 232 respectively. 233 to hand over. The first rate adjustment block 231 selectively repeats the encoded symbol C1k. At this point, the repetition process is performed on the basis of the symbol repetition number y = Ni-Nc which is determined by the input symbol number Nc, the output symbol number Ni, and the repetition pattern determining parameters 'a' and 'b'. The first rate adjustment block 231 may, for example, output the symbols '... 11 (11) 101 (00) 010 ...' (where (11) and (00) denote repeated symbols).

Der zweite Ratenanpassungsblock wiederholt selektiv das codierte Symbol C2k. An diesem Punkt erfolgt der Wiederholungsprozess auf der Basis der Symbolwiederholungszahl y = Ni – Nc, die durch die Eingangssymbolszahl Nc, die Ausgangssymbolzahl Ni und die das Wiederholungsschema bestimmenden Parameter 'a' und 'b' bestimmt wird. Der zweite Ratenanpassungsblock 232 kann z.B. die Symbole '... (11)01(00)1100 ...' ausgeben (wobei (11) und (00) wiederholte Symbole bezeichnen).The second rate matching block selectively repeats the encoded symbol C2k. At this point, the repetition process is performed on the basis of the symbol repetition number y = Ni-Nc which is determined by the input symbol number Nc, the output symbol number Ni and the repetition pattern determining parameters 'a' and 'b'. The second rate adjustment block 232 can, for example, output the symbols '... (11) 01 (00) 1100 ...' (where (11) and (00) denote repeated symbols).

Der dritte Ratenanpassungsblock 233 wiederholt das codierte Symbol C3k. An diesem Punkt erfolgt der Wiederholungsprozess auf der Basis der Symbolwiederhofungszahl y = Ni – Nc, die durch die Eingangssymbolzahl Nc, die Ausgangssymbolzahl Ni und die das Wiederholungsschema bestimmenden Parameter 'a' und 'b' bestimmt wird. Der dritte Ratenanpassungsblock 233 kann z.B. die Symbole '... 0(11)1101(11) ...' ausgeben (wobei (11) wiederholte Symbole angibt). Die durch die Ratenanpassungsblöcke 231, 232 und 233 in der Rate angepassten codierten Symbole werden durch einen Multiplexer 240 gemultiplext und an einen Kanalsender übergeben.The third rate adjustment block 233 repeats the coded symbol C3k. At this point, the repetition process is based on the symbol repetition number y = Ni-Nc determined by the input symbol number Nc, the output symbol number Ni, and the repetition pattern determining parameters 'a' and 'b'. The third rate adjustment block 233 may, for example, output the symbols '... 0 (11) 1101 (11) ...' (where (11) indicates repeated symbols). The through the rate adjustment blocks 231 . 232 and 233 rate-matched coded symbols are passed through a multiplexer 240 multiplexed and handed over to a channel transmitter.

In 9 werden die Eingangssymbolzahl Nc und die Ausgangssymbolzahl Ni für jeden Ratenanpassungsblock in gleicher Weise als Nc = R × Ncs bzw. Ni = R × Nis bestimmt. Es ist festgelegt, dass jeder Ratenanpassungsblock getrennt dieselbe Zahl der kanalcodierten Symbole in der Annahme wiederholt, dass die Fehleranfälligkeit von codierten Signalen für jedes Symbol in einem Rahmen fast gleich ist. Das heißt, innerhalb eines Rahmens wird ein fast gleichmäßiges Wiederholungsschema ungeachtet der gemäß der Serviceart bestimmten verschiedenen Wiederholungsbitzahlen (y = Ni – Nc) bereitgestellt. Das liegt daran, dass es möglich ist, für den Konvolutionalcode die ganzen Symbole in einem Rahmen gleichmäßig zu wiederholen.In 9 For example, the input symbol number Nc and the output symbol number Ni are determined for each rate matching block similarly as Nc = R × Ncs and Ni = R × Nis, respectively. It is determined that each rate matching block separately repeats the same number of the channel coded symbols on the assumption that the error rate of coded signals for each symbol in a frame is almost equal. That is, within one frame, an almost uniform repetition scheme is provided regardless of the various repetition bit numbers (y = Ni-Nc) determined according to the type of service. This is because it is possible to evenly repeat the entire symbols in a frame for the convolutional code.

Gemäß der Ausführung der vorliegenden Erfindung werden die durch den Konvolutional-Codierer codierten Symbole in derselben Zahl getrennt und an die Ratenanpassungsblöcke 231, 232 und 233 übergeben. Die Ratenanpassungsblöcke 231, 232 und 233 wiederholen jeweils dieselbe Zahl von Eingangssymbolen. An diesem Punkt können die Wiederholungsschemaparameter entweder gleich oder verschieden bestimmt werden. Das heißt, für die Ratenanpassungsblöcke 231, 232 und 233 können die Wiederholungsmuster entweder gleich oder unterschiedlich bestimmt werden.According to the embodiment of the present invention, the symbols encoded by the convolutional encoder are separated in the same number and sent to the rate matching blocks 231 . 232 and 233 to hand over. The rate adjustment blocks 231 . 232 and 233 repeat each same number of input symbols. At this point, the repeat schema parameters can be determined to be the same or different. That is, for the rate matching blocks 231 . 232 and 233 the repetition patterns can be determined either equal or different.

2. Eine andere Ausführung einer Ratenanpassungsvorrichtung durch Wiederholen (für einen Turbocode)2. Another embodiment of a Rate adaptation device by repetition (for a turbo code)

10 zeigt die Struktur einer Ratenanpassungsvorrichtung durch Wiederholen gemäß einer anderen Ausführung der vorliegenden Erfindung. Diese Struktur wird benutzt, wenn die Ratenanpassungsvorrichtungen von 2 und 3 die Raten von turbocodierten Symbolen anpassen. 10 Fig. 10 shows the structure of a rate matching device by repeating according to another embodiment of the present invention. This structure is used when the rate matching devices of 2 and 3 to adjust the rates of turbo-coded symbols.

Gemäß 10 codiert ein Turbocodierer 220 eingegebene Informationsbits Ik mit einer Codierungsrate von R = 1/3 und gibt codierte Symbole C1k, C2k und C3k aus. Von den codierten Symbolen wird das Informationssymbol C1k getrennt an einen ersten Ratenanpassungsblock 231 übergeben, und die Paritätssymbole (Redundanzsymbole) werden getrennt an einen zweiten und dritten Ratenanpassungsblock 232 bzw. 233 übergeben. Der Turbocodierer 220 besteht aus einem ersten Komponentencodierer 222, einem zweiten Komponentencodierer 224 und einem Verschachteler 226, wie in 6 gezeigt. Die Komponentencodierer 222 und 224 können rekursive systematische Codes (RSC) verwenden. Der Aufbau des Turbocodierers 220 ist den Fachleuten wohl bekannt. Eine ausführliche Beschreibung wird daher weggelassen. Die Eingabe X(t) in den Turbocodierer 220 entspricht den in 10 gezeigten Eingangsinformationsbits Ik. Die Ausgänge X(t), Y(t) und Y'(t) des Turbocodierers 220 entsprechen den in 10 gezeigten codierten Symbolen C1 k, C2k bzw. G3k. Der erste Ausgang des Turbocodierers 220 gibt die eingegebenen Informationsbits Ik wie sie sind aus, so dass in 10 die eingegebenen Informationsbits Ik als C1k ausgegeben werden.According to 10 encodes a turbo encoder 220 input information bits Ik at a coding rate of R = 1/3 and outputs encoded symbols C1k, C2k and C3k. Of the coded symbols, the information symbol C1k is separated to a first rate matching block 231 and the parity symbols (redundancy symbols) are separated to a second and third rate matching block 232 respectively. 233 to hand over. The turbo encoder 220 consists of a first component encoder 222 a second component encoder 224 and a nestler 226 , as in 6 shown. The component encoders 222 and 224 can use recursive systematic codes (RSC). The construction of the turbo coder 220 is well known to those skilled in the art. A detailed description is therefore omitted. The input X (t) into the turbo encoder 220 corresponds to the in 10 shown input information bits Ik. The outputs X (t), Y (t) and Y '(t) of the turbo coder 220 correspond to the in 10 shown encoded symbols C1 k, C2k and G3k. The first output of the turbo coder 220 returns the input information bits Ik as they are, so that in 10 the input information bits Ik are output as C1k.

Der erste Ratenanpassungsblock 231 wiederholt die codierten Symbole auf der Basis der folgenden Kriterien. Da die Codierungsrate R = 1/3 ist, wird die Eingangssymbolzahl Nc als Nc = R × Ncs = Ncs/3 bestimmt, was 1/3 der Gesamtzahl von Eingangssymbolen (codierte Symbole) ist. Die Ausgangssymbolzahl Ni wird als Ni = Nis – (2R × Ncs) bestimmt, da das Wiederholen gemäß Voraussetzung 1D erfolgen soll. Die Wiederholungsschema-Bestimmungsparameter 'a' und 'b' können gemäß einem gewünschten Wiederholungsschema auf gegebene Ganzzahlen gesetzt werden. Die Ganzzahlen können nur in Abhängigkeit von dem Wiederholungsschema bestimmt werden, und die Parameter können typisch auf b = 1 und a = 2 gesetzt werden. Ein ausführliche Beschreibung eines Verfahrens zum Bestimmen der Ganzzahlen für die Wiederholungsschema-Bestimmungsparameter wird mit Verweis auf die Tabellen unten vorgenommen werden. Der erste Ratenanpassungsblock 231 kann z.B. die Symbole '... 1(11)101(00)11 ...' ausgeben (wo (11) und (00) wiederholte Symbole angeben.The first rate adjustment block 231 repeats the coded symbols based on the following criteria. Since the coding rate is R = 1/3, the input symbol number Nc is determined as Nc = R × Ncs = Ncs / 3, which is 1/3 of the total number of input symbols (coded symbols). The output symbol number Ni is determined as Ni = Nis - (2R × Ncs), because the repetition is according to assumption 1D should be done. The repetition scheme determination parameters 'a' and 'b' may be set to given integers according to a desired repetition scheme. The integers can only be determined depending on the repetition scheme, and the parameters can typically be set to b = 1 and a = 2. A detailed description of a method for determining the integers for the repeat scheme determination parameters will be made with reference to the tables below. The first rate adjustment block 231 can, for example, output the symbols '... 1 (11) 101 (00) 11 ...' (where (11) and (00) indicate repeated symbols.

Der zweite Ratenanpassungsblock 232 gibt die codierten Symbole Ck2 ohne Wiederholung aus. Der zweite Ratenanpassungsblock 232 kann jedoch die codierten Symbole unter bestimmten Umständen, z.B. strenge Wiederholung, wiederholen. Da die Codierungsrate R = 1/3 beträgt, wird die Eingangssymbolzahl Nc als Nc = R × Ncs = Ncs/3 bestimmt, was 1/3 der Gesamtzahl von Eingangssymbolen ist. Die Ausgangssymbolzahl Ni wird als Ni = R × Ncs bestimmt, was gleich der Eingangssymbolzahl ist, da gemäß den Voraussetzungen 2D und 4D die zwei Arten von Paritätssymbolen nicht wiederholt werden sollen. Der zweite Ratenanpassungsblock 232 kann z.B. die Symbole '... 110111101 ...' ausgeben, worin keine Wiederholung vorhanden ist.The second rate adjustment block 232 outputs the coded symbols Ck2 without repetition. The second rate adjustment block 232 However, under certain circumstances, such as severe repetition, it may repeat the coded symbols. Since the coding rate is R = 1/3, the input symbol number Nc is determined as Nc = R × Ncs = Ncs / 3, which is 1/3 of the total number of input symbols. The output symbol number Ni is determined to be Ni = R × Ncs, which is equal to the input symbol number, since according to the conditions 2D and 4D, the two types of parity symbols should not be repeated. The second rate adjustment block 232 can, for example, output the symbols '... 110111101 ...', in which there is no repetition.

Der dritte Ratenanpassungsblock 233 gibt die codierten Symbole C3k ohne Wiederholung aus. Der dritte Ratenanpassungsblock 233 kann aber unter strenger Wiederholung die codierten Symbole C3k auch wiederholen. Da die Codierungsrate R = 1/3 ist, wird die Eingangssymbolzahl Nc als Nc = R × Ncs = Ncs/3 bestimmt, was 1/3 der Gesamtzahl von Eingangssymbolen ist. Die Ausgangssymbolzahl Ni wird als Ni = R × Ncs bestimmt, was gleich der Eingangssymbolzahl ist, da gemäß den Voraussetzungen 2D und 4D die zwei Arten von Paritätssymbolen nicht wiederholt werden sollen. Die Wiederholungsschema-Bestimmungsparameter 'a' und 'b' können auf gegebene Ganzzahlen gemäß einem gewünschten Wiederholungsschema gesetzt werden. Wenn aber die Blöcke 232 und 233 keine Wiederholung verwenden, sind die Parameter (a, b) für die Ratenanpassungsblöcke 232 und 233 ohne Bedeutung. Die Ganzzahlen werden nur abhängig von dem Wiederholungsschema bestimmt, und die Ganzzahlen können typisch auf b = 1 und a = 2 gesetzt werden. Eine ausführliche Beschreibung eines Verfahrens zum Bestimmen der Ganzzahlen für die Wiederholungsschema-Bestimmungsparameter wird mit Verweis auf die Tabellen unten vorgenommen werden. Der dritte Ratenanpassungsblock 233 kann z.B. die Symbole '... 01011010 ...' ausgeben, die keine Wiederholung erfahren haben.The third rate adjustment block 233 outputs the coded symbols C3k without repetition. The third rate adjustment block 233 but under strict repetition can also repeat the coded symbols C3k. Since the coding rate is R = 1/3, the input symbol number Nc is determined as Nc = R × Ncs = Ncs / 3, which is 1/3 of the total number of input symbols. The output symbol number Ni is determined to be Ni = R × Ncs, which is equal to the input symbol number, since according to the conditions 2D and 4D, the two types of parity symbols should not be repeated. The repeat scheme determining parameters 'a' and 'b' may be set to given integers according to a desired repeat scheme. But if the blocks 232 and 233 do not use repetition, the parameters (a, b) are for the rate matching blocks 232 and 233 without meaning. The integers are only determined depending on the recurrence scheme, and the integers can typically be set to b = 1 and a = 2. A detailed description of a method for determining the integers for the recurrence scheme determination parameters will be made with reference to the tables below. The third rate adjustment block 233 can, for example, output the symbols '... 01011010 ...', which will not be repeated to have.

In 10 werden die durch den Turbocodierer 220 codierten Symbole in derselben Zahl getrennt und dann an die Ratenanpassungsblöcke 231, 232 und 233 übergeben. Der erste Ratenanpassungsblock 231 empfängt die Informationssymbole aus den codierten Symbolen und wiederholt die empfangenen Symbole gemäß einem vorbestimmten Wiederholungsschema. Der zweite und dritte Ratenanpassungsblock 232 und 233 empfangen die Paritätssymbole aus den codierten Symbolen und geben die empfangenen Symbole wie sie sind ohne Wiederholung aus.In 10 be through the turbo encoder 220 coded symbols separated in the same number and then to the rate matching blocks 231 . 232 and 233 to hand over. The first rate adjustment block 231 receives the information symbols from the coded symbols and repeats the received symbols according to a predetermined repetition scheme. The second and third rate matching block 232 and 233 receive the parity symbols from the encoded symbols and output the received symbols as they are without repetition.

3. Bestimmung von Parametern zum Wiederholen3. Determination parameters to repeat

Wie oben beschrieben, können die für die betreffenden Ratenanpassungsblöcke benutzten Wiederholungsschemas entweder gleich oder unterschiedlich sein. Das heißt, das in den betreffenden Ratenanpassungsblöcken benutzte Symbolwiederholungsschema und die Zahl von wiederholten Symbolen kann variabel bestimmt werden. Wenn die Zahl Ni der von den betreffenden Ratenanpassungsblöcken ausgegebenen Symbole unterschiedlich festgelegt wird, wird die Zahl der durch die betreffenden Ratenanpassungsblöcke wiederholten Symbole unterschiedlich bestimmt werden. Weiterhin kann das Schema der durch die betreffenden Ratenanpassungsblöcke wiederholten Symbole durch Ändern der Wiederholungsschema-Bestimmungsparameter'a' und 'b' entweder gleich oder unterschiedlich bestimmt werden. Das heißt, obwohl sie einen Einzelstruktur aufweist, kann eine erfindungsgemäße Ratenanpassungsvorrichtung Parameter, z.B. die Eingangssymbolzahl, die Ausgangssymbolzahl, die Zahl zu wiederholender Symbole und die Wiederholungsschema-Bestimmungsparameter, unterschiedlich bestimmen.As described above the for the appropriate rate matching blocks used recurrence schemes be either the same or different. That is, that symbol repeating scheme used in the respective rate matching blocks and the number of repeated symbols can be variably determined. If the number Ni of the output from the respective rate matching blocks Icons set differently, the number of passes through the appropriate rate matching blocks repeated symbols differently be determined. Furthermore, the scheme of the concerned by the Rate matching blocks repeated symbols by changing the repeat scheme determination parameters 'a' and 'b' are either equal or different be determined. This means, Although it has a single structure, an inventive rate matching device Parameters, e.g. the input symbol number, the output symbol number, the number of symbols to be repeated and the repetition scheme determination parameters, determine differently.

Tabelle 4 unten zeigt als Beispiel verschiedene Fälle von Parametern. Die Codierungsrate wird hierin als R = 1/3 angenommen. Es werden daher drei Ratenanpassungsblöcke bereitgestellt, und die betreffenden Ratenanpassungsblöcke empfangen getrennt dieselbe Zahl von Symbolen, d.h., Nc = Ncs/3 Symbole. Hierin empfangen die Ratenanpassungsblöcke dieselbe Zahl von Symbolen, die durch Multiplizieren der Zahl von codierten Symbolen mit der Codierungsrate bestimmt wird. Man sollte aber zur Kenntnis nehmen, dass die vorliegende Erfindung auch auf einen Fall angewandt werden kann, wo die Ratenanpassungsblöcke getrennt eine unterschiedliche Zahl von Symbolen empfangen, d.h., eine Zahl von Symbolen, die kleiner ist als die Zahl, die durch Multiplizieren der Zahl der codierten Symbole in einem Rahmen mit der Codierungsrate bestimmt wird, oder eine Zahl von Symbolen, die größer ist als die Zahl, die durch Multiplizieren der Zahl der codierten Symbole in einem Rahmen mit der Codierungsrate bestimmt wird. In der Beschreibung unten bezeichnen RMB1, RMB2 und RMB3 jeweils den ersten bis dritten Ratenanpassungsblock.table 4 below shows as an example different cases of parameters. The coding rate is assumed herein as R = 1/3. There are therefore provided three rate matching blocks, and the respective rate matching blocks receive the same separately Number of symbols, i.e., Nc = Ncs / 3 symbols. Here are the received Rate matching blocks the same number of symbols obtained by multiplying the number of coded symbols is determined with the coding rate. One should but note that the present invention also applies a case can be applied where the rate matching blocks are separated receive a different number of symbols, that is, a number of symbols smaller than the number by multiplying the number of coded symbols in a frame with the coding rate is determined, or a number of symbols that is larger as the number, by multiplying the number of coded symbols is determined in a frame with the coding rate. In the description At the bottom, RMB1, RMB2 and RMB3 denote the first to third, respectively Rate matching block.

[Tabelle 4]

Figure 00310001
[Table 4]
Figure 00310001

In Tabelle 4 bezeichnen RMB1, RMB2 und RMB3 Ratenanpassungsblöcke, und p, q, r, s, t, w und x sind gegebene Ganzzahlen. NA (nicht vorhanden) gibt an, dass die Eingangssymbole wie sie sind ohne Wiederholung ausgegeben werden, wofür die Parameter 'a' und 'b' auf jeden Wert gesetzt werden können. Hier sind die Parameter 'a' und 'b' positive Zahlen. Weiter wird der Fall gezeigt, wo die Eingangssymbole zur Durchführung der Ratenanpassung wiederholt werden, so dass die Zahl der Eingangssymbole kleiner oder gleich der Zahl der Ausgangssymbole ist (d.h., Ncs <= Nis). Es wird auf jeden Fall Bezug genommen.

  • Fall 1: Bei systematischer Wiederholung werden Informationssymbole wiederholt, aber die Paritätssymbole werden nicht wiederholt. Die Wiederholungsschema-Bestimmungsparameter werden auf a = 2 und b = 1 gesetzt.
  • Fall 2: Bei systematischer Wiederholung werden Informationssymbole wiederholt. aber die Paritätssymbole werden nicht wiederholt. Die Wiederholungsschema-Bestimmungsparameter werden auf a = p und b = q gesetzt.
  • Fall 1 und Fall 2 können nur angewandt werden, wenn die turbocodierten Informationssymbole wie in 10 gezeigt wiederholt werden.
  • Fall 3: Sowohl die Informationssymbole als auch die Paritätssymbole werden wiederholt, und die Wiederholungsschemas werden für RMB1, RMB2 und RMB3 in gleicher Weise bestimmt. Die Zahl von wiederholten Symbolen ist für RMB1, RMB2 und RMB3 gleich.
  • Fall 4: Sowohl die Informationssymbole als auch die Paritätssymbole werden wiederholt, und die Wiederholungsschemas werden für alle oder einige von RMB1, RMB2 und RMB3 unterschiedlich bestimmt. Die Zahl von wiederholten Symbolen ist für RMB2 und RMB3 gleich.
In Table 4, RMB1, RMB2 and RMB3 denote rate matching blocks, and p, q, r, s, t, w and x are given integers. NA (not present) indicates that the input symbols are output as they are without repetition, for which the parameters 'a' and 'b' can be set to any value. Here the parameters 'a' and 'b' are positive numbers. Further, the case is shown where the input symbols are repeated to perform the rate matching so that the number of input symbols is less than or equal to the number of output symbols (ie, Ncs <= Nis). It will definitely be referred to.
  • Case 1: In systematic repetition, information symbols are repeated, but the parity symbols are repeated will not be repeated. The repetition scheme determination parameters are set to a = 2 and b = 1.
  • Case 2: In systematic repetition, information symbols are repeated. but the parity symbols are not repeated. The repetition scheme determination parameters are set to a = p and b = q.
  • Case 1 and Case 2 can only be applied if the turbo-coded information symbols as in 10 be repeated shown.
  • Case 3: Both the information symbols and the parity symbols are repeated, and the repetition schemes are determined in the same way for RMB1, RMB2 and RMB3. The number of repeated symbols is the same for RMB1, RMB2 and RMB3.
  • Case 4: Both the information symbols and the parity symbols are repeated, and the recurrence schemes are determined differently for all or some of RMB1, RMB2 and RMB3. The number of repeated symbols is the same for RMB2 and RMB3.

Tabelle 5 unten zeigt die Veränderungen in Wiederholungsschemas gemäß einer Änderung im Parameter 'a'. In Tabelle 5 wird angenommen, dass Nc = 8, Ni = 10, y = Ni – Nc = 10 – 8 = 2 und b = 1. Die gemäß dem Wiederholungsschema wiederholten Symbole werden durch '()' dargestellt.table 5 below shows the changes in recurrence schemes according to a change in parameter 'a'. In Table 5 becomes Suppose that Nc = 8, Ni = 10, y = Ni - Nc = 10 - 8 = 2 and b = 1. The according to the repeating scheme repeated symbols are represented by '()'.

[Tabelle 5]

Figure 00320001
[Table 5]
Figure 00320001

Aus Tabelle 5 ist zu ersehen, dass es möglich ist, verschiedene Wiederholungsschemas zu erhalten, indem 'b' auf '1' festgelegt wird und 'a' auf unterschiedliche Werte gesetzt wird. Natürlich ist es möglich, mehr verschiedenartige Wiederholungsschemas zu erhalten, indem auch der Parameter 'b' geändert wird. Außerdem ist es möglich, immer das erste Symbol zu wiederholen, indem der Parameter 'b' auf 1 gesetzt wird und ein Wert benutzt wird, der Gleichung 2 unten für den Parameter 'a' erfüllt. Um die Voraussetzung 3D zu erfüllen, sollte der Parameter 'a' auf einen Wert innerhalb eines Bereichs von Gleichung 2 gesetzt werden. a > |Nc/y| (2)wo |Nc/y| die größte Ganzzahl kleiner oder gleich Nc/y ist.From Table 5 it can be seen that it is possible to obtain different repetition schemes by setting 'b' to '1' and setting 'a' to different values. Of course, it is possible to get more different recurrence schemes by also changing the parameter 'b'. In addition, it is possible to always repeat the first symbol by setting the parameter 'b' to 1 and using a value that satisfies Equation 2 below for the parameter 'a'. To satisfy the requirement of 3D, the parameter 'a' should be set to a value within a range of Equation 2. a> | Nc / y | (2) where | Nc / y | the largest integer is less than or equal to Nc / y.

In Gleichung 2 ist für Nc = 8 und y = 2, Nc/y = 8/2 = 4. Wenn 'a' einen Wert größer als 4 hat, werden die ersten Symbole wiederholt.In Equation 2 is for Nc = 8 and y = 2, Nc / y = 8/2 = 4. If 'a' is a Value greater than 4, the first symbols are repeated.

Um die Voraussetzung 5D zu erfüllen, sollten die Schwanzbits wiederholt werden. Dazu sollte Nc auf einen Wert gesetzt werden, der durch Addieren der Zahl der Schwanzbits zu Nc bestimmt wird. Das heißt, wenn die Eingangssymbolzahl Nc auf Nc + Nt gesetzt wird, wo NT die Zahl von Schwanzbits bezeichnet, werden die Schwanzbits für die Informationssymbole immer wiederholt, wodurch Voraussetzung 5D erfüllt wird. Mit anderen Worten, zum Wiederholen werden auch die Schwanzbits in den Ratenanpassungsblock eingegeben und zur Wiederholung in Betracht gezogen.Around the requirement to fulfill 5D, the tail bits should be repeated. This should be Nc on one Value to be set by adding the number of tail bits is determined to Nc. That is, if the input symbol number Nc is set to Nc + Nt where NT is the number of tail bits become the tail bits for the information symbols always repeated, fulfilling condition 5D. In other words, the tail bits in the rate matching block will also repeat entered and considered for repetition.

4. Ratenanpassungsalgorithmus durch Wiederholen4. Rate matching algorithm by repeating

11 zeigt eine Ratenanpassungsprozedur durch Wiederholen gemäß einer Ausführung der vorliegenden Erfindung. Diese Prozedur wird auf der Basis eines in Tabelle 6 unten gezeigten Ratenanpassungsalgorithmus durchgeführt. In Tabelle 6 bezeichnet "So = {d1, d2, ..., dNc}" die zur Ratenanpassung eingegebenen Symbole, d.h., die in einer Rahmeneinheit zur Ratenanpassung eingegebenen Symbole, und besteht insgesamt aus Nc Symbolen. Ein Schiebeparameter S(k) ist ein in dem Algorithmus benutzter Anfangswert und wird dauerhaft auf "0" gesetzt, wenn die erfindungsgemäße Ratenanpassungsvorrichtung in einer Abwärtsstrecke eines digitalen Übertragungssystems verwendet wird (d.h., wenn die Ratenanpassung auf den von der Basisstation an die Mobilstation zu sendenden codierten Symbolen erfolgt). 'm' gibt die Reihenfolge der zur Ratenan passung eingegebenen Symbole an und hat die Reihenfolge 1, 2, 3, ..., Nc. Aus Tabelle 6 ist zu ersehen, dass die Parameter, die die Eingangssymbolzahl Nc, die Ausgangssymbolzahl Ni und die Wiederholungsschema-Bestimmungsparameter 'a' und 'b' einschließen, geändert werden können. Zum Beispiel können die Parameter wie in Tabelle 4 gezeigt geändert werden. Die Eingangssymbolzahl Nc kann gemäß der Codierungsrate R als ein Wert anders als Ncs/3 bestimmt werden. 11 entspricht dem Fall, wo der Algorithmus von Tabelle 6 auf die Abwärtsstrecke eines digitalen Übertragungssystems angewandt wird, d.h., S(k) = 0. 11 FIG. 12 shows a rate matching procedure by repeating according to an embodiment of the present invention. FIG. This procedure is performed based on a rate matching algorithm shown in Table 6 below. In Table 6, "So = {d1, d2, ..., dNc}" denotes the symbols inputted for rate matching, that is, the symbols entered in a rate matching frame unit, and is composed of Nc symbols as a whole. A shift parameter S (k) is an initial value used in the algorithm and is permanently set to "0" when the rate matching device of the present invention is used in a downlink of a digital transmission system (ie, when the rate matching is performed on the Ba sisstation to the mobile station to be transmitted coded symbols). 'm' indicates the order of symbols entered for rate matching and has the order 1, 2, 3, ..., Nc. From Table 6, it can be seen that the parameters including the input symbol number Nc, the output symbol number Ni, and the repetition pattern determination parameters 'a' and 'b' can be changed. For example, the parameters may be changed as shown in Table 4. The input symbol number Nc may be determined according to the coding rate R as a value other than Ncs / 3. 11 corresponds to the case where the algorithm of Table 6 is applied to the downlink of a digital transmission system, ie, S (k) = 0.

[Tabelle 6]

Figure 00340001
[Table 6]
Figure 00340001

Wenn der Algorithmus von Tabelle 6 benutzt wird, werden die folgenden Vorteile bereitgestellt.If The algorithm used by Table 6 will be the following Benefits provided.

Erstens, es ist möglich, die codierten Symbole (oder Codewortsymbole) der Rahmeneinheit variabel zu wiederholen.First, it is possible, the coded symbols (or codeword symbols) of the frame unit are variable to repeat.

Zweitens, es ist möglich, verschiedene Wiederholungsschemas durch Justieren der Parameter Nc, Ni, a und b zu erzeugen.Secondly, it is possible, different repeat schemes by adjusting the parameters Nc, Ni, a and b to produce.

Drittens, es ist möglich, die Komplexität und Rechenzeit jedes Ratenanpassungsblocks um 1/R zu reduzieren. Dies liegt daran, dass, wenn eine Mehrzahl von Ratenanpassungsblöcken benutzt werden, die Zahl der durch jeden Ratenanpassungsblock zu wiederholenden Symbole verglichen mit dem Fall reduziert wird, wo ein Ratenanpassungsblock verwendet wird. Zum Beispiel kann die Zahl von Symbolen, die durch jeden Ratenanpassungsblock wiederholt werden kann, verglichen mit dem Fall, wo ein Ratenanpassungsblock verwendet wird, um die Codierungsrate R verringert werden.Third, it is possible, the complexity and calculating time of each rate matching block by 1 / R. This is because when using a plurality of rate matching blocks will be the number of repeats to be repeated by each rate matching block Symbols are reduced compared to the case where a rate matching block is used. For example, the number of symbols passing through each rate matching block can be repeated compared to In the case where a rate matching block is used, the coding rate R be reduced.

Gemäß 11 werden in Schritt 1101 alle Arten von Parametern, einschließlich der Eingangssymbolzahl Nc, der Ausgangssymbolzahl Ni und der Wiederholungsschema-Bestimmungsparameter 'a' und 'b', für den Ratenanpassungsprozess initialisiert. Wenn Nc und Ni durch Parameterinitialisierung bestimmt werden, wird in Schritt 1102 die Zahl zu wiederholender Symbole durch y = Ni – Nc bestimmt. In Schritt 1103 wird ein Anfangsfehlerwert 'e' zwischen den momentanen und gewünschten Wiederholungsverhältnissen errechnet. Der Anfangsfehlerwert wird durch e = b·Nc mod a·Nc bestimmt.According to 11 be in step 1101 all kinds of parameters including the input symbol number Nc, the output symbol number Ni, and the repetition pattern determination parameters 'a' and 'b', for initializes the rate matching process. When Nc and Ni are determined by parameter initialization, in step 1102 the number of symbols to be repeated is determined by y = Ni - Nc. In step 1103 an initial error value 'e' is calculated between the current and desired repetition ratios. The initial error value is determined by e = b * Nc mod a * Nc.

Als Nächstes wird in Schritt 1104 'm', der die Reihenfolge der Eingangssymbole angibt, auf '1' (m = 1) gesetzt. Danach werden in den Schritten 1105 bis 1109 die Symbole vom Anfangssymbol an dahingehend untersucht, ob sie zu wiederholen sind oder nicht. Wenn in Schritt 1107 festgestellt wird, dass der berechnete Fehlerwert 'e' kleiner oder gleich '0' ist, wird das entsprechende Symbol wiederholt, und in Schritt 1108 wird dann der Fehlerwert durch e = e + a·Nc aktualisiert. Andernfalls wird, wenn in Schritt 1107 festgestellt wird, dass der berechnete Fehlerwerte 'e' größer als '0' ist, keine Wiederholung durchgeführt. Der Vorgang des Empfangens der codierten Symbole in Reihenfolge, des Bestimmens, ob die empfangenen Symbole zu wiederholen sind, und des entsprechenden Durchführens der Wiederholung wird wiederholend ausgeführt, bis in Schritt 1105 festgestellt wird, dass alle Symbole in einem Rahmen vollständig empfangen wurden. Während des Wiederholungsprozesses wird in Schritt 1106 der Fehlerwert durch e = e – a·y aktualisiert.Next will be in step 1104 'm', which indicates the order of the input symbols, is set to '1' (m = 1). After that, in the steps 1105 to 1109 examines the symbols from the beginning symbol to see whether they are to be repeated or not. When in step 1107 it is determined that the calculated error value 'e' is less than or equal to '0', the corresponding symbol is repeated, and in step 1108 then the error value is updated by e = e + a * Nc. Otherwise, if in step 1107 it is determined that the calculated error value 'e' is greater than '0', no repetition is performed. The process of receiving the coded symbols in order, determining whether to repeat the received symbols, and respectively performing the repetition is performed repeatedly until in step 1105 It is determined that all symbols in a frame have been completely received. During the repetition process will be in step 1106 the error value is updated by e = e - a · y.

Wie oben beschrieben, kann das erfindungsgemäße Datenübertragungssystem die Ratenanpassung sowohl auf mit einem nicht systematischen Code kanalcodierten Symbolen als auch auf mit einem systematischen Code kanalcodierten Symbolen mittels einer einzelnen Struktur durchführen. Das Datenübertragungssystem, das sowohl nicht systematische als auch systematische Codes unterstützt, kann deshalb mit einem nicht systematischen Code kanalcodierte Symbole oder mit einem systematischen Code kanalcodierte Symbole selektiv in der Rate anpassen, wodurch die Effizienz der Datenübertragung gesteigert und die Systemleistung verbessert wird.As described above, the data transmission system according to the invention, the rate adaptation both on channel-coded symbols with a non-systematic code as well as channel-coded symbols with a systematic code by means of a single structure. The data transmission system, which supports both non-systematic and systematic codes Therefore, with a non-systematic code channel coded symbols or channel coded symbols selectively with a systematic code in the rate adjust, reducing the efficiency of data transmission increased and the system performance is improved.

Die vorliegende Erfindung hat die folgenden Vorteile.The The present invention has the following advantages.

Erstens, es ist möglich, durch Einstellen der Parameter der Ratenanpassungsblöcke die Punktierungs/Wiederholungs-Schemas frei festzulegen, und alle Voraussetzungen, die bei der Ratenanpassung der turbocodierten Symbole berücksichtigt werden sollten, können durch einfaches Einstellen der Parameter erfüllt werden.First, it is possible, by adjusting the parameters of the rate matching blocks Free punctuation / repetition schemes, and all prerequisites taken into account in the rate matching of the turbo-coded symbols should be able to can be met by simply setting the parameters.

Zweitens, es ist möglich, alle Ratenanpassungsblöcke gemäß der Codierungsrate R unter Verwendung desselben Algorithmus zu implementieren, und die Ratenanpassungsblöcke besitzen eine einfache Struktur.Secondly, it is possible, all rate adjustment blocks according to the coding rate R using the same algorithm, and the rate adjustment blocks have a simple structure.

Drittens, ein System, das sowohl Konvolutional-Codes als auch Turbocodes verwendet, kann sowohl Konvolutional-Codes als auch Turbocodes durch einfaches Einstellen verschiedener Anfangsparameter unterstützen, indem eine einzelne Ratenanpassungsvorrichtung anstelle verschiedener Ratenanpassungsvorrichtungen verwendet wird.Third, a system that uses both convolutional codes and turbo codes, can convolutional codes as well as turbo codes by simple Support setting various initial parameters by a single rate matching device instead of different ones Rate matching devices is used.

Viertens, es ist nicht erforderlich, die Ratenanpassungsblöcke gemäß einem Konvolutional-Code oder einem Turbocode unterschiedlich zu implementieren.Fourth, it is not necessary to change the rate matching blocks according to a convolutional code or a turbo code to implement differently.

Fünftens, durch Festlegen der Zahl von Eingangssymbolen auf einen Wert, der durch Addieren der Zahl ihrer Schwanzbits bestimmt wird, so dass die Schwanzbits wiederholt werden, ist die neuartige Ratenanpassungsvorrichtung nützlich, wenn ein SOVA-Decoder benutzt wird oder wenn die Leistung infolge des Nichtwiederholens der Schwanzbits verschlechtert werden würde. Durch Festlegen der Zahl von Eingangssymbolen auf einen Wert, der durch Addieren der Zahl der Schwanzbits zu der Zahl von Nicht-Schwanzbits bestimmt wird, so dass die Schwanzbits wiederholt werden, ist die neuartige Raten anpassungsvorrichtung nützlich, wenn ein SOVA-Decoder benutzt wird oder wenn die Leistung infolge des Nichtwiederholens der Schwanzbits verschlechtert werden würde. Durch Festlegen der Zahl von Eingangssymbolen auf einen Wert, der durch Addieren der Zahl ihrer Schwanzbits bestimmt wird, so dass die Schwanzbits wiederholt werden, ist die neuartige Ratenanpassungsvorrichtung nützlich, wenn ein SOVA-Decoder benutzt wird oder wenn die Leistung infolge des Nichtwiederholens der Schwanzbits verschlechtert werden würde.Fifth, by setting the number of input symbols to a value that is determined by adding the number of its tail bits, so that the tail bits are repeated is the novel rate matching device useful, if a SOVA decoder is used or if the performance is due not repeating the tail bits would be degraded. By Set the number of input symbols to a value determined by Adding the number of tail bits to the number of non-tail bits is determined so that the tail bits are repeated is the novel rate adjustment device useful when using a SOVA decoder is used or if the performance as a result of not repeating the tail bits would be degraded. By setting the number of input symbols to a value by adding the number their tail bits is determined so that the tail bits are repeated the novel rate matching device is useful, if a SOVA decoder is used or if the performance is due to the Not repeating the tail bits would be worsened.

Sechstens, durch Setzen des Punktierungsschema-Bestimmungsparameters 'b' auf '1' und Setzen des Parameters 'a' auf einen Wert innerhalb eines spezifischen Bereichs, kann verhindert werden, dass das erste Symbol in einem Rahmen punktiert wird. Des Weiteren ist es möglich, das erste Symbol in einem Rahmen zu wiederholen, indem der Wiederholungsschema-Bestimmungsparameter 'b' auf '1' gesetzt wird und der Parameter 'a' auf einen Wert innerhalb eines spezifischen Bereichs gesetzt wird.Sixth, by setting the punctuation pattern determining parameter 'b' to '1' and Set the parameter 'a' to a value within a specific area, can be prevented that the first Symbol is dotted in a frame. Furthermore, it is possible that repeat the first symbol in a frame by setting the repetition pattern determination parameter 'b' to '1' and the parameter 'a' to a value within a specific area is set.

Claims (57)

Ratenanpassungsvorrichtung in einem Datenübertragungssystem, gekennzeichnet durch: einen Kanalcodierer, der codierte Bits erzeugt; eine Steuereinheit, die feststellt, ob ein Kanalcodierschema, das zum Erzeugen der codierten Bits verwendet wird, ein systematischer Code oder ein nicht systematischer Code ist; einen Multiplexer, der die codierten Bits multiplext, wobei, wenn ein systematischer Code verwendet wird, der Multiplexer die codierten Bits in einen systematischen Strom und wenigstens einen Paritätsstrom teilt, und wenn ein nicht systematischer Strom verwendet wird, der Multiplexer einen codierten Strom ausgibt; und Ratenanpassungsfunktionen, die einen Teil der codierten Bits punktieren, wobei, wenn systematischer Code verwendet wird, wenigstens eine Ratenanpassungsfunktion, die einer Anzahl von Paritätsströmen entspricht, jeweils entsprechende Paritätsströme empfängt und einen Teil entsprechender Paritätsströme punktiert, und der systematische Strom umgangen wird, wenn nicht systematischer Code verwendet wird, eine Ratenanpassungsfunktion einen Teil der codierten Bits punktiert, und jede der Ratenanpassungsfunktionen die codierten Bits mit Ratenanpassungsparametern punktiert, die gemäß jeder der Ratenanpassungsfunktionen individuell bestimmt werden.Rate adaptation device in a data transmission system, marked by: a channel coder, the coded bits generated; a control unit which determines whether a channel coding scheme, which is used to generate the coded bits, a systematic one Code or non-systematic code; a multiplexer, which multiplexes the coded bits, and if more systematic Code is used, the multiplexer encoded the bits into one divides systematic stream and at least one parity stream, and if one non-systematic power is used, the multiplexer one outputs coded current; and Rate matching functions that puncturing a portion of the coded bits, being, if more systematic Code is used, at least one rate matching function, the corresponds to a number of parity streams, each corresponding parity streams receives and dotted a part of corresponding parity streams, and the systematic stream is bypassed, if not more systematic Code is used, a rate matching function forms part of the dotted coded bits, and each of the rate matching functions the coded bits punctuate with rate matching parameters that according to everyone the rate matching functions are determined individually. Vorrichtung nach Anspruch 1, wobei, wenn systematischer Code verwendet wird, jeder Paritätsstrom gemäß Ratenanpassungsparametern punktiert wird, die jedem Paritätsstrom entsprechen.The device of claim 1, wherein, if more systematic Code is used, every parity stream according to rate adjustment parameters dotted, which is every parity stream correspond. Vorrichtung nach Anspruch 1, wobei die Ratenanpassungsparameter für jede Ratenanpassungsfunktion gemäß einem ersten Parameter, der eine Position eines als erstes in einem Rahmen zu punktierenden Bits bestimmt, und einem zweiten Parameter bestimmt werden, der eine Periode der in einem Rahmen zu punktierenden Bits bestimmt.The device of claim 1, wherein the rate matching parameters for every Rate matching function according to a first parameter, which is a position of a first in a frame determined to puncturing bits, and a second parameter determined be a period of bits to be punctured in a frame certainly. Vorrichtung nach Anspruch 1, wobei die Anzahlen punktierter Bits in jeder der Ratenanpassungsfunktionen einander gleich sind.The device of claim 1, wherein the numbers are dotted Bits in each of the rate matching functions are equal to each other. Vorrichtung nach Anspruch 1, wobei die Anzahlen punktierter Bits in jeder der Ratenanpassungsfunktionen verschieden voneinander sind.The device of claim 1, wherein the numbers are dotted Bits in each of the rate matching functions are different from each other are. Vorrichtung nach Anspruch 1, wobei jede Ratenanpassungsfunktion (a) eine Anzahl "y" der zu punktierenden Symbole durch Empfangen einer Anzahl Nc eingegebener Symbole und einer Anzahl Ni ausgegebener Symbole bestimmt; (b) einen anfänglichen Fehlerwert "e" berechnet, der einen Differenzwert zwischen einem gegenwärtigen Punktierungsverhältnis und einem gewünschten Punktierungsverhältnis anzeigt; (c) den Fehlerwert für jedes der eingegebenen Bits aktualisiert; (d) das entsprechende eingegebene Bit punktiert, wenn der Fehlerwert kleiner oder gleich "0" ist; und (e) wiederholt die Vorgänge in (c) und (d) durchführt, bis die Anzahl gezählter Bits größer als "Nc" ist.The device of claim 1, wherein each rate matching function (A) a number "y" of the one to be punctured Symbols by receiving a number Nc of input symbols and a number Ni of output symbols is determined; (b) an initial one Error value "e" calculated, the one Difference value between a current puncturing ratio and a desired one Punktierungsverhältnis displays; (c) the error value for each of the input bits updated; (d) puncturing the corresponding input bit, if the error value is less than or equal to "0"; and (e) repeats the operations in (c) and (d), until the number of counted Bits is greater than "Nc". Vorrichtung nach Anspruch 6, wobei der anfängliche Fehlerwert "e" mittels einer Formel [{(2 × S(k) × y) + (b × Nc)} mod {a × Nc}] berechnet wird und jede der Ratenanpassungsfunktionen einen Satz der codierten Bits empfängt.Apparatus according to claim 6, wherein the initial one Error value "e" by means of a formula [{(2 × S (k) × y) + (b × Nc)} mod {a × Nc}] is calculated and each of the rate matching functions one sentence of the coded bits. Vorrichtung nach Anspruch 7, wobei S(k) einen Verschiebeparameter angibt, der im Downlink zu "0" gesetzt ist, "a" einen Parameter angibt, der eine Position eines als erstes in einem Rahmen zu punktierenden Bits bestimmt, und "b" einen Parameter angibt, der eine Periode von in einem Bitstrom zu punktierenden Bits bestimmt.Apparatus according to claim 7, wherein S (k) is a displacement parameter indicates that in the downlink is set to "0", "a" indicates a parameter that contains a position of a bit to be punctured first in a frame, and "b" a parameter indicating a period of puncturing in a bitstream Bits determined. Ratenanpassungsvorrichtung in einem Datenübertragungssystem, gekennzeichnet durch: einen Kanalcodierer, der codierte Bits erzeugt; eine Steuereinheit, die feststellt, ob ein Ratenanpassungsschema ein Wiederholungs- oder Punktierungsschema ist; einen Multiplexer, der die codierten Bits multiplext, wobei, wenn Punktieren eingesetzt wird, der Multiplexer die codierten Bits in einen systematischen Strom und wenigstens einen Paritätsstrom teilt, und wenn Wiederholung eingesetzt wird, der Multiplexer einen codierten Strom ausgibt; und Ratenanpassungsfunktionen, die einen Teil der codierten Bits punktieren, wobei, wenn Punktieren durchgeführt wird, wenigstens eine Ratenanpassungsfunktion, die einer Anzahl von Paritätsströmen entspricht, jeweils entsprechende Paritätsströme empfängt und einen Teil entsprechender Paritätsströme punktiert, und der systematische Strom umgangen wird, wenn Wiederholung durchgeführt wird, eine Ratenanpassungsfunktion einen Teil der codierten Bits wiederholt, und jede der Ratenanpassungsfunktionen die codierten Bits mit Ratenanpassungsparametern punktiert, die gemäß jeder der Ratenanpassungsfunktionen individuell bestimmt werden.Rate matching apparatus in a data transmission system, characterized by: a channel encoder that generates coded bits; a controller that determines if a rate matching scheme is a repeat or punctuation scheme; a multiplexer that multiplexes the coded bits, wherein when puncturing is used, the multiplexer divides the coded bits into a systematic stream and at least one parity stream, and when repetition is used, the multiplexer outputs a coded stream; and rate matching functions that puncture a portion of the coded bits, wherein when puncturing is performed, at least one rate matching function corresponding to a number of parity streams each receives respective parity streams and a portion of corresponding Pa and the systematic stream is bypassed when repetition is performed, a rate matching function repeats a portion of the coded bits, and each of the rate matching functions punctures the coded bits with rate matching parameters individually determined according to each of the rate matching functions. Vorrichtung nach Anspruch 9, wobei, wenn Punktieren durchgeführt wird, jeder Paritätsstrom gemäß Ratenanpassungsparametern punktiert wird, die jedem Paritätsstrom entsprechen.The device of claim 9, wherein when puncturing carried out is, every parity stream according to rate adjustment parameters dotted, which is every parity stream correspond. Vorrichtung nach Anspruch 9, wobei die Ratenanpassungsparameter für jede Ratenanpassungsfunktion gemäß einem ersten Parameter, der eine Position eines als erstes in einem Rahmen zu punktierenden Bits bestimmt, und einem zweiten Parameter bestimmt werden, der eine Periode der in einem Rahmen zu punktierenden Bits bestimmt.Apparatus according to claim 9, wherein the rate matching parameters for every Rate matching function according to a first parameter, which is a position of a first in a frame determined to puncturing bits, and a second parameter determined be a period of bits to be punctured in a frame certainly. Vorrichtung nach Anspruch 9, wobei die Anzahlen punktierter Bits in jeder der Ratenanpassungsfunktionen einander gleich sind.Apparatus according to claim 9, wherein the numbers punctured bits in each of the rate matching functions are the same. Vorrichtung nach Anspruch 9, wobei die Anzahlen punktierter Bits in jeder der Ratenanpassungsfunktionen verschieden voneinander sind.Apparatus according to claim 9, wherein the numbers dotted bits in each of the rate matching functions from each other. Vorrichtung nach Anspruch 9, wobei jede Ratenanpassungsfunktion (a) eine Anzahl "y" der zu punktierenden Symbole durch Empfangen einer Anzahl Nc eingegebener Symbole und einer Anzahl Ni ausgegebener Symbole bestimmt; (b) einen anfänglichen Fehlerwert "e" berechnet, der einen Differenzwert zwischen einem gegenwärtigen Punktierungsverhältnis und einem gewünschten Punktierungsverhältnis anzeigt; (c) den Fehlerwert für jedes der eingegebenen Bits aktualisiert; (d) das entsprechende eingegebene Bit punktiert, wenn der Fehlerwert kleiner oder gleich "0" ist; und (e) die Vorgänge in (c) und (d) wiederholt durchführt, bis die Anzahl gezählter Bits größer als "Nc" ist.Apparatus according to claim 9, wherein each rate matching function (a) a number "y" of the points to be punctured Symbols by receiving a number Nc of input symbols and a number Ni of output symbols is determined; (b) an initial one Error value "e" calculated, the one Difference value between a current puncturing ratio and a desired one Punktierungsverhältnis displays; (c) the error value for each of the input bits is updated; (d) the corresponding input bit punctured if the error value is less than or equal to "0"; and (e) the operations in (c) and (d) repeatedly performs until the number of counted Bits is greater than "Nc". Vorrichtung nach Anspruch 14, wobei der anfängliche Fehlerwert "e", der einen Differenzwert zwischen einem gegenwärtigen Punktierungsverhältnis und einem gewünschten Punktierungsverhältnis anzeigt, mittels einer Formel [{(2 × S(k) × y) + (b × Nc)} mod {a × Nc}] berechnet wird, und jede der Ratenanpassungsfunktionen einen Satz der codierten Bits empfängt.The device of claim 14, wherein the initial one Error value "e", which is a difference value between a current one Punktierungsverhältnis and a desired one Punktierungsverhältnis is calculated by a formula [{(2 × S (k) × y) + (b × Nc)} mod {a × Nc}] and each of the rate matching functions encodes a set of the coded ones Receives bits. Vorrichtung nach Anspruch 15, wobei S(k) einen Verschiebeparameter angibt, der im Downlink zu "0" gesetzt ist, "a" einen Parameter angibt, der eine Position eines als erstes in einem Rahmen zu punktierenden Bits bestimmt, und "b" einen Parameter angibt, der eine Periode der in einem Bitstrom zu punktierenden Bits bestimmt.Apparatus according to claim 15, wherein S (k) is a displacement parameter indicates that in the downlink is set to "0", "a" indicates a parameter that contains a position of a bit to be punctured first in a frame, and "b" a parameter indicating a period of the bitstreams to be punctured Bits determined. Datenübertragungssystem mit einem Kanalcodierer, der eingegebene Informationsbits mit vorbestimmter Codierungsrate codiert und einen codierten Bitstrom für die eingegebenen Informationsbits ausgibt, um codierte Bits der eingegebenen Informationsbits zu erzeugen, und einer Ratenanpassungsfunktion, die Ratenanpassung einer Anzahl von Bits aus den codierten Bits durchführt, um eine Anzahl von Bits, die von der Ratenanpassungsfunktion ausgegeben werden, an eine gegebene Bitanzahl des Sendekanals anzupassen: einen Multiplexer, der codierte Bits multiplext und gemultiplexte Bits ausgibt; eine Ratenanpassungsfunktion, die Ratenanpassung einer vorbestimmten Anzahl der gemultiplexten Bits gemäß Ratenanpassungs-Parametern durchführt; und einen Speicher, der Ratenanpassungs-Parameter speichert, die gemäß einem Typ des Bitstroms bestimmt werden, wobei die Ratenanpassungsfunktion die Ratenanpassungs-Parameter sequenziell empfängt und Ratenanpassung der multiplexierten Bits gemäß den empfangenen Ratenanpassungs-Parametern durchführt.Data transfer system with a channel coder, the input information bits with predetermined Coding rate encoded and a coded bitstream for the entered Outputs information bits to coded bits of the input information bits and a rate matching function, rate matching a number of bits from the coded bits to a number of bits output from the rate matching function be adapted to a given bit number of the transmission channel: one Multiplexer that multiplexes coded bits and multiplexes bits outputs; a rate matching function, the rate adaptation of a predetermined number of the multiplexed bits according to rate matching parameters performs; and a memory that stores rate matching parameters, which according to one Type of bitstream to be determined where the rate matching function The Rate Matching parameter receives sequentially and rate adaptation multiplexed bits according to the received ones Rate matching parameters. System nach Anspruch 17, wobei, wenn bei der Ratenanpassungsfunktion die Anzahl eingegebener Bits größer ist als die Anzahl ausgegebener Bits, die Ratenanpassungsfunktion die vorbestimmte Anzahl der multiplexierten Bits gemäß entsprechenden Ratenanpassungs-Parametern punktiert.The system of claim 17, wherein, when in the rate matching function the number of bits entered is greater as the number of bits output, the rate matching function the predetermined number of the multiplexed bits according to respective rate matching parameters punctured. System nach Anspruch 17, wobei, wenn bei der Ratenanpassungsfunktion die Anzahl ausgegebener Bits größer ist als die Anzahl angegebener Bits die Ratenanpassungsfunktion die vorbestimmte Anzahl multiplexierter Bits gemäß entsprechender Ratenanpassungs-Parameter wiederholt.The system of claim 17, wherein, when in the rate matching function the number of bits output is greater as the number of bits indicated, the rate matching function predetermined number of multiplexed bits according to corresponding rate matching parameters repeated. System nach Anspruch 17, wobei, wenn der Kanalcodierer ein Turbocodierer ist, die Ratenanpassungsfunktion Ratenanpassung der multiplexierten Bits mit Ratenanpassungs-Parametern durchführt, die dem Typ des Bitstroms entsprechen, und es sich bei dem Bitstrom um einen systematischen Bitstrom oder Paritäts-Bitströme handelt.The system of claim 17, wherein, if the channel encoder is a turbo encoder, the rate adapt performs rate matching of the multiplexed bits with rate matching parameters corresponding to the type of bitstream, and the bitstream is a systematic bitstream or parity bitstreams. System nach Anspruch 17, wobei, wenn der Kanalcodierer ein Konvolutional-Codierer ist, die Ratenanpassungsfunktion Ratenanpassung der multiplexierten Bits mit den gleichen Ratenanpassungs-Parametern durchführt.The system of claim 17, wherein when the channel coder a convolutional encoder is the rate matching function of the multiplexed rate adaptation Performs bits with the same rate matching parameters. System nach Anspruch 17, wobei die Ratenanpassungs-Parameter die Anzahl eingegebener multiplexierter Bits und die Anzahl ausgegebener Bits von der Ratenanpassungsfunktion einschließen.The system of claim 17, wherein the rate matching parameters the number of input multiplexed bits and the number of outputs Include bits from the rate matching function. System nach Anspruch 17, wobei die Parameter des Weiteren einen Positions-Parameter, der eine Position eines eingegebenen multiplexierten Bits bestimmt, das als erstes von den multiplexierten Bits Ratenanpassung zu unterziehen ist, und einen Periodenparameter enthalten, der eine Periode der von den multiplexierten Bits Ratenanpassung zu unterziehenden eingegebenen multiplexierten Bits bestimmt.The system of claim 17, wherein the parameters of Another position parameter, determining a position of an input multiplexed bit, The first thing to do is rate matching of the multiplexed bits is, and a period parameter containing a period of entered by the multiplexed bits rate adaptation to be subjected determined by multiplexed bits. System nach Anspruch 17, wobei die Anzahl von Bits, die Ratenanpassung zu unterziehen sind, auf der Anzahl der eingegebenen multiplexierten Bits und der Anzahl der ausgegebenen Bits basiert.The system of claim 17, wherein the number of bits the rate adjustment are to be subjected to the number of entered multiplexed bits and the number of bits output. Datenübertragungssystem zur Ratenanpassung von Turbocodes, das umfasst: einen Turbocodierer (220), der eingegebene Informationsbits mit einer vorbestimmten Codierungsrate codiert und einen systematischen Bitstrom, einen ersten Paritäts-Bitstrom und einen zweiten Paritäts-Bitstrom für die eingegebenen Informationsbits ausgibt, um codierte Bits der Eingangs-Bitströme zu erzeugen; und eine Ratenanpassungseinrichtung, die eine Anzahl von Bits aus den codierten Bits punktiert, dadurch gekennzeichnet, dass die Ratenanpassungseinrichtung umfasst: eine erste Ratenanpassungseinrichtung (231), die den ersten Paritäts-Bitstrom empfängt und eine vorbestimmte Anzahl erster Paritäts-Bits in dem ersten Paritäts-Bitstrom punktiert; und eine zweite Ratenanpassungseinrichtung (232), die eine vorbestimmte Anzahl zweiter Paritäts-Bits in dem zweiten Paritäts-Bitstrom punktiert; wobei jede der Ratenanpassungseinrichtungen (231, 232) eine vorgegebene Anzahl von Paritäts-Bits in einem entsprechenden Paritäts-Bitstrom mit einem entsprechenden Punktierschema punktiert, und das Punktierschema jeder der Ratenanpassungseinrichtungen jeweils gemäß den Punktierschema-Parametern gesteuert werden kann.Data transmission system for rate adaptation of turbo codes, comprising: a turbo encoder ( 220 ) encoding input information bits at a predetermined coding rate and outputting a systematic bitstream, a first parity bitstream and a second parity bitstream for the input information bits to produce coded bits of the input bitstreams; and a rate matching device that punctures a number of bits from the coded bits, characterized in that the rate matching device comprises: a first rate matching device ( 231 ) receiving the first parity bitstream and puncturing a predetermined number of first parity bits in the first parity bitstream; and a second rate matching device ( 232 ) puncturing a predetermined number of second parity bits in the second parity bit stream; wherein each of the rate matching devices ( 231 . 232 ) punctures a predetermined number of parity bits in a corresponding parity bit stream with a corresponding puncturing scheme, and the puncturing scheme of each of the rate matching means can be controlled according to the puncturing scheme parameters, respectively. Datenüberragungssystem nach Anspruch 25, wobei das System des Weiteren einen Multiplexer enthält, der den systematischen Bitstrom und die ratenangepassten Paritäts-Bitströme sammelt.Datenüberragungssystem according to claim 25, wherein the system further comprises a multiplexer contains which collects the systematic bitstream and the rate-matched parity bitstreams. Datenübertragungssystem nach Anspruch 25, wobei Punktier-Bestimmungs-Parameter ein erster Parameter (a), der eine Position eines als erstes in einem Rahmen zu punktierenden Bits bestimmt, und ein zweiter Parameter (b) sind, der eine Periode der in einem Rahmen zu punktierenden Bits bestimmt.Data transfer system according to claim 25, wherein puncturing determining parameters comprise a first parameter (a), a position of one to be punctured first in a frame Bits, and a second parameter (b) is one period determines the bits to be punctured in a frame. Datenübertragungssystem nach Anspruch 27, wobei jede der Ratenanpassungseinrichtungen (231, 232) eine vorgegebene Anzahl von Paritäts-Bits in einem jeweiligen Paritäts-Bitstrom gemäß dem entsprechenden Punktierschema und die jeweilige Anzahl von Bits punktiert, die von den Ratenanpassungseinrichtungen (231, 232) ausgegeben werden.A data transmission system according to claim 27, wherein each of the rate matching devices ( 231 . 232 ) punctures a predetermined number of parity bits in a respective parity bit stream in accordance with the corresponding puncturing scheme and the respective number of bits supplied by the rate matching means (12). 231 . 232 ). Datenübertragungssystem nach Anspruch 27, wobei die jeweiligen Anzahlen von Bits, die von den Ratenanpassungseinrichtungen (231, 232) ausgegeben werden, einander gleich sind.A data transmission system according to claim 27, wherein the respective numbers of bits supplied by said rate matching means ( 231 . 232 ) are equal to each other. Datenübertragungssystem nach Anspruch 27, wobei die jeweiligen Anzahlen von Bits, die von den Ratenanpassungseinrichtungen (231, 232) ausgegeben werden, verschieden voneinander sind.A data transmission system according to claim 27, wherein the respective numbers of bits supplied by said rate matching means ( 231 . 232 ) are different from each other. Datenübertragungssystem nach Anspruch 27, wobei die Anzahl von Bits, die von wenigstens einer Ratenanpassungseinrichtung (231, 232) ausgegeben werden, verschieden von der Anzahl von Bits ist, die von wenigstens einer anderen Ratenanpassungseinrichtung (231, 232) ausgegeben werden.Data transmission system according to claim 27, wherein the number of bits transmitted by at least one rate matching device ( 231 . 232 ) is different from the number of bits used by at least one other rate matching device ( 231 . 232 ). Datenübertragungssystem nach Anspruch 27, wobei jede der Ratenanpassungseinrichtungen (231, 232) die gleichen entsprechenden Punktierschema-Parameter hat.A data transmission system according to claim 27, wherein each of the rate matching devices ( 231 . 232 ) has the same corresponding punctuation scheme parameters. Datenübertragungssystem nach Anspruch 27, wobei jede der Ratenanpassungseinrichtungen (231, 232) entsprechende Punktierschema-Parameter hat und die ersten Parameter jedes der entsprechenden Punktierschema-Parameter einander gleich sind.A data transmission system according to claim 27, wherein each of the rate matching devices ( 231 . 232 ) has corresponding punctuation scheme parameters and the first parameters of each of the corresponding punctuation scheme parameters are equal to each other. Datenübertragungssystem nach Anspruch 27, wobei jede der Ratenanpassungseinrichtungen (231, 232) entsprechende Punktierschema-Parameter hat und die ersten Parameter jedes der entsprechenden Punktierschema-Parameter verschieden voneinander sind.A data transmission system according to claim 27, wherein each of the rate matching devices ( 231 . 232 ) has corresponding punctuation scheme parameters and the first parameters of each of the corresponding punctuation scheme parameters are different from each other. Datenübertragungssystem nach Anspruch 27, wobei jede der Ratenanpassungseinrichtungen (231, 232) entsprechende Punktierschema-Parameter hat und die zweiten Parameter jedes der entsprechenden Punktierschema-Parameter einander gleich sind.A data transmission system according to claim 27, wherein each of the rate matching devices ( 231 . 232 ) has corresponding punctuation scheme parameters and the second parameters of each of the corresponding punctuation scheme parameters are equal to each other. Datenübertragungssystem nach Anspruch 27, wobei jede der Ratenanpassungseinrichtungen (231, 232) entsprechende Punktierschema-Parameter hat und die zweiten Parameter jedes der entsprechenden Punktierschema-Parameter verschieden voneinander sind.A data transmission system according to claim 27, wherein each of the rate matching devices ( 231 . 232 ) has corresponding punctuation scheme parameters and the second parameters of each of the corresponding punctuation scheme parameters are different from each other. Datenübertragungssystem nach Anspruch 25, wobei die Punktierschemata der Ratenanpassungseinrichtungen (231, 232) einander gleich sind.Data transmission system according to claim 25, wherein the punctuation schemes of the rate matching devices ( 231 . 232 ) are equal to each other. Datenübertragungssystem nach Anspruch 25, wobei die Punktierschemata der Ratenanpassungseinrichtungen (231, 232) verschieden voneinander sind.Data transmission system according to claim 25, wherein the punctuation schemes of the rate matching devices ( 231 . 232 ) are different from each other. Datenübertragungssystem nach Anspruch 25, wobei jede der Ratenanpassungseinrichtungen (a) eine Anzahl „y" der zu punktierenden Symbole durch Empfangen einer Anzahl Nc eingegebener Symbole und einer Anzahl Ni ausgegebener Symbole bestimmt; (b) einen anfänglichen Fehlerwert „e" berechnet, der einen Differenzwert zwischen einem gegenwärtigen Punktierverhältnis und einem gewünschten Punktierverhältnis anzeigt; (c) den Fehlerwert für jedes der eingegebenen Bits aktualisiert; (d) das entsprechende eingegebene Bit punktiert, wenn der Fehlerwert kleiner oder gleich „0" ist; und (e) die Vorgänge in (c) und (d) wiederholt durchführt, bis die Anzahl gezählter Bits größer als „Nc" ist.Data transfer system according to claim 25, wherein each of said rate adjusting means (A) a number "y" of the one to be punctured Symbols by receiving a number Nc of input symbols and a number Ni of output symbols is determined; (b) an initial one Error value "e" calculated, the one Difference value between a current puncturing ratio and a desired one Puncturing ratio displays; (c) the error value for each of the input bits updated; (d) puncturing the corresponding input bit, if the error value is less than or equal to "0", and (e) the processes in (c) and (d) repeatedly performs until the number of counted Bits is greater than "Nc". Datenübertragungssystem nach Anspruch 39, wobei der anfängliche Fehlerwert „e" mittels einer Formel [{(2 × S(k) × y ) + (b × Nc)} mod {a × Nc}] berechnet wird und jede der Ratenanpassungseinrichtungen einen Satz der codierten Bits empfängt.Data transfer system according to claim 39, wherein the initial one Error value "e" by means of a formula [{(2 × S (k) × y) + (b × Nc)} mod {a × Nc}] is calculated and each of the rate matching means one sentence of the coded bits. Datenübertragungssystem nach Anspruch 40, wobei S(k) einen Verschiebe-Parameter angibt, der im Downlink zu „0" gesetzt ist, „a" einen Parameter angibt, der einer Position eines als erstes in einem Rahmen zu punktierenden Bits bestimmt, und „b" einen Parameter angibt, der eine Periode der in einem Bitstrom zu punktieren Bits bestimmt.Data transfer system according to claim 40, wherein S (k) indicates a shift parameter set to "0" in the downlink, "a" a parameter indicating a position of one to be punctured first in a frame Bits and "b" determines a parameter indicates that a period of bits to be punctured in a bitstream certainly. Datenübertragungssystem zur Ratenanpassung von Turbocodes, das umfasst: einen Turbocodierer (220), der eingegebene Informationsbits mit einer vorbestimmten Codierungsrate codiert und einen systematischen Bitstrom, einen ersten Paritäts-Bitstrom und einen zweiten Paritäts-Bitstrom für die eingegebenen Informati onsbits ausgibt, um codierte Bits der eingegebenen Informationsbits zu erzeugen; und eine Ratenanpassungseinrichtung zur Ratenanpassung einer Anzahl von Bits aus den codierten Bits, dadurch gekennzeichnet, dass die Ratenanpassungseinrichtung umfasst: eine erste Ratenanpassungseinrichtung (231), die den systematischen Bitstrom empfängt und eine vorbestimmte Anzahl systematischer Bits in dem systematischen Bitstrom wiederholt, eine zweite Ratenanpassungseinrichtung (232), die den ersten Paritäts-Bitstrom empfängt und eine vorbestimmte Anzahl erster Paritäts-Bits in dem ersten Paritäts-Bitstrom wiederholt, und eine dritte Ratenanpassungseinrichtung (233), die eine vorbestimmte Anzahl zweiter Paritäts-Bits in dem zweiten Paritäts-Bitstrom wiederholt; wobei wenigstens eine der Ratenanpassungseinrichtungen (231, 232, 233) so eingerichtet ist, dass sie jeweilige systematische oder Paritäts-Bits gemäß einem entsprechenden Wiederholungsschema wiederholt, und das Wiederholungsschema jeder der Ratenanpassungseinrichtungen jeweils gemäß den Wiederholungsschema-Parametern gesteuert werden kann.Data transmission system for rate adaptation of turbo codes, comprising: a turbo encoder ( 220 ) which encodes input information bits at a predetermined coding rate and outputs a systematic bit stream, a first parity bit stream and a second parity bit stream for the input information bits to produce coded bits of the input information bits; and rate matching means for rate matching a number of bits from the coded bits, characterized in that the rate matching means comprises: a first rate matching means ( 231 ), which receives the systematic bit stream and repeats a predetermined number of systematic bits in the systematic bit stream, a second rate adapter ( 232 ), which receives the first parity bit stream and repeats a predetermined number of first parity bits in the first parity bit stream, and a third rate match ( 233 ) which repeats a predetermined number of second parity bits in the second parity bit stream; wherein at least one of the rate matching devices ( 231 . 232 . 233 ) is arranged to repeat respective systematic or parity bits in accordance with a corresponding repetition scheme, and the repetition scheme of each of the rate matching means may be controlled according to the repetition scheme parameters, respectively. Datenübertragungssystem zur Ratenanpassung von Turbocodes, das umfasst: einen Turbocodierer (220), der eingegebene Informationsbits mit einer vorgegebenen Codierungsrate codiert und einen systematischen Bitstrom, einen ersten Paritäts-Bitstrom und einen zweiten Paritäts-Bitstrom für die eingegebenen Informationsbits ausgibt, um codierte Bits der eingegebenen Informationsbits zu erzeugen; und eine Ratenanpassungseinrichtung zur Ratenanpassung der codierten Bits, dadurch gekennzeichnet, dass die Ratenanpassungseinrichtung umfasst: eine erste Ratenanpassungseinrichtung (231), die den systematischen Bitstrom empfängt und den systematischen Bitstrom ausgibt, eine zweite Ratenanpassungseinrichtung (232), die den ersten Paritäts-Bitstrom empfängt und eine vorbestimmte Anzahl erster Paritäts-Bits in dem ersten Paritäts-Bitstrom punktiert, und eine dritte Ratenanpassungseinrichtung (233), die den zweiten Paritäts-Bitstrom empfängt und eine vorbestimmte Anzahl zweiter Paritäts-Bits in dem zweiten Paritäts-Bitstrom punktiert; wobei jede der Ratenanpassungseinrichtungen (232, 233) eine vorgegebene Anzahl von Paritäts-Bits in einem jeweiligen Paritäts-Bitstrom mit einem entsprechenden Punktierschema punktiert und das Punktierschema jeder der Ratenanpassungseinrichtungen jeweils gemäß den Punktierschema-Parametern gesteuert werden kann.Data transmission system for rate adaptation of turbo codes, comprising: a turbo encoder ( 220 ) encoding the input information bits at a predetermined coding rate and output a systematic bit stream, a first parity bit stream and a second parity bit stream for the input information bits to produce coded bits of the input information bits; and rate matching means for rate matching the coded bits, characterized in that the rate matching means comprises: a first rate matching means ( 231 ) receiving the systematic bit stream and outputting the systematic bit stream, a second rate matching device ( 232 ) which receives the first parity bitstream and punctures a predetermined number of first parity bits in the first parity bitstream, and third rate matching means (16) 233 ) receiving the second parity bitstream and puncturing a predetermined number of second parity bits in the second parity bitstream; wherein each of the rate matching devices ( 232 . 233 ) puncturing a predetermined number of parity bits in a respective parity bit stream with a corresponding puncturing scheme, and the puncturing scheme of each of the rate matching means can be controlled according to the puncturing scheme parameters, respectively. Datenübertragungsystem nach Anspruch 43, wobei die Ratenanpassungseinrichtung (231) eine vorbestimmte Anzahl systematischer Bits in dem systematischen Bitstrom mit einem entsprechenden Punktierschema punktiert und das Punktierschema der Ratenanpassungseinrichtung gemäß Punktierschema-Parametern gesteuert werden kann.Data transmission system according to claim 43, wherein the rate matching device ( 231 ) puncturing a predetermined number of systematic bits in the systematic bit stream with a corresponding puncturing scheme, and controlling the puncturing scheme of the rate matching means according to puncturing scheme parameters. Datenübertragungssystem nach Anspruch 44, wobei das System des Weiteren einen Multiplexer enthält, der die ratenangepassten Bitströme sammelt.Data transfer system according to claim 44, wherein the system further comprises a multiplexer contains the rate-matched bitstreams collects. Datenübertragungssystem nach Anspruch 44, wobei die Punktierschema-Parameter ein erster Parameter (a), der eine Position eines als erstes in einem Rahmen zu punktierenden Bits bestimmt, und ein zweiter Parameter (b) sind, der eine Periode der in einem Rahmen zu punktierenden Bits bestimmt.Data transfer system according to claim 44, wherein the puncturing scheme parameters are a first parameter (a), a position of one to be punctured first in a frame Bits, and a second parameter (b) is one period determines the bits to be punctured in a frame. Datenübertragungssystem nach Anspruch 46, wobei jede der Ratenanpassungseinrichtungen (231, 232, 233) eine vorbestimmte Anzahl von Bits in einem jeweiligen Bitstrom gemäß dem entsprechenden Punktierschema und der Anzahl von Bits, die von den Ratenanpassungseinrichtungen ausgegeben werden, punktiert.A data transmission system according to claim 46, wherein each of the rate matching devices ( 231 . 232 . 233 ) punctures a predetermined number of bits in a respective bit stream according to the corresponding puncturing scheme and the number of bits output from the rate matching means. Datenübertragungssystem nach Anspruch 46, wobei die Anzahlen von Bits, die von den Ratenanpassungseinrichtungen ausgegeben werden (231, 232, 233) einander gleich sind.A data transmission system according to claim 46, wherein the numbers of bits output by the rate matching means ( 231 . 232 . 233 ) are equal to each other. Datenübertragungssystem nach Anspruch 46, wobei die Anzahlen von Bits, die von den Ratenanpassungseinrichtungen ausgegeben werden (231, 232, 233) verschieden voneinander sind.A data transmission system according to claim 46, wherein the numbers of bits output by the rate matching means ( 231 . 232 . 233 ) are different from each other. Datenübertragungssystem nach Anspruch 46, wobei die Anzahl von Bits, die von wenigstens einer Ratenanpassungseinrichtung ausgegeben werden, verschieden von der Anzahl von Bits ist, die von wenigstens einer anderen Ratenanpassungseinrichtung (231, 232, 233) ausgegeben werden.A data transmission system according to claim 46, wherein the number of bits output by at least one rate matching means is different from the number of bits used by at least one other rate matching means (16). 231 . 232 . 233 ). Datenübertragungssystem nach Anspruch 47, wobei jede der Ratenanpassungseinrichtungen die gleichen entsprechenden Punktierschema-Parameter hat.Data transfer system according to claim 47, wherein each of the rate matching means is the same corresponding puncturing scheme parameter has. Datenübertragungssystem nach Anspruch 47, wobei jede der Ratenanpassungseinrichtungen (231, 232, 233) entsprechende Punktierschema-Parameter hat und die ersten Parameter jedes der entsprechenden Punktierschema-Parameter einander gleich sind.A data transmission system according to claim 47, wherein each of the rate matching devices ( 231 . 232 . 233 ) has corresponding punctuation scheme parameters and the first parameters of each of the corresponding punctuation scheme parameters are equal to each other. Datenübertragungssystem nach Anspruch 47, wobei jede der Ratenanpassungseinrichtung (231, 232, 233) entsprechende Punktierschema-Parameter hat und die ersten Parameter jedes der entsprechenden Punktierschema-Parameter verschieden voneinander sind.A data transmission system according to claim 47, wherein each of said rate matching means ( 231 . 232 . 233 ) has corresponding punctuation scheme parameters and the first parameters of each of the corresponding punctuation scheme parameters are different from each other. Datenübertragungssystem nach Anspruch 47, wobei jede der Ratenanpassungseinrichtungen entsprechende Punktierschema-Parameter hat und die zweiten Pa rameter jedes der entsprechenden Punktierschema-Parameter einander gleich sind.Data transfer system according to claim 47, wherein each of the rate matching means corresponds Puncturing scheme parameter and the second parameters of each of the corresponding puncturing scheme parameters are equal to each other. Datenübertragungssystem nach Anspruch 47, wobei jede der Ratenanpassungseinrichtungen (231, 232, 233) entsprechende Punktierschema-Parameter hat und die zweiten Parameter jedes der entsprechenden Punktierschema-Parameter verschieden voneinander sind.A data transmission system according to claim 47, wherein each of the rate matching devices ( 231 . 232 . 233 ) has corresponding puncturing scheme parameters and the second parameters correspond to each of the the punctuation scheme parameters are different from each other. Datenübertragungssystem nach Anspruch 47, wobei die Punktierschemata der Ratenanpassungseinrichtungen einander gleich sind.Data transfer system according to claim 47, wherein the puncturing schemes of the rate matching means are equal to each other. Datenübertragungssystem nach Anspruch 47, wobei die Punktierschemata der Ratenanpassungseinrichtungen (231, 232, 233) verschieden voneinander sind.The data transmission system according to claim 47, wherein the punctuation schemes of the rate matching devices ( 231 . 232 . 233 ) are different from each other.
DE20023807U 1999-07-06 2000-07-06 Rate matching device for data communication system has one of rate matching blocks that punctures received symbols based on predetermined puncturing pattern in order to rate match received symbols Expired - Lifetime DE20023807U1 (en)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
KR9926978 1999-07-06
KR19990026978 1999-07-06
KR19990027865 1999-07-10
KR9927865 1999-07-10
EP00944447A EP1101321B1 (en) 1999-07-06 2000-07-06 Rate matching device and method for a data communication system

Publications (1)

Publication Number Publication Date
DE20023807U1 true DE20023807U1 (en) 2006-06-22

Family

ID=36650940

Family Applications (1)

Application Number Title Priority Date Filing Date
DE20023807U Expired - Lifetime DE20023807U1 (en) 1999-07-06 2000-07-06 Rate matching device for data communication system has one of rate matching blocks that punctures received symbols based on predetermined puncturing pattern in order to rate match received symbols

Country Status (1)

Country Link
DE (1) DE20023807U1 (en)

Similar Documents

Publication Publication Date Title
DE60034203T2 (en) APPARATUS FOR MATCHING THE DATA RATE AND METHOD FOR DATA TRANSMISSION
DE60020637T2 (en) Rate adaptation and channel interleaving for a communication system
DE10030407B4 (en) Method for optimal rate adaptation in a mobile communication system
DE10248989B4 (en) Apparatus and method for performing coding and rate matching in a CDMA mobile communication system
DE69931751T2 (en) DEVICE AND METHOD FOR INSERTING PREVIOUSLY KNOWN BITS TO THE INPUT LEVEL OF A CHANNEL CODIER
DE60107800T2 (en) DEVICE AND METHOD FOR TFCI ENCODING AND DECODING IN A MOBILE COMMUNICATION SYSTEM
DE69922707T2 (en) Transmitter and receiver with rate adaptation
DE60217992T2 (en) System and method for generating codes in a communication system
DE60221929T2 (en) Apparatus and method for code generation in a communication system
DE60037841T2 (en) Data multiplexing and data multiplexing and data transmission methods and data transmission means
DE29924886U1 (en) Channel coding device for communication system
DE102009044555B4 (en) Method and apparatus for performing a CRC check
DE69905255T2 (en) IMPROVED NESTLERS FOR TURBO CODES
DE20202467U1 (en) Device for generating and decoding codes in a communication system
DE19815597B4 (en) A data transmission system, mobile station, and method of reducing frame error rate in data frame data transmission
WO2001039421A2 (en) Method for adjusting the data rate in a communication device and the corresponding communication device
DE20023165U1 (en) Device for controlling a demultiplexer and a multiplexer for rate matching in a mobile communication system
EP1461888B1 (en) Method and device for transferring data wherein a bit rate adaptation model is signalled between the transmitter and the receiver
DE69930911T2 (en) TRANSMISSION SYSTEM WITH ADAPTIVE CHANNEL CODIER AND DECODER
EP1169778B1 (en) Data transmission with interleaving and subsequent rate matching by puncturing or repetition
EP1219060B1 (en) Method and device for transmitting data frames and a method and a device for adapting data rates
DE69908629T2 (en) HYBRID NESTLER FOR TURBO ENCODERS
DE10038229B4 (en) Method and apparatus for rate adaptation in a mobile communication system
EP1497943B1 (en) Method and communications device for adapting the data transfer rate in a communications device
DE60311997T2 (en) First interleaving method for a transmitter with two interleavers

Legal Events

Date Code Title Description
R207 Utility model specification

Effective date: 20060727

R150 Term of protection extended to 6 years

Effective date: 20060724

R151 Term of protection extended to 8 years

Effective date: 20060801

R152 Term of protection extended to 10 years

Effective date: 20080808

R071 Expiry of right