JP2006013846A - Code sequence conversion method and apparatus therefor, code sequence conversion table generating apparatus, and turbo code coder and decoder - Google Patents

Code sequence conversion method and apparatus therefor, code sequence conversion table generating apparatus, and turbo code coder and decoder Download PDF

Info

Publication number
JP2006013846A
JP2006013846A JP2004187519A JP2004187519A JP2006013846A JP 2006013846 A JP2006013846 A JP 2006013846A JP 2004187519 A JP2004187519 A JP 2004187519A JP 2004187519 A JP2004187519 A JP 2004187519A JP 2006013846 A JP2006013846 A JP 2006013846A
Authority
JP
Japan
Prior art keywords
real number
order conversion
bit
sorting
code
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
JP2004187519A
Other languages
Japanese (ja)
Other versions
JP4411401B2 (en
Inventor
Yasuo Matsuyama
泰男 松山
Kenta Takarazaki
健太 寳▲崎▼
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.)
Waseda University
Original Assignee
Waseda University
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 Waseda University filed Critical Waseda University
Priority to JP2004187519A priority Critical patent/JP4411401B2/en
Publication of JP2006013846A publication Critical patent/JP2006013846A/en
Application granted granted Critical
Publication of JP4411401B2 publication Critical patent/JP4411401B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Error Detection And Correction (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a code sequence conversion method capable of realizing a high degree of randomizing, an apparatus therefor, a conversion sequence conversion table generating apparatus, and turbo coding coder and decoder. <P>SOLUTION: Using a virtual bit sequence äU<SB>n</SB>} generates a real number label äY<SB>n</SB>} attached to each configuration bit of the sequence at random, each real number label and arrangement positional information of each bit attached with each real number label are sequentially arranged in pairs in a row direction in a matrix form, an in-row sorting is carried out, wherein each arrangement positional information is rearranged in the magnitude sequence of numerals of each real number label in each row, and thereafter block sorting is carried out, wherein each arrangement positional information is rearranged according to a prescribed block sequence conversion rule in the unit of rows, and each arrangement positional information is sequentially read in a columnar direction to create a code sequence conversion table. Then an information bit sequence is rearranged by using the code sequence conversion table. <P>COPYRIGHT: (C)2006,JPO&NCIPI

Description

本発明は、情報ビット系列の符号順序変換処理を行う符号順序変換方法およびその装置、符号順序変換テーブル作成装置、並びにターボ符号用の符号器および復号器に係り、例えば、携帯電話システム等の通信システム、その他のターボ符号が介在する情報処理機器等に利用できる。   The present invention relates to a code order conversion method and apparatus for performing code order conversion processing of an information bit sequence, a code order conversion table creation apparatus, and a turbo code encoder and decoder. It can be used for systems and other information processing equipment with turbo codes.

従来より、符号化系列の誤り耐性を増加させるために符号語の順序を入れ替える処理が行われているが、このような処理を行う装置として、インターリーバ(interleaver;符号順序変換装置)が用いられている。また、このインターリーバと対になる装置として、復号側において元の順序に戻すための逆インターリーバ(deinterleaver;符号順序復元装置)が用いられている。   Conventionally, processing for changing the order of codewords has been performed in order to increase error tolerance of a coded sequence. As a device for performing such processing, an interleaver (code order conversion device) is used. ing. Further, as a device paired with the interleaver, a deinterleaver (decoding sequence restoration device) for returning to the original order on the decoding side is used.

これらのインターリーバおよび逆インターリーバ(以下、デインターリーバと記述することがある。)が最もよく使われる環境には、ターボ符号が介在している。ターボ符号は、シャノン限界に近い性能を実現できる符号化方式として、1993年にフランスのベロウ(Berrou)らによって提案されたものである。そして、現在では、第3世代の携帯電話システムであるW−CDMAのデータ通信部における誤り訂正符号として採用されている。なお、後述する図1には、本発明の構成例としてインターリーバおよび逆インターリーバを含むターボ符号用の符号器および復号器の構成が示されているが、これらの構成は、インターリーバおよび逆インターリーバの中身の構成を除き、従来のものと同じであるため、詳細については後述する。   In an environment where these interleavers and deinterleavers (hereinafter sometimes referred to as deinterleavers) are most often used, a turbo code is interposed. The turbo code was proposed by Berrou et al. In 1993 as a coding method capable of realizing performance close to the Shannon limit. At present, it is adopted as an error correction code in a data communication unit of W-CDMA, which is a third generation mobile phone system. In FIG. 1 described later, the configuration of an encoder and a decoder for turbo code including an interleaver and a deinterleaver is shown as a configuration example of the present invention. Since it is the same as the conventional one except for the configuration of the contents of the interleaver, details will be described later.

このターボ符号においては、符号器側に内蔵される2つの部分符号器(以下、要素符号器と記述することがある。)に対する入力系列が、互いに無相関になるようなランダム化操作が必要である。また、このようなランダム化操作は、復号器側にある2つの部分復号器(以下、要素復号器と記述することがある。)についても必要である。そして、この無相関性の程度がターボ符号における性能に著しく関与し、現在までに数種類のインターリーバが提案されている。   In this turbo code, a randomizing operation is required so that input sequences to two partial encoders (hereinafter, referred to as element encoders) built in the encoder side become uncorrelated with each other. is there. Such a randomizing operation is also necessary for two partial decoders on the decoder side (hereinafter also referred to as element decoders). This degree of decorrelation is significantly related to the performance of the turbo code, and several types of interleavers have been proposed so far.

このうち、素数(素体)を利用した符号順序変換処理を行う素数インターリーバ(素体インターリーバ)は、IMT−2000の標準技術となっている(特許文献1、非特許文献1参照)。また、それ以前にも、素数インターリーバに比べて性能が劣るものの、何種類かのインターリーバが提案されている(例えば、非特許文献2参照)。   Among these, a prime interleaver (prime interleaver) that performs code order conversion processing using a prime number (prime field) is a standard technology of IMT-2000 (see Patent Literature 1 and Non-Patent Literature 1). Prior to that, several types of interleavers have been proposed, although the performance is inferior to that of prime interleavers (see Non-Patent Document 2, for example).

なお、本発明に関連する技術として、擬似確率過程の生成技術がある(非特許文献3,4参照)。   As a technique related to the present invention, there is a technique for generating a pseudo stochastic process (see Non-Patent Documents 3 and 4).

特開2000−353965号公報(段落[0015]〜[0019]、図5、要約)JP 2000-353965 A (paragraphs [0015] to [0019], FIG. 5, summary) 須田博人、渋谷彰、今井秀樹、「素体を利用したターボ符号用インターリーバ」、電子情報通信学会論文誌、電子情報通信学会、2002年11月、Vol.J85−A、No.11、p.1168−1181Hiroto Suda, Akira Shibuya, Hideki Imai, “Interleaver for Turbo Codes Using Elementary Fields”, IEICE Transactions, IEICE, November 2002, Vol. J85-A, no. 11, p. 1168-1181 B.ブセティック(B.Vucetic)、J.ヤン(J.Yuan)、「ターボ・コード(Turbo Codes)」、クルワー・アカデミック・パブリシャーズ(Kluwer Academic Publishers)、2000年B. B. Vucetic, J.A. J. Yuan, “Turbo Codes”, Kluwer Academic Publishers, 2000 Y.リンデ(Y.Linde)、R.M.グレイ(R.M..Gray)、「ア・フェイク・プロセス・アプローチ・トゥー・データ・コンプレッション(A fake process approach to data compression)」、IEEEトランザクションズ・オン・コミュニケーションズ(IEEE Transactions on Communications)、1978年、Vol.COM−26、No.6、p.840−847Y. Y. Linde, R.M. M.M. Gray (RM.Gray), “A fake process approach to data compression”, IEEE Transactions on Communications, 1978, Vol. . COM-26, No. 6, p. 840-847 松山泰男(Y.Matsuyama)、R.M.グレイ(R.M..Gray)、「ユニバーサル・ツリー・エンコーディング・フォー・スピーチ(Universal tree encoding for speech)」、IEEEトランザクションズ・オン・インフォメーション・セオリ(IEEE Transactions on Information Theory)、1981年、Vol.IT−27、p.31−40Y.Matsuyama, R.M. M.M. Gray (R.M..Gray), “Universal tree encoding for speech”, IEEE Transactions on Information Theory, 1981, Vol. IT-27, p. 31-40

しかしながら、前述した特許文献1および非特許文献1に記載された素数インターリーバをハードウェア回路により実現しようとすると、乗算器と剰余計算器とが必須となるが、これらを極力必要としないインターリーバを開発し、処理内容を簡略化することにより、処理時間の短縮、チップサイズの小型化、発熱量の低減を図ることができれば便利である。また、符号器側の2つの部分符号器、あるいは復号器側の2つの部分復号器に対する入力系列の無相関性の程度を、より一層高め、インターリーバの性能を向上させることが望まれる。   However, if the prime interleaver described in Patent Document 1 and Non-Patent Document 1 described above is to be realized by a hardware circuit, a multiplier and a remainder calculator are indispensable, but an interleaver that does not need them as much as possible. It is convenient if the processing time can be shortened, the chip size can be reduced, and the calorific value can be reduced by developing the above and simplifying the processing contents. Further, it is desired to further improve the degree of decorrelation of the input sequence with respect to the two partial encoders on the encoder side or the two partial decoders on the decoder side, thereby improving the performance of the interleaver.

さらに、ターボ符号用のインターリーバに限らず、符号順序変換装置によるランダム化の程度を高めることができれば、各種の情報処理機器の性能の向上に結び付けることが可能となる。   Furthermore, not only the interleaver for turbo codes, but if the degree of randomization by the code order conversion device can be increased, it is possible to improve the performance of various information processing devices.

なお、前述した非特許文献3や非特許文献4に記載された技術は、単に擬似確率過程の生成を目指したものであり、本発明のような符号順序変換およびその復元に関する方法や装置の仕組みを提供するものではない。   The techniques described in Non-Patent Document 3 and Non-Patent Document 4 described above are merely aimed at generating a pseudo-probabilistic process, and the method and apparatus mechanism relating to code order conversion and restoration as in the present invention. Does not provide.

本発明の目的は、程度の高いランダム化を実現できる符号順序変換方法およびその装置、符号順序変換テーブル作成装置、並びにターボ符号用の符号器および復号器を提供するところにある。   An object of the present invention is to provide a code order conversion method and apparatus capable of realizing a high degree of randomization, a code order conversion table creation apparatus, and a turbo code encoder and decoder.

本発明は、ビット系列を構成する各ビットに実数ラベルを付し、この実数ラベルの大小関係を利用して符号順序変換処理を実現することにより前記目的を達成しようとするものである。   The present invention intends to achieve the above object by attaching a real number label to each bit constituting a bit sequence and realizing a code order conversion process using the magnitude relation of the real number label.

具体的には、本発明の符号順序変換方法は、情報ビット系列の符号順序変換処理に先立って、情報ビット系列の代用として仮想ビット系列を生成または用意し、この仮想ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この仮想ビット系列を構成する各ビットに付される実数ラベルをランダムに生成し、生成された各実数ラベルとこれらの各実数ラベルを付された各ビットの符号順序変換処理前の仮想ビット系列内での配列位置情報とを対にした状態で、各配列位置情報を各実数ラベルとともに各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置し、行列形式で配置された各配列位置情報を、各行内でそれぞれ各実数ラベルの数値の大小順に従って並べ替える行内ソーティングを行った後、行列形式で配置された行内ソーティング後の各配列位置情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行い、行列形式で配置されたブロックソーティング後の各配列位置情報を列方向に順次読み出すことにより、符号順序変換処理前のビット系列と符号順序変換処理後のビット系列とのそれぞれの構成ビットの対応関係を定める符号順序変換テーブルを予め作成して符号順序変換テーブル記憶手段に記憶させておき、情報ビット系列の符号順序変換処理を行う際には、符号順序変換テーブル記憶手段に記憶された符号順序変換テーブルを用いて、情報ビット系列を構成する各ビットを並べ替えることを特徴とするものである。   Specifically, the code order conversion method of the present invention generates or prepares a virtual bit sequence as a substitute for the information bit sequence prior to the code order conversion processing of the information bit sequence, and a plurality of code bits that constitute the virtual bit sequence. Using the value of at least one of the bits, a real number label attached to each bit constituting this virtual bit sequence is randomly generated, and each generated real number label and each of these real number labels are attached. In addition, each array position information together with each real number label is arranged in a matrix format according to the array order before the code order conversion process of each bit in a state paired with the array position information in the virtual bit sequence before the code order conversion process of each bit. In-line sorting that arranges each array position information arranged in a matrix format in order according to the order of the numerical value of each real number label in each line. After performing the block sorting that rearranges each array position information after in-row sorting arranged in a matrix format in units of rows according to a predetermined block order conversion rule, and after each block sorting arranged in a matrix format By sequentially reading the array position information in the column direction, a code order conversion table that predetermines the correspondence between the constituent bits of the bit sequence before the code order conversion process and the bit sequence after the code order conversion process is generated and encoded. When performing the code order conversion process of the information bit sequence stored in the order conversion table storage unit, the code sequence conversion table stored in the code order conversion table storage unit is used to configure each information bit sequence. The bit is rearranged.

ここで、「情報ビット系列」は、例えば、音(音声を含む。)、画像(静止画および動画を含む。)等の信号である。以下の発明においても同様である。   Here, the “information bit sequence” is, for example, a signal such as a sound (including sound), an image (including a still image and a moving image), and the like. The same applies to the following inventions.

また、「情報ビット系列の代用として仮想ビット系列を生成または用意」するとあるのは、符号順序変換テーブルを事前に作成するにあたり、仮想ビット系列を新たに生成してもよく、あるいは既に存在するビット系列を仮想ビット系列として利用してもよい趣旨である。なお、「仮想ビット系列」は、偶然に、または意図的に情報ビット系列と一致するものとしてもよい。以下の発明においても同様である。   In addition, “to generate or prepare a virtual bit sequence as a substitute for an information bit sequence” is that a virtual bit sequence may be newly generated or a bit that already exists when the code order conversion table is created in advance. This means that the sequence may be used as a virtual bit sequence. The “virtual bit sequence” may coincide with the information bit sequence accidentally or intentionally. The same applies to the following inventions.

さらに、「仮想ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて」とあるのは、ある1つの実数ラベルを生成するために用いられるビット数は、1ビットでもよく、複数ビットでもよい趣旨であるが、ランダム化された実数ラベルを容易に生成することができるという観点からは、複数のビットの値を用いることが好ましい。また、複数のビットの値を用いて実数ラベルを生成する場合には、それらの複数のビットは、仮想ビット系列内において連続する複数のビットでもよく、あるいは間欠的に取り出された複数のビットでもよいが、ハードウェア回路で実数ラベルの生成を行う場合に、シフトレジスタを用いて処理の容易化や装置構成の簡易化を図ることができるという観点からは、連続する複数のビットであることが好ましい。以下の発明においても同様である。   Furthermore, “using the value of at least one bit among a plurality of bits constituting the virtual bit sequence” means that the number of bits used to generate one real number label may be one bit. However, from the viewpoint that a randomized real number label can be easily generated, it is preferable to use a value of a plurality of bits. In addition, when generating a real number label using a plurality of bit values, the plurality of bits may be a plurality of consecutive bits in the virtual bit sequence, or may be a plurality of bits extracted intermittently. It is good, but when generating a real number label with a hardware circuit, it is possible to use a shift register to facilitate processing and simplify the device configuration. preferable. The same applies to the following inventions.

そして、「配列位置情報」とは、ビット系列内での各構成ビットの位置、すなわち順番を示す情報であり、例えば、第1番目の構成ビットについては「1」、第2番目の構成ビットについては「2」、第3番目の構成ビットについては「3」等の情報である。以下の発明においても同様である。   The “arrangement position information” is information indicating the position of each constituent bit in the bit sequence, that is, the order. For example, “1” for the first constituent bit, and for the second constituent bit. Is information such as “2”, and the third component bit is “3”. The same applies to the following inventions.

また、「各実数ラベルの数値の大小順に従って」とは、大きい順に並べてもよく、小さい順に並べてもよい趣旨である。以下の発明においても同様である。   Further, “in accordance with the order of the numerical values of the respective real number labels” means that the labels may be arranged in order from the largest to the smallest. The same applies to the following inventions.

このような本発明の符号順序変換方法(以下、対応する装置発明も合わせて「符号順序変換テーブル事前作成の発明」という。)においては、情報ビット系列の符号順序変換処理を行うに先立って、事前処理として、実数ラベルを用いて符号順序変換テーブルを予め作成しておき、情報ビット系列の符号順序変換処理を行う際には、既に作成されて用意されている符号順序変換テーブルを用いる。   In such a code order conversion method of the present invention (hereinafter, the corresponding device invention is also referred to as “invention of code order conversion table in advance”), prior to performing the code order conversion processing of the information bit sequence, As pre-processing, a code order conversion table is created in advance using a real number label, and a code order conversion table already prepared and prepared is used when performing code order conversion processing of an information bit sequence.

この際、符号順序変換テーブルは、ランダムに生成された実数ラベルの数値の大小関係を利用して作成されるので、ランダム化の程度の高い符号順序変換処理を実現すること、すなわち符号順序変換処理の前後の入力系列と出力系列との無相関性を高めることが可能となる。このため、例えば携帯電話システム等の情報処理機器に用いることにより、情報処理機器の性能の向上を図ることが可能となり、これらにより前記目的が達成される。   At this time, since the code order conversion table is created by using the magnitude relation of the numerical values of the real number randomly generated, it is possible to realize code order conversion processing with a high degree of randomization, that is, code order conversion processing. It is possible to increase the non-correlation between the input series before and after the output and the output series. For this reason, for example, by using it for information processing equipment such as a mobile phone system, it is possible to improve the performance of the information processing equipment, thereby achieving the object.

また、本発明の符号順序変換方法は、情報ビット系列の符号順序変換処理に先立って、情報ビット系列の代用として仮想ビット系列を生成または用意し、この仮想ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この仮想ビット系列を構成する各ビットに付される実数ラベルをランダムに生成し、生成された各実数ラベルとこれらの各実数ラベルを付された各ビットの符号順序変換処理前の仮想ビット系列内での配列位置情報とを対にした状態で、各配列位置情報を各実数ラベルとともに各ビットの符号順序変換処理前の配列順序に従って順次配列し、配列した各配列位置情報を複数のブロックに区切って各ブロック内でそれぞれ各実数ラベルの数値の大小順に従って並べ替えることにより、情報ビット系列の符号順序変換処理で各行内で行われる行内ソーティングの際の順序変換ルールを定める行内ソーティングテーブルを各行に対応する各ブロック毎に作成して行内ソーティングテーブル記憶手段に記憶させておき、情報ビット系列の符号順序変換処理を行う際には、情報ビット系列を構成する各ビットの値を示す内容情報を各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置し、行列形式で配置された各内容情報を、各行内でそれぞれ行内ソーティングテーブル記憶手段に記憶された各行内ソーティングテーブルを用いて並べ替える行内ソーティングを行った後、行列形式で配置された行内ソーティング後の各内容情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行い、行列形式で配置されたブロックソーティング後の各内容情報を列方向に順次読み出すことにより、符号順序変換処理後のビット系列を生成することを特徴とするものである。   Further, the code order conversion method of the present invention generates or prepares a virtual bit sequence as a substitute for the information bit sequence prior to the code order conversion processing of the information bit sequence, and among the plurality of bits constituting the virtual bit sequence The real number label attached to each bit constituting this virtual bit sequence is randomly generated using the value of at least one of the bits, and each real number label generated and each bit assigned with each real number label are generated. In the state where the array position information in the virtual bit sequence before the code order conversion process is paired, each array position information is sequentially arranged according to the array order before the code order conversion process of each bit together with each real number label. Information bit system by dividing each array position information into a plurality of blocks and rearranging each block according to the order of numerical value of each real number label An in-line sorting table for defining an in-line sorting rule for the in-line sorting performed in each row in the code order conversion process is created for each block corresponding to each row, stored in the in-line sorting table storage means, and an information bit sequence When performing the code order conversion process, the content information indicating the value of each bit constituting the information bit sequence is sequentially arranged in the row direction in the matrix format according to the arrangement order before the code order conversion process of each bit, and the matrix format After the in-line sorting is performed, the contents after the in-line sorting arranged in a matrix form are performed after the in-line sorting is performed by using the in-line sorting table stored in the in-line sorting table storage means. Block sorter that rearranges information in line units according to predetermined block order conversion rules It performed grayed, by sequentially reading that each content information after placement block sorting in matrix form in the column direction, and is characterized in generating a bit sequence after coding sequence conversion process.

ここで、「内容情報」とは、ビット系列を構成する各ビットの値を示す情報であり、「0」または「1」の情報である。以下の発明においても同様である。   Here, the “content information” is information indicating the value of each bit constituting the bit sequence, and is “0” or “1” information. The same applies to the following inventions.

このような本発明の符号順序変換方法(以下、対応する装置発明も合わせて「行内ソーティングテーブル事前作成の発明」という。)においては、情報ビット系列の符号順序変換処理を行うに先立って、事前処理として、実数ラベルを用いて行内ソーティングテーブルを各行毎に予め作成しておき、情報ビット系列の符号順序変換処理を行う際には、既に作成されて用意されている各行毎の行内ソーティングテーブルを用いる。   In such a code order conversion method of the present invention (hereinafter, the corresponding apparatus invention is also referred to as “invention of pre-in-line sorting table”), prior to performing the code order conversion processing of the information bit sequence, As the processing, an in-line sorting table is prepared in advance for each row using a real number label, and when performing the code order conversion processing of the information bit sequence, the in-line sorting table for each row already prepared is prepared. Use.

この際、各行毎の行内ソーティングテーブルは、ランダムに生成された実数ラベルの数値の大小関係を利用して作成されるので、ランダム化の程度の高い符号順序変換処理を実現することが可能となる。このため、例えば携帯電話システム等の情報処理機器に用いることにより、情報処理機器の性能の向上を図ることが可能となり、これらにより前記目的が達成される。   At this time, since the in-line sorting table for each line is created using the magnitude relationship between the numerical values of randomly generated real number labels, it is possible to realize code order conversion processing with a high degree of randomization. . For this reason, for example, by using it for information processing equipment such as a mobile phone system, it is possible to improve the performance of the information processing equipment, thereby achieving the object.

さらに、本発明の符号順序変換方法は、符号順序変換処理の対象となる情報ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この情報ビット系列を構成する各ビットに付される実数ラベルをランダムに生成し、生成された各実数ラベルとこれらの各実数ラベルを付された各ビットの符号順序変換処理前の情報ビット系列内での配列位置情報とを対にした状態で、各配列位置情報を各実数ラベルとともに各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置し、行列形式で配置された各配列位置情報を、各行内でそれぞれ各実数ラベルの数値の大小順に従って並べ替える行内ソーティングを行った後、行列形式で配置された行内ソーティング後の各配列位置情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行い、行列形式で配置されたブロックソーティング後の各配列位置情報を列方向に順次読み出すことにより、符号順序変換処理前のビット系列と符号順序変換処理後のビット系列とのそれぞれの構成ビットの対応関係を定める符号順序変換テーブルを作成し、その後、符号順序変換テーブルを用いて情報ビット系列を構成する各ビットを並べ替えることを特徴とするものである。   Furthermore, the code order conversion method of the present invention uses each bit constituting the information bit sequence by using the value of at least one bit of the plurality of bits constituting the information bit sequence subject to the code order conversion process. The real number label attached to is randomly generated, and the generated real number label and the array position information in the information bit sequence before the code order conversion process of each bit attached to each real number label are paired In this state, each array position information is sequentially arranged in the row direction in a matrix format according to the array order before the code order conversion processing of each bit together with each real number label, and each array position information arranged in the matrix format is placed in each row. After performing in-line sorting that sorts the values of each real number according to the numerical order, each array position information after in-line sorting arranged in a matrix format is determined in advance. Performs block sorting that rearranges in units of rows according to the lock order conversion rule, and sequentially reads the array position information after block sorting arranged in matrix form in the column direction, thereby converting the bit sequence before code order conversion processing and code order conversion. A code order conversion table that defines the correspondence of each constituent bit with the processed bit sequence is created, and then each bit that constitutes the information bit sequence is rearranged using the code order conversion table It is.

このような本発明の符号順序変換方法(以下、対応する装置発明も合わせて「符号順序変換テーブル実時間作成の発明」という。)においては、符号順序変換テーブルを事前に作成しておくのではなく、符号順序変換処理の対象となる情報ビット系列を用いて生成された実数ラベルを用いてリアルタイムで符号順序変換テーブルを作成し、このリアルタイムで作成した符号順序変換テーブルを用いて符号順序変換処理を行う。   In such a code order conversion method of the present invention (hereinafter, the corresponding apparatus invention is also referred to as “invention of code order conversion table real time”), the code order conversion table is not prepared in advance. In addition, a code order conversion table is created in real time using a real number label generated using an information bit sequence that is a target of code order conversion processing, and code order conversion processing is performed using the code order conversion table created in real time. I do.

この際、符号順序変換テーブルは、事前に作成された符号順序変換テーブルの場合と同様に、ランダムに生成された実数ラベルの数値の大小関係を利用して作成されるので、ランダム化の程度の高い符号順序変換処理を実現することが可能となる。このため、例えば携帯電話システム等の情報処理機器に用いることにより、情報処理機器の性能の向上を図ることが可能となる。   At this time, the code order conversion table is created using the magnitude relationship of the numerical values of the real number randomly generated, as in the case of the code order conversion table created in advance. High code order conversion processing can be realized. For this reason, it becomes possible to aim at the improvement of the performance of information processing equipment, for example by using for information processing equipment, such as a cellular phone system.

また、符号順序変換テーブルを事前に作成しておく場合は、符号順序変換テーブルが固定的になるのに対し、符号順序変換テーブルをリアルタイムで作成することから、符号順序変換テーブルが変動するようになる。このため、データ通信を行う際には、目的データの送信と併せ、符号順序変換テーブルも受信側に送信することにより、秘匿通信を実現することが可能となり、これらにより前記目的が達成される。   In addition, when the code order conversion table is created in advance, the code order conversion table is fixed, whereas the code order conversion table is created in real time so that the code order conversion table changes. Become. For this reason, when performing data communication, by transmitting the code order conversion table to the receiving side together with the transmission of the target data, it is possible to realize the confidential communication, thereby achieving the object.

なお、秘匿通信を実現する際には、符号順序変換テーブルのリアルタイムでの作成、および作成した符号順序変換テーブルの受信側への送信は、目的データについての符号順序変換処理の各処理単位毎に連続的に行ってもよく、あるいは間欠的に行ってもよい。後者のように間欠的に作成・送信する場合には、次回の作成・送信があるまでは、直近の処理で作成・送信された符号順序変換テーブルを複数回連続して用いてもよく、あるいは事前処理で作成された固定的な符号順序変換テーブルを織り交ぜて用いてもよい。また、符号順序変換テーブルを受信側へ送信する際には、秘匿性の向上の観点から、符号順序変換テーブルを変換した状態で送信し、受信側で鍵を用いる等して元に戻す処理を行うことが好ましい。   When realizing secret communication, the creation of the code order conversion table in real time and the transmission of the created code order conversion table to the receiving side are performed for each processing unit of the code order conversion process for the target data. It may be performed continuously or intermittently. In the case of intermittent creation / transmission as in the latter case, the code order conversion table created / transmitted in the most recent process may be used continuously several times until the next creation / transmission, or A fixed code order conversion table created by pre-processing may be used in combination. In addition, when transmitting the code order conversion table to the receiving side, from the viewpoint of improving confidentiality, the code order conversion table is transmitted in a converted state, and the receiving side performs processing to restore the original by using a key or the like. Preferably it is done.

そして、本発明の符号順序変換方法は、符号順序変換処理の対象となる情報ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この情報ビット系列を構成する各ビットに付される実数ラベルをランダムに生成し、生成された各実数ラベルとこれらの各実数ラベルを付された各ビットの符号順序変換処理前の情報ビット系列内での配列位置情報と各ビットの値を示す内容情報とを対にした状態で、各配列位置情報および各内容情報を各実数ラベルとともに各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置し、行列形式で配置された各配列位置情報および各内容情報を、各行内でそれぞれ各実数ラベルの数値の大小順に従って並べ替える行内ソーティングを行った後、行列形式で配置された行内ソーティング後の各配列位置情報および各内容情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行い、行列形式で配置されたブロックソーティング後の各配列位置情報を列方向に順次読み出すことにより、符号順序変換処理前のビット系列と符号順序変換処理後のビット系列とのそれぞれの構成ビットの対応関係を定める符号順序変換テーブルを作成するとともに、行列形式で配置されたブロックソーティング後の各内容情報を列方向に順次読み出すことにより、符号順序変換処理後のビット系列を生成することを特徴とするものである。   Then, the code order conversion method of the present invention uses each bit constituting the information bit sequence by using the value of at least one bit among the plurality of bits constituting the information bit sequence to be subjected to the code order conversion process. The real number labels attached to are randomly generated, and the generated real number labels and the array position information in the information bit sequence before the code order conversion processing of each bit attached to each of these real number labels and the bit of each bit In a state in which the content information indicating the value is paired, each array position information and each content information are sequentially arranged in the row direction in a matrix format according to the array order before the code order conversion processing of each bit together with each real number label. After performing in-line sorting that rearranges each array position information and each content information arranged in step 1 according to the order of the numerical value of each real number label in each line, it is arranged in a matrix format. Block sorting is performed by rearranging each array position information and each content information after sorting in line in line units according to a predetermined block order conversion rule, and each array position information after block sorting arranged in a matrix form By sequentially reading in the column direction, a code order conversion table that defines the correspondence between the constituent bits of the bit sequence before the code order conversion process and the bit sequence after the code order conversion process is created and arranged in a matrix format. The bit sequence after the code order conversion process is generated by sequentially reading the content information after the block sorting in the column direction.

このような本発明の符号順序変換方法(以下、対応する装置発明も合わせて「符号順序変換テーブル実時間作成・内容情報直接並べ替え同時処理の発明」という。)においては、符号順序変換テーブルを事前に作成しておくのではなく、符号順序変換処理の対象となる情報ビット系列を用いて生成された実数ラベルを用いてリアルタイムで符号順序変換テーブルを作成するとともに、この符号順序変換テーブルを作成する過程において各ビットの内容情報そのものを並べ替えていくことにより符号順序変換処理を行う。従って、前述した符号順序変換テーブル実時間作成の発明の場合とは異なり、内容情報そのものの並べ替えは、リアルタイムで作成した符号順序変換テーブルを用いて行われるのではなく、符号順序変換テーブルの作成処理と同時並行的に行われる。   In such a code order conversion method of the present invention (hereinafter, the corresponding apparatus invention is also referred to as “invention of code order conversion table real-time creation / content information direct rearrangement simultaneous processing”), a code order conversion table is used. Rather than creating in advance, a code order conversion table is created in real time using a real number label generated using an information bit sequence subject to code order conversion processing, and this code order conversion table is created. In this process, the code order conversion process is performed by rearranging the content information itself of each bit. Therefore, unlike the case of the above-described invention for generating the code order conversion table in real time, the rearrangement of the content information itself is not performed using the code order conversion table generated in real time, but the code order conversion table is generated. Performed concurrently with processing.

この場合にも、ランダムに生成された実数ラベルの数値の大小関係を利用して符号順序変換処理を行うので、ランダム化の程度の高い符号順序変換処理を実現することが可能となり、情報処理機器の性能の向上を図ることが可能となるうえ、符号順序変換テーブルがリアルタイムで作成されるので、秘匿通信を実現することが可能となり、これらにより前記目的が達成される。   Also in this case, since the code order conversion process is performed using the magnitude relationship of the numerical values of the randomly generated real number labels, it is possible to realize a code order conversion process with a high degree of randomization. In addition, since the code order conversion table is created in real time, it is possible to realize secret communication, thereby achieving the object.

また、本発明の符号順序変換方法は、符号順序変換処理の対象となる情報ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この情報ビット系列を構成する各ビットに付される実数ラベルをランダムに生成し、生成された各実数ラベルとこれらの各実数ラベルを付された各ビットの符号順序変換処理前の情報ビット系列内での配列位置情報とを対にした状態で、各配列位置情報を各実数ラベルとともに各ビットの符号順序変換処理前の配列順序に従って順次配列し、配列した各配列位置情報を複数のブロックに区切って各ブロック内でそれぞれ各実数ラベルの数値の大小順に従って並べ替えることにより、各行内で行われる行内ソーティングの際の順序変換ルールを定める行内ソーティングテーブルを各行に対応する各ブロック毎に作成し、その後、情報ビット系列を構成する各ビットの値を示す内容情報を各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置し、行列形式で配置された各内容情報を、各行内でそれぞれ各行内ソーティングテーブルを用いて並べ替える行内ソーティングを行った後、行列形式で配置された行内ソーティング後の各内容情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行い、行列形式で配置されたブロックソーティング後の各内容情報を列方向に順次読み出すことにより、符号順序変換処理後のビット系列を生成することを特徴とするものである。   Also, the code order conversion method of the present invention uses the value of at least one bit among a plurality of bits constituting the information bit series to be subjected to the code order conversion process, and each bit constituting the information bit series. The real number label attached to is randomly generated, and the generated real number label and the array position information in the information bit sequence before the code order conversion process of each bit attached to each real number label are paired In this state, each array position information is sequentially arrayed together with each real number label according to the array order before the code order conversion processing of each bit, and each array position information is divided into a plurality of blocks, and each real number label in each block. By sorting according to the numerical order of the numbers of, the in-line sorting table that defines the order conversion rules for in-line sorting performed in each line It is created for each corresponding block, and then the content information indicating the value of each bit constituting the information bit sequence is sequentially arranged in the row direction in the matrix format according to the sequence order before the code order conversion processing of each bit, and the matrix format After performing the in-line sorting that rearranges each content information arranged in (1) using each in-line sorting table in each row, each content information after the in-line sorting arranged in a matrix format is set in a predetermined block order. Performs block sorting that rearranges in units of rows according to the conversion rule, and sequentially reads the content information after block sorting arranged in a matrix format in the column direction, thereby generating a bit sequence after code order conversion processing. To do.

このような本発明の符号順序変換方法(以下、対応する装置発明も合わせて「行内ソーティングテーブル実時間作成の発明」という。)においては、行内ソーティングテーブルを事前に作成しておくのではなく、符号順序変換処理の対象となる情報ビット系列を用いて生成された実数ラベルを用いてリアルタイムで行内ソーティングテーブルを作成し、このリアルタイムで作成した行内ソーティングテーブルを用いて符号順序変換処理を行う。   In such a code order conversion method of the present invention (hereinafter, the corresponding apparatus invention is also referred to as “invention of in-line sorting table real time creation”), the in-line sorting table is not created in advance, An in-line sorting table is created in real time using a real number label generated using an information bit sequence to be subjected to code order conversion processing, and code order conversion processing is performed using the in-line sorting table created in real time.

