JPH1188199A - Interleave circuit and de-interleave circuit - Google Patents

Interleave circuit and de-interleave circuit

Info

Publication number
JPH1188199A
JPH1188199A JP9248496A JP24849697A JPH1188199A JP H1188199 A JPH1188199 A JP H1188199A JP 9248496 A JP9248496 A JP 9248496A JP 24849697 A JP24849697 A JP 24849697A JP H1188199 A JPH1188199 A JP H1188199A
Authority
JP
Japan
Prior art keywords
address
data
buffer area
area
interleave circuit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP9248496A
Other languages
Japanese (ja)
Inventor
Ikuo Kawasumi
育男 川澄
Kenji Horiguchi
健治 堀口
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP9248496A priority Critical patent/JPH1188199A/en
Publication of JPH1188199A publication Critical patent/JPH1188199A/en
Withdrawn legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To allow a circuit to use one memory so as to effectively execute data arrangement without imposing a load on a control section. SOLUTION: A memory 100 includes a 1st buffer area and a 2nd buffer area, and for each address a data area A to which data to be rearranged are written and an address area B to which respective succeeding write destination addresses are written in advance are formed. A next address setting section 106 sets an address from an address area corresponding to an address of data in the case of writing the data sequentially to a write control section 104. The write control section 104 accesses each address sequentially according to each set address and writes data in a prescribed sequence. A read control section 108 accesses sequentially the 2nd buffer area while the write control section 104 accesses the 1st buffer area and accesses sequentially the 1st buffer area while the write control section 104 accesses the 2nd buffer area to read data in the arrangement different from the data arrangement to be received.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、インタリーブ回路
およびデインタリーブ回路に係り、特に、たとえば、デ
ィジタル方式の携帯電話または自動車電話などに用いら
れる符号化回路あるいは復号回路に適用されるインタリ
ーブ回路およびデインタリーブ回路に関するものであ
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an interleave circuit and a deinterleave circuit, and more particularly to an interleave circuit and a deinterleave circuit applied to, for example, an encoding circuit or a decoding circuit used in a digital cellular phone or car phone. It relates to an interleave circuit.

【0002】[0002]

【従来の技術】たとえば、音声信号などをディジタル化
して伝送する際に、その伝送誤りを訂正するために、CR
C (cyclic redundancy check) 等のブロック符号あるい
は畳み込み符号などの各種の誤り訂正符号が用いられ
る。これらの誤り訂正符号は、ランダムな誤りに対して
はその検出、訂正能力は高い。しかし、フェージングな
どにて生じる連続的なバースト性の誤りに対してはその
検出、訂正能力はそれほど高くない。そこで、符号化さ
れた信号の配列を並べ替えて送信し、受信側にて元の配
列に並べ替えることにより、通信路にて生じるバースト
誤りを分散して誤り訂正能力を向上させるインタリーブ
技術が併用される。
2. Description of the Related Art For example, when an audio signal or the like is digitized and transmitted, a CR is used to correct a transmission error.
Various error correction codes such as block codes such as C (cyclic redundancy check) or convolutional codes are used. These error correction codes have high detection and correction capabilities for random errors. However, the capability of detecting and correcting continuous burst errors caused by fading or the like is not so high. Therefore, the rearrangement of the encoded signal sequence is transmitted, and the receiving side rearranges the signal to the original sequence, so that interleaving technology that disperses burst errors occurring in the communication path and improves error correction capability is also used. Is done.

【0003】詳しくは、たとえば今井秀樹著「符号理
論」電子情報通信学会発行、第220 頁〜第221 頁に記載
のように、ある信号Cを符号長n、誤り訂正能力Lの符
号に符号化してm個の符号語を形成し、これらをm×n
の配列のメモリに各符号が行方向に配列されるようにm
個蓄積する。これにより、m行、n列の配列のデータが
形成されて、これを列方向、つまりメモリに書き込んだ
行方向と直交するように読み出すと、それぞれの符号が
m回交錯されて読み出される。交錯結果は、長さmnの
系列となり、長さmLのバースト誤りが生じても、これ
を元の配列に並べ替えると、それぞれの符号にて長さL
以下の誤りとなる。この結果、各符号にて有効な誤り訂
正が可能となり、インタリーブによって符号長mn、バ
ースト誤り訂正能力mLの符号化が実現される。
More specifically, as described in, for example, Hideki Imai, "Code Theory," Institute of Electronics, Information and Communication Engineers, pp. 220-221, a signal C is encoded into a code having a code length n and an error correction capability L. To form m codewords, which are m × n
M so that each code is arranged in the row direction in the memory of the array of
Accumulate. As a result, data in an array of m rows and n columns is formed, and when the data is read out in the column direction, that is, orthogonally to the row direction written in the memory, the respective codes are read out after being interlaced m times. The result of the interlacing is a sequence of length mn. Even if a burst error of length mL occurs, if this is rearranged into the original arrangement, the length L of each code is obtained.
This results in the following error: As a result, effective error correction is enabled for each code, and coding with a code length mn and burst error correction capability mL is realized by interleaving.

【0004】従来、上記のようなインタリーブを実現す
る回路としては、m×n配列のメモリと、その配列の行
方向のアドレスを順次演算して、入力するデータをメモ
リでのデータ配列の行方向に順次書き込む書込み制御部
と、メモリでのデータ配列の列方向のアドレスを順次演
算して、書き込まれたデータを順次配列の列方向に読み
出す読出し制御部とを含む。この場合、データがメモリ
に完全に書き込まれた後に、読み出しを行なわなければ
ならない。そこで、実際には、メモリを少なくとも2個
以上用意して、一方のメモリにデータを書き込んでいる
間に他方のメモリにてデータを読み出す。したがって、
それぞれの書込み制御部と読出し制御部とを協調して順
次メモリを切り替える切替制御部を含むものであった。
Conventionally, as a circuit for realizing the above-described interleaving, a memory having an m.times.n array and addresses in the row direction of the array are sequentially calculated, and input data is stored in the memory in the row direction of the data array. And a read control unit for sequentially calculating addresses in the column direction of the data array in the memory and reading out the written data sequentially in the column direction of the array. In this case, the reading must be performed after the data has been completely written to the memory. Therefore, in practice, at least two or more memories are prepared, and data is read from the other memory while data is written to one memory. Therefore,
A switching control unit that sequentially switches memories in cooperation with each of the write control unit and the read control unit is included.

【0005】また、インタリーブしたデータを元の配列
のデータに並び替えるデインタリーブ回路は、上記と同
様に2個以上のm×n配列のメモリを用意して、それぞ
れ列方向のアドレスを演算して受信したデータをメモリ
に列方向に順次書き込む書込み制御部と、それぞれ行方
向のアドレスを演算して書き込まれたデータを順次行方
向に読み出す読み出し制御部と、これらを協調してメモ
リを切り替える切替制御部とを含むものであった。これ
により、各メモリに受信したデータが順次行方向に書き
込まれ、これを列方向に読み出すことにより、上記イン
タリーブ回路にて交錯されたデータが元の配列に並び替
えられるものであった。
A deinterleave circuit for rearranging interleaved data into data of an original array prepares two or more m × n arrays of memories in the same manner as described above, and calculates addresses in the column direction. A write control unit for sequentially writing received data to the memory in the column direction, a read control unit for calculating the address in the row direction and sequentially reading the written data in the row direction, and a switching control for switching these memories in cooperation with each other Parts. As a result, the data received in each memory is sequentially written in the row direction, and is read out in the column direction, whereby the data interleaved by the interleave circuit is rearranged into the original arrangement.

【0006】[0006]

【発明が解決しようとする課題】しかしながら、上述し
た従来の技術では、2個以上のm×n配列のメモリを用
意して、それらを順次切り替えてデータの書込みおよび
読出しの制御を行なわなければならず、メモリの個数が
多ければ多いほどその切替制御が煩雑になり、切替制御
部に負担がかかるという問題があった。
However, in the above-mentioned prior art, two or more m.times.n arrays of memories must be prepared, and these memories must be sequentially switched to control the writing and reading of data. However, as the number of memories increases, the switching control becomes more complicated, and there is a problem that a load is placed on the switching controller.

【0007】そこで、たとえば、1つのメモリに2以上
のm×n配列のバッファ領域を用意して、一方の領域に
データを順次書き込んでいる間に、他方の領域にてデー
タを読み出すように制御してインタリーブを実行するこ
とが考えられる。これによりメモリの切替制御を省くこ
とができる。しかし、この場合、一方のバッファ領域か
ら他方のバッファ領域に移る際にそのアドレスの演算が
バッファ領域内でのアドレス演算と異なるので、書込み
制御部または読出し制御部のプログラムが複雑なものに
なるという問題があった。
In view of this, for example, two or more m × n buffer areas are prepared in one memory, and control is performed such that while data is sequentially written in one area, data is read in the other area. And then perform interleaving. Thereby, the switching control of the memory can be omitted. However, in this case, when moving from one buffer area to the other buffer area, the calculation of the address is different from the address calculation in the buffer area, so that the program of the write control unit or the read control unit becomes complicated. There was a problem.

【0008】また、上記従来の技術では、データ配列の
行と列を並べ替える交錯法であったが、インタリーブに
よってはデータ配列の斜め方向への並べ替え、あるいは
ランダムな並べ替えなど各種のパターンがあり、これら
の場合、さらに書込み制御部または読出し制御部のプロ
グラムが複雑になるという問題があった。
Further, in the above-mentioned conventional technique, a crossing method of rearranging rows and columns of a data array is used. However, depending on interleaving, various patterns such as oblique rearrangement of a data array or random rearrangement may be employed. In these cases, there is a problem that the program of the write control unit or the read control unit is further complicated.

【0009】また、RAM などのメモリでは、それぞれの
アドレスは、大抵バイト単位、あるいはワード単位にア
クセスされることが多く、ビット単位あるいは数ビット
単位に並べ替えを行なうインタリーブ回路およびデイン
タリーブ回路では、メモリの各バイトあるいはワードを
示すアドレスにその容量より少ないビット数のデータを
蓄積して並べ替えを行なわなければならず、メモリの使
用効率が悪いという問題があった。
In a memory such as a RAM, each address is often accessed in a byte unit or a word unit. In an interleave circuit and a deinterleave circuit for rearranging in a bit unit or a several bit unit, Data having a smaller number of bits than the capacity must be stored in an address indicating each byte or word of the memory and rearrangement is performed, resulting in a problem that the efficiency of use of the memory is low.

【0010】本発明はこのような従来技術の欠点を解消
し、少なくとも1つのメモリを有効に使用して、かつこ
れをアクセスする各制御部に負担をかけることなく各種
のインタリーブを効率よく実行することができるインタ
リーブ回路およびデインタリーブ回路を提供することを
目的とする。
The present invention solves such disadvantages of the prior art, and efficiently executes at least one type of memory and effectively executes various types of interleaving without burdening each control unit accessing the memory. It is an object of the present invention to provide an interleave circuit and a deinterleave circuit that can perform the operations.

【0011】[0011]

