JP2006304348A - Error correction encoding system - Google Patents

Error correction encoding system Download PDF

Info

Publication number
JP2006304348A
JP2006304348A JP2006168226A JP2006168226A JP2006304348A JP 2006304348 A JP2006304348 A JP 2006304348A JP 2006168226 A JP2006168226 A JP 2006168226A JP 2006168226 A JP2006168226 A JP 2006168226A JP 2006304348 A JP2006304348 A JP 2006304348A
Authority
JP
Japan
Prior art keywords
data
unit
error correction
sequence
bit
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.)
Granted
Application number
JP2006168226A
Other languages
Japanese (ja)
Other versions
JP4308226B2 (en
Inventor
Keiho Ri
継峰 李
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006168226A priority Critical patent/JP4308226B2/en
Publication of JP2006304348A publication Critical patent/JP2006304348A/en
Application granted granted Critical
Publication of JP4308226B2 publication Critical patent/JP4308226B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To obtain a desired encoding rate in an error correction encoding system having a plurality of folding circuits provided in parallel with each other. <P>SOLUTION: Folding parts 43 and 44 provided in parallel with each other perform folding processing for its source data u, respectively. An inter-leaver 42 randomizes the source data u given for the folding part 44. A puncturing parts 45 and 46 select data elements from parity data series Y1K and Y2K based on a predetermined puncturing pattern, respectively. A multiplexing part 47 gives data elements selected by the puncturing parts 45 and 46 to the data series XK. <P>COPYRIGHT: (C)2007,JPO&INPIT

Description

本発明は、符号化装置に係わり、特に、誤り訂正符号に係わる。   The present invention relates to an encoding apparatus, and more particularly to an error correction code.

符号化技術は、様々な分野において広く利用されている。例えば、データ伝送においては、送信元装置が伝送すべきデータを符号化して通信路に送出し、受信装置がその符号化されているデータを受信して復号する。また、データを記憶装置に保存する際には、データは、符号化されてディスクなどに書き込まれる。そして、符号化されているデータは、そのディスクから読み出される際に復号される。なお、符号化とは、一般には、情報源データ系列を異なるデータ系列に変換することをいい、また、その変換によって得られる新しいデータ系列を符号という。   Encoding technology is widely used in various fields. For example, in data transmission, data to be transmitted by a transmission source device is encoded and transmitted to a communication path, and a reception device receives and decodes the encoded data. When data is stored in a storage device, the data is encoded and written to a disk or the like. The encoded data is decoded when it is read from the disk. Note that encoding generally refers to converting an information source data sequence into a different data sequence, and a new data sequence obtained by the conversion is referred to as a code.

ところで、符号化されたデータを伝送する際、その通信路においてエラーが発生することがある。また、符号化されたデータを格納する記憶装置からそのデータを読み出して再生する際にも、エラーが発生し得る。このようなエラーの発生を検出するため、或いはそのエラーを訂正するために、誤り訂正符号がしばしば使用されている。   Incidentally, when encoded data is transmitted, an error may occur in the communication path. An error may also occur when reading and reproducing the data from the storage device that stores the encoded data. In order to detect the occurrence of such an error or to correct the error, an error correction code is often used.

誤り訂正符号の1つとして、畳込み符号が知られている。畳込み符号では、nビットのデータが入力される毎に、そのnビットのデータ及びそのnビットのデータの直前に入力されたsビットのデータに従って決まるm(m>n)ビットのデータが出力される。すなわち、畳込み符号では、伝送すべきデータに対して、「m−n」ビットのデータが誤り訂正のために付与される。このことにより、データの冗長性が増加するので、復号時の復号誤り率を低くすることができる。   A convolutional code is known as one of error correction codes. In the convolutional code, every time n bits of data are input, m (m> n) bits of data determined according to the n bits of data and the s bits of data input immediately before the n bits of data are output. Is done. That is, in the convolutional code, “mn” bits of data are added for error correction to the data to be transmitted. This increases the redundancy of data, so that the decoding error rate at the time of decoding can be lowered.

なお、伝送すべきデータの量(ソースデータのビット数)と、符号化によって得られるデータの量(出力データのビット数)との比率は、一般に符号化率(または、情報率)Rと呼ばれ、下式により与えられる。
R = n/m
この符号化率Rは、誤り訂正符号においては、常に1よりも小さい。また、一般に、符号化率Rは、復号装置における誤り訂正能力を決めるパラメータの1つである。たとえば、符号化率Rが小いと、誤り訂正能力は高くなる。
The ratio between the amount of data to be transmitted (the number of bits of source data) and the amount of data obtained by encoding (the number of bits of output data) is generally called a coding rate (or information rate) R. Is given by:
R = n / m
This coding rate R is always smaller than 1 in the error correction code. In general, the coding rate R is one of the parameters that determines the error correction capability in the decoding apparatus. For example, when the coding rate R is small, the error correction capability is high.

図20は、畳込み符号を用いた既存の誤り訂正符号化装置の一例のブロック図である。この誤り訂正符号化装置500は、互いに並列に設けられた2つの畳込み部501および502を備える。このように、互いに並列に設けられた複数の畳込み部を備える符号化装置は、しばしば、「ターボ符号化装置」と呼ばれている。   FIG. 20 is a block diagram of an example of an existing error correction coding apparatus using a convolutional code. This error correction coding apparatus 500 includes two convolution units 501 and 502 provided in parallel with each other. As described above, an encoding apparatus including a plurality of convolution units provided in parallel with each other is often referred to as a “turbo encoding apparatus”.

誤り訂正符号化装置500は、ソースデータdに対して、データ系列x、及びそのデータ系列xを訂正するためのパリティデータ系列y1、y2を生成する。データ系列x、パリティデータ系列y1、y2は、多重化されて出力される。そして、この出力がソースデータdの符号化データである。以下では、Nビットのソースデータdを符号化する際の動作を説明する。   The error correction coding apparatus 500 generates a data sequence x and parity data sequences y1 and y2 for correcting the data sequence x for the source data d. The data series x and the parity data series y1 and y2 are multiplexed and output. This output is the encoded data of the source data d. Hereinafter, an operation when encoding N-bit source data d will be described.

ソースデータdは、そのままデータ系列xとして出力されるとともに、畳込み部501およびインターリーバ503に与えられる。畳込み部501は、ソースデータdに対して畳込み符号化を実行してパリティデータ系列y1を出力する。インターリーバ503は、入力されたNビットのソースデータdをいったん保持し、その後に入力順序と異なる順序でその保持されているソースデータdを読み出して出力する。このことにより、ソースデータdはランダム化される。インターリーバ503の出力は、畳込み部502に対して与えられる。そして、畳込み部502は、そのインターリーバ503の出力に対して畳込み符号化を実行してパリティデータ系列y2を出力する。   The source data d is output as it is as a data series x and is given to the convolution unit 501 and the interleaver 503. The convolution unit 501 performs convolutional coding on the source data d and outputs a parity data sequence y1. The interleaver 503 once holds the input N-bit source data d, and then reads and outputs the held source data d in an order different from the input order. As a result, the source data d is randomized. The output of the interleaver 503 is given to the convolution unit 502. Then, convolution section 502 performs convolutional coding on the output of interleaver 503 and outputs parity data sequence y2.

上記動作により、誤り訂正符号化装置500は、Nビットのソースデータdに対して、Nビットのデータ系列x、Nビットのパリティデータ系列y1、およびNビットのパリティデータ系列y2を生成する。これらのデータ系列x、パリティデータ系列y1、y2は、例えば、ビット毎に多重化されて符号化データとして出力される。従って、この場合、誤り訂正符号化装置500は、Nビットの入力に対して3×Nビットのデータを出力するので、その符号化率Rは、1/3となる。   With the above operation, error correction coding apparatus 500 generates N-bit data series x, N-bit parity data series y1, and N-bit parity data series y2 for N-bit source data d. These data series x and parity data series y1 and y2 are multiplexed, for example, bit by bit and output as encoded data. Therefore, in this case, the error correction coding apparatus 500 outputs 3 × N-bit data with respect to the N-bit input, so that the coding rate R becomes 1/3.

図21は、図20に示した誤り訂正符号化装置の変形例のブロック図である。誤り訂正符号化装置510は、図20に示した誤り訂正符号化装置500に対して選択部511を設けることにより実現される。選択部511は、予め決められている選択パターンに従って、畳込み部501および502によりそれぞれ生成されるパリティデータ系列y1およびy2を選択してパリティデータ系列Zとして出力する。尚、選択部511の動作は、「パンクチャリング(Puncturing)」と呼ばれることがある。   FIG. 21 is a block diagram of a modification of the error correction coding apparatus shown in FIG. Error correction coding apparatus 510 is realized by providing selection section 511 with respect to error correction coding apparatus 500 shown in FIG. The selection unit 511 selects the parity data sequences y1 and y2 generated by the convolution units 501 and 502, respectively, according to a predetermined selection pattern, and outputs them as a parity data sequence Z. Note that the operation of the selection unit 511 may be referred to as “Puncturing”.

選択部511は、畳込み部501および502の出力を交互に1ビットずつ選択する。選択部511の出力系列Zを表1に示す。ここで、「y1(i) 」は、ソースデータdの第i番目のデータエレメントに対応する畳込み部501の出力であり、「y2(i) 」は、ソースデータdの第i番目のデータエレメントに対応する畳込み部502の出力である。このように、選択部511は、誤り訂正符号化装置510にNビットのソースデータdが入力されると、Nビットの出力系列Z(y1(1) ,y2(2) ,y1(3) ,y2(4) ,..,y1(N-1) ,y2(N) )を出力する。   The selection unit 511 alternately selects the outputs of the convolution units 501 and 502 bit by bit. The output series Z of the selection unit 511 is shown in Table 1. Here, “y1 (i)” is the output of the convolution unit 501 corresponding to the i-th data element of the source data d, and “y2 (i)” is the i-th data of the source data d. This is the output of the convolution unit 502 corresponding to the element. As described above, when the N-bit source data d is input to the error correction coding apparatus 510, the selection unit 511 outputs the N-bit output sequence Z (y1 (1), y2 (2), y1 (3), y2 (4), ..., y1 (N-1), y2 (N)).

Figure 2006304348
選択部511によるパンクチャリング動作は、下記に示す式で表すことができる。
Figure 2006304348
The puncturing operation by the selection unit 511 can be expressed by the following equation.

Figure 2006304348
出力系列Zは、データ行列Dとパンクチャリング行列Pとの掛け算により得られる。例えば、ソースデータdの第i番目のデータエレメントに対しては、データ行列Dの第1行とパンクチャリング行列Pの第1列との積により「y1(i) 」が得られる。また、ソースデータdの第i+1番目のデータエレメントに対しては、データ行列Dの第2行とパンクチャリング行列Pの第2列との積により「y2(i+1) 」が得られる。したがって、選択部511が畳込み部501および502の出力を交互に1ビットずつ選択する動作は、上記演算を繰り返し実行する動作として表される。
Figure 2006304348
The output sequence Z is obtained by multiplying the data matrix D and the puncturing matrix P. For example, for the i-th data element of the source data d, “y1 (i)” is obtained by the product of the first row of the data matrix D and the first column of the puncturing matrix P. For the (i + 1) th data element of the source data d, “y2 (i + 1)” is obtained by the product of the second row of the data matrix D and the second column of the puncturing matrix P. Therefore, the operation in which the selection unit 511 alternately selects the outputs of the convolution units 501 and 502 bit by bit is expressed as an operation in which the above calculation is repeatedly executed.

上記構成により、誤り訂正符号化装置510は、Nビットのソースデータdに対して、Nビットのデータ系列x、およびNビットのパリティデータ系列Zを生成する。これらのデータ系列xおよびパリティデータ系列Zは、ビット毎に多重化されて符号化データとして出力される。従って、この場合、誤り訂正符号化装置510は、Nビットの入力に対して2×Nビットのデータを出力するので、その符号化率Rは、1/2となる。   With the above configuration, error correction coding apparatus 510 generates N-bit data sequence x and N-bit parity data sequence Z for N-bit source data d. These data series x and parity data series Z are multiplexed bit by bit and output as encoded data. Therefore, in this case, the error correction coding apparatus 510 outputs 2 × N-bit data with respect to the N-bit input, so that the coding rate R is ½.

なお、図20および図21に示した誤り訂正符号化装置については、米国特許5446747に詳しく開示されている。   The error correction coding apparatus shown in FIGS. 20 and 21 is disclosed in detail in US Pat. No. 5,446,747.

ところで、ソースデータdのデータ長N(ビット数)に対する符号化装置の出力系列のデータ長Mを任意の長さにしたい、という要求がある。たとえば、移動体通信システムにおいては、一般に、所定のデータ長ごとに分割された音声データ等が予め決められたデータ長のフレームの中に格納されて伝送される。すなわち、移動体通信システムにおいて符号を使用する場合には、所定のデータ長ごとに分割された音声データ等は、符号化された後にフレームの中に格納される。   By the way, there is a demand to make the data length M of the output sequence of the encoding device with respect to the data length N (number of bits) of the source data d arbitrary. For example, in a mobile communication system, generally, audio data or the like divided for each predetermined data length is stored and transmitted in a frame having a predetermined data length. That is, when a code is used in a mobile communication system, audio data or the like divided for each predetermined data length is encoded and stored in a frame.

ところが、図20または図21に示した従来の誤り訂正符号化装置の符号化率Rはそれぞれ固定されていた。したがって、予め決められた固定長のデータ(上述の例では、フレーム)を作成する場合、そのフレームのデータ格納領域を満たすためには、そこに無意味な情報を格納しなければならなかった。   However, the coding rate R of the conventional error correction coding apparatus shown in FIG. 20 or FIG. 21 is fixed. Therefore, when creating data of a predetermined fixed length (a frame in the above example), meaningless information has to be stored in the data storage area of the frame.

図22(a)は、図20に示す誤り訂正符号化装置500を使用してソースデータを符号化して固定長のフレームに格納する場合の処理を説明する図である。ここでは、ソースデータdが333ビット、また、フレームのデータ格納領域が1500ビットである。この場合、誤り訂正符号化装置500は、333ビットのデータ系列x、333ビットのパリティデータ系列y1、および333ビットのパリティデータ系列y2を生成するので、フレームのデータ格納領域を満たすためには、図22(b)に示すように、501ビットのダミーデータをそのフレームに格納しなければならない。従って、網を介してそのフレームを伝送すると、無駄なデータが伝送されることになり、網資源が浪費されてしまう。   FIG. 22A is a diagram for explaining processing when the source data is encoded using the error correction encoding apparatus 500 shown in FIG. 20 and stored in a fixed-length frame. Here, the source data d is 333 bits, and the data storage area of the frame is 1500 bits. In this case, since the error correction coding apparatus 500 generates the 333-bit data sequence x, the 333-bit parity data sequence y1, and the 333-bit parity data sequence y2, in order to fill the data storage area of the frame, As shown in FIG. 22B, 501 bits of dummy data must be stored in the frame. Therefore, if the frame is transmitted through the network, useless data is transmitted, and network resources are wasted.

図23(a)は、図21に示す誤り訂正符号化装置510を使用してソースデータを符号化して固定長のフレームに格納する場合の処理を説明する図である。ここでは、ソースデータdが666ビット、フレームのデータ格納領域が1500ビットである。この場合、選択部511は、パンクチャリング処理により、パリティデータ系列y1およびパリティデータ系列y2からパリティデータ系列Zを生成する。したがって、誤り訂正符号化装置510は、666ビットのデータ系列x、および666ビットのパリティデータ系列Zを生成するので、フレームのデータ格納領域を満たすためには、図23(b)に示すように、168ビットのダミーデータをそのフレームに格納しなければならない。したがって、図22に示した例と同様に、無駄なデータが伝送されることになる。   FIG. 23A is a diagram for explaining processing when the source data is encoded using the error correction encoding apparatus 510 shown in FIG. 21 and stored in a fixed-length frame. Here, the source data d is 666 bits, and the frame data storage area is 1500 bits. In this case, the selection unit 511 generates a parity data sequence Z from the parity data sequence y1 and the parity data sequence y2 by puncturing processing. Therefore, the error correction coding apparatus 510 generates the 666-bit data sequence x and the 666-bit parity data sequence Z. Therefore, in order to fill the frame data storage area, as shown in FIG. 168 bits of dummy data must be stored in the frame. Therefore, as in the example shown in FIG. 22, useless data is transmitted.

このように、互いに並列に設けられた複数の畳込み部を備える既存の誤り訂正符号化装置は、その符号化率を所望の値に設定できなかったので、ソースデータを符号化して所定のフレームに格納する際、その効率が悪かった。   As described above, since the existing error correction encoding apparatus including a plurality of convolution units provided in parallel with each other cannot set the encoding rate to a desired value, the source data is encoded to generate a predetermined frame. The efficiency was poor when storing in

本発明の課題は、互いに並列に設けられた複数の畳込み部を備える誤り訂正符号化装置において所望の符号化率が得られるようにすることである。   An object of the present invention is to obtain a desired coding rate in an error correction coding apparatus including a plurality of convolution units provided in parallel to each other.

本発明の符号化装置は、ソースデータを符号化して第1のパリティデータを生成する第1のエンコーダと、上記ソースデータについてインターリーブ処理を行ってランダム化データを生成するインターリーバと、上記ランダム化データを符号化して第2のパリティデータを生成する第2のエンコーダと、上記ソースデータのデータ長および送信フレームに含まれる出力系列のデータ長に基づいて決まる符号化率に対応して決定されるビット数のデータエレメントを上記第1および第2のパリティデータから各々同数又はほぼ同数選択して第1および第2の選択データを生成する選択手段と、を有する。   The encoding apparatus of the present invention includes a first encoder that encodes source data to generate first parity data, an interleaver that performs interleaving processing on the source data to generate randomized data, and the randomization A second encoder that encodes data to generate second parity data, and a coding rate that is determined based on the data length of the source data and the data length of the output sequence included in the transmission frame. Selecting means for selecting first and second selection data by selecting the same number or almost the same number of data elements of the number of bits from the first and second parity data, respectively;

ソースデータを符号化する誤り訂正符号化装置において、所望の符号化率(情報率)が得られる。したがって、この装置を通信システムに利用すれば、無意味なデータを伝送する必要がなくなるので、伝送効率が向上するとともに、復号特性が向上する。   In an error correction coding apparatus that codes source data, a desired coding rate (information rate) can be obtained. Therefore, if this apparatus is used in a communication system, it is not necessary to transmit meaningless data, so that transmission efficiency is improved and decoding characteristics are improved.

本発明の誤り訂正符号化装置は、様々な分野に適用可能であり、たとえば、通信システムや、データ記憶装置において利用され得る。
図1は、本実施形態の誤り訂正符号化装置が適用される移動体通信システムの構成図である。無線方式は、例えば、CDMAである。基地局10は、移動機20へ送出すべきデータ(データA)を符号化するエンコーダ11、符号化されたデータを変調する変調器12、および変調されたデータを送信する送信機13を備える。基地局10から送出された無線信号は、移動機20の受信機21により受信され、復調器22により復調され、そしてデコーダ23により復号される。また、基地局10は、移動機20から送られてくる信号を受信する受信機14、受信信号を復調する復調器15、および復調されたデータを復号するデコーダ16を備える。なお、移動機20は、基地局10へ送出すべきデータ(データB)をエンコーダ24を用いて符号化し、変調器25を用いて変調し、そして送信機26を用いて送信する。
The error correction coding apparatus of the present invention can be applied to various fields, and can be used in, for example, a communication system and a data storage device.
FIG. 1 is a configuration diagram of a mobile communication system to which the error correction coding apparatus of the present embodiment is applied. The radio system is, for example, CDMA. The base station 10 includes an encoder 11 that encodes data (data A) to be transmitted to the mobile device 20, a modulator 12 that modulates the encoded data, and a transmitter 13 that transmits the modulated data. The radio signal transmitted from the base station 10 is received by the receiver 21 of the mobile device 20, demodulated by the demodulator 22, and decoded by the decoder 23. The base station 10 also includes a receiver 14 that receives a signal transmitted from the mobile device 20, a demodulator 15 that demodulates the received signal, and a decoder 16 that decodes the demodulated data. The mobile device 20 encodes data (data B) to be transmitted to the base station 10 using the encoder 24, modulates it using the modulator 25, and transmits it using the transmitter 26.

上記通信システムにおいて、本実施形態の誤り訂正符号化装置は、基地局10に設けられるエンコーダ11または移動機20に設けられるエンコーダ24に相当する。
図2は、本実施形態の誤り訂正符号化装置が適用される記憶装置の構成図である。この記憶装置30は、データ格納部33に書き込むべきデータを符号化するエンコーダ31、符号化されたデータをデータ格納部33に書き込む書込み制御部32を備える。データ格納部33は、たとえば、光ディスク、磁気ディスク、半導体メモリなどの記憶媒体を含む。また、記憶装置30は、データ格納部33からデータを読み出す読出し制御部34、および読み出されたデータを復号するデコーダ35を備える。
In the communication system, the error correction coding apparatus according to the present embodiment corresponds to the encoder 11 provided in the base station 10 or the encoder 24 provided in the mobile device 20.
FIG. 2 is a configuration diagram of a storage device to which the error correction coding apparatus of this embodiment is applied. The storage device 30 includes an encoder 31 that encodes data to be written to the data storage unit 33, and a write control unit 32 that writes the encoded data to the data storage unit 33. The data storage unit 33 includes, for example, a storage medium such as an optical disk, a magnetic disk, or a semiconductor memory. The storage device 30 also includes a read control unit 34 that reads data from the data storage unit 33 and a decoder 35 that decodes the read data.

上記記憶装置において、本実施形態の誤り訂正符号化装置は、エンコーダ31に相当する。
図3は、本発明の一実施形態の誤り訂正符号化装置のブロック図である。この誤り訂正符号化装置の基本的な構成は、図21に示した従来の誤り訂正符号化装置と同じである。本実施形態の誤り訂正符号化装置のパンクチャリング部は、図21に示した従来の誤り訂正符号化装置の選択部511に対応する。但し、このパンクチャリング部は、選択部511とは異なる機能を備える。本実施形態の誤り訂正符号化装置は、パンクチャリング処理により所望の符号化率を実現する。以下、本実施形態の誤り訂正符号化装置の構成および動作について説明する。
In the above storage device, the error correction coding device of this embodiment corresponds to the encoder 31.
FIG. 3 is a block diagram of an error correction coding apparatus according to an embodiment of the present invention. The basic configuration of this error correction encoding apparatus is the same as that of the conventional error correction encoding apparatus shown in FIG. The puncturing unit of the error correction encoding apparatus of the present embodiment corresponds to the selection unit 511 of the conventional error correction encoding apparatus shown in FIG. However, the puncturing unit has a function different from that of the selection unit 511. The error correction coding apparatus according to the present embodiment realizes a desired coding rate by puncturing processing. Hereinafter, the configuration and operation of the error correction coding apparatus of the present embodiment will be described.

誤り訂正符号化装置40は、組織符号を用いてソースデータuを符号化する。組織符号では、伝送すべきデータと、そのデータを伝送する際に発生するエラーを訂正するためのデータ(以下では、「パリティデータ」と呼ぶ)とが互いに分離されている。すなわち、誤り訂正符号化装置40は、ソースデータuを受け取ると、そのソースデータuにパリティデータzを付加して出力する。なお、誤り訂正符号化装置40は、Nビットのソースデータuを符号化する。また、誤り訂正符号化装置40は、ソースデータuを「データ系列Xk 」として出力する。パリティデータを「パリティデータ系列Zk 」として出力する。   The error correction encoding device 40 encodes the source data u using a systematic code. In the systematic code, data to be transmitted and data for correcting an error that occurs when the data is transmitted (hereinafter referred to as “parity data”) are separated from each other. That is, when the error correction coding apparatus 40 receives the source data u, it adds the parity data z to the source data u and outputs it. Note that the error correction encoding device 40 encodes N-bit source data u. Further, the error correction coding apparatus 40 outputs the source data u as “data series Xk”. Parity data is output as “parity data series Zk”.

入力I/F部41は、受信したソースデータuを多重化部47、第1の畳込み部43、およびインターリーバ42に与える。なお、入力I/F部41から多重化部47に与えられるソースデータuのことを「データ系列Xk 」と呼ぶ。   The input I / F unit 41 provides the received source data u to the multiplexing unit 47, the first convolution unit 43, and the interleaver 42. The source data u given from the input I / F unit 41 to the multiplexing unit 47 is referred to as “data series Xk”.

インターリーバ42は、入力されたソースデータuをランダム化する。インターリーバ42は、Nビットのソースデータuを一時的に保持するためのメモリを備える。入力されたNビットのソースデータuは、1ビットずつそのメモリに書き込まれる。そして、そのメモリに書き込まれたデータは、そのメモリへの書き込み順序とは異なる順序で1ビットずつ読み出される。このことにより、ソースデータuはランダム化される。   The interleaver 42 randomizes the input source data u. The interleaver 42 includes a memory for temporarily storing N-bit source data u. The input N-bit source data u is written into the memory bit by bit. The data written to the memory is read bit by bit in an order different from the order of writing to the memory. As a result, the source data u is randomized.

なお、インターリーバ42を設けた目的は、畳込み部43および44に対して互いに異なる独立したデータ系列を与えることである。したがって、図3においては、第2の畳込み部44の前段にのみインターリーバを設けているが、第1の畳込み部43および第2の畳込み部44に対してそれぞれインターリーバを設けてもよい。ただし、その場合には、それら2つのインターリーバにより実行されるランダム化処理が互いに異なっている必要がある。   The purpose of providing the interleaver 42 is to give different convolutional data series to the convolution units 43 and 44. Therefore, in FIG. 3, an interleaver is provided only in the preceding stage of the second convolution unit 44, but an interleaver is provided for each of the first convolution unit 43 and the second convolution unit 44. Also good. However, in that case, the randomizing processes executed by the two interleavers need to be different from each other.

第1の畳込み部43は、入力されたソースデータuに対して畳込み処理を実行する。一方、第2の畳込み部44は、インターリーバ42によってランダム化されたソースデータuに対して畳込み処理を実行する。第1の畳込み部43および第2の畳込み部44は、互いに同じ構成であってもよいし、互いに異なる構成であってもよい。以下では、これら2つの畳込み部43、44の構成が互いに同じであるものとする。   The first convolution unit 43 performs a convolution process on the input source data u. On the other hand, the second convolution unit 44 performs a convolution process on the source data u randomized by the interleaver 42. The first convolution unit 43 and the second convolution unit 44 may have the same configuration or may have different configurations. In the following, it is assumed that the configurations of these two folding parts 43 and 44 are the same.

第1の畳込み部43は、互いに直列に接続された複数のメモリM、および1つ以上の加算機を備える。各メモリMは、たとえば、フリップフロップであり、それぞれ1ビットのデータを保持する。直列に接続されたメモリMは、シフトレジスタを構成する。加算機は、例えば、排他論理和演算器、又はmod2加算機である。図3に示す構成では、第1の畳込み部43は、2つのメモリM、および3つの加算機を備える。この場合、メモリMにより保持されるデータ量が2ビットなので、拘束長=2である。なお、この明細書では、畳込み回路の拘束長=畳込み回路のメモリに格納されるデータのビット数とする。   The first convolution unit 43 includes a plurality of memories M connected in series with each other, and one or more adders. Each memory M is, for example, a flip-flop, and holds 1-bit data. The memories M connected in series constitute a shift register. The adder is, for example, an exclusive OR calculator or a mod2 adder. In the configuration shown in FIG. 3, the first convolution unit 43 includes two memories M and three adders. In this case, since the amount of data held by the memory M is 2 bits, the constraint length = 2. In this specification, the constraint length of the convolution circuit is equal to the number of bits of data stored in the memory of the convolution circuit.

第1の畳込み部43は、ソースデータuのデータエレメントを受け取る毎に、その受け取ったデータエレメントに対応するパリティデータ系列Y1kのデータエレメントを出力する。パリティデータY1kのデータエレメントは、第1の畳込み部43へ新たに入力されたデータエレメントと、そのデータエレメントが入力されたタイミングにおいて上記メモリMに保持されているデータエレメントとの和によって得られる。すなわち、この畳込み処理では、新たに入力されたデータエレメントに対応するデータエレメントは、先に入力されている1以上のデータエレメントおよびその新たに入力されたデータエレメントに基づいて生成されて出力される。   Each time the first convolution unit 43 receives the data element of the source data u, the first convolution unit 43 outputs the data element of the parity data sequence Y1k corresponding to the received data element. The data element of the parity data Y1k is obtained by the sum of the data element newly input to the first convolution unit 43 and the data element held in the memory M at the timing when the data element is input. . That is, in this convolution process, a data element corresponding to a newly input data element is generated and output based on one or more previously input data elements and the newly input data elements. The

第1の畳込み部43の各メモリMには、それぞれ初期値として「0」が設定される。そして、第1の畳込み部43は、Nビットのデータ系列が入力されると、Nビットのパリティデータ系列を出力し、さらにそのパリティデータ系列に続いて終結ビット(tail bit)を出力する。終結ビットのデータ長は、例えば、メモリMの数と同じであり、「2」である。   Each memory M of the first convolution unit 43 is set to “0” as an initial value. When an N-bit data sequence is input, the first convolution unit 43 outputs an N-bit parity data sequence, and further outputs a termination bit (tail bit) following the parity data sequence. The data length of the termination bit is the same as the number of memories M, for example, “2”.

第2の畳込み部44の構成および動作は、基本的に上述した第1の畳込み部43の構成および動作と同じである。但し、第2の畳込み部44は、インターリーバ42によってランダム化されたソースデータuに対して畳込み処理を実行し、パリティデータ系列Y2kを生成する。   The configuration and operation of the second convolution unit 44 are basically the same as the configuration and operation of the first convolution unit 43 described above. However, the second convolution unit 44 performs a convolution process on the source data u randomized by the interleaver 42 to generate a parity data sequence Y2k.

なお、畳込み処理は、既知の技術であり、当業者にはよく知られているので、ここではその詳細な説明は省略する。
第1のパンクチャリング部45は、第1の畳込み部43により生成されるパリティデータ系列Y1kの各データエレメントを予め決められたパターンに従って選択し、パリティデータ系列Z1kとして出力する。同様に、第2のパンクチャリング部46は、第2の畳込み部44により生成されるパリティデータ系列Y2kの各データエレメントを予め決められたパターンに従って選択し、パリティデータ系列Z2kとして出力する。図3に示す畳込み符号化装置40の特徴は、これらのパンクチャリング部によるデータエレメントの選択方法である。データエレメントの選択方法については、後述詳しく説明する。
Note that the convolution process is a known technique and is well known to those skilled in the art, so a detailed description thereof will be omitted here.
The first puncturing unit 45 selects each data element of the parity data sequence Y1k generated by the first convolution unit 43 according to a predetermined pattern and outputs it as a parity data sequence Z1k. Similarly, the second puncturing unit 46 selects each data element of the parity data sequence Y2k generated by the second convolution unit 44 according to a predetermined pattern and outputs it as a parity data sequence Z2k. A feature of the convolutional coding apparatus 40 shown in FIG. 3 is a data element selection method by these puncturing units. The data element selection method will be described in detail later.

多重化部47は、入力I/F部41から与えられるデータ系列Xk 、第1のパンクチャリング部45から与えられるパリティデータ系列Z1k、および第2のパンクチャリング部46から与えられるパリティデータ系列Z2kを多重化して出力する。この多重化部47からの出力系列Cは、ソースデータuに対する符号化データである。なお、多重化部47は、入力される3つのデータ系列のタイミングを調整する機能を備えている。これにより、ソースデータu(データ系列Xk )の各データエレメントが出力される際には、そのソースデータuのデータエレメントに対応するパリティデータ系列Z1kおよびZ2kの各データエレメントがそのソースデータのデータエレメントに関連づけられて出力される。   The multiplexing unit 47 receives the data sequence Xk given from the input I / F unit 41, the parity data sequence Z1k given from the first puncturing unit 45, and the parity data sequence Z2k given from the second puncturing unit 46. Multiplex and output. The output series C from the multiplexing unit 47 is encoded data for the source data u. The multiplexing unit 47 has a function of adjusting the timings of the three input data series. Thereby, when each data element of the source data u (data series Xk) is output, each data element of the parity data series Z1k and Z2k corresponding to the data element of the source data u is the data element of the source data. Output in association with.

このように、誤り訂正符号化装置40は、ソースデータuが入力されると、そのソースデータuのデータ系列と同じデータ系列であるデータ系列Xk に、誤り訂正のためのパリティデータ系列Z1kおよびZ2kを付与して出力する。   As described above, when the source data u is input, the error correction coding apparatus 40 converts the parity data series Z1k and Z2k for error correction into the data series Xk that is the same data series as the data series of the source data u. Is output.

次に、第1のパンクチャリング部45および第2のパンクチャリング部46の動作を構成および説明する。ここでは、ソースデータuのデータ長がNビットであり、出力系列Cのデータ長がMビットであることが予め決められているものとする。この場合、誤り訂正符号化装置40は、符号化率=N/Mが要求される。ソースデータuおよび出力系列Cのデータ長は、たとえば、この誤り訂正符号化装置が通信システムにおいて利用される場合には、その通信システムの仕様により決定される。特に、出力系列Cのデータ長は、その通信システムで伝送されるフレームのフォーマットにより決められる。   Next, the operations of the first puncturing unit 45 and the second puncturing unit 46 will be described and explained. Here, it is assumed that the data length of the source data u is N bits and the data length of the output series C is M bits. In this case, the error correction coding apparatus 40 is required to have a coding rate = N / M. The data lengths of the source data u and the output sequence C are determined by the specifications of the communication system, for example, when this error correction coding apparatus is used in the communication system. In particular, the data length of the output sequence C is determined by the format of the frame transmitted by the communication system.

図4は、第1のパンクチャリング部45のブロック図である。なお、第2のパンクチャリング部46も基本的に同じ構成である。
ラッチ回路51は、第1の畳込み部43から出力されるパリティデータ系列Y1kを1ビットずつ保持する。すなわち、ラッチ回路51は、第1の畳込み部43からパリティデータ系列Y1kのデータエレメントが出力される毎に更新される。CPU52は、メモリ53に格納されているプログラムを実行することにより、ラッチ回路51に保持されているデータエレメントからパリティデータZ1kのデータエレメントを生成する。パリティデータZ1kデータエレメントは、出力ポート54を介して多重化部47へ送出される。
FIG. 4 is a block diagram of the first puncturing unit 45. The second puncturing unit 46 has basically the same configuration.
The latch circuit 51 holds the parity data series Y1k output from the first convolution unit 43 bit by bit. That is, the latch circuit 51 is updated each time the data element of the parity data series Y1k is output from the first convolution unit 43. The CPU 52 executes a program stored in the memory 53 to generate a data element of parity data Z1k from the data elements held in the latch circuit 51. The parity data Z1k data element is sent to the multiplexing unit 47 via the output port 54.

メモリ53は、CPU52により実行されるプログラム、およびそのプログラムにより利用されるパンクチャリングテーブルを格納する。このプログラムについては、後述説明する。   The memory 53 stores a program executed by the CPU 52 and a puncturing table used by the program. This program will be described later.

図5は、パンクチャリングテーブルの一例を示す図である。パンクチャリングテーブルは、パリティデータ系列Y1kの各データエレメントを選択するか否かを表す選択情報(パンクチャリングパターン情報)を格納する。したがって、この選択情報のデータ長は、第1の畳込み部43からの出力データ系列のデータ長と同じになる。第1の畳込み部43は、ソースデータuのデータ長がNビットである場合には、Nビットのパリティデータ系列Z1kを出力する。したがって、この場合、選択情報のデータ長も、Nビットになる。   FIG. 5 is a diagram illustrating an example of a puncturing table. The puncturing table stores selection information (puncturing pattern information) indicating whether to select each data element of the parity data sequence Y1k. Therefore, the data length of this selection information is the same as the data length of the output data series from the first convolution unit 43. The first convolution unit 43 outputs an N-bit parity data sequence Z1k when the data length of the source data u is N bits. Therefore, in this case, the data length of the selection information is N bits.

なお、第1の畳込み部43は、ソースデータuを受信すると、パリティデータ系列Y1kを出力し、その後に終結ビットを出力する。ただし、この終結ビットに対してはパンクチャリング処理を実行しない。すなわち、この終結ビットは、パンクチャリング部に入力されることなく、多重化部47へ送られる。   When the first convolution unit 43 receives the source data u, the first convolution unit 43 outputs a parity data sequence Y1k and then outputs a termination bit. However, the puncturing process is not executed for this termination bit. That is, the termination bit is sent to the multiplexing unit 47 without being input to the puncturing unit.

図5において、選択情報=「0」は、入力データエレメントを選択しないことを表し、選択情報=「1」は、入力データエレメントを選択することを表す。例えば、図5に示す選択情報は、入力データ系列から、第2番目、第4番目、第5番目、...、N番目のデータエレメントを選択する旨を規定している。すなわち、このパンクチャリングテーブルを用いてパンクチャリング処理が実行されると、パリティデータ系列Y1k=Y11,Y12,Y13,Y14,Y15,...が順番に入力された場合には、Y12,Y14,Y15,...が選択されることになる。そして、この選択されたデータエレメントは、パリティデータ系列Z1kとして多重化部47へ出力される。   In FIG. 5, selection information = “0” indicates that an input data element is not selected, and selection information = “1” indicates that an input data element is selected. For example, the selection information shown in FIG. 5 includes second, fourth, fifth,. . . , Nth data element is selected. That is, when the puncturing process is executed using this puncturing table, the parity data sequence Y1k = Y11, Y12, Y13, Y14, Y15,. . . Are entered in order, Y12, Y14, Y15,. . . Will be selected. The selected data element is output to the multiplexing unit 47 as a parity data sequence Z1k.

第2のパンクチャリング部46は、基本的に第1のパンクチャリング部45と同じである。また、第2のパンクチャリング部46に設けられるパンクチャリングテーブルも、基本的には第1のパンクチャリング部45に設けられるパンクチャリングテーブルと同じである。ただし、これら2つのテーブルに設定される選択情報は、必ずしも互いに同じである必要はない。   The second puncturing unit 46 is basically the same as the first puncturing unit 45. Further, the puncturing table provided in the second puncturing unit 46 is basically the same as the puncturing table provided in the first puncturing unit 45. However, the selection information set in these two tables is not necessarily the same.

なお、図4に示したCPU52およびメモリ53は、第1のパンクチャリング部45および第2のパンクチャリング部46により共有可能である。さらに、選択情報として1つのパンクチャリングパターンを用意しておき、第1のパンクチャリング部45および第2のパンクチャリング部46がその選択情報を共用するようにしてもよい。   Note that the CPU 52 and the memory 53 shown in FIG. 4 can be shared by the first puncturing unit 45 and the second puncturing unit 46. Furthermore, one puncturing pattern may be prepared as selection information, and the first puncturing unit 45 and the second puncturing unit 46 may share the selection information.

パンクチャリングテーブルは、メモリ53内のRAM領域に格納される。したがって、必要に応じて選択情報を変更することができる。このことにより、所望の符号化率を得ることができる。また、ソースデータのデータ長に応じて、或いは畳込み部の出力系列のデータ長に応じて選択情報のデータ長を変更することも可能である。   The puncturing table is stored in a RAM area in the memory 53. Therefore, the selection information can be changed as necessary. As a result, a desired coding rate can be obtained. It is also possible to change the data length of the selection information according to the data length of the source data or according to the data length of the output sequence of the convolution unit.

次に、パンクチャリングテーブルの作成方法(即ち、選択情報の作成方法)を説明する。以下では、ソースデータuのデータ長をNビット、出力系列Cのデータ長をMビットにする旨が要求されているものとする。この場合、符号化率R=N/Mが要求される。なお、第1の畳込み部43および第2の畳込み部44によりそれぞれ生成される終結ビットは、そのデータ長がソースデータuのデータ長と比べて十分に短いので、以下の説明では無視するものとする。   Next, a method for creating a puncturing table (that is, a method for creating selection information) will be described. In the following, it is assumed that the data length of the source data u is required to be N bits and the data length of the output sequence C is required to be M bits. In this case, coding rate R = N / M is required. Note that the termination bit generated by each of the first convolution unit 43 and the second convolution unit 44 is sufficiently shorter than the data length of the source data u, and is therefore ignored in the following description. Shall.

ソースデータuのデータ長が「N」である場合は、データ系列Xk 、第1の畳込み部43により生成されるパリティデータ系列Y1k、および第2の畳込み部44により生成されるパリティデータ系列Y2kのデータ長は、それぞれ「N」になる。したがって、出力系列Cのデータ長をMビットにするためには、第1のパンクチャリング部45および第2のパンクチャリング部46によりそれぞれ生成されるパリティデータ系列Z1kおよびZ2kの各データ長をそれぞれ「K1 」および「K2 」とした場合、以下の式を満たす必要がある。
N+K1 +K2 =M
ここで、K1 =K2 =Kとすると、下式が得られる。
K=(M−N)/2(ただし、M>N,N>K)
すなわち、この場合、第1のパンクチャリング部45は、N個のデータエレメントから構成されるパリティデータ系列Y1kからK個のデータエレメントを選択してパリティデータ系列Z1kとして出力することになる。同様に、第2のパンクチャリング部46は、N個のデータエレメントから構成されるパリティデータ系列Y2kからK個のデータエレメントを選択してパリティデータ系列Z2kとして出力することになる。
When the data length of the source data u is “N”, the data sequence Xk, the parity data sequence Y1k generated by the first convolution unit 43, and the parity data sequence generated by the second convolution unit 44 The data length of Y2k is “N”. Therefore, in order to set the data length of the output sequence C to M bits, the data lengths of the parity data sequences Z1k and Z2k respectively generated by the first puncturing unit 45 and the second puncturing unit 46 are set to “ In the case of “K1” and “K2”, the following expressions must be satisfied.
N + K1 + K2 = M
Here, if K1 = K2 = K, the following equation is obtained.
K = (MN) / 2 (where M> N, N> K)
That is, in this case, the first puncturing unit 45 selects K data elements from the parity data sequence Y1k composed of N data elements and outputs them as the parity data sequence Z1k. Similarly, the second puncturing unit 46 selects K data elements from the parity data sequence Y2k composed of N data elements and outputs the selected data data as a parity data sequence Z2k.

N個のデータエレメントからK個を選択する際には、パンクチャリングテーブルが利用される。パンクチャリングテーブルに格納される選択情報は、上述したように、入力系列の各データエレメントを選択するか否かを表すので、K個のデータエレメントを選択するには、Nビットの選択情報の中のKビットに「1:選択」割り当て、他のビットに「0:非選択」を割り当てればよい。Nビットの中のKビットに対して「1」を割り当てる方法の具体例を以下に示す。   When selecting K from N data elements, a puncturing table is used. As described above, the selection information stored in the puncturing table indicates whether or not to select each data element of the input sequence. Therefore, in order to select K data elements, the selection information in the N-bit selection information It is only necessary to assign “1: selected” to the K bits and “0: not selected” to the other bits. A specific example of a method of assigning “1” to K bits in N bits is shown below.

(1)複数のシード系列k/n を作成する。「k/n 」は、k個の「1」が均等に割り当てられたnビットの系列である。なお、k=1,2,3,...、n=1,2,3,...である。また、n>kである。シード系列は、例えば、「n」の最大値を10、「k」の最大値を9として作成する。シード系列の一部を示す。なお、各シード系列の先頭ビットには、「0」を割り当てる。
k/n = 2/7 :(0001001)
1/3 :(001)
3/8 :(00100101)
2/5 :(00101)
3/7 :(0010101)
4/9 :(001010101)
5/9 :(010101011)
1/2 :(01)
4/7 :(0110101)
3/5 :(01101)
5/8 :(01110101)
3/4 :(0111)
4/5 :(01111)
5/6 :(011111)
(2) 最適なシード系列を選択する。具体的には、「K/N」≧「k/n 」という条件の下で、下式により得られる値rが最小となる「k/n 」をさがす。
(1) Create a plurality of seed sequences k / n. “K / n” is an n-bit sequence in which k “1” s are evenly allocated. Note that k = 1, 2, 3,. . . , N = 1, 2, 3,. . . It is. Further, n> k. For example, the seed sequence is created with the maximum value of “n” being 10 and the maximum value of “k” being 9. A part of the seed series is shown. Note that “0” is assigned to the first bit of each seed sequence.
k / n = 2/7: (0001001)
1/3: (001)
3/8: (00100101)
2/5: (00101)
3/7: (0010101)
4/9: (001010101)
5/9: (010101011)
1/2: (01)
4/7: (0110101)
3/5: (01101)
5/8: (01110101)
3/4: (0111)
4/5: (01111)
5/6: (011111)
(2) Select an optimal seed sequence. Specifically, under the condition “K / N” ≧ “k / n”, search for “k / n” that minimizes the value r obtained by the following equation.

Figure 2006304348
たとえば、ソースデータuのデータ長Nが「300」であり、パンクチャリング処理によって300個のデータエレメントから155個を選択する場合には、K/N=155/300を代入すれば、「k/n 」として「1/2」が得られる。また、この場合、r=0.01666が得られる。
Figure 2006304348
For example, when the data length N of the source data u is “300” and 155 pieces are selected from 300 data elements by puncturing processing, if K / N = 155/300 is substituted, “k / N” “1/2” is obtained as “n”. In this case, r = 0.01666 is obtained.

(3)上記(2)で選択したシード系列を用いてパンクチャリングテーブルに書き込むべき選択情報のベースパターンを作成する。具体的には、選択したシード系列を繰り返すことにより、データ長=Nのベースパターンを作成する。例えば、上述の例のように、k/n =1/2のシード系列が選択された場合には、シード系列(01)を繰り返すことにより、300ビットのベースパターンを得る。   (3) A base pattern of selection information to be written in the puncturing table is created using the seed sequence selected in (2) above. Specifically, a base pattern of data length = N is created by repeating the selected seed sequence. For example, when a seed sequence of k / n = 1/2 is selected as in the above example, a 300-bit base pattern is obtained by repeating the seed sequence (01).

(4)ベースパターンを修正することにより、選択情報を得る。具体的には、まず、A=r・Nを算出する。そして、上記(4)において作成したベースパターンにおいて、A個の「0」を均等に選択し、それらを「1」に置き換える。なお、ベースパターンの先頭ビットは、選択しない。たとえば、上述の例の場合には、A=0.1666×300=5が得られるので、ベースパターン(01010101...0101)において、5個の「0」が「1」に置き換えられる。   (4) The selection information is obtained by correcting the base pattern. Specifically, first, A = r · N is calculated. Then, in the base pattern created in (4) above, A “0” s are equally selected and replaced with “1”. The first bit of the base pattern is not selected. For example, in the case of the above-described example, A = 0.1666 × 300 = 5 is obtained, so five “0” s are replaced with “1” in the base pattern (01010101... 0101).

上記処理により得られたパターンは、選択情報(パンクチャリングパターン情報)としてパンクチャリングテーブルに格納される。
第1のパンクチャリング部45および第2のパンクチャリング部46にそれぞれ設けられるパンクチャリングテーブルは、一実施例としては、互いに同じものを用いるが、それら2つのテーブルは必ずしも互いに同じである必要はない。ただし、それら2つのテーブルに格納される各選択情報に含まれる「1」の数は、互いに同じであるか、あるいは互いに近接していることが望ましい。各選択情報に含まれる「1」の数の差が互い大きく異なると、復号特性が悪くなる恐れがある。
The pattern obtained by the above processing is stored in the puncturing table as selection information (puncturing pattern information).
The puncturing tables provided in the first puncturing unit 45 and the second puncturing unit 46 are the same as each other as an example, but the two tables are not necessarily the same as each other. . However, it is desirable that the numbers of “1” included in the selection information stored in the two tables are the same or close to each other. If the difference in the number of “1” included in each selection information is greatly different from each other, the decoding characteristics may be deteriorated.

選択情報の先頭ビットを「0」にする理由は以下の通りである。選択情報の先頭ビットは、第1の畳込み部43により生成されるパリティデータ系列Y1k(または、第2の畳込み部43により生成されるパリティデータ系列Y2k)の先頭データエレメントを選択するか否かを表す。パリティデータ系列Y1kの先頭データエレメントは、第1の畳込み部43において、ソースデータuの先頭データエレメントと図3に示したメモリMに格納されている初期値との加算演算により生成される。ところが、この初期値は、一般に、「オール0」であるので、パリティデータ系列Y1kの先頭データエレメントは、ソースデータuの先頭データエレメントそのものである。すなわち、「畳込み」による効果は得られない。したがって、選択情報の先頭ビットに「1」を割り当てることにより、そのパリティデータ系列Y1kの先頭データエレメントを選択して受信装置へ送ったとしても、復号処理において誤り訂正能力を向上させることには寄与しない。   The reason for setting the first bit of the selection information to “0” is as follows. Whether the first bit of the selection information selects the first data element of the parity data sequence Y1k generated by the first convolution unit 43 (or the parity data sequence Y2k generated by the second convolution unit 43) Represents The first data element of the parity data series Y1k is generated by the first convolution unit 43 by adding the head data element of the source data u and the initial value stored in the memory M shown in FIG. However, since the initial value is generally “all 0”, the head data element of the parity data series Y1k is the head data element of the source data u itself. That is, the effect of “convolution” cannot be obtained. Therefore, by assigning “1” to the first bit of the selection information, even if the first data element of the parity data sequence Y1k is selected and sent to the receiving device, it contributes to improving the error correction capability in the decoding process. do not do.

このため、本実施形態では、選択情報の中の「1」を先頭以外の他のデータエレメントを選択するために割り当てることにより、復号処理における誤り訂正能力の向上を図っている。   For this reason, in this embodiment, “1” in the selection information is assigned to select a data element other than the head, thereby improving the error correction capability in the decoding process.

次に、パンクチャリングテーブルを用いたパンクチャリング処理を説明する。第1のパンクチャリング部45は、パリティデータ系列Y1kのデータエレメントを受け取るごとに、パンクチャリングテーブルを参照して、そのデータエレメントを選択するか否かを判断する。選択したデータエレメントは、パリティデータ系列Z1kとして多重化部47へ送出される。一方、選択されなかったデータエレメントは、多重化部47へ送出されることなく廃棄される。この処理は、第2のパンクチャリング部46においても同様である。   Next, puncturing processing using a puncturing table will be described. Each time the first puncturing unit 45 receives a data element of the parity data sequence Y1k, the first puncturing unit 45 refers to the puncturing table and determines whether to select the data element. The selected data element is sent to the multiplexing unit 47 as a parity data sequence Z1k. On the other hand, data elements that are not selected are discarded without being sent to the multiplexing unit 47. This process is the same in the second puncturing unit 46.

図6は、パンクチャリング処理のフローチャートである。この処理は、畳込み部により生成されるパリティデータ系列Yk のデータエレメントがラッチ回路51に書き込まれるごとに実行される。なお、パリティデータ系列Yk は、パリティデータ系列Y1kまたはY2kを表す。即ち、このフローチャートの処理が第1のパンクチャリング部45の動作を表す場合には、Yk =Y1kであり、このフローチャートの処理が第2のパンクチャリング部46の動作を表す場合には、Yk =Y2kである。   FIG. 6 is a flowchart of the puncturing process. This process is executed each time the data element of the parity data series Yk generated by the convolution unit is written in the latch circuit 51. Note that the parity data sequence Yk represents the parity data sequence Y1k or Y2k. That is, when the processing of this flowchart represents the operation of the first puncturing unit 45, Yk = Y1k, and when the processing of this flowchart represents the operation of the second puncturing unit 46, Yk = Y2k.

ステップS1では、ラッチ回路51からデータエレメントを取得する。ステップS2では、ラッチ回路51に書き込まれたデータエレメントがパリティデータ系列Yk 内の第何番目のデータエレメントであるのかを計数するためのカウンタをインクリメントする。このカウント値kは、データエレメントの位置情報あるいはシーケンスナンバに対応する。なお、このカウンタは、1セットのソースデータに対する処理が終了するごとにリセットされる。   In step S1, a data element is acquired from the latch circuit 51. In step S2, the counter for counting the number of data elements in the parity data series Yk is incremented by the counter written in the latch circuit 51. This count value k corresponds to the position information or sequence number of the data element. This counter is reset every time processing for one set of source data is completed.

ステップS3では、上記カウンタのカウント値kを用いて、図5に示すパンクチャリングテーブルを参照する。このことにより、ラッチ回路51に書き込まれたデータエレメントに関する選択情報P(k) が得られる。ステップS4では、ステップS3で得た選択情報P(k) が「1」であるか「0」であるかを調べる。選択情報P(k) =1であれば、ステップS5において、ラッチ回路51に書き込まれたデータエレメントを出力ポート54を介して多重化部47へ送出する。このとき、パンクチャリングテーブルを参照する際に用いたカウント値kも多重化部47へ送る。一方、選択情報P(k) =0であれば、ステップS6において、ラッチ回路51に書き込まれたデータエレメントを廃棄する。   In step S3, the puncturing table shown in FIG. 5 is referred to using the count value k of the counter. As a result, selection information P (k) relating to the data element written in the latch circuit 51 is obtained. In step S4, it is checked whether the selection information P (k) obtained in step S3 is “1” or “0”. If the selection information P (k) = 1, the data element written in the latch circuit 51 is sent to the multiplexing unit 47 via the output port 54 in step S5. At this time, the count value k used when referring to the puncturing table is also sent to the multiplexing unit 47. On the other hand, if the selection information P (k) = 0, the data element written in the latch circuit 51 is discarded in step S6.

ステップS7では、カウント値kが「N」に達したか否かを調べる。カウント値kが「N」に達していれば、1セットのソースデータに対する処理が終了したものとみなし、ステップS8において上記カウンタをリセットする。   In step S7, it is checked whether or not the count value k has reached “N”. If the count value k has reached “N”, it is considered that the processing for one set of source data has been completed, and the counter is reset in step S8.

このように、第1のパンクチャリング部45および第2のパンクチャリング部46は、入力されるNビットのパリティデータ系列Yk からKビットを選択して出力する。なお、この選択処理は、上記ステップS1〜S8を記述したプログラムをCPU52に実行させることにより実現される。   In this way, the first puncturing unit 45 and the second puncturing unit 46 select and output K bits from the input N-bit parity data sequence Yk. This selection process is realized by causing the CPU 52 to execute a program describing the above steps S1 to S8.

第1のパンクチャリング部45および第2のパンクチャリング部46による出力の例を表2に示す。   Table 2 shows examples of outputs from the first puncturing unit 45 and the second puncturing unit 46.

Figure 2006304348
この出力は、入力されるソースデータuが9ビットであり、また、第1のパンクチャリング部45および第2のパンクチャリング部46におけるパンクチャリングパターンPが共に(001101001)であった場合に得られる。
Figure 2006304348
This output is obtained when the input source data u is 9 bits and both the puncturing patterns P in the first puncturing unit 45 and the second puncturing unit 46 are (001110001). .

図7は、多重化部47のブロック図である。多重化部47は、データ系列Xk を保持するためのバッファ61、第1のパンクチャリング部45により生成されたパリティデータ系列Z1kを保持するためのメモリ62、第2のパンクチャリング部46により生成されたパリティデータ系列Z2kを保持するためのメモリ63およびバッファ61、およびメモリ62、63からデータエレメントを読み出して出力する読出し制御部64を備える。   FIG. 7 is a block diagram of the multiplexing unit 47. The multiplexing unit 47 is generated by the buffer 61 for holding the data sequence Xk, the memory 62 for holding the parity data sequence Z1k generated by the first puncturing unit 45, and the second puncturing unit 46. The memory 63 and the buffer 61 for holding the parity data series Z2k, and the read control unit 64 that reads and outputs the data elements from the memories 62 and 63 are provided.

データ系列Xk のデータエレメントは、バッファ61に順番に書き込まれる。パリティデータ系列Z1kは、第1のパンクチャリング部45により選択されたデータエレメントである。これらのデータエレメントは、シーケンスナンバに対応付けられてメモリ62に書き込まれる。各データエレメントに対応するシーケンスナンバは、たとえば、図6を参照しながら説明したカウンタのカウント値kにより指示される。なお、メモリ62は、シーケンスナンバ毎にそれぞれデータエレメントが書き込まれているか否かを表す「有効/無効表示」が設定される。メモリ63の構成は、メモリ62と同じである。   The data elements of the data series Xk are written in the buffer 61 in order. The parity data sequence Z1k is a data element selected by the first puncturing unit 45. These data elements are written in the memory 62 in association with the sequence number. The sequence number corresponding to each data element is indicated by, for example, the count value k of the counter described with reference to FIG. The memory 62 is set to “valid / invalid display” indicating whether or not each data element is written for each sequence number. The configuration of the memory 63 is the same as that of the memory 62.

読出し制御部64は、予め決められた所定の間隔ごとに、バッファ61、およびメモリ62、63の中のいずれか1つから1つのデータエレメントを読み出して出力する。具体的には、下記の手順(1)〜(4)を繰り返し実行することによりデータエレメントを読み出す。
(1)バッファ61から指定されているシーケンスナンバのデータエレメントを読み出す。
(2)上記指定されているシーケンスナンバのデータエレメントがメモリ62に格納されている場合には、それを読み出す。
(3)上記指定されているシーケンスナンバのデータエレメントがメモリ63に格納されている場合には、それを読み出す。
(4)次のシーケンスナンバを指定する。
The read control unit 64 reads and outputs one data element from any one of the buffer 61 and the memories 62 and 63 at predetermined intervals. Specifically, the data element is read by repeatedly executing the following procedures (1) to (4).
(1) Read the data element of the specified sequence number from the buffer 61.
(2) When the data element of the specified sequence number is stored in the memory 62, it is read out.
(3) If the data element of the specified sequence number is stored in the memory 63, it is read out.
(4) Designate the next sequence number.

バッファ61、メモリ62、63が図7に示す状態であった場合に、上記手順(1)〜(4)を繰り返し実行すると、出力系列Cは、以下のようになる。出力系列C=(X1 ,X2 ,X3 ,Y13,Y23,X4 ,Y14,Y24,X5 ,...)
このように、図3に示した誤り訂正符号化装置40は、パンクチャリング部に格納されている選択情報(パンクチャリングパターン)を用いて、誤り訂正のために付加されるパリティデータのデータ量を変えることができる。すなわち、選択情報の設定に従って所望の符号化率Rが得られる。
When the buffer 61 and the memories 62 and 63 are in the state shown in FIG. 7, when the above steps (1) to (4) are repeatedly executed, the output series C is as follows. Output series C = (X1, X2, X3, Y13, Y23, X4, Y14, Y24, X5,...)
As described above, the error correction coding apparatus 40 shown in FIG. 3 uses the selection information (puncturing pattern) stored in the puncturing section to calculate the amount of parity data added for error correction. Can be changed. That is, a desired coding rate R is obtained according to the selection information setting.

次に、上記誤り訂正符号化装置40によって符号化されたデータ系列を復号する復号装置について簡単に説明しておく。復号処理としては、様々な方法が知られているが、基本的には、符号化処理を逆の手順で実行することによりデータ系列を復号する。   Next, a decoding device for decoding the data series encoded by the error correction encoding device 40 will be briefly described. Various methods are known as the decoding process. Basically, the data series is decoded by executing the encoding process in the reverse procedure.

図8は、復号装置のブロック図である。ここでは、誤り訂正符号化装置40の第1のパンクチャリング部45および第2のパンクチャリング部46において互いに同じ選択情報を用いてパリティデータY1kおよびY2kに対してパンクチャリング処理が実行されたものとする。また、この復号装置は、特に図示していないが、誤り訂正符号化装置40において多重化されたデータ系列Xとパリティデータ系列Zとを分離する機能を備えている。   FIG. 8 is a block diagram of the decoding apparatus. Here, the first puncturing unit 45 and the second puncturing unit 46 of the error correction coding apparatus 40 perform the puncturing process on the parity data Y1k and Y2k using the same selection information. To do. Although not specifically shown, this decoding apparatus has a function of separating the data series X and the parity data series Z multiplexed in the error correction encoding apparatus 40.

シリアル/パラレル変換器71は、受信したパリティデータ系列Zをパリティデータ系列Z1kおよびZ2kに分離する。パリティデータ系列Z1kおよびZ2kは、それぞれ誤り訂正符号化装置40の設けられている第1のパンクチャリング部45および第2のパンクチャリング部46により生成された系列である。   The serial / parallel converter 71 separates the received parity data sequence Z into parity data sequences Z1k and Z2k. The parity data sequences Z1k and Z2k are sequences generated by the first puncturing unit 45 and the second puncturing unit 46 provided with the error correction coding device 40, respectively.

第1のデパンクチャリング部72および第2のデパンクチャリング部73は、それぞれ誤り訂正符号化装置40が有するパンクチャリングテーブルと同じテーブルを備え、それぞれパリティデータ系列Z1kおよびZ2kに対して「デパンクチャリング処理」を実行する。   The first depuncturing unit 72 and the second depuncturing unit 73 are provided with the same table as the puncturing table included in the error correction coding apparatus 40, respectively. "Charing process" is executed.

図9を参照しながら、デパンクチャリング処理の一例を説明する。ここでは、パリティデータ系列Z1k=(Z11,Z12,Z13,Z14,Z15)が入力されたものとする。また、パンクチャリングテーブルには図10に示す選択情報が格納されていたものとする。なお、以下では、第1のデパンクチャリング部72の処理を説明するが、第2のデパンクチャリング部73の処理も同じである。   An example of the depuncturing process will be described with reference to FIG. Here, it is assumed that the parity data sequence Z1k = (Z11, Z12, Z13, Z14, Z15) is input. Further, it is assumed that selection information shown in FIG. 10 is stored in the puncturing table. Hereinafter, the process of the first depuncturing unit 72 will be described, but the process of the second depuncturing unit 73 is the same.

第1のデパンクチャリング部72は、パリティデータ系列Z1kを受け取ると、まず、パンクチャリングテーブルのシーケンスナンバ=「1」に対応する選択情報を調べる。この場合、選択情報=「0」なので、第1のデパンクチャリング部72は、「0」を出力する。つづいて、パンクチャリングテーブルのシーケンスナンバ=「2」に対応する選択情報を調べる。この場合、選択情報=「1」なので、第1のデパンクチャリング部72は、パリティデータ系列Z1kの先頭データエレメントである「Z11」を出力する。以下、同様に、第1のデパンクチャリング部72は、選択情報=「0」の場合には「0」を出力し、選択情報=「1」の場合には、パリティデータ系列Z1kのデータエレメントを1つずつ順番に出力していく。この結果、第1のデパンクチャリング部72は、下記のデータ系列を出力する。
出力系列:(0,Z11,0,Z12,0,Z13,0,Z14,Z15)
この出力系列は、パリティデータ系列Y1kとして、第1の復号器74に与えられる。同様に、第2のデパンクチャリング部73は、パリティデータ系列Y2kを生成して第2の復号器75に与える。
When receiving the parity data sequence Z1k, the first depuncturing unit 72 first checks selection information corresponding to the sequence number = “1” in the puncturing table. In this case, since the selection information = “0”, the first depuncturing unit 72 outputs “0”. Subsequently, the selection information corresponding to the sequence number = “2” in the puncturing table is checked. In this case, since selection information = “1”, the first depuncturing section 72 outputs “Z11”, which is the first data element of the parity data sequence Z1k. Hereinafter, similarly, the first depuncturing section 72 outputs “0” when the selection information = “0”, and outputs the data element of the parity data sequence Z1k when the selection information = “1”. Are sequentially output one by one. As a result, the first depuncturing unit 72 outputs the following data series.
Output series: (0, Z11, 0, Z12, 0, Z13, 0, Z14, Z15)
This output sequence is given to the first decoder 74 as a parity data sequence Y1k. Similarly, the second depuncturing section 73 generates a parity data sequence Y2k and gives it to the second decoder 75.

図10は、デパンクチャリング処理のフローチャートである。ここでは、入力データ系列Zに対してデータ系列Yを生成する場合を説明する。データ系列Zおよびデータ系列Yのデータエレメントを、それぞれ「Zi 」「Yk 」と表す。   FIG. 10 is a flowchart of the depuncturing process. Here, the case where the data series Y is produced | generated with respect to the input data series Z is demonstrated. The data elements of the data series Z and the data series Y are represented as “Zi” and “Yk”, respectively.

ステップS11では、「k」を用いてパンクチャリングテーブルをサーチし、対応する選択情報を取得する。ステップS12では、ステップS11で取得した選択情報が「1」であるか「0」であるのか調べる。取得した選択情報が「1」であれば、ステップS13において、データ系列Yk のデータエレメントとしてデータ系列Zi のデータエレメントを1つ出力する。そして、ステップS14において、「i」をインクリメントする。一方、取得した選択情報が「0」であったときには、ステップS15において、データ系列Yk のデータエレメントとして「0」を出力する。   In step S11, the puncturing table is searched using “k”, and the corresponding selection information is acquired. In step S12, it is checked whether the selection information acquired in step S11 is “1” or “0”. If the acquired selection information is “1”, in step S13, one data element of the data series Zi is output as the data element of the data series Yk. In step S14, “i” is incremented. On the other hand, if the acquired selection information is “0”, “0” is output as the data element of the data series Yk in step S15.

続いて、ステップS16では、「k」をインクリメントする。そして、ステップS17において、「k」が「N」に達したか否かを調べる。「N」は、ソースデータのデータ長である。「k」が「N」に達していなければ、ステップS11に戻り、「k」が「N」に達していれば、「k」及び「i」をリセットする。   Subsequently, in step S16, “k” is incremented. In step S17, it is checked whether or not “k” has reached “N”. “N” is the data length of the source data. If “k” has not reached “N”, the process returns to step S11. If “k” has reached “N”, “k” and “i” are reset.

図8に戻る。第1のデパンクチャリング部72により生成されたパリティデータ系列Y1kは、第1の復号器74に与えられる。同様に、第2のデパンクチャリング部73により生成されたパリティデータ系列Y2kは、第2の復号器75に与えられる。第1の復号器74は、パリティデータ系列Y1kを利用しながら受信したデータ系列Xk を復号する。また、第2の復号器75は、パリティデータ系列Y2kを利用しながら第1の復号器74の出力を復号する。   Returning to FIG. The parity data sequence Y1k generated by the first depuncturing unit 72 is provided to the first decoder 74. Similarly, the parity data sequence Y2k generated by the second depuncturing unit 73 is provided to the second decoder 75. The first decoder 74 decodes the received data sequence Xk using the parity data sequence Y1k. The second decoder 75 decodes the output of the first decoder 74 using the parity data sequence Y2k.

第2の復号器75の出力は、判定部76において予め決められた閾値と比較される。そして、デインターリーバ77においてその比較結果に対してデインターリービング処理(誤り訂正符号化装置40におけるランダム化処理の逆の処理)が実行され、その結果が復号データとして出力される。   The output of the second decoder 75 is compared with a predetermined threshold value in the determination unit 76. Then, the deinterleaver 77 performs a deinterleaving process (a process reverse to the randomizing process in the error correction coding apparatus 40) on the comparison result, and outputs the result as decoded data.

なお、パリティデータ系列を生成する処理を除く復号処理は、既知の技術を利用して実現可能である。たとえば、米国特許5446747に記載されている。したがって、ここでは、復号処理についての詳しい説明を省略する。   Note that the decoding process excluding the process of generating the parity data series can be realized using a known technique. For example, it is described in US Pat. No. 5,446,747. Accordingly, detailed description of the decoding process is omitted here.

復号精度を向上させるためには、図11に示すように、上記構成の復号装置を直列に接続すればよい。この場合、図8に示した復号装置が1つの復号モジュールに相当する。各復号モジュールは、受信データ系列(復号すべきデータ系列Xおよびパリティデータ系列)、および前段の復号モジュールにおけるデータ系列Xの予測値(系列T)を受け取り、復号データSを生成すると共に、新たにデータ系列Xを予測する。この新たに予測されたデータ系列Xは、次段の復号モジュールに渡される。   In order to improve the decoding accuracy, as shown in FIG. 11, the decoding devices having the above-described configuration may be connected in series. In this case, the decoding device shown in FIG. 8 corresponds to one decoding module. Each decoding module receives a received data sequence (data sequence X and parity data sequence to be decoded) and a predicted value (sequence T) of the data sequence X in the preceding decoding module, generates decoded data S, and newly A data series X is predicted. This newly predicted data series X is passed to the next decoding module.

上記構成においては、直列に接続される復号モジュールの数を増やすことにより、復号精度は向上する。たとえば、復号モジュール70−1から出力される復号データSよりも復号モジュール70−4から出力される復号データSの方が復号精度は高くなる。なお、この構成の動作は、米国特許5446747に記載されている。   In the above configuration, the decoding accuracy is improved by increasing the number of decoding modules connected in series. For example, the decoded data S output from the decoding module 70-4 has higher decoding accuracy than the decoded data S output from the decoding module 70-1. The operation of this configuration is described in US Pat. No. 5,446,747.

図11に構成において、図8に示したシリアル/パラレル変換部71、第1のデパンクチャリング部72、および第2のデパンクチャリング部73は、第1段目の復号モジュール70−1に対して設ければよい。   In the configuration shown in FIG. 11, the serial / parallel converter 71, the first depuncturing unit 72, and the second depuncturing unit 73 shown in FIG. 8 are connected to the decoding module 70-1 at the first stage. Should be provided.

次に、本発明の他の実施形態の誤り訂正符号化装置について説明する。従来の誤り訂正符号化装置は、上述したように、一般に、符号化率が固定的に与えられていた。たとえば、図20に示した構成では、符号化率R=1/2であり、図21に示した構成では、符号化率=1/3であった。以下に説明する誤り訂正符号化装置では、任意の符号化率が得られる。特に、1/3よりも小さい任意の符号化率が得られる。   Next, an error correction coding apparatus according to another embodiment of the present invention will be described. As described above, the conventional error correction coding apparatus generally has a fixed coding rate. For example, in the configuration shown in FIG. 20, the coding rate R = 1/2, and in the configuration shown in FIG. 21, the coding rate = 1/3. In the error correction coding apparatus described below, an arbitrary coding rate can be obtained. In particular, an arbitrary coding rate smaller than 1/3 can be obtained.

図12は、本実施形態の誤り訂正符号化装置40と従来の装置との出力の差異を示す図である。ここでは、従来の装置として、図21に示した装置を採り上げる。従来の装置では、図23を参照しながら説明したように、たとえば、ソースデータのデータ長が666ビット、要求されている出力データ長が1500ビットである場合には、符号化データに対して168ビットのダミーデータが付与される。この場合、エラーを訂正するために使用されるパリティデータは、666ビットとなる。   FIG. 12 is a diagram showing a difference in output between the error correction coding apparatus 40 of the present embodiment and the conventional apparatus. Here, the apparatus shown in FIG. 21 is taken up as a conventional apparatus. In the conventional apparatus, as described with reference to FIG. 23, for example, when the data length of the source data is 666 bits and the requested output data length is 1500 bits, the encoded data has 168 bits. Bit dummy data is added. In this case, the parity data used to correct the error is 666 bits.

一方、誤り訂正符号化装置40を使用した場合には、図p1に示すように、666ビットのパリティデータ系列Y1KおよびY2Kから、それぞれ417ビットのパリティデータ系列Z1KおよびZ2Kが生成される。この結果、エラーを訂正するために使用されるパリティデータは、834ビットとなる。すなわち、従来の装置と比較して、エラーを訂正するために使用されるデータ量が多くなる。したがって、本実施形態においては、復号能力が高くなる。   On the other hand, when the error correction coding apparatus 40 is used, as shown in FIG. P1, 417-bit parity data sequences Z1K and Z2K are generated from the 666-bit parity data sequences Y1K and Y2K, respectively. As a result, the parity data used to correct the error is 834 bits. That is, the amount of data used to correct errors is increased compared to conventional devices. Therefore, in this embodiment, the decoding capability is increased.

図13は、本発明の他の形態の誤り訂正符号化装置80の構成図である。図13において、インターリーバ42、第1の畳込み部43、第2の畳込み部44、および多重化部47は、図3に示したものと同じである。また、図13では、入力I/F部41を省略している。   FIG. 13 is a configuration diagram of an error correction coding apparatus 80 according to another embodiment of the present invention. In FIG. 13, the interleaver 42, the first convolution unit 43, the second convolution unit 44, and the multiplexing unit 47 are the same as those shown in FIG. In FIG. 13, the input I / F unit 41 is omitted.

誤り訂正符号化装置80の特徴は、ビット重複部81を設けたことである。ビット重複部81は、所望の符号化率を得るために、ソースデータuの中の所定数のデータエレメントを重複させる。   A feature of the error correction coding apparatus 80 is that a bit duplication unit 81 is provided. The bit duplication unit 81 duplicates a predetermined number of data elements in the source data u in order to obtain a desired coding rate.

ビット重複部81の動作を説明する。以下では、ソースデータuのデータ長がNビット、出力データ系列のデータ長がMビットであるとする。また、M>3Nとする。すなわち、符号化率として1/3よりも小さい値が要求されている場合を想定する。   The operation of the bit overlap unit 81 will be described. In the following, it is assumed that the data length of the source data u is N bits and the data length of the output data series is M bits. Further, it is assumed that M> 3N. That is, a case where a value smaller than 1/3 is required as the coding rate is assumed.

ビット重複部81においてソースデータuの中のrビットを重複させることによりデータ系列Xk を得るものとすると、データ系列Xk 、パリティデータ系列Y1k、およびパリティデータ系列Y2kの各データ長は、それぞれ「N+r」になる。したがって、出力データ系列のデータ長をMビットにするためには、ビット重複部81において重複させるべきビット数は下式により得られる。
(N+r)×3=M
∴r=M/3−N
たとえば、ソースデータuのデータ長を250ビット、要求される出力系列のデータ長を900ビットとすると、上式にN=250、M=900を代入することにより、r=50が得られる。
Assuming that the data series Xk is obtained by duplicating r bits in the source data u in the bit duplication unit 81, the data lengths of the data series Xk, the parity data series Y1k, and the parity data series Y2k are “N + r”, respectively. "become. Therefore, in order to set the data length of the output data series to M bits, the number of bits to be duplicated in the bit duplication unit 81 is obtained by the following equation.
(N + r) × 3 = M
∴r = M / 3−N
For example, assuming that the data length of the source data u is 250 bits and the data length of the required output sequence is 900 bits, r = 50 is obtained by substituting N = 250 and M = 900 into the above equation.

ビット重複部81は、望ましくは、「拘束長+1」ビットごとにソースデータuのデータエレメントを重複させる。ここで、拘束長は、畳込み処理においてメモリに保持されるデータのビット数である。たとえば、図13に示す構成においては、拘束長=2なので、3ビットごとにソースデータuのデータエレメントが重複される。   The bit duplication unit 81 preferably duplicates the data element of the source data u for each “constraint length + 1” bit. Here, the constraint length is the number of bits of data held in the memory in the convolution process. For example, in the configuration shown in FIG. 13, since the constraint length = 2, the data element of the source data u is duplicated every 3 bits.

このように、所定のデータエレメントを重複させたデータ系列を符号化して伝送すると、符号技術において既知であるように、データエレメントが重複している部分の後続のデータエレメントに対する復号処理の精度が向上する。   As described above, when a data sequence in which predetermined data elements are overlapped is encoded and transmitted, the accuracy of decoding processing for subsequent data elements in a portion where the data elements overlap is improved as is known in the encoding technology. To do.

図14は、ビット重複部81の動作例を示す図である。ここでは、ソースデータuのデータ長が7ビット、拘束長=2、要求される出力系列のデータ長が27ビットの場合を示している。この場合、2個のデータエレメントが重複される。また、3ビット毎にデータエレメントが重複される。この処理により、誤り訂正符号化装置80の符号化率は、「7/27」になる。   FIG. 14 is a diagram illustrating an operation example of the bit duplication unit 81. Here, a case is shown where the data length of the source data u is 7 bits, the constraint length = 2, and the data length of the required output sequence is 27 bits. In this case, two data elements are duplicated. In addition, data elements are duplicated every 3 bits. By this processing, the coding rate of the error correction coding apparatus 80 becomes “7/27”.

図15は、ビット重複部81の動作を説明するフローチャートである。ここでは、ソースデータu(u0 ,u1 ,u2 ,u3 ,...,ui ,...)が入力されたものとする。また、重複すべきデータエレメントの数を「r」とする。さらに、xビット毎にデータエレメントを重複する。   FIG. 15 is a flowchart for explaining the operation of the bit duplication unit 81. Here, it is assumed that source data u (u0, u1, u2, u3,..., Ui,...) Has been input. The number of data elements that should be duplicated is “r”. Furthermore, data elements are duplicated every x bits.

ステップS21では、ソースデータuのデータエレメントui を取得する。以下では、「i」をシーケンスナンバを呼ぶことにする。ステップS22では、ビット重複数jが重複すべきデータエレメントの数である「r」に達しているか否かを調べる。ビット重複数jは、当該ソースデータuにおいて既にビット重複を実行した回数を表す。j>rであれば、すでに必要な数のビット重複を終了しているものとみなし、ステップS23において、取得したデータエレメントui をそのまま出力する。一方、j≦rであれば、更にビット重複を行う必要があるとみなし、ステップS24に進む。   In step S21, the data element ui of the source data u is acquired. Hereinafter, “i” is referred to as a sequence number. In step S22, it is checked whether or not the bit overlap number j has reached “r” which is the number of data elements to be overlapped. The bit duplication number j represents the number of times bit duplication has already been executed in the source data u. If j> r, it is considered that the necessary number of bit duplications have already been completed, and in step S23, the acquired data element ui is output as it is. On the other hand, if j ≦ r, it is considered that further bit duplication needs to be performed, and the process proceeds to step S24.

ステップS24では、シーケンスナンバiが「x」の整数倍であるか否かを調べる。シーケンスナンバiが「x」の整数倍でなければ、ビット重複を行わないので、ステップS23へ進む。一方、シーケンスナンバiが「x」の整数倍であったときには、ビット重複を行う。すなわち、ステップS25およびS26においてそれぞれデータエレメントui を出力する。このことにより、データエレメントui は重複される。続いて、ステップS27において、ビット重複数jをインクリメントする。   In step S24, it is checked whether or not the sequence number i is an integer multiple of “x”. If the sequence number i is not an integer multiple of “x”, no bit duplication is performed, and the process proceeds to step S23. On the other hand, when the sequence number i is an integral multiple of “x”, bit duplication is performed. That is, the data element ui is output in steps S25 and S26, respectively. As a result, the data element ui is duplicated. Subsequently, in step S27, the bit overlap number j is incremented.

ステップS28では、シーケンスナンバiが「N」に達したか否かを調べる。シーケンスナンバiが「N」に達していない場合には、ステップS29においてそのシーケンスナンバiをインクリメントした後、ステップS21に戻って次のデータエレメントを取得する。一方、シーケンスナンバiが「N」に達している場合には、当該ソースデータのすべてのデータエレメントについてステップS21〜S29の処理が実行されたものとみなし、ステップS30において「i」および「j」をリセットした後に処理を終了する。   In step S28, it is checked whether or not the sequence number i has reached “N”. If the sequence number i has not reached “N”, the sequence number i is incremented in step S29, and the process returns to step S21 to acquire the next data element. On the other hand, if the sequence number i has reached “N”, it is considered that the processing of steps S21 to S29 has been performed for all the data elements of the source data, and “i” and “j” are determined in step S30. The process ends after resetting.

このように、図13に示した誤り訂正符号化装置80は、所望の符号化率を得るために、ソースデータの中の所定数のデータエレメントを重複させる。換言すれば、ソースデータの中の所定数のデータエレメントを重複させることにより、所望の符号化率が得られる。また、重複ビットは、復号処理において利用されるので、伝送路の誤り率を小さくすることができる。   As described above, the error correction coding apparatus 80 shown in FIG. 13 overlaps a predetermined number of data elements in the source data in order to obtain a desired coding rate. In other words, a desired coding rate can be obtained by overlapping a predetermined number of data elements in the source data. In addition, since the duplicate bits are used in the decoding process, the error rate of the transmission path can be reduced.

なお、誤り訂正符号化装置80によって符号化されたデータ系列を復号する復号装置は、通常の復号処理を実行した後に、ビット重複部81による処理を逆の手順で実行する機能を設ければよい。   Note that the decoding device that decodes the data series encoded by the error correction encoding device 80 only needs to have a function of executing the processing by the bit duplication unit 81 in the reverse procedure after executing the normal decoding processing. .

図16は、本発明の更に他の形態の誤り訂正符号化装置90の構成図である。図16において、インターリーバ42、第1の畳込み部43、第2の畳込み部44、および多重化部47は、図3に示したものと同じである。   FIG. 16 is a configuration diagram of an error correction coding apparatus 90 according to still another embodiment of the present invention. In FIG. 16, the interleaver 42, the first convolution unit 43, the second convolution unit 44, and the multiplexing unit 47 are the same as those shown in FIG.

誤り訂正符号化装置90の特徴は、ダミービット挿入部91を設けたことである。ダミービット挿入部91は、所望の符号化率を得るために、ソースデータuに対して所定数のダミービットを挿入する。   The feature of the error correction coding apparatus 90 is that a dummy bit insertion unit 91 is provided. The dummy bit insertion unit 91 inserts a predetermined number of dummy bits into the source data u in order to obtain a desired coding rate.

ダミービット挿入部91の動作を説明する。以下では、ソースデータuのデータ長がNビット、出力データ系列のデータ長がMビットであるとする。また、M>3Nとする。すなわち、符号化率として1/3よりも小さい値が要求されている場合を想定する。   The operation of the dummy bit insertion unit 91 will be described. In the following, it is assumed that the data length of the source data u is N bits and the data length of the output data series is M bits. Further, it is assumed that M> 3N. That is, a case where a value smaller than 1/3 is required as the coding rate is assumed.

ダミービット挿入部91においてソースデータuに対してrビットのダミービットを挿入することによりデータ系列Xk を得る場合、データ系列Xk 、パリティデータ系列Y1k、及びパリティデータ系列Y2kの各データ長は、それぞれ「N+r」になる。従って、出力データ系列のデータ長をMビットにするためには、ダミービット挿入部91において挿入すべきビット数は下式により得られる。
(N+r)×3=M
∴r=M/3−N
ダミービット挿入部91は、望ましくは、拘束長と同じ長さのダミービットを挿入する。拘束長は、上述したように、畳込み処理においてメモリに保持されるデータのビット数である。したがって、図13に示す構成においては、ダミービットは、2ビットを1単位としてソースデータuに挿入される。
When data sequence Xk is obtained by inserting r dummy bits into source data u in dummy bit insertion unit 91, the data lengths of data sequence Xk, parity data sequence Y1k, and parity data sequence Y2k are respectively “N + r”. Therefore, in order to set the data length of the output data series to M bits, the number of bits to be inserted in the dummy bit insertion unit 91 is obtained by the following equation.
(N + r) × 3 = M
∴r = M / 3−N
The dummy bit insertion unit 91 preferably inserts a dummy bit having the same length as the constraint length. As described above, the constraint length is the number of bits of data held in the memory in the convolution process. Therefore, in the configuration shown in FIG. 13, the dummy bits are inserted into the source data u with 2 bits as one unit.

ダミービットとしては、「1」または「0」を用いる。ここで、もしダミービットとして「1」を用いるとすると、拘束長=2の場合には、ダミーデータとして「11」が挿入される。例えば、ソースデータuのデータ長を250ビット、要求される出力系列のデータ長を900ビットとすると、r=50が得られる。すなわち、ソースデータuに対して50ビットのダミービットを挿入することが要求される。ここで、拘束長=2とすると、ソースデータuに対して「11」が25カ所に挿入されることになる。挿入位置は、均等に分散させることが望ましい。   As the dummy bit, “1” or “0” is used. Here, if “1” is used as a dummy bit, “11” is inserted as dummy data when the constraint length = 2. For example, if the data length of the source data u is 250 bits and the data length of the required output sequence is 900 bits, r = 50 is obtained. That is, it is required to insert 50 dummy bits into the source data u. Here, assuming that the constraint length = 2, “11” is inserted into the source data u at 25 locations. It is desirable that the insertion positions are evenly distributed.

このように、ダミーデータとして「1」が挿入されたデータ系列を符号化して伝送すると、符号技術において既知であるように、そのダミービットの後続のデータエレメントに対する復号処理の精度が向上する。   As described above, when a data series in which “1” is inserted as dummy data is encoded and transmitted, the accuracy of the decoding process for the data element subsequent to the dummy bit is improved, as is known in the encoding technology.

なお、図22および図23を参照しながら説明したように、従来の誤り訂正符号化装置においてもしばしばダミーデータが使用されていた。しかしながら、従来の方法では、符号化されたデータ系列に対してダミーデータを付加していたのに対し、誤り訂正符号化装置90では、ソースデータにダミービットを挿入し、そのダミービットが挿入されたソースデータを符号化する構成である。即ち、従来の方法においては、ダミーデータは、「無意味なデータ」であったが、誤り訂正符号化装置80においては、ダミービットは、復号処理において事前確率尤度として利用されるので、有用なデータである。   As described with reference to FIGS. 22 and 23, dummy data is often used also in the conventional error correction coding apparatus. However, in the conventional method, dummy data is added to the encoded data series, whereas in the error correction coding apparatus 90, dummy bits are inserted into the source data, and the dummy bits are inserted. The source data is encoded. That is, in the conventional method, the dummy data is “meaningless data”. However, in the error correction coding apparatus 80, the dummy bit is used as a prior probability likelihood in the decoding process, and thus useful. It is a lot of data.

図17は、ダミービット挿入部91の動作例を示す図である。ここでは、ソースデータuのデータ長が7ビット、拘束長=2、要求される出力系列のデータ長が27ビットの場合を示している。この場合、ソースデータuに対して2ビットのダミービットを挿入することにより、符号化率=7/27を実現している。   FIG. 17 is a diagram illustrating an operation example of the dummy bit insertion unit 91. Here, a case is shown where the data length of the source data u is 7 bits, the constraint length = 2, and the data length of the required output sequence is 27 bits. In this case, the coding rate = 7/27 is realized by inserting 2 dummy bits into the source data u.

このように、図16に示した誤り訂正符号化装置90は、所望の符号化率を得るために、ソースデータの中の所定数のダミービットを挿入する。換言すれば、ソースデータの中の所定数のダミービットを挿入することにより、所望の符号化率が得られる。また、挿入されたダミービットは、復号処理において利用されるので、伝送路の誤り率を小さくすることができる。   As described above, the error correction coding apparatus 90 shown in FIG. 16 inserts a predetermined number of dummy bits in the source data in order to obtain a desired coding rate. In other words, a desired coding rate can be obtained by inserting a predetermined number of dummy bits in the source data. In addition, since the inserted dummy bits are used in the decoding process, the error rate of the transmission path can be reduced.

なお、誤り訂正符号化装置90によって符号化されたデータ系列を復号する復号装置は、通常の復号処理を実行した後に、ダミービットを除去する機能を設ければよい。
上記図3、図13、および図16に示した誤り訂正符号化装置は、それぞれ互いに並列に接続された2つの畳込み部を備える構成であったが、本発明は、この構成に限定されるものではない。すなわち、本発明は、互いに並列に接続された複数の畳込み部を有する装置に適用可能である。
Note that the decoding device that decodes the data sequence encoded by the error correction encoding device 90 may be provided with a function of removing dummy bits after executing a normal decoding process.
The error correction coding apparatus shown in FIGS. 3, 13, and 16 has a configuration including two convolution units connected in parallel to each other, but the present invention is limited to this configuration. It is not a thing. That is, the present invention can be applied to a device having a plurality of convolution units connected in parallel to each other.

図18は、m個の畳込み部を備える誤り訂正符号化装置100のブロック図である。畳込み部101−1〜1−1−mは、それぞれソースデータに対して畳み処理を実行する。畳込み部101−2〜1−1−mに対して互いに異なるインターリーバが設けられている。このことにより、畳込み部101−1〜1−1−mに対して互いに異なる系列が与えられる。   FIG. 18 is a block diagram of an error correction coding apparatus 100 including m convolution units. The convolution units 101-1 to 1-1-m each perform a convolution process on the source data. Different interleavers are provided for the convolution units 101-2 to 1-1-m. As a result, different sequences are given to the convolution units 101-1 to 1-1-m.

パンクチャリング部102は、畳込み部101−1〜1−1−mからそれぞれ出力されるパリティデータ系列Y1k〜Ymkのから所定数のデータエレメントを選択して出力する。たとえば、ソースデータuのデータ長をNビット、出力系列Cのデータ長をMビットである場合、すなわち符号化率=N/Mである場合、パンクチャリング部102は、以下のようにしてデータエレメントを選択する。ここで、各畳込み部101−1〜1−1−mは、Nビットの系列が与えられたときにNビットのパリティデータを出力するものとする。   The puncturing unit 102 selects and outputs a predetermined number of data elements from the parity data sequences Y1k to Ymk respectively output from the convolution units 101-1 to 1-1-m. For example, when the data length of the source data u is N bits and the data length of the output sequence C is M bits, that is, when the coding rate is N / M, the puncturing unit 102 performs the data element as follows: Select. Here, each convolution unit 101-1 to 1-1-m outputs N-bit parity data when an N-bit sequence is given.

パンクチャリング部102によりパリティデータ系列Y1k〜YmkからそれぞれK1 〜Km 個のデータエレメントを選択するものとすると、下式が得られる。
N+K1 +K2 +K3 +・・・+Km =M
ここで、K1 =K2 =K3 =・・・=Km =Kとすると、下式が得られる。
K=(M−N)/m
∴符号化率R=N/M=(M−m・K)/M (ただし、M>N,N>K)
このように、誤り訂正符号化装置の符号化率Rは、並列に設けられる畳込み部の数、およびNビットの系列から選択すべきデータエレメントの数に応じて決めることができる。
When the puncturing unit 102 selects K1 to Km data elements from the parity data series Y1k to Ymk, respectively, the following equations are obtained.
N + K1 + K2 + K3 +... + Km = M
Here, if K1 = K2 = K3 =... = Km = K, the following equation is obtained.
K = (MN) / m
∴Coding rate R = N / M = (M−m · K) / M (where M> N, N> K)
As described above, the coding rate R of the error correction coding apparatus can be determined according to the number of convolution units provided in parallel and the number of data elements to be selected from the N-bit sequence.

なお、上記実施例では、図3、図13、図16に示す誤り訂正符号化装置が互いに独立しているものとして説明したが、これらの装置を任意に組み合わせることができる。たとえば、図3に示した誤り訂正符号化装置40の入力部に、図13に示したビット重複部81あるいは図16に示したダミービット挿入部91を設けるようにしてもよい。   In the above embodiment, the error correction coding apparatuses shown in FIGS. 3, 13, and 16 have been described as being independent of each other. However, these apparatuses can be arbitrarily combined. For example, the bit duplication unit 81 shown in FIG. 13 or the dummy bit insertion unit 91 shown in FIG. 16 may be provided in the input unit of the error correction coding apparatus 40 shown in FIG.

また、上記実施例の誤り訂正符号化装置は、組織符号を採用すると共に、畳込み処理を実行する構成を採用していた。しかしながら、本発明は、この構成に限定されるものではない。すなわち、本発明の誤り訂正符号化装置は、必ずしも組織符号に限定されるものではなく、また、必ずしも畳込み部を含む構成に限定されるものでもない。   In addition, the error correction coding apparatus of the above embodiment employs a configuration that executes a convolution process while employing a systematic code. However, the present invention is not limited to this configuration. That is, the error correction coding apparatus of the present invention is not necessarily limited to the systematic code, and is not necessarily limited to the configuration including the convolution unit.

図19は、組織符号に限定されない誤り訂正符号化装置のブロック図である。誤り訂正符号化装置110は、ソース系列を符号化するための複数のエンコーダ111を有する。各エンコーダ111は、畳込み符号であってもよいし、他のブロック符号(例えば、ハミング符号、BCH符号など)であってもよい。また、各エンコーダ111に与えられる系列が互いに異なるようにインターリーバ112が設けられる。パンクチャリング処理および多重化処理については、上述した実施例の構成を利用することができる。   FIG. 19 is a block diagram of an error correction coding apparatus that is not limited to systematic codes. The error correction coding apparatus 110 has a plurality of encoders 111 for coding the source sequence. Each encoder 111 may be a convolutional code or another block code (for example, a Hamming code, a BCH code, etc.). Also, an interleaver 112 is provided so that the sequences given to the encoders 111 are different from each other. For the puncturing process and the multiplexing process, the configuration of the above-described embodiment can be used.

本実施形態の誤り訂正符号化装置が適用される移動体通信システムの構成図である。1 is a configuration diagram of a mobile communication system to which an error correction coding apparatus of the present embodiment is applied. 本実施形態の誤り訂正符号化装置が適用される記憶装置の構成図である。It is a block diagram of the memory | storage device with which the error correction encoding apparatus of this embodiment is applied. 本発明の一実施形態の誤り訂正符号化装置の構成図である。It is a block diagram of the error correction coding apparatus of one Embodiment of this invention. パンクチャリング部のブロック図である。It is a block diagram of a puncturing unit. パンクチャリングテーブルの一例を示す図である。It is a figure which shows an example of a puncturing table. パンクチャリング処理のフローチャートである。It is a flowchart of a puncturing process. 多重化部のブロック図である。It is a block diagram of a multiplexing part. 復号装置のブロック図である。It is a block diagram of a decoding apparatus. デパンクチャリング処理を説明する図である。It is a figure explaining a depuncturing process. デパンクチャリング処理のフローチャートである。It is a flowchart of a depuncturing process. 復号精度を向上させた復号装置の一例のブロック図である。It is a block diagram of an example of the decoding apparatus which improved the decoding precision. 本実施形態の誤り訂正符号化装置の出力と従来の装置の出力との差異を示す図である。It is a figure which shows the difference between the output of the error correction coding apparatus of this embodiment, and the output of the conventional apparatus. 本発明の他の形態の誤り訂正符号化装置の構成図である。It is a block diagram of the error correction coding apparatus of the other form of this invention. ビット重複部の動作を説明する図である。It is a figure explaining operation | movement of a bit duplication part. ビット重複部の動作を説明するフローチャートである。It is a flowchart explaining operation | movement of a bit duplication part. 本発明のさらに他の形態の誤り訂正符号化装置の構成図である。It is a block diagram of the error correction coding apparatus of the further another form of this invention. ダミービット挿入部の動作を説明する図である。It is a figure explaining operation | movement of a dummy bit insertion part. m個の畳込み部を備える誤り訂正符号化装置のブロック図である。It is a block diagram of an error correction coding apparatus provided with m convolution parts. 組織符号に限定されない誤り訂正符号化装置のブロック図である。It is a block diagram of an error correction coding apparatus not limited to a systematic code. 畳込み符号を用いた既存の誤り訂正符号化装置の一例のブロック図である。It is a block diagram of an example of the existing error correction encoding apparatus using a convolutional code. 図20に示した誤り訂正符号化装置の変形例のブロック図である。FIG. 21 is a block diagram of a modified example of the error correction coding apparatus shown in FIG. 20. (a)は、図20に示す誤り訂正符号化装置を使用してソースデータを符号化して固定長のフレームに格納する場合の処理を説明する図である。(b)は、フレームに格納されるデータを模式的に表した図である。(A) is a figure explaining the process in the case of encoding source data using the error correction encoding apparatus shown in FIG. 20, and storing in a fixed length frame. (B) is a diagram schematically showing data stored in a frame. (a)は、図21に示す誤り訂正符号化装置を使用してソースデータを符号化して固定長のフレームに格納する場合の処理を説明する図である。(b)は、フレームに格納されるデータを模式的に表した図である。(A) is a figure explaining the process in the case of encoding source data using the error correction encoding apparatus shown in FIG. 21, and storing in a fixed length frame. (B) is a diagram schematically showing data stored in a frame.

符号の説明Explanation of symbols

10 基地局
11、24 エンコーダ
20 移動機
30 記憶装置
31 エンコーダ
40 誤り訂正符号化装置
41 入力I/F部
42 インターリーバ
43 第1の畳込み部
44 第2の畳込み部
45 第1のパンクチャリング部
46 第2のパンクチャリング部
47 多重化部
81 ビット重複部
91 ダミービット挿入部
DESCRIPTION OF SYMBOLS 10 Base station 11, 24 Encoder 20 Mobile device 30 Memory | storage device 31 Encoder 40 Error correction coding apparatus 41 Input I / F part 42 Interleaver 43 1st convolution part 44 2nd convolution part 45 1st puncturing Unit 46 second puncturing unit 47 multiplexing unit 81 bit duplication unit 91 dummy bit insertion unit

Claims (1)

ソースデータを符号化して第1のパリティデータを生成する第1のエンコーダと、
上記ソースデータについてインターリーブ処理を行ってランダム化データを生成するインターリーバと、
上記ランダム化データを符号化して第2のパリティデータを生成する第2のエンコーダと、
上記ソースデータのデータ長および送信フレームに含まれる出力系列のデータ長に基づいて決まる符号化率に対応して決定されるビット数のデータエレメントを上記第1および第2のパリティデータから各々同数又はほぼ同数選択して第1および第2の選択データを生成する選択手段と、
を有する符号化装置。
A first encoder that encodes source data to generate first parity data;
An interleaver that performs interleaving on the source data to generate randomized data;
A second encoder that encodes the randomized data to generate second parity data;
The number of data elements determined in accordance with the coding rate determined based on the data length of the source data and the data length of the output sequence included in the transmission frame is the same or different from the first and second parity data, respectively. Selection means for selecting approximately the same number to generate the first and second selection data;
An encoding device.
JP2006168226A 2006-06-19 2006-06-19 Error correction coding device Expired - Lifetime JP4308226B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006168226A JP4308226B2 (en) 2006-06-19 2006-06-19 Error correction coding device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006168226A JP4308226B2 (en) 2006-06-19 2006-06-19 Error correction coding device

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP10232580A Division JP2000068862A (en) 1998-08-19 1998-08-19 Error correction coder

Publications (2)

Publication Number Publication Date
JP2006304348A true JP2006304348A (en) 2006-11-02
JP4308226B2 JP4308226B2 (en) 2009-08-05

Family

ID=37472009

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006168226A Expired - Lifetime JP4308226B2 (en) 2006-06-19 2006-06-19 Error correction coding device

Country Status (1)

Country Link
JP (1) JP4308226B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8028215B2 (en) 2007-05-04 2011-09-27 Samsung Electronics Co., Ltd. Error control code apparatuses and methods of using the same

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8028215B2 (en) 2007-05-04 2011-09-27 Samsung Electronics Co., Ltd. Error control code apparatuses and methods of using the same

Also Published As

Publication number Publication date
JP4308226B2 (en) 2009-08-05

Similar Documents

Publication Publication Date Title
US6519732B1 (en) Error-correcting encoding apparatus
US7246294B2 (en) Method for iterative hard-decision forward error correction decoding
US9130594B2 (en) Continuously interleaved error correction
JP2006295975A (en) Transmission system including error correcting circuit, interleaver and puncturing or repeating device
CA2689292A1 (en) Computationally efficient convolutional coding with rate-matching
US9444494B2 (en) Systems and methods for network coding using convolutional codes
US7231575B2 (en) Apparatus for iterative hard-decision forward error correction decoding
CN101779379B (en) Encoding and decoding using generalized concatenated codes (GCC)
JP3628013B2 (en) Signal transmitting apparatus and encoding apparatus
JP4308226B2 (en) Error correction coding device
EP2621121A2 (en) Supercharged codes
JP2023519407A (en) Coding method and apparatus for data communication
CN111181572B (en) Interleaving mapping method and de-interleaving de-mapping method for LDPC code word
CN111600613B (en) Verification method, verification device, decoder, receiver and computer storage medium
JP2000022553A (en) Puncturing method for organization error correction code
CN111030710A (en) Method for adaptively improving decoding speed of Galileo navigation system E5 signal
KR20120071511A (en) Method and apparatus for data rate matching for mobile communication systems
JP2004320650A (en) Encoding device, decoding device, encoding program, and decoding program
JP2004529542A (en) Method and apparatus for encoding a bitstream

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090127

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090330

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090428

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090430

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120515

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120515

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130515

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130515

Year of fee payment: 4

EXPY Cancellation because of completion of term