この際、各行毎の行内ソーティングテーブルは、事前に作成された行内ソーティングテーブルの場合と同様に、ランダムに生成された実数ラベルの数値の大小関係を利用して作成されるので、ランダム化の程度の高い符号順序変換処理を実現することが可能となる。このため、例えば携帯電話システム等の情報処理機器に用いることにより、情報処理機器の性能の向上を図ることが可能となる。   At this time, the in-line sorting table for each line is created using the magnitude relationship of the numerical value of the real label generated randomly, as in the case of the in-line sorting table created in advance. High code order conversion processing can be realized. For this reason, it becomes possible to aim at the improvement of the performance of information processing equipment, for example by using for information processing equipment, such as a cellular phone system.

また、各行毎の行内ソーティングテーブルを事前に作成しておく場合は、行内ソーティングテーブルが固定的になるのに対し、各行毎の行内ソーティングテーブルをリアルタイムで作成することから、行内ソーティングテーブルが変動するようになる。このため、データ通信を行う際には、目的データの送信と併せ、各行毎の行内ソーティングテーブルも受信側に送信することにより、秘匿通信を実現することが可能となり、これらにより前記目的が達成される。   In addition, when the in-line sorting table for each row is created in advance, the in-line sorting table is fixed, whereas the in-line sorting table for each row is created in real time, so the in-line sorting table varies. It becomes like this. For this reason, when performing data communication, it is possible to realize confidential communication by transmitting the in-line sorting table for each line to the receiving side together with the transmission of the target data, thereby achieving the purpose. The

なお、秘匿通信を実現する際には、各行毎の行内ソーティングテーブルのリアルタイムでの作成、および作成した行内ソーティングテーブルの受信側への送信は、目的データについての符号順序変換処理の各処理単位毎に連続的に行ってもよく、あるいは間欠的に行ってもよい。後者のように間欠的に作成・送信する場合には、次回の作成・送信があるまでは、直近の処理で作成・送信された行内ソーティングテーブルを複数回連続して用いてもよく、あるいは事前処理で作成された固定的な行内ソーティングテーブルを織り交ぜて用いてもよい。また、行内ソーティングテーブルを受信側へ送信する際には、秘匿性の向上の観点から、行内ソーティングテーブルを変換した状態で送信し、受信側で鍵を用いる等して元に戻す処理を行うことが好ましい。   In addition, when realizing secret communication, the creation of the in-line sorting table for each row in real time and the transmission of the created in-line sorting table to the receiving side are performed for each processing unit of the code order conversion process for the target data. May be performed continuously or intermittently. When creating / transmitting intermittently as in the latter case, the in-line sorting table created / transmitted in the most recent process may be used continuously several times until the next creation / transmission, or in advance. A fixed in-line sorting table created by the processing may be interwoven and used. Also, when sending the in-line sorting table to the receiving side, from the viewpoint of improving confidentiality, send the in-line sorting table in a converted state, and use the key on the receiving side to restore the original. Is preferred.

さらに、本発明の符号順序変換方法は、符号順序変換処理の対象となる情報ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この情報ビット系列を構成する各ビットに付される実数ラベルをランダムに生成し、生成された各実数ラベルとこれらの各実数ラベルを付された各ビットの符号順序変換処理前の情報ビット系列内での配列位置情報と各ビットの値を示す内容情報とを対にした状態で、各配列位置情報および各内容情報を各実数ラベルとともに各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置し、行列形式で配置された各配列位置情報および各内容情報を、各行内でそれぞれ各実数ラベルの数値の大小順に従って並べ替える行内ソーティングを行った後、行列形式で配置された行内ソーティング後の各配列位置情報を各行毎に行方向に順次読み出すことにより、各行内ソーティングの際の順序変換ルールを定める行内ソーティングテーブルを各行に対応する各ブロック毎に作成するとともに、行列形式で配置された行内ソーティング後の各内容情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行い、行列形式で配置されたブロックソーティング後の各内容情報を列方向に順次読み出すことにより、符号順序変換処理後のビット系列を生成することを特徴とするものである。   Furthermore, the code order conversion method of the present invention uses each bit constituting the information bit sequence by using the value of at least one bit of the plurality of bits constituting the information bit sequence subject to the code order conversion process. The real number labels attached to are randomly generated, and the generated real number labels and the array position information in the information bit sequence before the code order conversion processing of each bit attached to each of these real number labels and the bit of each bit In a state in which the content information indicating the value is paired, each array position information and each content information are sequentially arranged in the row direction in a matrix format according to the array order before the code order conversion processing of each bit together with each real number label. After performing in-line sorting that rearranges each array position information and each content information arranged in step 1 according to the order of the numerical value of each real number label in each line, it is arranged in a matrix format. By sequentially reading each array position information after the in-line sorting in the row direction for each row, an in-line sorting table for defining the order conversion rule for each in-line sorting is created for each block corresponding to each row, and a matrix Performs block sorting that rearranges each content information after in-line sorting arranged in a format in line units according to a predetermined block order conversion rule, and each piece of content information after block sorting arranged in a matrix format in the column direction A bit sequence after the code order conversion process is generated by sequentially reading.

このような本発明の符号順序変換方法(以下、対応する装置発明も合わせて「行内ソーティングテーブル実時間作成・内容情報直接並べ替え同時処理の発明」という。)においては、行内ソーティングテーブルを事前に作成しておくのではなく、符号順序変換処理の対象となる情報ビット系列を用いて生成された実数ラベルを用いてリアルタイムで行内ソーティングテーブルを作成するとともに、この行内ソーティングテーブルを作成する過程において各ビットの内容情報そのものを並べ替えていくことにより符号順序変換処理を行う。従って、前述した行内ソーティングテーブル実時間作成の発明の場合とは異なり、内容情報そのものの並べ替えは、リアルタイムで作成した行内ソーティングテーブルを用いて行われるのではなく、行内ソーティングテーブルの作成処理と同時並行的に行われる。   In such a code order conversion method of the present invention (hereinafter, the corresponding apparatus invention is also referred to as “invention of simultaneous processing of real-time sorting table and direct rearrangement of content information”), the sorting table in the row is stored in advance. Instead of creating an in-line sorting table in real time using real number labels generated using information bit sequences that are subject to code order conversion processing, and in the process of creating this in-line sorting table Code order conversion processing is performed by rearranging the bit content information itself. Therefore, unlike the above-described invention for real-time creation of the in-line sorting table, the contents information itself is not rearranged by using the in-line sorting table created in real time, but at the same time as the in-line sorting table creation process. Done in parallel.

この場合にも、ランダムに生成された実数ラベルの数値の大小関係を利用して符号順序変換処理を行うので、ランダム化の程度の高い符号順序変換処理を実現することが可能となり、情報処理機器の性能の向上を図ることが可能となるうえ、各行毎の行内ソーティングテーブルがリアルタイムで作成されるので、秘匿通信を実現することが可能となり、これらにより前記目的が達成される。   Also in this case, since the code order conversion process is performed using the magnitude relationship of the numerical values of the randomly generated real number labels, it is possible to realize a code order conversion process with a high degree of randomization. In addition, since the in-line sorting table for each line is created in real time, it is possible to realize secret communication, and the above-described purpose is achieved.

そして、本発明の符号順序変換方法は、符号順序変換処理の対象となる情報ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この情報ビット系列を構成する各ビットに付される実数ラベルをランダムに生成し、生成された各実数ラベルとこれらの各実数ラベルを付された各ビットの値を示す内容情報とを対にした状態で、各内容情報を各実数ラベルとともに各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置し、行列形式で配置された各内容情報を、各行内でそれぞれ各実数ラベルの数値の大小順に従って並べ替える行内ソーティングを行った後、行列形式で配置された行内ソーティング後の各内容情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行い、行列形式で配置されたブロックソーティング後の各内容情報を列方向に順次読み出すことにより、符号順序変換処理後のビット系列を生成することを特徴とするものである。   Then, the code order conversion method of the present invention uses each bit constituting the information bit sequence by using the value of at least one bit among the plurality of bits constituting the information bit sequence to be subjected to the code order conversion process. Each real number is assigned to each real number in a state where the real number label attached to is randomly generated and each real number label and the content information indicating the value of each bit assigned to each real number label are paired. Along with the labels, each bit is sequentially arranged in the row direction in the matrix format according to the sequence order before the code order conversion process, and the contents information arranged in the matrix format is rearranged in the respective rows according to the order of the numerical value of each real number label. After in-line sorting, each content information after in-line sorting arranged in matrix format is rearranged in line units according to a predetermined block order conversion rule. Does locking sorting, by sequentially reading that each content information after placement block sorting in matrix form in the column direction, and is characterized in generating a bit sequence after coding sequence conversion process.

このような本発明の符号順序変換方法(以下、対応する装置発明も合わせて「内容情報直接並べ替えの発明」という。)においては、ランダムに生成された実数ラベルの数値の大小関係を利用して符号順序変換処理を行うので、ランダム化の程度の高い符号順序変換処理を実現することが可能となる。このため、例えば携帯電話システム等の情報処理機器に用いることにより、情報処理機器の性能の向上を図ることが可能となり、これらにより前記目的が達成される。   In such a code order conversion method of the present invention (hereinafter, the corresponding device invention is also referred to as “content information direct rearrangement invention”), the magnitude relationship between the numerical values of the randomly generated real number labels is used. Thus, the code order conversion process with a high degree of randomization can be realized. For this reason, for example, by using it for information processing equipment such as a mobile phone system, it is possible to improve the performance of the information processing equipment, thereby achieving the object.

なお、この場合において、データ通信を行う際には、受信側には、目的データの送信と併せ、例えば行内ソーティング前の配列順序を保った実数ラベルの配列を送信することができる。また、実数ラベルの配列の送信は、連続的でもよく、間欠的でもよく、さらに、変換した状態での送信が好ましいことは、前述した符号順序変換テーブルや行内ソーティングテーブルの送信の場合と同様である。   In this case, when performing data communication, it is possible to transmit, for example, an array of real labels maintaining the arrangement order before in-line sorting to the receiving side in addition to transmission of target data. Moreover, the transmission of the array of real numbers may be continuous or intermittent, and the transmission in the converted state is preferable as in the case of the transmission of the code order conversion table and the in-line sorting table described above. is there.

また、以上に述べた符号順序変換方法において、各実数ラベルを生成する際には、連続する複数のビットの各値を用いて実数Xa〜実数Xbの間の実数Xを算出した後、tを、Xa≦t<(Xa+Xb)/2の範囲の実数としたとき、g(t)+g(t+(Xb−Xa)/2)=Ya+Ybという条件式を満たすスクランブリング関数Y=g(X)を用いて、実数Xa〜実数Xbの間の実数Xを実数Ya〜実数Ybの間の実数Yに変換し、変換して得られた実数Yの値を実数ラベルとし、連続する複数のビットの各値を1ビットずつシフトしながら用いて、実数Xの算出処理およびスクランブリング関数による実数Xから実数Yへの変換処理を繰り返すことにより、各ビットに付される各実数ラベルを順次生成することが望ましい。 In the code order conversion method described above, when generating each real number label, after calculating the real number X between the real number X a to the real number X b using each value of a plurality of consecutive bits, When t is a real number in the range of X a ≦ t <(X a + X b ) / 2, the conditional expression g (t) + g (t + (X b −X a ) / 2) = Y a + Y b using scrambling function Y = g (X) satisfying the real the real X between the real number X a ~ real X b is converted into a real number Y between the real number Y a ~ real Y b, obtained by converting By using the value of Y as a real number label and shifting each value of a plurality of consecutive bits one bit at a time, by repeating the calculation process of the real number X and the conversion process from the real number X to the real number Y by the scrambling function, It is desirable to sequentially generate each real number label attached to each bit.

このようにスクランブリング関数を用いた実数ラベルの生成処理を行う場合には、スクランブリング関数の持つ機能により、符号順序変換処理におけるランダム化の程度を、より一層高めることが可能となり、情報処理機器の性能を、より一層向上させることが可能となる。   When generating a real number label using a scrambling function in this way, the function of the scrambling function makes it possible to further increase the degree of randomization in the code order conversion processing. The performance can be further improved.

さらに、上述したスクランブリング関数を用いた実数ラベルの生成処理を行う場合において、連続する複数のビットの各値を用いて実数Xa〜実数Xbの間の実数Xを算出する処理は、算出に用いるビット数をMとし、mを1〜Mの整数とすると、Mビットの各値のそれぞれに2-mを乗じた値を加算し、さらに2-(M+1)を加算して得られる数値をXとすることにより、0〜1の間の実数Xを算出する処理であり、スクランブリング関数による実数Xa〜実数Xbの間の実数Xから実数Ya〜実数Ybの間の実数Yへの変換処理は、0〜1の間の実数Xから0〜1の間の実数Yへの変換処理であり、これらの実数Xの算出処理およびスクランブリング関数による実数Xから実数Yへの変換処理は、擬似確率過程発生処理であることが望ましい。 Further, in the case of performing a process of generating real labels using scrambling function described above, the process of calculating the real number X between the real number X a ~ real X b with the values of a plurality of consecutive bits is calculated Assuming that the number of bits used for M is M and m is an integer from 1 to M , the value obtained by multiplying each value of M bits by 2 −m is added, and further 2 − (M + 1) is added. numerical by the a X to be a process of calculating the real number X of between 0 and 1, between real X between real X a ~ real X b by scrambling function of real number Y a ~ real Y b Is a conversion process from a real number X between 0 and 1 to a real number Y between 0 and 1, and the real number X is calculated from the real number X by the scrambling function and the real number Y. It is desirable that the conversion process to be a pseudo stochastic process generation process.

このように擬似確率過程発生処理を利用して実数ラベルの生成処理を行う場合には、従来から存在する擬似確率過程発生処理の方法をそのまま応用することにより、ランダム化された実数ラベルの生成処理を容易に実現することが可能となる。   In this way, when generating a real number label using the pseudo-probability process generation process, by applying the conventional pseudo-probability process generation process as it is, a random number real-number label generation process Can be easily realized.

そして、以上に述べた符号順序変換方法において、ブロック順序変換ルールは、少なくとも符号順序変換処理前のビット系列を構成する各ビットのうち7ビット離れた2つのビットが、符号順序変換処理後のビット系列内で7ビット離れた位置に配列されることを回避するためのルールであることが望ましい。   In the code order conversion method described above, the block order conversion rule is that at least two bits that are 7 bits apart from each bit constituting the bit sequence before the code order conversion process are bits after the code order conversion process. It is desirable that the rule is to avoid being arranged at a position separated by 7 bits in the sequence.

ここで、「少なくとも」とは、符号順序変換処理前のビット系列を構成する各ビットのうち7ビット、14ビット、21ビット、28ビット等、7の倍数ビット離れた2つのビットが、符号順序変換処理後のビット系列内で7の倍数ビット離れた位置に配列されることを、なるべく回避するためのルールとして、最低限、7ビットの場合を回避するという意味である。   Here, “at least” means that two bits apart from multiple bits of 7 such as 7 bits, 14 bits, 21 bits, 28 bits, etc., among the bits constituting the bit sequence before the code order conversion process are encoded order. This means that, as a rule for avoiding arrangement at positions separated by multiples of 7 bits in the bit sequence after the conversion processing as much as possible, the case of 7 bits is avoided at a minimum.

このようなブロック順序変換ルールとした場合には、符号順序変換処理の前後の入力系列と出力系列との無相関性を、より一層高めることが可能となる。例えば、符号順序変換処理がターボ符号のインターリーブ処理である場合には、高SNR領域におけるビット誤り率への寄与が最も大きい致命的な入力パターン、すなわち最も低重みのパリティビット系列を作るような低重み入力パターンをなるべく壊すようなインターリーブ処理を実現することが可能となり、コードマッチドインターリーバの設計思想に沿ったインターリーブ処理が実現される。   In the case of such a block order conversion rule, it is possible to further increase the decorrelation between the input sequence and the output sequence before and after the code order conversion process. For example, when the code order conversion process is a turbo code interleaving process, a fatal input pattern that contributes most to the bit error rate in the high SNR region, that is, a low bit weight parity bit sequence is created. It is possible to realize an interleaving process that breaks the weight input pattern as much as possible, and an interleaving process that complies with the design concept of the code matched interleaver is realized.

また、以上に述べた符号順序変換方法において、符号順序変換処理は、ターボ符号のインターリーブ処理として行われることが望ましい。   In the code order conversion method described above, the code order conversion process is preferably performed as a turbo code interleaving process.

このように本発明の符号順序変換方法による処理をターボ符号のインターリーブ処理に適用した場合には、符号器側の2つの部分符号器、あるいは復号器側の2つの部分復号器に対する入力系列の無相関性の程度を、より一層高め、インターリーバの性能、ひいてはターボ符号による誤り訂正処理部を含む情報処理機器の性能を向上させることが可能となる。   As described above, when the process according to the code order conversion method of the present invention is applied to the interleaving process of the turbo code, there is no input sequence for the two partial encoders on the encoder side or the two partial decoders on the decoder side. It is possible to further increase the degree of correlation and improve the performance of the interleaver, and consequently the performance of the information processing device including the error correction processing unit using the turbo code.

また、以上に述べた本発明の符号順序変換方法を実現する装置として、以下のような本発明の符号順序変換装置が挙げられる。   Further, as a device for realizing the code order conversion method of the present invention described above, the following code order conversion device of the present invention can be cited.

すなわち、本発明の符号順序変換装置は、符号順序変換処理前のビット系列と符号順序変換処理後のビット系列とのそれぞれの構成ビットの対応関係を定める符号順序変換テーブルを記憶する符号順序変換テーブル記憶手段と、この符号順序変換テーブル記憶手段に記憶された符号順序変換テーブルを用いて、情報ビット系列を構成する各ビットを並べ替える処理を行う符号順序変換処理手段とを備え、符号順序変換テーブル記憶手段に記憶された符号順序変換テーブルは、情報ビット系列の代用として仮想ビット系列を生成または用意し、この仮想ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この仮想ビット系列を構成する各ビットに付される実数ラベルをランダムに生成し、生成された各実数ラベルとこれらの各実数ラベルを付された各ビットの符号順序変換処理前の仮想ビット系列内での配列位置情報とを対にした状態で、各配列位置情報を各実数ラベルとともに各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置し、行列形式で配置された各配列位置情報を、各行内でそれぞれ各実数ラベルの数値の大小順に従って並べ替える行内ソーティングを行った後、行列形式で配置された行内ソーティング後の各配列位置情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行い、行列形式で配置されたブロックソーティング後の各配列位置情報を列方向に順次読み出すことにより作成されたテーブルであることを特徴とするものである。   That is, the code order conversion apparatus of the present invention stores a code order conversion table that stores a code order conversion table that defines the correspondence between the constituent bits of a bit sequence before the code order conversion process and a bit sequence after the code order conversion process. A code order conversion table comprising: storage means; and code order conversion processing means for performing a process of rearranging each bit constituting the information bit sequence using the code order conversion table stored in the code order conversion table storage means. The code order conversion table stored in the storage means generates or prepares a virtual bit sequence as a substitute for the information bit sequence, and uses a value of at least one bit among a plurality of bits constituting the virtual bit sequence, A real number label attached to each bit constituting this virtual bit sequence is randomly generated, and each generated real number label is generated. And the bit sequence of each bit with each real number label, with each real location label paired with the sequence position information in the virtual bit sequence before the code sequence conversion processing of each bit with each real number label attached. After performing in-line sorting that sequentially arranges the array position information in the matrix format in the row direction according to the array order before conversion processing, and rearranges each array position information arranged in the matrix format according to the order of the numerical value of each real number label in each row Each block position information after block sorting arranged in a matrix format is performed by performing block sorting that rearranges each array position information after sorting in a row arranged in a matrix format in line units according to a predetermined block order conversion rule. Is a table created by sequentially reading out in the column direction.

このような本発明の符号順序変換装置においては、前述した本発明の符号順序変換方法(符号順序変換テーブル事前作成の発明)で得られる作用・効果がそのまま得られ、これにより前記目的が達成される。   In such a code order conversion apparatus of the present invention, the operations and effects obtained by the above-described code order conversion method of the present invention (invention of the code order conversion table in advance) can be obtained as they are, whereby the above-mentioned object is achieved. The

そして、上述した本発明の符号順序変換装置(符号順序変換テーブル事前作成の発明)で用いられる符号順序変換テーブルを作成する装置として、次のような本発明の符号順序変換テーブル作成装置が挙げられる。すなわち、本発明は、情報ビット系列を構成する各ビットを並べ替える符号順序変換処理を行う際に用いられる符号順序変換テーブルを作成する符号順序変換テーブル作成装置であって、情報ビット系列の代用として生成または用意された仮想ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この仮想ビット系列を構成する各ビットに付される実数ラベルをランダムに生成する実数ラベル生成処理手段と、この実数ラベル生成処理手段により生成された各実数ラベルとこれらの各実数ラベルを付された各ビットの符号順序変換処理前の仮想ビット系列内での配列位置情報とを対にした状態で、各配列位置情報を各実数ラベルとともに各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置する行列配置処理手段と、この行列配置処理手段により行列形式で配置された各配列位置情報を、各行内でそれぞれ各実数ラベルの数値の大小順に従って並べ替える行内ソーティングを行う行内ソーティング処理手段と、この行内ソーティング処理手段による行内ソーティング後の各配列位置情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行うブロックソーティング処理手段と、このブロックソーティング処理手段によるブロックソーティング後の各配列位置情報を列方向に順次読み出す行列読出処理手段とを備えたことを特徴とするものである。   As a device for creating a code order conversion table used in the above-described code order conversion device of the present invention (invention of code sequence conversion table pre-creation), the following code order conversion table creation device of the present invention can be cited. . That is, the present invention is a code order conversion table creation device for creating a code order conversion table used when performing a code order conversion process for rearranging each bit constituting an information bit sequence, and as a substitute for the information bit sequence Real number label generation that randomly generates a real number label attached to each bit constituting the virtual bit sequence by using the value of at least one bit of the plurality of bits constituting the generated or prepared virtual bit sequence The processing means, and each real number label generated by the real number label generation processing means and the array position information in the virtual bit sequence before the code order conversion processing of each bit assigned with each real number label are paired In the state, each array position information is ordered in the row direction in a matrix format according to the array order before the code order conversion processing of each bit together with each real number label. Matrix arrangement processing means to be arranged, and in-line sorting processing means for performing in-line sorting in which each array position information arranged in a matrix format by this matrix arrangement processing means is rearranged according to the order of the numerical value of each real number label in each row; , Block sorting processing means for performing block sorting for rearranging each array position information after in-line sorting by the in-line sorting processing means in line units according to a predetermined block order conversion rule, and after block sorting by the block sorting processing means Matrix read processing means for sequentially reading the array position information in the column direction.

また、本発明の符号順序変換装置は、情報ビット系列の符号順序変換処理で各行内で行われる行内ソーティングの際の順序変換ルールを定める行内ソーティングテーブルを各行に対応する各ブロック毎に記憶する行内ソーティングテーブル記憶手段と、情報ビット系列を構成する各ビットの値を示す内容情報を各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置する行列配置処理手段と、この行列配置処理手段により行列形式で配置された各内容情報を、各行内でそれぞれ各行内ソーティングテーブルを用いて並べ替える行内ソーティングを行う行内ソーティング処理手段と、この行内ソーティング処理手段による行内ソーティング後の各内容情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行うブロックソーティング処理手段と、このブロックソーティング処理手段によるブロックソーティング後の各内容情報を列方向に順次読み出すことにより、符号順序変換処理後のビット系列を生成する行列読出処理手段とを備え、行内ソーティングテーブル記憶手段に記憶された各行内ソーティングテーブルは、情報ビット系列の代用として仮想ビット系列を生成または用意し、この仮想ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この仮想ビット系列を構成する各ビットに付される実数ラベルをランダムに生成し、生成された各実数ラベルとこれらの各実数ラベルを付された各ビットの符号順序変換処理前の仮想ビット系列内での配列位置情報とを対にした状態で、各配列位置情報を各実数ラベルとともに各ビットの符号順序変換処理前の配列順序に従って順次配列し、配列した各配列位置情報を複数のブロックに区切って各ブロック内でそれぞれ各実数ラベルの数値の大小順に従って並べ替えることにより作成されたテーブルであることを特徴とするものである。   Also, the code order conversion apparatus of the present invention stores an in-line sorting table that defines an order conversion rule for the in-line sorting performed in each line in the code order conversion process of the information bit sequence for each block corresponding to each line. Sorting table storage means, matrix arrangement processing means for sequentially arranging the content information indicating the value of each bit constituting the information bit sequence in the row direction in a matrix format according to the arrangement order of each bit before the code order conversion process, and the matrix In-line sorting processing means for performing in-line sorting, in which each content information arranged in a matrix format by the arrangement processing means is rearranged in each row using each in-line sorting table, and each content after in-line sorting by this in-line sorting processing means Information is aligned in line units according to a predetermined block order conversion rule. Block sorting processing means for performing block sorting to be replaced, and matrix read processing means for generating a bit sequence after the code order conversion processing by sequentially reading each content information after the block sorting by the block sorting processing means in the column direction Each in-line sorting table stored in the in-line sorting table storage means generates or prepares a virtual bit sequence as a substitute for the information bit sequence, and stores at least one bit of a plurality of bits constituting the virtual bit sequence. The real number label attached to each bit constituting this virtual bit sequence is randomly generated by using the value, and the generated real number label and the code order conversion processing of each bit assigned with each real number label are performed. In a pair with the array position information in the virtual bit sequence of Each array position information is sequentially arranged along with each real number label according to the order of the bits before the code order conversion process. Each array position information is divided into a plurality of blocks, and the numerical value of each real label is set within each block. It is a table created by rearranging in order.

このような本発明の符号順序変換装置においては、前述した本発明の符号順序変換方法(行内ソーティングテーブル事前作成の発明)で得られる作用・効果がそのまま得られ、これにより前記目的が達成される。   In such a code order conversion apparatus of the present invention, the operations and effects obtained by the above-described code order conversion method of the present invention (invention of in-line sorting table pre-creation) can be obtained as they are, thereby achieving the object. .

なお、上述した本発明の符号順序変換装置(行内ソーティングテーブル事前作成の発明)で用いられる行内ソーティングテーブルは、次のような構成を有する行内ソーティングテーブル作成装置により作成することができる。すなわち、情報ビット系列の符号順序変換処理で各行内で行われる行内ソーティングの際の順序変換ルールを定める行内ソーティングテーブルを作成する行内ソーティングテーブル作成装置は、情報ビット系列の代用として仮想ビット系列を生成または用意し、この仮想ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この仮想ビット系列を構成する各ビットに付される実数ラベルをランダムに生成する実数ラベル生成処理手段と、この実数ラベル生成処理手段により生成された各実数ラベルとこれらの各実数ラベルを付された各ビットの符号順序変換処理前の仮想ビット系列内での配列位置情報とを対にした状態で、各配列位置情報を各実数ラベルとともに各ビットの符号順序変換処理前の配列順序に従って順次配列する配列処理手段と、この配列処理手段により配列した各配列位置情報を複数のブロックに区切って各ブロック内でそれぞれ各実数ラベルの数値の大小順に従って並べ替えた後、並べ替えられた各配列位置情報を各ブロック毎に順次読み出す配列読出処理手段とを備えた構成とすることができる。   The in-line sorting table used in the above-described code order conversion apparatus of the present invention (invention of in-line sorting table in advance) can be created by an in-line sorting table creating apparatus having the following configuration. In other words, the in-line sorting table creation device that creates an in-line sorting table that defines the order conversion rules for the in-line sorting performed within each row in the code order conversion process of the information bit sequence generates a virtual bit sequence instead of the information bit sequence. Alternatively, a real number label is generated that randomly generates a real number label attached to each bit constituting the virtual bit sequence by using the value of at least one of the plurality of bits constituting the virtual bit sequence. The processing means, and each real number label generated by the real number label generation processing means and the array position information in the virtual bit sequence before the code order conversion processing of each bit assigned with each real number label are paired In the state, each array position information and each real number label are followed according to the array order before the code order conversion processing of each bit. The array processing means for sequentially arranging the information, and the array position information arranged by the array processing means are divided into a plurality of blocks and rearranged according to the order of the numerical value of each real number label in each block, and then rearranged. An arrangement read processing means for sequentially reading the arrangement position information for each block can be employed.

さらに、本発明の符号順序変換装置は、符号順序変換処理の対象となる情報ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この情報ビット系列を構成する各ビットに付される実数ラベルをランダムに生成する実数ラベル生成処理手段と、この実数ラベル生成処理手段により生成された各実数ラベルとこれらの各実数ラベルを付された各ビットの符号順序変換処理前の情報ビット系列内での配列位置情報とを対にした状態で、各配列位置情報を各実数ラベルとともに各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置する行列配置処理手段と、この行列配置処理手段により行列形式で配置された各配列位置情報を、各行内でそれぞれ各実数ラベルの数値の大小順に従って並べ替える行内ソーティングを行う行内ソーティング処理手段と、この行内ソーティング処理手段による行内ソーティング後の各配列位置情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行うブロックソーティング処理手段と、このブロックソーティング処理手段によるブロックソーティング後の各配列位置情報を列方向に順次読み出すことにより、符号順序変換処理前のビット系列と符号順序変換処理後のビット系列とのそれぞれの構成ビットの対応関係を定める符号順序変換テーブルを作成する符号順序変換テーブル作成処理手段と、この符号順序変換テーブル作成処理手段により作成された符号順序変換テーブルを用いて情報ビット系列を構成する各ビットを並べ替える符号順序変換処理手段とを備えたことを特徴とするものである。   Furthermore, the code order conversion apparatus of the present invention uses each bit constituting the information bit sequence by using the value of at least one bit among the plurality of bits constituting the information bit sequence that is the target of the code order conversion process. Real number label generation processing means for randomly generating a real number label attached to each of the real number labels generated by the real number label generation processing means, and before the code order conversion processing of each bit to which these real number labels are attached Matrix arrangement processing that sequentially arranges each array position information in the row direction in a matrix format according to the array order before the code order conversion process of each bit together with each real number label in a state where the array position information in the information bit series is paired And each array position information arranged in a matrix form by this matrix arrangement processing means is rearranged in the order of the numerical value of each real number label in each row. In-line sorting processing means for performing in-line sorting, and block sorting processing means for performing block sorting for rearranging each array position information after the in-line sorting by the in-line sorting processing means in line units according to a predetermined block order conversion rule; By sequentially reading the array position information after the block sorting by the block sorting processing means in the column direction, the correspondence between the constituent bits of the bit sequence before the code order conversion process and the bit sequence after the code order conversion process Code order conversion table creation processing means for creating a code order conversion table for determining the code order, and a code order for rearranging each bit constituting the information bit sequence using the code order conversion table created by the code order conversion table creation processing means Conversion process It is characterized in that a stage.

このような本発明の符号順序変換装置においては、前述した本発明の符号順序変換方法(符号順序変換テーブル実時間作成の発明)で得られる作用・効果がそのまま得られ、これにより前記目的が達成される。   In such a code order conversion apparatus of the present invention, the operations and effects obtained by the above-described code order conversion method of the present invention (invention of code order conversion table real-time creation) can be obtained as they are, thereby achieving the object. Is done.

そして、本発明の符号順序変換装置は、符号順序変換処理の対象となる情報ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この情報ビット系列を構成する各ビットに付される実数ラベルをランダムに生成する実数ラベル生成処理手段と、この実数ラベル生成処理手段により生成された各実数ラベルとこれらの各実数ラベルを付された各ビットの符号順序変換処理前の情報ビット系列内での配列位置情報と各ビットの値を示す内容情報とを対にした状態で、各配列位置情報および各内容情報を各実数ラベルとともに各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置する行列配置処理手段と、この行列配置処理手段により行列形式で配置された各配列位置情報および各内容情報を、各行内でそれぞれ各実数ラベルの数値の大小順に従って並べ替える行内ソーティングを行う行内ソーティング処理手段と、この行内ソーティング処理手段による行内ソーティング後の各配列位置情報および各内容情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行うブロックソーティング処理手段と、このブロックソーティング処理手段によるブロックソーティング後の各配列位置情報を列方向に順次読み出すことにより、符号順序変換処理前のビット系列と符号順序変換処理後のビット系列とのそれぞれの構成ビットの対応関係を定める符号順序変換テーブルを作成する符号順序変換テーブル作成処理手段と、ブロックソーティング処理手段によるブロックソーティング後の各内容情報を列方向に順次読み出すことにより符号順序変換処理後のビット系列を生成する行列読出処理手段とを備えたことを特徴とするものである。   Then, the code order conversion device of the present invention uses each bit constituting the information bit sequence by using the value of at least one bit among the plurality of bits constituting the information bit sequence to be subjected to the code order conversion process. Real number label generation processing means for randomly generating a real number label attached to each of the real number labels generated by the real number label generation processing means, and before the code order conversion processing of each bit to which these real number labels are attached With the array position information in the information bit sequence paired with the content information indicating the value of each bit, each array position information and each content information together with each real number label, the array order before the code order conversion processing of each bit In accordance with the matrix arrangement processing means for sequentially arranging in the row direction in a matrix format, each array position information and each content information arranged in matrix format by this matrix arrangement processing means In-line sorting processing means for performing in-line sorting to sort in accordance with the numerical order of the numerical value of each real label in each line, and each array position information and each content information after in-line sorting by this in-line sorting processing means are determined in advance. Block sorting processing means for performing block sorting for rearranging in line units according to the block order conversion rule, and the bit before the code order conversion processing by sequentially reading the array position information after the block sorting by the block sorting processing means in the column direction Code order conversion table creation processing means for creating a code order conversion table for defining the correspondence between the constituent bits of the sequence and the bit sequence after the code order conversion processing, and each content after block sorting by the block sorting processing means Is characterized in that a matrix read processing means for generating a bit sequence after coding sequence conversion processing by sequentially reading distribution in the column direction.

このような本発明の符号順序変換装置においては、前述した本発明の符号順序変換方法(符号順序変換テーブル実時間作成・内容情報直接並べ替え同時処理の発明)で得られる作用・効果がそのまま得られ、これにより前記目的が達成される。   In such a code order conversion apparatus of the present invention, the operations and effects obtained by the above-described code order conversion method of the present invention (code order conversion table real-time creation / content information direct rearrangement simultaneous processing invention) can be obtained as they are. This achieves the object.