【課題を解決するための手段】本発明によるインタリー
ブ回路およびデインタリーブ回路は上述の課題を解決す
るために、所定の配列のデータを入力してその配列を並
び替えて出力するインタリーブ回路、または並び替えた
データを元の配列に並び替えるデインタリーブにおい
て、少なくとも並び替えるべきデータ配列の周期のn倍
(nは2以上の整数)のバッファ領域を有する記憶手段
であって、それぞれのアドレス毎に、データが書き込ま
れるデータ領域と次のデータの書き込み先を示すアドレ
ス値があらかじめ書き込まれたアドレス領域とが形成さ
れた記憶手段と、記憶手段のそれぞれのアドレスのデー
タ領域に順次アクセスして入力するデータを書き込むデ
ータ書込み手段と、データ書き込み手段にてデータを書
き込む際に、そのアクセスしたアドレスのアドレス領域
に書き込まれているアドレス値を読み出して、そのアド
レス値をデータ書込み手段に設定する次アドレス設定手
段と、記憶手段に書き込まれたデータをデータ書込み手
段での書き込み順序とは異なる順序にて読み出すデータ
読出し手段であって、少なくともデータ書込み手段がア
クセスしているバッファ領域とは異なるバッファ領域を
順次アクセスしてデータを読み出すデータ読出し手段と
を含むことを特徴とする。
SUMMARY OF THE INVENTION An interleave circuit and a deinterleave circuit according to the present invention, in order to solve the above-mentioned problems, provide an interleave circuit which inputs data of a predetermined array, rearranges the array and outputs the data. In deinterleaving for rearranging the rearranged data into the original array, a storage means having a buffer area of at least n times (n is an integer of 2 or more) the period of the data array to be rearranged. A storage unit in which a data area to which data is written and an address area in which an address value indicating the next data write destination is written in advance, and data to be sequentially accessed and input to the data area of each address of the storage unit Data writing means for writing data, and the data writing means for writing data by the data writing means. The next address setting means for reading the address value written in the address area of the accessed address and setting the address value in the data writing means, and the order of writing the data written in the storage means in the data writing means Data reading means for reading data in a different order, wherein the data reading means reads data by sequentially accessing at least a buffer area different from a buffer area accessed by the data writing means.

【0012】この場合、アドレス領域にあらかじめ書き
込まれたアドレス値は、それぞれのバッファ領域内にて
最後にアクセスされるアドレスの次のアドレスを示すア
ドレス値が次のバッファ領域にて最初にアクセスされる
アドレスのアドレス値を示して、残りすべてのアドレス
値がそのバッファ領域内でのアドレスを示すアドレス値
であり、データ書込み手段は、任意のバッファ領域にて
最初にアクセスされるアドレスのアドレス値が初期アド
レスとしてあらかじめ設定されて、以降次アドレス設定
手段にて設定される記憶手段からのアドレス値に応動し
てそれぞれのバッファ領域のアドレスを順次アクセスす
ると有利である。
In this case, the address value previously written in the address area is such that the address value indicating the address next to the address accessed last in each buffer area is accessed first in the next buffer area. The address value of the address indicates the address value, all the remaining address values are address values indicating addresses in the buffer area, and the data writing means initializes the address value of the address accessed first in the arbitrary buffer area. It is advantageous to sequentially access the addresses of the respective buffer areas in response to the address values from the storage means which are set in advance as addresses and subsequently set by the next address setting means.

【0013】この場合、バッファ領域内でのアドレスを
示すアドレス値は、そのバッファ領域でのデータ配列の
列方向のアドレスを示すアドレス値であるとよい。
In this case, the address value indicating the address in the buffer area may be an address value indicating the address in the column direction of the data array in the buffer area.

【0014】また、バッファ領域内でのアドレスを示す
アドレス値は、そのバッファ領域内でのデータ配列のそ
れぞれ異なる任意のアドレスを示すアドレス値であって
もよい。
The address value indicating an address in the buffer area may be an address value indicating an arbitrary different address of a data array in the buffer area.

【0015】これらの場合、データ読出し手段は、少な
くともデータ書込み手段がアクセスする初期アドレスが
設定されたバッファ領域とは異なるバッファ領域の最小
のアドレス値を初期アドレスとして、そのバッファ領域
内でのアドレスを順次歩進して記憶手段の各アドレスを
シーケンシャルにアクセスするアドレス演算手段を含む
とよい。
In these cases, the data reading means sets the address in the buffer area at least as the minimum address value of a buffer area different from the buffer area in which the initial address accessed by the data writing means is set. It is preferable to include an address calculation means for sequentially accessing each address of the storage means by sequentially increasing.

【0016】また、次アドレス設定手段は、データ書込
み手段にて所定のアドレスを指定する際に用いられるラ
イトポインタに応動してそのアドレスの記憶内容を読み
出す読出し手段を含み、データ書込み手段は、次アドレ
ス設定手段にて記憶内容を読み出した後にそのアドレス
のデータ領域にデータを書き込むとよい。
Further, the next address setting means includes reading means for reading out the stored contents of the address in response to a write pointer used for designating a predetermined address by the data writing means. After reading out the stored contents by the address setting means, it is preferable to write data in the data area of the address.

【0017】さらに、次アドレス設定手段は、それぞれ
のアドレスから読み出した記憶内容のうちアドレス領域
のビット数に相当するアドレス値のみを抽出するアドレ
ス抽出手段を含むとよい。
Further, the next address setting means may include address extraction means for extracting only an address value corresponding to the number of bits of the address area from the stored contents read from each address.

【0018】さらに、本発明によるインタリーブ回路ま
たはデインタリーブ回路は、入力したそれぞれのデータ
に、アドレス領域のビット数に相当するマスクビットを
付加して記憶手段に供給するデータ入力手段を含むとよ
い。
Further, the interleave circuit or the deinterleave circuit according to the present invention may include data input means for adding mask bits corresponding to the number of bits of the address area to each input data and supplying the data to the storage means.

【0019】一方、本発明によるインタリーブ回路また
はデインタリーブ回路は、所定の配列のデータを入力し
てその配列を並び替えて出力するインタリーブ回路、ま
たは並び替えたデータを元の配列に並び替えるデインタ
リーブ回路において、少なくとも並び替えるべきデータ
配列の周期のn倍(nは2以上の整数)のバッファ領域
を有する記憶手段であって、それぞれのアドレス毎に、
データが書き込まれるデータ領域とデータ領域に書き込
まれたデータを読み出す際に次に読み出すべきデータが
書き込まれたアドレスを示すアドレス値があらかじめ書
き込まれたアドレス領域とが形成された記憶手段と、記
憶手段のバッファ領域毎にそれぞれのアドレスを順次ア
クセスしてそのデータ領域に順次入力するデータを書き
込むデータ書込み手段と、記憶手段に書き込まれたデー
タをデータ書込み手段での書き込み順序とは異なる順序
にて読み出すデータ読出し手段であって、少なくともデ
ータ書込み手段がアクセスしているバッファ領域とは異
なるバッファ領域を順次アクセスしてデータを読み出す
データ読出し手段と、データ読出し手段にてアクセスし
たアドレスの記憶内容の中からアドレス領域のアドレス
値を検出して、その値をデータ読出し手段に次アドレス
として設定する次アドレス設定手段とを含むことを特徴
とする。
On the other hand, the interleave circuit or the deinterleave circuit according to the present invention is an interleave circuit for inputting data of a predetermined array and rearranging the array and outputting the data, or a deinterleave circuit for rearranging the rearranged data to the original array. In a circuit, a storage means having a buffer area at least n times (n is an integer of 2 or more) of a cycle of a data array to be rearranged,
Storage means in which a data area in which data is written and an address area in which an address value indicating an address at which data to be read next when data written in the data area is written are previously written are formed; Data writing means for sequentially accessing respective addresses for each buffer area and writing data to be sequentially input to the data area, and reading data written in the storage means in a different order from the writing order in the data writing means. Data reading means for sequentially accessing at least a buffer area different from the buffer area accessed by the data writing means to read data; and a data reading means for storing data at an address accessed by the data reading means. Detects the address value in the address area and Characterized in that it comprises a next address setting means for setting a value in the data reading means as the next address.

【0020】この場合、アドレス領域にあらかじめ書き
込まれたアドレス値は、それぞれのバッファ領域内にて
最後にアクセスされるアドレスの次のアドレスを示すア
ドレス値が次のバッファ領域にて最初にアクセスされる
アドレスを示し、残りのアドレス値がそのバッファ領域
内でのアドレスを示すアドレス値であり、データ読出し
手段には、任意のバッファ領域にて最初にアクセスされ
るアドレスのアドレス値が初期アドレスとしてあらかじ
め設定されていると有利である。
In this case, the address value written in advance in the address area is such that the address value indicating the address next to the address accessed last in each buffer area is accessed first in the next buffer area. Indicates the address, the remaining address values are the address values indicating the addresses in the buffer area, and in the data reading means, the address value of the address accessed first in an arbitrary buffer area is preset as an initial address. It is advantageous to have

【0021】この場合、バッファ領域内でのアドレスを
示すアドレス値は、それぞれバッファ領域内でのデータ
配列の列方向のアドレスを示すアドレス値であるとよ
い。
In this case, the address value indicating the address in the buffer area may be an address value indicating the address in the column direction of the data array in the buffer area.

【0022】また、バッファ領域内でのアドレスを示す
アドレス値は、それぞれバッファ領域内でのデータ配列
のそれぞれ異なる任意のアドレスを示すアドレス値であ
るとよい。
The address value indicating an address in the buffer area may be an address value indicating an arbitrary different address of a data array in the buffer area.

【0023】これらの場合、データ書込み手段は、少な
くともデータ読出し手段がアクセスする初期アドレスが
設定されたバッファ領域と異なるバッファ領域の最小の
アドレス値を初期アドレスとして、そのバッファ領域内
でのアドレスをシーケンシャルにアクセスしてデータ配
列の行方向に順次データを書き込むとよい。
In these cases, the data writing means uses the minimum address value of a buffer area different from the buffer area in which at least the initial address accessed by the data reading means is set as an initial address, and sequentially addresses in the buffer area. To write data sequentially in the row direction of the data array.

【0024】また、本発明によるインタリーブ回路また
はデインタリーブ回路は、データ読出し手段にて読み出
したそれぞれのアドレスの記憶内容を受けて、その中か
らデータを抽出して元のビット数のデータとして出力す
るデータ出力手段を含むとよい。
Further, the interleave circuit or the deinterleave circuit according to the present invention receives the storage contents of the respective addresses read by the data reading means, extracts the data from the contents, and outputs the data as the original number of bits. It is preferable to include data output means.

【0025】[0025]

【発明の実施の形態】次に添付図面を参照して本発明に
よるインタリーブ回路およびデインタリーブ回路の実施
例を詳細に説明する。図1には、本発明によるインタリ
ーブ回路の一実施例が示されている。本実施例における
インタリーブ回路は、たとえば、ディジタル方式の携帯
電話の送信回路に適用されて、誤り訂正符号を含む所定
の符号化方式にて符号化された音声信号などの符号化デ
ータを送信する際に、そのデータ配列を並べ替えて誤り
訂正能力を高める交錯回路であり、たとえば、誤り訂正
能力L、符号長nの符号をm回交錯して(L,m,n は自然
数)、符号長mn、誤り訂正能力mLの符号系列を生成する
符号化回路である。
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram showing an embodiment of an interleave circuit and a deinterleave circuit according to the present invention; FIG. 1 shows an embodiment of an interleave circuit according to the present invention. The interleave circuit in the present embodiment is applied to, for example, a transmission circuit of a digital cellular phone and transmits coded data such as an audio signal coded by a predetermined coding method including an error correction code. In addition, a crossing circuit for rearranging the data array to increase the error correction capability is provided. For example, a code having an error correction capability L and a code length n is interlaced m times (L, m, n are natural numbers) to obtain a code length mn. , An encoding circuit that generates a code sequence having an error correction capability mL.

【0026】特に、本実施例のインタリーブ回路は、符
号長nのデータがm個配列される少なくとも2つのバッ
ファ領域が形成されたメモリを有して、そのメモリにて
データの並べ替えを行なう際に、それぞれのバッファ領
域の各アドレスの所定の領域に、次にデータの書き込み
を行なうべきアドレスを示すアドレス値をあらかじめ格
納しておき、それぞれのアドレス値をたどってデータの
書き込みを行なってデータを並べ替える点が主な特徴点
である。
In particular, the interleave circuit of the present embodiment has a memory in which at least two buffer areas in which m data of code length n are arranged are formed, and the data is rearranged in the memory. Then, an address value indicating an address to which data is to be written next is stored in a predetermined area of each address of each buffer area in advance, and data is written by following each address value and writing data. The point of rearrangement is the main feature point.

