JP2013110678A - Interleaving device, address translation method and address translation program - Google Patents

Interleaving device, address translation method and address translation program Download PDF

Info

Publication number
JP2013110678A
JP2013110678A JP2011256092A JP2011256092A JP2013110678A JP 2013110678 A JP2013110678 A JP 2013110678A JP 2011256092 A JP2011256092 A JP 2011256092A JP 2011256092 A JP2011256092 A JP 2011256092A JP 2013110678 A JP2013110678 A JP 2013110678A
Authority
JP
Japan
Prior art keywords
address
setting
initial
output
interleaving
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.)
Pending
Application number
JP2011256092A
Other languages
Japanese (ja)
Inventor
Taichi Otsuji
太一 大辻
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2011256092A priority Critical patent/JP2013110678A/en
Publication of JP2013110678A publication Critical patent/JP2013110678A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Error Detection And Correction (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide an interleaving device that supports a plurality of interleaving schemes and implements a high speed interleaving process in a small circuit scale.SOLUTION: An address translation circuit 11 of an interleaving device 10 includes: a first address translation section 100 for processing an input initial address on the basis of a first setting fed from a setting controller to output a resultant intermediate address; and a second address translation section 200 for processing the intermediate address on the basis of a second setting fed from the setting controller to output a resultant output address to a memory controller. The configuration executes a single continuous interleaving process.

Description

本発明はインタリーブ装置、アドレス変換方法およびアドレス変換プログラムに関し、特に回路規模を抑制しつつ複数種類のインタリーブ処理を行うことが可能なインタリーブ装置等に関する。   The present invention relates to an interleaving device, an address translation method, and an address translation program, and more particularly to an interleaving device capable of performing a plurality of types of interleaving processing while suppressing a circuit scale.

記憶装置やデジタル通信・信号処理においては、それらの信頼性を確保する意味で、伝送されるデータのエラー訂正が必要である。特に最近は、無線通信において高速のデータ伝送が行われることが多くなっているので、エラー訂正処理に係る技術も高度化が求められている。   In storage devices and digital communication / signal processing, error correction of transmitted data is necessary in order to ensure their reliability. In particular, recently, high-speed data transmission is frequently performed in wireless communication, so that techniques for error correction processing are also required to be advanced.

現在広く使われている誤り検出訂正用の符号化方式は、単独のビットに対して散発的に発生するランダム誤りに対しては比較的高い訂正能力を持つ。しかしながら、短い区間に多数の誤りが連続的かつ集中的に発生するバースト誤りに対しては、全体的な誤り率が許容範囲内であっても、検出や訂正が困難であることが多い。具体的には、たとえば自動車のエンジンや特定の電化製品(電子レンジ、ブラウン管など)から発生するインパルス状の雑音や、(特に無線通信において不可避な)信号強度の変動やマルチパスなどが、バースト誤りの発生原因となりやすい。   Currently used error detection and correction coding schemes have a relatively high correction capability for random errors that occur sporadically with respect to a single bit. However, it is often difficult to detect and correct a burst error in which a large number of errors occur continuously and intensively in a short interval even if the overall error rate is within an allowable range. Specifically, for example, impulse noise generated from automobile engines and specific electrical appliances (microwave ovens, cathode ray tubes, etc.), signal strength fluctuations (especially unavoidable in wireless communications), and multipath are burst errors. It is easy to cause.

そのようなバースト誤りに対応するために、複数の符号語を並べてそのシンボルを並べ変えることがよく行われている。このような処理をインタリーブという。このインタリーブによって、連続したデータを分散させて、バースト誤りをランダム誤りに変換でき、その結果としてバースト誤りに対する訂正能力を高めることができる。   In order to cope with such burst errors, it is often performed to arrange a plurality of code words and rearrange their symbols. Such processing is called interleaving. By this interleaving, continuous data can be dispersed and burst errors can be converted into random errors, and as a result, the ability to correct burst errors can be enhanced.

インタリーブを行う場合、一般的には、インタリーブ対象のデータと同規模のメモリにある特定のアドレス列を用いて、対象データを書き込み、または、読み出すことで、データの並び替えを実現する。その並び替えの方法により、ブロックインタリーブ、畳み込みインタリーブなどいくつかの方式に分類できる。ここではブロックインタリーブに着目する。   When performing interleaving, data rearrangement is generally realized by writing or reading target data using a specific address string in a memory having the same scale as the data to be interleaved. Depending on the rearrangement method, it can be classified into several methods such as block interleaving and convolutional interleaving. Here we focus on block interleaving.

ブロックインタリーブは、主にノーマルインタリーブやランダムインタリーブなどに分類できる。ノーマルインタリーブとは、インタリーブに用いるメモリ領域を2次元配列と見なし、縦方向に順にデータを書き込み、横方向に順に読み出す、縦入れ横出し処理を行うものを指す。さらに、縦入れ横出し処理に加えて、コラム/ロー置換、もしくは、コラムツイストなどの処理を追加する形式のものもある。   Block interleaving can be classified mainly into normal interleaving and random interleaving. Normal interleaving refers to a memory area used for interleaving as a two-dimensional array, in which data is written sequentially in the vertical direction and read sequentially in the horizontal direction to perform vertical insertion and horizontal extraction processing. Further, in addition to vertical insertion and horizontal extraction processing, there is a type in which processing such as column / row replacement or column twist is added.

また、ランダムインタリーブとは、ブロック内に限定してシンボルの並びをランダムに並び換えるものであり、そのランダムな並び替えは、ルックアップテーブルに保管されたランダム値を用いる方式や、M系列による疑似ランダム値を用いる方式などがある。これらのブロックインタリーブは、国内外の地上波デジタルテレビ放送や無線LANなどのような無線データ通信に使用されている。   Random interleaving is a random rearrangement of symbols within a block. The random rearrangement can be performed by using a random value stored in a look-up table, or by using an M-sequence pseudo-sequence. There are methods using random values. These block interleaves are used for wireless data communication such as terrestrial digital television broadcasting and wireless LAN in Japan and overseas.

インタリーブは、使用環境の違いにより通信路特性が異なるため、無線通信規格毎にそれぞれ異なる種類のインタリーブ方式が採用されている。1つの無線通信規格の中に複数のインタリーブが含まれる場合がある。また、1つのインタリーブ方式の中に、複数種類のインタリーブを連続して行うことが規定されている場合もある。   Interleaving uses different types of interleaving methods for each wireless communication standard because the channel characteristics differ depending on the use environment. There may be a case where a plurality of interleaves are included in one wireless communication standard. In some interleaving schemes, it may be defined that a plurality of types of interleaving are continuously performed.

例えば、非特許文献1に記載されている地上波デジタルテレビ放送の規格であるISDB−T(Integrated Services Digital Broadcasting-Terrestrial)の周波数インタリーブは、セグメント間インタリーブ、セグメント内キャリアローテーション、セグメント内キャリアランダマイズの3種類の異なった処理が組み合わせて、一つの連続したインタリーブとしている。   For example, the frequency interleaving of ISDB-T (Integrated Services Digital Broadcasting-Terrestrial), which is the standard of terrestrial digital television broadcasting described in Non-Patent Document 1, includes inter-segment interleaving, intra-segment carrier rotation, intra-segment carrier randomization. Three different processes are combined to form one continuous interleave.

また、非特許文献2に記載されている無線LANの規格であるIEEE(The Institute of Electrical and Electronics Engineers、米国電気電子学会)802.11aのシンボルインタリーブは、第1パーミュテーション(1st permutation)および第2パーミュテーション(2nd permutation)という2種類の異なった処理を組み合わせて一つの連続したインタリーブとしている。   In addition, the symbol interleaving of IEEE (The Institute of Electrical and Electronics Engineers) 802.11a, which is a wireless LAN standard described in Non-Patent Document 2, is the first permutation and Two different processes called second permutation are combined into one continuous interleave.

このように複数種類のインタリーブを連続して行う場合にも、通信のリアルタイム性を損なわないことは当然必要である。さらに、近年は特にデータの伝送速度の向上が求められている。このため、インタリーブの処理の高速化は、ますますその必要性が高まっている。   Even when a plurality of types of interleaving are continuously performed as described above, it is naturally necessary not to impair the real-time property of communication. Furthermore, in recent years, there has been a demand for improvement in data transmission speed. For this reason, it is increasingly necessary to increase the speed of interleave processing.

そのための技術として、特許文献3に記載の技術などでは、インタリーブ前のデータが保存されたメモリから、複数種類の連続したインタリーブをすべて施した状態でデータ読み出しを行うために、処理開始前に予め読み出しアドレスを格納したテーブルを作成しておき、作成されたテーブルにより指定されたアドレスから読み出しを行うことで、一挙動にインタリーブ用アドレスを生成して、メモリへのアクセス回数やインタリーブ処理時間を減らしている。   As a technique for this, in the technique described in Patent Document 3, for example, data is read out from a memory in which data before interleaving is stored in a state where all of a plurality of types of continuous interleaving are performed. Create a table that stores the read address, and read from the address specified by the created table to generate an interleave address in one behavior, reducing the number of memory accesses and the interleave processing time. ing.

さらに、近年の無線通信システムでは、1つの装置において複数の通信規格に対応するためにマルチモード化が求められており、インタリーブにおいても単一のインタリーブ装置で複数のインタリーブ方式への対応が求められている。これに対して、非特許文献3に記載の技術などでは、インタリーブのアドレス生成式を差分方程式に変形し、その結果の演算を複数の加減算器と累算器の組合せで実現し、アドレス生成を行う方式を用いることで、複数のインタリーブ方式に対応しながらも、回路規模を削減している。   Further, in recent wireless communication systems, a multi-mode is required to support a plurality of communication standards in one device, and interleaving is also required to support a plurality of interleaving methods with a single interleave device. ing. On the other hand, in the technique described in Non-Patent Document 3, the interleave address generation equation is transformed into a difference equation, and the resulting operation is realized by a combination of a plurality of adders / accumulators and accumulators. By using this method, the circuit scale is reduced while supporting a plurality of interleaving methods.

他に、これに関連する技術文献として、次の各々がある。その中でも特許文献1には、データ系列を再変調して生成したレプリカ信号を利用して、並列干渉キャンセラの処理遅延を短縮するという受信装置について記載されている。特許文献2には、DVB−T(Digital Video Broadcasting - Terrestrial)などのデジタルテレビ放送に関する規格で、LDPC(低密度パリティ検査)符号化されたOFDM(直交波周波数分割多重)シンボルをサブキャリア信号にマッピングする技術の一例が記載されている。   In addition, there are the following as technical documents related to this. Among them, Patent Document 1 describes a receiving apparatus that uses a replica signal generated by remodulating a data sequence to reduce the processing delay of a parallel interference canceller. In Patent Document 2, OFDM (Orthogonal Wave Frequency Division Multiplexing) symbols, which are LDPC (Low Density Parity Check) -encoded standards, are used as subcarrier signals in accordance with digital television broadcasting standards such as DVB-T (Digital Video Broadcasting-Terrestrial). An example of a mapping technique is described.

特許文献4には、デジタルテレビ放送などで、OFDM方式で変調された信号を受信して復調する際に使用されるデインタリーブ(インタリーブの逆処理)の一例が記載されている。非特許文献3には、後述のように、インタリーブのアドレス生成に要する演算を主に加減算器と塁算器で実現するという技術が記載されている。   Patent Document 4 describes an example of deinterleaving (reversal processing of interleaving) used when receiving and demodulating a signal modulated by OFDM in digital television broadcasting or the like. Non-Patent Document 3 describes a technique for realizing an operation required for generating an interleave address mainly by an adder / subtractor and an adder, as will be described later.

特開2008−205801号公報JP 2008-205801 A 特開2009−153109号公報JP 2009-153109 A 特許3911401号公報Japanese Patent No. 3911401 特許4152854号公報Japanese Patent No. 4152854

規格番号「ARIB−STD−B31」、標準規格名「地上デジタルテレビジョン放送の伝送方式」第1.9版、社団法人電波産業会(ARIB)、平成22年7月15日Standard number “ARIB-STD-B31”, Standard name “Transmission method of digital terrestrial television broadcasting” version 1.9, Radio Industry Association (ARIB), July 15, 2010 規格番号「IEEE Std 802。11a-1999(R2003)」、標準規格名「Supplement to IEEE Standard for Information Technology Telecommunications and information exchange between systems Local and metropolitan area networks Specific requirements、 Part11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications High-speed Physical Layer in the 5 GHz Band」Standard number `` IEEE Std 802.11a-1999 (R2003) '', Standard name `` Supplement to IEEE Standard for Information Technology Telecommunications and information exchange between systems Local and metropolitan area networks Specific requirements, Part 11: Wireless LAN Medium Access Control (MAC) and Physical Layer (PHY) specifications High-speed Physical Layer in the 5 GHz Band '' Rizwan Asghar and Dake Liu、“Multimode Flex-Interleaver Core for Baseband Processor Platform"、Hindawi Publishing Corporation、Journal of Computer Systems、Networks、and Communications、2010Rizwan Asghar and Dake Liu, “Multimode Flex-Interleaver Core for Baseband Processor Platform”, Hindawi Publishing Corporation, Journal of Computer Systems, Networks, and Communications, 2010

前述のように、データ通信においては特に、リアルタイム性を損なわないことが当然必要である。近年は特に、データの伝送速度の向上と、複数の通信方式への対応とが強く求められている。なおかつ、装置の小型化・低価格化・低消費電力化は常に求められることであるので、インタリーブ装置においてもその回路規模を小さく抑制しつつ、複数のインタリーブ方式に対応し、さらにインタリーブを高速に行うことが当然必要となる。   As described above, in data communication, it is naturally necessary not to impair the real-time property. In recent years, in particular, there has been a strong demand for improvement in data transmission speed and support for a plurality of communication methods. In addition, since downsizing, low cost, and low power consumption of the device are always required, the interleaving device also supports multiple interleaving methods while keeping the circuit scale small, and further speeds up interleaving. Of course it is necessary to do.

しかしながら、前述の特許文献3のように、メモリへのアクセス回数を減らすために予め読み出しアドレスを格納するテーブルを作成しておく方式だと、インタリーブの処理サイズが大きくなった場合に、このテーブルのデータサイズが大きくなり、回路規模の増大を招き、さらに高速化が困難になることが問題となる。   However, as in the above-mentioned Patent Document 3, in the case of creating a table for storing read addresses in advance in order to reduce the number of accesses to the memory, when the interleave processing size increases, The problem is that the data size is increased, the circuit scale is increased, and it is difficult to increase the speed.

また、非特許文献3のように、インタリーブのアドレス生成に要する演算を加減算器と塁算器などによってハードウェア的に実現する方式だと、複数の異なったインタリーブが組み合わされることにより1つのインタリーブとなっている場合にはアドレス生成式を差分方程式で表せないので、組み合わせられた各々のインタリーブをそれぞれ個別に行う必要がある。   In addition, as in Non-Patent Document 3, when a calculation required for generating an interleave address is realized by hardware using an adder / subtractor and an adder, a plurality of different interleaves are combined to generate one interleave. In this case, since the address generation formula cannot be expressed by a difference equation, each combined interleaving needs to be performed individually.

従って、各々の処理後のデータを一旦メモリに書き出すということを複数回行う必要が生じ、メモリへのアクセス回数が増大し、処理時間が増大することが問題となる。さらに、この方式だと、複数のインタリーブ方式に対応するためには各方式ごとに別個のハードウェアが必要となり、回路規模の抑制が困難である。   Accordingly, it is necessary to write the data after each processing once in the memory a plurality of times, which increases the number of accesses to the memory and increases the processing time. Furthermore, with this method, separate hardware is required for each method in order to support a plurality of interleaving methods, and it is difficult to suppress the circuit scale.

以上の課題を解決しうる技術は、残る非特許文献1〜2や、特許文献1,2,4にも記載されていない。非特許文献1〜2には、前述のようにインタリーブに関する規格が記載されているに過ぎない。また、特許文献1,2,4に記載された技術は、インタリーブにおける回路規模の抑制や複数のインタリーブ方式への対応を目的とするものではない。   The technology that can solve the above problems is not described in the remaining Non-Patent Documents 1 and 2 and Patent Documents 1, 2, and 4. Non-Patent Documents 1 and 2 only describe the standard regarding interleaving as described above. In addition, the techniques described in Patent Documents 1, 2, and 4 are not intended to suppress the circuit scale in interleaving and to cope with a plurality of interleaving methods.

本発明の目的は、回路規模を小さく抑制しつつ、複数のインタリーブ方式に対応し、かつインタリーブの処理を高速に行うことを可能とするインタリーブ装置、アドレス変換方法およびアドレス変換プログラムを提供することにある。   An object of the present invention is to provide an interleaving device, an address translation method, and an address translation program that can cope with a plurality of interleaving methods and can perform interleaving processing at high speed while suppressing the circuit scale to be small. is there.

上記目的を達成するため、本発明に係るインタリーブ装置は、入力されたデータを一時的に記憶するメモリと、メモリ上にデータが記憶されたアドレスに対してインタリーブの処理を行うアドレス変換回路と、アドレス変換回路に対して上位装置から与えられた設定を与える設定コントローラと、メモリ上のインタリーブの処理をされたアドレスに記憶されたデータを出力するメモリコントローラとを備えたインタリーブ装置であって、アドレス変換回路が、入力された初期アドレスに対して設定コントローラによって与えられた第1の設定に応じた処理を行って得られた中間アドレスを出力する第1のアドレス変換部と、中間アドレスに対して設定コントローラによって与えられた第2の設定に応じた処理を行って得られた出力アドレスをメモリコントローラに対して出力する第2のアドレス変換部とを備え、これによって一つの連続したインタリーブ処理を実行するように構成したことを特徴とする。   To achieve the above object, an interleaving device according to the present invention includes a memory that temporarily stores input data, an address conversion circuit that performs an interleaving process on an address at which the data is stored on the memory, and An interleaving device comprising: a setting controller that gives a setting given from a host device to an address conversion circuit; and a memory controller that outputs data stored in an address subjected to interleaving processing on a memory. A first address conversion unit that outputs an intermediate address obtained by performing a process according to a first setting given by the setting controller on the input initial address; The output address obtained by performing processing according to the second setting given by the setting controller And a second address translation unit to be output to the memory controller, thereby characterized by being configured to execute one continuous interleaved.

上記目的を達成するため、本発明に係るアドレス変換方法は、入力されたデータを一時的に記憶するメモリと、メモリ上にデータが記憶されたアドレスに対してインタリーブの処理を行うアドレス変換回路と、アドレス変換回路に対して上位装置から与えられた設定を与える設定コントローラと、メモリ上にデータを入出力するメモリコントローラとを備えたインタリーブ装置にあって、設定コントローラが、アドレス変換回路の第1および第2のアドレス変換部に各々第1および第2の設定を与え、メモリコントローラが、入力されたデータをメモリに保存すると共にデータの保存されたメモリ上のアドレスを初期アドレスとしてアドレス変換回路に入力し、第1のアドレス変換部が、初期アドレスに対して第1の設定に応じた処理を行って得られた中間アドレスを出力し、第2のアドレス変換部が、中間アドレスに対して第2の設定に応じた処理を行って得られた出力アドレスをメモリコントローラに出力し、メモリコントローラがメモリ上の出力アドレスに記憶されているデータを出力することを特徴とする。   In order to achieve the above object, an address conversion method according to the present invention includes a memory that temporarily stores input data, an address conversion circuit that performs an interleaving process on an address at which the data is stored on the memory, and An interleaving device comprising a setting controller for giving a setting given from a host device to an address conversion circuit and a memory controller for inputting / outputting data to / from the memory, wherein the setting controller is the first of the address conversion circuit. The first and second settings are given to the second and second address conversion units, respectively, and the memory controller stores the input data in the memory, and uses the address on the memory where the data is stored as an initial address to the address conversion circuit. The first address conversion unit performs processing according to the first setting for the initial address. The obtained intermediate address is output, and the second address conversion unit outputs the output address obtained by performing processing corresponding to the second setting on the intermediate address to the memory controller, and the memory controller The data stored in the output address is output.

上記目的を達成するため、本発明に係るアドレス変換プログラムは、入力されたデータを一時的に記憶するメモリと、メモリ上にデータが記憶されたアドレスに対してインタリーブの処理を行うアドレス変換回路と、アドレス変換回路に対して上位装置から与えられた設定を与える設定コントローラと、メモリ上にデータを入出力するメモリコントローラとを備えたインタリーブ装置にあって、インタリーブ装置の備えるコンピュータに、アドレス変換回路の第1および第2のアドレス変換部に各々第1および第2の設定を与える手順、入力されたデータをメモリに保存すると共にデータの保存されたメモリ上のアドレスを初期アドレスとしてアドレス変換回路に入力する手順、初期アドレスに対して第1の設定に応じた処理を行って得られた中間アドレスを出力する手順、および中間アドレスに対して第2の設定に応じた処理を行って得られた出力アドレスをメモリコントローラに出力する手順を実行させることを特徴とする。   In order to achieve the above object, an address conversion program according to the present invention includes a memory that temporarily stores input data, an address conversion circuit that performs interleaving processing on the address at which the data is stored on the memory, and An interleaving device comprising a setting controller for giving a setting given from a host device to an address conversion circuit, and a memory controller for inputting / outputting data to / from the memory, wherein the address conversion circuit is connected to a computer provided in the interleaving device. The procedure for giving the first and second settings to the first and second address conversion units, respectively, storing the input data in the memory and using the address on the memory where the data is stored as the initial address in the address conversion circuit Obtained by performing processing according to the first setting for the input procedure and initial address It characterized the steps of outputting an intermediate address, and a second output address obtained by performing a process according to the setting for the intermediate address to be executed the steps of outputting to the memory controller.

本発明は、上記したように第1および第2の設定に応じて各々動作する第1および第2のアドレス変換部によって初期アドレスを中間アドレスを経て出力アドレスに変換するように構成したので、パイプライン的に連続して処理を行うことが可能となり、また初期設定値に応じて複数種類のインタリーブ方式に対応可能であり、各方式に対応するハードウェアやルックアップテーブルなどを別々に用意する必要はない。   In the present invention, as described above, the first address and the second address conversion unit operating according to the first and second settings respectively convert the initial address to the output address via the intermediate address. It is possible to perform processing continuously in a line, and it is possible to support multiple types of interleaving methods according to the initial setting value, and it is necessary to prepare hardware and lookup table etc. corresponding to each method separately There is no.

これによって、回路規模を小さく抑制しつつ、複数のインタリーブ方式に対応し、かつインタリーブの処理を高速に行うことが可能であるという、優れた特徴を持つインタリーブ装置、アドレス変換方法およびアドレス変換プログラムを提供することができる。   As a result, an interleaving device, an address conversion method, and an address conversion program having excellent characteristics that it is possible to perform a plurality of interleaving methods and perform interleaving processing at high speed while suppressing the circuit scale to be small. Can be provided.

図2で示したアドレス変換回路のより詳しい構成を示す説明図である。FIG. 3 is an explanatory diagram showing a more detailed configuration of the address conversion circuit shown in FIG. 2. 本発明の第1の実施形態に係るインタリーブ装置の構成について示す説明図である。It is explanatory drawing shown about the structure of the interleaving apparatus which concerns on the 1st Embodiment of this invention. 図1に示した第1の演算手段および第3の演算手段のより詳しい構成について示す説明図である。It is explanatory drawing shown about the more detailed structure of the 1st calculating means shown in FIG. 1, and a 3rd calculating means. 図1に示した第2の演算手段および第4の演算手段のより詳しい構成について示す説明図である。It is explanatory drawing shown about the more detailed structure of the 2nd calculating means shown in FIG. 1, and a 4th calculating means. 図1に示したインタリーブ装置によるインタリーブの動作について示すフローチャートである。It is a flowchart shown about the operation | movement of the interleaving by the interleaving apparatus shown in FIG. 本発明の第2の実施形態に係るインタリーブ装置の構成について示す説明図である。It is explanatory drawing shown about the structure of the interleaving apparatus which concerns on the 2nd Embodiment of this invention. 図6に示したアドレス変換回路のより詳しい構成を示す説明図である。FIG. 7 is an explanatory diagram showing a more detailed configuration of the address conversion circuit shown in FIG. 6. 図6に示したインタリーブ装置によるインタリーブの動作について示すフローチャートである。It is a flowchart shown about the operation | movement of the interleaving by the interleaving apparatus shown in FIG. 本発明の第3の実施形態に係るインタリーブ装置の構成について示す説明図である。It is explanatory drawing shown about the structure of the interleaving apparatus which concerns on the 3rd Embodiment of this invention. 図9に示したアドレス変換回路のより詳しい構成を示す説明図である。FIG. 10 is an explanatory diagram showing a more detailed configuration of the address conversion circuit shown in FIG. 9. 図9に示したインタリーブ装置によるインタリーブの動作について示すフローチャートである。10 is a flowchart showing an interleaving operation by the interleaving apparatus shown in FIG. 9.

(第1の実施形態)
以下、本発明の実施形態の構成について添付図1〜4に基づいて説明する。
最初に、本実施形態の基本的な内容について説明し、その後でより具体的な内容について説明する。
本実施形態に係るインタリーブ装置10は、入力されたデータを一時的に記憶するメモリ14と、メモリ上にデータが記憶されたアドレスに対してインタリーブの処理を行うアドレス変換回路11と、アドレス変換回路に対して上位装置から与えられた設定を与える設定コントローラ12と、メモリ上のインタリーブの処理をされたアドレスに記憶されたデータを出力するメモリコントローラ13とを備えたインタリーブ装置である。このアドレス変換回路11は、入力された初期アドレスに対して設定コントローラによって与えられた第1の設定に応じた処理を行って得られた中間アドレスを出力する第1のアドレス変換部100と、中間アドレスに対して設定コントローラによって与えられた第2の設定に応じた処理を行って得られた出力アドレスをメモリコントローラに対して出力する第2のアドレス変換部200とを備え、これによって一つの連続したインタリーブ処理を実行するように構成されている。
(First embodiment)
Hereinafter, the configuration of the embodiment of the present invention will be described with reference to FIGS.
First, the basic content of the present embodiment will be described, and then more specific content will be described.
The interleaving device 10 according to the present embodiment includes a memory 14 that temporarily stores input data, an address conversion circuit 11 that performs interleaving processing on addresses at which data is stored in the memory, and an address conversion circuit Is an interleaving device including a setting controller 12 for giving a setting given from a host device and a memory controller 13 for outputting data stored at an address subjected to interleaving on the memory. The address conversion circuit 11 includes a first address conversion unit 100 that outputs an intermediate address obtained by performing processing according to a first setting given by the setting controller on an input initial address, and an intermediate address And a second address conversion unit 200 that outputs to the memory controller an output address obtained by performing processing corresponding to the second setting given to the address by the setting controller. The interleaving process is executed.

ここで、第1のアドレス変換部100は、第1の設定によって与えられた複数個の初期設定値を記憶する第1の初期設定値保持手段110と、初期アドレスと初期設定値とを第1の設定によって与えられた演算規則に従って演算する第1の演算手段120と、初期アドレスと初期設定値とをあらかじめ与えられた演算規則に従って演算する第2の演算手段130と、第1および第2の演算手段からの出力を加算してこれを中間アドレスとして出力する第1の加算器140とを備える。これと共に、第2のアドレス変換部200は、第2の設定によって与えられた複数個の初期設定値を記憶する第2の初期設定値保持手段210と、中間アドレスと初期設定値とを第2の設定によって与えられた演算規則に従って演算する第3の演算手段220と、中間アドレスと初期設定値とをあらかじめ与えられた演算規則に従って演算する第4の演算手段230と、第3および第4の演算手段からの出力を加算してこれを出力アドレスとして出力する第2の加算器240とを備える。   Here, the first address conversion unit 100 stores the first initial setting value holding unit 110 that stores a plurality of initial setting values given by the first setting, the first address and the initial setting value as the first. The first calculation means 120 for calculating according to the calculation rule given by the setting of the first calculation means, the second calculation means 130 for calculating the initial address and the initial set value according to the calculation rule given in advance, the first and second A first adder 140 that adds the outputs from the arithmetic means and outputs the result as an intermediate address. At the same time, the second address converting unit 200 stores the second initial setting value holding unit 210 that stores a plurality of initial setting values given by the second setting, and stores the intermediate address and the initial setting value in the second. The third computing means 220 for computing according to the computation rule given by the setting of the above, the fourth computing means 230 for computing the intermediate address and the initial set value according to the computation rule given in advance, and the third and fourth And a second adder 240 that adds the outputs from the arithmetic means and outputs them as output addresses.

また、第1のアドレス変換部100の第1の演算手段120が、初期アドレスと第1の初期設定値保持手段110に記憶された第1ないし第5の初期設定値とを第1の設定によって与えられた演算規則に従って演算し、第2の演算手段130が、初期アドレスと第1の初期設定値保持手段110に記憶された第6および第7の初期設定値とをあらかじめ与えられた演算規則に従って演算すると共に、第2のアドレス変換部200の第3の演算手段220が、初期アドレスと第2の初期設定値保持手段210に記憶された第8ないし第12の初期設定値とを第2の設定によって与えられた演算規則に従って演算し、第4の演算手段230が、初期アドレスと第2の初期設定値保持手段210に記憶された第13および第14の初期設定値とをあらかじめ与えられた演算規則に従って演算する。   Further, the first calculation unit 120 of the first address conversion unit 100 sets the initial address and the first to fifth initial setting values stored in the first initial setting value holding unit 110 according to the first setting. Arithmetic according to the given calculation rule, the second calculation means 130 is given with the initial address and the sixth and seventh initial setting values stored in the first initial setting value holding means 110 in advance. And the third calculation means 220 of the second address conversion unit 200 calculates the second address of the initial address and the eighth to twelfth initial setting values stored in the second initial setting value holding means 210. The fourth arithmetic unit 230 calculates the initial address and the thirteenth and fourteenth initial set values stored in the second initial set value holding unit 210. Calculating according beforehand given calculation rules.

さらに、第1ないし第7の初期設定値を各々i1〜i7とし、初期アドレスおよび中間アドレスを各々xおよびfxとすると、第1のアドレス変換部100は初期アドレスを

Figure 2013110678
の式で示される演算によって中間アドレスに変換し、第8ないし第14の初期設定値を各々i8〜i14とし、出力アドレスをgxとすると、第2のアドレス変換部200は中間アドレスを
Figure 2013110678
の式で示される演算によって出力アドレスに変換する。 Further, if the first to seventh initial setting values are i1 to i7 and the initial address and intermediate address are x and fx, respectively, the first address conversion unit 100 sets the initial address to
Figure 2013110678
The intermediate address is converted into an intermediate address by the operation expressed by the following equation, the eighth to fourteenth initial set values are i8 to i14, and the output address is gx.
Figure 2013110678
It is converted into an output address by the operation shown in the equation.

以上の構成を備えることにより、本実施形態に係るインタリーブ装置10は、回路規模を小さく抑制しつつ、複数のインタリーブ方式に対応し、かつインタリーブの処理を高速に行うことが可能なものとなる。
以下、これをより詳細に説明する。
With the above configuration, the interleaving apparatus 10 according to the present embodiment can cope with a plurality of interleaving schemes and can perform interleaving processing at high speed while suppressing the circuit scale to be small.
Hereinafter, this will be described in more detail.

図2は、本発明の第1の実施形態に係るインタリーブ装置10の構成について示す説明図である。インタリーブ装置10は、外部装置との間でデータの入出力を行うメモリコントローラ13と、上位CPU20からのパラメータ設定の操作を受けて装置の設定変更を行う設定コントローラ12と、インタリーブの対象となるデータを一時的に記憶するメモリ14と、メモリ14に記憶されたデータのアドレスに対して後述のインタリーブの処理を行って出力するアドレス変換回路11と、アドレスの初期値を生成してアドレス変換回路11に対して出力する初期アドレス生成回路15とで構成される。初期アドレス生成回路15が生成するアドレスの初期値は、たとえば純増値やランダム値など、公知の手法で生成することができる。   FIG. 2 is an explanatory diagram showing the configuration of the interleave device 10 according to the first embodiment of the present invention. The interleaving device 10 includes a memory controller 13 for inputting / outputting data to / from an external device, a setting controller 12 for changing device settings in response to a parameter setting operation from the host CPU 20, and data to be interleaved. Is temporarily stored, an address conversion circuit 11 that outputs an address of data stored in the memory 14 by performing an interleaving process described later, and an address conversion circuit 11 that generates an initial value of the address. And an initial address generation circuit 15 that outputs the data. The initial value of the address generated by the initial address generation circuit 15 can be generated by a known method such as a pure increase value or a random value.

図1は、図2で示したアドレス変換回路11のより詳しい構成を示す説明図である。アドレス変換回路11は、第1のアドレス変換部100と、第2のアドレス変換部200とを備える。   FIG. 1 is an explanatory diagram showing a more detailed configuration of the address conversion circuit 11 shown in FIG. The address conversion circuit 11 includes a first address conversion unit 100 and a second address conversion unit 200.

第1のアドレス変換部100は、図2に示された入力データがメモリ14に記憶されたアドレス(これを初期アドレスという)を入力とし、第1の初期設定値保持手段110、第1の演算手段120、第2の演算手段130、加算器140を備え、加算器140からの出力値を中間アドレスとして第2のアドレス変換部200に対して出力する。   The first address conversion unit 100 receives as input the input data shown in FIG. 2 stored in the memory 14 (this is referred to as an initial address), and receives the first initial set value holding means 110, the first calculation. Means 120, second arithmetic means 130, and adder 140 are provided, and an output value from adder 140 is output to second address conversion unit 200 as an intermediate address.

第1の初期設定値保持手段110は、設定コントローラ12からの第1の設定によって設定された、第1〜第7の初期値をあらかじめ記憶する。第1の演算手段120は、初期アドレスと第1〜第5の初期設定値を入力とし、第1の演算結果を出力とする。第2の演算手段130は、初期アドレスと第6〜第7の初期設定値を入力とし、第2の演算結果を出力とする。加算器140は、第1の演算結果と第2の演算結果を加算して得られたアドレスを出力する。この出力されたアドレスが、中間アドレスとなる。   The first initial set value holding means 110 stores in advance the first to seventh initial values set by the first setting from the setting controller 12. The first calculation means 120 receives the initial address and the first to fifth initial setting values as inputs and outputs the first calculation result as an output. The second calculation means 130 receives the initial address and the sixth to seventh initial set values as inputs, and outputs the second calculation result as an output. The adder 140 outputs an address obtained by adding the first calculation result and the second calculation result. This output address becomes an intermediate address.

第2のアドレス変換部200は、中間アドレスを入力とし、第2の初期設定値保持手段210、第3の演算手段220、第4の演算手段230、加算器240を備え、加算器240からの出力値を出力アドレスとしてメモリコントローラ13に対して出力する。   The second address conversion unit 200 has an intermediate address as an input, and includes a second initial setting value holding unit 210, a third calculation unit 220, a fourth calculation unit 230, and an adder 240. The output value is output to the memory controller 13 as an output address.

第2の初期設定値保持手段210は、設定コントローラ12からの第2の設定によって設定された、第8〜第14の初期値を保持する。第3の演算手段220は、中間アドレスと第8〜第12の初期設定値を入力とし、第3の演算結果を出力とする。第4の演算手段230は、中間アドレスと第13〜第14の初期設定値を入力とし、第4の演算結果を出力する。加算器240は、第3の演算結果と第4の演算結果を加算して得られたアドレスを出力する。この出力されたアドレスが、出力アドレスとなる。   The second initial set value holding unit 210 holds the eighth to fourteenth initial values set by the second setting from the setting controller 12. The third calculation means 220 receives the intermediate address and the eighth to twelfth initial set values as inputs, and outputs the third calculation result as an output. The fourth calculation means 230 receives the intermediate address and the thirteenth to fourteenth initial set values as inputs, and outputs a fourth calculation result. The adder 240 outputs an address obtained by adding the third calculation result and the fourth calculation result. This output address becomes the output address.

図3は、図1に示した第1の演算手段120および第3の演算手段220のより詳しい構成について示す説明図である。第1の演算手段120と第3の演算手段220は、入出力値が異なるが、回路構成は同一であるので、同一の図によって示す。   FIG. 3 is an explanatory diagram showing a more detailed configuration of the first calculation means 120 and the third calculation means 220 shown in FIG. The first calculation unit 120 and the third calculation unit 220 have different input / output values, but have the same circuit configuration, and therefore are shown in the same figure.

第1の演算手段120は、前述したように、初期アドレスと第1〜第5の初期設定値とを入力とし、この入力値に対して乗算器121、除算器122、フロア演算器123、加減算器124、剰余算器125、乗算器126によって演算を行い、乗算器126からの出力値を第1の演算結果として出力する。   As described above, the first calculation means 120 receives the initial address and the first to fifth initial setting values as input, and the multiplier 121, the divider 122, the floor calculator 123, and the addition / subtraction with respect to this input value. The calculator 124, the remainder calculator 125, and the multiplier 126 perform an operation, and the output value from the multiplier 126 is output as a first operation result.

乗算器121は、初期アドレスと第2の初期設定値とを入力とし、その乗算結果を出力とする。除算器122は、乗算器121の出力と第3の初期設定値とを入力とし、その除算結果を出力とする。フロア演算器123は、除算器122の出力を入力とし、その演算結果を出力とする。   The multiplier 121 receives the initial address and the second initial set value and outputs the multiplication result. The divider 122 receives the output of the multiplier 121 and the third initial setting value, and outputs the result of the division. The floor calculator 123 receives the output of the divider 122 and outputs the calculation result.

加減算器124は、初期アドレスと、第1の初期設定値と、フロア演算器123からの出力とを入力とし、その演算結果を出力とする。その際、加減算器124は、設定コントローラ12から与えられた第1の設定により、それらの3つの入力に対して、(加算、加算、減算)か、もしくは、(加算、加算、加算)かのいずれかの演算を行う。   The adder / subtractor 124 receives the initial address, the first initial set value, and the output from the floor calculator 123 as an input, and outputs the calculation result. At that time, the adder / subtractor 124 determines whether (addition, addition, subtraction) or (addition, addition, addition) is performed on these three inputs according to the first setting given from the setting controller 12. Perform one of the operations.

剰余算器125は、加減算器124の出力と第4の初期設定値とを入力とし、その演算結果を出力とする。乗算器126は、剰余算器125の出力と第5の初期設定値とを入力とし、その乗算結果を第1の演算結果とする。   The remainder calculator 125 receives the output of the adder / subtractor 124 and the fourth initial set value, and outputs the calculation result. The multiplier 126 receives the output of the remainder calculator 125 and the fifth initial setting value, and uses the multiplication result as the first calculation result.

第3の演算手段220は、第1の演算手段120と同一の回路構成を備え、入出力値が異なる。即ち、第3の演算手段220は、中間アドレスと第8〜第12の初期設定値とを入力とし、この入力値に対して乗算器221、除算器222、フロア演算器223、加減算器224、剰余算器225、乗算器226によって演算を行い、乗算器226からの出力値を第3の演算結果として出力する。   The third computing means 220 has the same circuit configuration as the first computing means 120 and has different input / output values. That is, the third calculation means 220 receives the intermediate address and the eighth to twelfth initial set values as input, and the multiplier 221, the divider 222, the floor calculator 223, the adder / subtractor 224, An operation is performed by the remainder calculator 225 and the multiplier 226, and an output value from the multiplier 226 is output as a third operation result.

乗算器221は、中間アドレスと第9の初期設定値とを入力とし、その乗算結果を出力とする。除算器222は、乗算器221の出力と第10の初期設定値とを入力とし、その除算結果を出力とする。フロア演算器223は、除算器222の出力を入力とし、その演算結果を出力とする。   The multiplier 221 receives the intermediate address and the ninth initial setting value, and outputs the multiplication result. The divider 222 receives the output of the multiplier 221 and the tenth initial setting value and outputs the division result. The floor calculator 223 receives the output of the divider 222 and outputs the calculation result.

加減算器224は、中間アドレスと、第8の初期設定値と、フロア演算器223からの出力を入力とし、その演算結果を出力とする。その際、加減算器224は、設定コントローラ12から与えられた第2の設定により、それらの3つの入力に対して、(加算、加算、減算)か、もしくは、(加算、加算、加算)かのいずれかの演算を行う。   The adder / subtractor 224 receives the intermediate address, the eighth initial set value, and the output from the floor calculator 223 as inputs, and outputs the calculation result. At that time, the adder / subtracter 224 determines whether (addition, addition, subtraction) or (addition, addition, addition) is performed on these three inputs according to the second setting given from the setting controller 12. Perform one of the operations.

剰余算器225は、加減算器224の出力と第11の初期設定値とを入力とし、その演算結果を出力とする。乗算器226は、剰余算器225の出力と第12の初期設定値とを入力とし、その乗算結果を第3の演算結果とする。   The remainder calculator 225 receives the output of the adder / subtractor 224 and the eleventh initial set value and outputs the calculation result. The multiplier 226 receives the output of the remainder calculator 225 and the twelfth initial set value and uses the multiplication result as the third calculation result.

図4は、図1に示した第2の演算手段130および第4の演算手段230のより詳しい構成について示す説明図である。第2の演算手段130と第4の演算手段230は、入出力値が異なるが、回路構成は同一であるので、同一の図によって示す。   FIG. 4 is an explanatory diagram showing a more detailed configuration of the second calculation means 130 and the fourth calculation means 230 shown in FIG. The second calculation means 130 and the fourth calculation means 230 have different input / output values, but have the same circuit configuration, and therefore are shown in the same figure.

第2の演算手段130は、初期アドレスと第6〜第7の初期設定値とを入力とし、この入力値に対して除算器131、フロア演算器132、乗算器133によって演算を行い、乗算器133からの出力値を第2の演算結果として出力する。   The second computing means 130 receives the initial address and the sixth to seventh initial set values as input, and performs computation on the input value by the divider 131, the floor computing unit 132, and the multiplier 133, and the multiplier The output value from 133 is output as the second calculation result.

除算器131は、初期アドレスと第6の初期設定値とを入力とし、その除算結果を出力とする。フロア演算器132は、除算器131の出力を入力とし、その演算結果を出力とする。乗算器133は、フロア演算器132の出力と第7の初期設定値とを入力とし、その乗算結果を第2の演算結果とする。   The divider 131 receives the initial address and the sixth initial set value and outputs the division result. The floor calculator 132 receives the output of the divider 131 and outputs the calculation result. The multiplier 133 receives the output of the floor calculator 132 and the seventh initial set value as input, and sets the multiplication result as the second calculation result.

第4の演算手段230は、中間アドレスと第13〜第14の初期設定値とを入力とし、この入力値に対して除算器231、フロア演算器232、乗算器233によって演算を行い、乗算器233からの出力値を第4の演算結果として出力する。   The fourth arithmetic means 230 receives the intermediate address and the thirteenth to fourteenth initial set values as input, performs arithmetic operations on the input values by the divider 231, the floor arithmetic unit 232, and the multiplier 233. The output value from 233 is output as the fourth calculation result.

除算器231は、中間アドレスと第13の初期設定値とを入力とし、その除算結果を出力とする。フロア演算器232は、除算器231の出力を入力とし、その演算結果を出力とする。乗算器233は、フロア演算器232の出力と第14の初期設定値とを入力とし、その乗算結果を第4の演算結果とする。   The divider 231 receives the intermediate address and the thirteenth initial set value and outputs the division result. The floor calculator 232 receives the output of the divider 231 and outputs the calculation result. The multiplier 233 receives the output of the floor calculator 232 and the fourteenth initial set value and uses the multiplication result as the fourth calculation result.

(第1の実施形態の演算の動作)
以上で説明したアドレス変換回路11による演算の動作について説明する。図5は、図1に示したインタリーブ装置10によるインタリーブの動作について示すフローチャートである。まず、上位CPU20からのパラメータ設定の操作を受けて、設定コントローラ12がアドレス変換回路11の第1のアドレス変換部100に第1の設定を、そして第2のアドレス変換部200に第2の設定を与える(ステップS251)。
(Calculation operation of the first embodiment)
A calculation operation by the address conversion circuit 11 described above will be described. FIG. 5 is a flowchart showing the interleaving operation by interleaving apparatus 10 shown in FIG. First, in response to a parameter setting operation from the host CPU 20, the setting controller 12 sets the first setting in the first address conversion unit 100 of the address conversion circuit 11 and the second setting in the second address conversion unit 200. Is given (step S251).

アドレス変換回路11に対する第1および第2の設定が終了したら、メモリコントローラ13は外部からインタリーブ対象となるデータの入力を待ち受け(ステップS252)、データの入力があればそのデータをメモリ14に保存する(ステップS253)。   When the first and second settings for the address conversion circuit 11 are completed, the memory controller 13 waits for input of data to be interleaved from the outside (step S252), and stores the data in the memory 14 if data is input. (Step S253).

そして、保存された対象データの保存されたメモリ14上のアドレスが、アドレス変換回路11に初期アドレスとして入力され、第1のアドレス変換部100はこの初期アドレスに対して中間アドレスを出力し(ステップS254)、第2のアドレス変換部200はこの中間アドレスに対して出力アドレスを出力する(ステップS255)。そして、メモリコントローラ13は出力アドレスのデータをメモリ14から読み出して出力する(ステップS256)。   The stored address of the target data in the memory 14 is input to the address conversion circuit 11 as an initial address, and the first address conversion unit 100 outputs an intermediate address with respect to the initial address (step In step S254, the second address conversion unit 200 outputs an output address for the intermediate address (step S255). Then, the memory controller 13 reads out the output address data from the memory 14 and outputs it (step S256).

以上の動作の前提から説明する。ブロックインタリーブ処理は、複数の種類をまとめて、次の数1のように表現される。ここで、xはインタリーブされるブロックの系列の番号を示し、fxは系列のx番目の出力されるアドレスを示す。また、i1〜i7は各通信規格に応じて設定される初期設定値を示す。%は剰余演算子であり、「A%B」は数値Aを数値Bで割った余りを表す。また、[]の上部が欠けた形の記号はフロア演算子(床演算子)である。   This will be described based on the premise of the above operation. The block interleaving process is expressed as the following equation 1 by combining a plurality of types. Here, x indicates the sequence number of the interleaved block, and fx indicates the x-th output address of the sequence. Further, i1 to i7 indicate initial setting values set according to each communication standard. “%” Is a remainder operator, and “A% B” represents a remainder obtained by dividing the numerical value A by the numerical value B. Moreover, the symbol of the shape without the upper part of [] is a floor operator (floor operator).

〔数1〕

Figure 2013110678
即ち、初期アドレスをxとすると、fxは中間アドレスとなり、i1〜i7は第1のアドレス変換部100に対して第1の設定で与えられる第1〜第7の初期値となり、上記の数1は第1のアドレス変換部100で行われる処理を表す。 [Equation 1]
Figure 2013110678
That is, assuming that the initial address is x, fx is an intermediate address, i1 to i7 are first to seventh initial values given to the first address conversion unit 100 by the first setting, and the above equation 1 Represents processing performed in the first address conversion unit 100.

また、gxを出力アドレスとし、i8〜i14を第2のアドレス変換部200に対して第2の設定で与えられる第8〜第14の初期値とすると、第2のアドレス変換部200で行われる処理は、上記数1の変数のみを入れ替えた、以下の数2で表される。   When gx is an output address and i8 to i14 are the eighth to fourteenth initial values given to the second address conversion unit 200 by the second setting, the second address conversion unit 200 performs the process. The processing is expressed by the following formula 2 in which only the variable of the above formula 1 is replaced.

〔数2〕

Figure 2013110678
[Equation 2]
Figure 2013110678

アドレス変換回路11は、図5にも示したように、まずパラメータの設定を行い(ステップS251)、次にそのパラメータに基づいて動作する(ステップS252以降)という2つのフェーズによって動作する。以後、説明を平易なものとするため、加減算器124および加減算器224は、(加算、加算、減算)の動作を行うよう、第1および第2の設定によって設定コントローラ12によって設定が与えられるものとする。   As shown in FIG. 5, the address conversion circuit 11 operates in two phases: first, setting parameters (step S251), and then operating based on the parameters (step S252 and subsequent steps). Hereinafter, in order to simplify the description, the adder / subtractor 124 and the adder / subtractor 224 are set by the setting controller 12 according to the first and second settings so as to perform the operation of (addition, addition, subtraction). And

まず、上位CPU20から設定コントローラ12を介して、第1のアドレス変換部100および第2のアドレス変換部200に対して第1および第2の設定を与える。これによって、第1の初期設定値保持手段110の第1の初期値〜第7の初期値に値が設定され、第2の初期設定値保持手段210の第8の初期値〜第14の初期値に値が設定される。また、加減算器124は3入力に対して(加算、加算、減算)を行うように設定される。同様に加減算器224も3入力に対して(加算、加算、減算)を行うように設定される。   First, the first and second settings are given from the upper CPU 20 to the first address conversion unit 100 and the second address conversion unit 200 via the setting controller 12. As a result, the first initial value to the seventh initial value of the first initial set value holding unit 110 are set, and the eighth initial value to the fourteenth initial value of the second initial set value holding unit 210 are set. Value is set to value. The adder / subtractor 124 is set to perform (addition, addition, subtraction) on three inputs. Similarly, the adder / subtractor 224 is also set to perform (addition, addition, subtraction) on the three inputs.

ここで、第1の初期設定値保持手段110における第1〜第7の初期値は、上記数1のi1〜i7に各々対応し、第2の初期設定値保持手段210における第8〜第14の初期値も、上記数2のi8〜i14に各々対応する。   Here, the first to seventh initial values in the first initial set value holding unit 110 correspond to i1 to i7 of the above formula 1, respectively, and the eighth to 14th in the second initial set value holding unit 210. Also correspond to i8 to i14 in the above equation 2, respectively.

以上の設定を完了した第1のアドレス変換部100に対して、初期アドレスが入力される。入力される初期アドレスは、ブロックインタリーブの1ブロック個数分のアドレスが過不足なく順次入力されるものである。第1のアドレス変換部100に入力された初期アドレスは、第1の演算手段120と第2の演算手段130に入力される。第1の初期設定値保持手段110は、第1〜第5の初期設定値(i1〜i5)を第1の演算手段120に出力し、第6〜第7の初期設定値(i6〜i7)を第2の演算手段130に出力する。   An initial address is input to the first address conversion unit 100 that has completed the above settings. As the initial address to be input, addresses corresponding to the number of blocks in the block interleave are sequentially input without excess or deficiency. The initial address input to the first address conversion unit 100 is input to the first calculation unit 120 and the second calculation unit 130. The first initial set value holding unit 110 outputs the first to fifth initial set values (i1 to i5) to the first calculation unit 120, and the sixth to seventh initial set values (i6 to i7). Is output to the second calculation means 130.

第1の演算手段120において、乗算器121は、入力された初期アドレスと第2の初期設定値(i2)とを乗算し、その乗算結果を出力する。除算器122は、乗算器121からの出力を第3の初期設定値(i3)で除算し、その除算結果を出力する。フロア演算器123は、除算器122からの出力に対してフロア演算を行い、その演算結果を出力する。   In the first computing means 120, the multiplier 121 multiplies the input initial address and the second initial set value (i2) and outputs the multiplication result. The divider 122 divides the output from the multiplier 121 by the third initial setting value (i3) and outputs the division result. The floor calculator 123 performs a floor calculation on the output from the divider 122 and outputs the calculation result.

加減算器124は、初期アドレス、第1の初期設定値(i1)、フロア演算器123からの出力に対して(加算、加算、減算)の加減算を行い、その演算結果を出力する。剰余算器125は、加減算器124からの出力を第4の初期設定値(i4)で剰余演算を行い、その演算結果を出力する。乗算器126は、剰余算器125からの出力と第5の初期設定値(i5)とを乗算し、その乗算結果を第1の演算結果として出力する。   The adder / subtractor 124 performs addition / subtraction (addition, addition, subtraction) on the initial address, the first initial setting value (i1), and the output from the floor calculator 123, and outputs the calculation result. The remainder calculator 125 performs a remainder operation on the output from the adder / subtractor 124 with the fourth initial set value (i4), and outputs the result of the operation. The multiplier 126 multiplies the output from the remainder calculator 125 and the fifth initial setting value (i5), and outputs the multiplication result as the first calculation result.

一方、第2の演算手段130において、除算器131は、入力された初期アドレスを第6の初期設定値(i6)で除算し、その除算結果を出力する。フロア演算器132は、除算器131からの出力に対してフロア演算を行い、その演算結果を出力する。乗算器133は、フロア演算器132からの出力と第7の初期設定値(i7)とを乗算し、その乗算結果を第2の演算結果として出力する。   On the other hand, in the second calculation means 130, the divider 131 divides the input initial address by the sixth initial set value (i6) and outputs the division result. The floor calculator 132 performs a floor calculation on the output from the divider 131 and outputs the calculation result. The multiplier 133 multiplies the output from the floor calculator 132 and the seventh initial setting value (i7), and outputs the multiplication result as the second calculation result.

加算器140は上記の第1の演算結果と第2の演算結果とを加算し、中間アドレスとして出力する。出力された中間アドレスは、第2のアドレス変換部200へ入力される。   The adder 140 adds the first calculation result and the second calculation result, and outputs the result as an intermediate address. The output intermediate address is input to the second address conversion unit 200.

第2のアドレス変換部200に入力された中間アドレスは、第3の演算手段220と第4の演算手段230に入力される。第2の初期設定値保持手段210は、第8〜第12の初期設定値(i8〜i12)を第3の演算手段220に出力し、第13〜第14の初期設定値(i13〜i4)を第4の演算手段230に出力する。   The intermediate address input to the second address conversion unit 200 is input to the third calculation unit 220 and the fourth calculation unit 230. The second initial setting value holding unit 210 outputs the eighth to twelfth initial setting values (i8 to i12) to the third arithmetic unit 220, and the thirteenth to fourteenth initial setting values (i13 to i4). Is output to the fourth computing means 230.

第3の演算手段220において、乗算器221は、入力された中間アドレスと第9の初期設定値(i9)を乗算し、その乗算結果を出力する。除算器222は、乗算器221からの出力を第10の初期設定値(i10)で除算し、その除算結果を出力する。フロア演算器223は、除算器222からの出力に対してフロア演算を行い、その演算結果を出力する。   In the third computing means 220, the multiplier 221 multiplies the inputted intermediate address by the ninth initial setting value (i9) and outputs the multiplication result. The divider 222 divides the output from the multiplier 221 by the tenth initial setting value (i10) and outputs the division result. The floor calculator 223 performs a floor calculation on the output from the divider 222 and outputs the calculation result.

加減算器224は、中間アドレス、第8の初期設定値(i8)、フロア演算器223からの出力に対して(加算、加算、減算)の加減算を行い、その演算結果を出力する。剰余算器225は、加減算器224からの出力を第11の初期設定値(i11)で剰余演算を行い、その演算結果を出力する。乗算器226は、剰余算器225からの出力と第12の初期設定値(i12)を乗算し、その乗算結果を第3の演算結果として出力する。   The adder / subtractor 224 performs addition / subtraction (addition, addition, subtraction) to the intermediate address, the eighth initial setting value (i8), and the output from the floor calculator 223, and outputs the calculation result. The remainder calculator 225 performs a remainder operation on the output from the adder / subtractor 224 with the eleventh initial setting value (i11), and outputs the result of the operation. The multiplier 226 multiplies the output from the remainder calculator 225 and the twelfth initial setting value (i12), and outputs the multiplication result as a third calculation result.

一方、第4の演算手段230において、除算器231は、中間アドレスを第13の初期設定値(i13)で除算し、その除算結果を出力する。フロア演算器232は、除算器231からの出力に対してフロア演算を行い、その演算結果を出力する。乗算器233は、フロア演算器232からの出力と第14の初期設定値(i14)を乗算し、その乗算結果を第4の演算結果として出力する。   On the other hand, in the fourth computing means 230, the divider 231 divides the intermediate address by the thirteenth initial setting value (i13) and outputs the division result. The floor calculator 232 performs a floor calculation on the output from the divider 231 and outputs the calculation result. The multiplier 233 multiplies the output from the floor calculator 232 and the fourteenth initial setting value (i14), and outputs the multiplication result as the fourth calculation result.

加算器240は上記の第3の演算結果と第4の演算結果とを加算し、出力アドレスとして出力する。   The adder 240 adds the third calculation result and the fourth calculation result, and outputs the result as an output address.

以上のようにして第2のアドレス変換部200から出力された出力アドレスは、インタリーブする対象のデータが保存されたメモリ14にアクセスするためにメモリコントローラ13に対して出力されるアドレスとなる。第1のアドレス変換部100と第2のアドレス変換部200は直列に接続されている構成であるので、パイプライン的に連続して処理が可能である。従って、第1のアドレス変換部100に初期アドレスが連続して入力されている限りは、図5のフローチャートにもあるように、本実施形態のインタリーブ装置10は、インタリーブの処理を連続的に行うことが可能である。   The output address output from the second address conversion unit 200 as described above is an address output to the memory controller 13 in order to access the memory 14 in which the data to be interleaved is stored. Since the first address conversion unit 100 and the second address conversion unit 200 are connected in series, processing can be continuously performed in a pipeline manner. Therefore, as long as the initial address is continuously input to the first address conversion unit 100, the interleaving apparatus 10 of the present embodiment continuously performs the interleaving process as shown in the flowchart of FIG. It is possible.

即ち、インタリーブ装置10はデータ自体をインタリーブするのではなく、メモリ14にアクセスするために用いられるアドレスに対して上記で示した処理を行い、それによって変換された出力アドレスのデータをメモリ14から読み出して、これによってインタリーブの処理を実現している。   That is, the interleaving device 10 does not interleave the data itself, but performs the above-described processing on the address used to access the memory 14 and reads the data of the output address converted thereby from the memory 14. Thus, interleaving processing is realized.

その結果、メモリ14へはインタリーブされた後のアドレスが供給されることになるため、複数の処理が組み合わさったインタリーブでも、メモリへのアクセス回数が1回で済むことになる。即ち、メモリ14へのアクセス回数を減らし、また連続して入力される初期アドレスに対してパイプライン的に連続して処理を続けることができるので、処理にかかる負荷や時間を軽減することができる。   As a result, since the interleaved address is supplied to the memory 14, even when interleaving is performed by combining a plurality of processes, only one access to the memory is required. That is, the number of accesses to the memory 14 can be reduced, and processing can be continued continuously in a pipeline manner with respect to initial addresses that are continuously input, so the load and time required for processing can be reduced. .

(第1の実施形態の実際の通信に対する適用例)
以下、インタリーブ装置10の実際の通信に対する適用例を2種類挙げて説明する。まず、インタリーブ装置10をIEEE802.11aのシンボルインタリーブの処理に適用する場合について説明する。このIEEE802.11aのシンボルインタリーブでは、前述のように第1パーミュテーションおよび第2パーミュテーションという2種類の異なった処理を組み合わせて、一つのインタリーブとしている。
(Application example of the first embodiment for actual communication)
Hereinafter, two examples of application of the interleave device 10 to actual communication will be described. First, the case where the interleaving apparatus 10 is applied to the IEEE 802.11a symbol interleaving process will be described. In the IEEE802.11a symbol interleaving, as described above, two types of different processes, the first permutation and the second permutation, are combined into one interleave.

この場合、アドレス変換回路11において、第1パーミュテーションの処理に対応するのが第1のアドレス変換部100であり、第2パーミュテーションの処理に対応するのが第2のアドレス変換部200である。ここでのパラメータは、インタリーブのブロックサイズN=192となり、また変調方式として16QAMが使用される。   In this case, in the address conversion circuit 11, the first address conversion unit 100 corresponds to the first permutation process, and the second address conversion unit 200 corresponds to the second permutation process. It is. The parameters here are the interleave block size N = 192, and 16QAM is used as the modulation scheme.

この時、第1パーミュテーションと第2パーミュテーションの各々のアドレス生成式は、以下の数3〜3で表される。fxは、入力された初期アドレスxに対して第1のアドレス変換部100が出力する中間アドレスである。そしてgxは、入力された中間アドレスfxに対して第2のアドレス変換部200が出力する出力アドレスである。   At this time, each address generation formula of the first permutation and the second permutation is expressed by the following equations 3 to 3. fx is an intermediate address output by the first address conversion unit 100 with respect to the input initial address x. Gx is an output address output by the second address conversion unit 200 with respect to the input intermediate address fx.

〔数3〕

Figure 2013110678
[Equation 3]
Figure 2013110678

〔数4〕

Figure 2013110678
[Equation 4]
Figure 2013110678

ここで、第1のアドレス変換部100への第1の設定時に、上位CPU20から設定コントローラ12を介して、第1の初期設定値保持手段110に設定される第1〜第7の初期設定値i1〜i7は各々、(i1、i2、i3、i4、i5、i6、i7)=(0、0、1、16、12、16、1)となる。   Here, at the time of the first setting to the first address conversion unit 100, the first to seventh initial setting values set in the first initial setting value holding means 110 from the host CPU 20 via the setting controller 12 i1 to i7 are respectively (i1, i2, i3, i4, i5, i6, i7) = (0, 0, 1, 16, 12, 16, 1).

そして、第2のアドレス変換部200への第2の設定時に、上位CPU20から設定コントローラ12を介して、第2の初期設定値保持手段210に設定される第8〜第14の初期設定値i8〜i14は各々、(i8、i9、i10、i11、i12、i13、i14)=(128、1、8、2、1、2、2)となる。   Then, at the time of the second setting in the second address conversion unit 200, the eighth to fourteenth initial setting values i8 set in the second initial setting value holding means 210 from the host CPU 20 via the setting controller 12 ˜i14 is (i8, i9, i10, i11, i12, i13, i14) = (128, 1, 8, 2, 1, 2, 2).

また、第1の演算手段120の加減算器124は、上位CPU20から設定コントローラ12を介して、(加算、加算、減算)という演算を行うように設定される。一方で、第3の演算手段220の加減算器224は、(加算、加算、減算)という演算を行うように設定される。また、初期アドレスxは、0から191まで過不足なく順に入力される。   Further, the adder / subtractor 124 of the first calculation means 120 is set so as to perform a calculation (addition, addition, subtraction) from the upper CPU 20 via the setting controller 12. On the other hand, the adder / subtracter 224 of the third calculation means 220 is set to perform a calculation (addition, addition, subtraction). The initial address x is input in order from 0 to 191 without excess or deficiency.

このとき、第1のアドレス変換部100は、入力された初期アドレスxと第1の設定に基づいて設定された第1〜第7の初期設定値i1〜i7に基づいてアドレス変換を行い、中間アドレスfxを出力する。また、第2のアドレス変換部200は、中間アドレスfxと第2の設定に基づいて設定された第8〜第14の初期設定値i8〜i14に基づいてアドレス変換を行い、出力アドレスgxを出力する。以上のようにして、IEEE802.11aのシンボルインタリーブのためのアドレス生成を行うことができる。   At this time, the first address conversion unit 100 performs address conversion based on the input initial address x and the first to seventh initial setting values i1 to i7 set based on the first setting, The address fx is output. Further, the second address conversion unit 200 performs address conversion based on the intermediate address fx and the eighth to fourteenth initial setting values i8 to i14 set based on the second setting, and outputs the output address gx To do. As described above, address generation for IEEE802.11a symbol interleaving can be performed.

続いて、インタリーブ装置10をDVB−T2のセルインタリーブの処理に適用する場合について説明する。DVB−T2のセルインタリーブは、線形フィードバックシフトレジスタをベースとした回路によって生成されたランダムな値を初期アドレスとし、そこへシンボル番号に基づいたシフトを組み合わせたインタリーブとなっている。   Next, the case where the interleaving apparatus 10 is applied to the DVB-T2 cell interleaving process will be described. DVB-T2 cell interleaving is an interleaving in which a random value generated by a circuit based on a linear feedback shift register is used as an initial address, and a shift based on a symbol number is combined therewith.

ここでのパラメータは、インタリーブのブロックサイズN=8100(=64800/8)、かつセルインタリーブのシフト量は4096となる。この時、DVB−T2セルインタリーブのパーミュテーション関数(permutation function)のアドレス生成式は、以下の数5で表される。   The parameters here are the interleave block size N = 8100 (= 64800/8), and the cell interleave shift amount is 4096. At this time, an address generation formula of a permutation function of DVB-T2 cell interleaving is expressed by the following equation (5).

〔数5〕

Figure 2013110678
[Equation 5]
Figure 2013110678

ここで、第1のアドレス変換部100へ第1の設定時に、上位CPU20から設定コントローラ12を介して、第1の初期設定値保持手段110に設定される第1〜第7の初期設定値i1〜i7は各々、(i1、i2、i3、i4、i5、i6、i7)=(0、0、1、4096、1、1、0)となる。   Here, at the time of the first setting to the first address conversion unit 100, the first to seventh initial setting values i1 set in the first initial setting value holding means 110 from the host CPU 20 via the setting controller 12 ˜i7 is (i1, i2, i3, i4, i5, i6, i7) = (0, 0, 1, 4096, 1, 1, 0), respectively.

また、第2のアドレス変換部200ではアドレス変換を行わず、中間アドレスを変化させることなくそのまま出力アドレスとして出力する。従って、第2のアドレス変換部200に対する第2の設定時では、初期設定値保持手段210に対して設定を行わない。即ち、第8〜第14の初期設定値i8〜i14は各々、(i8、i9、i10、i11、i12、i13、i14)=(0、0、1、8100、0、0、0)とした場合と等価である。   The second address conversion unit 200 does not perform address conversion and outputs the output address as it is without changing the intermediate address. Therefore, at the time of the second setting for the second address conversion unit 200, the initial setting value holding unit 210 is not set. That is, the 8th to 14th initial setting values i8 to i14 are (i8, i9, i10, i11, i12, i13, i14) = (0, 0, 1, 8100, 0, 0, 0), respectively. Is equivalent to the case.

また、初期アドレスは、規格に従った線形フィードバックシフトレジスタをベースとした回路によって生成され、1ブロックサイズの初期アドレスが出力される間は値が重複しない。前記のパラメータにおいて、初期アドレスは0以上8100未満の値である。   The initial address is generated by a circuit based on a linear feedback shift register according to the standard, and the value does not overlap while the initial address of one block size is output. In the above parameters, the initial address is a value not less than 0 and less than 8100.

このとき、第1のアドレス変換部100は、入力された初期アドレスと第1の設定に基づいて設定された第1〜第7の初期設定値i1〜i7に基づいてアドレス変換を行い、中間アドレスfxを出力する。また、第2のアドレス変換部200は、中間アドレスfxに対して変換を行わず、そのままfx=gxとして出力アドレスgxを出力する。以上のようにして、DVB−T2のセルインタリーブのためのアドレス生成を行うことができる。   At this time, the first address conversion unit 100 performs address conversion based on the input initial address and the first to seventh initial setting values i1 to i7 set based on the first setting, and the intermediate address Output fx. The second address conversion unit 200 does not convert the intermediate address fx and outputs the output address gx as fx = gx as it is. As described above, address generation for DVB-T2 cell interleaving can be performed.

(第1の実施形態の全体的な動作)
次に、上記の実施形態の全体的な動作について説明する。
本実施形態に係るアドレス変換方法は、入力されたデータを一時的に記憶するメモリ14と、メモリ上にデータが記憶されたアドレスに対してインタリーブの処理を行うアドレス変換回路11と、アドレス変換回路に対して上位装置から与えられた設定を与える設定コントローラ12と、メモリ上にデータを入出力するメモリコントローラ13とを備えたインタリーブ装置10にあって、設定コントローラが、アドレス変換回路の第1および第2のアドレス変換部に各々第1および第2の設定を与え(図5・ステップS251)、メモリコントローラが、入力されたデータをメモリに保存すると共にデータの保存されたメモリ上のアドレスを初期アドレスとしてアドレス変換回路に入力し(図5・ステップS252〜253)、第1のアドレス変換部が、初期アドレスに対して第1の設定に応じた処理を行って得られた中間アドレスを出力し(図5・ステップS254)、第2のアドレス変換部が、中間アドレスに対して第2の設定に応じた処理を行って得られた出力アドレスをメモリコントローラに出力し(図5・ステップS255)、メモリコントローラがメモリ上の出力アドレスに記憶されているデータを出力する(図5・ステップS256)。
(Overall operation of the first embodiment)
Next, the overall operation of the above embodiment will be described.
The address conversion method according to the present embodiment includes a memory 14 that temporarily stores input data, an address conversion circuit 11 that performs an interleaving process on addresses at which data is stored in the memory, and an address conversion circuit. The interleaving device 10 includes a setting controller 12 for giving a setting given from a host device and a memory controller 13 for inputting / outputting data to / from the memory. First and second settings are respectively given to the second address conversion unit (FIG. 5, step S251), and the memory controller stores the input data in the memory and initializes the address on the memory where the data is stored. The address is input to the address conversion circuit (FIG. 5, steps S252 to 253), and the first address is input. The conversion unit outputs an intermediate address obtained by performing processing corresponding to the first setting on the initial address (FIG. 5, step S254), and the second address conversion unit outputs the intermediate address to the intermediate address. 2 is output to the memory controller (step S255 in FIG. 5), and the memory controller outputs the data stored in the output address on the memory (FIG. 5). Step S256).

ここで、上記各動作ステップについては、これをコンピュータで実行可能にプログラム化し、これらを前記各ステップを直接実行するインタリーブ装置10に実行させるようにしてもよい。また、インタリーブ装置10そのものを、コンピュータによって仮想的に実現することもできる。本プログラムは、非一時的な記録媒体、例えば、DVD、CD、フラッシュメモリ等に記録されてもよい。その場合、本プログラムは、記録媒体からコンピュータによって読み出され、実行される。
この動作により、本実施形態は以下のような効果を奏する。
Here, each of the above-described operation steps may be programmed to be executable by a computer, and may be executed by the interleave device 10 that directly executes each of the steps. Further, the interleave device 10 itself can be virtually realized by a computer. The program may be recorded on a non-temporary recording medium, such as a DVD, a CD, or a flash memory. In this case, the program is read from the recording medium by a computer and executed.
By this operation, this embodiment has the following effects.

以上で説明したように、インタリーブ装置10は、初期設定値i1〜i14を変更するのみで、複数のインタリーブ/デインタリーブ方式に対応できる。たとえば、第1の適用例として説明したIEEE 802.11aだけでなく、WiMAX(IEEE802.16系)などのような、他の同様のインタリーブ/デインタリーブの処理にも応用することもできる。また、第2の適用例として説明したDVB−T2のセルインタリーブだけでなく、他の同様のインタリーブ/デインタリーブにも応用することもできる。   As described above, the interleaving apparatus 10 can support a plurality of interleaving / deinterleaving schemes only by changing the initial setting values i1 to i14. For example, not only IEEE 802.11a described as the first application example but also other similar interleaving / deinterleaving processing such as WiMAX (IEEE802.16 series) can be applied. Further, not only DVB-T2 cell interleaving described as the second application example but also other similar interleaving / deinterleaving can be applied.

また、インタリーブ装置10は、ブロックインタリーブの一般式を演算するアドレス変換装置(第1のアドレス変換部100、第2のアドレス変換部200)を複数段用いてアドレス変換を行うことにより、複数の処理が組み合わさることにより1つのインタリーブとなっている場合でも、複数回に分けることなく一挙動にインタリーブ用アドレス生成をすることができる。従って、メモリを用いてデータに対して直接インタリーブを行う場合と比較して、回路規模を削減することができる。   In addition, the interleaving device 10 performs a plurality of processes by performing address conversion using a plurality of stages of address conversion devices (first address conversion unit 100 and second address conversion unit 200) that calculate a block interleaving general formula. Even when the interleaves are combined into one interleave, it is possible to generate an interleave address in one behavior without dividing it into a plurality of times. Therefore, the circuit scale can be reduced as compared with the case where data is directly interleaved using a memory.

ここでは、アドレス変換回路11をインタリーブ装置10に適用するという動作例について説明したが、生成した出力アドレスの供給先を読み出し/書き込みアドレスポートのどちらかに変更することで、デインタリーブ装置に適用することもできる。例えば、インタリーブする際にアドレス変換回路11がメモリ14に対して書き込みアドレスを供給していたものを、読み出しアドレスを供給するように変更すれば、同一のアドレス変換回路11を用いてデインタリーブを行うことができる。   Here, the operation example in which the address conversion circuit 11 is applied to the interleave device 10 has been described. However, the address conversion circuit 11 is applied to the deinterleave device by changing the supply destination of the generated output address to either the read / write address port. You can also. For example, if the address conversion circuit 11 that supplies the write address to the memory 14 at the time of interleaving is changed to supply a read address, the same address conversion circuit 11 is used for deinterleaving. be able to.

また、アドレス変換回路11はアドレスを所定の規則に基づいて並べ替えるものであるので、インタリーブ装置以外であっても、同様にデータを並び替える装置であれば適用可能である。   Further, since the address conversion circuit 11 rearranges the addresses based on a predetermined rule, it can be applied to any device other than the interleave device as long as it rearranges the data.

(第2の実施形態)
本発明の第2の実施形態に係るインタリーブ装置310は、第1の実施形態の構成に加えて、アドレス変換回路11が、設定コントローラ12によって与えられた第3の設定に応じて、インタリーブの処理に係るブロックサイズに応じた乱数もしくはカウント値を発生してこれを初期アドレスとして出力する初期アドレス生成部400を備える構成とした。
(Second Embodiment)
In the interleaving device 310 according to the second embodiment of the present invention, in addition to the configuration of the first embodiment, the address conversion circuit 11 performs interleaving processing according to the third setting given by the setting controller 12. The configuration includes an initial address generation unit 400 that generates a random number or a count value corresponding to the block size and outputs this as an initial address.

また、この初期アドレス生成部400は、ブロックサイズの範囲内で各処理ごとに重複しない乱数を発生する乱数生成手段420と、ブロックサイズの範囲内で各処理ごとに1ずつ値を変化させたカウント値を発生するカウンタ(N進カウンタ410)と、第3の設定に応じて、発生された乱数もしくはカウント値のうちの一方を選択して出力するマルチプレクサ430とを有する。   The initial address generation unit 400 includes a random number generation unit 420 that generates a random number that does not overlap for each process within the block size range, and a count that is changed by 1 for each process within the block size range. A counter (N-ary counter 410) that generates a value, and a multiplexer 430 that selects and outputs one of the generated random number or count value according to the third setting.

この構成によって、第1の実施形態によって得られる効果を、初期アドレスをN進カウンタもしくは乱数によって生成する必要のあるインタリーブ方式においても得ることもできる。
以下、これについてより詳しく説明する。
With this configuration, the effect obtained by the first embodiment can be obtained even in an interleaving method in which an initial address needs to be generated by an N-ary counter or a random number.
This will be described in more detail below.

図6は、本発明の第2の実施形態に係るインタリーブ装置310の構成について示す説明図である。インタリーブ装置310は、前述した第1の実施形態に係るインタリーブ装置10と比べて、アドレス変換回路11が別のアドレス変換回路311に置換され、さらに初期アドレス生成回路15が省略されているのみであり、他の構成は同一であるので、同一の要素については同一の呼称と参照番号で示している。   FIG. 6 is an explanatory diagram showing the configuration of the interleaving apparatus 310 according to the second embodiment of the present invention. Compared with the interleave device 10 according to the first embodiment described above, the interleave device 310 is obtained by replacing the address conversion circuit 11 with another address conversion circuit 311 and further omitting the initial address generation circuit 15. Since other configurations are the same, the same elements are denoted by the same designations and reference numerals.

図7は、図6に示したアドレス変換回路311のより詳しい構成を示す説明図である。アドレス変換回路311は、前述した第1の実施形態に係るアドレス変換回路11の備えていた第1のアドレス変換部100と、第2のアドレス変換部200とに加えて、新たに初期アドレス生成部400が追加されている。即ち、第1の実施形態に係るアドレス変換回路11に入力される入力アドレスは条件が規定されていたのみであったが、本実施形態では第1のアドレス変換部100に入力される初期アドレスを初期アドレス生成部400によって生成している。アドレス変換回路311は初期アドレス生成部400を有するので、第1の実施形態にあった初期アドレス生成回路15を必要とはしない。   FIG. 7 is an explanatory diagram showing a more detailed configuration of the address conversion circuit 311 shown in FIG. The address conversion circuit 311 is a new initial address generation unit in addition to the first address conversion unit 100 and the second address conversion unit 200 provided in the address conversion circuit 11 according to the first embodiment. 400 has been added. That is, the input address input to the address conversion circuit 11 according to the first embodiment is only provided with conditions, but in this embodiment, the initial address input to the first address conversion unit 100 is used. It is generated by the initial address generator 400. Since the address conversion circuit 311 includes the initial address generation unit 400, the initial address generation circuit 15 according to the first embodiment is not required.

初期アドレス生成部400は、N進カウンタ410、乱数生成手段420、およびマルチプレクサ430を備え、マルチプレクサ430からの出力値が第1のアドレス変換部100に入力される初期アドレスとなる。ここで、Nはブロックインタリーブのブロックサイズを表す整数であり、上位CPU20から設定コントローラ12を介して与えられた第3の設定によって設定される。   The initial address generation unit 400 includes an N-ary counter 410, a random number generation unit 420, and a multiplexer 430, and an output value from the multiplexer 430 becomes an initial address input to the first address conversion unit 100. Here, N is an integer representing the block size of block interleaving, and is set by the third setting given from the host CPU 20 via the setting controller 12.

N進カウンタ410は、0〜N−1の範囲のカウント値を出力する。乱数生成手段420は0〜N−1の範囲の乱数を発生する。かつ、乱数生成手段420はブロックサイズN内では重複した値を生成しない。マルチプレクサ430は、N進カウンタ410から出力されたカウント値と、乱数生成手段420から出力された乱数とを入力とし、この両者のうちのいずれかを、上位CPU20から設定コントローラ12を介して与えられた第3の設定に基づいて選択して出力する。   The N-ary counter 410 outputs a count value in the range of 0 to N-1. The random number generation means 420 generates a random number in the range of 0 to N-1. In addition, the random number generation unit 420 does not generate duplicate values within the block size N. The multiplexer 430 receives the count value output from the N-ary counter 410 and the random number output from the random number generation means 420, and either one of them is given from the host CPU 20 via the setting controller 12. And output based on the third setting.

第1のアドレス変換部100および第2のアドレス変換部200の構成は、前述の図1で説明した第1の実施形態と同一である。従って、ここではそれらの構成の概要のみを説明する。第1のアドレス変換部100は、マルチプレクサ430から出力された初期アドレスを入力とし、第1の初期設定値保持手段110、第1の演算手段120、第2の演算手段130、加算器140を備え、加算器140からの出力値を中間アドレスとして第2のアドレス変換部200に対して出力する。   The configurations of the first address conversion unit 100 and the second address conversion unit 200 are the same as those of the first embodiment described with reference to FIG. Therefore, only the outline of the configuration will be described here. The first address conversion unit 100 has an initial address output from the multiplexer 430 as an input, and includes a first initial setting value holding unit 110, a first calculation unit 120, a second calculation unit 130, and an adder 140. The output value from the adder 140 is output to the second address conversion unit 200 as an intermediate address.

第1の初期設定値保持手段110は、設定コントローラ12からの第1の設定によって設定された、第1〜第7の初期値をあらかじめ記憶する。第1の演算手段120は、初期アドレスと第1〜第5の初期設定値を入力とし、第1の演算結果を出力とする。第2の演算手段130は、初期アドレスと第6〜第7の初期設定値を入力とし、第2の演算結果を出力とする。   The first initial set value holding means 110 stores in advance the first to seventh initial values set by the first setting from the setting controller 12. The first calculation means 120 receives the initial address and the first to fifth initial setting values as inputs and outputs the first calculation result as an output. The second calculation means 130 receives the initial address and the sixth to seventh initial set values as inputs, and outputs the second calculation result as an output.

加算器140は、第1の演算結果と第2の演算結果を加算して得られたアドレスを出力する。この出力されたアドレスが、中間アドレスとなる。第1〜第2の演算手段120、130のより詳細な構成は、図3〜4に示した第1の実施形態と同一である。   The adder 140 outputs an address obtained by adding the first calculation result and the second calculation result. This output address becomes an intermediate address. The more detailed configuration of the first to second calculation means 120 and 130 is the same as that of the first embodiment shown in FIGS.

第2のアドレス変換部200は、中間アドレスを入力とし、第2の初期設定値保持手段210、第3の演算手段220、第4の演算手段230、加算器240を備え、加算器240からの出力値を出力アドレスとしてメモリコントローラ13に対して出力する。   The second address conversion unit 200 has an intermediate address as an input, and includes a second initial setting value holding unit 210, a third calculation unit 220, a fourth calculation unit 230, and an adder 240. The output value is output to the memory controller 13 as an output address.

第2の初期設定値保持手段210は、設定コントローラ12からの第2の設定によって設定された、第8〜第14の初期値を保持する。第3の演算手段220は、中間アドレスと第8〜第12の初期設定値を入力とし、第3の演算結果を出力とする。第4の演算手段230は、中間アドレスと第13〜第14の初期設定値を入力とし、第4の演算結果を出力する。   The second initial set value holding unit 210 holds the eighth to fourteenth initial values set by the second setting from the setting controller 12. The third calculation means 220 receives the intermediate address and the eighth to twelfth initial set values as inputs, and outputs the third calculation result as an output. The fourth calculation means 230 receives the intermediate address and the thirteenth to fourteenth initial set values as inputs, and outputs a fourth calculation result.

加算器240は、第3の演算結果と第4の演算結果を加算して得られたアドレスを出力する。この出力されたアドレスが、出力アドレスとなる。第3〜第4の演算手段220、230のより詳細な構成は、図3〜4に示した第1の実施形態と同一である。   The adder 240 outputs an address obtained by adding the third calculation result and the fourth calculation result. This output address becomes the output address. The more detailed configuration of the third to fourth calculation means 220 and 230 is the same as that of the first embodiment shown in FIGS.

(第2の実施形態の演算の動作)
以上で説明したアドレス変換回路311による演算の動作について説明する。図8は、図6に示したインタリーブ装置310によるインタリーブの動作について示すフローチャートである。まず、上位CPU20からのパラメータ設定の操作を受けて、設定コントローラ12がアドレス変換回路311の第1のアドレス変換部100に第1の設定を、第2のアドレス変換部200に第2の設定を、そして初期アドレス生成部400に第3の設定を各々与える(ステップS451)。
(Calculation operation of the second embodiment)
The operation of the calculation by the address conversion circuit 311 described above will be described. FIG. 8 is a flowchart showing an interleaving operation by interleaving apparatus 310 shown in FIG. First, in response to a parameter setting operation from the host CPU 20, the setting controller 12 sets a first setting in the first address conversion unit 100 and a second setting in the second address conversion unit 200 of the address conversion circuit 311. Then, the third setting is given to the initial address generator 400 (step S451).

アドレス変換回路311に対する第1〜第3の設定が終了したら、メモリコントローラ13は外部からインタリーブ対象となるデータの入力を待ち受け(ステップS452)、データの入力があればそのデータをメモリ14に保存する(ステップS453)。   When the first to third settings for the address conversion circuit 311 are completed, the memory controller 13 waits for input of data to be interleaved from the outside (step S452), and stores the data in the memory 14 if data is input. (Step S453).

そして、初期アドレス生成部400が、与えられた第3の設定に基づいて初期アドレスを生成してこれを第1のアドレス変換部100に入力し(ステップS454)、第1のアドレス変換部100はこの初期アドレスに対して中間アドレスを出力し(ステップS455)、第2のアドレス変換部200はこの中間アドレスに対して出力アドレスを出力する(ステップS456)。そして、メモリコントローラ13は出力アドレスのデータをメモリ14から読み出して出力する(ステップS457)。   Then, the initial address generation unit 400 generates an initial address based on the given third setting and inputs it to the first address conversion unit 100 (step S454), and the first address conversion unit 100 An intermediate address is output with respect to the initial address (step S455), and the second address conversion unit 200 outputs an output address with respect to the intermediate address (step S456). Then, the memory controller 13 reads out the output address data from the memory 14 and outputs it (step S457).

以後、説明を平易なものとするため、加減算器124および加減算器224は、(加算、加算、減算)の動作を行うよう、設定コントローラ12によって設定が与えられるものとする。   Hereinafter, in order to simplify the description, it is assumed that the setting controller 12 sets the adder / subtractor 124 and the adder / subtractor 224 so as to perform an operation of (addition, addition, subtraction).

まず、上位CPU20から設定コントローラ12を介して、第1のアドレス変換部100、第2のアドレス変換部200、および初期アドレス生成部400に対して各々第1〜第3の設定を与える。   First, the first to third settings are given from the upper CPU 20 to the first address conversion unit 100, the second address conversion unit 200, and the initial address generation unit 400 via the setting controller 12.

これによって、第1の初期設定値保持手段110の第1の初期値〜第7の初期値に値が設定され、第2の初期設定値保持手段210の第8の初期値〜第14の初期値に値が設定される。また、加減算器124は3入力に対して(加算、加算、減算)を行うように設定される。同様に加減算器224も3入力に対して(加算、加算、減算)を行うように設定される。さらに、マルチプレクサ430において、2入力あるうちのいずれかを選択し出力するかが設定される。ここではN進カウンタ410から出力されたカウント値が出力されるように設定されているものとする。   As a result, the first initial value to the seventh initial value of the first initial set value holding unit 110 are set, and the eighth initial value to the fourteenth initial value of the second initial set value holding unit 210 are set. Value is set to value. The adder / subtractor 124 is set to perform (addition, addition, subtraction) on three inputs. Similarly, the adder / subtractor 224 is also set to perform (addition, addition, subtraction) on the three inputs. Further, in the multiplexer 430, it is set whether to select and output one of the two inputs. Here, it is assumed that the count value output from the N-ary counter 410 is set to be output.

以上の設定を完了したアドレス変換回路311で、アドレス変換処理が開始される。このとき、初期アドレス生成部400において、N進カウンタ410からマルチプレクサ430に対して、0〜N−1までのカウント値が順に出力され、これが設定によってマルチプレクサ430から第1のアドレス変換部100へ入力される初期アドレスとなる。   Address conversion processing is started in the address conversion circuit 311 that has completed the above settings. At this time, in the initial address generation unit 400, count values from 0 to N-1 are sequentially output from the N-ary counter 410 to the multiplexer 430, and this is input from the multiplexer 430 to the first address conversion unit 100 by setting. This is the initial address to be used.

これに続く第1のアドレス変換部100および第2のアドレス変換部の動作は、第1の実施形態と同一である。以上のようにして第2のアドレス変換部200から出力された出力アドレスは、インタリーブするデータが保存されたメモリ14にアクセスするためにメモリコントローラ13に対して出力されるアドレスとなる。   Subsequent operations of the first address conversion unit 100 and the second address conversion unit are the same as those in the first embodiment. The output address output from the second address conversion unit 200 as described above is an address output to the memory controller 13 in order to access the memory 14 in which data to be interleaved is stored.

初期アドレス生成手段300、第1のアドレス変換部100および第2のアドレス変換部200は直列に接続されている構成であるので、パイプライン的に連続して処理が可能である。従って、初期アドレス生成手段300から初期アドレスが連続して出力されている限りは、本実施形態のインタリーブ装置310は出力アドレスを連続して出力することができ、第1の実施形態と同一の効果を得ることができる。   Since the initial address generation unit 300, the first address conversion unit 100, and the second address conversion unit 200 are connected in series, processing can be continuously performed in a pipeline manner. Therefore, as long as the initial address is continuously output from the initial address generation means 300, the interleave device 310 of this embodiment can output the output address continuously, and the same effect as that of the first embodiment. Can be obtained.

(第2の実施形態の実際の通信に対する適用例)
以下、インタリーブ装置310の実際の通信に対する適用例を2種類挙げて説明する。まず、インタリーブ装置310をIEEE802.11aのシンボルインタリーブの処理に適用する場合について説明する。このIEEE802.11aのシンボルインタリーブでは、第1パーミュテーションおよび第2パーミュテーションという2種類の異なった処理を組み合わせて、一つのインタリーブとしている。
(Application example of the second embodiment for actual communication)
Hereinafter, two types of application examples of the interleave device 310 for actual communication will be described. First, the case where the interleaving apparatus 310 is applied to the IEEE 802.11a symbol interleaving process will be described. In the IEEE802.11a symbol interleaving, two different types of processing, the first permutation and the second permutation, are combined into one interleave.

この場合、アドレス変換回路311において、第1パーミュテーションの処理に対応するのが第1のアドレス変換部100であり、第2パーミュテーションの処理に対応するのが第2のアドレス変換部200である。ここでのパラメータは、インタリーブのブロックサイズN=192となり、また変調方式として16QAMが使用される。さらに、初期アドレスは0〜191まで順に増加していく。   In this case, in the address conversion circuit 311, the first address conversion unit 100 corresponds to the first permutation process, and the second address conversion unit 200 corresponds to the second permutation process. It is. The parameters here are the interleave block size N = 192, and 16QAM is used as the modulation scheme. Further, the initial address increases sequentially from 0 to 191.

この時、第1パーミュテーションと第2パーミュテーションの各々のアドレス生成式は、前述の数3〜3と同一の式で表される。従って、第1のアドレス変換部100への第1の設定時に、上位CPU20から設定コントローラ12を介して、第1の初期設定値保持手段110に設定される第1〜第7の初期設定値i1〜i7は、第1の実施形態と同様に、各々(i1、i2、i3、i4、i5、i6、i7)=(0、0、1、16、12、16、1)となる。   At this time, each address generation formula of the first permutation and the second permutation is expressed by the same formula as the above-described equations 3 to 3. Accordingly, the first to seventh initial setting values i1 set in the first initial setting value holding means 110 from the host CPU 20 via the setting controller 12 at the time of the first setting to the first address conversion unit 100. To i7 are (i1, i2, i3, i4, i5, i6, i7) = (0, 0, 1, 16, 12, 16, 1), respectively, as in the first embodiment.

また、第2のアドレス変換部200への第2の設定時に、上位CPU20から設定コントローラ12を介して、第2の初期設定値保持手段210に設定される第8〜第14の初期設定値i8〜i14は、第1の実施形態と同様に、各々(i8、i9、i10、i11、i12、i13、i14)=(128、1、8、2、1、2、2)となる。   Further, at the time of the second setting in the second address conversion unit 200, the eighth to fourteenth initial setting values i8 set in the second initial setting value holding means 210 from the host CPU 20 via the setting controller 12 ˜i14 are respectively (i8, i9, i10, i11, i12, i13, i14) = (128, 1, 8, 2, 1, 2, 2), as in the first embodiment.

また、第1の演算手段120の加減算器124は、上位CPU20から設定コントローラ12を介して、(加算、加算、減算)という演算を行うように設定される。一方で、第3の演算手段220の加減算器224は、(加算、加算、減算)という演算を行うように設定される。そして、初期アドレス生成部400のマルチプレクサ430は、N進カウンタ410側の入力を選択して出力するように設定される。   Further, the adder / subtractor 124 of the first calculation means 120 is set so as to perform a calculation (addition, addition, subtraction) from the upper CPU 20 via the setting controller 12. On the other hand, the adder / subtracter 224 of the third calculation means 220 is set to perform a calculation (addition, addition, subtraction). The multiplexer 430 of the initial address generator 400 is set to select and output the input on the N-ary counter 410 side.

このとき、第1のアドレス変換部100は、入力された初期アドレスと第1の設定に基づいて設定された第1から第7の初期設定値に基づいてアドレス変換を行い、中間アドレスを出力する。また、第2のアドレス変換部は、前記の中間アドレスと第2の設定に基づいて設定された第8から第14の初期設定値に基づいてアドレス変換を行い、出力アドレスを出力する。この具体的な動作は、第1の実施形態と同一である。以上のようにして、IEEE802.11aのシンボルインタリーブのためのアドレス生成を行うことができる。   At this time, the first address conversion unit 100 performs address conversion based on the input initial address and the first to seventh initial setting values set based on the first setting, and outputs an intermediate address. . The second address translation unit performs address translation based on the intermediate address and the eighth to fourteenth initial setting values set based on the second setting, and outputs an output address. This specific operation is the same as that of the first embodiment. As described above, address generation for IEEE802.11a symbol interleaving can be performed.

続いて、インタリーブ装置310をDVB−T2のセルインタリーブの処理に適用する場合を説明する。DVB−T2のセルインタリーブは、線形フィードバックシフトレジスタをベースとした回路によって生成されたランダムな値を初期アドレスとし、そこへシンボル番号に基づいたシフトを組み合わせたインタリーブとなっている。ここで、インタリーブ装置310で、基本パーミュテーション関数(basic permutation function)の生成に対応するのが、初期アドレス生成部400である。   Next, the case where the interleaving apparatus 310 is applied to the DVB-T2 cell interleaving process will be described. DVB-T2 cell interleaving is an interleaving in which a random value generated by a circuit based on a linear feedback shift register is used as an initial address, and a shift based on a symbol number is combined therewith. Here, the initial address generation unit 400 corresponds to the generation of a basic permutation function in the interleaving device 310.

ここでのパラメータは、インタリーブのブロックサイズN=8100(=64800/8)、かつセルインタリーブのシフト量は4096となる。この時、DVB−T2セルインタリーブのパーミュテーション関数(permutation function)のアドレス生成式は、上述した数5と同一式で表される。   The parameters here are the interleave block size N = 8100 (= 64800/8), and the cell interleave shift amount is 4096. At this time, the DVB-T2 cell interleave permutation function address generation formula is expressed by the same formula as Equation 5 described above.

ここで、第1のアドレス変換部100へ第1の設定時に、上位CPU20から設定コントローラ12を介して、第1の初期設定値保持手段110に設定される第1〜第7の初期設定値i1〜i7は各々、(i1、i2、i3、i4、i5、i6、i7)=(0、0、1、4096、1、1、0)となる。   Here, at the time of the first setting to the first address conversion unit 100, the first to seventh initial setting values i1 set in the first initial setting value holding means 110 from the host CPU 20 via the setting controller 12 ˜i7 is (i1, i2, i3, i4, i5, i6, i7) = (0, 0, 1, 4096, 1, 1, 0), respectively.

また、第2のアドレス変換部200ではアドレス変換を行わず、中間アドレスを変化させることなくそのまま出力アドレスとして出力する。従って、第2のアドレス変換部200に対する第2の設定時では、初期設定値保持手段210に対して設定を行わない。即ち、第8〜第14の初期設定値i8〜i14は各々、(i8、i9、i10、i11、i12、i13、i14)=(0、0、1、8100、0、0、0)とした場合と等価である。   The second address conversion unit 200 does not perform address conversion and outputs the output address as it is without changing the intermediate address. Therefore, at the time of the second setting for the second address conversion unit 200, the initial setting value holding unit 210 is not set. That is, the 8th to 14th initial setting values i8 to i14 are (i8, i9, i10, i11, i12, i13, i14) = (0, 0, 1, 8100, 0, 0, 0), respectively. Is equivalent to the case.

さらに、初期アドレス生成部400への第3の設定では、上位CPU20から設定コントローラ12を介して、マルチプレクサ430において乱数生成手段420側の入力を選択するよう設定される。乱数生成手段420では、規格に従った線形フィードバックシフトレジスタをベースとした回路によって乱数が生成される。この乱数は0〜8099の範囲内の整数値である。   Further, in the third setting to the initial address generation unit 400, the setting is made so that the multiplexer 430 selects the input on the random number generation unit 420 side from the host CPU 20 via the setting controller 12. In the random number generation means 420, a random number is generated by a circuit based on a linear feedback shift register according to the standard. This random number is an integer value in the range of 0-8099.

このとき、第1のアドレス変換部100は、入力された初期アドレスと第1の設定に基づいて設定された第1から第7の初期設定値に基づいてアドレス変換を行い、中間アドレスを出力する。また、第2のアドレス変換部は、前記の中間アドレスに対して、変換を行わず、そのまま出力アドレスとして出力する。以上のようにして、DVB−T2のセルインタリーブのためのアドレス生成を行うことができる。   At this time, the first address conversion unit 100 performs address conversion based on the input initial address and the first to seventh initial setting values set based on the first setting, and outputs an intermediate address. . The second address conversion unit does not convert the intermediate address and outputs it as an output address. As described above, address generation for DVB-T2 cell interleaving can be performed.

以上で説明したように、インタリーブ装置310は、初期設定値i1〜i14とマルチプレクサ430に対する設定を変更するのみで、複数のインタリーブ/デインタリーブ方式に対応できる。たとえば、第1の適用例として説明したIEEE 802.11aだけでなく、WiMAX(IEEE802.16系)などのような、他の同様のインタリーブ/デインタリーブの処理にも応用することもできる。また、第2の適用例として説明したDVB−T2のセルインタリーブだけでなく、他の同様のインタリーブ/デインタリーブにも応用することもできる。   As described above, the interleaving device 310 can cope with a plurality of interleaving / deinterleaving schemes only by changing the initial setting values i1 to i14 and the setting for the multiplexer 430. For example, not only IEEE 802.11a described as the first application example but also other similar interleaving / deinterleaving processing such as WiMAX (IEEE802.16 series) can be applied. Further, not only DVB-T2 cell interleaving described as the second application example but also other similar interleaving / deinterleaving can be applied.

また、インタリーブ装置310は、ブロックインタリーブの一般式を演算するアドレス変換装置(第1のアドレス変換部100、第2のアドレス変換部200)を複数段用いてアドレス変換を行うことにより、複数の処理が組み合わさることにより1つのインタリーブとなっている場合でも、複数回に分けることなく一挙動にインタリーブ用アドレス生成をすることができる。従って、メモリを用いてデータに対して直接インタリーブを行う場合と比較して、回路規模を削減することができるという、第1の実施形態と同一の効果を得ることができる。   The interleaving device 310 performs a plurality of processes by performing address conversion using a plurality of stages of address conversion devices (first address conversion unit 100 and second address conversion unit 200) that calculate a general formula of block interleaving. Even when the interleaves are combined into one interleave, it is possible to generate an interleave address in one behavior without dividing it into a plurality of times. Therefore, it is possible to obtain the same effect as that of the first embodiment that the circuit scale can be reduced as compared with the case where the data is directly interleaved using the memory.

本実施形態では、以上に示した第1の実施形態と同一の効果を、初期アドレスをN進カウンタもしくは乱数によって生成する必要のあるインタリーブ方式においても得ることもできる。   In the present embodiment, the same effect as that of the first embodiment described above can be obtained even in an interleaving method in which an initial address needs to be generated by an N-ary counter or a random number.

(第3の実施形態)
本発明の第3の実施形態に係るインタリーブ装置510は、第2の実施形態の構成に加えて、アドレス変換回路511が、設定コントローラ12によって与えられた第4の設定に応じて、出力アドレスを最終出力アドレスに変換してこれをメモリコントローラに対して出力するルックアップテーブル部600を備える構成とした。
(Third embodiment)
In the interleaving apparatus 510 according to the third embodiment of the present invention, in addition to the configuration of the second embodiment, the address conversion circuit 511 sets the output address according to the fourth setting given by the setting controller 12. A look-up table unit 600 that converts the final output address and outputs it to the memory controller is provided.

また、このルックアップテーブル部600は、第4の設定で与えられた処理回数ごとに増加するオフセット値を出力するオフセット出力手段610と、出力アドレスからオフセット出力手段から出力されたオフセット値を減算した値を出力する減算器620と、設定コントローラによって与えられた値を記憶し、前記減算器から出力された値に対応するアドレスに記憶されている値を出力するメモリ手段630と、メモリ手段から出力された値とオフセット出力手段から出力された値とを加算してこれを最終出力アドレスとして出力する加算器640とを備える。   Further, the lookup table unit 600 subtracts the offset value output from the offset output means from the output address, and the offset output means 610 that outputs an offset value that increases with each processing count given in the fourth setting. A subtractor 620 for outputting a value; a memory means 630 for storing a value given by a setting controller; and a value stored at an address corresponding to the value outputted from the subtractor; and an output from the memory means And an adder 640 for adding the output value and the value output from the offset output means and outputting the result as a final output address.

この構成によって、第1〜2の実施形態によって得られる効果を、テーブルを用いる形式のインタリーブを利用する必要のあるインタリーブ方式においても得ることもできる。
以下、これについてより詳しく説明する。
With this configuration, the effects obtained by the first and second embodiments can be obtained even in an interleaving method that requires the use of a table-type interleaving.
This will be described in more detail below.

図9は、本発明の第3の実施形態に係るインタリーブ装置510の構成について示す説明図である。インタリーブ装置510は、前述した第1の実施形態に係るインタリーブ装置10と比べて、アドレス変換回路11が別のアドレス変換回路511に置換され、さらに初期アドレス生成回路15が省略されているのみであり、他の構成は同一であるので、同一の要素については同一の呼称と参照番号で示している。   FIG. 9 is an explanatory diagram illustrating a configuration of an interleave apparatus 510 according to the third embodiment of the present invention. Compared with the interleaving device 10 according to the first embodiment described above, the interleaving device 510 is obtained by replacing the address conversion circuit 11 with another address conversion circuit 511 and further omitting the initial address generation circuit 15. Since other configurations are the same, the same elements are denoted by the same designations and reference numerals.

図10は、図9に示したアドレス変換回路511のより詳しい構成を示す説明図である。アドレス変換回路511は、前述した第2の実施形態に係るアドレス変換回路311の備えていた第1のアドレス変換部100と、第2のアドレス変換部200と、初期アドレス生成部400とに加えて、新たにルックアップテーブル部600が第2のアドレス変換部200の後段に追加されている。従って、ここでは第1のアドレス変換部100からの出力を第1の中間アドレス、第2のアドレス変換部200からの出力を第2の中間アドレスという。ちなみに請求項では、第2のアドレス変換部200からの出力を出力アドレス、ルックアップテーブル部600からの出力を最終出力アドレスとしている。アドレス変換回路511は初期アドレス生成部400を有するので、第1の実施形態にあった初期アドレス生成回路15を必要とはしない。   FIG. 10 is an explanatory diagram showing a more detailed configuration of the address conversion circuit 511 shown in FIG. The address conversion circuit 511 includes the first address conversion unit 100, the second address conversion unit 200, and the initial address generation unit 400 provided in the address conversion circuit 311 according to the second embodiment described above. A lookup table unit 600 is newly added after the second address conversion unit 200. Therefore, here, the output from the first address translation unit 100 is referred to as a first intermediate address, and the output from the second address translation unit 200 is referred to as a second intermediate address. Incidentally, in the claims, the output from the second address conversion unit 200 is used as an output address, and the output from the lookup table unit 600 is used as a final output address. Since the address conversion circuit 511 includes the initial address generation unit 400, the initial address generation circuit 15 according to the first embodiment is not required.

ルックアップテーブル部600は、第2のアドレス変換部200から出力された第2の中間アドレスを入力とし、オフセット出力手段610、減算器620、メモリ手段630、加算器640を備え、加算器640からの出力値を出力アドレスとしてメモリコントローラ13に対して出力する。   The lookup table unit 600 has the second intermediate address output from the second address conversion unit 200 as an input, and includes an offset output unit 610, a subtracter 620, a memory unit 630, and an adder 640. Are output to the memory controller 13 as output addresses.

オフセット出力手段610は設定コントローラ12からの第4の設定によって設定された、オフセット値を出力する。減算器620は第2の中間アドレスとオフセット出力手段610から出力されたオフセット値とを入力とし、その減算結果を出力する。メモリ手段630は、設定コントローラ12からの第4の設定によって予め値を記憶されており、減算器620からの出力を入力アドレスとして、そのアドレスに保管されている値を出力とする。加算器640は、メモリ手段630からの出力とオフセット出力手段610からの出力とを入力とし、その加算結果を出力アドレスとして出力する。   The offset output means 610 outputs the offset value set by the fourth setting from the setting controller 12. The subtractor 620 receives the second intermediate address and the offset value output from the offset output means 610, and outputs the subtraction result. The memory means 630 stores a value in advance by the fourth setting from the setting controller 12, and uses the output from the subtracter 620 as an input address and outputs the value stored at that address. The adder 640 receives the output from the memory unit 630 and the output from the offset output unit 610, and outputs the addition result as an output address.

これ以外の、第1のアドレス変換部100、第2のアドレス変換部200、初期アドレス生成部400の各々の構成は、前述の図1および図7で説明した第1〜2の実施形態と同一であるので、ここではそれらの概要のみを説明する。   The other configurations of the first address conversion unit 100, the second address conversion unit 200, and the initial address generation unit 400 are the same as those in the first and second embodiments described with reference to FIGS. Therefore, only the outline thereof will be described here.

初期アドレス生成部400は、N進カウンタ410、乱数生成手段420、およびマルチプレクサ430を備え、マルチプレクサ430からの出力値が第1のアドレス変換部100に入力される初期アドレスとなる。ここで、Nはブロックインタリーブのブロックサイズを表す整数であり、上位CPU20から設定コントローラ12を介して与えられた第3の設定によって設定される。   The initial address generation unit 400 includes an N-ary counter 410, a random number generation unit 420, and a multiplexer 430, and an output value from the multiplexer 430 becomes an initial address input to the first address conversion unit 100. Here, N is an integer representing the block size of block interleaving, and is set by the third setting given from the host CPU 20 via the setting controller 12.

N進カウンタ410は、0〜N−1の範囲のカウント値を出力する。乱数生成手段420は0〜N−1の範囲の乱数を発生する。かつ、乱数生成手段420はブロックサイズN内では重複した値を生成しない。マルチプレクサ430は、N進カウンタ410から出力されたカウント値と、乱数生成手段420から出力された乱数とを入力とし、この両者のうちのいずれかを、上位CPU20から設定コントローラ12を介して与えられた第3の設定に基づいて選択して出力する。   The N-ary counter 410 outputs a count value in the range of 0 to N-1. The random number generation means 420 generates a random number in the range of 0 to N-1. In addition, the random number generation unit 420 does not generate duplicate values within the block size N. The multiplexer 430 receives the count value output from the N-ary counter 410 and the random number output from the random number generation means 420, and either one of them is given from the host CPU 20 via the setting controller 12. And output based on the third setting.

第1のアドレス変換部100は、マルチプレクサ430から出力された初期アドレスを入力とし、第1の初期設定値保持手段110、第1の演算手段120、第2の演算手段130、加算器140を備え、加算器140からの出力値を第1の中間アドレスとして第2のアドレス変換部200に対して出力する。   The first address conversion unit 100 has an initial address output from the multiplexer 430 as an input, and includes a first initial setting value holding unit 110, a first calculation unit 120, a second calculation unit 130, and an adder 140. The output value from the adder 140 is output to the second address conversion unit 200 as the first intermediate address.

第1の初期設定値保持手段110は、設定コントローラ12からの第1の設定によって設定された、第1〜第7の初期値をあらかじめ記憶する。第1の演算手段120は、初期アドレスと第1〜第5の初期設定値を入力とし、第1の演算結果を出力とする。第2の演算手段130は、初期アドレスと第6〜第7の初期設定値を入力とし、第2の演算結果を出力とする。   The first initial set value holding means 110 stores in advance the first to seventh initial values set by the first setting from the setting controller 12. The first calculation means 120 receives the initial address and the first to fifth initial setting values as inputs and outputs the first calculation result as an output. The second calculation means 130 receives the initial address and the sixth to seventh initial set values as inputs, and outputs the second calculation result as an output.

加算器140は、第1の演算結果と第2の演算結果を加算して得られたアドレスを出力する。この出力されたアドレスが、第1の中間アドレスとなる。第1〜第2の演算手段120、130のより詳細な構成は、図3〜4に示した第1の実施形態と同一である。   The adder 140 outputs an address obtained by adding the first calculation result and the second calculation result. This output address becomes the first intermediate address. The more detailed configuration of the first to second calculation means 120 and 130 is the same as that of the first embodiment shown in FIGS.

第2のアドレス変換部200は、中間アドレスを入力とし、第2の初期設定値保持手段210、第3の演算手段220、第4の演算手段230、加算器240を備え、加算器240からの出力値を第2の中間アドレスとしてルックアップテーブル部600に対して出力する。   The second address conversion unit 200 has an intermediate address as an input, and includes a second initial setting value holding unit 210, a third calculation unit 220, a fourth calculation unit 230, and an adder 240. The output value is output to the lookup table unit 600 as a second intermediate address.

第2の初期設定値保持手段210は、設定コントローラ12からの第2の設定によって設定された、第8〜第14の初期値を保持する。第3の演算手段220は、中間アドレスと第8〜第12の初期設定値を入力とし、第3の演算結果を出力とする。第4の演算手段230は、中間アドレスと第13〜第14の初期設定値を入力とし、第4の演算結果を出力する。   The second initial set value holding unit 210 holds the eighth to fourteenth initial values set by the second setting from the setting controller 12. The third calculation means 220 receives the intermediate address and the eighth to twelfth initial set values as inputs, and outputs the third calculation result as an output. The fourth calculation means 230 receives the intermediate address and the thirteenth to fourteenth initial set values as inputs, and outputs a fourth calculation result.

加算器240は、第3の演算結果と第4の演算結果を加算して得られたアドレスを出力する。この出力されたアドレスが、第2の中間アドレスとなる。第3〜第4の演算手段220、230のより詳細な構成は、図3〜4に示した第1の実施形態と同一である。   The adder 240 outputs an address obtained by adding the third calculation result and the fourth calculation result. This output address becomes the second intermediate address. The more detailed configuration of the third to fourth calculation means 220 and 230 is the same as that of the first embodiment shown in FIGS.

(第3の実施形態の演算の動作)
以上で説明したアドレス変換回路511による演算の動作について説明する。図11は、図9に示したインタリーブ装置510によるインタリーブの動作について示すフローチャートである。まず、上位CPU20からのパラメータ設定の操作を受けて、設定コントローラ12がアドレス変換回路511の第1のアドレス変換部100に第1の設定を、第2のアドレス変換部200に第2の設定を、初期アドレス生成部400に第3の設定を、そしてルックアップテーブル部600に第4の設定を、各々与える(ステップS651)。
(Calculation operation of the third embodiment)
The calculation operation by the address conversion circuit 511 described above will be described. FIG. 11 is a flowchart showing an interleaving operation by interleaving apparatus 510 shown in FIG. First, in response to a parameter setting operation from the host CPU 20, the setting controller 12 sets the first setting in the first address conversion unit 100 and the second setting in the second address conversion unit 200 of the address conversion circuit 511. The third setting is given to the initial address generation unit 400, and the fourth setting is given to the lookup table unit 600 (step S651).

アドレス変換回路511に対する第1〜第4の設定が終了したら、メモリコントローラ13は外部からインタリーブ対象となるデータの入力を待ち受け(ステップS652)、データの入力があればそのデータをメモリ14に保存する(ステップS653)。   When the first to fourth settings for the address conversion circuit 511 are completed, the memory controller 13 waits for input of data to be interleaved from the outside (step S652), and stores the data in the memory 14 if data is input. (Step S653).

そして、初期アドレス生成部400が、与えられた第3の設定に基づいて初期アドレスを生成してこれを第1のアドレス変換部100に入力し(ステップS654)、第1のアドレス変換部100はこの初期アドレスに対して第1の中間アドレスを出力し(ステップS655)、第2のアドレス変換部200はこの第1の中間アドレスに対して第2の中間アドレスを出力する(ステップS656)。   Then, the initial address generation unit 400 generates an initial address based on the given third setting and inputs it to the first address conversion unit 100 (step S654), and the first address conversion unit 100 The first intermediate address is output for the initial address (step S655), and the second address converter 200 outputs the second intermediate address for the first intermediate address (step S656).

そして、ルックアップテーブル部600が、この第2の中間アドレスに対応する出力アドレスを出力し(ステップS657)、メモリコントローラ13は出力アドレスのデータをメモリ14から読み出して出力する(ステップS658)。   Then, the lookup table unit 600 outputs an output address corresponding to the second intermediate address (step S657), and the memory controller 13 reads out the output address data from the memory 14 and outputs it (step S658).

以後、説明を平易なものとするため、加減算器124および加減算器224は、(加算、加算、減算)の動作を行うよう、設定コントローラ12によって設定が与えられるものとする。   Hereinafter, in order to simplify the description, it is assumed that the setting controller 12 sets the adder / subtractor 124 and the adder / subtractor 224 so as to perform an operation of (addition, addition, subtraction).

まず、上位CPU20から設定コントローラ12を介して、第1のアドレス変換部100、第2のアドレス変換部200、初期アドレス生成部400、およびルックアップテーブル部600に対して各々第1〜第4の設定を与える。   First, the first to fourth address converters 100, 200, 200, and 600 through the setting controller 12 from the upper CPU 20 are respectively used. Give settings.

これによって、第1の初期設定値保持手段110の第1の初期値〜第7の初期値に値が設定され、第2の初期設定値保持手段210の第8の初期値〜第14の初期値に値が設定される。また、加減算器124は3入力に対して(加算、加算、減算)を行うように設定される。同様に加減算器224も3入力に対して(加算、加算、減算)を行うように設定される。   As a result, the first initial value to the seventh initial value of the first initial set value holding unit 110 are set, and the eighth initial value to the fourteenth initial value of the second initial set value holding unit 210 are set. Value is set to value. The adder / subtractor 124 is set to perform (addition, addition, subtraction) on three inputs. Similarly, the adder / subtractor 224 is also set to perform (addition, addition, subtraction) on the three inputs.

さらに、マルチプレクサ430において、2入力あるうちのいずれかを選択し出力するかが設定される。ここではN進カウンタ410から出力されたカウント値が出力されるように設定されているものとする。そして、メモリ手段630には、入力アドレスを出力アドレスに変換するためのインタリーブ方式に対応したパターンを予め記憶する。   Further, in the multiplexer 430, it is set whether to select and output one of the two inputs. Here, it is assumed that the count value output from the N-ary counter 410 is set to be output. The memory unit 630 stores in advance a pattern corresponding to an interleaving method for converting an input address to an output address.

以上の設定を完了したアドレス変換回路511で、アドレス変換処理が開始される。このとき、初期アドレス生成部400において、N進カウンタ410からマルチプレクサ430に対して、0〜N−1までのカウント値が順に出力され、これが設定によってマルチプレクサ430から第1のアドレス変換部100へ入力される初期アドレスとなる。   Address conversion processing is started in the address conversion circuit 511 that has completed the above settings. At this time, in the initial address generation unit 400, count values from 0 to N-1 are sequentially output from the N-ary counter 410 to the multiplexer 430, and this is input from the multiplexer 430 to the first address conversion unit 100 by setting. This is the initial address to be used.

これに続く第1のアドレス変換部100および第2のアドレス変換部の動作は、第1の実施形態と同一である。以上のようにして、第2のアドレス変換部200から第2の中間アドレスがルックアップテーブル部600に対して出力される。   Subsequent operations of the first address conversion unit 100 and the second address conversion unit are the same as those in the first embodiment. As described above, the second intermediate address is output from the second address conversion unit 200 to the lookup table unit 600.

ルックアップテーブル部600で、オフセット出力手段610は第2の中間アドレスが第4の設定によって規定された回数入力される毎にその値が増加するオフセット値を出力する。減算器620は第2の中間アドレスからオフセット値を減算して出力し、それがメモリ手段630への読み出しアドレスとなる。   In the look-up table unit 600, the offset output unit 610 outputs an offset value that increases every time the second intermediate address is input the number of times specified by the fourth setting. The subtractor 620 subtracts the offset value from the second intermediate address and outputs it, which becomes the read address to the memory means 630.

メモリ手段630は、入力された読み出しアドレスに保持する変換後のアドレス値を出力する。加算器640は、メモリ手段630からの出力とオフセット値とを加算し、その加算結果を出力アドレスとして出力する。以上のようにしてルックアップテーブル部600から出力された出力アドレスは、インタリーブするデータが保存されたメモリ14にアクセスするためにメモリコントローラ13に対して出力されるアドレスとなる。   The memory means 630 outputs the converted address value held at the input read address. The adder 640 adds the output from the memory means 630 and the offset value, and outputs the addition result as an output address. The output address output from the look-up table unit 600 as described above is an address output to the memory controller 13 in order to access the memory 14 in which data to be interleaved is stored.

初期アドレス生成手段300、第1のアドレス変換部100、第2のアドレス変換部200、およびルックアップテーブル部600は直列に接続されている構成であるので、パイプライン的に連続して処理が可能である。従って、初期アドレス生成手段300から初期アドレスが連続して出力されている限りは、本実施形態のインタリーブ装置510は出力アドレスを連続して出力することができ、第1の実施形態と同一の効果を得ることができる。   Since the initial address generation unit 300, the first address conversion unit 100, the second address conversion unit 200, and the lookup table unit 600 are connected in series, processing can be continuously performed in a pipeline manner. It is. Therefore, as long as the initial address is continuously output from the initial address generation means 300, the interleave device 510 of this embodiment can output the output address continuously, and the same effect as in the first embodiment. Can be obtained.

本実施形態では、ルックアップテーブル部600を追加で備えることで、テーブルを用いる形式のインタリーブが組み合わされている場合でも、メモリへのアクセス回数を1回で済ませることができる。従って、本構成を用いることで、すべての入出力パターンをメモリに保存しておき、そのパターンを用いて1回のメモリアクセスで済ませる場合よりも、回路規模を削減することができる。即ち、テーブルを用いる形式のインタリーブを利用する場合においても、第1〜2の実施形態と同一の効果を得ることができる。   In the present embodiment, the lookup table unit 600 is additionally provided, so that even when interleaving using a table is combined, the number of accesses to the memory can be reduced to one. Therefore, by using this configuration, the circuit scale can be reduced as compared with the case where all input / output patterns are stored in the memory and only one memory access is completed using the patterns. That is, even when interleaving using a table is used, the same effects as those of the first and second embodiments can be obtained.

(第3の実施形態の実際の通信に対する適用例)
以下、インタリーブ装置510の実際の通信に対する適用例として、インタリーブ装置510をISDB−Tの周波数インタリーブの処理に適用する場合について説明する。前述のように、ISDB−Tの周波数インタリーブは、セグメント間インタリーブ、セグメント内キャリアローテーション、セグメント内キャリアランダマイズの3種類の異なった処理が組み合わさることにより、一つのインタリーブとなっている。
(Application example of the third embodiment for actual communication)
Hereinafter, as an application example of the interleave apparatus 510 for actual communication, a case where the interleave apparatus 510 is applied to frequency interleaving processing of ISDB-T will be described. As described above, the frequency interleaving of ISDB-T is a single interleaving by combining three different processes of inter-segment interleaving, intra-segment carrier rotation, and intra-segment carrier randomization.

このとき、本実施形態にかかるインタリーブ装置510で、セグメント間インタリーブの処理に対応するのが第1のアドレス変換部100であり、セグメント内キャリアローテーションに対応するのが第2のアドレス変換部200であり、セグメント内キャリアランダマイズに対応するのがルックアップテーブル部600である。また、初期アドレスは、0〜N−1の範囲で1ずつ順に増加していく。   At this time, in the interleaving apparatus 510 according to the present embodiment, the first address conversion unit 100 corresponds to inter-segment interleaving processing, and the second address conversion unit 200 corresponds to intra-segment carrier rotation. The look-up table unit 600 corresponds to intra-segment carrier randomization. Further, the initial address increases sequentially by 1 in the range of 0 to N-1.

ここでのパラメータは、インタリーブのブロックサイズN=384×12=4608である。また、周波数インタリーブはモード3の同期変調部に対して行われる。この時、セグメント間インタリーブのアドレス生成式は、以下の数6で示される。また、セグメント内キャリアローテーションのアドレス生成式は、以下の数7で示される。なお、セグメント内キャリアランダマイズに関しては、テーブルを用いるので、特に生成式はない。   The parameter here is the interleave block size N = 384 × 12 = 4608. Further, frequency interleaving is performed on the mode 3 synchronous modulation section. At this time, an inter-segment interleave address generation formula is expressed by the following equation (6). The address generation formula for intra-segment carrier rotation is expressed by the following equation (7). Regarding intra-segment carrier randomization, a table is used, so there is no particular generation formula.

〔数6〕

Figure 2013110678
[Equation 6]
Figure 2013110678

〔数7〕

Figure 2013110678
[Equation 7]
Figure 2013110678

ここで、上位CPU20から設定コントローラ12を介して行われる第1から第4の設定は、まず初期アドレス生成手段400への第3の設定で、マルチプレクサ430においてN進カウンタ410側の入力が選択される(N=4608)。そして、第1のアドレス変換部100への第1の設定で、第1の初期設定値保持手段110に設定される第1〜第7の初期設定値i1〜i7は各々、(i1、i2、i3、i4、i5、i6、i7)=(0、0、1、12、384、12、1)となる。   Here, the first to fourth settings performed from the host CPU 20 via the setting controller 12 are first the third settings to the initial address generating means 400. The multiplexer 430 selects the input on the N-ary counter 410 side. (N = 4608). The first to seventh initial setting values i1 to i7 set in the first initial setting value holding unit 110 in the first setting to the first address conversion unit 100 are (i1, i2, i3, i4, i5, i6, i7) = (0, 0, 1, 12, 384, 12, 1).

また、第2のアドレス変換部200への第2の設定で、第2の初期設定値保持手段210に設定される第8〜第14の初期設定値i8〜i14は各々、(i8、i9、i10、i11、i12、i13、i14)=(0、1、384、384、1、384、384)となる。   Further, in the second setting to the second address conversion unit 200, the eighth to fourteenth initial setting values i8 to i14 set in the second initial setting value holding unit 210 are (i8, i9, i10, i11, i12, i13, i14) = (0, 1, 384, 384, 1, 384, 384).

さらに、第1の演算手段120の加減算器124は、その3入力に対して(加算、加算、加算)の演算を行うよう設定される。同様に、第3の演算手段220の加減算器224は、その3入力に対して(加算、加算、加算)の演算を行うよう設定される。そして、ルックアップテーブル部600への第4の設定で、1セグメント(=384キャリア)分のアドレスの入出力パターンが入力され、メモリ手段630に記憶される。また、初期アドレスは、0〜4607まで過不足なく順に入力されるものとする。   Further, the adder / subtractor 124 of the first calculation means 120 is set to perform (addition, addition, addition) on the three inputs. Similarly, the adder / subtracter 224 of the third calculation means 220 is set to perform (addition, addition, addition) on the three inputs. Then, an input / output pattern of an address for one segment (= 384 carriers) is input and stored in the memory means 630 by the fourth setting in the lookup table unit 600. The initial address is input in order from 0 to 4607 without excess or deficiency.

このとき、第1のアドレス変換部100は、入力された初期アドレスと第1の設定に基づいて設定された第1〜第7の初期設定値i1〜i7に基づいてアドレス変換を行い、第1の中間アドレスを出力する。また、第2のアドレス変換部は、前記の第1の中間アドレスと第2の設定に基づいて設定された第8〜第14の初期設定値i8〜i14に基づいてアドレス変換を行い、第2の中間アドレスを出力する。   At this time, the first address conversion unit 100 performs address conversion based on the input initial address and the first to seventh initial setting values i1 to i7 set based on the first setting, The intermediate address of is output. The second address conversion unit performs address conversion based on the first intermediate address and the eighth to fourteenth initial setting values i8 to i14 set based on the second setting, The intermediate address of is output.

そして、ルックアップテーブル部600のオフセット出力手段610から出力されるオフセット値は、第2の中間アドレスがルックアップテーブル部に384回入力される毎に1回、384だけ値が増加する。以上のようにして、ISDB−Tの周波数インタリーブのためのアドレス生成を行うことができる。   The offset value output from the offset output unit 610 of the lookup table unit 600 increases by 384 once every time the second intermediate address is input 384 times into the lookup table unit. As described above, address generation for frequency interleaving of ISDB-T can be performed.

従来技術では、これと同じ周波数インタリーブを行うためには、少なくとも全サブキャリア数(=4608本)分の入出力パターンを保管できるメモリが必要であった。これに対して、本実施例のインタリーブ装置510では、1セグメント(=384キャリア)分の入出力パターンを記憶できればよい。即ち、メモリ手段630の容量を1/12とすることができるので、結果として、回路規模を削減することができる。   In the prior art, in order to perform the same frequency interleaving, a memory capable of storing input / output patterns for at least the total number of subcarriers (= 4608) is required. On the other hand, the interleave device 510 of this embodiment only needs to be able to store an input / output pattern for one segment (= 384 carriers). That is, since the capacity of the memory means 630 can be reduced to 1/12, as a result, the circuit scale can be reduced.

以上で述べたように、本実施形態では、第1〜2の実施形態と同一の効果を、テーブルを用いる形式のインタリーブを利用する場合においても得ることもできる。さらに、小規模なテーブルを組み合わせて用いてアドレス変換を行うことにより、複数の処理が組み合わさることにより1つのインタリーブとなっている場合でも、1回のメモリアクセスで済ませることができる。従って、メモリを用いて1回のメモリアクセスで済ませる場合よりも回路規模を削減することができる。   As described above, in the present embodiment, the same effects as those in the first and second embodiments can be obtained even in the case where interleaving using a table is used. Further, by performing address conversion using a combination of small tables, even when a plurality of processes are combined to form one interleave, only one memory access can be performed. Therefore, the circuit scale can be reduced as compared with the case where only one memory access is performed using the memory.

ここでは、アドレス変換回路511をインタリーブ装置510に適用するという動作例について説明したが、生成した出力アドレスの供給先を読み出し/書き込みアドレスポートのどちらかに変更することで、デインタリーブ装置に適用することもできる。例えば、インタリーブする際にアドレス変換回路511がメモリ14に対して書き込みアドレスを供給していたものを、読み出しアドレスを供給するように変更すれば、同一のアドレス変換回路11を用いてデインタリーブを行うことができる。   Here, the operation example in which the address conversion circuit 511 is applied to the interleave device 510 has been described. However, the address conversion circuit 511 is applied to the deinterleave device by changing the supply destination of the generated output address to either the read / write address port. You can also. For example, if the address conversion circuit 511 supplies a write address to the memory 14 when interleaving is changed to supply a read address, the same address conversion circuit 11 is used for deinterleaving. be able to.

また、アドレス変換回路511はアドレスを所定の規則に基づいて並べ替えるものであるので、インタリーブ装置以外であっても、同様にデータを並び替える装置であれば適用可能である。   Since the address conversion circuit 511 rearranges the addresses based on a predetermined rule, it can be applied to any device other than the interleave device as long as it rearranges the data.

これまで本発明について図面に示した特定の実施形態をもって説明してきたが、本発明は図面に示した実施形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができる。   The present invention has been described with reference to the specific embodiments shown in the drawings. However, the present invention is not limited to the embodiments shown in the drawings, and any known hitherto provided that the effects of the present invention are achieved. Even if it is a structure, it is employable.

上述した実施形態について、その新規な技術内容の要点をまとめると、以下のようになる。なお、上記実施形態の一部または全部は、新規な技術として以下のようにまとめられるが、本発明は必ずしもこれに限定されるものではない。   Regarding the embodiment described above, the main points of the new technical contents are summarized as follows. In addition, although part or all of the said embodiment is summarized as follows as a novel technique, this invention is not necessarily limited to this.

(付記1) 入力されたデータを一時的に記憶するメモリと、前記メモリ上に前記データが記憶されたアドレスに対してインタリーブの処理を行うアドレス変換回路と、前記アドレス変換回路に対して上位装置から与えられた設定を与える設定コントローラと、前記メモリ上の前記インタリーブの処理をされたアドレスに記憶された前記データを出力するメモリコントローラとを備えたインタリーブ装置であって、
前記アドレス変換回路が、
入力された初期アドレスに対して前記設定コントローラによって与えられた第1の設定に応じた処理を行って得られた中間アドレスを出力する第1のアドレス変換部と、
前記中間アドレスに対して前記設定コントローラによって与えられた第2の設定に応じた処理を行って得られた出力アドレスを前記メモリコントローラに対して出力する第2のアドレス変換部と
を備え、これによって一つの連続したインタリーブ処理を実行するように構成したことを特徴とするインタリーブ装置。
(Supplementary Note 1) Memory that temporarily stores input data, address conversion circuit that performs interleaving on the address at which the data is stored in the memory, and host device for the address conversion circuit An interleaving device comprising: a setting controller for giving a setting given from a memory controller; and a memory controller for outputting the data stored at an address subjected to the interleaving process on the memory,
The address conversion circuit is
A first address conversion unit that outputs an intermediate address obtained by performing a process according to a first setting given by the setting controller on the input initial address;
A second address conversion unit that outputs to the memory controller an output address obtained by performing processing corresponding to the second setting given by the setting controller to the intermediate address, thereby An interleaving apparatus configured to execute one continuous interleaving process.

(付記2) 前記第1のアドレス変換部が、
前記第1の設定によって与えられた複数個の初期設定値を記憶する第1の初期設定値保持手段と、
前記初期アドレスと前記初期設定値とを前記第1の設定によって与えられた演算規則に従って演算する第1の演算手段と、
前記初期アドレスと前記初期設定値とをあらかじめ与えられた演算規則に従って演算する第2の演算手段と、
前記第1および第2の演算手段からの出力を加算してこれを前記中間アドレスとして出力する第1の加算器
とを備えると共に、
前記第2のアドレス変換部が、
前記第2の設定によって与えられた複数個の初期設定値を記憶する第2の初期設定値保持手段と、
前記中間アドレスと前記初期設定値とを前記第2の設定によって与えられた演算規則に従って演算する第3の演算手段と、
前記中間アドレスと前記初期設定値とをあらかじめ与えられた演算規則に従って演算する第4の演算手段と、
前記第3および第4の演算手段からの出力を加算してこれを前記出力アドレスとして出力する第2の加算器
とを備えることを特徴とする、付記1に記載のインタリーブ装置。
(Supplementary Note 2) The first address conversion unit includes:
First initial setting value holding means for storing a plurality of initial setting values given by the first setting;
First calculating means for calculating the initial address and the initial setting value according to an operation rule given by the first setting;
A second calculating means for calculating the initial address and the initial set value according to a predetermined calculation rule;
A first adder that adds the outputs from the first and second arithmetic means and outputs the result as the intermediate address;
The second address conversion unit is
Second initial setting value holding means for storing a plurality of initial setting values given by the second setting;
Third computing means for computing the intermediate address and the initial set value according to a computation rule given by the second setting;
A fourth computing means for computing the intermediate address and the initial set value according to a predetermined computation rule;
The interleave apparatus according to appendix 1, further comprising: a second adder that adds outputs from the third and fourth arithmetic means and outputs the result as the output address.

(付記3) 前記第1のアドレス変換部の前記第1の演算手段が、前記初期アドレスと前記第1の初期設定値保持手段に記憶された第1ないし第5の前記初期設定値とを前記第1の設定によって与えられた演算規則に従って演算し、
前記第2の演算手段が、前記初期アドレスと前記第1の初期設定値保持手段に記憶された第6および第7の前記初期設定値とをあらかじめ与えられた演算規則に従って演算すると共に、
前記第2のアドレス変換部の前記第3の演算手段が、前記初期アドレスと前記第2の初期設定値保持手段に記憶された第8ないし第12の前記初期設定値とを前記第2の設定によって与えられた演算規則に従って演算し、
前記第4の演算手段が、前記初期アドレスと前記第2の初期設定値保持手段に記憶された第13および第14の前記初期設定値とをあらかじめ与えられた演算規則に従って演算する
ことを特徴とする、付記2に記載のインタリーブ装置。
(Supplementary Note 3) The first calculation means of the first address conversion unit calculates the initial address and the first to fifth initial setting values stored in the first initial setting value holding means. Operate according to the operation rules given by the first setting,
The second calculation means calculates the initial address and the sixth and seventh initial setting values stored in the first initial setting value holding means according to a predetermined calculation rule,
The third calculation means of the second address conversion unit sets the second setting to the initial address and the eighth to twelfth initial setting values stored in the second initial setting value holding means. Operate according to the operation rules given by
The fourth calculation means calculates the initial address and the thirteenth and fourteenth initial set values stored in the second initial set value holding means according to a predetermined calculation rule. The interleaving apparatus according to appendix 2.

(付記4) 前記第1ないし第7の初期設定値を各々i1〜i7とし、前記初期アドレスおよび中間アドレスを各々xおよびfxとすると、前記第1のアドレス変換部は前記初期アドレスを

Figure 2013110678
の式で示される演算によって前記中間アドレスに変換し、
前記第8ないし第14の初期設定値を各々i8〜i14とし、前記中間アドレスおよび出力アドレスを各々fxおよびgxとすると、前記第2のアドレス変換部は前記中間アドレスを
Figure 2013110678
の式で示される演算によって前記出力アドレスに変換することを特徴とする、付記3に記載のインタリーブ装置。 (Supplementary Note 4) When the first to seventh initial setting values are i1 to i7 and the initial address and the intermediate address are x and fx, respectively, the first address conversion unit sets the initial address to
Figure 2013110678
Is converted into the intermediate address by an operation represented by the formula:
Assuming that the eighth to fourteenth initial setting values are i8 to i14 and the intermediate address and output address are fx and gx, respectively, the second address conversion unit sets the intermediate address to
Figure 2013110678
4. The interleaving apparatus according to appendix 3, wherein the interleaving device converts the output address by an operation represented by the following formula.

(付記5) 前記アドレス変換回路が、前記設定コントローラによって与えられた第3の設定に応じて、前記インタリーブの処理に係るブロックサイズに応じた乱数もしくはカウント値を発生してこれを前記初期アドレスとして出力する初期アドレス生成部を備えることを特徴とする、付記1に記載のインタリーブ装置。 (Supplementary Note 5) The address conversion circuit generates a random number or a count value corresponding to a block size related to the interleaving process according to a third setting given by the setting controller, and uses this as the initial address. The interleaving apparatus according to appendix 1, further comprising an initial address generation unit for outputting.

(付記6) 前記初期アドレス生成部が、
前記ブロックサイズの範囲内で各処理ごとに重複しない前記乱数を発生する乱数生成手段と、
前記ブロックサイズの範囲内で各処理ごとに1ずつ値を変化させたカウント値を発生するカウンタと、
前記第3の設定に応じて、前記発生された乱数もしくはカウント値のうちの一方を選択して出力するマルチプレクサとを有することを特徴とする、付記5に記載のインタリーブ装置。
(Supplementary Note 6) The initial address generation unit
Random number generating means for generating the random numbers that do not overlap for each process within the block size range;
A counter that generates a count value obtained by changing the value by 1 for each process within the block size range;
The interleave apparatus according to appendix 5, further comprising a multiplexer that selects and outputs one of the generated random number or count value in accordance with the third setting.

(付記7) 前記アドレス変換回路が、前記設定コントローラによって与えられた第4の設定に応じて、前記出力アドレスを最終出力アドレスに変換してこれを前記メモリコントローラに対して出力するルックアップテーブル部を備えることを特徴とする、付記5に記載のインタリーブ装置。 (Additional remark 7) The address conversion circuit converts the output address into a final output address according to the fourth setting given by the setting controller, and outputs it to the memory controller. The interleaving device according to claim 5, further comprising:

(付記8) 前記ルックアップテーブル部が、
前記第4の設定で与えられた処理回数ごとに増加するオフセット値を出力するオフセット出力手段と、
前記出力アドレスから前記オフセット出力手段から出力された前記オフセット値を減算した値を出力する減算器と、
前記設定コントローラによって与えられた値を記憶し、前記減算器から出力された値に対応するアドレスに記憶されている値を出力するメモリ手段と、
前記メモリ手段から出力された値と前記オフセット出力手段から出力された値とを加算してこれを前記最終出力アドレスとして出力する加算器と
を備えることを特徴とする、付記7に記載のインタリーブ装置。
(Supplementary Note 8) The lookup table section is
Offset output means for outputting an offset value that increases for each processing count given in the fourth setting;
A subtractor that outputs a value obtained by subtracting the offset value output from the offset output means from the output address;
Memory means for storing a value given by the setting controller and outputting a value stored at an address corresponding to the value output from the subtractor;
The interleaving device according to claim 7, further comprising: an adder that adds the value output from the memory unit and the value output from the offset output unit and outputs the result as the final output address. .

(付記9) 入力されたデータを一時的に記憶するメモリと、前記メモリ上に前記データが記憶されたアドレスに対してインタリーブの処理を行うアドレス変換回路と、前記アドレス変換回路に対して上位装置から与えられた設定を与える設定コントローラと、前記メモリ上に前記データを入出力するメモリコントローラとを備えたインタリーブ装置にあって、
前記設定コントローラが、前記アドレス変換回路の第1および第2のアドレス変換部に各々第1および第2の設定を与え、
前記メモリコントローラが、入力された前記データを前記メモリに保存すると共に前記データの保存された前記メモリ上のアドレスを初期アドレスとして前記アドレス変換回路に入力し、
前記第1のアドレス変換部が、前記初期アドレスに対して前記第1の設定に応じた処理を行って得られた中間アドレスを出力し、
前記第2のアドレス変換部が、前記中間アドレスに対して前記第2の設定に応じた処理を行って得られた出力アドレスを前記メモリコントローラに出力し、
前記メモリコントローラが前記メモリ上の前記出力アドレスに記憶されているデータを出力する
ことを特徴とするアドレス変換方法。
(Supplementary note 9) A memory for temporarily storing input data, an address conversion circuit for performing interleaving on the address at which the data is stored in the memory, and a host device for the address conversion circuit An interleaving device comprising a setting controller for giving a setting given from a memory controller for inputting and outputting the data on the memory;
The setting controller gives first and second settings to the first and second address conversion units of the address conversion circuit, respectively;
The memory controller stores the input data in the memory and inputs an address on the memory where the data is stored as an initial address to the address conversion circuit,
The first address conversion unit outputs an intermediate address obtained by performing processing according to the first setting on the initial address;
The second address conversion unit outputs an output address obtained by performing processing according to the second setting on the intermediate address to the memory controller;
The address conversion method, wherein the memory controller outputs data stored at the output address on the memory.

(付記10) 入力されたデータを一時的に記憶するメモリと、前記メモリ上に前記データが記憶されたアドレスに対してインタリーブの処理を行うアドレス変換回路と、前記アドレス変換回路に対して上位装置から与えられた設定を与える設定コントローラと、前記メモリ上に前記データを入出力するメモリコントローラとを備えたインタリーブ装置にあって、
前記インタリーブ装置の備えるコンピュータに、
前記アドレス変換回路の第1および第2のアドレス変換部に各々第1および第2の設定を与える手順、
入力された前記データを前記メモリに保存すると共に前記データの保存された前記メモリ上のアドレスを初期アドレスとして前記アドレス変換回路に入力する手順、
前記初期アドレスに対して前記第1の設定に応じた処理を行って得られた中間アドレスを出力する手順、
および前記中間アドレスに対して前記第2の設定に応じた処理を行って得られた出力アドレスを前記メモリコントローラに出力する手順
を実行させることを特徴とするアドレス変換プログラム。
(Additional remark 10) Memory which memorize | stores the input data temporarily, The address conversion circuit which performs the process of interleaving with respect to the address where the said data was memorize | stored on the said memory, High-order apparatus with respect to the said address conversion circuit An interleaving device comprising a setting controller for giving a setting given from a memory controller for inputting and outputting the data on the memory;
A computer provided in the interleave device,
A procedure for giving first and second settings to the first and second address conversion units of the address conversion circuit, respectively;
A procedure for storing the input data in the memory and inputting an address on the memory in which the data is stored to the address conversion circuit as an initial address;
A procedure for outputting an intermediate address obtained by performing processing according to the first setting for the initial address;
And an address conversion program for causing the memory controller to execute an output address obtained by performing processing corresponding to the second setting on the intermediate address.

本発明は、データの並び替えを行う装置に対して一般的に適用可能であるが、中でもインタリーブ/デインタリーブ処理を行う装置に適する。特に、通信の高速化および装置の小型化・低価格化・低消費電力化を両立しつつ複数の通信方式に対応すべき分野、たとえば携帯電話端末やスマートホン端末、あるいは地上波デジタルテレビ放送受信機などに適する。   The present invention is generally applicable to an apparatus that rearranges data, but is particularly suitable for an apparatus that performs interleaving / deinterleaving processing. In particular, fields that should be compatible with multiple communication systems while achieving both high-speed communication and downsizing, low cost, and low power consumption of devices, such as mobile phone terminals, smart phone terminals, or terrestrial digital TV broadcast reception Suitable for machines.

10、310、510 インタリーブ装置
11、311、511 アドレス変換回路
12 設定コントローラ
13 メモリコントローラ
14 メモリ
15 初期アドレス生成回路
20 上位CPU
100 第1のアドレス変換部
110 第1の初期設定値保持手段
120 第1の演算手段
121、126、133、221、226、233 乗算器
122、131、222、231 除算器
123、132、223、232 フロア演算器
124、224 加減算器
125、225 剰余算器
130 第2の演算手段
140、240 加算器
200 第2のアドレス変換部
210 第2の初期設定値保持手段
220 第3の演算手段
230 第4の演算手段
400 初期アドレス生成部
410 N進カウンタ
420 乱数生成手段
430 マルチプレクサ
600 ルックアップテーブル部
610 オフセット出力手段
620 減算器
630 メモリ手段
640 加算器
10, 310, 510 Interleave device 11, 311, 511 Address conversion circuit 12 Setting controller 13 Memory controller 14 Memory 15 Initial address generation circuit 20 Host CPU
DESCRIPTION OF SYMBOLS 100 1st address conversion part 110 1st initial setting value holding means 120 1st calculating means 121, 126, 133, 221, 226, 233 Multipliers 122, 131, 222, 231 Dividers 123, 132, 223, 232 Floor calculator 124, 224 Adder / Subtractor 125, 225 Remainder calculator 130 Second calculation means 140, 240 Adder 200 Second address conversion unit 210 Second initial set value holding means 220 Third calculation means 230 Second 4 arithmetic means 400 initial address generation section 410 N-ary counter 420 random number generation means 430 multiplexer 600 lookup table section 610 offset output means 620 subtractor 630 memory means 640 adder

Claims (10)

入力されたデータを一時的に記憶するメモリと、前記メモリ上に前記データが記憶されたアドレスに対してインタリーブの処理を行うアドレス変換回路と、前記アドレス変換回路に対して上位装置から与えられた設定を与える設定コントローラと、前記メモリ上の前記インタリーブの処理をされたアドレスに記憶された前記データを出力するメモリコントローラとを備えたインタリーブ装置であって、
前記アドレス変換回路が、
入力された初期アドレスに対して前記設定コントローラによって与えられた第1の設定に応じた処理を行って得られた中間アドレスを出力する第1のアドレス変換部と、
前記中間アドレスに対して前記設定コントローラによって与えられた第2の設定に応じた処理を行って得られた出力アドレスを前記メモリコントローラに対して出力する第2のアドレス変換部と
を備え、これによって一つの連続したインタリーブ処理を実行するように構成したことを特徴とするインタリーブ装置。
A memory that temporarily stores input data, an address conversion circuit that performs an interleaving process on an address at which the data is stored on the memory, and an address conversion circuit that is supplied from a host device. An interleaving device comprising: a setting controller that gives a setting; and a memory controller that outputs the data stored in the address subjected to the interleaving process on the memory,
The address conversion circuit is
A first address conversion unit that outputs an intermediate address obtained by performing a process according to a first setting given by the setting controller on the input initial address;
A second address conversion unit that outputs to the memory controller an output address obtained by performing processing corresponding to the second setting given by the setting controller to the intermediate address, thereby An interleaving apparatus configured to execute one continuous interleaving process.
前記第1のアドレス変換部が、
前記第1の設定によって与えられた複数個の初期設定値を記憶する第1の初期設定値保持手段と、
前記初期アドレスと前記初期設定値とを前記第1の設定によって与えられた演算規則に従って演算する第1の演算手段と、
前記初期アドレスと前記初期設定値とをあらかじめ与えられた演算規則に従って演算する第2の演算手段と、
前記第1および第2の演算手段からの出力を加算してこれを前記中間アドレスとして出力する第1の加算器
とを備えると共に、
前記第2のアドレス変換部が、
前記第2の設定によって与えられた複数個の初期設定値を記憶する第2の初期設定値保持手段と、
前記中間アドレスと前記初期設定値とを前記第2の設定によって与えられた演算規則に従って演算する第3の演算手段と、
前記中間アドレスと前記初期設定値とをあらかじめ与えられた演算規則に従って演算する第4の演算手段と、
前記第3および第4の演算手段からの出力を加算してこれを前記出力アドレスとして出力する第2の加算器
とを備えることを特徴とする、請求項1に記載のインタリーブ装置。
The first address conversion unit includes:
First initial setting value holding means for storing a plurality of initial setting values given by the first setting;
First calculating means for calculating the initial address and the initial setting value according to an operation rule given by the first setting;
A second calculating means for calculating the initial address and the initial set value according to a predetermined calculation rule;
A first adder that adds the outputs from the first and second arithmetic means and outputs the result as the intermediate address;
The second address conversion unit is
Second initial setting value holding means for storing a plurality of initial setting values given by the second setting;
Third computing means for computing the intermediate address and the initial set value according to a computation rule given by the second setting;
A fourth computing means for computing the intermediate address and the initial set value according to a predetermined computation rule;
The interleaving apparatus according to claim 1, further comprising: a second adder that adds outputs from the third and fourth arithmetic means and outputs the result as the output address.
前記第1のアドレス変換部の前記第1の演算手段が、前記初期アドレスと前記第1の初期設定値保持手段に記憶された第1ないし第5の前記初期設定値とを前記第1の設定によって与えられた演算規則に従って演算し、
前記第2の演算手段が、前記初期アドレスと前記第1の初期設定値保持手段に記憶された第6および第7の前記初期設定値とをあらかじめ与えられた演算規則に従って演算すると共に、
前記第2のアドレス変換部の前記第3の演算手段が、前記初期アドレスと前記第2の初期設定値保持手段に記憶された第8ないし第12の前記初期設定値とを前記第2の設定によって与えられた演算規則に従って演算し、
前記第4の演算手段が、前記初期アドレスと前記第2の初期設定値保持手段に記憶された第13および第14の前記初期設定値とをあらかじめ与えられた演算規則に従って演算する
ことを特徴とする、請求項2に記載のインタリーブ装置。
The first calculation means of the first address conversion unit sets the first setting to the initial address and the first to fifth initial setting values stored in the first initial setting value holding means. Operate according to the operation rules given by
The second calculation means calculates the initial address and the sixth and seventh initial setting values stored in the first initial setting value holding means according to a predetermined calculation rule,
The third calculation means of the second address conversion unit sets the second setting to the initial address and the eighth to twelfth initial setting values stored in the second initial setting value holding means. Operate according to the operation rules given by
The fourth calculation means calculates the initial address and the thirteenth and fourteenth initial set values stored in the second initial set value holding means according to a predetermined calculation rule. The interleaving device according to claim 2.
前記第1ないし第7の初期設定値を各々i1〜i7とし、前記初期アドレスおよび中間アドレスを各々xおよびfxとすると、前記第1のアドレス変換部は前記初期アドレスを
Figure 2013110678
の式で示される演算によって前記中間アドレスに変換し、
前記第8ないし第14の初期設定値を各々i8〜i14とし、前記中間アドレスおよび出力アドレスを各々fxおよびgxとすると、前記第2のアドレス変換部は前記中間アドレスを
Figure 2013110678
の式で示される演算によって前記出力アドレスに変換することを特徴とする、請求項3に記載のインタリーブ装置。
Assuming that the first to seventh initial setting values are i1 to i7 and the initial address and intermediate address are x and fx, respectively, the first address conversion unit sets the initial address to
Figure 2013110678
Is converted into the intermediate address by an operation represented by the formula:
Assuming that the eighth to fourteenth initial setting values are i8 to i14 and the intermediate address and output address are fx and gx, respectively, the second address conversion unit sets the intermediate address to
Figure 2013110678
4. The interleaving apparatus according to claim 3, wherein the interleaving apparatus converts the output address by an operation represented by the following formula.
前記アドレス変換回路が、前記設定コントローラによって与えられた第3の設定に応じて、前記インタリーブの処理に係るブロックサイズに応じた乱数もしくはカウント値を発生してこれを前記初期アドレスとして出力する初期アドレス生成部を備えることを特徴とする、請求項1に記載のインタリーブ装置。   An initial address in which the address conversion circuit generates a random number or a count value according to a block size related to the interleaving process according to a third setting given by the setting controller and outputs this as the initial address The interleaving apparatus according to claim 1, further comprising a generation unit. 前記初期アドレス生成部が、
前記ブロックサイズの範囲内で各処理ごとに重複しない前記乱数を発生する乱数生成手段と、
前記ブロックサイズの範囲内で各処理ごとに1ずつ値を変化させたカウント値を発生するカウンタと、
前記第3の設定に応じて、前記発生された乱数もしくはカウント値のうちの一方を選択して出力するマルチプレクサとを有することを特徴とする、請求項5に記載のインタリーブ装置。
The initial address generation unit
Random number generating means for generating the random numbers that do not overlap for each process within the block size range;
A counter that generates a count value obtained by changing the value by 1 for each process within the block size range;
6. The interleaving apparatus according to claim 5, further comprising a multiplexer that selects and outputs one of the generated random number or count value in accordance with the third setting.
前記アドレス変換回路が、前記設定コントローラによって与えられた第4の設定に応じて、前記出力アドレスを最終出力アドレスに変換してこれを前記メモリコントローラに対して出力するルックアップテーブル部を備えることを特徴とする、請求項5に記載のインタリーブ装置。   The address conversion circuit includes a lookup table unit that converts the output address into a final output address according to a fourth setting given by the setting controller and outputs the final output address to the memory controller. 6. Interleaving device according to claim 5, characterized in that 前記ルックアップテーブル部が、
前記第4の設定で与えられた処理回数ごとに増加するオフセット値を出力するオフセット出力手段と、
前記出力アドレスから前記オフセット出力手段から出力された前記オフセット値を減算した値を出力する減算器と、
前記設定コントローラによって与えられた値を記憶し、前記減算器から出力された値に対応するアドレスに記憶されている値を出力するメモリ手段と、
前記メモリ手段から出力された値と前記オフセット出力手段から出力された値とを加算してこれを前記最終出力アドレスとして出力する加算器と
を備えることを特徴とする、請求項7に記載のインタリーブ装置。
The lookup table unit is
Offset output means for outputting an offset value that increases for each processing count given in the fourth setting;
A subtractor that outputs a value obtained by subtracting the offset value output from the offset output means from the output address;
Memory means for storing a value given by the setting controller and outputting a value stored at an address corresponding to the value output from the subtractor;
The interleave according to claim 7, further comprising an adder that adds the value output from the memory means and the value output from the offset output means and outputs the result as the final output address. apparatus.
入力されたデータを一時的に記憶するメモリと、前記メモリ上に前記データが記憶されたアドレスに対してインタリーブの処理を行うアドレス変換回路と、前記アドレス変換回路に対して上位装置から与えられた設定を与える設定コントローラと、前記メモリ上に前記データを入出力するメモリコントローラとを備えたインタリーブ装置にあって、
前記設定コントローラが、前記アドレス変換回路の第1および第2のアドレス変換部に各々第1および第2の設定を与え、
前記メモリコントローラが、入力された前記データを前記メモリに保存すると共に前記データの保存された前記メモリ上のアドレスを初期アドレスとして前記アドレス変換回路に入力し、
前記第1のアドレス変換部が、前記初期アドレスに対して前記第1の設定に応じた処理を行って得られた中間アドレスを出力し、
前記第2のアドレス変換部が、前記中間アドレスに対して前記第2の設定に応じた処理を行って得られた出力アドレスを前記メモリコントローラに出力し、
前記メモリコントローラが前記メモリ上の前記出力アドレスに記憶されているデータを出力する
ことを特徴とするアドレス変換方法。
A memory that temporarily stores input data, an address conversion circuit that performs an interleaving process on an address at which the data is stored on the memory, and an address conversion circuit that is supplied from a host device. In an interleaving apparatus comprising a setting controller for giving a setting and a memory controller for inputting and outputting the data on the memory,
The setting controller gives first and second settings to the first and second address conversion units of the address conversion circuit, respectively;
The memory controller stores the input data in the memory and inputs an address on the memory where the data is stored as an initial address to the address conversion circuit,
The first address conversion unit outputs an intermediate address obtained by performing processing according to the first setting on the initial address;
The second address conversion unit outputs an output address obtained by performing processing according to the second setting on the intermediate address to the memory controller;
The address conversion method, wherein the memory controller outputs data stored at the output address on the memory.
入力されたデータを一時的に記憶するメモリと、前記メモリ上に前記データが記憶されたアドレスに対してインタリーブの処理を行うアドレス変換回路と、前記アドレス変換回路に対して上位装置から与えられた設定を与える設定コントローラと、前記メモリ上に前記データを入出力するメモリコントローラとを備えたインタリーブ装置にあって、
前記インタリーブ装置の備えるコンピュータに、
前記アドレス変換回路の第1および第2のアドレス変換部に各々第1および第2の設定を与える手順、
入力された前記データを前記メモリに保存すると共に前記データの保存された前記メモリ上のアドレスを初期アドレスとして前記アドレス変換回路に入力する手順、
前記初期アドレスに対して前記第1の設定に応じた処理を行って得られた中間アドレスを出力する手順、
および前記中間アドレスに対して前記第2の設定に応じた処理を行って得られた出力アドレスを前記メモリコントローラに出力する手順
を実行させることを特徴とするアドレス変換プログラム。
A memory that temporarily stores input data, an address conversion circuit that performs an interleaving process on an address at which the data is stored on the memory, and an address conversion circuit that is supplied from a host device. In an interleaving apparatus comprising a setting controller for giving a setting and a memory controller for inputting and outputting the data on the memory,
A computer provided in the interleave device,
A procedure for giving first and second settings to the first and second address conversion units of the address conversion circuit, respectively;
A procedure for storing the input data in the memory and inputting an address on the memory in which the data is stored to the address conversion circuit as an initial address;
A procedure for outputting an intermediate address obtained by performing processing according to the first setting for the initial address;
And an address conversion program for causing the memory controller to execute an output address obtained by performing processing corresponding to the second setting on the intermediate address.
JP2011256092A 2011-11-24 2011-11-24 Interleaving device, address translation method and address translation program Pending JP2013110678A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011256092A JP2013110678A (en) 2011-11-24 2011-11-24 Interleaving device, address translation method and address translation program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011256092A JP2013110678A (en) 2011-11-24 2011-11-24 Interleaving device, address translation method and address translation program

Publications (1)

Publication Number Publication Date
JP2013110678A true JP2013110678A (en) 2013-06-06

Family

ID=48707003

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011256092A Pending JP2013110678A (en) 2011-11-24 2011-11-24 Interleaving device, address translation method and address translation program

Country Status (1)

Country Link
JP (1) JP2013110678A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015005968A (en) * 2013-06-21 2015-01-08 エフシーアイ インク Transmitter receiver for orthogonal frequency division multiplex communication

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015005968A (en) * 2013-06-21 2015-01-08 エフシーアイ インク Transmitter receiver for orthogonal frequency division multiplex communication

Similar Documents

Publication Publication Date Title
KR102276142B1 (en) DMS instruction and reception method, transmitting end and receiving end
US10536319B2 (en) Modulation method, demodulation method, related device, and system
JP2007221596A (en) Fast fourier transformation device, ofdm communication apparatus, and subcarrier assigning method for ofdm communication
US7594160B2 (en) Apparatus and method for receiving signal in a communication system
TWI765359B (en) Joint encoding schemes with interleaver and tone mapper for multi-ru operation
JP2011176802A (en) Coded bit padding
JP2016533687A (en) Multi-carrier peak suppression processing method and apparatus
KR20210058897A (en) Method and apparatus for constructing a reference signal, and method and apparatus for constructing a sequence
US8281086B2 (en) De-interleaving and interleaving for data processing
US20200068596A1 (en) Data transmission method and device
CN103281103A (en) OFDM (orthogonal frequency division multiplexing) power line carrier communication SOC (system on chip)
WO2019149180A1 (en) Interleaving method and interleaving device
JP2013110678A (en) Interleaving device, address translation method and address translation program
JP2013207382A (en) Interleave control device, interleave processing device, and interleave processing method
JP7128261B2 (en) PUCCH transmission method, user equipment and apparatus
KR20240032720A (en) Data transmission, data modulation methods, devices, electronic devices and recording media
JP2007243913A (en) Wireless transmitter, wireless transmission method, wireless communication system, program therefor and ifft arithmetic circuit
JP5785881B2 (en) Semiconductor device
JPWO2009096488A1 (en) Transmitting apparatus and modulation method
WO2018196624A1 (en) Parameter configuration method and apparatus
TW201412063A (en) Method of handling frequency-domain interpolation and related frequency-domain interpolator
JP6313949B2 (en) Transmitting device, receiving device, and chip
WO2023005944A1 (en) Data transmission method and related apparatus
CN115174328B (en) Data processing method and communication equipment
CN107852269B (en) Method and device for transmitting data