また、本発明の符号順序変換装置は、符号順序変換処理の対象となる情報ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この情報ビット系列を構成する各ビットに付される実数ラベルをランダムに生成する実数ラベル生成処理手段と、この実数ラベル生成処理手段により生成された各実数ラベルとこれらの各実数ラベルを付された各ビットの符号順序変換処理前の情報ビット系列内での配列位置情報とを対にした状態で、各配列位置情報を各実数ラベルとともに各ビットの符号順序変換処理前の配列順序に従って順次配列する配列処理手段と、この配列処理手段により配列した各配列位置情報を複数のブロックに区切って各ブロック内でそれぞれ各実数ラベルの数値の大小順に従って並べ替えることにより、各行内で行われる行内ソーティングの際の順序変換ルールを定める行内ソーティングテーブルを各行に対応する各ブロック毎に作成する行内ソーティングテーブル作成処理手段と、情報ビット系列を構成する各ビットの値を示す内容情報を各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置する行列配置処理手段と、この行列配置処理手段により行列形式で配置された各内容情報を、各行内でそれぞれ各行内ソーティングテーブルを用いて並べ替える行内ソーティングを行う行内ソーティング処理手段と、この行内ソーティング処理手段による行内ソーティング後の各内容情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行うブロックソーティング処理手段と、このブロックソーティング処理手段によるブロックソーティング後の各内容情報を列方向に順次読み出すことにより符号順序変換処理後のビット系列を生成する行列読出処理手段とを備えたことを特徴とするものである。   In addition, the code order conversion device of the present invention uses each bit constituting the information bit sequence by using the value of at least one bit among the plurality of bits constituting the information bit sequence to be subjected to the code order conversion process. Real number label generation processing means for randomly generating a real number label attached to each of the real number labels generated by the real number label generation processing means, and before the code order conversion processing of each bit to which these real number labels are attached An array processing means for sequentially arranging each array position information together with each real number label in accordance with the array order before the code order conversion process of each bit in a state in which the array position information in the information bit series is paired; By dividing each array position information arranged by the above into a plurality of blocks and rearranging them in the order of the numerical value of each real number label in each block. In-line sorting table creation processing means for creating an in-line sorting table for each block corresponding to each row, and a value of each bit constituting an information bit sequence Matrix arrangement processing means for sequentially arranging the content information in the row direction in a matrix format according to the arrangement order before the code order conversion processing of each bit, and each content information arranged in a matrix format by this matrix arrangement processing means within each row In-line sorting processing means for performing in-line sorting, each of which is sorted using each in-line sorting table, and a block for rearranging the contents information after the in-line sorting by the in-line sorting processing means in units of lines according to a predetermined block order conversion rule. Block sorting process for sorting And matrix read processing means for generating a bit sequence after code order conversion processing by sequentially reading each content information after the block sorting by the block sorting processing means in the column direction. .

このような本発明の符号順序変換装置においては、前述した本発明の符号順序変換方法(行内ソーティングテーブル実時間作成の発明)で得られる作用・効果がそのまま得られ、これにより前記目的が達成される。   In such a code order conversion apparatus of the present invention, the operations and effects obtained by the above-described code order conversion method of the present invention (invention of the in-line sorting table real time) can be obtained as they are, and thereby the above-described object is achieved. The

さらに、本発明の符号順序変換装置は、符号順序変換処理の対象となる情報ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この情報ビット系列を構成する各ビットに付される実数ラベルをランダムに生成する実数ラベル生成処理手段と、この実数ラベル生成処理手段により生成された各実数ラベルとこれらの各実数ラベルを付された各ビットの符号順序変換処理前の情報ビット系列内での配列位置情報と各ビットの値を示す内容情報とを対にした状態で、各配列位置情報および各内容情報を各実数ラベルとともに各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置する行列配置処理手段と、この行列配置処理手段により行列形式で配置された各配列位置情報および各内容情報を、各行内でそれぞれ各実数ラベルの数値の大小順に従って並べ替える行内ソーティングを行う行内ソーティング処理手段と、この行内ソーティング処理手段による行内ソーティング後の各配列位置情報を各行毎に順次読み出すことにより、各行内ソーティングの際の順序変換ルールを定める行内ソーティングテーブルを各行に対応する各ブロック毎に作成する行内ソーティングテーブル作成処理手段と、行内ソーティング処理手段による行内ソーティング後の各内容情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行うブロックソーティング処理手段と、このブロックソーティング処理手段によるブロックソーティング後の各内容情報を列方向に順次読み出すことにより符号順序変換処理後のビット系列を生成する行列読出処理手段とを備えたことを特徴とするものである。   Furthermore, the code order conversion apparatus of the present invention uses each bit constituting the information bit sequence by using the value of at least one bit among the plurality of bits constituting the information bit sequence that is the target of the code order conversion process. Real number label generation processing means for randomly generating a real number label attached to each of the real number labels generated by the real number label generation processing means, and before the code order conversion processing of each bit to which these real number labels are attached With the array position information in the information bit sequence paired with the content information indicating the value of each bit, each array position information and each content information together with each real number label, the array order before the code order conversion processing of each bit In accordance with the matrix arrangement processing means for sequentially arranging in the row direction in a matrix format, each array position information and each content information arranged in matrix format by this matrix arrangement processing means In-line sorting processing means for performing in-line sorting for rearranging in order of the numerical value of each real label in each line, and by reading out each array position information after in-line sorting by this in-line sorting processing means for each line, In-line sorting table creation processing means for creating an in-line sorting table for each block corresponding to each row, which defines the order conversion rule for the in-line sorting, and each content information after the in-line sorting by the in-line sorting processing means are determined in advance. Block sorting processing means for performing block sorting for rearranging in line units in accordance with the block order conversion rule, and code order conversion processing by sequentially reading each piece of content information after block sorting by the block sorting processing means in the column direction. Is characterized in that a matrix read processing means for generating a bit sequence after.

このような本発明の符号順序変換装置においては、前述した本発明の符号順序変換方法(行内ソーティングテーブル実時間作成・内容情報直接並べ替え同時処理の発明)で得られる作用・効果がそのまま得られ、これにより前記目的が達成される。   In such a code order conversion apparatus of the present invention, the operations and effects obtained by the above-described code order conversion method of the present invention (invention of in-line sorting table real-time creation and content information direct rearrangement simultaneous processing) can be obtained as they are. This achieves the object.

そして、本発明の符号順序変換装置は、符号順序変換処理の対象となる情報ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この情報ビット系列を構成する各ビットに付される実数ラベルをランダムに生成する実数ラベル生成処理手段と、この実数ラベル生成処理手段により生成された各実数ラベルとこれらの各実数ラベルを付された各ビットの値を示す内容情報とを対にした状態で、各内容情報を各実数ラベルとともに各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置する行列配置処理手段と、この行列配置処理手段により行列形式で配置された各内容情報を、各行内でそれぞれ各実数ラベルの数値の大小順に従って並べ替える行内ソーティングを行う行内ソーティング処理手段と、この行内ソーティング処理手段による行内ソーティング後の各内容情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行うブロックソーティング処理手段と、このブロックソーティング処理手段によるブロックソーティング後の各内容情報を列方向に順次読み出すことにより符号順序変換処理後のビット系列を生成する行列読出処理手段とを備えたことを特徴とするものである。   Then, the code order conversion device of the present invention uses each bit constituting the information bit sequence by using the value of at least one bit among the plurality of bits constituting the information bit sequence to be subjected to the code order conversion process. Real number label generation processing means for randomly generating a real number label attached to the contents, content information indicating each real number label generated by the real number label generation processing means, and a value of each bit assigned to each real number label, and In a state in which each pair is paired, each content information and each real number label are sequentially arranged in the row direction in a matrix form according to the arrangement order before the code order conversion process of each bit, and the matrix arrangement processing means In-line sorting process that performs in-line sorting that sorts each piece of content information placed in step 1 in the order of the numerical value of each real label in each line. Means, block sorting processing means for performing block sorting in which each content information after the in-line sorting by the in-line sorting processing means is rearranged in line units in accordance with a predetermined block order conversion rule, and block sorting by the block sorting processing means Matrix read processing means for generating a bit sequence after the code order conversion processing by sequentially reading each subsequent content information in the column direction is provided.

このような本発明の符号順序変換装置においては、前述した本発明の符号順序変換方法(内容情報直接並べ替えの発明)で得られる作用・効果がそのまま得られ、これにより前記目的が達成される。   In such a code order conversion apparatus of the present invention, the operation and effect obtained by the above-described code order conversion method of the present invention (invention of content information direct rearrangement) can be obtained as it is, and thereby the above object is achieved. .

また、前述した符号順序変換装置(符号順序変換テーブル事前作成の発明、行内ソーティングテーブル事前作成の発明)において、テーブルが作成された際に行われた各実数ラベルの生成処理は、連続する複数のビットの各値を用いて実数Xa〜実数Xbの間の実数Xを算出した後、tを、Xa≦t<(Xa+Xb)/2の範囲の実数としたとき、g(t)+g(t+(Xb−Xa)/2)=Ya+Ybという条件式を満たすスクランブリング関数Y=g(X)を用いて、実数Xa〜実数Xbの間の実数Xを実数Ya〜実数Ybの間の実数Yに変換し、変換して得られた実数Yの値を実数ラベルとし、連続する複数のビットの各値を1ビットずつシフトしながら用いて、実数Xの算出処理およびスクランブリング関数による実数Xから実数Yへの変換処理を繰り返すことにより、各ビットに付される各実数ラベルを順次生成する処理であることが望ましい。 Further, in the above-described code order conversion apparatus (invention of pre-creation of code order conversion table, invention of pre-creation of in-line sorting table), the generation process of each real number label performed when the table is created includes a plurality of continuous labels. After calculating the real number X between the real number X a and the real number X b using each value of the bit, when t is a real number in the range of X a ≦ t <(X a + X b ) / 2, g ( t) + g (t + (X b −X a ) / 2) = Y a + Y b Using the scrambling function Y = g (X) that satisfies the conditional expression, real number X between real number X a and real number X b Is converted into a real number Y between the real number Y a and the real number Y b , the value of the real number Y obtained by the conversion is used as a real number label, and each value of a plurality of consecutive bits is used while shifting one bit at a time, Real number X calculation processing and scrambling function to convert real number X to real number Y By repeating the conversion process, it is desirable that the process for sequentially generating each real labels applied to each bit.

さらに、上述したようにテーブル(符号順序変換テーブルまたは行内ソーティングテーブル)がスクランブリング関数を用いて生成された実数ラベルを用いて作成されている場合において、連続する複数のビットの各値を用いて実数Xa〜実数Xbの間の実数Xを算出する処理は、算出に用いるビット数をMとし、mを1〜Mの整数とすると、Mビットの各値のそれぞれに2-mを乗じた値を加算し、さらに2-(M+1)を加算して得られる数値をXとすることにより、0〜1の間の実数Xを算出する処理であり、スクランブリング関数による実数Xa〜実数Xbの間の実数Xから実数Ya〜実数Ybの間の実数Yへの変換処理は、0〜1の間の実数Xから0〜1の間の実数Yへの変換処理であり、これらの実数Xの算出処理およびスクランブリング関数による実数Xから実数Yへの変換処理は、擬似確率過程発生処理であることが望ましい。 Further, as described above, when a table (code order conversion table or in-line sorting table) is created using a real number label generated using a scrambling function, each value of a plurality of consecutive bits is used. processing for calculating the real X between the real number X a ~ real X b is the number of bits used for calculation is M, when an integer 1~M the m, multiplied by 2 -m, each of the values of M bits This is a process of calculating a real number X between 0 and 1 by adding X and a value obtained by adding 2 − (M + 1) to X, and a real number X a by a scrambling function in the conversion process from real X between ~ real X b conversion into real numbers Y between the real number Y a ~ real Y b are the real Y between real X between 0-1 0-1 Yes, the calculation process of these real numbers X and the scrambling function The conversion process from a real number X to a real number Y by number is preferably a pseudo stochastic process generation process.

そして、前述した符号順序変換装置(符号順序変換テーブル事前作成の発明、行内ソーティングテーブル事前作成の発明)において、ブロック順序変換ルールは、少なくとも符号順序変換処理前のビット系列を構成する各ビットのうち7ビット離れた2つのビットが、符号順序変換処理後のビット系列内で7ビット離れた位置に配列されることを回避するためのルールであることが望ましい。   In the above-described code order conversion apparatus (invention of code order conversion table pre-creation, in-line sorting table pre-creation), the block order conversion rule includes at least each bit constituting the bit sequence before the code order conversion process. It is desirable that the rule is for avoiding that two bits separated by 7 bits are arranged at positions separated by 7 bits in the bit sequence after the code order conversion process.

また、前述した符号順序変換装置(符号順序変換テーブル事前作成の発明、行内ソーティングテーブル事前作成の発明)において、符号順序変換処理は、ターボ符号のインターリーブ処理として行われることが望ましい。   In the above-described code order conversion apparatus (invention of pre-creation of code order conversion table, invention of pre-creation of in-line sorting table), it is desirable that the code order conversion process is performed as a turbo code interleaving process.

さらに、前述した符号順序変換装置(符号順序変換テーブル実時間作成の発明、符号順序変換テーブル実時間作成・内容情報直接並べ替え同時処理の発明、行内ソーティングテーブル実時間作成の発明、行内ソーティングテーブル実時間作成・内容情報直接並べ替え同時処理の発明、内容情報直接並べ替えの発明)において、実数ラベル生成処理手段は、連続する複数のビットの各値を用いて実数Xa〜実数Xbの間の実数Xを算出する重み算出処理手段と、tをXa≦t<(Xa+Xb)/2の範囲の実数としたとき、g(t)+g(t+(Xb−Xa)/2)=Ya+Ybという条件式を満たすスクランブリング関数Y=g(X)を用いて、実数Xa〜実数Xbの間の実数Xを実数Ya〜実数Ybの間の実数Yに変換し、変換して得られた実数Yの値を実数ラベルとする重み/ラベル変換処理手段と、連続する複数のビットの各値を1ビットずつシフトしながら用いて重み算出処理手段および重み/ラベル変換処理手段による各処理を繰り返すためのビットのシフト処理を行うシフト処理手段とを含んで構成されていることが望ましい。 Further, the above-described code order conversion apparatus (invention of code order conversion table real-time creation, code order conversion table real-time creation / content information direct rearrangement simultaneous processing, in-line sorting table real-time creation invention, in-line sorting table actual In the invention of time creation / content information direct rearrangement simultaneous processing, content information direct rearrangement invention), the real number label generation processing means uses the values of a plurality of consecutive bits between real number Xa and real number Xb . And weight calculation processing means for calculating a real number X of the following: g (t) + g (t + (X b −X a ) / where t is a real number in the range of X a ≦ t <(X a + X b ) / 2 2) Using the scrambling function Y = g (X) that satisfies the conditional expression = Y a + Y b , the real number X between the real number X a and the real number X b is changed to the real number Y between the real number Y a and the real number Y b. Obtained by converting to The weight / label conversion processing means that uses the value of the number Y as a real number label, and each process of the weight calculation processing means and the weight / label conversion processing means are repeated while shifting each value of a plurality of consecutive bits one by one. And a shift processing means for performing a bit shift process for this purpose.

そして、上述したように実数ラベル生成処理手段をスクランブリング関数を用いて実数ラベルを生成する構成とした場合において、重み算出処理手段は、算出に用いるビット数をMとし、mを1〜Mの整数とすると、Mビットの各値のそれぞれに2-mを乗じた値を加算し、さらに2-(M+1)を加算して得られる数値をXとすることにより、0〜1の間の実数Xを算出する処理を行う構成とされ、重み/ラベル変換処理手段は、0〜1の間の実数Xから0〜1の間の実数Yへの変換処理を行う構成とされ、実数ラベル生成処理手段は、擬似確率過程発生処理を行う構成されていることが望ましい。 When the real number label generation processing unit is configured to generate a real number label using a scrambling function as described above, the weight calculation processing unit sets the number of bits used for calculation to M and sets m to 1 to M. Assuming that it is an integer, a value obtained by multiplying each value of M bits by 2 −m and adding 2 − (M + 1) to X is set to X, and 0 to 1 The weight / label conversion processing means is configured to perform a conversion process from a real number X between 0 and 1 to a real number Y between 0 and 1, and a real number label. The generation processing means is preferably configured to perform a pseudo stochastic process generation process.

また、前述した符号順序変換装置(符号順序変換テーブル実時間作成の発明、符号順序変換テーブル実時間作成・内容情報直接並べ替え同時処理の発明、行内ソーティングテーブル実時間作成の発明、行内ソーティングテーブル実時間作成・内容情報直接並べ替え同時処理の発明、内容情報直接並べ替えの発明)において、ブロックソーティング処理手段は、ブロック順序変換ルールとして、少なくとも符号順序変換処理前のビット系列を構成する各ビットのうち7ビット離れた2つのビットが、符号順序変換処理後のビット系列内で7ビット離れた位置に配列されることを回避するためのルールを用いる構成とされていることが望ましい。   In addition, the above-described code order conversion apparatus (invention of code order conversion table real-time creation, code order conversion table real-time creation / content information direct rearrangement simultaneous processing, in-line sorting table real-time creation invention, in-line sorting table actual In the invention of time creation / content information direct rearrangement simultaneous processing, content information direct rearrangement invention), the block sorting processing means, as a block order conversion rule, for each bit constituting at least the bit sequence before the code order conversion process Of these, it is desirable to use a rule for avoiding that two bits separated by 7 bits are arranged at positions separated by 7 bits in the bit sequence after the code order conversion process.