【0027】詳細には、本実施例におけるインタリーブ
回路は、図1に示すように、メモリ100 と、データ入力
部102 と、書込み制御部104 と、次アドレス設定部106
と、読出し制御部108 と、データ出力部110 とを含む。
メモリ100 は、任意のアドレスにデータを書込みおよび
読出し可能なRAM (random access memory)などの記憶回
路であり、本実施例では(n×m)のデータを蓄積可能
なバッファ領域が少なくとも2以上形成される容量を有
する記憶回路である。詳しくは本実施例のメモリ102
は、たとえば、2N個(Nはm×n)のアドレスを有し
て、0〜(N-1) のアドレスに、m×nのデータ配列を並
べ替える第1のバッファ領域が形成され、N〜(2N-1)の
アドレスに同配列のデータを並べ替える第2のバッファ
領域が形成されている。
More specifically, as shown in FIG. 1, the interleave circuit in the present embodiment includes a memory 100, a data input unit 102, a write control unit 104, and a next address setting unit 106.
And a read control unit 108 and a data output unit 110.
The memory 100 is a storage circuit such as a random access memory (RAM) that can write and read data at an arbitrary address. In this embodiment, at least two or more buffer areas capable of storing (n × m) data are formed. Storage circuit having the required capacity. Specifically, the memory 102 according to the present embodiment
Has, for example, 2N (N is m × n) addresses, and a first buffer area for rearranging an m × n data array is formed at addresses 0 to (N−1); A second buffer area for rearranging the data of the same array is formed at addresses (.about. (2N-1)).

【0028】また、それぞれのアドレスは、データが書
き込まれる所定ビット数のデータ領域Aと、次にデータ
を書き込むべきアドレスのアドレス値があらかじめ書き
込まれたアドレス領域Bとがそれぞれ割り当てられてい
る。具体的には、本実施例のメモリ100 は、それぞれの
アドレスが、たとえば、ワード単位に形成されて、デー
タ領域Aに6ビットが割り当てられて、アドレス領域B
に10ビットが割り当てられている。
Each address is assigned to a data area A having a predetermined number of bits to which data is written, and an address area B to which an address value of an address to which data is to be written next is written in advance. Specifically, in the memory 100 of the present embodiment, each address is formed, for example, in word units, 6 bits are assigned to the data area A, and the address area B
Are assigned 10 bits.

【0029】本実施例にてアドレス領域Bに書き込まれ
たそれぞれのアドレス値は、それぞれのバッファ領域に
て最後にアクセスされるアドレスに書き込まれたアドレ
ス値を除き、そのバッファ領域内にて順次データ配列の
列方向のアドレスを示す値である。第1のバッファ領域
の最後にアクセスされるアドレスには、第2のバッファ
領域の最初にアクセスされるアドレスを示すアドレス値
が書き込まれており、第2のバッファ領域の最後にアク
セスされるアドレスには第1のバッファ領域の最初にア
クセスされるアドレスを示すアドレス値が書き込まれて
いる。具体的には、8×10の配列のデータを図2に示す
ような1〜80の書き込み順序にてメモリ100 に書き込む
場合、たとえば、図3に示すように、それぞれのアドレ
スには、列方向に次の書込み先アドレスを示すアドレス
値が書き込まれている。たとえば第1のバッファ領域C
にて1行1列目の0番地に次の書込み先アドレスのアド
レス値を示す"8" が書き込まれ、その8番地には次の行
のアドレスを示す"16"が書き込まれ、以下同様に列方向
に"24","32","40",・・・のアドレス値が書き込まれ、さら
に、1列目の終わりの行、つまり10行目の72番地に次の
列の始めのアドレスを示す"1" が書き込まれている。2
列目も同様に、その列方向に次のアドレスを示すアドレ
ス値"9","17","25"・・・が書き込まれ、その列の終わりに
3列目の始めのアドレスを示すアドレス値"2" が書き込
まれている。以下同様に、3〜8列目にて、5列目の36
番地に書き込まれたアドレス値を除き、各列にて列方向
のアドレスを示すアドレス値が書き込まれて、各列の終
わりの番地に次の列の始めのアドレスを示すアドレス値
が書き込まれている。ただし、最終列の終わりの行、つ
まり80番地には0番地のアドレスを示す"0" が書き込ま
れて、第1のバッファ領域Cの最後にアクセスされる5
列5行目の36番地には第2のバッファ領域Dの最初にア
クセスされるアドレスを示す"124" が書き込まれてい
る。同様に、第2のバッファ領域Dのそれぞれのアドレ
スに、列方向の次のアドレスを示すアドレス値が書き込
まれて、最後にアクセスされる5列15行目の116 番地に
は第1のバッファ領域Cの最初にアクセスされるアドレ
スを示す"44"が書き込まれている。
In this embodiment, each address value written to the address area B is sequentially stored in the buffer area except for the address value written to the last accessed address in each buffer area. This is a value indicating the address in the column direction of the array. At the last accessed address of the first buffer area, an address value indicating the first accessed address of the second buffer area is written, and at the last accessed address of the second buffer area, Is written with an address value indicating the first accessed address of the first buffer area. More specifically, when data of an 8 × 10 array is written to the memory 100 in a write order of 1 to 80 as shown in FIG. 2, for example, as shown in FIG. Is written with an address value indicating the next write destination address. For example, the first buffer area C
Then, "8" indicating the address value of the next write destination address is written at address 0 in the first row and first column, "16" indicating the address of the next row is written at address 8, and so on. The address values of "24", "32", "40", ... are written in the column direction, and the start address of the next column is located at the last row of the first column, that is, at address 72 in the tenth row. "1" is written to indicate that 2
Similarly, an address value “9”, “17”, “25”... Indicating the next address is written in the column direction, and an address indicating the start address of the third column at the end of the column. The value "2" has been written. Similarly, in the third to eighth columns, 36 in the fifth column
Except for the address value written at the address, the address value indicating the address in the column direction is written in each column, and the address value indicating the start address of the next column is written at the end address of each column. . However, "0" indicating the address of address 0 is written in the last row of the last column, that is, address 80, and is accessed at the end of the first buffer area C.
At address 36 in the fifth row of the column, "124" indicating the address accessed first in the second buffer area D is written. Similarly, an address value indicating the next address in the column direction is written to each address of the second buffer area D, and the first buffer area is accessed at address 116 in the fifth column, 15th row. "44" indicating the address accessed at the beginning of C is written.

【0030】図1に戻ってデータ入力部102 は、所定の
符号化方式にて符号化されたデータをシリアルに入力し
てメモリ100 に順次供給する入力回路であり、本実施例
では入力データを一時蓄積して出力する所定ビット数の
レジスタ112 を含む。より詳しくは、本実施例のレジス
タ112 は、メモリ100 の各アドレスと同様にワード単位
に形成されたラッチ回路を含み、図4に示すように入力
データが書き込まれる第1の領域Eと、アドレス領域の
各ビットをマスクする第2の領域Fとを含み、所定ビッ
ト数のデータをワード単位のデータに変換してメモリ10
0 に供給するデータ供給回路である。具体的には、第2
の領域Fには、たとえば、2進数にてオール"1" の値が
あらかじめ書き込まれており、その値とメモリ100 のそ
れぞれのアドレスから読み出されたアドレス値とを乗算
して、第1の領域Eに書き込んだデータとともにメモリ
100 に供給する。
Returning to FIG. 1, the data input unit 102 is an input circuit that serially inputs data encoded by a predetermined encoding method and sequentially supplies the data to the memory 100. In this embodiment, the data input unit 102 receives the input data. It includes a register 112 of a predetermined number of bits for temporarily storing and outputting. More specifically, the register 112 according to the present embodiment includes a latch circuit formed in word units similarly to the respective addresses of the memory 100, and includes a first area E into which input data is written as shown in FIG. And a second area F for masking each bit of the area.
This is a data supply circuit that supplies 0. Specifically, the second
In the area F, for example, a value of all "1" is written in advance in a binary number, and the value is multiplied by the address value read from each address of the memory 100 to obtain the first value. Memory with data written in area E
Supply 100.

【0031】書込み制御部104 は、メモリ100 のそれぞ
れのアドレスにデータ入力部102 からのデータを書き込
むためのライトポインタ114 を生成する制御信号発生回
路であり、本実施例では初期アドレスとして第1のバッ
ファ領域の所定のアドレス値があらかじめ設定されて、
以降、次アドレス設定手段106 から設定されたアドレス
値に従ってメモリ100 の各アドレスをアクセスするアク
セス回路である。ちなみに、図3に示すデータ配列で
は、その最初にアクセスされる6行5列目の44番地のア
ドレス値があらかじめ初期アドレスとして設定されてい
る。より詳しくはライトポインタ114 は、アドレス領域
を読み出すための第1のイネーブル信号とデータを書き
込むための第2のイネーブル信号とを含み、第1のイネ
ーブル信号がメモリ100 に供給されると、そのアドレス
の内容が次アドレス設定部106 にて読み出されて、第2
のイネーブル信号によりデータ入力部102 からのデータ
がそのアドレスに書き込まれる。この際、書込み制御部
104 は、データ入力部102 にタイミング信号を供給す
る。
The write control section 104 is a control signal generating circuit for generating a write pointer 114 for writing data from the data input section 102 to each address of the memory 100. In this embodiment, the write control section 104 has a first address as an initial address. A predetermined address value of the buffer area is set in advance,
Hereinafter, the access circuit accesses each address of the memory 100 in accordance with the address value set by the next address setting means 106. Incidentally, in the data array shown in FIG. 3, the address value of address 44 in the sixth row and the fifth column accessed first is previously set as the initial address. More specifically, the write pointer 114 includes a first enable signal for reading an address area and a second enable signal for writing data. When the first enable signal is supplied to the memory 100, the write pointer 114 receives the address. Is read out by the next address setting unit 106, and the second
, The data from the data input unit 102 is written to the address. At this time, the write control unit
104 supplies a timing signal to the data input unit 102.

【0032】次アドレス設定部106 は、書込み制御部10
4 にてアクセスしたアドレスからの内容値を受けて、そ
のアドレス領域のアドレス値を抽出するアドレス検出回
路であり、本実施例では、たとえば、それぞれのアドレ
スからの内容値を一時蓄積してデータ領域Aに相当する
上位数ビットをマスクして読み出すレジスタ116 を含
む。読み出されたアドレス値はデータ入力部102 および
書込み制御部104 にそれぞれ供給される。
The next address setting unit 106 includes the write control unit 10
4 is an address detection circuit that receives the content value from the address accessed in step 4 and extracts the address value of that address area. In this embodiment, for example, the content value from each address is temporarily stored and the data area is It includes a register 116 for reading out the upper few bits corresponding to A by masking. The read address value is supplied to the data input unit 102 and the write control unit 104, respectively.

【0033】一方、読出し制御部108 は、メモリ100 の
それぞれのアドレスに書き込まれたデータを順次読み出
すためのリードポインタ118 を生成する制御信号生成回
路であり、本実施例では書込み制御部104 に設定された
初期アドレスを含むバッファ領域と異なるバッファ領域
の最小値のアドレスを示す初期アドレスが設定されてそ
のアドレス値を順次インクリメントするアドレス演算回
路を含む。ちなみに、図3に示すデータ配列では10行1
列目の80番地のアドレスが初期アドレスとして設定され
ており、そのアドレスから順次行方向にデータを読み出
すリードポインタを生成する。最終のアドレスのデータ
を読み出すと、0番地に戻って第1のバッファ領域のデ
ータを上記と同様に行方向にシーケンシャルに読み出す
リードポインタを生成する。
On the other hand, the read control unit 108 is a control signal generation circuit for generating a read pointer 118 for sequentially reading data written at each address of the memory 100. In this embodiment, the read control unit 108 is set in the write control unit 104. And an address operation circuit for setting an initial address indicating a minimum address of a buffer area different from the buffer area including the set initial address and sequentially incrementing the address value. Incidentally, in the data array shown in FIG.
The address at address 80 in the column is set as the initial address, and a read pointer for reading data sequentially from the address in the row direction is generated. When the data at the final address is read, the read pointer returns to address 0 and a read pointer for sequentially reading the data in the first buffer area in the row direction as described above is generated.