さらに、前述した符号順序変換装置(符号順序変換テーブル実時間作成の発明、符号順序変換テーブル実時間作成・内容情報直接並べ替え同時処理の発明、行内ソーティングテーブル実時間作成の発明、行内ソーティングテーブル実時間作成・内容情報直接並べ替え同時処理の発明、内容情報直接並べ替えの発明)は、ターボ符号用のインターリーバとして好適に用いることができる。   Further, the above-described code order conversion apparatus (invention of code order conversion table real-time creation, code order conversion table real-time creation / content information direct rearrangement simultaneous processing, in-line sorting table real-time creation invention, in-line sorting table actual The invention of the simultaneous processing of time creation and content information direct rearrangement and the invention of content information direct rearrangement can be suitably used as an interleaver for turbo codes.

そして、前述した符号順序変換装置(符号順序変換テーブル実時間作成の発明、符号順序変換テーブル実時間作成・内容情報直接並べ替え同時処理の発明、行内ソーティングテーブル実時間作成の発明、行内ソーティングテーブル実時間作成・内容情報直接並べ替え同時処理の発明、内容情報直接並べ替えの発明)において、シフト処理手段は、シフトレジスタにより構成されていることが望ましい。この場合は、符号順序変換装置を主としてハードウェア回路により実現する場合である。   The code order conversion apparatus described above (invention of code order conversion table real time creation, code order conversion table real time creation / content information direct rearrangement simultaneous processing, in-line sorting table real time creation invention, in-line sorting table actual In the time creation / content information direct rearrangement simultaneous processing invention and the content information direct rearrangement invention), the shift processing means is preferably constituted by a shift register. In this case, the code order conversion apparatus is mainly realized by a hardware circuit.

また、本発明のターボ符号用の符号器は、以上に述べた符号順序変換装置をターボ符号用のインターリーバとして備えていることを特徴とするものである。   The turbo code encoder of the present invention is characterized in that the above-described code order conversion apparatus is provided as a turbo code interleaver.

さらに、本発明のターボ符号用の復号器は、以上に述べた符号順序変換装置をターボ符号用のインターリーバとして備えていることを特徴とするものである。   Furthermore, a turbo code decoder according to the present invention is characterized by including the above-described code order conversion device as a turbo code interleaver.

なお、以上に述べた本発明の符号順序変換装置や符号順序変換テーブル作成装置、あるいは前述した行内ソーティングテーブル作成装置、並びに本発明のターボ符号用の符号器や復号器は、主としてハードウェア回路により実現してもよく、主としてソフトウェアにより実現してもよい。そして、ハードウェア回路により実現する場合には、比較と加算を行うだけの回路構成とすることが可能であるため、前述した特許文献1および非特許文献1に記載された素数インターリーバのように乗算器や剰余計算器を必要とする場合に比べ、高速に動作させることが可能となる。このため、処理時間の短縮を図ることが可能となり、特に、リアルタイムで処理を行う場合に有効である。また、処理内容が簡略化されるので、チップサイズの小型化、発熱量の低減を図ることも可能となる。   The code order conversion apparatus and code order conversion table creation apparatus of the present invention described above, or the in-line sorting table creation apparatus described above, and the turbo code encoder and decoder of the present invention are mainly configured by hardware circuits. It may be realized or may be realized mainly by software. And when realized by a hardware circuit, it is possible to have a circuit configuration that only performs comparison and addition, so that the prime interleaver described in Patent Document 1 and Non-Patent Document 1 described above is used. Compared with the case where a multiplier or a remainder calculator is required, it can be operated at high speed. For this reason, it is possible to shorten the processing time, which is particularly effective when processing is performed in real time. Further, since the processing content is simplified, it is possible to reduce the chip size and reduce the amount of heat generation.

以上に述べたように本発明によれば、ランダムに生成された実数ラベルの数値の大小関係を利用して符号順序変換処理を行うので、ランダム化の程度の高い符号順序変換処理、すなわち処理前の入力系列と処理後の出力系列との無相関性の程度の高い符号順序変換処理を実現することができ、情報処理機器の性能の向上を図ることができるという効果がある。   As described above, according to the present invention, since the code order conversion process is performed by using the magnitude relationship between the numerical values of randomly generated real number labels, the code order conversion process with a high degree of randomization, that is, before the process is performed. Code sequence conversion processing with a high degree of decorrelation between the input sequence and the processed output sequence can be realized, and the performance of the information processing device can be improved.

以下に本発明の各実施形態について図面を参照して説明する。   Embodiments of the present invention will be described below with reference to the drawings.

[第1実施形態]
図1には、本発明の第1実施形態に係る通信システムに設けられたターボ符号による誤り訂正処理部10の全体構成が示されている。本第1実施形態は、符号順序変換テーブル事前作成の発明に係る実施形態である。通信システムは、例えば携帯電話システム等であるが、これに限定されるものではない。また、図2には、符号順序変換テーブル作成装置50、インターリーバ23,33、およびデインターリーバ34の構成が示されている。図3は、符号順序変換テーブルの作成処理の流れの概念図であり、図4には、符号順序変換テーブルおよび符号順序復元テーブルの作成処理の流れがフローチャートで示されている。さらに、図5および図6には、インターリーブ処理およびデインターリーブ処理の流れがそれぞれフローチャートで示されている。図7は、符号順序変換テーブルの作成の際における仮想ビット系列の構成ビットの生成方法の説明図である。図8および図9は、符号順序変換テーブルの作成処理の詳細説明図である。図10は、スクランブリング関数の形状の説明図であり、図11は、ブロック順序変換ルールの作成方法の説明図であり、図12は、シミュレーションによる比較実験結果を示す図である。
[First Embodiment]
FIG. 1 shows the overall configuration of an error correction processing unit 10 using a turbo code provided in the communication system according to the first embodiment of the present invention. The first embodiment is an embodiment according to the invention of code order conversion table pre-creation. The communication system is, for example, a mobile phone system, but is not limited thereto. FIG. 2 shows the configuration of the code order conversion table creation device 50, the interleavers 23 and 33, and the deinterleaver 34. FIG. 3 is a conceptual diagram of the flow of the process for creating the code order conversion table. FIG. 4 is a flowchart showing the flow of the process for creating the code order conversion table and the code order restoration table. Further, in FIGS. 5 and 6, the flow of the interleaving process and the deinterleaving process is shown by flowcharts, respectively. FIG. 7 is an explanatory diagram of a method for generating the constituent bits of the virtual bit sequence when creating the code order conversion table. 8 and 9 are detailed explanatory diagrams of the code order conversion table creation process. FIG. 10 is an explanatory diagram of the shape of the scrambling function, FIG. 11 is an explanatory diagram of a method for creating a block order conversion rule, and FIG. 12 is a diagram showing a comparison experiment result by simulation.

図1において、通信システムに設けられたターボ符号による誤り訂正処理部10は、通信システムの送信機側に設けられた符号器20と、受信機側に設けられた復号器30とにより構成されている。   In FIG. 1, an error correction processing unit 10 using a turbo code provided in a communication system includes an encoder 20 provided on the transmitter side of the communication system and a decoder 30 provided on the receiver side. Yes.

符号器20は、第1の要素符号器(encoder;部分符号器とも称する。)21と、第2の要素符号器(encoder)22と、符号順序変換装置であるインターリーバ(interleaver)23とを含んで構成されている。   The encoder 20 includes a first element encoder (also referred to as a partial encoder) 21, a second element encoder 22, and an interleaver 23 that is a code order conversion device. It is configured to include.

復号器30は、第1の要素復号器(decoder;部分復号器とも称する。)31と、第2の要素復号器(decoder)32と、符号順序変換装置であるインターリーバ(interleaver)33と、符号順序復元装置であるデインターリーバ(deinterleaver)34とを含んで構成されている。   The decoder 30 includes a first element decoder (also referred to as a partial decoder) 31, a second element decoder 32, an interleaver 33 serving as a code order converter, It includes a deinterleaver 34 that is a code order restoration device.

これらの符号器20および復号器30の構成および機能は、インターリーバ23,33およびデインターリーバ34の中身(内部の処理手順)を除き、従来のものと同様であり、これらの符号器20および復号器30では、次のような処理が行われる。   The configurations and functions of these encoders 20 and decoders 30 are the same as the conventional ones except for the contents (internal processing procedures) of the interleavers 23 and 33 and the deinterleaver 34. In the decoder 30, the following processing is performed.

先ず、符号器20では、受信機側への送信対象となる情報ビット系列Cが、第1の要素符号器21に入力され、パリティビット系列V1が生成される。また、情報ビット系列Cは、インターリーバ23で並べ替えられて系列Chとなり、この系列Chが第2の要素符号器22に入力され、パリティビット系列V2が生成される。そして、情報ビット系列Cのままの状態の系列V0およびパリティビット系列V1,V2は、通信路40を介して受信機側に送信される。この際、送信される各系列V0,V1,V2は、通信路40においてノイズの影響を受ける。例えば、携帯電話システムの場合には、空中等で雑音の影響を受ける。 First, the encoder 20, transmit subject to the information bit sequence C to the receiver side, is input to the first constituent encoder 21, a parity bit sequence V 1 is generated. The information bit sequence C is series C h next sorted in the interleaver 23, the sequence C h is input to the second constituent encoder 22, a parity bit sequence V 2 is generated. Then, the sequence V 0 and the parity bit sequences V 1 and V 2 in the state of the information bit sequence C are transmitted to the receiver side via the communication path 40. At this time, the transmitted sequences V 0 , V 1 , V 2 are affected by noise in the communication path 40. For example, in the case of a mobile phone system, it is affected by noise in the air.

なお、情報ビット系列Cの処理単位となるビット数を、例えば512ビットとすれば、インターリーバ23による符号順序変換処理後の系列Chは、512ビットとなり、系列V0も512ビットであり、パリティビット系列V1,V2は、例えば先頭および後方にそれぞれ3ビットずつ冗長ビットを付加して518ビット等となる。 Incidentally, the number of bits serving as a processing unit of the information bit sequence C, for example if 512 bits, sequence C h after encoding sequence conversion process by the interleaver 23, becomes 512 bits, sequence V 0 is also 512 bits, The parity bit sequences V 1 and V 2 are, for example, 518 bits by adding redundant bits of 3 bits each at the beginning and rear.

一方、復号器30では、情報ビット系列Cのままの状態の系列V0およびパリティビット系列V1,V2がそれぞれノイズの影響を受けて系列R0,R1,R2となり、これらの系列R0,R1,R2が受信信号であるものとすると、先ず、ターボ符号による繰り返し処理の1巡目では、受信した系列R0,R1が第1の要素復号器31に入力され、これらの系列R0,R1を使って第1の要素復号器31から系列Λ1eが出力される。続いて、第1の要素復号器31から出力された系列Λ1eおよび受信した系列R0が、インターリーバ33でそれぞれ並べ替えられて系列Λ1e h,R0 hとなり、これらの系列Λ1e h,R0 hおよび受信した系列R2が第2の要素復号器32に入力され、これらの系列Λ1e h,R0 h,R2を使って第2の要素復号器32から系列Λ2eが出力される。次に、第2の要素復号器32から出力された系列Λ2eは、デインターリーバ34で並べ替えられてΛ2e hとなる。そして、2巡目では、デインターリーバ34から出力された系列Λ2e hおよび受信した系列R0,R1が第1の要素復号器31に入力され、これらの系列Λ2e h,R0,R1を使って第1の要素復号器31から新たな系列Λ1eが出力される。続いて、第1の要素復号器31から出力された新たな系列Λ1eが、インターリーバ33で並べ替えられて新たな系列Λ1e hとなり、この新たな系列Λ1e h並びにインターリーバ33から出力された系列R0 hおよび受信した系列R2を使って第2の要素復号器32から新たな系列Λ2eが出力される。次に、第2の要素復号器32から出力された新たな系列Λ2eは、デインターリーバ34で並べ替えられて新たなΛ2e hとなる。そして、以降、同様な処理を例えば数回繰り返した後、第2の要素復号器32から最終的に出力される系列Λ2が、復号器30の出力となる。 On the other hand, in the decoder 30, the sequence V 0 and the parity bit sequences V 1 and V 2 in the state of the information bit sequence C are affected by noise to become sequences R 0 , R 1 and R 2 , respectively. Assuming that R 0 , R 1 , and R 2 are received signals, first, in the first round of the iterative process using the turbo code, the received sequences R 0 and R 1 are input to the first element decoder 31. The sequence Λ 1e is output from the first element decoder 31 using these sequences R 0 and R 1 . Subsequently, the sequence Λ 1e output from the first element decoder 31 and the received sequence R 0 are rearranged by the interleaver 33 to become sequences Λ 1e h and R 0 h , and these sequences Λ 1e h , R 0 h and the received sequence R 2 are input to the second element decoder 32, and the sequence Λ 2e is transmitted from the second element decoder 32 using these sequences Λ 1e h , R 0 h , R 2. Is output. Next, the sequence Λ 2e output from the second element decoder 32 is rearranged by the deinterleaver 34 to become Λ 2e h . In the second round, the sequence Λ 2e h output from the deinterleaver 34 and the received sequences R 0 and R 1 are input to the first element decoder 31, and these sequences Λ 2e h , R 0 , A new sequence Λ 1e is output from the first element decoder 31 using R 1 . Subsequently, the new sequence Λ 1e output from the first element decoder 31 is rearranged by the interleaver 33 to become a new sequence Λ 1e h . The new sequence Λ 1e h and the output from the interleaver 33 are output. A new sequence Λ 2e is output from the second element decoder 32 using the received sequence R 0 h and the received sequence R 2 . Next, the new sequence Λ 2e output from the second element decoder 32 is rearranged by the deinterleaver 34 to become a new Λ 2e h . Thereafter, after repeating the same process several times, for example, the sequence Λ 2 finally output from the second element decoder 32 becomes the output of the decoder 30.

なお、受信した系列R0を例えば512ビットとし、系列R1,R2を例えば518ビットとすると、第1の要素復号器31から出力される系列Λ1eは、例えば518ビットとなり、インターリーバ33では、この518ビットの系列Λ1eのうちの例えば最初の512ビットを入れ替えるインターリーブ処理が行われる。また、第2の要素復号器32から出力される系列Λ2eも、例えば518ビットとなり、デインターリーバ34では、この518ビットの系列Λ2eのうちの例えば最初の512ビットを入れ替えるデインターリーブ処理が行われる。 If the received sequence R 0 is, for example, 512 bits and the sequences R 1 , R 2 are, for example, 518 bits, the sequence Λ 1e output from the first element decoder 31 is, for example, 518 bits, and the interleaver 33 Then, an interleaving process for exchanging, for example, the first 512 bits of the 518-bit sequence Λ 1e is performed. Further, the sequence Λ 2e output from the second element decoder 32 is also 518 bits, for example, and the deinterleaver 34 performs a deinterleaving process for exchanging, for example, the first 512 bits of the 518-bit sequence Λ 2e. Done.

図2において、符号器20に内蔵されたインターリーバ23は、符号順序変換処理前のビット系列(入力系列)と符号順序変換処理後のビット系列(出力系列)とのそれぞれの構成ビットの対応関係を定める符号順序変換テーブル60を記憶する符号順序変換テーブル記憶手段23Aと、この符号順序変換テーブル記憶手段23Aに記憶された符号順序変換テーブル60を用いて情報ビット系列を構成する各ビットを並べ替える処理を行う符号順序変換処理手段23Bとを含んで構成されている。   In FIG. 2, the interleaver 23 built in the encoder 20 has a correspondence relationship between the constituent bits of the bit sequence (input sequence) before the code order conversion process and the bit sequence (output series) after the code order conversion process. The code order conversion table storage means 23A for storing the code order conversion table 60 for determining the code order, and the bits constituting the information bit sequence are rearranged using the code order conversion table 60 stored in the code order conversion table storage means 23A. Code order conversion processing means 23B for performing processing is included.

また、復号器30に内蔵されたインターリーバ33は、符号器20側の符号順序変換テーブル記憶手段23Aに記憶された符号順序変換テーブル60と同じテーブルを記憶する符号順序変換テーブル記憶手段33Aと、この符号順序変換テーブル記憶手段33Aに記憶された符号順序変換テーブル60を用いてビット系列を構成する各ビットを並べ替える処理を行う符号順序変換処理手段33Bとを含んで構成されている。   The interleaver 33 built in the decoder 30 includes a code order conversion table storage unit 33A that stores the same table as the code order conversion table 60 stored in the code order conversion table storage unit 23A on the encoder 20 side, The code order conversion processing unit 33B performs processing for rearranging the bits constituting the bit sequence using the code order conversion table 60 stored in the code order conversion table storage unit 33A.

さらに、復号器30に内蔵されたデインターリーバ34は、インターリーバ23,33の符号順序変換テーブル記憶手段23A,33Aに記憶された符号順序変換テーブル60と逆の対応関係を定める符号順序復元テーブル80を記憶する符号順序復元テーブル記憶手段34Aと、この符号順序復元テーブル記憶手段34Aに記憶された符号順序復元テーブル80を用いてビット系列を構成する各ビットを並べ替えて元に戻す処理を行う符号順序復元処理手段34Bとを含んで構成されている。   Further, the deinterleaver 34 incorporated in the decoder 30 is a code order restoration table that defines the inverse correspondence relationship with the code order conversion table 60 stored in the code order conversion table storage means 23A, 33A of the interleavers 23, 33. The code sequence restoration table storage unit 34A for storing 80 and the code sequence restoration table 80 stored in the code sequence restoration table storage unit 34A are used to rearrange and restore the bits constituting the bit sequence. Code order restoration processing means 34B.

以上において、インターリーバ23,33の符号順序変換処理手段23B,33B、およびデインターリーバ34の符号順序復元処理手段34Bは、符号器20や復号器30を構成する各コンピュータ、あるいは符号器20や復号器30を含む情報処理機器を構成する各コンピュータ(パーソナル・コンピュータのみならず、その上位機種や下位機種のものも含む。)の内部に設けられた中央演算処理装置(CPU)、およびこのCPUの動作手順を規定する一つまたは複数のプログラムにより実現することができる。また、これらの各処理手段23B,33B,34Bは、ハードウェア回路により実現してもよい。   In the above, the code order conversion processing means 23B and 33B of the interleavers 23 and 33 and the code order restoration processing means 34B of the deinterleaver 34 are the computers constituting the encoder 20 and the decoder 30, or the encoder 20 and A central processing unit (CPU) provided in each computer (including not only a personal computer but also its higher model and lower model) constituting the information processing device including the decoder 30, and this CPU It can be realized by one or a plurality of programs that define the operation procedure. Further, each of these processing means 23B, 33B, 34B may be realized by a hardware circuit.

また、インターリーバ23,33の符号順序変換テーブル記憶手段23A,33A、およびデインターリーバ34の符号順序復元テーブル記憶手段34Aには、例えば、ハードディスク、ROM、EEPROM、フラッシュ・メモリ、RAM、MO、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−RAM、FD、磁気テープ、あるいはこれらの組合せ等を採用することができる。この際、各処理手段23B,33B,34Bをハードウェア回路により実現する場合には、各記憶手段23A,33A,34Aは、例えばROM等により実現することができる。また、各処理手段23B,33B,34Bをソフトウェアにより実現する場合には、例えば、符号順序変換テーブル60や符号順序復元テーブル80をプログラム上で配列として持たせることができ、この場合には、配列データは、プログラム内に直接に記述されていてもよく、ハードディスクやMOやFD等の外部メモリから読み込んでもよく、キーボード等の入力手段により入力してもよく、最終的に各処理手段23B,33B,34Bによる処理が行われる際に、主メモリに記憶されていればよいので、これらの場合には、各記憶手段23A,33A,34Aは、主メモリおよび/または外部メモリにより実現されることになる。なお、各処理手段23B,33B,34Bをソフトウェアにより実現する場合には、上記の如く各テーブル60,80を配列で持たせる処理に限定されるものではない。   The code order conversion table storage means 23A, 33A of the interleaver 23, 33 and the code order restoration table storage means 34A of the deinterleaver 34 include, for example, a hard disk, ROM, EEPROM, flash memory, RAM, MO, CD-ROM, CD-R, CD-RW, DVD-ROM, DVD-RAM, FD, magnetic tape, or a combination thereof can be employed. At this time, when each processing means 23B, 33B, 34B is realized by a hardware circuit, each storage means 23A, 33A, 34A can be realized by a ROM or the like, for example. Further, when the processing units 23B, 33B, and 34B are realized by software, for example, the code order conversion table 60 and the code order restoration table 80 can be provided as an array on the program. In this case, the array The data may be described directly in the program, may be read from an external memory such as a hard disk, MO, or FD, may be input by an input means such as a keyboard, and finally each processing means 23B, 33B. , 34B only need to be stored in the main memory when processing is performed, and in these cases, each storage means 23A, 33A, 34A is realized by the main memory and / or an external memory. Become. In addition, when each processing means 23B, 33B, and 34B is implement | achieved by software, it is not limited to the process which has each table 60 and 80 by an array as mentioned above.

そして、各記憶手段23A,33A,34Aに記憶させる符号順序変換テーブル60や符号順序復元テーブル80は、図2に示すような符号順序変換テーブル作成装置50および符号順序復元テーブル作成装置70により自動的に作成することができる。   The code order conversion table 60 and the code order restoration table 80 stored in the storage means 23A, 33A, 34A are automatically generated by the code order conversion table creation device 50 and the code order restoration table creation device 70 as shown in FIG. Can be created.

図2において、符号順序変換テーブル作成装置50は、実数ラベル生成処理手段51と、行列配置処理手段52と、行内ソーティング処理手段53と、ブロックソーティング処理手段54と、行列読出処理手段55と、スクランブリング関数記憶手段56と、ブロック順序変換ルール記憶手段57とを含んで構成されている。   In FIG. 2, the code order conversion table creation device 50 includes a real number label generation processing means 51, a matrix arrangement processing means 52, an in-line sorting processing means 53, a block sorting processing means 54, a matrix reading processing means 55, a scrambler. The ring function storage unit 56 and the block order conversion rule storage unit 57 are included.

実数ラベル生成処理手段51は、情報ビット系列の代用として生成または用意された仮想ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この仮想ビット系列を構成する各ビットに付される実数ラベルをランダムに生成する処理を行うものである。なお、仮想ビット系列は、予め用意されたビット系列としてもよいが、ここでは自動生成するものとして説明を行う。   The real number label generation processing means 51 uses the value of at least one bit among a plurality of bits constituting a virtual bit series generated or prepared as a substitute for the information bit series, and each bit constituting this virtual bit series A process of randomly generating a real number label attached to is performed. The virtual bit sequence may be a bit sequence prepared in advance, but will be described here as being automatically generated.

この実数ラベル生成処理手段51は、仮想ビット系列生成処理手段51Aと、シフト処理手段51Bと、重み算出処理手段51Cと、重み/ラベル変換処理手段51Dとを含んで構成されている。   The real number label generation processing unit 51 includes a virtual bit sequence generation processing unit 51A, a shift processing unit 51B, a weight calculation processing unit 51C, and a weight / label conversion processing unit 51D.

仮想ビット系列生成処理手段51Aは、符号順序変換テーブル60を事前に作成するために用いる仮想ビット系列を自動的に生成する処理を行うものである(図7参照)。この仮想ビット系列生成処理手段51Aは、ハードウェア回路により実現してもよく、ソフトウェアにより実現してもよい。   The virtual bit sequence generation processing unit 51A performs processing for automatically generating a virtual bit sequence used for creating the code order conversion table 60 in advance (see FIG. 7). The virtual bit sequence generation processing means 51A may be realized by a hardware circuit or software.

シフト処理手段51Bは、仮想ビット系列を構成する連続する複数のビットの各値を1ビットずつシフトしながら用いて重み算出処理手段51Cおよび重み/ラベル変換処理手段51Dによる各処理を繰り返すためのビットのシフト処理を行うものである。このシフト処理手段51Bは、ハードウェア回路により実現してもよく、ソフトウェアにより実現してもよく、前者の場合には、例えばシフトレジスタを用いて容易に実現することができる(図3参照)。ここでは、シフトレジスタにより実現するものとして説明を行う。   The shift processing means 51B is a bit for repeating each process by the weight calculation processing means 51C and the weight / label conversion processing means 51D using each value of a plurality of consecutive bits constituting the virtual bit sequence while shifting one bit at a time. The shift process is performed. This shift processing means 51B may be realized by a hardware circuit or software, and in the former case, it can be easily realized by using, for example, a shift register (see FIG. 3). Here, the description will be made assuming that it is realized by a shift register.

重み算出処理手段51Cは、仮想ビット系列を構成する連続する複数のビットの各値(ここでは、シフトレジスタに格納された各ビット値)を用いて実数Xa〜実数Xbの間の実数X(Xaよりも大きく、かつ、Xb未満である実数)を算出する処理を行うものである。この重み算出処理手段51Cは、ハードウェア回路により実現してもよく、ソフトウェアにより実現してもよい。より具体的には、重み算出処理手段51Cは、例えば、算出に用いるビット数をM(例えば、32ビットのシフトレジスタを用いる場合には、M=32等)とし、mを1〜Mの整数とすると、Mビットの各値のそれぞれに、重みとして2-mを乗じ、すなわちシフトレジスタに格納された第1番目のビット値に2-1、第2番目のビット値に2-2、…、第M番目のビット値に2-Mという具合に第m番目のビット値に2-mを乗じ、得られた各値を加算して全体的な重みを求め、さらに求めた全体的な重みに2-(M+1)を加算して得られる数値をXとすることにより、0〜1の間の実数X(0よりも大きく、かつ、1未満である実数)を算出する処理を行う。従って、シフトレジスタのビット値が「1」であれば、そのビットに対応する重みが加算され、「0」であれば加算されないことになる。また、2-(M+1)を加算するのは、全てのビット値が「0」である場合に、算出した実数Xの値が0になることを回避するためであり、また、全てのビット値が「1」となった場合でも、算出した実数Xの値が1になることはない。 The weight calculation processing means 51C uses a real number X between a real number X a and a real number X b by using each value of a plurality of consecutive bits constituting the virtual bit sequence (here, each bit value stored in the shift register). A process of calculating (a real number greater than X a and less than X b ) is performed. The weight calculation processing means 51C may be realized by a hardware circuit or may be realized by software. More specifically, the weight calculation processing unit 51C sets, for example, the number of bits used for calculation as M (for example, M = 32 when using a 32-bit shift register), and m is an integer from 1 to M. Then, each of the M bit values is multiplied by 2 −m as a weight, that is, the first bit value stored in the shift register is 2 −1 , the second bit value is 2 −2 ,. , multiplied by 2 -m in the m-th bit value so on 2 -M to M-th bit value, determine the overall weight by adding the values obtained, the overall weight of further determined 2− (M + 1) is added to X to obtain a real number X (a real number greater than 0 and less than 1) between 0 and 1 by performing X. . Therefore, if the bit value of the shift register is “1”, the weight corresponding to the bit is added, and if the bit value is “0”, it is not added. The reason why 2 − (M + 1) is added is to avoid that the value of the calculated real number X becomes 0 when all the bit values are “0”. Even when the bit value becomes “1”, the calculated value of the real number X never becomes 1.

なお、上記の如く、2のべき乗を用いて0〜1の間の実数Xを算出する処理に限定されず、例えば、3のべき乗や4のべき乗等を用いてよく、要するに、実数Xa〜実数Xbの間の実数Xを算出できればよい。 Incidentally, as described above, is not limited to processing of calculating the real X between 0-1 with a power of 2, for example, may be used for 3 powers and 4 powers like, in short, real X a ~ It suffices if the real number X between the real numbers Xb can be calculated.

重み/ラベル変換処理手段51Dは、スクランブリング関数記憶手段56に記憶された次の式(1)を満たすスクランブリング関数(Scrambling Function)Y=g(X)を用いて、実数Xa〜実数Xbの間の実数Xを、実数Ya〜実数Ybの間の実数Yに変換し、変換して得られた実数Yの値を実数ラベルとする処理を行うものである。この重み/ラベル変換処理手段51Dは、ハードウェア回路により実現してもよく、ソフトウェアにより実現してもよく、前者の場合には、スクランブリング関数記憶手段56を例えばROM等により実現すればよい。 The weight / label conversion processing unit 51D uses a scrambling function Y = g (X) satisfying the following expression (1) stored in the scrambling function storage unit 56 to obtain a real number X a to a real number X. The real number X between b is converted into a real number Y between the real number Y a and the real number Y b , and the processing is performed using the value of the real number Y obtained by the conversion as a real number label. The weight / label conversion processing means 51D may be realized by a hardware circuit or software, and in the former case, the scrambling function storage means 56 may be realized by a ROM or the like, for example.

g(t)+g(t+(Xb−Xa)/2)=Ya+Yb ・・・・・・・・・(1) g (t) + g (t + (X b -X a) / 2) = Y a + Y b ········· (1)

ここで、tは、Xa≦t<(Xa+Xb)/2の範囲の実数である。 Here, t is a real number in the range of X a ≦ t <(X a + X b ) / 2.

また、重み/ラベル変換処理手段51Dは、上記の式(1)を最も単純化した条件式として、次の式(2)を条件式とするスクランブリング関数Y=g(X)を用いた処理を行うことができる。   Further, the weight / label conversion processing means 51D uses the scrambling function Y = g (X) with the following expression (2) as a conditional expression as the simplest conditional expression of the above expression (1). It can be performed.

g(t)+g(t+1/2)=1 ・・・・・・・・・(2)   g (t) + g (t + 1/2) = 1 (2)

ここで、tは、0≦t<1/2の範囲の実数である。   Here, t is a real number in the range of 0 ≦ t <1/2.

上記の式(2)は、前述した式(1)において、Xa=0、Xb=1、Ya=0、Yb=1とした場合であり、この場合には、重み/ラベル変換処理手段51Dは、0〜1の間の実数Xを、0〜1の間の実数Yに変換する処理を行うことになる。この際、スクランブリング関数Y=g(X)への入力値となる0〜1の間の実数Xは、前述した如く、重み算出処理手段51Cにより、2のべき乗の重みを用いれば容易に算出することができる。また、スクランブリング関数Y=g(X)からの出力値は、0〜1の間の実数Yとなるので、上記の式(2)を条件式とする場合には、実数ラベル生成処理手段51は、擬似確率過程発生装置(Fake Process Generator)により実現することができる。従って、既存の擬似確率過程発生装置を利用することも可能である。 The above equation (2) is a case where X a = 0, X b = 1, Y a = 0, Y b = 1 in the above-described equation (1). In this case, weight / label conversion is performed. The processing unit 51D performs processing for converting the real number X between 0 and 1 into the real number Y between 0 and 1. At this time, the real number X between 0 and 1 as an input value to the scrambling function Y = g (X) can be easily calculated by using the power of power of 2 by the weight calculation processing means 51C as described above. can do. Since the output value from the scrambling function Y = g (X) is a real number Y between 0 and 1, when the above equation (2) is used as a conditional expression, the real number label generation processing means 51 Can be realized by a pseudo stochastic process generator (Fake Process Generator). Therefore, an existing pseudo stochastic process generator can be used.

行列配置処理手段52は、実数ラベル生成処理手段51により生成された各実数ラベルと、これらの各実数ラベルを付された各ビットの符号順序変換処理前の仮想ビット系列内での配列位置情報(何番目のビットであるかという情報)とを対にした状態で、各配列位置情報を各実数ラベルとともに各ビットの符号順序変換処理前の配列順序に従ってメモリに行列形式で行方向(横方向)に順次配置する処理を行うものである(図8の上段部分参照)。   The matrix arrangement processing unit 52 includes real position labels generated by the real number label generation processing unit 51 and array position information (in the virtual bit sequence before the code order conversion process of each bit assigned with each real number label ( Information on the number of bits), and each array position information along with each real number label in the row direction (horizontal direction) in memory in a matrix format according to the array order before the code order conversion processing of each bit Are sequentially arranged (see the upper part of FIG. 8).

行内ソーティング処理手段53は、行列配置処理手段52により行列形式でメモリに配置された各配列位置情報を、各行内でそれぞれ各実数ラベルの数値の大小順に従って並べ替える行内ソーティング処理を行うものである(図8の中段部分参照)。   The in-line sorting processing means 53 performs an in-line sorting process for rearranging the array position information arranged in the memory in the matrix format by the matrix arrangement processing means 52 within each row according to the order of the numerical value of each real number label. (See the middle part of FIG. 8).

ブロックソーティング処理手段54は、行内ソーティング処理手段53による行内ソーティング後の各配列位置情報を、ブロック順序変換ルール記憶手段57に記憶されたブロック順序変換ルールに従って行単位(ブロック単位)で並べ替えるブロックソーティング処理を行うものである(図8の下段部分参照)。   The block sorting processing unit 54 rearranges each array position information after the in-line sorting by the in-line sorting processing unit 53 in units of rows (block units) in accordance with the block order conversion rules stored in the block order conversion rule storage unit 57. Processing is performed (see the lower part of FIG. 8).

行列読出処理手段55は、ブロックソーティング処理手段54によるブロックソーティング後の各配列位置情報をメモリから列方向(縦方向)に順次読み出す処理を行うものである(図8の下段部分および図9の左側部分参照)。   The matrix read processing means 55 performs processing for sequentially reading the array position information after the block sorting by the block sorting processing means 54 in the column direction (vertical direction) from the memory (the lower part of FIG. 8 and the left side of FIG. 9). Part reference).

スクランブリング関数記憶手段56は、実数Xa〜実数Xbの間の実数Xを、実数Ya〜実数Ybの間の実数Yに変換するための前述した式(1)を満たすスクランブリング関数Y=g(X)を記憶するものである。また、前述したように、最も単純な条件式として、0〜1の間の実数Xを0〜1の間の実数Yに変換するための前述した式(2)を満たすスクランブリング関数を記憶してもよい。より具体的には、図10に示すように、大きさの等しい3つの山形の形状で示されるスクランブリング関数とすることができる。なお、式(1)や式(2)の条件を満たすスクランブリング関数は、多数あり、例えば、3つの山ではなく、5つの山、あるいは7つの山を有する形状等とすることができるが、インターリーブ処理におけるランダム化の程度、すなわちインターリーバへの入力系列と出力系列との無相関性の程度を高め、ターボ符号の性能の向上を図るという観点からは、図10に示すような3つの山を有する形状のスクランブリング関数とすることが好ましい。 The scrambling function storage means 56 is a scrambling function that satisfies the above-described equation (1) for converting the real number X between the real number X a to the real number X b to the real number Y between the real number Y a to the real number Y b. Y = g (X) is stored. Further, as described above, as the simplest conditional expression, a scrambling function satisfying the above-described expression (2) for converting a real number X between 0 and 1 into a real number Y between 0 and 1 is stored. May be. More specifically, as shown in FIG. 10, it can be a scrambling function indicated by three chevron shapes having the same size. There are a large number of scrambling functions that satisfy the conditions of the expressions (1) and (2). For example, the scrambling function can have a shape having five mountains or seven mountains instead of three mountains. From the viewpoint of increasing the degree of randomization in the interleaving process, that is, the degree of decorrelation between the input sequence to the interleaver and the output sequence, and improving the performance of the turbo code, three peaks as shown in FIG. A scrambling function having a shape having

ブロック順序変換ルール記憶手段57は、行内ソーティング後の各配列位置情報を行単位(ブロック単位)で並べ替えるためのブロック順序変換ルールを記憶するものである。このブロック順序変換ルールは、本実施形態では、少なくとも符号順序変換処理前のビット系列を構成する各ビットのうち7ビット離れた2つのビットが、符号順序変換処理後のビット系列内で7ビット離れた位置に配列されることを回避するためのルールである。   The block order conversion rule storage means 57 stores a block order conversion rule for rearranging each array position information after in-row sorting in units of rows (block units). In this embodiment, at least two bits that are separated by 7 bits from each bit constituting the bit sequence before the code order conversion process are separated by 7 bits in the bit sequence after the code order conversion process. This is a rule for avoiding being arranged at a certain position.

上記のブロック順序変換ルールは、以下に示すコードマッチドインターリーバの設計思想から導かれる。コードマッチドは、高SNR領域におけるビット誤り率への寄与が最も大きい致命的な入力パターン、すなわち最も低重みのパリティビット系列を作るような低重み入力パターンをなるべく壊すようなインターリーブ処理を実現するものである。   The above block order conversion rules are derived from the design concept of the code matched interleaver shown below. Code matched realizes interleave processing that destroys as much as possible the fatal input pattern that contributes most to the bit error rate in the high SNR region, that is, the low-weight input pattern that creates the lowest-weight parity bit sequence. It is.

先ず、符号順序変換処理前のビット系列の各ビットの番号(配列位置情報)をiとし、この第i番目のビットについての符号順序変換処理後のビット系列における番号(配列位置情報)をπ(i)とする。すなわち、第i番目のビット内容(ビットの値)が、符号順序変換処理後に、第π(i)番目のビット内容(ビットの値)となるものとする。例えば、符号順序変換処理前のビット系列における第8番目のビット内容が、符号順序変換処理後に、第15番目のビット内容になるものとすると、π(8)=15と表すことができる。この際、コードマッチドインターリーバでは、次の式(3)の関係にある入力系列に対し、次の式(4)の関係を満たす出力系列が生成されるようにする。   First, the number (array position information) of each bit in the bit sequence before the code order conversion process is set to i, and the number (array position information) in the bit sequence after the code order conversion process for the i-th bit is π ( i). That is, the i-th bit content (bit value) becomes the π (i) -th bit content (bit value) after the code order conversion process. For example, if the eighth bit content in the bit sequence before the code order conversion process becomes the fifteenth bit content after the code order conversion process, it can be expressed as π (8) = 15. At this time, the code matched interleaver generates an output sequence that satisfies the relationship of the following equation (4) for the input sequence that has the relationship of the following equation (3).

|i−j|mod7=0 ・・・・・・・・・・・・・・・・・・・(3)   | I-j | mod7 = 0 (3)

|π(i)−π(j)|mod7≠0 ・・・・・・・・・・・・・(4)   | Π (i) −π (j) | mod7 ≠ 0 (4)

上記の式(3)および式(4)は、符号順序変換処理前のビット系列を構成する各ビットのうち7ビット、14ビット、21ビット、28ビット等、7の倍数ビット離れた2つのビット内容が、符号順序変換処理後のビット系列内で、7の倍数ビット離れた位置に配列されることを回避するルールである。しかし、実際には、上記の式(3)および式(4)を満たすようにして最も低重みのパリティビット系列を作るような全ての低重み入力パターンを壊すことは不可能である。そこで、本実施形態では、少なくとも、次の式(5)の関係にある入力系列に対し、次の式(6)の関係を満たす出力系列が生成されるようにしたものである。   Expressions (3) and (4) above are two bits separated by multiples of 7 bits, such as 7 bits, 14 bits, 21 bits, 28 bits, etc., of each bit constituting the bit sequence before the code order conversion process. This is a rule that prevents the contents from being arranged at positions separated by multiple bits of 7 within the bit sequence after the code order conversion process. However, in practice, it is impossible to destroy all the low-weight input patterns that create the lowest-weight parity bit sequence so as to satisfy the above-described equations (3) and (4). Therefore, in this embodiment, an output sequence that satisfies the relationship of the following equation (6) is generated at least for the input sequence that has the relationship of the following equation (5).

|i−j|=7 ・・・・・・・・・・・・・・・・・・・・・・・(5)   | I-j | = 7 (5)

|π(i)−π(j)|≠7 ・・・・・・・・・・・・・・・・・(6)   | Π (i) −π (j) | ≠ 7 (6)

次に、ブロック順序変換ルールは、行列形式でメモリに配置されたときの行数(ブロック数)が20行であるものとすると、20次元のベクトル形式で表現することができる。例えば、(7,17,3,2,10,20,13,6,4,8,12,14,5,9,11,15,19,16,1,18)である。この例では、ブロックソーティング処理手段54によるブロックソーティング後の行列の第1行目には、ブロックソーティング前の行列の第7行目が配置され、ブロックソーティング後の行列の第2行目には、ブロックソーティング前の行列の第17行目が配置され、同様に、ブロックソーティング後の行列の第3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20行目には、ブロックソーティング前の行列の第3,2,10,20,13,6,4,8,12,14,5,9,11,15,19,16,1,18行目がそれぞれ配置される。なお、この例では、1〜20の数値を用いたが、例えば、0〜19の数値を用いてルールを定めても同じことである。   Next, the block order conversion rule can be expressed in a 20-dimensional vector format, assuming that the number of rows (number of blocks) when arranged in a memory in a matrix format is 20. For example, (7, 17, 3, 2, 10, 20, 13, 6, 4, 8, 12, 14, 5, 9, 11, 15, 19, 16, 1, 18). In this example, the seventh row of the matrix before block sorting is arranged in the first row of the matrix after block sorting by the block sorting processing means 54, and the second row of the matrix after block sorting is The 17th row of the matrix before block sorting is arranged, and similarly, the 3rd, 4th, 5th, 6th, 7th, 8th, 9th, 10th, 11th, 12th, 13th, 14th, 15th, 15th, In the 16th, 17th, 18th, 19th and 20th rows, the 3rd, 2nd, 10th, 20th, 13th, 6th, 4th, 8th, 12th, 14th, 5th, 9th, 11th, 15th and 19th rows of the matrix before block sorting. , 16th, 1st and 18th lines are respectively arranged. In this example, a numerical value of 1 to 20 is used. However, for example, even if a rule is defined using a numerical value of 0 to 19, the same thing is true.

このようなブロック順序変換ルールは、次のようにして作成することができる。図11に示すように、ブロック順序変換ルールを示す20次元のベクトルが、(…,A,…,B,…)であり、AとBが7要素離れているものとする。すなわち、AとBとの間に6個の数値が並んでいるものとする。例えば、ブロックソーティング後の行列の第5行目に、ブロックソーティング前の行列の第A行目が配置され、ブロックソーティング後の行列の第12行目に、ブロックソーティング前の行列の第B行目が配置されるものとする。このことは、行列読出処理手段55による行列メモリからの読出し処理が、列方向(縦方向)に行われることから、インターリーブ処理後のビット系列の7ビット離れた位置(6ビット分の間を空けた位置)に、ブロックソーティング前の行列の第A行目のビットと第B行目のビットが配置されることを意味する。ここで、AとBとの差の絶対値が1(1行)の場合には、第A行目のビットと第B行目のビットとの同じ列における関係が、インターリーブ処理前のビット系列で7ビット離れた2つのビットになる場合がある。例えば、行列メモリを20行×26列とし、A=2、B=3とすると、ブロックソーティング前の行列の第A行目(=第2行目)は、インターリーブ処理前のビット系列における第27〜52番目のビット(行内ソーティング後も同様)であり、ブロックソーティング前の行列の第B行目(=第3行目)は、インターリーブ処理前のビット系列における第53〜78番目のビット(行内ソーティング後も同様)であり、行内ソーティングの結果、第A行目(=第2行目)では、第48番目のビットが第1列目に配置され、第B行目(=第3行目)では、第55番目のビットが第1列目に配置されることになれば、インターリーブ処理前のビット系列において7ビット離れていた2つのビットが同じ列に配置された状態になる。しかし、AとBとの差の絶対値が2以上(2行以上)の場合には、このような状態は生じない。従って、ブロック順序変換ルールを示す20次元のベクトル(…,A,…,B,…)において、7要素離れたAとBとが1違い(1行違い)にならないようにすればよい。   Such a block order conversion rule can be created as follows. As shown in FIG. 11, it is assumed that a 20-dimensional vector indicating a block order conversion rule is (..., A,..., B,...), And A and B are separated by 7 elements. That is, six numerical values are arranged between A and B. For example, the 5th row of the matrix after block sorting is arranged in the Ath row of the matrix before block sorting, and the 12th row of the matrix after block sorting is placed in the Bth row of the matrix before block sorting. Shall be placed. This is because the process of reading from the matrix memory by the matrix read processing means 55 is performed in the column direction (vertical direction), so that a position 7 bits away from the bit sequence after the interleaving process (a space of 6 bits is provided). This means that the bit of the A-th row and the bit of the B-th row of the matrix before the block sorting are arranged at the position. Here, when the absolute value of the difference between A and B is 1 (1 row), the relationship in the same column between the bits in the Ath row and the bits in the Bth row is the bit sequence before the interleaving process. There may be two bits that are 7 bits apart. For example, if the matrix memory is 20 rows × 26 columns, and A = 2 and B = 3, the Ath row (= second row) of the matrix before block sorting is the 27th bit sequence before the interleaving process. Is the 52nd bit (same after in-row sorting), and the Bth row (= third row) of the matrix before block sorting is the 53rd to 78th bit (intrarow) in the bit sequence before the interleaving process. The same is true after sorting. As a result of in-line sorting, the 48th bit is arranged in the first column in the Ath row (= second row), and the Bth row (= third row). ), If the 55th bit is arranged in the first column, two bits that are separated by 7 bits in the bit sequence before the interleaving process are arranged in the same column. However, such a situation does not occur when the absolute value of the difference between A and B is 2 or more (2 or more rows). Therefore, in a 20-dimensional vector (..., A,..., B,...) Indicating the block order conversion rule, it is only necessary to prevent A and B separated by 7 elements from being different by one (one line difference).

なお、このようにブロック順序変換ルールを示すベクトルにおいて、7要素離れたAとBとが1行違いにならないようにすればよいのは、列数が7列以上の場合であり、4〜6列の場合には、7要素離れたAとBとが1行違いでなく、かつ、2行違いでもないようにすればよく、3列の場合には、7要素離れたAとBとが2行違いでなく、かつ、3行違いでもないようにすればよく、2列の場合には、7要素離れたAとBとが3行違いでなく、かつ、4行違いでもないようにすればよい。   In this way, in the vector indicating the block order conversion rule, A and B separated by 7 elements should not be different by one line when the number of columns is 7 or more. In the case of columns, A and B separated by 7 elements need not be different by 1 line and not by 2 lines. In the case of 3 columns, A and B separated by 7 elements are It is sufficient not to be 2 lines different and 3 lines different. In the case of 2 columns, A and B separated by 7 elements are not 3 lines different and 4 lines different. do it.

また、行列の行数(ブロック数)が20行である場合のブロック順序変換ルールは、上記の例に限らず、例えば、(12,18,4,14,19,3,8,6,7,11,5,1,9,2,20,10,17,16,15,13)、(13,10,6,3,11,8,16,9,12,2,7,4,1,19,5,18,14,15,17,20)、(19,2,14,11,1,17,18,13,15,10,8,5,12,9,16,3,7,6,20,4)、(14,17,13,11,8,1,18,5,20,2,9,3,12,10,19,7,4,6,15,16)、(17,11,19,16,4,12,10,8,14,7,9,2,15,13,18,6,3,1,5,20)、(19,12,18,17,3,5,14,8,1,7,15,10,2,9,16,11,4,6,13,20)、(1,4,20,13,12,6,14,10,19,18,3,7,15,5,17,2,9,8,16,11)、(15,4,19,13,7,12,5,14,8,9,1,17,2,3,16,11,18,20,6,10)等があり、いずれを用いてもよい。さらに、行列の行数(ブロック数)は20行に限定されるものではなく、任意であるため、ブロック順序変換ルールを示すベクトルの次元数も任意である。   Also, the block order conversion rule when the number of rows (number of blocks) of the matrix is 20 is not limited to the above example, and for example, (12, 18, 4, 14, 19, 3, 8, 6, 7 , 11, 5, 1, 9, 2, 20, 10, 17, 16, 15, 13), (13, 10, 6, 3, 11, 8, 16, 9, 12, 2, 7, 4, 1 , 19,5,18,14,15,17,20), (19,2,14,11,1,17,18,13,15,10,8,5,12,9,16,3,7) , 6, 20, 4), (14, 17, 13, 11, 8, 1, 18, 5, 20, 2, 9, 3, 12, 10, 19, 7, 4, 6, 15, 16), (17, 11, 19, 16, 4, 12, 10, 8, 14, 7, 9, 2, 15, 13, 18, 6, 3, 1, 5, 20), (19, 12, 18, 17 , 3, 5, 4, 8, 1, 7, 15, 10, 2, 9, 16, 11, 4, 6, 13, 20), (1, 4, 20, 13, 12, 6, 14, 10, 19, 18, 3, 7, 15, 5, 17, 2, 9, 8, 16, 11), (15, 4, 19, 13, 7, 12, 5, 14, 8, 9, 1, 17, 2, 3, 16, 11, 18, 20, 6, 10), etc., and any of them may be used. Furthermore, the number of rows (number of blocks) of the matrix is not limited to 20 and is arbitrary, and the number of dimensions of the vector indicating the block order conversion rule is also arbitrary.

以上において、各処理手段51〜55は、符号順序変換テーブル作成装置50を構成するコンピュータ(パーソナル・コンピュータのみならず、その上位機種や下位機種のものも含む。)の内部に設けられた中央演算処理装置(CPU)、およびこのCPUの動作手順を規定する一つまたは複数のプログラムにより実現することができる。また、これらの各処理手段51〜55は、ハードウェア回路により実現してもよい。   In the above, each of the processing means 51 to 55 is a central operation provided in the computer (including not only a personal computer but also a higher model or a lower model) constituting the code order conversion table creating device 50. It can be realized by a processing device (CPU) and one or a plurality of programs that define the operation procedure of the CPU. Each of these processing means 51 to 55 may be realized by a hardware circuit.

また、スクランブリング関数記憶手段56およびブロック順序変換ルール記憶手段57には、例えば、ハードディスク、ROM、EEPROM、フラッシュ・メモリ、RAM、MO、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−RAM、FD、磁気テープ、あるいはこれらの組合せ等を採用することができる。   The scrambling function storage means 56 and the block order conversion rule storage means 57 include, for example, a hard disk, ROM, EEPROM, flash memory, RAM, MO, CD-ROM, CD-R, CD-RW, DVD-ROM. DVD-RAM, FD, magnetic tape, or a combination thereof can be employed.

符号順序復元テーブル作成装置70は、符号順序変換テーブル60から、これと逆の対応関係を定める符号順序復元テーブル80を作成する処理を行うものである。この符号順序復元テーブル作成装置70は、主としてソフトウェアにより実現してもよく、主としてハードウェア回路により実現してもよい。   The code order restoration table creation device 70 performs processing for creating a code order restoration table 80 that defines the inverse correspondence relationship from the code order conversion table 60. The code order restoration table creation device 70 may be realized mainly by software or may be realized mainly by a hardware circuit.

このような第1実施形態においては、以下のようにしてターボ符号による情報ビット系列の符号順序変換処理および符号順序復元処理が行われる。   In the first embodiment, the code order conversion process and the code order restoration process of the information bit sequence by the turbo code are performed as follows.

先ず、図2および図4に示すように、符号順序変換テーブル作成装置50により、符号順序変換テーブル60を作成し、さらに符号順序復元テーブル作成装置70により、符号順序復元テーブル80を作成し、これらの符号順序変換テーブル60および符号順序復元テーブル80を、符号順序変換テーブル記憶手段23A,33Aおよび符号順序復元テーブル記憶手段34Aにそれぞれ記憶させる。図4には、この具体的手順が示されている。   First, as shown in FIGS. 2 and 4, a code order conversion table 60 is created by the code order conversion table creation device 50, and a code order restoration table 80 is created by the code order restoration table creation device 70. The code order conversion table 60 and the code order restoration table 80 are stored in the code order conversion table storage means 23A, 33A and the code order restoration table storage means 34A, respectively. FIG. 4 shows this specific procedure.

図4において、符号順序変換テーブル作成装置50(図2参照)の電源を投入してテーブル作成処理を開始し(ステップS1)、仮想ビット系列生成処理手段51A(図2参照)により、仮想ビット系列の構成ビットを自動生成する(ステップS2)。この際、図7に示すように、仮想ビット系列生成処理手段51Aは、シフトレジスタに格納された第M−1番目のビット内容(ビットの値)と第M番目のビット内容とを加算することにより、次にシフトレジスタに入力するビットの値を自動生成する。   In FIG. 4, the power of the code order conversion table creation device 50 (see FIG. 2) is turned on to start the table creation processing (step S1), and the virtual bit sequence generation processing means 51A (see FIG. 2) Are automatically generated (step S2). At this time, as shown in FIG. 7, the virtual bit sequence generation processing means 51A adds the M−1th bit content (bit value) and the Mth bit content stored in the shift register. Thus, the value of the bit to be input next to the shift register is automatically generated.

続いて、図3に示すように、仮想ビット系列生成処理手段51Aにより生成した仮想ビット系列{Un}の構成ビットUnを1ビット分(第1番目のビットは、U1とする。)だけシフトレジスタに入力し、シフトレジスタにより実現されたシフト処理手段51B(図2参照)により、シフトレジスタに既に格納されている各ビットの値を1ビットずつシフトさせる(図4のステップS3)。 Subsequently, as shown in FIG. 3, configuration bits U n one bit of the virtual bit sequence {U n} generated by the virtual bit sequence generating means 51A (first bit shall be U 1.) The shift processing means 51B (see FIG. 2) realized by the shift register shifts the value of each bit already stored in the shift register bit by bit (step S3 in FIG. 4).

それから、図3に示すように、重み算出処理手段51C(図2参照)により、シフトレジスタの第m番目のビット内容(ビットの値)に、そのビットに対応する重み2-mをそれぞれ乗じ、これらの重みをm=1〜Mについて全て加算し、さらに2-(M+1)を加算して全体的な重みである実数X(第1番目のビットU1をシフトレジスタに入力して得られた値を実数X1とする。)を算出する(図4のステップS4)。 Then, as shown in FIG. 3, the weight calculation processing means 51C (see FIG. 2) multiplies the m-th bit content (bit value) of the shift register by a weight 2- m corresponding to the bit, These weights are all added for m = 1 to M , and 2 − (M + 1) is further added to obtain the real number X (the first bit U 1 as the overall weight ) to the shift register. the obtained value as a real number X 1.) is calculated (step S4 of FIG. 4).

そして、図3に示すように、重み/ラベル変換処理手段51D(図2参照)により、スクランブリング関数記憶手段56に記憶されたスクランブリング関数Y=g(X)を用いて(図10参照)、重み算出処理手段51Cにより算出された重みである実数X(第1番目は、実数X1)から、仮想ビット系列の構成ビットに付される実数ラベルとなる実数Y(第1番目は、実数Y1)への変換処理を行う(図4のステップS5)。なお、本実施形態では、一例として、シフトレジスタに新たに入力されたビットに対し、このビットの入力で算出された実数Xを変換して得られた実数Yを実数ラベルとして付すものとする。従って、仮想ビット系列の第n番目のビットUnをシフトレジスタに新たに入力して実数Xnが算出され、この実数Xnを変換して実数Ynが得られたとすると、実数Ynが第n番目のビットUnに実数ラベルとして付されるものとする。但し、生成された実数ラベルを、いずれのビットに付されるラベルとするかは任意であり、例えば、シフトレジスタの中央付近に格納されたビットに付されるラベルとしてもよく、あるいはシフトレジスタの最後のビット(次のシフト処理でシフトレジスタから外れるビット)、シフトレジスタに入る前のビット、シフトレジスタから既に外れたビット等に付されるラベルとしてもよい。 As shown in FIG. 3, the weight / label conversion processing means 51D (see FIG. 2) uses the scrambling function Y = g (X) stored in the scrambling function storage means 56 (see FIG. 10). From the real number X (the first is the real number X 1 ) that is the weight calculated by the weight calculation processing means 51C, the real number Y (the first is the real number) that becomes a real number label attached to the constituent bits of the virtual bit sequence Conversion to Y 1 ) is performed (step S5 in FIG. 4). In this embodiment, as an example, for a bit newly input to the shift register, a real number Y obtained by converting the real number X calculated by the input of this bit is attached as a real number label. Therefore, the real X n is calculated by newly input the n-th bit U n of the virtual bit sequence in the shift register, when a real number Y n is obtained by converting the real X n, is a real number Y n It is assumed that the nth bit Un is attached as a real number label. However, it is arbitrary whether the generated real number label is a label attached to which bit, for example, a label attached to a bit stored near the center of the shift register, or a shift register It may be a label attached to the last bit (a bit that deviates from the shift register in the next shift process), a bit before entering the shift register, a bit that has already deviated from the shift register, or the like.

続いて、行列配置処理手段52(図2参照)により、重み/ラベル変換処理手段51Dにより得られた実数ラベルである実数Y1と、この実数Y1という実数ラベルを付された仮想ビット系列{Un}の第1番目のビットU1についての配列位置情報(第1番目のビットであるという情報)とを対にした状態で、これらを行列形式でメモリに配置する(図4のステップS6)。なお、本実施形態では、一例として、行列サイズP行×Q列が、20行×26列(要素数が520)であるものとして説明を行うが、これに限定されるものではない。 Subsequently, the real number Y 1 which is the real number label obtained by the weight / label conversion processing means 51D by the matrix arrangement processing means 52 (see FIG. 2), and the virtual bit sequence with the real number label of the real number Y 1 { U n } are arranged in a matrix form in memory in a state of being paired with the array position information (information indicating that it is the first bit) for the first bit U 1 of U n } (step S6 in FIG. 4). ). In the present embodiment, as an example, the description will be made assuming that the matrix size P rows × Q columns is 20 rows × 26 columns (the number of elements is 520), but the present invention is not limited to this.

そして、ビット数が規定数(行列の要素数)に達したか否かを判断し(図4のステップS7)、規定数に達していない場合には、図4のステップS2の処理に戻り、以降、ビット数が規定数に達するまで、ステップS2〜S7の処理を繰り返すことにより、実数ラベルである各実数Yn(n=2,3,4,…)を生成し、これらの各実数Ynと、これらの各実数Ynという実数ラベルを付された仮想ビット系列{Un}の各構成ビットUn(n=2,3,4,…)についての配列位置情報(第n番目のビットであるという情報)とを対にした状態で、これらを行列形式でメモリに行方向(横方向)に順次配置していく。なお、実数ラベルを行列の要素数の分だけ全て生成してから、実数ラベルである各実数Yn(n=1,2,3,…)と、これらの実数Ynという実数ラベルを付された仮想ビット系列{Un}の各構成ビットUn(n=1,2,3,…)についての配列位置情報(第n番目のビットであるという情報)とを対にした状態で、これらを行列形式でメモリに配置してもよい。 Then, it is determined whether or not the number of bits has reached a specified number (number of elements in the matrix) (step S7 in FIG. 4). If the number has not reached the specified number, the process returns to step S2 in FIG. Thereafter, the processes of steps S2 to S7 are repeated until the number of bits reaches the specified number, thereby generating each real number Y n (n = 2, 3, 4,...) That is a real number label. n and the array position information (n-th number) about each constituent bit U n (n = 2, 3, 4,...) of the virtual bit sequence {U n } with a real number label of each real number Y n . These are sequentially arranged in the memory in a row direction (horizontal direction) in a matrix format in a state of being paired with information that they are bits. In addition, after all real number labels are generated for the number of elements of the matrix, each real number Y n (n = 1, 2, 3,...) That is a real number label and these real numbers Y n are attached. In a state where the arrangement position information (information that is the nth bit) of each constituent bit U n (n = 1, 2, 3,...) Of the virtual bit sequence {U n } is paired. May be arranged in a memory in a matrix format.

図8の上段部分には、実数ラベルである各実数Ynと、これらの実数Ynという実数ラベルを付された仮想ビット系列{Un}の各構成ビットUnについての配列位置情報とが対にされて、行列形式でメモリに配置された状態が示されている。行列の先頭(左上)の要素において、カッコ内の数値は、配列位置情報であり、「(1)」は、仮想ビット系列における第1番目のビットであることを示し、カッコの下側の数値は、実数ラベルであり、「0.34」は、実数ラベルがY1=0.34であることを示している。他の要素も同様である。 In the upper part of FIG. 8, each real number Y n which is a real number label, and array position information about each constituent bit U n of the virtual bit sequence {U n } with the real number label of these real numbers Y n are provided. The state of being paired and arranged in a memory in a matrix form is shown. In the first (upper left) element of the matrix, the numerical value in parentheses is the array position information, “(1)” indicates the first bit in the virtual bit sequence, and the numerical value below the parentheses Is a real number label, and “0.34” indicates that the real number label is Y 1 = 0.34. The same applies to the other elements.

その後、図8に示すように、行内ソーティング処理手段53(図2参照)により、各行内で実数ラベルの数値の大小順に従って、各配列位置情報の順序を実数ラベルとの対を保ちながら入れ替える(図4のステップS8)。例えば、図8の上段部分の行列において太枠で囲まれた第1行目は、図8の中段部分の行列において太枠で囲まれた第1行目のようになる。この例では、第1行内で最も小さい実数ラベルは、配列位置情報(26)と対になった「0.11」であるから、配列位置情報(26)および実数ラベル「0.11」は、第1列目に配置される。他の対も同様である。また、この例では、実数ラベルが小さい順に左側から並べられているが、実数ラベルが大きい順に左側から並べてもよい。   After that, as shown in FIG. 8, the in-line sorting processing means 53 (see FIG. 2) changes the order of the array position information in each row according to the order of the numerical value of the real number label while keeping the pair with the real number label ( Step S8 in FIG. For example, the first row surrounded by a thick frame in the matrix in the upper part of FIG. 8 becomes the first row surrounded by a thick frame in the matrix in the middle part of FIG. In this example, since the smallest real number label in the first row is “0.11” paired with the array position information (26), the array position information (26) and the real number label “0.11” are Arranged in the first row. The same applies to the other pairs. In this example, the real number labels are arranged from the left side in ascending order, but may be arranged from the left side in the order from the largest real number label.

続いて、図8に示すように、ブロックソーティング処理手段54(図2参照)により、ブロック順序変換ルール記憶手段57に記憶されたブロック順序変換ルールに従って、配列位置情報と実数ラベルとの対を、行単位(ブロック単位)で入れ替える(図4のステップS9)。例えば、ブロック順序変換ルールを示す20次元のベクトルが、(7,17,3,2,10,20,13,6,4,8,12,14,5,9,11,15,19,16,1,18)である場合には、ブロックソーティング前の状態を示す図8の中段部分の行列において太枠で囲まれた第1行目は、ブロックソーティング後の状態を示す図8の下段部分の行列において太枠で囲まれた第19行目に配置される。同様に、ブロックソーティング前の第2行目、第20行目は、ブロックソーティング後の第4行目、第6行目にそれぞれ配置される。   Subsequently, as shown in FIG. 8, the block sorting processing unit 54 (see FIG. 2) sets the pair of the array position information and the real number label according to the block order conversion rule stored in the block order conversion rule storage unit 57. Replacement is performed in units of rows (block units) (step S9 in FIG. 4). For example, a 20-dimensional vector indicating a block order conversion rule is (7, 17, 3, 2, 10, 20, 13, 6, 4, 8, 12, 14, 5, 9, 11, 15, 19, 16 , 1, 18), the first row surrounded by a thick frame in the matrix in the middle part of FIG. 8 showing the state before block sorting is the lower part of FIG. 8 showing the state after block sorting. Is arranged in the 19th row surrounded by a thick frame. Similarly, the second and twentieth lines before block sorting are arranged in the fourth and sixth lines after block sorting, respectively.

それから、行列読出処理手段55(図2参照)により、行列形式でメモリに配置された各配列位置情報を第1列目から列方向(縦方向)に順次読み出す。読み出す方向は、上から下に向かってもよく、あるいは下から上に向かってもよいが、ここでは前者のように上から下に向かって読み出すものとして説明を行う。すると、図9に示すような対応関係が得られる。この例では、入力系列の第30番目のビットは、出力系列では、第4番目のビットに配置され、同様に、入力系列の第496番目、第26番目のビットは、出力系列では、第6番目、第19番目のビットに配置される対応関係となっている。そして、情報ビット系列の処理単位が512ビットの場合には、「513」〜「520」は不要であるため、「513」〜「520」を取り除いて順次数値を詰める作業を行う。例えば、図9の例では、「519」を取り除き、その下側の各数値を上方にずらし、取り除いた部分には、太枠で囲まれた直下の数値「322」を入れる。このようにして処理単位が512ビットである場合の符号順序変換テーブル60を作成する(図4のステップS10)。なお、処理単位が512ビット以外の場合には、行列サイズを変更すればよく、この場合に、行数は20行として変更しなければ、前述した20次元のベクトルで示されるブロック順序変換ルールをそのまま使用することができる。   Then, the array read processing means 55 (see FIG. 2) sequentially reads the array position information arranged in the memory in the matrix format from the first column in the column direction (vertical direction). The reading direction may be from the top to the bottom or from the bottom to the top. Here, the description will be made assuming that the reading is performed from the top to the bottom as in the former case. Then, the correspondence as shown in FIG. 9 is obtained. In this example, the 30th bit of the input sequence is arranged at the 4th bit in the output sequence, and similarly, the 496th and 26th bits of the input sequence are the 6th bit in the output sequence. The correspondence relationship is arranged in the 19th and 19th bits. When the processing unit of the information bit sequence is 512 bits, “513” to “520” are unnecessary, and therefore, “513” to “520” are removed, and the numerical values are sequentially reduced. For example, in the example of FIG. 9, “519” is removed, the numerical values on the lower side are shifted upward, and the numerical value “322” immediately below surrounded by a thick frame is put in the removed portion. In this way, the code order conversion table 60 when the processing unit is 512 bits is created (step S10 in FIG. 4). If the processing unit is other than 512 bits, the matrix size may be changed. In this case, if the number of rows is not changed to 20 rows, the block order conversion rule indicated by the 20-dimensional vector described above is used. It can be used as it is.

次に、図9に示すように、符号順序復元テーブル作成装置70(図2参照)により、符号順序変換テーブル60の対応関係を逆転させることにより、符号順序復元テーブル80を作成する(図4のステップS11)。   Next, as shown in FIG. 9, the code order restoration table 80 is created by reversing the correspondence of the code order conversion table 60 by the code order restoration table creating apparatus 70 (see FIG. 2) (see FIG. 4). Step S11).

そして、図2に示すように、作成した符号順序変換テーブル60を符号器20のインターリーバ23の符号順序変換テーブル記憶手段23Aおよび復号器30のインターリーバ33の符号順序変換テーブル記憶手段33Aに書き込んで保存するとともに、作成した符号順序復元テーブル80を復号器30のデインターリーバ34の符号順序復元テーブル記憶手段34Aに書き込んで保存し(図4のステップS12)、符号順序変換テーブル60および符号順序復元テーブル80の作成処理を終了する(図4のステップS13)。   Then, as shown in FIG. 2, the created code order conversion table 60 is written in the code order conversion table storage means 23A of the interleaver 23 of the encoder 20 and the code order conversion table storage means 33A of the interleaver 33 of the decoder 30. And the created code order restoration table 80 is written and saved in the code order restoration table storage means 34A of the deinterleaver 34 of the decoder 30 (step S12 in FIG. 4), and the code order conversion table 60 and the code order are stored. The creation process of the restoration table 80 is terminated (step S13 in FIG. 4).

また、符号器20におけるインターリーバ23によるインターリーブ処理は、図5に示す手順で行われる。図5において、先ず、符号器20あるいは符号器20を含む通信システムの送信機の電源を投入して処理を開始し(ステップS21)、符号順序変換処理手段23B(図2参照)により、処理対象となる情報ビット系列C(図1参照)を入力する(ステップS22)。続いて、符号順序変換処理手段23Bにより、符号順序変換テーブル記憶手段23Aに記憶された符号順序変換テーブル60を用いて、入力した情報ビット系列Cの構成ビットを並べ替える符号順序変換処理を行った後(ステップS23)、変換処理後のビット系列Ch(図1参照)を出力し(ステップS24)、インターリーブ処理を終了する(ステップS25)。なお、復号器30におけるインターリーバ33によるインターリーブ処理も同様である。 Further, the interleaving process by the interleaver 23 in the encoder 20 is performed according to the procedure shown in FIG. 5, first, the encoder 20 or the transmitter of the communication system including the encoder 20 is turned on to start the processing (step S21), and the processing target is processed by the code order conversion processing means 23B (see FIG. 2). An information bit sequence C (see FIG. 1) is input (step S22). Subsequently, the code order conversion processing unit 23B performs code order conversion processing for rearranging the constituent bits of the input information bit sequence C using the code order conversion table 60 stored in the code order conversion table storage unit 23A. After (step S23), the bit sequence Ch (see FIG. 1) after the conversion process is output (step S24), and the interleaving process is terminated (step S25). The interleaving process by the interleaver 33 in the decoder 30 is the same.

一方、復号器30におけるデインターリーバ34によるデインターリーブ処理は、図6に示す手順で行われる。図6において、先ず、復号器30あるいは復号器30を含む通信システムの受信機の電源を投入して処理を開始し(ステップS31)、符号順序復元処理手段34B(図2参照)により、第2の要素復号器32(図1参照)から出力されたビット系列Λ2eを入力する(ステップS32)。続いて、符号順序復元処理手段34Bにより、符号順序復元テーブル記憶手段34Aに記憶された符号順序復元テーブル80を用いて、入力したビット系列Λ2eの構成ビットを並べ替える符号順序復元処理を行った後(ステップS33)、復元処理後のビット系列Λ2e h(図1参照)を出力し(ステップS34)、デインターリーブ処理を終了する(ステップS35)。 On the other hand, the deinterleave process by the deinterleaver 34 in the decoder 30 is performed according to the procedure shown in FIG. In FIG. 6, first, the decoder 30 or the receiver of the communication system including the decoder 30 is turned on to start the processing (step S31), and the code sequence restoration processing means 34B (see FIG. 2) The bit sequence Λ 2e output from the element decoder 32 (see FIG. 1) is input (step S32). Subsequently, the code order restoration processing unit 34B performs code order restoration processing for rearranging the constituent bits of the input bit sequence Λ 2e using the code order restoration table 80 stored in the code order restoration table storage unit 34A. After (step S33), the restored bit sequence Λ 2e h (see FIG. 1) is output (step S34), and the deinterleaving process is terminated (step S35).

このような第1実施形態によれば、次のような効果がある。すなわち、インターリーバ23,33によるインターリーブ処理で用いられる符号順序変換テーブル60は、ランダムに生成された実数ラベルの数値の大小関係を利用して作成されるので、ランダム化の程度の高い符号順序変換処理を実現すること、すなわちインターリーバ23,33への入力系列と出力系列との無相関性を高めることができる。このため、通信システムの性能の向上を図ることができる。   According to such 1st Embodiment, there exist the following effects. That is, since the code order conversion table 60 used in the interleaving process by the interleavers 23 and 33 is created using the magnitude relation of the numerical values of the real numbers generated at random, the code order conversion with a high degree of randomization is performed. Realization of processing, that is, non-correlation between the input sequence to the interleavers 23 and 33 and the output sequence can be enhanced. For this reason, the performance of the communication system can be improved.

また、符号順序変換テーブル60は、スクランブリング関数(図10参照)を用いた実数ラベルの生成処理を行って作成されているので、スクランブリング関数の持つ機能により、符号順序変換処理におけるランダム化の程度を、より一層高めることができ、通信システムの性能を、より一層向上させることができる。   Further, since the code order conversion table 60 is created by performing a real number label generation process using a scrambling function (see FIG. 10), randomization in the code order conversion process is performed by the function of the scrambling function. The degree can be further increased, and the performance of the communication system can be further improved.

さらに、0〜1の間の実数Xから0〜1の間の実数Yへの変換を行うスクランブリング関数Y=g(X)を用いた実数ラベルの生成処理を行って符号順序変換テーブル60を作成する場合には、従来から存在する擬似確率過程発生装置(Fake Process Generator)を利用して実数ラベルの生成処理を実現することができるので、ランダム化された実数ラベルの生成処理を容易に実現することができる。   Furthermore, a real number label generation process using a scrambling function Y = g (X) for converting from a real number X between 0 and 1 to a real number Y between 0 and 1 is performed to obtain the code order conversion table 60. When creating, real number label generation processing can be realized using the existing pseudo stochastic process generator (Fake Process Generator), so randomized real number label generation processing is easily realized. can do.

そして、符号順序変換テーブル60は、コードマッチドインターリーバの設計思想に沿って定められたブロック順序変換ルールに基づくブロックソーティング処理を行って作成されるので、高SNR領域におけるビット誤り率への寄与が最も大きい致命的な入力パターン、すなわち最も低重みのパリティビット系列を作るような低重み入力パターンをなるべく壊すようなインターリーブ処理を実現することができる。   Since the code order conversion table 60 is created by performing a block sorting process based on the block order conversion rules determined in accordance with the design concept of the code matched interleaver, it contributes to the bit error rate in the high SNR region. It is possible to realize an interleaving process that destroys the largest fatal input pattern, that is, the low weight input pattern that creates the lowest weight parity bit sequence as much as possible.

また、本発明の効果を確かめるために、次のようなシミュレーションによる比較実験を行った。   Further, in order to confirm the effect of the present invention, a comparative experiment by the following simulation was performed.

本発明のインターリーバ(実施例)と、前述した特許文献1および非特許文献1に記載された素数インターリーバ(比較例)とについて、ターボ符号の復号特性の相違を検証した。具体的には、本発明の第1実施形態のターボ符号用の符号器20および復号器30、並びにこれらに含まれるインターリーバ23,33およびデインターリーバ34(図1参照)と、これらに対応する機器を素数インターリーバを用いて構成したものとを、それぞれC++言語を用いてプログラミングし、シミュレーションを行った。   The interleaver (example) of the present invention and the prime number interleaver (comparative example) described in Patent Document 1 and Non-Patent Document 1 described above were verified for differences in decoding characteristics of turbo codes. Specifically, the encoder 20 and decoder 30 for turbo code according to the first embodiment of the present invention, the interleavers 23 and 33 and the deinterleaver 34 (see FIG. 1) included therein, and corresponding to these The devices to be configured using a prime interleaver were programmed using C ++ language and simulated.

送受信するデータとして5120ビットのビット系列をランダムに生成し、300回計測してビット誤り率(BER:Bit Error Rate)の平均をとった。状態数は8、符号化率は1/3とした。変調方式にはBPSK(Bi-Phase Shift Keying)変調方式を仮定した。また、通信路として、白色ガウス雑音通信路を仮定し、送信系列にその雑音を載せた系列を最終的な受信系列とした。   A bit sequence of 5120 bits was randomly generated as data to be transmitted and received, measured 300 times, and an average bit error rate (BER) was taken. The number of states was 8, and the coding rate was 1/3. As a modulation method, a BPSK (Bi-Phase Shift Keying) modulation method is assumed. A white Gaussian noise communication channel is assumed as a communication channel, and a sequence in which the noise is placed on a transmission sequence is defined as a final reception sequence.

図12には、シミュレーションによる比較実験結果が示されている。縦軸は、ビット誤り率(BER:Bit Error Rate)であり、横軸は、実験パラメータとして変化させたSNR、すなわちビット当たりのエネルギ対雑音電力スペクトル密度比Eb/N0であり、右側にいく程、雑音が少ないことを意味する。従って、グラフの値が小さくなればなる程、復号特性は良いと言える。なお、ターボ符号による繰り返しの回数は、8回である。 FIG. 12 shows a comparison experiment result by simulation. The vertical axis represents the bit error rate (BER), and the horizontal axis represents the SNR changed as an experimental parameter, that is, the energy-to-noise power spectral density ratio E b / N 0 per bit. It means that there is less noise. Therefore, the smaller the value of the graph, the better the decoding characteristics. Note that the number of repetitions by the turbo code is eight.

図12によれば、Eb/N0=0.2〜0.3付近では、本発明のインターリーバ(実施例)のビット誤り率の値が、素数インターリーバ(比較例)の値よりも小さくなっており、これにより本発明の効果が顕著に示された。 According to FIG. 12, in the vicinity of E b / N 0 = 0.2 to 0.3, the bit error rate value of the interleaver (example) of the present invention is larger than the value of the prime interleaver (comparative example). As a result, the effect of the present invention was remarkably shown.

[第2実施形態]
図13には、本発明の第2実施形態の符号順序変換装置であるインターリーバ200およびこのインターリーバ200による処理で用いられる行内ソーティングテーブル220を作成する行内ソーティングテーブル作成装置210の構成が示されている。本第2実施形態は、行内ソーティングテーブル事前作成の発明に係る実施形態である。
[Second Embodiment]
FIG. 13 shows the configuration of an interliner 200 that is a code order conversion apparatus according to the second embodiment of the present invention and an inline sorting table creation apparatus 210 that creates an inline sorting table 220 used in processing by the interleaver 200. ing. The second embodiment is an embodiment according to the invention of in-line sorting table pre-creation.

図13において、インターリーバ200は、行列配置処理手段201と、行内ソーティング処理手段202と、ブロックソーティング処理手段203と、行列読出処理手段204と、行内ソーティングテーブル記憶手段205と、ブロック順序変換ルール記憶手段206とを備えて構成されている。   In FIG. 13, the interleaver 200 includes a matrix arrangement processing unit 201, an in-line sorting processing unit 202, a block sorting processing unit 203, a matrix reading processing unit 204, an in-line sorting table storage unit 205, and a block order conversion rule storage. And means 206.

行列配置処理手段201は、情報ビット系列Cを構成する各ビットの値を示す内容情報(「1」か「0」の情報)を、各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向にメモリに順次配置する処理を行うものである。   The matrix arrangement processing unit 201 displays content information (information of “1” or “0”) indicating the value of each bit constituting the information bit sequence C in a matrix format according to the arrangement order before the code order conversion process of each bit. A process of sequentially arranging in the memory in the row direction is performed.

行内ソーティング処理手段202は、行列配置処理手段201により行列形式で配置された各内容情報を、各行内(各ブロック内)でそれぞれ行内ソーティングテーブル記憶手段205に記憶された各行内ソーティングテーブル220を用いて並べ替える処理を行うものである。   The in-line sorting processing unit 202 uses each in-line sorting table 220 stored in the in-line sorting table storage unit 205 for each content information arranged in a matrix form by the matrix arrangement processing unit 201 in each row (in each block). The process of rearranging is performed.

ブロックソーティング処理手段203は、行内ソーティング処理手段202による行内ソーティング後の各内容情報を、ブロック順序変換ルール記憶手段206に記憶されたブロック順序変換ルールに従って行単位(ブロック単位)で並べ替える処理を行うものである。   The block sorting processing unit 203 performs processing for rearranging the contents information after the in-line sorting by the in-line sorting processing unit 202 in units of rows (block units) according to the block order conversion rules stored in the block order conversion rule storage unit 206. Is.

行列読出処理手段204は、ブロックソーティング処理手段203によるブロックソーティング後の各内容情報を列方向に順次読み出すことにより、符号順序変換処理後のビット系列Chを生成する処理を行うものである。 Matrix read processing unit 204, by sequentially reading each contents information after block sorting by the block sorting processing unit 203 in the column direction, and performs processing for generating a bit sequence C h after encoding order conversion process.

行内ソーティングテーブル記憶手段205は、行内ソーティング処理手段202による行内ソーティングの際の順序変換ルールを定める行内ソーティングテーブル220を各行毎(各ブロック毎)に記憶するものである。これらの行内ソーティングテーブル220は、行内ソーティングテーブル作成装置210により作成されたものである。   The in-line sorting table storage unit 205 stores an in-line sorting table 220 that defines an order conversion rule at the time of in-line sorting by the in-line sorting processing unit 202 for each row (each block). These in-line sorting tables 220 are created by the in-line sorting table creation device 210.

ブロック順序変換ルール記憶手段206は、ブロックソーティング処理手段203によるブロックソーティングの際のブロック順序変換ルールを記憶するものである。このブロック順序変換ルールは、前記第1実施形態の場合と同様である。   The block order conversion rule storage unit 206 stores a block order conversion rule when the block sorting processing unit 203 performs block sorting. This block order conversion rule is the same as that in the first embodiment.

行内ソーティングテーブル作成装置210は、行内ソーティングテーブル220を事前に作成する装置であり、実数ラベル生成処理手段211と、配列処理手段212と、配列読出処理手段213と、スクランブリング関数記憶手段214とを備えて構成されている。   The in-line sorting table creation device 210 is a device that creates the in-line sorting table 220 in advance, and includes a real number label generation processing unit 211, an array processing unit 212, an array read processing unit 213, and a scrambling function storage unit 214. It is prepared for.

実数ラベル生成処理手段211は、前記第1実施形態の実数ラベル生成処理手段51の場合と同様に、情報ビット系列Cの代用として仮想ビット系列を自動生成し、この仮想ビット系列の各構成ビットの値を用いて重みである実数Xを算出し、スクランブリング関数記憶手段214に記憶されたスクランブリング関数Y=g(X)を用いて実数Xから実数Yへの変換処理を行うことにより、仮想ビット系列の各構成ビットに付される実数ラベルをランダムに生成する処理を行うものである。   As in the case of the real label generation processing unit 51 of the first embodiment, the real number label generation processing unit 211 automatically generates a virtual bit sequence as a substitute for the information bit sequence C, and each component bit of the virtual bit sequence is generated. By calculating a real number X as a weight using the value and performing a conversion process from the real number X to the real number Y using the scrambling function Y = g (X) stored in the scrambling function storage unit 214, the virtual number X is obtained. A process of randomly generating a real number label attached to each constituent bit of the bit sequence is performed.

配列処理手段212は、実数ラベル生成処理手段211により生成された各実数ラベルと、これらの各実数ラベルを付された各ビットの符号順序変換処理前の仮想ビット系列内での配列位置情報(第何番目のビットであるかという情報)とを対にした状態で、各配列位置情報を各実数ラベルとともに各ビットの符号順序変換処理前の配列順序に従ってメモリに順次配列する処理を行うものである。   The array processing means 212 has information on the position of each real number label generated by the real number label generation processing means 211 and the virtual bit sequence before the code order conversion processing of each bit to which these real number labels are attached (first order). In this state, each array position information together with each real number label is sequentially arranged in the memory according to the arrangement order before the code order conversion process of each bit. .

配列読出処理手段213は、配列処理手段212により配列した各配列位置情報を、複数のブロックに区切って各ブロック内でそれぞれ各実数ラベルの数値の大小順に従って並べ替えた後、つまり各ブロック内で行内ソーティングに相当する処理を行った後、並べ替えられた各配列位置情報を各ブロック毎に順次読み出すことにより、各行内ソーティングテーブル220を作成する処理を行うものである。   The array read processing means 213 divides each array position information arrayed by the array processing means 212 into a plurality of blocks and rearranges them in each block according to the order of the numerical value of each real number label, that is, within each block. After performing the processing corresponding to the in-line sorting, the process of creating the in-line sorting table 220 is performed by sequentially reading the rearranged array position information for each block.

スクランブリング関数記憶手段214は、実数ラベル生成処理手段211による処理で用いられるスクランブリング関数Y=g(X)を記憶するものであり、前記第1実施形態のスクランブリング関数記憶手段56の場合と同様である。   The scrambling function storage means 214 stores the scrambling function Y = g (X) used in the processing by the real number label generation processing means 211, and the scrambling function storage means 56 of the first embodiment. It is the same.

なお、復号器のデインターリーバには、行内ソーティングテーブル記憶手段205に記憶された各行内ソーティングテーブル220と逆の変換を行うための各行毎の逆行内ソーティングテーブルを記憶する逆行内ソーティングテーブル記憶手段を設けるとともに、ブロック順序変換ルール記憶手段206に記憶されたブロック順序変換ルールと逆の変換を行うためのブロック順序逆変換ルールを記憶するブロック順序逆変換ルール記憶手段を設けておけばよい。また、符号器または復号器のいずれか一方のインターリーバについて上記のインターリーバ200を採用し、他方のインターリーバについては、前記第1実施形態の場合と同様に、各行内ソーティングテーブルとブロック順序変換ルールとを組み合わせたに等しい変換ルールを定める符号順序変換テーブルを用意してインターリーブ処理を行ってもよい。さらに、復号器のデインターリーバには、前記第1実施形態の場合と同様に、各逆行内ソーティングテーブルとブロック順序逆変換ルールとを組み合わせたに等しい変換ルールを定める符号順序復元テーブルを用意してデインターリーブ処理を行ってもよい。   In addition, the deinterleaver of the decoder stores the reverse row sorting table storage unit for storing the reverse row sorting table for each row for performing reverse conversion to each row sorting table 220 stored in the row sorting table storage unit 205. And a block order reverse conversion rule storage means for storing a block order reverse conversion rule for performing a reverse conversion to the block order conversion rule stored in the block order conversion rule storage means 206 may be provided. Also, the interleaver 200 described above is adopted for either the encoder or decoder interleaver, and the other interleaver, as in the case of the first embodiment, is subjected to each in-line sorting table and block order conversion. A code order conversion table that defines conversion rules that are equivalent to a combination of rules may be prepared to perform interleaving. Further, as in the case of the first embodiment, the decoder deinterleaver is provided with a code order restoration table that defines a conversion rule that is equivalent to a combination of each reverse row sorting table and block order reverse conversion rule. Deinterleaving processing may be performed.

このような第2実施形態においては、情報ビット系列Cの符号順序変換処理に先立って、行内ソーティングテーブル作成装置210により、各行内ソーティングテーブル220を事前に作成して行内ソーティングテーブル記憶手段205に記憶させておく。そして、情報ビット系列Cの符号順序変換処理を行う際には、行列配置処理手段201により、情報ビット系列Cを構成する各ビットの値を示す内容情報を行列形式で行方向に順次配置し、行内ソーティング処理手段202により、各行内でそれぞれ行内ソーティングテーブル記憶手段205に記憶された各行内ソーティングテーブル220を用いて行内ソーティングを行った後、ブロックソーティング処理手段203により、ブロック順序変換ルール記憶手段206に記憶されたブロック順序変換ルールに従ってブロックソーティングを行い、行列読出処理手段204により、各内容情報を列方向に順次読み出すことにより、符号順序変換処理後のビット系列Chを生成する。 In such a second embodiment, prior to the code order conversion processing of the information bit sequence C, the in-line sorting table 220 is created in advance by the in-line sorting table creation device 210 and stored in the in-line sorting table storage means 205. Let me. When performing the code order conversion process of the information bit sequence C, the matrix arrangement processing unit 201 sequentially arranges the content information indicating the value of each bit constituting the information bit sequence C in the row direction in a matrix format, The in-line sorting processing unit 202 performs in-line sorting using the in-line sorting table 220 stored in the in-line sorting table storage unit 205 in each row, and then the block sorting processing unit 203 performs the block order conversion rule storage unit 206. performs block sorted in accordance with the stored block permutation rule, by the matrix read processing unit 204, by sequentially reading that each content information in the column direction, to generate a bit sequence C h after encoding order conversion process.

このような第2実施形態によれば、次のような効果がある。すなわち、インターリーバ200によるインターリーブ処理で用いられる各行内ソーティングテーブル220は、ランダムに生成された実数ラベルの数値の大小関係を利用して作成されるので、前記第1実施形態の場合と同様に、ランダム化の程度の高い符号順序変換処理を実現すること、すなわちインターリーバ200への入力系列と出力系列との無相関性を高めることができる。このため、通信システムの性能の向上を図ることができる。   According to such 2nd Embodiment, there exist the following effects. That is, each in-line sorting table 220 used in the interleaving process by the interleaver 200 is created using the magnitude relationship of the numerical value of the real number label generated at random. As in the case of the first embodiment, It is possible to realize code order conversion processing with a high degree of randomization, that is, to increase the non-correlation between the input sequence to the interleaver 200 and the output sequence. For this reason, the performance of the communication system can be improved.

また、各行内ソーティングテーブル220は、スクランブリング関数(図10参照)を用いた実数ラベルの生成処理を行って作成されているので、前記第1実施形態の場合と同様に、スクランブリング関数の持つ機能により、符号順序変換処理におけるランダム化の程度を、より一層高めることができ、通信システムの性能を、より一層向上させることができる。   Further, each in-line sorting table 220 is created by performing a real number label generation process using a scrambling function (see FIG. 10), so that the scrambling function has the same as in the first embodiment. With the function, the degree of randomization in the code order conversion process can be further increased, and the performance of the communication system can be further improved.

さらに、0〜1の間の実数Xから0〜1の間の実数Yへの変換を行うスクランブリング関数Y=g(X)を用いた実数ラベルの生成処理を行って各行内ソーティングテーブル220を作成する場合には、従来から存在する擬似確率過程発生装置(Fake Process Generator)を利用して実数ラベルの生成処理を実現することができるので、ランダム化された実数ラベルの生成処理を容易に実現することができる。   Further, the real number label generation process using the scrambling function Y = g (X) for converting the real number X between 0 and 1 to the real number Y between 0 and 1 is performed, and each in-line sorting table 220 is stored. When creating, real number label generation processing can be realized using the existing pseudo stochastic process generator (Fake Process Generator), so randomized real number label generation processing is easily realized. can do.