【0034】データ出力部110 は、読出し制御部108 に
てアクセスしたアドレスから読み出された内容値の中か
らデータを抽出するデータ抽出回路であり、たとえば、
本実施例では読み出された内容値を一時蓄積して、その
上位数ビットを元のビット数に戻して読み出すレジスタ
120 を含む。
The data output unit 110 is a data extraction circuit for extracting data from the content values read from the address accessed by the read control unit 108.
In the present embodiment, a register for temporarily storing the read content value and reading the upper several bits back to the original number of bits
Including 120.

【0035】以上のような構成において、本実施例によ
るインタリーブ回路の動作を説明すると、まず、データ
入力部102 に並び替えるべきデータが順次供給されて、
そのレジスタ112 の第1の領域Eに第1のデータが蓄積
されると、書込み制御部104ではあらかじめ設定された
初期アドレスに従ってライトポインタ114 を生成してメ
モリ100 をアクセスする。たとえば、図3に示す第1の
バッファ領域Cの44番地をアクセスして、まず、第1の
イネーブル信号をそのアドレスに供給する。これによ
り、44番地の内容値が読み出されて、その値が次アドレ
ス設定部106 のレジスタ116 に一旦書き込まれる。
In the above configuration, the operation of the interleave circuit according to the present embodiment will be described. First, data to be rearranged is sequentially supplied to the data input section 102.
When the first data is accumulated in the first area E of the register 112, the write control unit 104 generates a write pointer 114 according to a preset initial address and accesses the memory 100. For example, by accessing address 44 of the first buffer area C shown in FIG. 3, first, a first enable signal is supplied to the address. As a result, the content value of the address 44 is read, and the value is temporarily written to the register 116 of the next address setting unit 106.

【0036】次に、次アドレス設定部106 のレジスタ11
6 に読み出された内容値は、その中からアドレス領域F
のアドレス値、この場合、値"52"が抽出されて、データ
入力部102 および書込み制御部104 にそれぞれ供給され
る。これにより、データ入力部102 では、レジスタ112
の第2の領域Fのマスクビットとアドレス値とを乗算し
て、第1の領域Eのデータとともにメモリ100 に供給す
る16ビットのデータを形成する。
Next, the register 11 of the next address setting unit 106
6 is read from the address area F
, In this case, the value "52" is extracted and supplied to the data input unit 102 and the write control unit 104, respectively. As a result, in the data input unit 102, the register 112
Are multiplied by the address value and the mask bit in the second area F to form 16-bit data to be supplied to the memory 100 together with the data in the first area E.

【0037】次に、書込み制御部104 はデータ入力部10
2 にタイミング信号を供給して、かつ44番地のアドレス
に第2のイネーブル信号を供給する。これにより、デー
タ入力部102 からのデータが44番地に順次書き込まれ
る。この結果、44番地のアドレス領域Bのアドレス値が
そのままの状態にてデータ領域Aに並び替えるべきデー
タが有効に書き込まれる。
Next, the write control section 104 is connected to the data input section 10.
2 and a second enable signal to an address at address 44. As a result, the data from the data input unit 102 is sequentially written to the address 44. As a result, data to be rearranged in the data area A is effectively written while the address value of the address area B at address 44 remains unchanged.

【0038】次に、44番地へのデータの書き込みが終了
すると、書込み制御部104 は次アドレス設定部106 から
のアドレス値"52"に従って、上記と同様に次のライトポ
インタ114 を生成してメモリ100 に供給する。これによ
り、第1のイネーブル信号に応動して52番地がアクセス
されて、その内容値が次アドレス設定部106 に順次読み
出される。次に、次アドレス設定部106 は、上記と同様
に、読み出された内容値の中から抽出した次アドレスを
示すアドレス値、この場合、値"60"を抽出してデータ入
力部102 および書込み制御部104 に順次供給する。この
結果、データ入力部102 にて上記と同様にマスク処理さ
れたデータが形成されて、そのデータが書込み制御部10
4 からのタイミング信号に応動してメモリ100 に供給さ
れて、そのデータが52番地をアクセスする第2のイネー
ブル信号によって上記と同様にそのアドレスに書き込ま
れる。
Next, when the writing of the data to the address 44 is completed, the write control unit 104 generates the next write pointer 114 in the same manner as described above in accordance with the address value "52" from the next address setting unit 106 and stores it in the memory. Supply 100. As a result, address 52 is accessed in response to the first enable signal, and its contents are sequentially read out to the next address setting unit 106. Next, similarly to the above, the next address setting unit 106 extracts an address value indicating the next address extracted from the read content values, in this case, the value “60”, and outputs the address value to the data input unit 102 and the write It is sequentially supplied to the control unit 104. As a result, masked data is formed in the data input unit 102 in the same manner as described above, and the data is written in the write control unit 10.
4 is supplied to the memory 100 in response to the timing signal, and the data is written to the address by the second enable signal for accessing the address 52 in the same manner as described above.

【0039】52番地へのデータの書き込みが終了する
と、上記と同様に、そのアドレスのアドレス領域Bに書
き込まれていたアドレス値"60"に従ってライトポインタ
114 が生成されて、その60番地のアドレスがアクセスさ
れ、上記と同様にアドレス領域のアドレス値"68"が読み
出された後に、60番地のアドレスに順次データが書き込
まれる。
When the writing of data to the address 52 is completed, the write pointer is written in accordance with the address value "60" written in the address area B of that address in the same manner as described above.
114 is generated, the address at address 60 is accessed, and the address value "68" in the address area is read out in the same manner as described above, and then data is sequentially written to the address at address 60.

【0040】以下同様に、データを書き込んだ前回のア
ドレスのアドレス領域に書き込まれていたアドレス値に
従って、たとえば、順次列方向に、68番地、76番地、次
いで次の列の5番地から13,21,29・・・ のそれぞれのアド
レスに、次の書込み先アドレスを示すアドレス値を読み
出しつつ、データが書き込まれてゆく。そして、第1の
バッファ領域Cの最終列最終行の80番地に達すると、そ
のアドレス領域のアドレス値"0" に従って第1のバッフ
ァ領域Cの先頭の1列1行目に戻り、さらに8,16,24・・・
のそれぞれのアドレスに上記と同様に入力したデータが
順次書き込まれてゆく。
Similarly, according to the address value written in the address area of the previous address where the data was written, for example, in the column direction, addresses 68, 76, and then, from address 5 in the next column to 13,21 , 29..., Data is written while reading the address value indicating the next write destination address. Then, when the address reaches 80 in the last column and last row of the first buffer area C, the process returns to the first column and first row of the first buffer area C according to the address value “0” of the address area, and further, 16,24 ・ ・ ・
The data input in the same manner as described above are sequentially written to the respective addresses.

【0041】その結果、第1のバッファ領域Cのすべて
のアドレスにデータが書き込まれて初期アドレスの前の
アドレス、たとえば、36番地へのデータの書き込みが終
了すると、そのアドレスのアドレス領域に書き込まれて
いた第2のバッファ領域Dの最初にアクセスされるアド
レスを示すアドレス値、この場合"124" に従って第2の
バッファ領域Dの最初のアドレスへのデータの書き込み
が開始される。
As a result, when the data is written to all the addresses in the first buffer area C and the writing of the data to the address before the initial address, for example, address 36 is completed, the data is written to the address area of that address. Data writing to the first address of the second buffer area D is started in accordance with the address value indicating the address accessed first of the second buffer area D, in this case, "124".

【0042】第2のバッファ領域Dでも第1のバッファ
領域Cと同様に、それぞれ前回のアドレスのアドレス領
域に書き込まれていたアドレス値に従って、その領域内
にて順次列方向にデータが書き込まれていく。
In the second buffer area D, similarly to the first buffer area C, data is sequentially written in the column direction in the area according to the address value written in the address area of the previous address. Go.

【0043】一方、読出し制御部108 では、書込み制御
部104 が起動してその初期アドレス"44"に従って第1の
バッファ領域Cへの書き込みを開始した際に、あらかじ
め設定されている初期アドレス、この場合、第2のバッ
ファ領域Dの先頭の1列11行目のアドレス、つまり80番
地をアクセスするリードポインタ118 を生成してメモリ
100 に供給する。正確には、書込み制御部104 からの44
番地へのデータの書き込みが終了した後に80番地にその
読み出しをアクセスするイネーブル信号が供給される。
これにより、80番地の内容値が読み出されてデータ出力
部110 のレジスタ120 に供給される。
On the other hand, in the read control unit 108, when the write control unit 104 is activated and starts writing to the first buffer area C in accordance with the initial address "44", a preset initial address, In this case, a read pointer 118 for accessing the address of the first column and the 11th row of the second buffer area D, that is, address 80, is generated and stored in the memory.
Supply 100. To be precise, 44 from the write control unit 104
After the data writing to the address is completed, an enable signal for accessing the address is supplied to the address 80.
As a result, the content value at the address 80 is read and supplied to the register 120 of the data output unit 110.

【0044】次に、データ出力部110 ではレジスタ120
に蓄積した内容値からデータを取り出して出力する。こ
の場合、データがまだ書き込まれていないので、空読み
となる。次に、80番地の読み出しが終了すると、読出し
制御部108 は初期アドレスをインクリメントして81番地
をアクセスするリードポインタ116 を生成してメモリ10
0 に供給する。この際のタイミングも上記と同様に書込
み制御部104 にて第2のアドレスにデータを書き込んだ
後に、81番地のアドレスをアクセスしてその内容値を読
み出す。この場合もデータ出力部110 にはデータが書き
込まれていない内容値が供給されて上記と同様に空読み
となる。
Next, in the data output section 110, the register 120
The data is extracted from the content value stored in and output. In this case, since the data has not been written yet, the idle reading is performed. Next, when the reading of the address 80 is completed, the read control unit 108 increments the initial address, generates a read pointer 116 for accessing the address 81, and generates a read pointer 116.
Feed to 0. At this time, the data is written to the second address by the write controller 104 in the same manner as described above, and then the address at the address 81 is accessed to read the content value. Also in this case, the data output unit 110 is supplied with a content value in which no data is written, and the data is read in the same manner as described above.

【0045】以下、読出し制御部108 ではアドレス値を
順次82,83,84・・・ とインクリメントしてメモリ100 のそ
れぞれのアドレスを行方向にアクセスして、その内容値
を読み出していく。これらの場合もデータ出力部110 で
は空読みが続けられる。そして、第2のバッファ領域D
の最後のアドレス、つまり159 番地の読み出しが終了す
ると、読出し制御部108 はさらにアドレス値をインクリ
メントして、その結果第1のバッファ領域Cの先頭の番
地"0" に戻り、第1のバッファ領域でのデータの読み出
しが開始される。
Hereinafter, the read control unit 108 sequentially increments the address value to 82, 83, 84,..., Accesses each address of the memory 100 in the row direction, and reads the content value. In these cases as well, the data output unit 110 continues to perform idle reading. Then, the second buffer area D
When the reading of the last address of address 159, that is, address 159, is completed, the read control unit 108 further increments the address value, and as a result, returns to the first address "0" of the first buffer area C and returns to the first buffer area C. Of the data is started.