そして、各行内ソーティングテーブル220を用いた行内ソーティング後には、コードマッチドインターリーバの設計思想に沿って定められたブロック順序変換ルールに基づくブロックソーティングを行うので、高SNR領域におけるビット誤り率への寄与が最も大きい致命的な入力パターン、すなわち最も低重みのパリティビット系列を作るような低重み入力パターンをなるべく壊すようなインターリーブ処理を実現することができる。   Then, after in-line sorting using the in-line sorting table 220, block sorting based on the block order conversion rule defined in accordance with the design concept of the code matched interleaver is performed, so that it contributes to the bit error rate in the high SNR region. It is possible to realize an interleaving process that breaks as much as possible the fatal input pattern having the largest I, that is, the low weight input pattern that creates the lowest weight parity bit sequence.

[第3実施形態]
図14には、本発明の第3実施形態の符号順序変換装置であるインターリーバ300の構成が示されている。本第3実施形態は、符号順序変換テーブル実時間作成の発明に係る実施形態である。
[Third Embodiment]
FIG. 14 shows the configuration of an interleaver 300 that is a code order conversion apparatus according to the third embodiment of the present invention. The third embodiment is an embodiment according to the invention for creating a code order conversion table in real time.

図14において、インターリーバ300は、実数ラベル生成処理手段301と、行列配置処理手段302と、行内ソーティング処理手段303と、ブロックソーティング処理手段304と、符号順序変換テーブル作成処理手段305と、符号順序変換処理手段306と、スクランブリング関数記憶手段307と、ブロック順序変換ルール記憶手段308とを備えて構成されている。   In FIG. 14, the interleaver 300 includes a real number label generation processing unit 301, a matrix arrangement processing unit 302, an in-line sorting processing unit 303, a block sorting processing unit 304, a code order conversion table creation processing unit 305, and a code order. A conversion processing unit 306, a scrambling function storage unit 307, and a block order conversion rule storage unit 308 are provided.

実数ラベル生成処理手段301は、仮想ビット系列ではなく、符号順序変換処理の対象となる情報ビット系列Cの各構成ビットの値を用いて実数ラベルを生成する点を除き、前記第1実施形態の実数ラベル生成処理手段51の場合と同様である。   The real number label generation processing means 301 is the same as that of the first embodiment except that the real number label is generated using the value of each constituent bit of the information bit sequence C to be subjected to the code order conversion process instead of the virtual bit sequence. This is the same as the case of the real number label generation processing means 51.

行列配置処理手段302は、実数ラベル生成処理手段301により生成された各実数ラベルと、これらの各実数ラベルを付された各ビットの符号順序変換処理前の情報ビット系列C内での配列位置情報とを対にした状態で、各配列位置情報を各実数ラベルとともに各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向にメモリに順次配置する処理を行うものである。   The matrix arrangement processing unit 302 includes real position labels generated by the real number label generation processing unit 301, and array position information in the information bit sequence C before the code order conversion process of each bit assigned with each real number label. In such a state, the array position information is sequentially arranged in the memory in the row direction in a matrix format according to the array order before the code order conversion process of each bit together with each real number label.

行内ソーティング処理手段303は、行列配置処理手段302により行列形式で配置された各配列位置情報を、各行内でそれぞれ各実数ラベルの数値の大小順に従って並べ替える行内ソーティング処理を行うものである。   The in-line sorting processing unit 303 performs in-line sorting processing for rearranging the array position information arranged in the matrix format by the matrix arrangement processing unit 302 in the order of the numerical value of each real number label in each row.

ブロックソーティング処理手段304は、行内ソーティング処理手段303による行内ソーティング後の各配列位置情報を、ブロック順序変換ルール記憶手段308に記憶されたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティング処理を行うものである。   The block sorting processing unit 304 performs block sorting processing for rearranging each array position information after the in-line sorting by the in-line sorting processing unit 303 in units of rows according to the block order conversion rules stored in the block order conversion rule storage unit 308. It is.

符号順序変換テーブル作成処理手段305は、ブロックソーティング処理手段304によるブロックソーティング後の各配列位置情報を列方向に順次読み出すことにより、符号順序変換処理前のビット系列と符号順序変換処理後のビット系列とのそれぞれの構成ビットの対応関係を定める符号順序変換テーブル310を作成する処理を行うものである。   The code order conversion table creation processing unit 305 sequentially reads the array position information after the block sorting by the block sorting processing unit 304 in the column direction, so that the bit sequence before the code order conversion process and the bit sequence after the code order conversion process The code order conversion table 310 for defining the corresponding relationship between the constituent bits is generated.

符号順序変換処理手段306は、符号順序変換テーブル作成処理手段305により作成された符号順序変換テーブル310を用いて、情報ビット系列Cを構成する各ビットを並べ替えることにより、符号順序変換処理後のビット系列Chを生成する処理を行うものである。 The code order conversion processing unit 306 uses the code order conversion table 310 created by the code order conversion table creation processing unit 305 to rearrange the bits constituting the information bit sequence C, thereby performing the code order conversion processing after the code order conversion processing. It performs a process of generating a bit sequence C h.

スクランブリング関数記憶手段307は、実数ラベル生成処理手段301による処理で用いられるスクランブリング関数Y=g(X)を記憶するものであり、前記第1実施形態のスクランブリング関数記憶手段56の場合と同様である。   The scrambling function storage means 307 stores the scrambling function Y = g (X) used in the processing by the real number label generation processing means 301, and in the case of the scrambling function storage means 56 of the first embodiment. It is the same.

ブロック順序変換ルール記憶手段308は、ブロックソーティング処理手段304によるブロックソーティングの際のブロック順序変換ルールを記憶するものである。このブロック順序変換ルールは、前記第1実施形態の場合と同様である。   The block order conversion rule storage unit 308 stores a block order conversion rule when the block sorting processing unit 304 performs block sorting. This block order conversion rule is the same as that in the first embodiment.

このような第3実施形態においては、実数ラベル生成処理手段301により、符号順序変換処理の対象となる情報ビット系列Cの構成ビットの値を用いて実数ラベルをランダムに生成し、行列配置処理手段302により、各実数ラベルと各ビットの符号順序変換処理前の情報ビット系列C内での配列位置情報とを対にして行列形式で行方向に順次配置し、行内ソーティング処理手段303により、各行内でそれぞれ各実数ラベルの数値の大小順に従って各配列位置情報を並べ替える行内ソーティングを行った後、ブロックソーティング処理手段304により、ブロック順序変換ルール記憶手段308に記憶されたブロック順序変換ルールに従って各配列位置情報を行単位で並べ替えるブロックソーティングを行う。そして、符号順序変換テーブル作成処理手段305により、ブロックソーティング後の各配列位置情報を列方向に順次読み出すことにより、符号順序変換処理前のビット系列と符号順序変換処理後のビット系列とのそれぞれの構成ビットの対応関係を定める符号順序変換テーブル310を作成し、その後、符号順序変換テーブル310を用いて情報ビット系列Cを構成する各ビットを並べ替えて符号順序変換処理後のビット系列Chを生成する。 In such a third embodiment, the real number label generation processing means 301 randomly generates a real number label using the values of the constituent bits of the information bit sequence C to be subjected to the code order conversion process, and the matrix arrangement processing means. By 302, the real number labels and the array position information in the information bit sequence C before the code order conversion process of each bit are paired and sequentially arranged in the row direction in a matrix form. After performing in-line sorting for rearranging the array position information according to the order of the numerical values of the respective real number labels, the block sorting processing unit 304 performs each array according to the block order conversion rule stored in the block order conversion rule storage unit 308. Performs block sorting that rearranges position information in units of lines. Then, each sequence position information after block sorting is sequentially read in the column direction by the code order conversion table creation processing unit 305, whereby each of the bit sequence before the code order conversion processing and the bit sequence after the code order conversion processing is read. create a code sequence conversion table 310 to determine the correspondence between the configuration bits, then the bit sequence C h after encoding permutation process rearranges the bits constituting the information bit sequence C using the code sequence conversion table 310 Generate.

また、符号順序変換テーブル作成処理手段305により作成した符号順序変換テーブル310は、各処理単位毎(例えば、サイズの大きい情報ビット系列を512ビットに区切って処理する場合には、その512ビット毎という意味である。)に毎回連続して、または間欠的に復号器へ送信する。復号器では、受信した符号順序変換テーブルを用いてインターリーブ処理を行うとともに、符号順序変換テーブルから符号順序復元テーブルを作成してデインターリーブ処理を行う。なお、符号順序変換テーブル310を間欠的に復号器へ送信する場合には、符号器側では、次回の送信時まで既に作成されている符号順序変換テーブル310を用いて(あるいは、事前に作成された固定的な符号順序変換テーブルを織り交ぜて用いてもよい。)符号順序変換処理手段306による処理を行うので、各処理手段301〜305による処理は行う必要はない。   Further, the code order conversion table 310 created by the code order conversion table creation processing unit 305 is called each 512 bits for each processing unit (for example, when processing a large information bit sequence divided into 512 bits). Is transmitted to the decoder continuously or intermittently every time. The decoder performs an interleaving process using the received code order conversion table, creates a code order restoration table from the code order conversion table, and performs a deinterleaving process. When the code order conversion table 310 is intermittently transmitted to the decoder, the encoder side uses the code order conversion table 310 already created until the next transmission (or is created in advance). A fixed code order conversion table may be used interlaced.) Since the processing by the code order conversion processing means 306 is performed, it is not necessary to perform the processes by the processing means 301 to 305.

このような第3実施形態によれば、前記第1、第2実施形態の場合と同様に、実数ラベルを利用した符号順序変換処理によるランダム化の程度および通信システムの性能の向上効果、スクランブリング関数の利用によるランダム化の程度および通信システムの性能の向上効果、擬似確率過程発生装置の利用による実数ラベルの生成処理の容易化効果、コードマッチドの設計思想に沿ったブロック順序変換ルールの利用による致命的な入力パターンを壊す効果を得ることができることに加え、符号順序変換テーブル310を事前に作成しておくのではなく、情報ビット系列Cを用いてリアルタイムで作成するので、秘匿通信を実現することができる。   According to the third embodiment, as in the first and second embodiments, the degree of randomization by the code order conversion process using the real number label, the effect of improving the performance of the communication system, and the scrambling. By using functions to improve the degree of randomization and communication system performance, by using pseudo-stochastic process generators to facilitate real number label generation, and by using block order conversion rules in accordance with code-matched design concepts In addition to being able to obtain the effect of destroying a fatal input pattern, the code order conversion table 310 is not created in advance, but is created in real time using the information bit sequence C, thereby realizing confidential communication. be able to.

[第4実施形態]
図15には、本発明の第4実施形態の符号順序変換装置であるインターリーバ400の構成が示されている。本第4実施形態は、符号順序変換テーブル実時間作成・内容情報直接並べ替え同時処理の発明に係る実施形態である。また、図16には、インターリーバ400による行内ソーティングの例が示されている。
[Fourth Embodiment]
FIG. 15 shows the configuration of an interleaver 400 that is a code order conversion apparatus according to the fourth embodiment of the present invention. The fourth embodiment is an embodiment according to the invention of the code order conversion table real-time creation / content information direct rearrangement simultaneous processing. FIG. 16 shows an example of in-line sorting by the interleaver 400.

図15において、実数ラベル生成処理手段401と、行列配置処理手段402と、行内ソーティング処理手段403と、ブロックソーティング処理手段404と、符号順序変換テーブル作成処理手段405と、行列読出処理手段406と、スクランブリング関数記憶手段407と、ブロック順序変換ルール記憶手段408とを備えて構成されている。   In FIG. 15, real number label generation processing means 401, matrix arrangement processing means 402, in-line sorting processing means 403, block sorting processing means 404, code order conversion table creation processing means 405, matrix read processing means 406, A scrambling function storage unit 407 and a block order conversion rule storage unit 408 are provided.

実数ラベル生成処理手段401は、仮想ビット系列ではなく、符号順序変換処理の対象となる情報ビット系列Cの各構成ビットの値を用いて実数ラベルを生成する点を除き、前記第1実施形態の実数ラベル生成処理手段51の場合と同様である。   The real number label generation processing unit 401 uses the value of each constituent bit of the information bit sequence C to be subjected to the code order conversion process instead of the virtual bit sequence to generate a real number label of the first embodiment. This is the same as the case of the real number label generation processing means 51.

行列配置処理手段402は、実数ラベル生成処理手段401により生成された各実数ラベルと、これらの各実数ラベルを付された各ビットの符号順序変換処理前の情報ビット系列C内での配列位置情報(第何番目のビットであるかという情報)と、各ビットの値を示す内容情報(「1」か「0」の情報)とを対にした状態で、各配列位置情報および各内容情報を各実数ラベルとともに各ビットの符号順序変換処理前の配列順序に従って行列形式でメモリに行方向に順次配置する処理を行うものである(図16参照)。   The matrix arrangement processing unit 402 includes the real position labels generated by the real number label generation processing unit 401 and the array position information in the information bit sequence C before the code order conversion process of each bit to which these real number labels are attached. In a state where a pair of (information indicating what number bit is) and content information indicating the value of each bit (information of “1” or “0”), each array position information and each content information A process of sequentially arranging each bit in the row direction in a matrix form in accordance with the arrangement order before the code order conversion process of each bit together with each real number label (see FIG. 16).

行内ソーティング処理手段403は、図16に示すように、行列配置処理手段402により行列形式で配置された各配列位置情報および各内容情報を、各行内でそれぞれ各実数ラベルの数値の大小順に従って並べ替える行内ソーティング処理を行うものである。   As shown in FIG. 16, the in-line sorting processing unit 403 arranges each array position information and each content information arranged in a matrix form by the matrix arrangement processing unit 402 according to the order of the numerical value of each real number label in each row. The in-line sorting process to be replaced is performed.

ブロックソーティング処理手段404は、行内ソーティング処理手段403による行内ソーティング後の各配列位置情報および各内容情報を、ブロック順序変換ルール記憶手段408に記憶されたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティング処理を行うものである。   The block sorting processing unit 404 rearranges each array position information and each content information after the in-line sorting by the in-line sorting processing unit 403 in units of rows in accordance with the block order conversion rules stored in the block order conversion rule storage unit 408. The processing is performed.

符号順序変換テーブル作成処理手段405は、ブロックソーティング処理手段404によるブロックソーティング後の各配列位置情報を列方向に順次読み出すことにより、符号順序変換処理前のビット系列と符号順序変換処理後のビット系列とのそれぞれの構成ビットの対応関係を定める符号順序変換テーブル410を作成する処理を行うものである。   The code order conversion table creation processing unit 405 sequentially reads the array position information after the block sorting by the block sorting processing unit 404 in the column direction, so that the bit sequence before the code order conversion process and the bit sequence after the code order conversion process The code order conversion table 410 that defines the corresponding relationship between the constituent bits is generated.

行列読出処理手段406は、ブロックソーティング処理手段404によるブロックソーティング後の各内容情報を列方向に順次読み出すことにより符号順序変換処理後のビット系列Chを生成する処理を行うものである。 Matrix read processing unit 406 performs a process of generating a bit sequence C h after encoding sequence conversion processing by sequentially reading each contents information after block sorting by the block sorting processing unit 404 in the column direction.

スクランブリング関数記憶手段407は、実数ラベル生成処理手段401による処理で用いられるスクランブリング関数Y=g(X)を記憶するものであり、前記第1実施形態のスクランブリング関数記憶手段56の場合と同様である。   The scrambling function storage means 407 stores the scrambling function Y = g (X) used in the processing by the real number label generation processing means 401, and the scrambling function storage means 56 of the first embodiment. It is the same.

ブロック順序変換ルール記憶手段408は、ブロックソーティング処理手段404によるブロックソーティングの際のブロック順序変換ルールを記憶するものである。このブロック順序変換ルールは、前記第1実施形態の場合と同様である。   The block order conversion rule storage unit 408 stores a block order conversion rule when the block sorting processing unit 404 performs block sorting. This block order conversion rule is the same as that in the first embodiment.

このような第4実施形態においては、行列配置処理手段402、行内ソーティング処理手段403、およびブロックソーティング処理手段404による各処理において、実数ラベルと配列位置情報とを対にするだけではなく、これらに加えて内容情報についても対にして取り扱う点が、前記第3実施形態と異なる(図16参照)。従って、前記第3実施形態では、一旦、符号順序変換テーブル310(図14参照)を作成してから、その符号順序変換テーブル310を用いて符号順序変換処理を行っていたが、本第4実施形態では、ブロックソーティング処理手段404による処理を終えた段階で、内容情報は既に並べ替えられているため、符号順序変換テーブル410の作成処理と符号順序変換処理とが並行して行われることになる。   In such a fourth embodiment, in each process by the matrix arrangement processing unit 402, the in-line sorting processing unit 403, and the block sorting processing unit 404, not only the real number label and the array position information are paired, but also In addition, content information is also handled in pairs, which is different from the third embodiment (see FIG. 16). Therefore, in the third embodiment, the code order conversion table 310 (see FIG. 14) is once created and then the code order conversion process is performed using the code order conversion table 310. In the embodiment, since the content information is already rearranged at the stage where the processing by the block sorting processing unit 404 is completed, the creation processing of the code order conversion table 410 and the code order conversion processing are performed in parallel. .

このような第4実施形態によれば、前記第1、第2実施形態の場合と同様に、実数ラベルを利用した符号順序変換処理によるランダム化の程度および通信システムの性能の向上効果、スクランブリング関数の利用によるランダム化の程度および通信システムの性能の向上効果、擬似確率過程発生装置の利用による実数ラベルの生成処理の容易化効果、コードマッチドの設計思想に沿ったブロック順序変換ルールの利用による致命的な入力パターンを壊す効果を得ることができることに加え、前記第3実施形態の場合と同様に、符号順序変換テーブル410を事前に作成しておくのではなく、情報ビット系列Cを用いてリアルタイムで作成するので、秘匿通信を実現することができる。   According to the fourth embodiment, as in the first and second embodiments, the degree of randomization by the code order conversion process using the real number label and the effect of improving the performance of the communication system, scrambling. By using functions to improve the degree of randomization and communication system performance, by using pseudo-stochastic process generators to facilitate real number label generation, and by using block order conversion rules in accordance with code-matched design concepts In addition to being able to obtain an effect of destroying a fatal input pattern, as in the case of the third embodiment, the code order conversion table 410 is not created in advance, but the information bit sequence C is used. Since it is created in real time, secret communication can be realized.

[第5実施形態]
図17には、本発明の第5実施形態の符号順序変換装置であるインターリーバ500の構成が示されている。本第5実施形態は、行内ソーティングテーブル実時間作成の発明に係る実施形態である。
[Fifth Embodiment]
FIG. 17 shows the configuration of an interleaver 500 that is a code order conversion apparatus according to the fifth embodiment of the present invention. The fifth embodiment is an embodiment according to the invention of creating an in-line sorting table in real time.

図17において、インターリーバ500は、実数ラベル生成処理手段501と、配列処理手段502と、行内ソーティングテーブル作成処理手段503と、行列配置処理手段504と、行内ソーティング処理手段505と、ブロックソーティング処理手段506と、行列読出処理手段507と、スクランブリング関数記憶手段508と、ブロック順序変換ルール記憶手段509とを備えて構成されている。   In FIG. 17, the interleaver 500 includes a real number label generation processing unit 501, an array processing unit 502, an in-line sorting table creation processing unit 503, a matrix arrangement processing unit 504, an in-line sorting processing unit 505, and a block sorting processing unit. 506, a matrix reading processing unit 507, a scrambling function storage unit 508, and a block order conversion rule storage unit 509.

実数ラベル生成処理手段501は、仮想ビット系列ではなく、符号順序変換処理の対象となる情報ビット系列Cの各構成ビットの値を用いて実数ラベルを生成する点を除き、前記第1実施形態の実数ラベル生成処理手段51の場合と同様である。   The real number label generation processing unit 501 generates the real number label using the value of each component bit of the information bit sequence C that is the target of the code order conversion process, not the virtual bit sequence, except for the first embodiment. This is the same as the case of the real number label generation processing means 51.

配列処理手段502は、実数ラベル生成処理手段501により生成された各実数ラベルと、これらの各実数ラベルを付された各ビットの符号順序変換処理前の情報ビット系列C内での配列位置情報(第何番目のビットであるかという情報)とを対にした状態で、各配列位置情報を各実数ラベルとともに各ビットの符号順序変換処理前の配列順序に従ってメモリに順次配列する処理を行うものである。   The array processing unit 502 includes array position information (in the information bit sequence C before the code order conversion processing of each real number label generated by the real number label generation processing unit 501 and each bit assigned with each real number label ( In this state, each array position information is sequentially arranged in the memory according to the arrangement order before the code order conversion process of each bit together with each real number label. is there.

行内ソーティングテーブル作成処理手段503は、配列処理手段502により配列した各配列位置情報を複数のブロックに区切って各ブロック内でそれぞれ各実数ラベルの数値の大小順に従って並べ替えることにより、行内ソーティング処理手段505による処理で用いられる行内ソーティングテーブル510を、各行に対応する各ブロック毎に作成する処理を行うものである。   The in-line sorting table creation processing unit 503 divides each array position information arrayed by the array processing unit 502 into a plurality of blocks and rearranges each block according to the order of the numerical value of each real number label to thereby sort the in-line sorting processing unit The process of creating the in-line sorting table 510 used in the process of 505 for each block corresponding to each line is performed.

行列配置処理手段504は、情報ビット系列Cを構成する各ビットの値を示す内容情報(「1」か「0」の情報)を、各ビットの符号順序変換処理前の配列順序に従って行列形式でメモリに行方向に順次配置する処理を行うものである。   The matrix arrangement processing means 504 displays the content information (information of “1” or “0”) indicating the value of each bit constituting the information bit series C in a matrix format according to the arrangement order before the code order conversion process of each bit. A process of sequentially arranging the memory in the row direction is performed.

行内ソーティング処理手段505は、行列配置処理手段504により行列形式で配置された各内容情報を、各行内でそれぞれ各行内ソーティングテーブル510を用いて並べ替える行内ソーティング処理を行うものである。   The in-line sorting processing unit 505 performs an in-line sorting process in which each content information arranged in a matrix format by the matrix arrangement processing unit 504 is rearranged in each row by using each in-line sorting table 510.

ブロックソーティング処理手段506は、行内ソーティング処理手段505による行内ソーティング後の各内容情報を、ブロック順序変換ルール記憶手段509に記憶されたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティング処理を行うものである。   The block sorting processing unit 506 performs block sorting processing for rearranging each piece of content information after the in-line sorting by the in-line sorting processing unit 505 in units of rows according to the block order conversion rules stored in the block order conversion rule storage unit 509. is there.

行列読出処理手段507は、ブロックソーティング処理手段506によるブロックソーティング後の各内容情報を列方向に順次読み出すことにより符号順序変換処理後のビット系列Chを生成する処理を行うものである。 Matrix read processing unit 507 performs a process of generating a bit sequence C h after encoding sequence conversion processing by sequentially reading each contents information after block sorting by the block sorting processing unit 506 in the column direction.

スクランブリング関数記憶手段508は、実数ラベル生成処理手段501による処理で用いられるスクランブリング関数Y=g(X)を記憶するものであり、前記第1実施形態のスクランブリング関数記憶手段56の場合と同様である。   The scrambling function storage means 508 stores the scrambling function Y = g (X) used in the processing by the real number label generation processing means 501. In the case of the scrambling function storage means 56 of the first embodiment, It is the same.

ブロック順序変換ルール記憶手段509は、ブロックソーティング処理手段506によるブロックソーティングの際のブロック順序変換ルールを記憶するものである。このブロック順序変換ルールは、前記第1実施形態の場合と同様である。   The block order conversion rule storage unit 509 stores a block order conversion rule at the time of block sorting by the block sorting processing unit 506. This block order conversion rule is the same as that in the first embodiment.

このような第5実施形態においては、実数ラベル生成処理手段501により、符号順序変換処理の対象となる情報ビット系列Cの構成ビットの値を用いて実数ラベルをランダムに生成し、配列処理手段502により、各実数ラベルと各配列位置情報とを対にして各ビットの符号順序変換処理前の配列順序に従って順次配列し、行内ソーティングテーブル作成処理手段503により、各配列位置情報を各実数ラベルの数値の大小順に従って並べ替えることにより、すなわち行内ソーティングに相当する処理を行うことにより、各行毎の行内ソーティングテーブル510を作成する。そして、行列配置処理手段504により、情報ビット系列Cの各構成ビットの内容情報を行列形式で行方向に順次配置し、行内ソーティング処理手段505により、各内容情報を各行内でそれぞれ各行内ソーティングテーブル510を用いて並べ替える行内ソーティングを行った後、ブロックソーティング処理手段506により、各内容情報をブロック順序変換ルール記憶手段509に記憶されたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行い、行列読出処理手段507により、各内容情報を列方向に順次読み出すことにより符号順序変換処理後のビット系列Chを生成する。 In such a fifth embodiment, the real number label generation processing means 501 randomly generates a real number label using the values of the constituent bits of the information bit sequence C to be subjected to the code order conversion process, and the array processing means 502. Thus, each real number label and each array position information are paired and sequentially arranged according to the array order before the code order conversion process of each bit, and the in-line sorting table creation processing means 503 converts each array position information to the numerical value of each real number label. By rearranging in the order of size, that is, by performing processing corresponding to in-line sorting, an in-line sorting table 510 is created for each line. Then, the matrix arrangement processing unit 504 sequentially arranges the content information of each constituent bit of the information bit series C in the row direction in a matrix format, and the in-line sorting processing unit 505 arranges each content information in each row within each in-line sorting table. After performing in-line sorting using 510, the block sorting processing unit 506 performs block sorting that rearranges each content information in units of rows according to the block order conversion rules stored in the block order conversion rule storage unit 509. the matrix read processing unit 507, it generates a bit sequence C h after encoding sequence conversion processing by sequentially reading each content information in the column direction.

このような第5実施形態によれば、前記第1、第2実施形態の場合と同様に、実数ラベルを利用した符号順序変換処理によるランダム化の程度および通信システムの性能の向上効果、スクランブリング関数の利用によるランダム化の程度および通信システムの性能の向上効果、擬似確率過程発生装置の利用による実数ラベルの生成処理の容易化効果、コードマッチドの設計思想に沿ったブロック順序変換ルールの利用による致命的な入力パターンを壊す効果を得ることができることに加え、各行毎の行内ソーティングテーブル510を事前に作成しておくのではなく、情報ビット系列Cを用いてリアルタイムで作成するので、秘匿通信を実現することができる。   According to the fifth embodiment, as in the first and second embodiments, the degree of randomization by the code order conversion process using the real number label, the effect of improving the performance of the communication system, and the scrambling. By using functions to improve the degree of randomization and communication system performance, by using pseudo-stochastic process generators to facilitate real number label generation, and by using block order conversion rules in accordance with code-matched design concepts In addition to being able to obtain the effect of destroying a fatal input pattern, the in-line sorting table 510 for each line is not created in advance, but is created in real time using the information bit series C, so that confidential communication can be performed. Can be realized.

[第6実施形態]
図18には、本発明の第6実施形態の符号順序変換装置であるインターリーバ600の構成が示されている。本第6実施形態は、行内ソーティングテーブル実時間作成・内容情報直接並べ替え同時処理の発明に係る実施形態である。
[Sixth Embodiment]
FIG. 18 shows the configuration of an interleaver 600 that is a code order conversion apparatus according to the sixth embodiment of the present invention. The sixth embodiment is an embodiment according to the invention of an in-line sorting table real-time creation / content information direct rearrangement simultaneous processing.

図18において、インターリーバ600は、実数ラベル生成処理手段601と、行列配置処理手段602と、行内ソーティング処理手段603と、行内ソーティングテーブル作成処理手段604と、ブロックソーティング処理手段605と、行列読出処理手段606と、スクランブリング関数記憶手段607と、ブロック順序変換ルール記憶手段608とを備えて構成されている。   In FIG. 18, an interleaver 600 includes a real number label generation processing unit 601, a matrix arrangement processing unit 602, an in-line sorting processing unit 603, an in-line sorting table creation processing unit 604, a block sorting processing unit 605, and a matrix reading process. Means 606, scrambling function storage means 607, and block order conversion rule storage means 608 are provided.

実数ラベル生成処理手段601は、仮想ビット系列ではなく、符号順序変換処理の対象となる情報ビット系列Cの各構成ビットの値を用いて実数ラベルを生成する点を除き、前記第1実施形態の実数ラベル生成処理手段51の場合と同様である。   The real number label generation processing unit 601 generates the real number label using the value of each constituent bit of the information bit sequence C to be subjected to the code order conversion process instead of the virtual bit sequence, except for the virtual bit sequence. This is the same as the case of the real number label generation processing means 51.

行列配置処理手段602は、実数ラベル生成処理手段601により生成された各実数ラベルと、これらの各実数ラベルを付された各ビットの符号順序変換処理前の情報ビット系列C内での配列位置情報(第何番目のビットであるかという情報)と、各ビットの値を示す内容情報(「1」か「0」の情報)とを対にした状態で、各配列位置情報および各内容情報を各実数ラベルとともに各ビットの符号順序変換処理前の配列順序に従って行列形式でメモリに行方向に順次配置する処理を行うものである(図16参照)。   The matrix arrangement processing unit 602 includes the real position labels generated by the real number label generation processing unit 601, and the array position information in the information bit sequence C before the code order conversion process of each bit assigned with each real number label. In a state where a pair of (information indicating what number bit is) and content information indicating the value of each bit (information of “1” or “0”), each array position information and each content information A process of sequentially arranging each bit in the row direction in a matrix form in accordance with the arrangement order before the code order conversion process of each bit together with each real number label (see FIG. 16).

行内ソーティング処理手段603は、行列配置処理手段602により行列形式で配置された各配列位置情報および各内容情報を、各行内でそれぞれ各実数ラベルの数値の大小順に従って並べ替える行内ソーティング処理を行うものである。   The in-line sorting processing means 603 performs an in-line sorting process for rearranging each array position information and each content information arranged in a matrix form by the matrix arrangement processing means 602 according to the order of the numerical value of each real number label in each line. It is.

行内ソーティングテーブル作成処理手段604は、行内ソーティング処理手段603による行内ソーティング後の各配列位置情報を各行毎に順次読み出すことにより、各行内ソーティングの際の順序変換ルールを定める行内ソーティングテーブル610を各行に対応する各ブロック毎に作成する処理を行うものである。   The in-line sorting table creation processing unit 604 sequentially reads out the array position information after the in-line sorting by the in-line sorting processing unit 603 for each row, thereby setting the in-line sorting table 610 that defines the order conversion rule for each in-line sorting to each row. A process of creating each corresponding block is performed.

ブロックソーティング処理手段605は、行内ソーティング処理手段603による行内ソーティング後の各内容情報(各配列位置情報を伴ってもよい。)を、ブロック順序変換ルール記憶手段608に記憶されたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティング処理を行うものである。   The block sorting processing unit 605 stores each piece of content information (which may be accompanied by each array position information) after the in-line sorting by the in-line sorting processing unit 603 in accordance with the block order conversion rule stored in the block order conversion rule storage unit 608. This is a block sorting process for rearranging lines.

行列読出処理手段606は、ブロックソーティング処理手段605によるブロックソーティング後の各内容情報を列方向に順次読み出すことにより符号順序変換処理後のビット系列Chを生成する処理を行うものである。 Matrix read processing section 606 performs a process of generating a bit sequence C h after encoding sequence conversion processing by sequentially reading each contents information after block sorting by the block sorting processing unit 605 in the column direction.

スクランブリング関数記憶手段607は、実数ラベル生成処理手段601による処理で用いられるスクランブリング関数Y=g(X)を記憶するものであり、前記第1実施形態のスクランブリング関数記憶手段56の場合と同様である。   The scrambling function storage means 607 stores the scrambling function Y = g (X) used in the processing by the real number label generation processing means 601. In the case of the scrambling function storage means 56 of the first embodiment, It is the same.

ブロック順序変換ルール記憶手段608は、ブロックソーティング処理手段605によるブロックソーティングの際のブロック順序変換ルールを記憶するものである。このブロック順序変換ルールは、前記第1実施形態の場合と同様である。   The block order conversion rule storage unit 608 stores a block order conversion rule at the time of block sorting by the block sorting processing unit 605. This block order conversion rule is the same as that in the first embodiment.

このような第6実施形態においては、行列配置処理手段602および行内ソーティング処理手段603による各処理において、実数ラベルと配列位置情報とを対にするだけではなく、これらに加えて内容情報についても対にして取り扱う点(ブロックソーティング処理手段605による処理においても同様の取り扱いとしてよい。)が、前記第5実施形態と異なる(図16参照)。従って、前記第5実施形態では、一旦、各行毎の行内ソーティングテーブル510(図17参照)を作成してから、それらの各行毎の行内ソーティングテーブル510を用いて行内ソーティング処理を行っていたが、本第6実施形態では、行内ソーティング処理手段603による処理を終えた段階で、内容情報は既に並べ替えられているため、各行毎の行内ソーティングテーブル610の作成処理と行内ソーティング処理とが並行して行われることになる。   In such a sixth embodiment, in each process by the matrix arrangement processing unit 602 and the in-row sorting processing unit 603, not only the real number label and the array position information are paired, but also the content information is paired. This is different from the fifth embodiment (refer to FIG. 16) in that it is handled in the same manner (the same handling may be applied to the processing by the block sorting processing means 605). Therefore, in the fifth embodiment, the in-line sorting table 510 (see FIG. 17) for each line is once created, and then the in-line sorting process is performed using the in-line sorting table 510 for each line. In the sixth embodiment, since the content information has already been rearranged at the stage where the processing by the in-line sorting processing unit 603 is completed, the creation processing of the in-line sorting table 610 for each row and the in-line sorting processing are performed in parallel. Will be done.

このような第6実施形態によれば、前記第1、第2実施形態の場合と同様に、実数ラベルを利用した符号順序変換処理によるランダム化の程度および通信システムの性能の向上効果、スクランブリング関数の利用によるランダム化の程度および通信システムの性能の向上効果、擬似確率過程発生装置の利用による実数ラベルの生成処理の容易化効果、コードマッチドの設計思想に沿ったブロック順序変換ルールの利用による致命的な入力パターンを壊す効果を得ることができることに加え、前記第5実施形態の場合と同様に、各行毎の行内ソーティングテーブル610を事前に作成しておくのではなく、情報ビット系列Cを用いてリアルタイムで作成するので、秘匿通信を実現することができる。   According to the sixth embodiment, as in the first and second embodiments, the degree of randomization by the code order conversion process using the real number label, the effect of improving the performance of the communication system, and the scrambling. By using functions to improve the degree of randomization and communication system performance, by using pseudo-stochastic process generators to facilitate real number label generation, and by using block order conversion rules in accordance with code-matched design concepts In addition to being able to obtain the effect of destroying the fatal input pattern, as in the case of the fifth embodiment, the information bit sequence C is not created in advance, but the in-line sorting table 610 for each row is created. Since it is used and created in real time, secret communication can be realized.

[第7実施形態]
図19には、本発明の第7実施形態の符号順序変換装置であるインターリーバ700の構成が示されている。本第7実施形態は、内容情報直接並べ替えの発明に係る実施形態である。図20には、インターリーバ700による行内ソーティングの例が示されている。
[Seventh Embodiment]
FIG. 19 shows the configuration of an interleaver 700 that is a code order conversion apparatus according to the seventh embodiment of the present invention. The seventh embodiment is an embodiment according to the invention of content information direct rearrangement. FIG. 20 shows an example of in-line sorting by the interleaver 700.

図19において、インターリーバ700は、実数ラベル生成処理手段701と、行列配置処理手段702と、行内ソーティング処理手段703と、ブロックソーティング処理手段704と、行列読出処理手段705と、スクランブリング関数記憶手段706と、ブロック順序変換ルール記憶手段707とをを備えて構成されている。   In FIG. 19, the interleaver 700 includes a real number label generation processing unit 701, a matrix arrangement processing unit 702, an in-line sorting processing unit 703, a block sorting processing unit 704, a matrix reading processing unit 705, and a scrambling function storage unit. 706 and a block order conversion rule storage unit 707.

実数ラベル生成処理手段701は、仮想ビット系列ではなく、符号順序変換処理の対象となる情報ビット系列Cの各構成ビットの値を用いて実数ラベルを生成する点を除き、前記第1実施形態の実数ラベル生成処理手段51の場合と同様である。   The real number label generation processing unit 701 generates the real number label using the value of each component bit of the information bit sequence C that is the target of the code order conversion process, not the virtual bit sequence, except for the first embodiment. This is the same as the case of the real number label generation processing means 51.

行列配置処理手段702は、実数ラベル生成処理手段701により生成された各実数ラベルと、これらの各実数ラベルを付された各ビットの値を示す内容情報(「1」か「0」」の情報)とを対にした状態で、各内容情報を各実数ラベルとともに各ビットの符号順序変換処理前の配列順序に従って行列形式でメモリに行方向に順次配置する処理を行うものである(図20参照)。   The matrix arrangement processing unit 702 includes content information (“1” or “0” information) indicating each real number label generated by the real number label generation processing unit 701 and the value of each bit assigned with each real number label. ) Are paired with each real number label to sequentially arrange the contents information in the row direction in the memory in the matrix format according to the arrangement order before the code order conversion process of each bit (see FIG. 20). ).

行内ソーティング処理手段703は、図20に示すように、行列配置処理手段702により行列形式で配置された各内容情報を、各行内でそれぞれ各実数ラベルの数値の大小順に従って並べ替える行内ソーティング処理を行うものである。   As shown in FIG. 20, the in-line sorting processing unit 703 performs an in-line sorting process in which each content information arranged in a matrix format by the matrix arrangement processing unit 702 is rearranged in each row according to the numerical value order of each real number label. Is what you do.

ブロックソーティング処理手段704は、行内ソーティング処理手段703による行内ソーティング後の各内容情報を、ブロック順序変換ルール記憶手段707に記憶されたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティング処理を行うものである。   The block sorting processing unit 704 performs block sorting processing that rearranges each piece of content information after the in-line sorting by the in-line sorting processing unit 703 in units of rows according to the block order conversion rules stored in the block order conversion rule storage unit 707. is there.

行列読出処理手段705は、ブロックソーティング処理手段704によるブロックソーティング後の各内容情報を列方向に順次読み出すことにより符号順序変換処理後のビット系列Chを生成する処理を行うものである。 Matrix read processing unit 705 performs a process of generating a bit sequence C h after encoding sequence conversion processing by sequentially reading each contents information after block sorting by the block sorting processing unit 704 in the column direction.

スクランブリング関数記憶手段706は、実数ラベル生成処理手段701による処理で用いられるスクランブリング関数Y=g(X)を記憶するものであり、前記第1実施形態のスクランブリング関数記憶手段56の場合と同様である。   The scrambling function storage means 706 stores the scrambling function Y = g (X) used in the processing by the real number label generation processing means 701, and in the case of the scrambling function storage means 56 of the first embodiment. It is the same.

ブロック順序変換ルール記憶手段707は、ブロックソーティング処理手段704によるブロックソーティングの際のブロック順序変換ルールを記憶するものである。このブロック順序変換ルールは、前記第1実施形態の場合と同様である。   The block order conversion rule storage unit 707 stores the block order conversion rule at the time of block sorting by the block sorting processing unit 704. This block order conversion rule is the same as that in the first embodiment.

このような第7実施形態においては、符号順序変換テーブルや各行毎の行内ソーティングテーブルを用いずに、各ビットの内容情報を実数ラベルの大小順およびブロック順序変換ルールに従って直接に並べ替えていく。   In such a seventh embodiment, the content information of each bit is directly rearranged according to the order of the real number labels and the block order conversion rule without using the code order conversion table or the in-line sorting table for each line.

また、復号器側には、例えば、行内ソーティング前の状態の実数ラベル列710を、各処理単位毎に毎回連続して、または間欠的に送信することにより、符号器側で行った符号順序変換処理の内容を復号器側に伝達することができる。   Also, the code side conversion performed on the encoder side is performed on the decoder side by, for example, transmitting the real number label sequence 710 in the state before in-line sorting continuously or intermittently for each processing unit. The contents of the processing can be transmitted to the decoder side.

このような第7実施形態によれば、前記第1、第2実施形態の場合と同様に、実数ラベルを利用した符号順序変換処理によるランダム化の程度および通信システムの性能の向上効果、スクランブリング関数の利用によるランダム化の程度および通信システムの性能の向上効果、擬似確率過程発生装置の利用による実数ラベルの生成処理の容易化効果、コードマッチドの設計思想に沿ったブロック順序変換ルールの利用による致命的な入力パターンを壊す効果を得ることができることに加え、符号順序変換テーブルや各行毎の行内ソーティングテーブルを事前に作成しておくのではないので、秘匿通信を実現することができる。   According to the seventh embodiment, as in the first and second embodiments, the degree of randomization by the code order conversion process using the real number label, the effect of improving the performance of the communication system, and the scrambling. By using functions to improve the degree of randomization and communication system performance, by using pseudo-stochastic process generators to facilitate real number label generation, and by using block order conversion rules in accordance with code-matched design concepts In addition to being able to obtain the effect of destroying a fatal input pattern, since the code order conversion table and the in-line sorting table for each line are not created in advance, secret communication can be realized.

[変形の形態]
なお、本発明は前記各実施形態に限定されるものではなく、本発明の目的を達成できる範囲内での変形等は本発明に含まれるものである。
[Deformation form]
Note that the present invention is not limited to the above-described embodiments, and modifications and the like within a range in which the object of the present invention can be achieved are included in the present invention.

すなわち、前記各実施形態では、本発明の符号順序変換装置は、携帯電話システム等の通信システムの誤り訂正処理部に設けられたターボ符号用のインターリーバに適用されていたが、通信システムへの適用に限定されるものではなく、誤り訂正処理部への適用に限定されるものでもなく、また、ターボ符号用に限定されるものではなく、さらには、インターリーバへの適用に限定されるものでもなく、要するに、ランダムな符号順序変換処理を必要とする情報処理機器であれば、本発明を適用することができる。   That is, in each of the above embodiments, the code order conversion apparatus of the present invention is applied to a turbo code interleaver provided in an error correction processing unit of a communication system such as a mobile phone system. It is not limited to the application, is not limited to the application to the error correction processing unit, is not limited to the turbo code, and is further limited to the application to the interleaver In short, the present invention can be applied to any information processing device that requires random code order conversion processing.

また、前記各実施形態では、ブロック順序変換ルールは、固定的なものが用いられていたが、これに限らず、各処理単位(例えば、512ビット等)毎に連続して、あるいは間欠的に変化させてもよい。この場合には、送信機側において、いずれのブロック順序変換ルールを選択使用したかという情報、あるいは使用したブロック順序変換ルール自体を示す情報(例えば、20次元のベクトル情報)を受信機側に送信すればよい。このように、使用するブロック順序変換ルールを変化させた場合には、秘匿性を向上させることができる。   Further, in each of the embodiments, the fixed block order conversion rule is used. However, the rule is not limited to this, and is not limited to this, but continuously or intermittently for each processing unit (for example, 512 bits). It may be changed. In this case, on the transmitter side, information indicating which block order conversion rule is selected and used, or information indicating the used block order conversion rule itself (for example, 20-dimensional vector information) is transmitted to the receiver side. do it. Thus, when the block order conversion rule to be used is changed, the confidentiality can be improved.

さらに、前記第2〜第7実施形態の各処理手段は、CPUおよびこのCPUの動作手順を規定する一つまたは複数のプログラムにより実現することができ、また、これらの各処理手段をハードウェア回路により実現してもよい点は、前記第1実施形態の場合と同様である。そして、前記第2〜第7実施形態の各記憶手段には、例えば、ハードディスク、ROM、EEPROM、フラッシュ・メモリ、RAM、MO、CD−ROM、CD−R、CD−RW、DVD−ROM、DVD−RAM、FD、磁気テープ、あるいはこれらの組合せ等を採用することができる点も、前記第1実施形態の場合と同様である。   Furthermore, each processing means of the second to seventh embodiments can be realized by a CPU and one or a plurality of programs that define the operation procedure of the CPU, and each processing means is a hardware circuit. The points that may be realized by the above are the same as in the case of the first embodiment. The storage means of the second to seventh embodiments include, for example, a hard disk, ROM, EEPROM, flash memory, RAM, MO, CD-ROM, CD-R, CD-RW, DVD-ROM, DVD -The point which can employ | adopt RAM, FD, a magnetic tape, or these combination etc. is the same as that of the case of the said 1st Embodiment.

以上のように、本発明の符号順序変換方法およびその装置、符号順序変換テーブル作成装置、並びにターボ符号用の符号器および復号器は、例えば、携帯電話システム等の通信システム、その他のターボ符号が介在する情報処理機器等に用いるのに適している。   As described above, the code order conversion method and apparatus, the code order conversion table creation apparatus, and the turbo code encoder and decoder according to the present invention include, for example, a communication system such as a mobile phone system, and other turbo codes. Suitable for intervening information processing equipment.

本発明の第1実施形態に係る通信システムに設けられたターボ符号による誤り訂正処理部の全体構成図。The whole block diagram of the error correction process part by the turbo code provided in the communication system which concerns on 1st Embodiment of this invention. 第1実施形態の符号順序変換テーブル作成装置、インターリーバ、およびデインターリーバの構成図。FIG. 3 is a configuration diagram of a code order conversion table creation device, an interleaver, and a deinterleaver according to the first embodiment. 第1実施形態の符号順序変換テーブルの作成処理の流れを示す概念図。The conceptual diagram which shows the flow of the preparation process of the code order conversion table of 1st Embodiment. 第1実施形態の符号順序変換テーブルおよび符号順序復元テーブルの作成処理の流れを示すフローチャートの図。The figure of the flowchart which shows the flow of the preparation processing of the code order conversion table of 1st Embodiment, and a code order restoration table. 第1実施形態のインターリーブ処理の流れを示すフローチャートの図。The figure of the flowchart which shows the flow of the interleave process of 1st Embodiment. 第1実施形態のデインターリーブ処理の流れを示すフローチャートの図。The figure of the flowchart which shows the flow of the deinterleaving process of 1st Embodiment. 第1実施形態の符号順序変換テーブルの作成の際における仮想ビット系列の構成ビットの生成方法の説明図。Explanatory drawing of the production | generation method of the component bit of a virtual bit series at the time of preparation of the code order conversion table of 1st Embodiment. 第1実施形態の符号順序変換テーブルの作成処理の詳細説明図。The detailed explanatory view of the creation processing of the code order conversion table of the first embodiment. 第1実施形態の符号順序変換テーブルの作成処理の別の詳細説明図。Another detailed explanatory drawing of the creation processing of the code order conversion table of 1st Embodiment. 第1実施形態のスクランブリング関数の形状の説明図。Explanatory drawing of the shape of the scrambling function of 1st Embodiment. 第1実施形態のブロック順序変換ルールの作成方法の説明図。Explanatory drawing of the creation method of the block order conversion rule of 1st Embodiment. 第1実施形態のシミュレーションによる比較実験結果を示す図。The figure which shows the comparison experiment result by simulation of 1st Embodiment. 第2実施形態のインターリーバおよび行内ソーティングテーブル作成装置の構成図。The block diagram of the interleaver and in-line sorting table preparation apparatus of 2nd Embodiment. 第3実施形態のインターリーバの構成図。The block diagram of the interleaver of 3rd Embodiment. 第4実施形態のインターリーバの構成図。The block diagram of the interleaver of 4th Embodiment. 第4実施形態のインターリーバによる行内ソーティングの例を示す図。The figure which shows the example of the in-line sorting by the interleaver of 4th Embodiment. 第5実施形態のインターリーバの構成図。The block diagram of the interleaver of 5th Embodiment. 第6実施形態のインターリーバの構成図。The block diagram of the interleaver of 6th Embodiment. 第7実施形態のインターリーバの構成図。The block diagram of the interleaver of 7th Embodiment. 第7実施形態のインターリーバによる行内ソーティングの例を示す図。The figure which shows the example of the in-line sorting by the interleaver of 7th Embodiment.

符号の説明Explanation of symbols

20 ターボ符号用の符号器
23,33,200,300,400,500,600,700 符号順序変換装置であるインターリーバ
23A,33A 符号順序変換テーブル記憶手段
23B,33B,306 符号順序変換処理手段
30 ターボ符号用の復号器
50 符号順序変換テーブル作成装置
51,211,301,401,501,601,701 実数ラベル生成処理手段
51B シフト処理手段
51C 重み算出処理手段
51D 重み/ラベル変換処理手段
52,201,302,402、504,602,702 行列配置処理手段
53,202,303,403,505,603,703 行内ソーティング処理手段
54,203,304,404,506,605,704 ブロックソーティング処理手段
55,204,406,507、606,705 行列読出処理手段
60,310,410 符号順序変換テーブル
205 行内ソーティングテーブル記憶手段
212,502 配列処理手段
220,510,610 行内ソーティングテーブル
305,405 符号順序変換テーブル作成処理手段
503,604 行内ソーティングテーブル作成処理手段
C 情報ビット系列
{Un} 仮想ビット系列
X,{Xn} 重みである実数
Y,{Yn} 実数ラベルとなる実数
20 Coder for turbo code 23, 33, 200, 300, 400, 500, 600, 700 Interleaver 23A, 33A Code order conversion table storage means 23B, 33B, 306 Code order conversion processing means 30 Decoder for turbo code 50 Code order conversion table creation device 51, 211, 301, 401, 501, 601, 701 Real number label generation processing means 51B Shift processing means 51C Weight calculation processing means 51D Weight / label conversion processing means 52, 201 , 302, 402, 504, 602, 702 Matrix arrangement processing means 53, 202, 303, 403, 505, 603, 703 In-line sorting processing means 54, 203, 304, 404, 506, 605, 704 Block sorting processing means 55, 204,406 507, 606, 705 Matrix reading processing means 60, 310, 410 Code order conversion table 205 In-line sorting table storage means 212, 502 Array processing means 220, 510, 610 In-line sorting table 305, 405 Code order conversion table creation processing means 503 604 In-line sorting table creation processing means C Information bit sequence {U n } Virtual bit sequence X, {X n } Real number Y, {Y n } Real number which is a real number label

Claims (30)