【0046】第1のバッファ領域Cでも読出し制御部10
8 は、第2のバッファ領域Dと同様にアドレス値を順次
インクリメントしてその行方向にそれぞれのアドレスを
アクセスする。これにより、第1のバッファ領域Cで
は、上述したようにすでにすべてのアドレスのデータ領
域に入力したデータが書き込まれており、上記と同様に
読出し制御部108 からのライトポインタ118 に応動して
読み出されたそれぞれのアドレスの内容値は、順次デー
タ出力部110 に供給されて、その中からデータ領域のデ
ータが順次取り出され、元のビット数に戻されて出力さ
れる。この結果、第1のバッファ領域Cにて順次列方向
に書き込まれたデータが行方向に読み出されて、そのデ
ータ配列の並べ替えが実行される。
In the first buffer area C, the read control unit 10
8 accesses the respective addresses in the row direction by sequentially incrementing the address value similarly to the second buffer area D. As a result, in the first buffer area C, the input data has already been written in the data areas of all addresses as described above, and the read data is read in response to the write pointer 118 from the read control unit 108 in the same manner as described above. The output content values of the respective addresses are successively supplied to the data output unit 110, from which the data of the data area is sequentially taken out, returned to the original number of bits, and output. As a result, the data sequentially written in the column direction in the first buffer area C is read out in the row direction, and the data array is rearranged.

【0047】他方、第2のバッファ領域Dでは、書込み
制御部104 の制御により順次その列方向に書き込みが続
けられ、すべてのアドレスに書き込みが終了すると、そ
の最後にアクセスしたアドレスにて読み出されたアドレ
ス値、この場合、5列15行目のアドレスに書き込まれて
いたアドレス値"44"に従って、再び第1のバッファ領域
Cに戻り、上記と同様に第1のバッファ領域Cのそれぞ
れのアドレスへのデータの書き込みが続けられる。
On the other hand, in the second buffer area D, writing is sequentially continued in the column direction under the control of the writing control unit 104, and when writing is completed for all addresses, reading is performed at the last accessed address. In accordance with the address value, in this case, the address value “44” written at the address of the fifth column and the 15th row, the process returns to the first buffer area C again, and the respective addresses of the first buffer area C are similarly Writing of data to is continued.

【0048】この時点にて読出し制御部108 では、第1
のバッファ領域Cの最終のアドレスつまり79番地の読み
出しが終了して、そのアドレスをインクリメントして、
80番地、つまり再び第2のバッファ領域Dにて上記のよ
うに書き込まれたデータの読み出しを実行する。
At this point, the read control unit 108
After the reading of the final address of the buffer area C, that is, address 79, is completed, the address is incremented,
The data written as described above is read out at address 80, that is, in the second buffer area D again.

【0049】以下同様に、書込み制御部104 では前回ア
クセスしたアドレスに書き込まれていたアドレス値に従
って順次そのバッファ領域でのデータ配列の列方向にそ
れぞれのアドレスをアクセスしてデータを書き込み、読
出し制御部108 では書込み制御部104 がアクセスするバ
ッファ領域とは異なる他方のバッファ領域にて順次アド
レス値をインクリメントしてそのデータ配列の行方向に
それぞれのアドレスをアクセスしてデータを読み出して
いく。この結果、データ入力部102 を介して入力したデ
ータは、メモリ100 にてそのデータ配列が並べ替えられ
てデータ出力部110 から順次出力される。
Similarly, the write control unit 104 sequentially accesses each address in the column direction of the data array in the buffer area in accordance with the address value written to the previously accessed address to write and read data. At 108, the address value is sequentially incremented in the other buffer area different from the buffer area accessed by the write control unit 104, and each address is accessed in the row direction of the data array to read data. As a result, the data input through the data input unit 102 is rearranged in the memory 100 in the data array, and is sequentially output from the data output unit 110.

【0050】以上のように本実施例のインタリーブ回路
によれば、データを書き込むメモリ100 のそれぞれのア
ドレスに、データが書き込まれるデータ領域Aと次のデ
ータの書込み先アドレスを示すアドレス値があらかじめ
書き込まれたアドレス領域Bとを形成して、データを書
き込む際にそのアドレス領域Bのアドレス値を次アドレ
ス設定部106 に読み出して、そのアドレス値に従って順
次、次のアドレスを書込み制御部104 に設定するので、
書込み制御部104 では複雑なアドレス演算を実行するこ
となくメモリ100 のそれぞれのアドレスを順次アクセス
することができる。
As described above, according to the interleave circuit of the present embodiment, the data area A to which data is written and the address value indicating the write destination address of the next data are written in advance to each address of the memory 100 to which data is written. When writing data, the address value of the address area B is read out to the next address setting section 106, and the next address is sequentially set in the write control section 104 according to the address value. So
The write control unit 104 can sequentially access each address of the memory 100 without executing complicated address calculation.

【0051】特に、第1のバッファ領域から第2のバッ
ファ領域に移る際、および第2のバッファ領域から第1
のバッファ領域に移る際に、あらかじめそれらの最初に
アクセスされるアドレスを示すアドレス値を他方のバッ
ファ領域の最後にアクセスされるアドレスに書き込んで
おくのみにて、それぞれのバッファ領域から他方のバッ
ファ領域に円滑に移ることができ、2つの領域に亙って
連続的なデータの書き込みを実行することができる。
In particular, when moving from the first buffer area to the second buffer area, and when moving from the second buffer area to the first buffer area,
When moving to the buffer area of the other buffer area, only the address value indicating the first accessed address is written to the last accessed address of the other buffer area in advance. And the continuous writing of data over the two areas can be performed.

【0052】また、本実施例の読出し制御部108 では、
書込み制御部104 がその初期アドレスにて最初にアクセ
スするアドレスのバッファ領域とは異なるバッファ領域
の初期アドレスから順次、そのアドレス値をインクリメ
ントしてデータの読み出しを行なうので、単にアドレス
値を歩進するのみでそれぞれのバッファ領域およびバッ
ファ領域間での複雑なアドレス演算を必要としない。
In the read control unit 108 of this embodiment,
Since the write control unit 104 sequentially reads data by incrementing the address value from the initial address of the buffer area different from the buffer area of the address accessed first by the initial address, the address value is simply incremented. Only the buffer area and complicated address calculation between the buffer areas are not required.

【0053】したがって、1つのメモリ100 に形成され
た2つのバッファ領域にて連続したデータ配列の書込み
および読出しをそれぞれの制御部に負担をかけることな
く、円滑に実行することができる。
Therefore, writing and reading of a continuous data array in two buffer areas formed in one memory 100 can be performed smoothly without imposing a load on the respective control units.

【0054】図5には上記実施例によるインタリーブ回
路が適用された、たとえばCDMA (code division multip
le access)方式の携帯電話の送信部の一例が示されてい
る。この図において、上記インタリーブ回路は、インタ
リーブ部14として符号化回路10に搭載されて、その前段
のフレーム構成部12にて誤り訂正符号を含む所定の符号
化方式にて符号化された音声信号などの符号化データを
受けて、そのデータ配列を並べ替えて次段の拡散変調部
16に供給する。この場合、インタリーブ回路14は、符号
化データのそれぞれのビットの配列を並べ替えて出力す
る。拡散変調部16では、インタリーブ回路14にて並べ替
えたデータ系列を畳み込み符号化し、さらに拡散符号な
どにて拡散変調して、高周波(RF)部18に供給する。高周
波部18は、拡散変調された信号を高周波信号に変換して
アンテナ20から送信する。
FIG. 5 shows an example in which the interleave circuit according to the above embodiment is applied, for example, CDMA (code division multip
An example of a transmission unit of a mobile phone of the le access type is shown. In this figure, the interleave circuit is mounted on an encoding circuit 10 as an interleave unit 14, and an audio signal or the like encoded by a predetermined encoding method including an error correction code in a frame configuration unit 12 at the preceding stage. Receiving the coded data, rearranging the data array, and
Supply 16 In this case, the interleave circuit 14 rearranges and arranges the arrangement of each bit of the encoded data. The spread modulation unit 16 performs convolutional coding on the data sequence rearranged by the interleave circuit 14, further performs spread modulation using a spread code or the like, and supplies the result to a radio frequency (RF) unit 18. The high-frequency unit 18 converts the spread-modulated signal into a high-frequency signal and transmits the signal from the antenna 20.

【0055】次に、図6には本発明によるデインタリー
ブ回路の一実施例が示されている。本実施例によるデイ
ンタリーブ回路は、たとえば、上記実施例のインタリー
ブ回路にて並べ替えたデータ系列を元の配列に並べ替え
る逆交錯回路であり、たとえば、図5のインタリーブ回
路14と同様に、たとえば図7に示す携帯電話の受信部の
復号回路26に適用される。なお、図6において、上記実
施例と同様の部分には同符号を付し、その説明は省略す
る。
FIG. 6 shows an embodiment of the deinterleave circuit according to the present invention. The deinterleave circuit according to the present embodiment is, for example, a reverse crossover circuit that rearranges the data sequence rearranged by the interleave circuit of the above-described embodiment into the original arrangement. For example, like the interleave circuit 14 of FIG. This is applied to the decoding circuit 26 of the receiving section of the mobile phone shown in FIG. In FIG. 6, the same parts as those in the above embodiment are denoted by the same reference numerals, and description thereof will be omitted.

【0056】図6において、上記実施例と異なる点は、
書込み制御部200 がメモリ100 のそれぞれのアドレスを
順次シーケンシャルにアクセスしてデータ入力部102 か
らのデータをメモリ100 でのデータ配列の行方向に向か
って順次書き込む点と、その際にそれぞれのアドレスの
アドレス領域の内容値が変わらないようにアドレス値を
読み出してデータ入力部102 に戻すアドレス値抽出部20
2 を含む点と、メモリ100 の読出し側に次アドレス設定
部204 が設けられて、読出し制御部206 がその次アドレ
ス設定部204 からのあらかじめメモリ100 のそれぞれの
アドレスのアドレス領域に書き込まれた次のアドレスを
示すアドレス値に従ってメモリ100 のそれぞれのアドレ
スを順次アクセスする点とである。
FIG. 6 is different from the above embodiment in that
A point at which the write control unit 200 sequentially accesses the respective addresses of the memory 100 to sequentially write data from the data input unit 102 in the row direction of the data array in the memory 100, and at that time, An address value extraction unit 20 that reads an address value and returns it to the data input unit 102 so that the content value of the address area does not change.
2 and the next address setting unit 204 is provided on the read side of the memory 100, and the read control unit 206 writes the next address from the next address setting unit 204 to the address area of each address of the memory 100 in advance. In that each address of the memory 100 is sequentially accessed in accordance with the address value indicating the address of the memory 100.

【0057】詳しくは、書込み制御部200 は、メモリ10
0 のそれぞれのアドレスをシーケンシャルにアクセスす
るライトポインタ210 を生成する制御信号生成回路であ
り、本実施例では、初期アドレスとして第1のバッファ
領域の先頭アドレス、つまり0番地が設定されてそのア
ドレスを順次インクリメントするアドレス演算部を含
む。
More specifically, the write control unit 200
This is a control signal generation circuit that generates a write pointer 210 for sequentially accessing each address of 0. In the present embodiment, the start address of the first buffer area, that is, address 0, is set as the initial address, and the address is set to 0. Includes an address operation unit that increments sequentially.

【0058】アドレス値抽出部202 は、書込み制御部20
0 にてアクセスしたアドレスの内容値を読み出してその
中からアドレス領域にあらかじめ書き込まれているアド
レス値を抽出してデータ入力部102 に供給する回路であ
る。
The address value extraction unit 202
A circuit for reading the contents of the address accessed at 0, extracting an address value previously written in the address area from the contents, and supplying it to the data input unit 102.

【0059】次アドレス設定部204 は、読出し制御部20
6 がアクセスしたアドレスの内容値からアドレス値を抽
出するアドレス抽出回路であり、本実施例では抽出した
アドレス値を読出し制御部206 に次のデータの読出し先
アドレスとして設定する。
The next address setting unit 204 is provided with the read control unit 20
Reference numeral 6 denotes an address extraction circuit for extracting an address value from the content value of the accessed address. In this embodiment, the extracted address value is set in the read control unit 206 as a read destination address of the next data.

【0060】読出し制御部206 は、次アドレス設定部20
4 からのアドレス値に従ってメモリ100 のそれぞれのア
ドレスをアクセスするリードポインタ212 を生成する制
御信号生成回路であり、本実施例では、初期アドレスと
して第2のバッファ領域にて最初にアクセスされるアド
レス、たとえば、図3に示す例では5列16行目のアドレ
スを示す"144" があらかじめ設定されている。
The read control unit 206 includes the next address setting unit 20
4 is a control signal generating circuit for generating a read pointer 212 for accessing each address of the memory 100 in accordance with the address value from the address 4. In the present embodiment, an address initially accessed in the second buffer area as an initial address, For example, in the example shown in FIG. 3, "144" indicating the address of the fifth column and the 16th row is set in advance.

【0061】このような構成において、まず、第1のデ
ータがデータ入力部102 に供給されると、書込み制御部
200 はあらかじめ設定された初期アドレスに従ってライ
トポインタ210 を生成して、メモリ100 をアクセスす
る。これにより、たとえば、図3に示す例では、第1の
バッファ領域Cの0番地がアクセスされて、第1のデー
タがそのデータ領域に書き込まれる。正確には、上記実
施例と同様にライトポインタ210 により、まず、第1の
イネーブル信号がそのアドレスに供給されて内容値がア
ドレス値抽出部202 に読み出されて、その内容値の中か
らアドレス値が抽出されてデータ入力部102 に供給され
る。これにより、データ入力部102 は上記実施例と同様
にそのアドレス値にてマスクした16ビットのデータを形
成し、第2のイネーブル信号に応動したタイミング信号
により形成したデータをメモリ100に供給する。
In such a configuration, first, when the first data is supplied to the data input unit 102, the write control unit
200 generates a write pointer 210 according to a preset initial address and accesses the memory 100. Thereby, for example, in the example shown in FIG. 3, address 0 of the first buffer area C is accessed, and the first data is written to the data area. To be more precise, similarly to the above embodiment, first, the first enable signal is supplied to the address by the write pointer 210, the content value is read out to the address value extracting section 202, and the address value is read from the content value. The value is extracted and supplied to the data input unit 102. As a result, the data input unit 102 forms 16-bit data masked by the address value in the same manner as in the above-described embodiment, and supplies the data formed by the timing signal in response to the second enable signal to the memory 100.

【0062】次に、書込み制御部200 は、初期アドレス
をインクリメントして、たとえば1番地をアクセスする
ライトポインタ210 をメモリ100 に供給する。これによ
り、データ入力部102 からのデータが1番地に書き込ま
れる。
Next, the write controller 200 increments the initial address and supplies the memory 100 with a write pointer 210 for accessing address 1, for example. As a result, the data from the data input unit 102 is written to address 1.

【0063】以下同様に、書込み制御部200 は、順次ア
ドレス値をインクリメントしてメモリ100 の2,3,4・・・の
アドレスを順次アクセスして、データ入力部102 からの
データを順次データ配列の行方向に書き込んでいく。
Similarly, the write control unit 200 sequentially increments the address value, sequentially accesses the addresses 2, 3, 4,... In the memory 100, and sequentially arranges the data from the data input unit 102 into a data array. Is written in the row direction.

【0064】一方、読出し制御部206 では、書込み制御
部200 にて初期アドレスの0番地に書き込みを行なった
後に、第2のバッファ領域Dの最初にアクセスされる初
期アドレスにて指示された124 番地をアクセスするリー
ドポインタ212 をメモリ100に供給する。これにより、
そのアドレスの内容値が読み出されて、データ出力部11
0 および次アドレス設定部204 に供給される。データ出
力部110 では、上記実施例と同様に空読みとなる。次ア
ドレス設定部204 では、読み出された内容値の中からア
ドレス値、この場合、"132”を抽出して、その値を読出
し制御部206 に設定する。
On the other hand, in the read control unit 206, after the write control unit 200 writes data to the initial address 0, the address 124 specified by the initial address accessed first in the second buffer area D is used. Is supplied to the memory 100. This allows
The content value of the address is read and the data output unit 11
0 and supplied to the next address setting unit 204. In the data output unit 110, the idle reading is performed as in the above embodiment. The next address setting unit 204 extracts an address value, in this case, "132" from the read content values, and sets the value in the read control unit 206.

【0065】次に、読出し制御部206 は、124 番地のア
ドレスのデータの読出しが終了すると、次に設定された
132 番地のアドレスをアクセスするリードポインタを生
成してメモリ100 に供給する。これにより、上記と同様
にそのアドレスの内容値がデータ出力部110 および次ア
ドレス設定部204 に供給されて、データの出力および次
アドレスの設定が実行される。ただし、データの出力は
空読みにより値"0" の出力あるいは廃棄となる。
Next, when the reading of the data at the address of address 124 is completed, the read control unit 206 sets
A read pointer for accessing the address at address 132 is generated and supplied to the memory 100. As a result, the content value of the address is supplied to the data output unit 110 and the next address setting unit 204 in the same manner as described above, and the output of data and the setting of the next address are executed. However, the output of data is a value "0" output or discarded by blank reading.

【0066】以下同様に、アクセスしたアドレスのアド
レス領域にあらじめ書き込まれたアドレス値に従って、
順次列方向への読み出しが実行される。そして、第2の
バッファ領域Dのすべての読み出しが終了すると、たと
えば、その最後にアクセスしたアドレスに書き込まれた
アドレス値"44"に従って、第1のバッファ領域Cでのデ
ータの読み出しに移る。この時点にて第1のバッファ領
域Cでは、すべてのアドレスに、たとえば、図2に示す
ようにインタリーブ回路にて並べ替えたデータ配列と同
様の配列にてそれぞれのデータが書き込まれている。つ
まり、0番地に元の配列の36番目のデータが書き込ま
れ、その行方向に順次46,56,66・・・ 番目のそれぞれのデ
ータが書き込まれている。
Similarly, according to the address value previously written in the address area of the accessed address,
Reading is sequentially performed in the column direction. When the reading of all data in the second buffer area D is completed, the process proceeds to reading data in the first buffer area C according to, for example, the address value “44” written in the last accessed address. At this time, in the first buffer area C, each data is written to all the addresses, for example, in the same arrangement as the data arrangement rearranged by the interleave circuit as shown in FIG. That is, the 36th data of the original array is written at address 0, and the 46th, 56th, 66th,... Data are sequentially written in the row direction.

【0067】そこで、読出し制御部206 は、まず前回の
アドレスから読み出したアドレス値に従って、"44"番地
をアクセスしてその内容値を読み出すと、元の配列の1
番目のデータが読み出される。これにより、データ出力
部110 にそのデータを含む44番地の内容値が供給され
て、その中から元のデータを抽出して出力する。
Therefore, the read control unit 206 first accesses the address "44" in accordance with the address value read from the previous address and reads its content value.
The second data is read. As a result, the content value at address 44 including the data is supplied to the data output unit 110, and the original data is extracted from the content value and output.

【0068】一方、次アドレス設定部204 では44番地の
内容値から次のアドレス値"52"を抽出して、上記と同様
に読出し制御部206 に設定する。これにより、読出し制
御部206 は、そのアドレスをアクセスして内容値を読み
出すと、元の配列の2番目のデータが読み出される。
On the other hand, the next address setting section 204 extracts the next address value "52" from the content value of the address 44 and sets it in the read control section 206 in the same manner as described above. Accordingly, when the read control unit 206 accesses the address and reads the content value, the second data of the original array is read.

【0069】以下同様に、読出し制御部206 は、次アド
レス設定部204 に読み出されたアドレス値に従って順次
それぞれのアドレスを列方向にアクセスして、インタリ
ーブ回路にて並べ替えた元の配列の順序のデータを含む
内容値をメモリ100 から読み出してデータ出力部110 に
供給する。この結果、データ出力部110 から元の配列の
データが出力されて、たとえば、図7に示す次段のフレ
ーム再構成部30に供給される。
Similarly, the read control unit 206 sequentially accesses the respective addresses in the column direction according to the address values read by the next address setting unit 204, and returns the order of the original array rearranged by the interleave circuit. The content value including the data is read out from the memory 100 and supplied to the data output unit 110. As a result, the data of the original array is output from the data output unit 110 and supplied to, for example, the next-stage frame reconstructing unit 30 shown in FIG.

【0070】なお、図7において、本実施例のデインタ
リーブ回路28には、畳み込み符号化された状態のデータ
系列が供給される。詳しくは、たとえば図5に示す携帯
電話の送信部から送信された高周波信号は、アンテナ32
を介して高周波部22に受信される。高周波部22では、高
周波信号をベースバンド信号に変換して逆拡散部24に供
給する。逆拡散部24では、送信部の拡散変調部16にて拡
散した拡散符号と同様の拡散符号にて高周波部22からの
ベースバンド信号を逆拡散して、元の畳み込み符号化さ
れたデータ系列を抽出してデインタリーブ回路28に供給
する。たとえば畳み込み符号のレートが1/2 のレートで
あれば、送信部のインタリーブ回路14からのそれぞれの
ビットは2ビット1シンボルのデータとなり、1/3 のレ
ートであれば、3ビット1シンボルのデータ系列となっ
ている。したがって、逆拡散部24からデインタリーブ回
路28に供給されるデータは、それぞれ複数ビットのデー
タであり、本実施例ではデータ入力部102 の第1の領域
にたとえば、3ビットのデータを蓄積して、そのデータ
がメモリ100 の6ビットのデータ領域Aに書き込まれ、
さらにアドレス領域の値とともに読み出されてデータ出
力部110 に供給される。これにより、データ出力部110
は、16ビットの内容値から3ビットの元のデータを抽出
してフレーム再構成部30に供給する。フレーム再構成部
30では、たとえば、ビタビ復号により3ビットのデータ
から1ビットのデータを復号して、また誤り訂正して元
のフレームを再構成する。
In FIG. 7, a data sequence in a convolutionally coded state is supplied to the deinterleave circuit 28 of this embodiment. More specifically, for example, a high-frequency signal transmitted from the transmission unit of the mobile phone shown in FIG.
Is received by the high-frequency unit 22 via the. The high frequency section 22 converts the high frequency signal into a baseband signal and supplies the baseband signal to the despreading section 24. The despreading unit 24 despreads the baseband signal from the high-frequency unit 22 with the same spreading code as the spreading code spread by the spreading modulation unit 16 of the transmitting unit, and converts the original convolutionally encoded data sequence. The extracted data is supplied to the deinterleave circuit 28. For example, if the rate of the convolutional code is 1/2, each bit from the interleave circuit 14 of the transmission unit becomes 2-bit 1-symbol data, and if the rate is 1/3, 3-bit 1-symbol data It is affiliated. Therefore, the data supplied from the despreading unit 24 to the deinterleave circuit 28 is a plurality of bits of data. In this embodiment, for example, 3-bit data is stored in the first area of the data input unit 102. Is written to the 6-bit data area A of the memory 100,
Further, the data is read out together with the value of the address area and supplied to the data output unit 110. Thereby, the data output unit 110
Extracts the original 3-bit data from the 16-bit content value and supplies it to the frame reconstruction unit 30. Frame reconstruction unit
At 30, for example, 1-bit data is decoded from 3-bit data by Viterbi decoding, and error correction is performed to reconstruct the original frame.

【0071】以上のように本実施例のデインタリーブ回
路によれば、書込み制御部200 にて順次シーケンシャル
に書き込んだメモリ100 のそれぞれのアドレスのデータ
を読み出す際に、上記実施例のインタリーブ回路と同様
にあらじめ書き込まれたアドレス値に従って読み出すの
で、読出し制御部206 にて複雑なアドレス演算を行なう
ことなく、データを元の配列に並べ替えて有効に読み出
すことができる。
As described above, according to the deinterleave circuit of this embodiment, when the data of each address of the memory 100 sequentially written by the write control unit 200 is read out, the same as the interleave circuit of the above embodiment. Since the data is read in accordance with the previously written address value, the data can be rearranged into the original array and read effectively without performing a complicated address operation in the read control unit 206.

【0072】特に、上記実施例と同様にあらかじめ書き
込まれたアドレス値に従ってそれぞれのアドレスをアク
セスすることにより、第1のバッファ領域と第2のバッ
ファ領域との間の2つの領域に亙って連続的なデータの
読み出しを円滑に実行することができる。これととも
に、書込み制御部200 ではアドレス値を単に歩進するの
みであるので、それぞれのバッファ領域内およびバッフ
ァ領域間において複雑なアドレス演算を必要としない。
したがって、1つのメモリ100 に形成された2つのバッ
ファ領域にて連続したデータ配列の書込みおよび読出し
をそれぞれの制御部に負担をかけることなく、円滑に実
行することができる。
In particular, by accessing each address in accordance with the previously written address value in the same manner as in the above-described embodiment, continuous access is made over two areas between the first buffer area and the second buffer area. Data can be smoothly read out. At the same time, since the write control section 200 merely increments the address value, complicated address calculation is not required in each buffer area and between buffer areas.
Therefore, writing and reading of a continuous data array in two buffer areas formed in one memory 100 can be smoothly performed without imposing a burden on the respective control units.

【0073】なお、上記各実施例では、入力データをメ
モリ100 でのデータ配列の列方向に書き込んで行方向に
読み出すインタリーブ回路と、データ配列の行方向に書
き込んで列方向に読み出すデインタリーブ回路をそれぞ
れ例に挙げて説明したが、本発明においては、上記実施
例のデインタリーブ回路をインタリーブ回路に、インタ
リーブ回路をデインタリーブ回路としてもよい。
In each of the above embodiments, an interleave circuit for writing input data in the column direction of the data array in the memory 100 and reading it out in the row direction and a deinterleave circuit for writing data in the row direction of the data array and reading it out in the column direction are provided. Although each example has been described, in the present invention, the deinterleave circuit of the above embodiment may be an interleave circuit, and the interleave circuit may be a deinterleave circuit.

【0074】また、上記各実施例では、CDMA方式の携帯
電話に適用した場合を例に挙げて説明したが、本発明に
おいては、バースト誤りが生じ得る通信路を介してデー
タを伝送する任意のディジタル方式の送受信機に適用し
てもよい。
Further, in each of the above embodiments, the case where the present invention is applied to a CDMA mobile phone has been described as an example. However, in the present invention, any data for transmitting data via a communication path in which a burst error may occur is provided in the present invention. The present invention may be applied to a digital transceiver.

【0075】さらに、上記各実施例では、データを列方
向に並べ替えて交錯するインタリーブ回路およびデイン
タリーブ回路を例に挙げて説明したが、本発明において
は、その交錯法は任意のものでよい。たとえば、データ
配列の斜め方向に並べ替えるもの、あるいはそれぞれ異
なる位置にランダムに並べ替えるものを含む。この場
合、従来の技術ではメモリへのアクセスがさらに複雑な
ものとなり、その書込み制御部または読出し制御部のプ
ログラムが複雑になるが、本発明によれば、あらかじめ
メモリにその配列に従った次アドレスを示すアドレス値
を書き込んでおくので、それぞれの書込み制御部および
読出し制御部への負担はほとんどない。
Furthermore, in each of the above embodiments, an interleave circuit and a deinterleave circuit for rearranging and interlacing data in the column direction have been described as an example. However, in the present invention, any arbitrary interleaving method may be used. . For example, it includes one that is rearranged in the oblique direction of the data array, or one that is rearranged randomly at different positions. In this case, in the prior art, access to the memory is further complicated, and the program of the write control unit or the read control unit is complicated. However, according to the present invention, the next address according to the array is previously stored in the memory. Are written, so that there is almost no burden on the respective write control unit and read control unit.

【0076】また、上記実施例のデインタリーブ回路で
は、それぞれのアドレスから読み出した内容値を直接、
次アドレス設定部204 に供給して次アドレスを設定する
ようにしたが、たとえば、データ入力部102 に読み出し
たそれぞれのアドレスの内容値から次アドレスを示すア
ドレス値を抽出して読出し制御部206 に設定するように
してもよい。
In the deinterleave circuit of the above embodiment, the content value read from each address is directly
The next address is supplied to the next address setting unit 204 to set the next address. For example, an address value indicating the next address is extracted from the content value of each address read out to the data input unit 102 and the read control unit 206 You may make it set.

【0077】さらに、上記各実施例では、それぞれのア
ドレスがワード単位の構成となっていたが、データ系列
のビット数が少なくデータ配列が少ないものでは、バイ
ト単位など他のアクセス構成でもよい。
Further, in each of the above embodiments, each address is configured in word units. However, if the data sequence has a small number of bits and a small data arrangement, another access configuration such as byte unit may be used.

【0078】[0078]

【発明の効果】このように本発明によれば、メモリのそ
れぞれのアドレスに次にアクセスするアドレスのアドレ
ス値をあらかじめ書き込んでおき、そのアドレス値に従
ってデータの書込みまたは読出しを順次実行するので、
メモリのそれぞれのアドレスをアクセスする書込み制御
手段あるいは読出し制御手段に負担をかけることなく有
効に所定のデータ配列を並べ替えることができる。
As described above, according to the present invention, the address value of the address to be accessed next is written in advance to each address of the memory, and data writing or reading is sequentially performed according to the address value.
The predetermined data array can be effectively rearranged without imposing a load on the write control means or the read control means for accessing each address of the memory.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明によるインタリーブ回路の一実施例を示
すブロック図である。
FIG. 1 is a block diagram showing one embodiment of an interleave circuit according to the present invention.

【図2】図1の実施例によるインタリーブ回路に適用さ
れるデータ配列の並べ替え順序の例を示す図である。
FIG. 2 is a diagram showing an example of a data array rearrangement order applied to the interleave circuit according to the embodiment of FIG. 1;

【図3】図1の実施例によるインタリーブ回路に適用さ
れるメモリにあらかじめ書き込まれたアドレス値の配列
例を示す図である。
FIG. 3 is a diagram showing an example of an array of address values previously written in a memory applied to the interleave circuit according to the embodiment of FIG. 1;

【図4】図1の実施例によるインタリーブ回路に適用さ
れるデータ入力部のレジスタ構成の例を示す図である。
FIG. 4 is a diagram illustrating an example of a register configuration of a data input unit applied to the interleave circuit according to the embodiment of FIG. 1;

【図5】図1の実施例によるインタリーブ回路が適用さ
れる携帯電話の送信部の例を示すブロック図である。
FIG. 5 is a block diagram illustrating an example of a transmission unit of a mobile phone to which the interleave circuit according to the embodiment of FIG. 1 is applied;

【図6】本発明によるデインタリーブ回路の一実施例を
示すブロック図である。
FIG. 6 is a block diagram showing one embodiment of a deinterleave circuit according to the present invention.

【図7】図6の実施例によるデインタリーブ回路が適用
される携帯電話の受信部の例を示すブロック図である。
7 is a block diagram illustrating an example of a receiving unit of a mobile phone to which the deinterleave circuit according to the embodiment of FIG. 6 is applied;

【符号の説明】[Explanation of symbols]

100 メモリ 102 データ入力部 104,200 書込み制御部 106,204 次アドレス設定部 108,206 読出し制御部 110 データ出力部 100 Memory 102 Data input unit 104,200 Write control unit 106,204 Next address setting unit 108,206 Read control unit 110 Data output unit

Claims (16)

【特許請求の範囲】[Claims] 【請求項1】 所定の配列のデータを入力してその配列
を並び替えて出力するインタリーブ回路において、該回
路は、 少なくとも並び替えるべきデータ配列の周期のn倍(n
は2以上の整数)のバッファ領域を有する記憶手段であ
って、それぞれのアドレス毎に、データが書き込まれる
データ領域と次のデータの書き込み先を示すアドレス値
があらかじめ書き込まれたアドレス領域とが形成された
記憶手段と、 該記憶手段のそれぞれのアドレスのデータ領域に順次入
力するデータを書き込むデータ書込み手段と、 該データ書き込み手段にてデータを書き込む際に、その
アクセスしたアドレスのアドレス領域に書き込まれてい
るアドレス値を読み出して、そのアドレス値を前記デー
タ書込み手段に順次設定する次アドレス設定手段と、 前記記憶手段に書き込まれたデータを前記データ書込み
手段での書き込み順序とは異なる順序にて読み出すデー
タ読出し手段であって、少なくとも前記データ書込み手
段がアクセスしているバッファ領域とは異なるバッファ
領域を順次アクセスしてデータを読み出すデータ読出し
手段とを含むことを特徴とするインタリーブ回路。
1. An interleave circuit for inputting data of a predetermined array, rearranging the array, and outputting the rearranged data, the circuit includes at least n times (n times the period of a data array to be rearranged).
Is an integer greater than or equal to 2) buffer area, and for each address, a data area in which data is written and an address area in which an address value indicating the destination of the next data is written in advance are formed. Data writing means for writing data to be sequentially input to the data area of each address of the storage means, and when writing data by the data writing means, the data is written to the address area of the accessed address. A next address setting means for reading an address value stored in the memory and sequentially setting the address value in the data writing means; and reading data written in the storage means in an order different from a writing order in the data writing means. Data reading means, wherein at least the data writing means has access Interleaving circuit, characterized in that it comprises a data reading means for reading the data sequentially accessing different buffer region and the buffer region has.
【請求項2】 請求項1に記載のインタリーブ回路にお
いて、 前記アドレス領域にあらかじめ書き込まれたアドレス値
は、それぞれのバッファ領域内にて最後にアクセスされ
るアドレスの次のアドレスを示すアドレス値が次のバッ
ファ領域にて最初にアクセスされるアドレスのアドレス
値を示し、残りすべてのアドレス値がそのバッファ領域
内でのアドレスを示すアドレス値であり、 前記データ書込み手段は、任意のバッファ領域にて最初
にアクセスされるアドレスのアドレス値が初期アドレス
としてあらかじめ設定されて、以降前記次アドレス設定
手段にて設定される前記記憶手段からのアドレス値に応
動してそれぞれのバッファ領域のアドレスを順次アクセ
スすることを特徴とするインタリーブ回路。
2. The interleave circuit according to claim 1, wherein the address value previously written in the address area is an address value indicating an address next to an address accessed last in each buffer area. Indicates an address value of an address accessed first in the buffer area, and all remaining address values are address values indicating addresses in the buffer area. The address value of the address to be accessed is previously set as an initial address, and the addresses of the respective buffer areas are sequentially accessed in response to the address value from the storage means set by the next address setting means thereafter. An interleave circuit.
【請求項3】 請求項2に記載のインタリーブ回路にお
いて、前記バッファ領域内でのアドレスを示すアドレス
値は、そのバッファ領域でのデータ配列の列方向のアド
レスを示すアドレス値であることを特徴とするインタリ
ーブ回路。
3. The interleave circuit according to claim 2, wherein the address value indicating an address in the buffer area is an address value indicating an address in a column direction of a data array in the buffer area. Interleave circuit.
【請求項4】 請求項2に記載のインタリーブ回路にお
いて、前記バッファ領域内でのアドレスを示すアドレス
値は、そのバッファ領域内でのデータ配列のそれぞれ異
なる任意のアドレスを示すアドレス値であることを特徴
とするインタリーブ回路。
4. The interleave circuit according to claim 2, wherein the address value indicating an address in the buffer area is an address value indicating an arbitrary different address of a data array in the buffer area. Characteristic interleave circuit.
【請求項5】 請求項3または4に記載のインタリーブ
回路において、前記データ読出し手段は、少なくとも前
記データ書込み手段がアクセスする初期アドレスが設定
されたバッファ領域とは異なるバッファ領域の最小のア
ドレス値を初期アドレスとして、そのバッファ領域内で
のアドレスを順次歩進して前記記憶手段の各アドレスを
シーケンシャルにアクセスするアドレス演算手段を含む
ことを特徴とするインタリーブ回路。
5. The interleave circuit according to claim 3, wherein said data read means sets a minimum address value of a buffer area different from a buffer area in which at least an initial address accessed by said data write means is set. An interleave circuit comprising address calculation means for sequentially accessing each address of said storage means by sequentially increasing an address in said buffer area as an initial address.
【請求項6】 請求項1に記載のインタリーブ回路にお
いて、 前記次アドレス設定手段は、前記データ書込み手段にて
所定のアドレスを指定する際に用いられるライトポイン
タに応動してそのアドレスの記憶内容を読み出す読出し
手段を含み、 前記データ書込み手段は、前記次アドレス設定手段にて
記憶内容を読み出した後にそのアドレスのデータ領域に
データを書き込むことを特徴とするインタリーブ回路。
6. The interleave circuit according to claim 1, wherein said next address setting means responds to a write pointer used when designating a predetermined address by said data writing means, and stores contents of the address. An interleave circuit including read means for reading, wherein the data writing means writes data to a data area of the address after reading the stored content by the next address setting means.
【請求項7】 請求項6に記載のインタリーブ回路にお
いて、前記次アドレス設定手段は、それぞれのアドレス
から読み出した記憶内容のうちアドレス領域のビット数
に相当するアドレス値のみを抽出するアドレス抽出手段
を含むことを特徴とするインタリーブ回路。
7. The interleave circuit according to claim 6, wherein said next address setting means includes an address extracting means for extracting only an address value corresponding to the number of bits of an address area from stored contents read from each address. An interleave circuit characterized by including.
【請求項8】 請求項1に記載のインタリーブ回路にお
いて、該回路は、入力したそれぞれのデータに、アドレ
ス領域のビット数に相当するマスクビットを付加して前
記記憶手段に供給するデータ入力手段を含むことを特徴
とするインタリーブ回路。
8. The interleave circuit according to claim 1, wherein the circuit includes a data input unit that adds a mask bit corresponding to the number of bits of an address area to each input data and supplies the data to the storage unit. An interleave circuit characterized by including.
【請求項9】 所定の配列のデータを入力してその配列
を並び替えて出力するインタリーブ回路において、該回
路は、 少なくとも並び替えるべきデータ配列の周期のn倍(n
は2以上の整数)のバッファ領域を有する記憶手段であ
って、それぞれのアドレス毎に、データが書き込まれる
データ領域と該データ領域に書き込まれたデータを読み
出した後の次に読み出すべきデータが書き込まれたアド
レスを示すアドレス値があらかじめ書き込まれたアドレ
ス領域とが形成された記憶手段と、 該記憶手段のバッファ領域毎にそれぞれのアドレスを順
次アクセスしてそのデータ領域に順次入力するデータを
書き込むデータ書込み手段と、 前記記憶手段に書き込まれたデータを前記データ書込み
手段での書き込み順序とは異なる順序にて読み出すデー
タ読出し手段であって、少なくとも前記データ書込み手
段がアクセスしているバッファ領域とは異なるバッファ
領域を順次アクセスしてデータを読み出すデータ読出し
手段と、 該データ読出し手段にてアクセスしたアドレスの記憶内
容の中からアドレス領域のアドレス値を検出して、その
値を前記データ読出し手段に次アドレスとして設定する
次アドレス設定手段とを含むことを特徴とするインタリ
ーブ回路。
9. An interleave circuit for inputting data of a predetermined array, rearranging the array, and outputting the rearranged data, the circuit comprises at least n times (n times the period of the data array to be rearranged)
Is an integer of 2 or more). The storage means has a data area to which data is written and data to be read next after reading data written in the data area for each address. Means for forming an address area in which an address value indicating the assigned address is previously written, and data for sequentially accessing each address for each buffer area of the storage means and writing data to be sequentially input to the data area Writing means; and data reading means for reading data written in the storage means in an order different from the writing order in the data writing means, which is different from at least a buffer area accessed by the data writing means. Data reading means for sequentially accessing a buffer area and reading data And a next address setting means for detecting an address value of an address area from the stored contents of the address accessed by the data reading means, and setting the value as the next address in the data reading means. Interleave circuit.
【請求項10】 請求項9に記載のインタリーブ回路に
おいて、 前記アドレス領域にあらかじめ書き込まれたアドレス値
は、それぞれのバッファ領域内にて最後にアクセスされ
るアドレスの次のアドレスを示すアドレス値が次のバッ
ファ領域にて最初にアクセスされるアドレスを示し、残
りのアドレス値がそのバッファ領域内でのアドレスを示
すアドレス値であり、 前記データ読出し手段には、任意のバッファ領域にて最
初にアクセスされるアドレスのアドレス値が初期アドレ
スとしてあらかじめ設定されていることを特徴とするデ
インタリーブ回路。
10. The interleave circuit according to claim 9, wherein the address value previously written in the address area is an address value indicating an address next to an address accessed last in each buffer area. Indicates an address to be accessed first in the buffer area, and the remaining address value is an address value indicating an address in the buffer area. The data reading means is accessed first in an arbitrary buffer area. A deinterleave circuit characterized in that an address value of an address is preset as an initial address.
【請求項11】 請求項10に記載のインタリーブ回路に
おいて、前記バッファ領域内でのアドレスを示すアドレ
ス値は、それぞれバッファ領域内でのデータ配列の列方
向のアドレスを示すアドレス値であることを特徴とする
インタリーブ回路。
11. The interleave circuit according to claim 10, wherein the address value indicating an address in the buffer area is an address value indicating an address in a column direction of a data array in the buffer area. And an interleave circuit.
【請求項12】 請求項10に記載のインタリーブ回路に
おいて、前記バッファ領域内でのアドレスを示すアドレ
ス値は、それぞれバッファ領域内でのデータ配列のそれ
ぞれ異なる任意のアドレスを示すアドレス値であること
を特徴とするインタリーブ回路。
12. The interleave circuit according to claim 10, wherein the address value indicating an address in the buffer area is an address value indicating a different arbitrary address of a data array in the buffer area. Characteristic interleave circuit.
【請求項13】 請求項11または12に記載のインタリー
ブ回路において、前記データ書込み手段は、少なくとも
前記データ読出し手段がアクセスする初期アドレスが設
定されたバッファ領域と異なるバッファ領域の最小値の
アドレス値を初期アドレスとして、そのバッファ領域内
でのアドレスをシーケンシャルにアクセスしてデータ配
列の行方向に順次データを書き込むことを特徴とするイ
ンタリーブ回路。
13. The interleave circuit according to claim 11, wherein said data writing means sets a minimum address value of a buffer area different from a buffer area in which an initial address accessed by said data reading means is set. An interleave circuit characterized by sequentially accessing addresses in a buffer area as an initial address and sequentially writing data in a row direction of a data array.
【請求項14】 請求項9に記載のインタリーブ回路に
おいて、該回路は、前記データ読出し手段にて読み出し
たそれぞれのアドレスの記憶内容を受けて、その中から
データを抽出して元のビット数のデータとして出力する
データ出力手段を含むことを特徴とするインタリーブ回
路。
14. The interleave circuit according to claim 9, wherein said circuit receives the storage contents of each address read by said data reading means, extracts data from them, and calculates the original number of bits. An interleave circuit including data output means for outputting as data.
【請求項15】 請求項1ないし8のいずれかに記載の
インタリーブ回路にて並べ替えられたデータを元の配列
に並び替えるデインタリーブ回路であって、該回路は、
請求項9ないし請求項14のいずれかに記載の回路である
ことを特徴とするデインタリーブ回路。
15. A deinterleave circuit for rearranging data rearranged by the interleave circuit according to any one of claims 1 to 8 into an original array.
15. A deinterleave circuit, which is the circuit according to claim 9.
【請求項16】 請求項9ないし14のいずれかに記載の
インタリーブ回路にて並べ替えらたデータを元の配列に
並び替えるデインタリーブ回路であって、該回路は、請
求項1ないし8のいずれかに記載の回路であることを特
徴とするデインタリーブ回路。
16. A deinterleave circuit for rearranging data rearranged by the interleave circuit according to any one of claims 9 to 14 into an original array, wherein said circuit is any one of claims 1 to 8. A deinterleave circuit, which is a circuit according to any one of claims 1 to 3.
JP9248496A 1997-09-12 1997-09-12 Interleave circuit and de-interleave circuit Withdrawn JPH1188199A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9248496A JPH1188199A (en) 1997-09-12 1997-09-12 Interleave circuit and de-interleave circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9248496A JPH1188199A (en) 1997-09-12 1997-09-12 Interleave circuit and de-interleave circuit

Publications (1)

Publication Number Publication Date
JPH1188199A true JPH1188199A (en) 1999-03-30

Family

ID=17179044

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9248496A Withdrawn JPH1188199A (en) 1997-09-12 1997-09-12 Interleave circuit and de-interleave circuit

Country Status (1)

Country Link
JP (1) JPH1188199A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7636281B2 (en) 2000-10-04 2009-12-22 Gs Ip Limited Liability Company Replaying digital media
US8725734B2 (en) 2010-06-23 2014-05-13 International Business Machines Corporation Sorting multiple records of data using ranges of key values

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7636281B2 (en) 2000-10-04 2009-12-22 Gs Ip Limited Liability Company Replaying digital media
US7940802B2 (en) 2000-10-04 2011-05-10 Gs Ip, Llc Replaying digital media
US8725734B2 (en) 2010-06-23 2014-05-13 International Business Machines Corporation Sorting multiple records of data using ranges of key values
US9213782B2 (en) 2010-06-23 2015-12-15 International Business Machines Corporation Sorting multiple records of data using ranges of key values
US9658826B2 (en) 2010-06-23 2017-05-23 International Business Machines Corporation Sorting multiple records of data using ranges of key values
US9727308B2 (en) 2010-06-23 2017-08-08 International Business Machines Corporation Sorting multiple records of data using ranges of key values

Similar Documents

Publication Publication Date Title
JP3634004B2 (en) Convolutional interleaver with reduced memory requirements and address generator
US5745497A (en) Convolutional interleaving/DE-interleaving method and apparatus for data transmission
JP4955049B2 (en) Block interleaving for turbo coding
JP2824474B2 (en) Error correction system and decoder using this error correction system
KR100526512B1 (en) Interleaving apparatus and method for serially concatenated convolution code in a mobile telecommunication system
US7127004B1 (en) Interleaver and method for interleaving an input data bit sequence using a coded storing of symbol and additional information
JP2000068862A (en) Error correction coder
JP2011072009A (en) Highly parallel map decoder
US6523146B1 (en) Operation processing apparatus and operation processing method
KR20000046050A (en) Puncturing device and method for turbo encoder in mobile communication system
JP3553546B2 (en) Address generator for use in a multi-stage channel interleaver / deinterleaver
US20020083391A1 (en) Method and apparatus for encoding a product code
KR100628201B1 (en) Method for Turbo Decoding
US7073012B2 (en) System and method for interleaving data in a communications device
US6957310B1 (en) Interleave address generation device and interleave address generation method
JPH10313275A (en) Memory for data processing in mobile telephone system
JPH1188199A (en) Interleave circuit and de-interleave circuit
JP2002271209A (en) Turbo encoder and turbo decoder
CN116318552B (en) Interleaving or de-interleaving method for Turbo code, device, communication chip and device thereof
US6976138B2 (en) Semiconductor device for data communication control and radio communication apparatus
JP4507443B2 (en) Interleaving method and interleaving apparatus
KR100645730B1 (en) Method for interleaving using magic matrix
JP3854882B2 (en) Interleaving apparatus and interleaving method
JPH1146148A (en) Arithmetic processing unit and its utilizing device
KR100913084B1 (en) Transport Channel Multiplexing Method and Structure

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20041207