情報ビット系列の符号順序変換処理に先立って、前記情報ビット系列の代用として仮想ビット系列を生成または用意し、この仮想ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この仮想ビット系列を構成する各ビットに付される実数ラベルをランダムに生成し、
生成された各実数ラベルとこれらの各実数ラベルを付された前記各ビットの符号順序変換処理前の前記仮想ビット系列内での配列位置情報とを対にした状態で、前記各配列位置情報を前記各実数ラベルとともに前記各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置し、
行列形式で配置された前記各配列位置情報を、各行内でそれぞれ前記各実数ラベルの数値の大小順に従って並べ替える行内ソーティングを行った後、
行列形式で配置された前記行内ソーティング後の前記各配列位置情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行い、
行列形式で配置された前記ブロックソーティング後の前記各配列位置情報を列方向に順次読み出すことにより、符号順序変換処理前のビット系列と符号順序変換処理後のビット系列とのそれぞれの構成ビットの対応関係を定める符号順序変換テーブルを予め作成して符号順序変換テーブル記憶手段に記憶させておき、
前記情報ビット系列の符号順序変換処理を行う際には、前記符号順序変換テーブル記憶手段に記憶された前記符号順序変換テーブルを用いて、前記情報ビット系列を構成する各ビットを並べ替えることを特徴とする符号順序変換方法。
Prior to the code order conversion process of the information bit sequence, a virtual bit sequence is generated or prepared as a substitute for the information bit sequence, and the value of at least one bit of a plurality of bits constituting the virtual bit sequence is used. , Randomly generate a real number label attached to each bit constituting this virtual bit sequence,
In a state where the generated real number labels are paired with the array position information in the virtual bit sequence before the code order conversion process of the bits to which the real number labels are attached, the array position information Sequentially arranged in the row direction in a matrix form according to the arrangement order before the code order conversion processing of each bit together with each real number label,
After performing in-line sorting in which each array position information arranged in a matrix format is rearranged according to the order of the numerical value of each real number label in each line,
Performing block sorting that rearranges each array position information after the in-row sorting arranged in a matrix format in units of rows in accordance with a predetermined block order conversion rule,
Correspondence between the constituent bits of the bit sequence before the code order conversion processing and the bit sequence after the code order conversion processing by sequentially reading the array position information after the block sorting arranged in a matrix format in the column direction A code order conversion table that defines the relationship is created in advance and stored in the code order conversion table storage means,
When performing the code order conversion process of the information bit sequence, the bits constituting the information bit sequence are rearranged using the code order conversion table stored in the code order conversion table storage unit. A code order conversion method.
情報ビット系列の符号順序変換処理に先立って、前記情報ビット系列の代用として仮想ビット系列を生成または用意し、この仮想ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この仮想ビット系列を構成する各ビットに付される実数ラベルをランダムに生成し、
生成された各実数ラベルとこれらの各実数ラベルを付された前記各ビットの符号順序変換処理前の前記仮想ビット系列内での配列位置情報とを対にした状態で、前記各配列位置情報を前記各実数ラベルとともに前記各ビットの符号順序変換処理前の配列順序に従って順次配列し、
配列した前記各配列位置情報を複数のブロックに区切って各ブロック内でそれぞれ前記各実数ラベルの数値の大小順に従って並べ替えることにより、前記情報ビット系列の符号順序変換処理で各行内で行われる行内ソーティングの際の順序変換ルールを定める行内ソーティングテーブルを前記各行に対応する前記各ブロック毎に作成して行内ソーティングテーブル記憶手段に記憶させておき、
前記情報ビット系列の符号順序変換処理を行う際には、
前記情報ビット系列を構成する各ビットの値を示す内容情報を前記各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置し、
行列形式で配置された前記各内容情報を、各行内でそれぞれ前記行内ソーティングテーブル記憶手段に記憶された前記各行内ソーティングテーブルを用いて並べ替える行内ソーティングを行った後、
行列形式で配置された前記行内ソーティング後の前記各内容情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行い、
行列形式で配置された前記ブロックソーティング後の前記各内容情報を列方向に順次読み出すことにより、符号順序変換処理後のビット系列を生成する
ことを特徴とする符号順序変換方法。
Prior to the code order conversion process of the information bit sequence, a virtual bit sequence is generated or prepared as a substitute for the information bit sequence, and the value of at least one bit of a plurality of bits constituting the virtual bit sequence is used. , Randomly generate a real number label attached to each bit constituting this virtual bit sequence,
In a state where the generated real number labels are paired with the array position information in the virtual bit sequence before the code order conversion process of the bits to which the real number labels are attached, the array position information Arrange sequentially according to the arrangement order before the code order conversion processing of each bit together with each real number label,
By dividing each array position information arranged into a plurality of blocks and rearranging each block in accordance with the numerical order of the numerical value of each real number label, the code bit order conversion processing of the information bit sequence is performed in each row. An in-line sorting table that defines an order conversion rule at the time of sorting is created for each of the blocks corresponding to the respective rows and stored in the in-line sorting table storage means,
When performing the code order conversion processing of the information bit sequence,
The content information indicating the value of each bit constituting the information bit sequence is sequentially arranged in the row direction in a matrix form according to the arrangement order before the code order conversion processing of each bit,
After performing the in-line sorting in which each content information arranged in a matrix format is rearranged using the in-line sorting table stored in the in-line sorting table storage means in each row,
Performing block sorting that rearranges each content information after the intra-row sorting arranged in a matrix format in units of rows according to a predetermined block order conversion rule,
A code sequence conversion method comprising: generating a bit sequence after code sequence conversion processing by sequentially reading the content information after the block sorting arranged in a matrix format in a column direction.
符号順序変換処理の対象となる情報ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この情報ビット系列を構成する各ビットに付される実数ラベルをランダムに生成し、
生成された各実数ラベルとこれらの各実数ラベルを付された前記各ビットの符号順序変換処理前の前記情報ビット系列内での配列位置情報とを対にした状態で、前記各配列位置情報を前記各実数ラベルとともに前記各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置し、
行列形式で配置された前記各配列位置情報を、各行内でそれぞれ前記各実数ラベルの数値の大小順に従って並べ替える行内ソーティングを行った後、
行列形式で配置された前記行内ソーティング後の前記各配列位置情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行い、
行列形式で配置された前記ブロックソーティング後の前記各配列位置情報を列方向に順次読み出すことにより、符号順序変換処理前のビット系列と符号順序変換処理後のビット系列とのそれぞれの構成ビットの対応関係を定める符号順序変換テーブルを作成し、
その後、前記符号順序変換テーブルを用いて前記情報ビット系列を構成する各ビットを並べ替えることを特徴とする符号順序変換方法。
Using a value of at least one of a plurality of bits constituting the information bit sequence to be subjected to code order conversion processing, a real number label attached to each bit constituting the information bit sequence is randomly generated. ,
In a state where the generated real number labels are paired with the array position information in the information bit sequence before the code order conversion processing of the bits to which the real number labels are attached, the array position information Sequentially arranged in the row direction in a matrix form according to the arrangement order before the code order conversion processing of each bit together with each real number label,
After performing in-line sorting in which each array position information arranged in a matrix format is rearranged according to the order of the numerical value of each real number label in each line,
Performing block sorting that rearranges each array position information after the in-row sorting arranged in a matrix format in units of rows in accordance with a predetermined block order conversion rule,
Correspondence between the constituent bits of the bit sequence before the code order conversion processing and the bit sequence after the code order conversion processing by sequentially reading the array position information after the block sorting arranged in a matrix format in the column direction Create a code order conversion table that defines the relationship,
Then, the code order conversion method, wherein the bits constituting the information bit sequence are rearranged using the code order conversion table.
符号順序変換処理の対象となる情報ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この情報ビット系列を構成する各ビットに付される実数ラベルをランダムに生成し、
生成された各実数ラベルとこれらの各実数ラベルを付された前記各ビットの符号順序変換処理前の前記情報ビット系列内での配列位置情報と前記各ビットの値を示す内容情報とを対にした状態で、前記各配列位置情報および前記各内容情報を前記各実数ラベルとともに前記各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置し、
行列形式で配置された前記各配列位置情報および前記各内容情報を、各行内でそれぞれ前記各実数ラベルの数値の大小順に従って並べ替える行内ソーティングを行った後、
行列形式で配置された前記行内ソーティング後の前記各配列位置情報および前記各内容情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行い、
行列形式で配置された前記ブロックソーティング後の前記各配列位置情報を列方向に順次読み出すことにより、符号順序変換処理前のビット系列と符号順序変換処理後のビット系列とのそれぞれの構成ビットの対応関係を定める符号順序変換テーブルを作成するとともに、行列形式で配置された前記ブロックソーティング後の前記各内容情報を列方向に順次読み出すことにより、符号順序変換処理後のビット系列を生成する
ことを特徴とする符号順序変換方法。
Using a value of at least one of a plurality of bits constituting the information bit sequence to be subjected to code order conversion processing, a real number label attached to each bit constituting the information bit sequence is randomly generated. ,
Each generated real number label and the arrangement position information in the information bit sequence before the code order conversion processing of each bit to which each real number label is attached are paired with the content information indicating the value of each bit. In this state, each array position information and each content information are sequentially arranged in the row direction in a matrix format according to the array order before the code order conversion processing of each bit together with each real number label,
After performing in-line sorting in which each array position information and each content information arranged in a matrix format are rearranged according to the numerical order of the numerical value of each real number label in each line,
Performing a block sorting that rearranges each array position information and each content information after the in-row sorting arranged in a matrix format in units of rows according to a predetermined block order conversion rule,
Correspondence between the constituent bits of the bit sequence before the code order conversion processing and the bit sequence after the code order conversion processing by sequentially reading the array position information after the block sorting arranged in a matrix format in the column direction A code sequence conversion table for defining a relationship is created, and the bit sequence after the code sequence conversion process is generated by sequentially reading each content information after the block sorting arranged in a matrix format in a column direction. A code order conversion method.
符号順序変換処理の対象となる情報ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この情報ビット系列を構成する各ビットに付される実数ラベルをランダムに生成し、
生成された各実数ラベルとこれらの各実数ラベルを付された前記各ビットの符号順序変換処理前の前記情報ビット系列内での配列位置情報とを対にした状態で、前記各配列位置情報を前記各実数ラベルとともに前記各ビットの符号順序変換処理前の配列順序に従って順次配列し、
配列した前記各配列位置情報を複数のブロックに区切って各ブロック内でそれぞれ前記各実数ラベルの数値の大小順に従って並べ替えることにより、各行内で行われる行内ソーティングの際の順序変換ルールを定める行内ソーティングテーブルを前記各行に対応する前記各ブロック毎に作成し、
その後、前記情報ビット系列を構成する各ビットの値を示す内容情報を前記各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置し、
行列形式で配置された前記各内容情報を、前記各行内でそれぞれ前記各行内ソーティングテーブルを用いて並べ替える行内ソーティングを行った後、
行列形式で配置された前記行内ソーティング後の前記各内容情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行い、
行列形式で配置された前記ブロックソーティング後の前記各内容情報を列方向に順次読み出すことにより、符号順序変換処理後のビット系列を生成する
ことを特徴とする符号順序変換方法。
Using a value of at least one of a plurality of bits constituting the information bit sequence to be subjected to code order conversion processing, a real number label attached to each bit constituting the information bit sequence is randomly generated. ,
In a state where the generated real number labels are paired with the array position information in the information bit sequence before the code order conversion processing of the bits to which the real number labels are attached, the array position information Arrange sequentially according to the arrangement order before the code order conversion processing of each bit together with each real number label,
The in-line ordering rule for the in-line sorting performed in each line is determined by dividing each array position information arranged into a plurality of blocks and rearranging in accordance with the numerical order of the numerical value of each real number label in each block. Create a sorting table for each block corresponding to each row,
After that, content information indicating the value of each bit constituting the information bit sequence is sequentially arranged in the row direction in a matrix format according to the arrangement order before the code order conversion processing of each bit,
After performing the in-line sorting in which each content information arranged in a matrix format is rearranged using the in-line sorting table in each of the lines,
Performing block sorting that rearranges each content information after the intra-row sorting arranged in a matrix format in units of rows according to a predetermined block order conversion rule,
A code sequence conversion method comprising: generating a bit sequence after code sequence conversion processing by sequentially reading the content information after the block sorting arranged in a matrix format in a column direction.
符号順序変換処理の対象となる情報ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この情報ビット系列を構成する各ビットに付される実数ラベルをランダムに生成し、
生成された各実数ラベルとこれらの各実数ラベルを付された前記各ビットの符号順序変換処理前の前記情報ビット系列内での配列位置情報と前記各ビットの値を示す内容情報とを対にした状態で、前記各配列位置情報および前記各内容情報を前記各実数ラベルとともに前記各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置し、
行列形式で配置された前記各配列位置情報および前記各内容情報を、各行内でそれぞれ前記各実数ラベルの数値の大小順に従って並べ替える行内ソーティングを行った後、
行列形式で配置された前記行内ソーティング後の前記各配列位置情報を前記各行毎に行方向に順次読み出すことにより、前記各行内ソーティングの際の順序変換ルールを定める行内ソーティングテーブルを前記各行に対応する各ブロック毎に作成するとともに、行列形式で配置された前記行内ソーティング後の前記各内容情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行い、
行列形式で配置された前記ブロックソーティング後の前記各内容情報を列方向に順次読み出すことにより、符号順序変換処理後のビット系列を生成する
ことを特徴とする符号順序変換方法。
Using a value of at least one of a plurality of bits constituting the information bit sequence to be subjected to code order conversion processing, a real number label attached to each bit constituting the information bit sequence is randomly generated. ,
Each generated real number label and the arrangement position information in the information bit sequence before the code order conversion processing of each bit to which each real number label is attached are paired with the content information indicating the value of each bit. In this state, each array position information and each content information are sequentially arranged in the row direction in a matrix format according to the array order before the code order conversion processing of each bit together with each real number label,
After performing in-line sorting in which each array position information and each content information arranged in a matrix format are rearranged according to the numerical order of the numerical value of each real number label in each line,
By sequentially reading the array position information after the intra-row sorting arranged in a matrix form in the row direction for each row, an intra-row sorting table that defines an order conversion rule for each intra-row sorting is associated with each row. Create for each block, and perform block sorting that rearranges each content information after the in-line sorting arranged in a matrix format in units of rows according to a predetermined block order conversion rule,
A code sequence conversion method comprising: generating a bit sequence after code sequence conversion processing by sequentially reading the content information after the block sorting arranged in a matrix format in a column direction.
符号順序変換処理の対象となる情報ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この情報ビット系列を構成する各ビットに付される実数ラベルをランダムに生成し、
生成された各実数ラベルとこれらの各実数ラベルを付された前記各ビットの値を示す内容情報とを対にした状態で、前記各内容情報を前記各実数ラベルとともに前記各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置し、
行列形式で配置された前記各内容情報を、各行内でそれぞれ前記各実数ラベルの数値の大小順に従って並べ替える行内ソーティングを行った後、
行列形式で配置された前記行内ソーティング後の前記各内容情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行い、
行列形式で配置された前記ブロックソーティング後の前記各内容情報を列方向に順次読み出すことにより、符号順序変換処理後のビット系列を生成する
ことを特徴とする符号順序変換方法。
Using a value of at least one of a plurality of bits constituting the information bit sequence to be subjected to code order conversion processing, a real number label attached to each bit constituting the information bit sequence is randomly generated. ,
In a state where each generated real number label is paired with the content information indicating the value of each bit to which each real number label is attached, each content information is converted to the code order of each bit together with each real number label. Arrange sequentially in the row direction in the matrix format according to the array order before processing,
After performing in-line sorting in which each content information arranged in a matrix format is rearranged according to the numerical order of the numerical value of each real number label in each line,
Performing block sorting that rearranges each content information after the intra-row sorting arranged in a matrix format in units of rows according to a predetermined block order conversion rule,
A code sequence conversion method comprising: generating a bit sequence after code sequence conversion processing by sequentially reading the content information after the block sorting arranged in a matrix format in a column direction.
請求項1〜7のいずれかに記載の符号順序変換方法において、
前記各実数ラベルを生成する際には、
連続する複数のビットの各値を用いて実数Xa〜実数Xbの間の実数Xを算出した後、
tを、Xa≦t<(Xa+Xb)/2の範囲の実数としたとき、
g(t)+g(t+(Xb−Xa)/2)=Ya+Ybという条件式を満たすスクランブリング関数Y=g(X)を用いて、実数Xa〜実数Xbの間の実数Xを実数Ya〜実数Ybの間の実数Yに変換し、
変換して得られた実数Yの値を前記実数ラベルとし、
前記連続する複数のビットの各値を1ビットずつシフトしながら用いて、実数Xの算出処理および前記スクランブリング関数による実数Xから実数Yへの変換処理を繰り返すことにより、前記各ビットに付される前記各実数ラベルを順次生成する
ことを特徴とする符号順序変換方法。
In the code order conversion method according to any one of claims 1 to 7,
When generating each real number label,
After calculating the real number X between the real number X a and the real number X b using each value of a plurality of consecutive bits,
When t is a real number in the range of X a ≦ t <(X a + X b ) / 2,
with g (t) + g (t + (X b -X a) / 2) = Y a + Y b satisfies the condition that scrambling function Y = g (X), between the real number X a ~ real X b Convert real number X to real number Y between real number Y a and real number Y b ,
The value of the real number Y obtained by conversion is used as the real number label,
By using each value of the plurality of consecutive bits while shifting one bit at a time, it repeats the calculation process of the real number X and the conversion process from the real number X to the real number Y by the scrambling function. Each of the real number labels is sequentially generated.
請求項8に記載の符号順序変換方法において、
前記連続する複数のビットの各値を用いて実数Xa〜実数Xbの間の実数Xを算出する処理は、算出に用いるビット数をMとし、mを1〜Mの整数とすると、Mビットの各値のそれぞれに2-mを乗じた値を加算し、さらに2-(M+1)を加算して得られる数値をXとすることにより、0〜1の間の実数Xを算出する処理であり、
前記スクランブリング関数による実数Xa〜実数Xbの間の実数Xから実数Ya〜実数Ybの間の実数Yへの変換処理は、0〜1の間の実数Xから0〜1の間の実数Yへの変換処理であり、
これらの実数Xの算出処理および前記スクランブリング関数による実数Xから実数Yへの変換処理は、擬似確率過程発生処理である
ことを特徴とする符号順序変換方法。
The code order conversion method according to claim 8,
The process of calculating the real number X between the real number X a to the real number X b using the values of the plurality of consecutive bits is M, where m is the number of bits used for the calculation and M is an integer from 1 to M. Calculate the real number X between 0 and 1 by adding the value obtained by multiplying each bit value by 2 -m and adding 2- (M + 1) to X. Process
The conversion process from the real number X between the real number X a to the real number X b to the real number Y between the real number Y a to the real number Y b by the scrambling function is between the real number X between 0 and 1 and 0 to 1. To a real number Y,
The code order conversion method characterized in that the calculation process of the real number X and the conversion process from the real number X to the real number Y by the scrambling function are pseudo-probabilistic process generation processing.
請求項1〜9のいずれかに記載の符号順序変換方法において、
前記ブロック順序変換ルールは、少なくとも符号順序変換処理前のビット系列を構成する各ビットのうち7ビット離れた2つのビットが、符号順序変換処理後のビット系列内で7ビット離れた位置に配列されることを回避するためのルールである
ことを特徴とする符号順序変換方法。
In the code order conversion method according to any one of claims 1 to 9,
In the block order conversion rule, at least two bits that are 7 bits apart from each bit constituting the bit sequence before the code order conversion process are arranged at positions separated by 7 bits in the bit sequence after the code order conversion process. The code order conversion method characterized by being a rule for avoiding this.
請求項1〜10のいずれかに記載の符号順序変換方法において、
前記符号順序変換処理は、ターボ符号のインターリーブ処理として行われることを特徴とする符号順序変換方法。
In the code order conversion method according to any one of claims 1 to 10,
The code order conversion method, wherein the code order conversion process is performed as a turbo code interleaving process.
符号順序変換処理前のビット系列と符号順序変換処理後のビット系列とのそれぞれの構成ビットの対応関係を定める符号順序変換テーブルを記憶する符号順序変換テーブル記憶手段と、
この符号順序変換テーブル記憶手段に記憶された前記符号順序変換テーブルを用いて、情報ビット系列を構成する各ビットを並べ替える処理を行う符号順序変換処理手段とを備え、
前記符号順序変換テーブル記憶手段に記憶された前記符号順序変換テーブルは、
前記情報ビット系列の代用として仮想ビット系列を生成または用意し、この仮想ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この仮想ビット系列を構成する各ビットに付される実数ラベルをランダムに生成し、
生成された各実数ラベルとこれらの各実数ラベルを付された前記各ビットの符号順序変換処理前の前記仮想ビット系列内での配列位置情報とを対にした状態で、前記各配列位置情報を前記各実数ラベルとともに前記各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置し、
行列形式で配置された前記各配列位置情報を、各行内でそれぞれ前記各実数ラベルの数値の大小順に従って並べ替える行内ソーティングを行った後、
行列形式で配置された前記行内ソーティング後の前記各配列位置情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行い、
行列形式で配置された前記ブロックソーティング後の前記各配列位置情報を列方向に順次読み出すことにより作成されたテーブルである
ことを特徴とする符号順序変換装置。
Code order conversion table storage means for storing a code order conversion table that defines the correspondence between the constituent bits of the bit sequence before the code order conversion process and the bit sequence after the code order conversion process;
Using the code order conversion table stored in the code order conversion table storage means, code order conversion processing means for performing a process of rearranging each bit constituting the information bit sequence,
The code order conversion table stored in the code order conversion table storage means is:
A virtual bit sequence is generated or prepared as a substitute for the information bit sequence, and a value of at least one bit of the plurality of bits constituting the virtual bit sequence is used to attach to each bit constituting the virtual bit sequence. Randomly generated real number labels,
In a state where the generated real number labels are paired with the array position information in the virtual bit sequence before the code order conversion process of the bits to which the real number labels are attached, the array position information Sequentially arranged in the row direction in a matrix form according to the arrangement order before the code order conversion processing of each bit together with each real number label,
After performing in-line sorting in which each array position information arranged in a matrix format is rearranged according to the order of the numerical value of each real number label in each line,
Performing block sorting that rearranges each array position information after the in-row sorting arranged in a matrix format in units of rows in accordance with a predetermined block order conversion rule,
A code order conversion apparatus, comprising: a table created by sequentially reading the array position information after the block sorting arranged in a matrix format in a column direction.
情報ビット系列を構成する各ビットを並べ替える符号順序変換処理を行う際に用いられる符号順序変換テーブルを作成する符号順序変換テーブル作成装置であって、
前記情報ビット系列の代用として生成または用意された仮想ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この仮想ビット系列を構成する各ビットに付される実数ラベルをランダムに生成する実数ラベル生成処理手段と、
この実数ラベル生成処理手段により生成された各実数ラベルとこれらの各実数ラベルを付された前記各ビットの符号順序変換処理前の前記仮想ビット系列内での配列位置情報とを対にした状態で、前記各配列位置情報を前記各実数ラベルとともに前記各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置する行列配置処理手段と、
この行列配置処理手段により行列形式で配置された前記各配列位置情報を、各行内でそれぞれ前記各実数ラベルの数値の大小順に従って並べ替える行内ソーティングを行う行内ソーティング処理手段と、
この行内ソーティング処理手段による前記行内ソーティング後の前記各配列位置情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行うブロックソーティング処理手段と、
このブロックソーティング処理手段による前記ブロックソーティング後の前記各配列位置情報を列方向に順次読み出す行列読出処理手段と
を備えたことを特徴とする符号順序変換テーブル作成装置。
A code order conversion table creating device for creating a code order conversion table used when performing a code order conversion process for rearranging each bit constituting an information bit sequence,
Using a value of at least one bit of a plurality of bits constituting a virtual bit sequence generated or prepared as a substitute for the information bit sequence, a real number label attached to each bit constituting the virtual bit sequence Real number label generation processing means for randomly generating; and
In a state in which each real number label generated by the real number label generation processing means is paired with the array position information in the virtual bit sequence before the code order conversion process of each bit to which each real number label is attached. Matrix arrangement processing means for sequentially arranging the respective array position information together with the respective real number labels in the row direction in a matrix format according to the arrangement order before the code order conversion process of each bit;
In-line sorting processing means for performing in-line sorting in which each array position information arranged in a matrix format by the matrix arrangement processing means is rearranged according to the numerical order of the numerical value of each real number label in each row, and
Block sorting processing means for performing block sorting for rearranging each array position information after the in-line sorting by the in-line sorting processing means in line units according to a predetermined block order conversion rule;
A code order conversion table creating apparatus comprising: matrix read processing means for sequentially reading the array position information after the block sorting by the block sorting processing means in a column direction.
情報ビット系列の符号順序変換処理で各行内で行われる行内ソーティングの際の順序変換ルールを定める行内ソーティングテーブルを前記各行に対応する各ブロック毎に記憶する行内ソーティングテーブル記憶手段と、
前記情報ビット系列を構成する各ビットの値を示す内容情報を前記各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置する行列配置処理手段と、
この行列配置処理手段により行列形式で配置された前記各内容情報を、前記各行内でそれぞれ前記各行内ソーティングテーブルを用いて並べ替える行内ソーティングを行う行内ソーティング処理手段と、
この行内ソーティング処理手段による前記行内ソーティング後の前記各内容情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行うブロックソーティング処理手段と、
このブロックソーティング処理手段による前記ブロックソーティング後の前記各内容情報を列方向に順次読み出すことにより、符号順序変換処理後のビット系列を生成する行列読出処理手段とを備え、
前記行内ソーティングテーブル記憶手段に記憶された前記各行内ソーティングテーブルは、
前記情報ビット系列の代用として仮想ビット系列を生成または用意し、この仮想ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この仮想ビット系列を構成する各ビットに付される実数ラベルをランダムに生成し、
生成された各実数ラベルとこれらの各実数ラベルを付された前記各ビットの符号順序変換処理前の前記仮想ビット系列内での配列位置情報とを対にした状態で、前記各配列位置情報を前記各実数ラベルとともに前記各ビットの符号順序変換処理前の配列順序に従って順次配列し、
配列した前記各配列位置情報を複数のブロックに区切って各ブロック内でそれぞれ前記各実数ラベルの数値の大小順に従って並べ替えることにより作成されたテーブルである
ことを特徴とする符号順序変換装置。
In-line sorting table storage means for storing an in-line sorting table for each block corresponding to each row, which defines an order conversion rule for the in-line sorting performed in each row in the code order conversion processing of the information bit sequence;
Matrix arrangement processing means for sequentially arranging the content information indicating the value of each bit constituting the information bit sequence in the row direction in a matrix format according to the arrangement order before the code order conversion process of each bit;
In-line sorting processing means for performing in-line sorting in which each content information arranged in a matrix format by the matrix arrangement processing means is rearranged using the in-line sorting table in each row, and
Block sorting processing means for performing block sorting for rearranging the contents information after the in-line sorting by the in-line sorting processing means in units of lines according to a predetermined block order conversion rule;
Matrix reading processing means for generating a bit sequence after code order conversion processing by sequentially reading the content information after the block sorting by the block sorting processing means in the column direction,
Each in-line sorting table stored in the in-line sorting table storage means is:
A virtual bit sequence is generated or prepared as a substitute for the information bit sequence, and a value of at least one bit of the plurality of bits constituting the virtual bit sequence is used to attach to each bit constituting the virtual bit sequence. Randomly generated real number labels,
In a state where the generated real number labels are paired with the array position information in the virtual bit sequence before the code order conversion process of the bits to which the real number labels are attached, the array position information Sequentially arranged according to the arrangement order before the code order conversion processing of each bit together with each real number label,
The code order conversion device according to claim 1, wherein the arrangement information is a table created by dividing the arranged array position information into a plurality of blocks and rearranging the blocks in order according to the numerical order of the numerical values of the real labels.
符号順序変換処理の対象となる情報ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この情報ビット系列を構成する各ビットに付される実数ラベルをランダムに生成する実数ラベル生成処理手段と、
この実数ラベル生成処理手段により生成された各実数ラベルとこれらの各実数ラベルを付された前記各ビットの符号順序変換処理前の前記情報ビット系列内での配列位置情報とを対にした状態で、前記各配列位置情報を前記各実数ラベルとともに前記各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置する行列配置処理手段と、
この行列配置処理手段により行列形式で配置された前記各配列位置情報を、各行内でそれぞれ前記各実数ラベルの数値の大小順に従って並べ替える行内ソーティングを行う行内ソーティング処理手段と、
この行内ソーティング処理手段による前記行内ソーティング後の前記各配列位置情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行うブロックソーティング処理手段と、
このブロックソーティング処理手段による前記ブロックソーティング後の前記各配列位置情報を列方向に順次読み出すことにより、符号順序変換処理前のビット系列と符号順序変換処理後のビット系列とのそれぞれの構成ビットの対応関係を定める符号順序変換テーブルを作成する符号順序変換テーブル作成処理手段と、
この符号順序変換テーブル作成処理手段により作成された前記符号順序変換テーブルを用いて前記情報ビット系列を構成する各ビットを並べ替える符号順序変換処理手段と
を備えたことを特徴とする符号順序変換装置。
Using a value of at least one bit among a plurality of bits constituting the information bit sequence subject to code order conversion processing, a real number label attached to each bit constituting the information bit sequence is randomly generated Real number label generation processing means;
In a state where each real number label generated by the real number label generation processing means is paired with the array position information in the information bit sequence before the code order conversion processing of each bit to which each real number label is attached. Matrix arrangement processing means for sequentially arranging the respective array position information together with the respective real number labels in the row direction in a matrix format according to the arrangement order before the code order conversion process of each bit;
In-line sorting processing means for performing in-line sorting in which each array position information arranged in a matrix format by the matrix arrangement processing means is rearranged according to the numerical order of the numerical value of each real number label in each row, and
Block sorting processing means for performing block sorting for rearranging each array position information after the in-line sorting by the in-line sorting processing means in line units according to a predetermined block order conversion rule;
Correspondence between the constituent bits of the bit sequence before the code order conversion processing and the bit sequence after the code order conversion processing by sequentially reading the array position information after the block sorting by the block sorting processing means in the column direction Code order conversion table creation processing means for creating a code order conversion table for defining a relationship;
A code order conversion apparatus comprising: code order conversion processing means for rearranging each bit constituting the information bit sequence using the code order conversion table created by the code order conversion table creation processing means. .
符号順序変換処理の対象となる情報ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この情報ビット系列を構成する各ビットに付される実数ラベルをランダムに生成する実数ラベル生成処理手段と、
この実数ラベル生成処理手段により生成された各実数ラベルとこれらの各実数ラベルを付された前記各ビットの符号順序変換処理前の前記情報ビット系列内での配列位置情報と前記各ビットの値を示す内容情報とを対にした状態で、前記各配列位置情報および前記各内容情報を前記各実数ラベルとともに前記各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置する行列配置処理手段と、
この行列配置処理手段により行列形式で配置された前記各配列位置情報および前記各内容情報を、各行内でそれぞれ前記各実数ラベルの数値の大小順に従って並べ替える行内ソーティングを行う行内ソーティング処理手段と、
この行内ソーティング処理手段による前記行内ソーティング後の前記各配列位置情報および前記各内容情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行うブロックソーティング処理手段と、
このブロックソーティング処理手段による前記ブロックソーティング後の前記各配列位置情報を列方向に順次読み出すことにより、符号順序変換処理前のビット系列と符号順序変換処理後のビット系列とのそれぞれの構成ビットの対応関係を定める符号順序変換テーブルを作成する符号順序変換テーブル作成処理手段と、
前記ブロックソーティング処理手段による前記ブロックソーティング後の前記各内容情報を列方向に順次読み出すことにより符号順序変換処理後のビット系列を生成する行列読出処理手段と
を備えたことを特徴とする符号順序変換装置。
Using a value of at least one bit among a plurality of bits constituting the information bit sequence subject to code order conversion processing, a real number label attached to each bit constituting the information bit sequence is randomly generated Real number label generation processing means;
The real number labels generated by the real number label generation processing means, the array position information in the information bit sequence before the code order conversion processing of the bits to which the real number labels are attached, and the values of the bits. A matrix that sequentially arranges each array position information and each content information together with each real number label in the row direction in a matrix format according to the array order before the code order conversion process of each bit in a state in which the content information shown is paired Arrangement processing means;
In-line sorting processing means for performing in-line sorting in which each array position information and each content information arranged in a matrix format by the matrix arrangement processing means are rearranged in accordance with the numerical order of the numerical value of each real number label in each line;
Block sorting processing means for performing block sorting for rearranging the array position information and the content information after the in-line sorting by the in-line sorting processing means in units of rows according to a predetermined block order conversion rule;
Correspondence between the constituent bits of the bit sequence before the code order conversion processing and the bit sequence after the code order conversion processing by sequentially reading the array position information after the block sorting by the block sorting processing means in the column direction Code order conversion table creation processing means for creating a code order conversion table for defining a relationship;
Code order conversion comprising: matrix read processing means for generating a bit sequence after code order conversion processing by sequentially reading the content information after the block sorting by the block sorting processing means in a column direction. apparatus.
符号順序変換処理の対象となる情報ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この情報ビット系列を構成する各ビットに付される実数ラベルをランダムに生成する実数ラベル生成処理手段と、
この実数ラベル生成処理手段により生成された各実数ラベルとこれらの各実数ラベルを付された前記各ビットの符号順序変換処理前の前記情報ビット系列内での配列位置情報とを対にした状態で、前記各配列位置情報を前記各実数ラベルとともに前記各ビットの符号順序変換処理前の配列順序に従って順次配列する配列処理手段と、
この配列処理手段により配列した前記各配列位置情報を複数のブロックに区切って各ブロック内でそれぞれ前記各実数ラベルの数値の大小順に従って並べ替えることにより、各行内で行われる行内ソーティングの際の順序変換ルールを定める行内ソーティングテーブルを前記各行に対応する前記各ブロック毎に作成する行内ソーティングテーブル作成処理手段と、
前記情報ビット系列を構成する各ビットの値を示す内容情報を前記各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置する行列配置処理手段と、
この行列配置処理手段により行列形式で配置された前記各内容情報を、前記各行内でそれぞれ前記各行内ソーティングテーブルを用いて並べ替える行内ソーティングを行う行内ソーティング処理手段と、
この行内ソーティング処理手段による前記行内ソーティング後の前記各内容情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行うブロックソーティング処理手段と、
このブロックソーティング処理手段による前記ブロックソーティング後の前記各内容情報を列方向に順次読み出すことにより符号順序変換処理後のビット系列を生成する行列読出処理手段と
を備えたことを特徴とする符号順序変換装置。
Using a value of at least one bit among a plurality of bits constituting the information bit sequence subject to code order conversion processing, a real number label attached to each bit constituting the information bit sequence is randomly generated Real number label generation processing means;
In a state where each real number label generated by the real number label generation processing means is paired with the array position information in the information bit sequence before the code order conversion processing of each bit to which each real number label is attached. , Array processing means for sequentially arraying each array position information together with each real number label according to the array order before the code order conversion processing of each bit;
The order of the in-line sorting performed in each row by dividing each array position information arrayed by this array processing means into a plurality of blocks and rearranging in accordance with the order of the numerical value of each real number label in each block In-line sorting table creation processing means for creating an in-line sorting table for defining a conversion rule for each block corresponding to each row;
Matrix arrangement processing means for sequentially arranging the content information indicating the value of each bit constituting the information bit sequence in the row direction in a matrix format according to the arrangement order before the code order conversion process of each bit;
In-line sorting processing means for performing in-line sorting in which each content information arranged in a matrix format by the matrix arrangement processing means is rearranged using the in-line sorting table in each row, and
Block sorting processing means for performing block sorting for rearranging the contents information after the in-line sorting by the in-line sorting processing means in units of lines according to a predetermined block order conversion rule;
Code order conversion comprising: matrix read processing means for generating a bit sequence after code order conversion processing by sequentially reading the content information after the block sorting by the block sorting processing means in a column direction. apparatus.
符号順序変換処理の対象となる情報ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この情報ビット系列を構成する各ビットに付される実数ラベルをランダムに生成する実数ラベル生成処理手段と、
この実数ラベル生成処理手段により生成された各実数ラベルとこれらの各実数ラベルを付された前記各ビットの符号順序変換処理前の前記情報ビット系列内での配列位置情報と前記各ビットの値を示す内容情報とを対にした状態で、前記各配列位置情報および前記各内容情報を前記各実数ラベルとともに前記各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置する行列配置処理手段と、
この行列配置処理手段により行列形式で配置された前記各配列位置情報および前記各内容情報を、各行内でそれぞれ前記各実数ラベルの数値の大小順に従って並べ替える行内ソーティングを行う行内ソーティング処理手段と、
この行内ソーティング処理手段による前記行内ソーティング後の前記各配列位置情報を各行毎に順次読み出すことにより、前記各行内ソーティングの際の順序変換ルールを定める行内ソーティングテーブルを前記各行に対応する各ブロック毎に作成する行内ソーティングテーブル作成処理手段と、
前記行内ソーティング処理手段による前記行内ソーティング後の前記各内容情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行うブロックソーティング処理手段と、
このブロックソーティング処理手段による前記ブロックソーティング後の前記各内容情報を列方向に順次読み出すことにより符号順序変換処理後のビット系列を生成する行列読出処理手段と
を備えたことを特徴とする符号順序変換装置。
Using a value of at least one bit among a plurality of bits constituting the information bit sequence subject to code order conversion processing, a real number label attached to each bit constituting the information bit sequence is randomly generated Real number label generation processing means;
The real number labels generated by the real number label generation processing means, the array position information in the information bit sequence before the code order conversion processing of the bits to which the real number labels are attached, and the values of the bits. A matrix that sequentially arranges each array position information and each content information together with each real number label in the row direction in a matrix format according to the array order before the code order conversion process of each bit in a state in which the content information shown is paired Arrangement processing means;
In-line sorting processing means for performing in-line sorting in which each array position information and each content information arranged in a matrix format by the matrix arrangement processing means are rearranged in accordance with the numerical order of the numerical value of each real number label in each line;
By sequentially reading the array position information after the in-line sorting by the in-line sorting processing unit for each line, an in-line sorting table for defining an order conversion rule in the in-line sorting is obtained for each block corresponding to the each line. In-line sorting table creation processing means to be created;
Block sorting processing means for performing block sorting in which each content information after the in-line sorting by the in-line sorting processing means is rearranged in line units according to a predetermined block order conversion rule;
Code order conversion comprising: matrix read processing means for generating a bit sequence after code order conversion processing by sequentially reading the content information after the block sorting by the block sorting processing means in a column direction. apparatus.
符号順序変換処理の対象となる情報ビット系列を構成する複数のビットのうちの少なくとも1つのビットの値を用いて、この情報ビット系列を構成する各ビットに付される実数ラベルをランダムに生成する実数ラベル生成処理手段と、
この実数ラベル生成処理手段により生成された各実数ラベルとこれらの各実数ラベルを付された前記各ビットの値を示す内容情報とを対にした状態で、前記各内容情報を前記各実数ラベルとともに前記各ビットの符号順序変換処理前の配列順序に従って行列形式で行方向に順次配置する行列配置処理手段と、
この行列配置処理手段により行列形式で配置された前記各内容情報を、各行内でそれぞれ前記各実数ラベルの数値の大小順に従って並べ替える行内ソーティングを行う行内ソーティング処理手段と、
この行内ソーティング処理手段による前記行内ソーティング後の前記各内容情報を、予め定められたブロック順序変換ルールに従って行単位で並べ替えるブロックソーティングを行うブロックソーティング処理手段と、
このブロックソーティング処理手段による前記ブロックソーティング後の前記各内容情報を列方向に順次読み出すことにより符号順序変換処理後のビット系列を生成する行列読出処理手段と
を備えたことを特徴とする符号順序変換装置。
Using a value of at least one bit among a plurality of bits constituting the information bit sequence subject to code order conversion processing, a real number label attached to each bit constituting the information bit sequence is randomly generated Real number label generation processing means;
In a state where each real number label generated by the real number label generation processing unit and the content information indicating the value of each bit attached with each real number label are paired, the respective content information is set together with each real number label. Matrix arrangement processing means for sequentially arranging in the row direction in a matrix format according to the arrangement order before the code order conversion processing of each bit;
In-line sorting processing means for performing in-line sorting in which each content information arranged in a matrix format by the matrix arrangement processing means is rearranged according to the numerical order of the numerical values of each real number label in each row, and
Block sorting processing means for performing block sorting for rearranging the contents information after the in-line sorting by the in-line sorting processing means in units of lines according to a predetermined block order conversion rule;
Code order conversion comprising: matrix read processing means for generating a bit sequence after code order conversion processing by sequentially reading the content information after the block sorting by the block sorting processing means in a column direction. apparatus.
請求項12または14に記載の符号順序変換装置において、
前記テーブルが作成された際に行われた前記各実数ラベルの生成処理は、
連続する複数のビットの各値を用いて実数Xa〜実数Xbの間の実数Xを算出した後、
tを、Xa≦t<(Xa+Xb)/2の範囲の実数としたとき、
g(t)+g(t+(Xb−Xa)/2)=Ya+Ybという条件式を満たすスクランブリング関数Y=g(X)を用いて、実数Xa〜実数Xbの間の実数Xを実数Ya〜実数Ybの間の実数Yに変換し、
変換して得られた実数Yの値を前記実数ラベルとし、
前記連続する複数のビットの各値を1ビットずつシフトしながら用いて、実数Xの算出処理および前記スクランブリング関数による実数Xから実数Yへの変換処理を繰り返すことにより、前記各ビットに付される前記各実数ラベルを順次生成する処理である
ことを特徴とする符号順序変換装置。
The code order conversion device according to claim 12 or 14,
The processing for generating each real number label performed when the table is created is as follows.
After calculating the real number X between the real number X a and the real number X b using each value of a plurality of consecutive bits,
When t is a real number in the range of X a ≦ t <(X a + X b ) / 2,
with g (t) + g (t + (X b -X a) / 2) = Y a + Y b satisfies the condition that scrambling function Y = g (X), between the real number X a ~ real X b Convert real number X to real number Y between real number Y a and real number Y b ,
The value of the real number Y obtained by conversion is used as the real number label,
By using each value of the plurality of consecutive bits while shifting one bit at a time, it repeats the calculation process of the real number X and the conversion process from the real number X to the real number Y by the scrambling function. The code order conversion device according to claim 1, wherein the real number labels are sequentially generated.
請求項20に記載の符号順序変換装置において、
前記連続する複数のビットの各値を用いて実数Xa〜実数Xbの間の実数Xを算出する処理は、算出に用いるビット数をMとし、mを1〜Mの整数とすると、Mビットの各値のそれぞれに2-mを乗じた値を加算し、さらに2-(M+1)を加算して得られる数値をXとすることにより、0〜1の間の実数Xを算出する処理であり、
前記スクランブリング関数による実数Xa〜実数Xbの間の実数Xから実数Ya〜実数Ybの間の実数Yへの変換処理は、0〜1の間の実数Xから0〜1の間の実数Yへの変換処理であり、
これらの実数Xの算出処理および前記スクランブリング関数による実数Xから実数Yへの変換処理は、擬似確率過程発生処理である
ことを特徴とする符号順序変換装置。
The code order conversion device according to claim 20,
The process of calculating the real number X between the real number X a to the real number X b using the values of the plurality of consecutive bits is M, where m is the number of bits used for the calculation and M is an integer from 1 to M. Calculate the real number X between 0 and 1 by adding the value obtained by multiplying each bit value by 2 -m and adding 2- (M + 1) to X. Process
The conversion process from the real number X between the real number X a to the real number X b to the real number Y between the real number Y a to the real number Y b by the scrambling function is between the real number X between 0 and 1 and 0 to 1. To a real number Y,
The code order conversion apparatus, wherein the real number X calculation processing and the conversion processing from the real number X to the real number Y by the scrambling function are pseudo-probability process generation processing.
請求項12,14,20,21のいずれかに記載の符号順序変換装置において、
前記ブロック順序変換ルールは、少なくとも符号順序変換処理前のビット系列を構成する各ビットのうち7ビット離れた2つのビットが、符号順序変換処理後のビット系列内で7ビット離れた位置に配列されることを回避するためのルールである
ことを特徴とする符号順序変換装置。
The code order conversion apparatus according to any one of claims 12, 14, 20, and 21,
In the block order conversion rule, at least two bits that are 7 bits apart from each bit constituting the bit sequence before the code order conversion process are arranged at positions separated by 7 bits in the bit sequence after the code order conversion process. The code order conversion apparatus characterized by being a rule for avoiding this.
請求項12,14,20〜22のいずれかに記載の符号順序変換装置において、
前記符号順序変換処理は、ターボ符号のインターリーブ処理として行われることを特徴とする符号順序変換装置。
In the code | symbol order conversion apparatus in any one of Claim 12, 14, 20-22,
The code order conversion apparatus, wherein the code order conversion process is performed as a turbo code interleaving process.
請求項15〜19のいずれかに記載の符号順序変換装置において、
前記実数ラベル生成処理手段は、
連続する複数のビットの各値を用いて実数Xa〜実数Xbの間の実数Xを算出する重み算出処理手段と、
tをXa≦t<(Xa+Xb)/2の範囲の実数としたとき、g(t)+g(t+(Xb−Xa)/2)=Ya+Ybという条件式を満たすスクランブリング関数Y=g(X)を用いて、実数Xa〜実数Xbの間の実数Xを実数Ya〜実数Ybの間の実数Yに変換し、変換して得られた実数Yの値を前記実数ラベルとする重み/ラベル変換処理手段と、
前記連続する複数のビットの各値を1ビットずつシフトしながら用いて前記重み算出処理手段および前記重み/ラベル変換処理手段による各処理を繰り返すためのビットのシフト処理を行うシフト処理手段と
を含んで構成されていることを特徴とする符号順序変換装置。
The code order conversion device according to any one of claims 15 to 19,
The real number label generation processing means includes:
Weight calculation processing means for calculating a real number X between the real number X a and the real number X b using each value of a plurality of consecutive bits;
When t is a real number in the range of X a ≦ t <(X a + X b ) / 2, the conditional expression g (t) + g (t + (X b −X a ) / 2) = Y a + Y b is satisfied. Using the scrambling function Y = g (X), the real number X between the real number X a and the real number X b is converted into the real number Y between the real number Y a and the real number Y b , and the real number Y obtained by the conversion Weight / label conversion processing means using the value of the real number as the real label,
Shift processing means for performing bit shift processing for repeating each processing by the weight calculation processing means and the weight / label conversion processing means using each value of the plurality of consecutive bits while shifting one bit at a time. The code | symbol order conversion apparatus characterized by the above-mentioned.
請求項24に記載の符号順序変換装置において、
前記重み算出処理手段は、算出に用いるビット数をMとし、mを1〜Mの整数とすると、Mビットの各値のそれぞれに2-mを乗じた値を加算し、さらに2-(M+1)を加算して得られる数値をXとすることにより、0〜1の間の実数Xを算出する処理を行う構成とされ、
前記重み/ラベル変換処理手段は、0〜1の間の実数Xから0〜1の間の実数Yへの変換処理を行う構成とされ、
前記実数ラベル生成処理手段は、擬似確率過程発生処理を行う構成されている
ことを特徴とする符号順序変換装置。
The code order conversion device according to claim 24, wherein
When the number of bits used for calculation is M and m is an integer between 1 and M, the weight calculation processing means adds a value obtained by multiplying each value of M bits by 2 −m , and further 2 − (M +1) is added, and the numerical value obtained by X is set to be configured to perform a process of calculating a real number X between 0 and 1,
The weight / label conversion processing means is configured to perform conversion processing from a real number X between 0 and 1 to a real number Y between 0 and 1,
The real number label generation processing means is configured to perform a pseudo stochastic process generation process.
請求項15〜19,24,25のいずれかに記載の符号順序変換装置において、
前記ブロックソーティング処理手段は、
前記ブロック順序変換ルールとして、少なくとも符号順序変換処理前のビット系列を構成する各ビットのうち7ビット離れた2つのビットが、符号順序変換処理後のビット系列内で7ビット離れた位置に配列されることを回避するためのルールを用いる構成とされている
ことを特徴とする符号順序変換装置。
In the code | symbol order conversion apparatus in any one of Claims 15-19, 24, 25,
The block sorting processing means includes:
As the block order conversion rule, at least two bits that are 7 bits apart from each bit constituting the bit sequence before the code order conversion process are arranged at positions separated by 7 bits in the bit sequence after the code order conversion process. The code order conversion device is characterized in that a rule for avoiding this is used.
請求項15〜19,24〜26のいずれかに記載の符号順序変換装置において、
ターボ符号用のインターリーバであることを特徴とする符号順序変換装置。
In the code | symbol order conversion apparatus in any one of Claims 15-19 and 24-26,
A code order conversion apparatus, characterized by being an interleaver for turbo codes.
請求項24または25に記載の符号順序変換装置において、
前記シフト処理手段は、シフトレジスタにより構成されていることを特徴とする符号順序変換装置。
In the code | symbol order conversion apparatus of Claim 24 or 25,
The code order conversion apparatus according to claim 1, wherein the shift processing means comprises a shift register.
請求項12,14〜28のいずれかに記載の符号順序変換装置をターボ符号用のインターリーバとして備えていることを特徴とするターボ符号用の符号器。   An encoder for turbo codes, comprising the code order conversion device according to any one of claims 12, 14 to 28 as an interleaver for turbo codes. 請求項12,14〜28のいずれかに記載の符号順序変換装置をターボ符号用のインターリーバとして備えていることを特徴とするターボ符号用の復号器。   A decoder for turbo code, comprising the code order conversion device according to any one of claims 12, 14 to 28 as an interleaver for turbo code.
JP2004187519A 2004-06-25 2004-06-25 Code order conversion method and apparatus, code order conversion table creation apparatus, turbo code encoder and decoder Expired - Fee Related JP4411401B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004187519A JP4411401B2 (en) 2004-06-25 2004-06-25 Code order conversion method and apparatus, code order conversion table creation apparatus, turbo code encoder and decoder

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004187519A JP4411401B2 (en) 2004-06-25 2004-06-25 Code order conversion method and apparatus, code order conversion table creation apparatus, turbo code encoder and decoder

Publications (2)

Publication Number Publication Date
JP2006013846A true JP2006013846A (en) 2006-01-12
JP4411401B2 JP4411401B2 (en) 2010-02-10

Family

ID=35780557

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004187519A Expired - Fee Related JP4411401B2 (en) 2004-06-25 2004-06-25 Code order conversion method and apparatus, code order conversion table creation apparatus, turbo code encoder and decoder

Country Status (1)

Country Link
JP (1) JP4411401B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009077154A (en) * 2007-09-20 2009-04-09 Mitsubishi Electric Corp Turbo coding device, turbo coding method, and communication system
JP2018504011A (en) * 2014-11-27 2018-02-08 華為技術有限公司Huawei Technologies Co.,Ltd. Polar code rate matching method and apparatus, and wireless communication device
CN110535478A (en) * 2019-09-27 2019-12-03 电子科技大学 Dual input class Turbo code closed set recognition methods in a kind of DVB-RCS2 agreement

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9722633B2 (en) * 2015-02-11 2017-08-01 Mitsubishi Electric Research Laboratories, Inc. Method and system for reliable data communications with adaptive multi-dimensional modulations for variable-iteration decoding

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009077154A (en) * 2007-09-20 2009-04-09 Mitsubishi Electric Corp Turbo coding device, turbo coding method, and communication system
JP2018504011A (en) * 2014-11-27 2018-02-08 華為技術有限公司Huawei Technologies Co.,Ltd. Polar code rate matching method and apparatus, and wireless communication device
US10374754B2 (en) 2014-11-27 2019-08-06 Huawei Technologies Co., Ltd. Polar code rate matching method and apparatus, and wireless communications device
CN110535478A (en) * 2019-09-27 2019-12-03 电子科技大学 Dual input class Turbo code closed set recognition methods in a kind of DVB-RCS2 agreement

Also Published As

Publication number Publication date
JP4411401B2 (en) 2010-02-10

Similar Documents

Publication Publication Date Title
JP3347335B2 (en) Interleaving method, interleaving device, and recording medium recording interleave pattern creation program
EP1030455B1 (en) Interleaving method, interleaving apparatus, turbo encoding method, and turbo encoder
US7484159B2 (en) Encoding method and encoding apparatus
RU2313177C2 (en) Turbo-decoder using linear congruent series
KR100808664B1 (en) Parity check matrix storing method, block ldpc coding method and the apparatus using parity check matrix storing method
CN1983823B (en) Encoder, decoder, methods of encoding and decoding
US7451374B2 (en) Apparatus and method for channel coding in mobile communication system
KR100526512B1 (en) Interleaving apparatus and method for serially concatenated convolution code in a mobile telecommunication system
JP4033245B2 (en) Turbo coding apparatus and turbo coding method
RU2006109470A (en) DEVICE AND METHOD FOR CODING-DECODING OF LOW DENSITY BLOCK CODES WITH PARITY CONTROL IN THE MOBILE COMMUNICATION SYSTEM
JP2000156646A5 (en) Encoding device and method, decoding device and method, information processing device and method, and storage medium
US6625762B1 (en) Interleaving device and method for turbocoding and turbodecoding
KR20080041488A (en) Parallel interleaving method
CN101242188B (en) Correction coding method of low-density parity checking code based on Hamiltonian graph
US7526707B2 (en) Method and apparatus for encoding and decoding data using a pseudo-random interleaver
KR100638594B1 (en) Low density parity check code encoder using costas array, channel encoder and encoding method in high speed portable internet system comprising same
JP3515036B2 (en) Interleaving method, interleaving device, turbo coding method, and turbo coding device
JP4411401B2 (en) Code order conversion method and apparatus, code order conversion table creation apparatus, turbo code encoder and decoder
WO2008039035A1 (en) Method for encoding low density parity check codes using result of checking previously specified parity bits
US20060031745A1 (en) Methods and apparatus for constructing low-density parity check (LDPC) matrix
EP1401107A1 (en) Method for improving the performance of 3-dimensional concatenated product codes
US8301962B2 (en) Apparatus and method for generating a linear code
WO2024106297A1 (en) Turbo code design method, turbo code design device, and recording medium storing turbo code design program
KR100672347B1 (en) Flexible data rate Matching Method in 3GPP2
CN110535478B (en) Dual-input Turbo-like code closed set identification method in DVB-RCS2 protocol

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070613

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: 20090915

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: 20091009

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

Free format text: PAYMENT UNTIL: 20121127

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees