JP2013110678A - Interleaving device, address translation method and address translation program - Google Patents
Interleaving device, address translation method and address translation program Download PDFInfo
- 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
Links
Images
Landscapes
- Error Detection And Correction (AREA)
Abstract
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.
前述のように、データ通信においては特に、リアルタイム性を損なわないことが当然必要である。近年は特に、データの伝送速度の向上と、複数の通信方式への対応とが強く求められている。なおかつ、装置の小型化・低価格化・低消費電力化は常に求められることであるので、インタリーブ装置においてもその回路規模を小さく抑制しつつ、複数のインタリーブ方式に対応し、さらにインタリーブを高速に行うことが当然必要となる。 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.
(第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
ここで、第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
また、第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
さらに、第1ないし第7の初期設定値を各々i1〜i7とし、初期アドレスおよび中間アドレスを各々xおよびfxとすると、第1のアドレス変換部100は初期アドレスを
の式で示される演算によって中間アドレスに変換し、第8ないし第14の初期設定値を各々i8〜i14とし、出力アドレスをgxとすると、第2のアドレス変換部200は中間アドレスを
の式で示される演算によって出力アドレスに変換する。
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
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.
It is converted into an output address by the operation shown in the equation.
以上の構成を備えることにより、本実施形態に係るインタリーブ装置10は、回路規模を小さく抑制しつつ、複数のインタリーブ方式に対応し、かつインタリーブの処理を高速に行うことが可能なものとなる。
以下、これをより詳細に説明する。
With the above configuration, the
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
図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
第1のアドレス変換部100は、図2に示された入力データがメモリ14に記憶されたアドレス(これを初期アドレスという)を入力とし、第1の初期設定値保持手段110、第1の演算手段120、第2の演算手段130、加算器140を備え、加算器140からの出力値を中間アドレスとして第2のアドレス変換部200に対して出力する。
The first
第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
第2のアドレス変換部200は、中間アドレスを入力とし、第2の初期設定値保持手段210、第3の演算手段220、第4の演算手段230、加算器240を備え、加算器240からの出力値を出力アドレスとしてメモリコントローラ13に対して出力する。
The second
第2の初期設定値保持手段210は、設定コントローラ12からの第2の設定によって設定された、第8〜第14の初期値を保持する。第3の演算手段220は、中間アドレスと第8〜第12の初期設定値を入力とし、第3の演算結果を出力とする。第4の演算手段230は、中間アドレスと第13〜第14の初期設定値を入力とし、第4の演算結果を出力する。加算器240は、第3の演算結果と第4の演算結果を加算して得られたアドレスを出力する。この出力されたアドレスが、出力アドレスとなる。
The second initial set
図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
第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
乗算器121は、初期アドレスと第2の初期設定値とを入力とし、その乗算結果を出力とする。除算器122は、乗算器121の出力と第3の初期設定値とを入力とし、その除算結果を出力とする。フロア演算器123は、除算器122の出力を入力とし、その演算結果を出力とする。
The
加減算器124は、初期アドレスと、第1の初期設定値と、フロア演算器123からの出力とを入力とし、その演算結果を出力とする。その際、加減算器124は、設定コントローラ12から与えられた第1の設定により、それらの3つの入力に対して、(加算、加算、減算)か、もしくは、(加算、加算、加算)かのいずれかの演算を行う。
The adder /
剰余算器125は、加減算器124の出力と第4の初期設定値とを入力とし、その演算結果を出力とする。乗算器126は、剰余算器125の出力と第5の初期設定値とを入力とし、その乗算結果を第1の演算結果とする。
The
第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
乗算器221は、中間アドレスと第9の初期設定値とを入力とし、その乗算結果を出力とする。除算器222は、乗算器221の出力と第10の初期設定値とを入力とし、その除算結果を出力とする。フロア演算器223は、除算器222の出力を入力とし、その演算結果を出力とする。
The
加減算器224は、中間アドレスと、第8の初期設定値と、フロア演算器223からの出力を入力とし、その演算結果を出力とする。その際、加減算器224は、設定コントローラ12から与えられた第2の設定により、それらの3つの入力に対して、(加算、加算、減算)か、もしくは、(加算、加算、加算)かのいずれかの演算を行う。
The adder /
剰余算器225は、加減算器224の出力と第11の初期設定値とを入力とし、その演算結果を出力とする。乗算器226は、剰余算器225の出力と第12の初期設定値とを入力とし、その乗算結果を第3の演算結果とする。
The
図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
除算器131は、初期アドレスと第6の初期設定値とを入力とし、その除算結果を出力とする。フロア演算器132は、除算器131の出力を入力とし、その演算結果を出力とする。乗算器133は、フロア演算器132の出力と第7の初期設定値とを入力とし、その乗算結果を第2の演算結果とする。
The
第4の演算手段230は、中間アドレスと第13〜第14の初期設定値とを入力とし、この入力値に対して除算器231、フロア演算器232、乗算器233によって演算を行い、乗算器233からの出力値を第4の演算結果として出力する。
The fourth
除算器231は、中間アドレスと第13の初期設定値とを入力とし、その除算結果を出力とする。フロア演算器232は、除算器231の出力を入力とし、その演算結果を出力とする。乗算器233は、フロア演算器232の出力と第14の初期設定値とを入力とし、その乗算結果を第4の演算結果とする。
The
(第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
アドレス変換回路11に対する第1および第2の設定が終了したら、メモリコントローラ13は外部からインタリーブ対象となるデータの入力を待ち受け(ステップS252)、データの入力があればそのデータをメモリ14に保存する(ステップS253)。
When the first and second settings for the address conversion circuit 11 are completed, the
そして、保存された対象データの保存されたメモリ14上のアドレスが、アドレス変換回路11に初期アドレスとして入力され、第1のアドレス変換部100はこの初期アドレスに対して中間アドレスを出力し(ステップS254)、第2のアドレス変換部200はこの中間アドレスに対して出力アドレスを出力する(ステップS255)。そして、メモリコントローラ13は出力アドレスのデータをメモリ14から読み出して出力する(ステップS256)。
The stored address of the target data in the
以上の動作の前提から説明する。ブロックインタリーブ処理は、複数の種類をまとめて、次の数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〕
即ち、初期アドレスをxとすると、fxは中間アドレスとなり、i1〜i7は第1のアドレス変換部100に対して第1の設定で与えられる第1〜第7の初期値となり、上記の数1は第1のアドレス変換部100で行われる処理を表す。
[Equation 1]
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
また、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
〔数2〕
[Equation 2]
アドレス変換回路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 /
まず、上位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
ここで、第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
以上の設定を完了した第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
第1の演算手段120において、乗算器121は、入力された初期アドレスと第2の初期設定値(i2)とを乗算し、その乗算結果を出力する。除算器122は、乗算器121からの出力を第3の初期設定値(i3)で除算し、その除算結果を出力する。フロア演算器123は、除算器122からの出力に対してフロア演算を行い、その演算結果を出力する。
In the first computing means 120, the
加減算器124は、初期アドレス、第1の初期設定値(i1)、フロア演算器123からの出力に対して(加算、加算、減算)の加減算を行い、その演算結果を出力する。剰余算器125は、加減算器124からの出力を第4の初期設定値(i4)で剰余演算を行い、その演算結果を出力する。乗算器126は、剰余算器125からの出力と第5の初期設定値(i5)とを乗算し、その乗算結果を第1の演算結果として出力する。
The adder /
一方、第2の演算手段130において、除算器131は、入力された初期アドレスを第6の初期設定値(i6)で除算し、その除算結果を出力する。フロア演算器132は、除算器131からの出力に対してフロア演算を行い、その演算結果を出力する。乗算器133は、フロア演算器132からの出力と第7の初期設定値(i7)とを乗算し、その乗算結果を第2の演算結果として出力する。
On the other hand, in the second calculation means 130, the
加算器140は上記の第1の演算結果と第2の演算結果とを加算し、中間アドレスとして出力する。出力された中間アドレスは、第2のアドレス変換部200へ入力される。
The
第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
第3の演算手段220において、乗算器221は、入力された中間アドレスと第9の初期設定値(i9)を乗算し、その乗算結果を出力する。除算器222は、乗算器221からの出力を第10の初期設定値(i10)で除算し、その除算結果を出力する。フロア演算器223は、除算器222からの出力に対してフロア演算を行い、その演算結果を出力する。
In the third computing means 220, the
加減算器224は、中間アドレス、第8の初期設定値(i8)、フロア演算器223からの出力に対して(加算、加算、減算)の加減算を行い、その演算結果を出力する。剰余算器225は、加減算器224からの出力を第11の初期設定値(i11)で剰余演算を行い、その演算結果を出力する。乗算器226は、剰余算器225からの出力と第12の初期設定値(i12)を乗算し、その乗算結果を第3の演算結果として出力する。
The adder /
一方、第4の演算手段230において、除算器231は、中間アドレスを第13の初期設定値(i13)で除算し、その除算結果を出力する。フロア演算器232は、除算器231からの出力に対してフロア演算を行い、その演算結果を出力する。乗算器233は、フロア演算器232からの出力と第14の初期設定値(i14)を乗算し、その乗算結果を第4の演算結果として出力する。
On the other hand, in the fourth computing means 230, the
加算器240は上記の第3の演算結果と第4の演算結果とを加算し、出力アドレスとして出力する。
The
以上のようにして第2のアドレス変換部200から出力された出力アドレスは、インタリーブする対象のデータが保存されたメモリ14にアクセスするためにメモリコントローラ13に対して出力されるアドレスとなる。第1のアドレス変換部100と第2のアドレス変換部200は直列に接続されている構成であるので、パイプライン的に連続して処理が可能である。従って、第1のアドレス変換部100に初期アドレスが連続して入力されている限りは、図5のフローチャートにもあるように、本実施形態のインタリーブ装置10は、インタリーブの処理を連続的に行うことが可能である。
The output address output from the second
即ち、インタリーブ装置10はデータ自体をインタリーブするのではなく、メモリ14にアクセスするために用いられるアドレスに対して上記で示した処理を行い、それによって変換された出力アドレスのデータをメモリ14から読み出して、これによってインタリーブの処理を実現している。
That is, the
その結果、メモリ14へはインタリーブされた後のアドレスが供給されることになるため、複数の処理が組み合わさったインタリーブでも、メモリへのアクセス回数が1回で済むことになる。即ち、メモリ14へのアクセス回数を減らし、また連続して入力される初期アドレスに対してパイプライン的に連続して処理を続けることができるので、処理にかかる負荷や時間を軽減することができる。
As a result, since the interleaved address is supplied to the
(第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
この場合、アドレス変換回路11において、第1パーミュテーションの処理に対応するのが第1のアドレス変換部100であり、第2パーミュテーションの処理に対応するのが第2のアドレス変換部200である。ここでのパラメータは、インタリーブのブロックサイズN=192となり、また変調方式として16QAMが使用される。
In this case, in the address conversion circuit 11, the first
この時、第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
〔数3〕
[Equation 3]
〔数4〕
[Equation 4]
ここで、第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
そして、第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
また、第1の演算手段120の加減算器124は、上位CPU20から設定コントローラ12を介して、(加算、加算、減算)という演算を行うように設定される。一方で、第3の演算手段220の加減算器224は、(加算、加算、減算)という演算を行うように設定される。また、初期アドレスxは、0から191まで過不足なく順に入力される。
Further, the adder /
このとき、第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
続いて、インタリーブ装置10をDVB−T2のセルインタリーブの処理に適用する場合について説明する。DVB−T2のセルインタリーブは、線形フィードバックシフトレジスタをベースとした回路によって生成されたランダムな値を初期アドレスとし、そこへシンボル番号に基づいたシフトを組み合わせたインタリーブとなっている。
Next, the case where the
ここでのパラメータは、インタリーブのブロックサイズ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〕
[Equation 5]
ここで、第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
また、第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
また、初期アドレスは、規格に従った線形フィードバックシフトレジスタをベースとした回路によって生成され、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
(第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
ここで、上記各動作ステップについては、これをコンピュータで実行可能にプログラム化し、これらを前記各ステップを直接実行するインタリーブ装置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
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
また、インタリーブ装置10は、ブロックインタリーブの一般式を演算するアドレス変換装置(第1のアドレス変換部100、第2のアドレス変換部200)を複数段用いてアドレス変換を行うことにより、複数の処理が組み合わさることにより1つのインタリーブとなっている場合でも、複数回に分けることなく一挙動にインタリーブ用アドレス生成をすることができる。従って、メモリを用いてデータに対して直接インタリーブを行う場合と比較して、回路規模を削減することができる。
In addition, the
ここでは、アドレス変換回路11をインタリーブ装置10に適用するという動作例について説明したが、生成した出力アドレスの供給先を読み出し/書き込みアドレスポートのどちらかに変更することで、デインタリーブ装置に適用することもできる。例えば、インタリーブする際にアドレス変換回路11がメモリ14に対して書き込みアドレスを供給していたものを、読み出しアドレスを供給するように変更すれば、同一のアドレス変換回路11を用いてデインタリーブを行うことができる。
Here, the operation example in which the address conversion circuit 11 is applied to the
また、アドレス変換回路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
また、この初期アドレス生成部400は、ブロックサイズの範囲内で各処理ごとに重複しない乱数を発生する乱数生成手段420と、ブロックサイズの範囲内で各処理ごとに1ずつ値を変化させたカウント値を発生するカウンタ(N進カウンタ410)と、第3の設定に応じて、発生された乱数もしくはカウント値のうちの一方を選択して出力するマルチプレクサ430とを有する。
The initial
この構成によって、第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
図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
初期アドレス生成部400は、N進カウンタ410、乱数生成手段420、およびマルチプレクサ430を備え、マルチプレクサ430からの出力値が第1のアドレス変換部100に入力される初期アドレスとなる。ここで、Nはブロックインタリーブのブロックサイズを表す整数であり、上位CPU20から設定コントローラ12を介して与えられた第3の設定によって設定される。
The initial
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
第1のアドレス変換部100および第2のアドレス変換部200の構成は、前述の図1で説明した第1の実施形態と同一である。従って、ここではそれらの構成の概要のみを説明する。第1のアドレス変換部100は、マルチプレクサ430から出力された初期アドレスを入力とし、第1の初期設定値保持手段110、第1の演算手段120、第2の演算手段130、加算器140を備え、加算器140からの出力値を中間アドレスとして第2のアドレス変換部200に対して出力する。
The configurations of the first
第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
加算器140は、第1の演算結果と第2の演算結果を加算して得られたアドレスを出力する。この出力されたアドレスが、中間アドレスとなる。第1〜第2の演算手段120、130のより詳細な構成は、図3〜4に示した第1の実施形態と同一である。
The
第2のアドレス変換部200は、中間アドレスを入力とし、第2の初期設定値保持手段210、第3の演算手段220、第4の演算手段230、加算器240を備え、加算器240からの出力値を出力アドレスとしてメモリコントローラ13に対して出力する。
The second
第2の初期設定値保持手段210は、設定コントローラ12からの第2の設定によって設定された、第8〜第14の初期値を保持する。第3の演算手段220は、中間アドレスと第8〜第12の初期設定値を入力とし、第3の演算結果を出力とする。第4の演算手段230は、中間アドレスと第13〜第14の初期設定値を入力とし、第4の演算結果を出力する。
The second initial set
加算器240は、第3の演算結果と第4の演算結果を加算して得られたアドレスを出力する。この出力されたアドレスが、出力アドレスとなる。第3〜第4の演算手段220、230のより詳細な構成は、図3〜4に示した第1の実施形態と同一である。
The
(第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
アドレス変換回路311に対する第1〜第3の設定が終了したら、メモリコントローラ13は外部からインタリーブ対象となるデータの入力を待ち受け(ステップS452)、データの入力があればそのデータをメモリ14に保存する(ステップS453)。
When the first to third settings for the
そして、初期アドレス生成部400が、与えられた第3の設定に基づいて初期アドレスを生成してこれを第1のアドレス変換部100に入力し(ステップS454)、第1のアドレス変換部100はこの初期アドレスに対して中間アドレスを出力し(ステップS455)、第2のアドレス変換部200はこの中間アドレスに対して出力アドレスを出力する(ステップS456)。そして、メモリコントローラ13は出力アドレスのデータをメモリ14から読み出して出力する(ステップS457)。
Then, the initial
以後、説明を平易なものとするため、加減算器124および加減算器224は、(加算、加算、減算)の動作を行うよう、設定コントローラ12によって設定が与えられるものとする。
Hereinafter, in order to simplify the description, it is assumed that the setting
まず、上位CPU20から設定コントローラ12を介して、第1のアドレス変換部100、第2のアドレス変換部200、および初期アドレス生成部400に対して各々第1〜第3の設定を与える。
First, the first to third settings are given from the
これによって、第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
以上の設定を完了したアドレス変換回路311で、アドレス変換処理が開始される。このとき、初期アドレス生成部400において、N進カウンタ410からマルチプレクサ430に対して、0〜N−1までのカウント値が順に出力され、これが設定によってマルチプレクサ430から第1のアドレス変換部100へ入力される初期アドレスとなる。
Address conversion processing is started in the
これに続く第1のアドレス変換部100および第2のアドレス変換部の動作は、第1の実施形態と同一である。以上のようにして第2のアドレス変換部200から出力された出力アドレスは、インタリーブするデータが保存されたメモリ14にアクセスするためにメモリコントローラ13に対して出力されるアドレスとなる。
Subsequent operations of the first
初期アドレス生成手段300、第1のアドレス変換部100および第2のアドレス変換部200は直列に接続されている構成であるので、パイプライン的に連続して処理が可能である。従って、初期アドレス生成手段300から初期アドレスが連続して出力されている限りは、本実施形態のインタリーブ装置310は出力アドレスを連続して出力することができ、第1の実施形態と同一の効果を得ることができる。
Since the initial address generation unit 300, the first
(第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
この場合、アドレス変換回路311において、第1パーミュテーションの処理に対応するのが第1のアドレス変換部100であり、第2パーミュテーションの処理に対応するのが第2のアドレス変換部200である。ここでのパラメータは、インタリーブのブロックサイズN=192となり、また変調方式として16QAMが使用される。さらに、初期アドレスは0〜191まで順に増加していく。
In this case, in the
この時、第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
また、第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
また、第1の演算手段120の加減算器124は、上位CPU20から設定コントローラ12を介して、(加算、加算、減算)という演算を行うように設定される。一方で、第3の演算手段220の加減算器224は、(加算、加算、減算)という演算を行うように設定される。そして、初期アドレス生成部400のマルチプレクサ430は、N進カウンタ410側の入力を選択して出力するように設定される。
Further, the adder /
このとき、第1のアドレス変換部100は、入力された初期アドレスと第1の設定に基づいて設定された第1から第7の初期設定値に基づいてアドレス変換を行い、中間アドレスを出力する。また、第2のアドレス変換部は、前記の中間アドレスと第2の設定に基づいて設定された第8から第14の初期設定値に基づいてアドレス変換を行い、出力アドレスを出力する。この具体的な動作は、第1の実施形態と同一である。以上のようにして、IEEE802.11aのシンボルインタリーブのためのアドレス生成を行うことができる。
At this time, the first
続いて、インタリーブ装置310をDVB−T2のセルインタリーブの処理に適用する場合を説明する。DVB−T2のセルインタリーブは、線形フィードバックシフトレジスタをベースとした回路によって生成されたランダムな値を初期アドレスとし、そこへシンボル番号に基づいたシフトを組み合わせたインタリーブとなっている。ここで、インタリーブ装置310で、基本パーミュテーション関数(basic permutation function)の生成に対応するのが、初期アドレス生成部400である。
Next, the case where the
ここでのパラメータは、インタリーブのブロックサイズ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
また、第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
さらに、初期アドレス生成部400への第3の設定では、上位CPU20から設定コントローラ12を介して、マルチプレクサ430において乱数生成手段420側の入力を選択するよう設定される。乱数生成手段420では、規格に従った線形フィードバックシフトレジスタをベースとした回路によって乱数が生成される。この乱数は0〜8099の範囲内の整数値である。
Further, in the third setting to the initial
このとき、第1のアドレス変換部100は、入力された初期アドレスと第1の設定に基づいて設定された第1から第7の初期設定値に基づいてアドレス変換を行い、中間アドレスを出力する。また、第2のアドレス変換部は、前記の中間アドレスに対して、変換を行わず、そのまま出力アドレスとして出力する。以上のようにして、DVB−T2のセルインタリーブのためのアドレス生成を行うことができる。
At this time, the first
以上で説明したように、インタリーブ装置310は、初期設定値i1〜i14とマルチプレクサ430に対する設定を変更するのみで、複数のインタリーブ/デインタリーブ方式に対応できる。たとえば、第1の適用例として説明したIEEE 802.11aだけでなく、WiMAX(IEEE802.16系)などのような、他の同様のインタリーブ/デインタリーブの処理にも応用することもできる。また、第2の適用例として説明したDVB−T2のセルインタリーブだけでなく、他の同様のインタリーブ/デインタリーブにも応用することもできる。
As described above, the
また、インタリーブ装置310は、ブロックインタリーブの一般式を演算するアドレス変換装置(第1のアドレス変換部100、第2のアドレス変換部200)を複数段用いてアドレス変換を行うことにより、複数の処理が組み合わさることにより1つのインタリーブとなっている場合でも、複数回に分けることなく一挙動にインタリーブ用アドレス生成をすることができる。従って、メモリを用いてデータに対して直接インタリーブを行う場合と比較して、回路規模を削減することができるという、第1の実施形態と同一の効果を得ることができる。
The
本実施形態では、以上に示した第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
また、このルックアップテーブル部600は、第4の設定で与えられた処理回数ごとに増加するオフセット値を出力するオフセット出力手段610と、出力アドレスからオフセット出力手段から出力されたオフセット値を減算した値を出力する減算器620と、設定コントローラによって与えられた値を記憶し、前記減算器から出力された値に対応するアドレスに記憶されている値を出力するメモリ手段630と、メモリ手段から出力された値とオフセット出力手段から出力された値とを加算してこれを最終出力アドレスとして出力する加算器640とを備える。
Further, the
この構成によって、第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
図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
ルックアップテーブル部600は、第2のアドレス変換部200から出力された第2の中間アドレスを入力とし、オフセット出力手段610、減算器620、メモリ手段630、加算器640を備え、加算器640からの出力値を出力アドレスとしてメモリコントローラ13に対して出力する。
The
オフセット出力手段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
これ以外の、第1のアドレス変換部100、第2のアドレス変換部200、初期アドレス生成部400の各々の構成は、前述の図1および図7で説明した第1〜2の実施形態と同一であるので、ここではそれらの概要のみを説明する。
The other configurations of the first
初期アドレス生成部400は、N進カウンタ410、乱数生成手段420、およびマルチプレクサ430を備え、マルチプレクサ430からの出力値が第1のアドレス変換部100に入力される初期アドレスとなる。ここで、Nはブロックインタリーブのブロックサイズを表す整数であり、上位CPU20から設定コントローラ12を介して与えられた第3の設定によって設定される。
The initial
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
第1のアドレス変換部100は、マルチプレクサ430から出力された初期アドレスを入力とし、第1の初期設定値保持手段110、第1の演算手段120、第2の演算手段130、加算器140を備え、加算器140からの出力値を第1の中間アドレスとして第2のアドレス変換部200に対して出力する。
The first
第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
加算器140は、第1の演算結果と第2の演算結果を加算して得られたアドレスを出力する。この出力されたアドレスが、第1の中間アドレスとなる。第1〜第2の演算手段120、130のより詳細な構成は、図3〜4に示した第1の実施形態と同一である。
The
第2のアドレス変換部200は、中間アドレスを入力とし、第2の初期設定値保持手段210、第3の演算手段220、第4の演算手段230、加算器240を備え、加算器240からの出力値を第2の中間アドレスとしてルックアップテーブル部600に対して出力する。
The second
第2の初期設定値保持手段210は、設定コントローラ12からの第2の設定によって設定された、第8〜第14の初期値を保持する。第3の演算手段220は、中間アドレスと第8〜第12の初期設定値を入力とし、第3の演算結果を出力とする。第4の演算手段230は、中間アドレスと第13〜第14の初期設定値を入力とし、第4の演算結果を出力する。
The second initial set
加算器240は、第3の演算結果と第4の演算結果を加算して得られたアドレスを出力する。この出力されたアドレスが、第2の中間アドレスとなる。第3〜第4の演算手段220、230のより詳細な構成は、図3〜4に示した第1の実施形態と同一である。
The
(第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
アドレス変換回路511に対する第1〜第4の設定が終了したら、メモリコントローラ13は外部からインタリーブ対象となるデータの入力を待ち受け(ステップS652)、データの入力があればそのデータをメモリ14に保存する(ステップS653)。
When the first to fourth settings for the
そして、初期アドレス生成部400が、与えられた第3の設定に基づいて初期アドレスを生成してこれを第1のアドレス変換部100に入力し(ステップS654)、第1のアドレス変換部100はこの初期アドレスに対して第1の中間アドレスを出力し(ステップS655)、第2のアドレス変換部200はこの第1の中間アドレスに対して第2の中間アドレスを出力する(ステップS656)。
Then, the initial
そして、ルックアップテーブル部600が、この第2の中間アドレスに対応する出力アドレスを出力し(ステップS657)、メモリコントローラ13は出力アドレスのデータをメモリ14から読み出して出力する(ステップS658)。
Then, the
以後、説明を平易なものとするため、加減算器124および加減算器224は、(加算、加算、減算)の動作を行うよう、設定コントローラ12によって設定が与えられるものとする。
Hereinafter, in order to simplify the description, it is assumed that the setting
まず、上位CPU20から設定コントローラ12を介して、第1のアドレス変換部100、第2のアドレス変換部200、初期アドレス生成部400、およびルックアップテーブル部600に対して各々第1〜第4の設定を与える。
First, the first to
これによって、第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
さらに、マルチプレクサ430において、2入力あるうちのいずれかを選択し出力するかが設定される。ここではN進カウンタ410から出力されたカウント値が出力されるように設定されているものとする。そして、メモリ手段630には、入力アドレスを出力アドレスに変換するためのインタリーブ方式に対応したパターンを予め記憶する。
Further, in the
以上の設定を完了したアドレス変換回路511で、アドレス変換処理が開始される。このとき、初期アドレス生成部400において、N進カウンタ410からマルチプレクサ430に対して、0〜N−1までのカウント値が順に出力され、これが設定によってマルチプレクサ430から第1のアドレス変換部100へ入力される初期アドレスとなる。
Address conversion processing is started in the
これに続く第1のアドレス変換部100および第2のアドレス変換部の動作は、第1の実施形態と同一である。以上のようにして、第2のアドレス変換部200から第2の中間アドレスがルックアップテーブル部600に対して出力される。
Subsequent operations of the first
ルックアップテーブル部600で、オフセット出力手段610は第2の中間アドレスが第4の設定によって規定された回数入力される毎にその値が増加するオフセット値を出力する。減算器620は第2の中間アドレスからオフセット値を減算して出力し、それがメモリ手段630への読み出しアドレスとなる。
In the look-up
メモリ手段630は、入力された読み出しアドレスに保持する変換後のアドレス値を出力する。加算器640は、メモリ手段630からの出力とオフセット値とを加算し、その加算結果を出力アドレスとして出力する。以上のようにしてルックアップテーブル部600から出力された出力アドレスは、インタリーブするデータが保存されたメモリ14にアクセスするためにメモリコントローラ13に対して出力されるアドレスとなる。
The memory means 630 outputs the converted address value held at the input read address. The
初期アドレス生成手段300、第1のアドレス変換部100、第2のアドレス変換部200、およびルックアップテーブル部600は直列に接続されている構成であるので、パイプライン的に連続して処理が可能である。従って、初期アドレス生成手段300から初期アドレスが連続して出力されている限りは、本実施形態のインタリーブ装置510は出力アドレスを連続して出力することができ、第1の実施形態と同一の効果を得ることができる。
Since the initial address generation unit 300, the first
本実施形態では、ルックアップテーブル部600を追加で備えることで、テーブルを用いる形式のインタリーブが組み合わされている場合でも、メモリへのアクセス回数を1回で済ませることができる。従って、本構成を用いることで、すべての入出力パターンをメモリに保存しておき、そのパターンを用いて1回のメモリアクセスで済ませる場合よりも、回路規模を削減することができる。即ち、テーブルを用いる形式のインタリーブを利用する場合においても、第1〜2の実施形態と同一の効果を得ることができる。
In the present embodiment, the
(第3の実施形態の実際の通信に対する適用例)
以下、インタリーブ装置510の実際の通信に対する適用例として、インタリーブ装置510をISDB−Tの周波数インタリーブの処理に適用する場合について説明する。前述のように、ISDB−Tの周波数インタリーブは、セグメント間インタリーブ、セグメント内キャリアローテーション、セグメント内キャリアランダマイズの3種類の異なった処理が組み合わさることにより、一つのインタリーブとなっている。
(Application example of the third embodiment for actual communication)
Hereinafter, as an application example of the
このとき、本実施形態にかかるインタリーブ装置510で、セグメント間インタリーブの処理に対応するのが第1のアドレス変換部100であり、セグメント内キャリアローテーションに対応するのが第2のアドレス変換部200であり、セグメント内キャリアランダマイズに対応するのがルックアップテーブル部600である。また、初期アドレスは、0〜N−1の範囲で1ずつ順に増加していく。
At this time, in the
ここでのパラメータは、インタリーブのブロックサイズ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〕
[Equation 6]
〔数7〕
[Equation 7]
ここで、上位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
また、第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
さらに、第1の演算手段120の加減算器124は、その3入力に対して(加算、加算、加算)の演算を行うよう設定される。同様に、第3の演算手段220の加減算器224は、その3入力に対して(加算、加算、加算)の演算を行うよう設定される。そして、ルックアップテーブル部600への第4の設定で、1セグメント(=384キャリア)分のアドレスの入出力パターンが入力され、メモリ手段630に記憶される。また、初期アドレスは、0〜4607まで過不足なく順に入力されるものとする。
Further, the adder /
このとき、第1のアドレス変換部100は、入力された初期アドレスと第1の設定に基づいて設定された第1〜第7の初期設定値i1〜i7に基づいてアドレス変換を行い、第1の中間アドレスを出力する。また、第2のアドレス変換部は、前記の第1の中間アドレスと第2の設定に基づいて設定された第8〜第14の初期設定値i8〜i14に基づいてアドレス変換を行い、第2の中間アドレスを出力する。
At this time, the first
そして、ルックアップテーブル部600のオフセット出力手段610から出力されるオフセット値は、第2の中間アドレスがルックアップテーブル部に384回入力される毎に1回、384だけ値が増加する。以上のようにして、ISDB−Tの周波数インタリーブのためのアドレス生成を行うことができる。
The offset value output from the offset
従来技術では、これと同じ周波数インタリーブを行うためには、少なくとも全サブキャリア数(=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
以上で述べたように、本実施形態では、第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
また、アドレス変換回路511はアドレスを所定の規則に基づいて並べ替えるものであるので、インタリーブ装置以外であっても、同様にデータを並び替える装置であれば適用可能である。
Since the
これまで本発明について図面に示した特定の実施形態をもって説明してきたが、本発明は図面に示した実施形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができる。 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のアドレス変換部は前記初期アドレスを
の式で示される演算によって前記中間アドレスに変換し、
前記第8ないし第14の初期設定値を各々i8〜i14とし、前記中間アドレスおよび出力アドレスを各々fxおよびgxとすると、前記第2のアドレス変換部は前記中間アドレスを
の式で示される演算によって前記出力アドレスに変換することを特徴とする、付記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
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
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
DESCRIPTION OF
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の演算手段と、
前記初期アドレスと前記初期設定値とをあらかじめ与えられた演算規則に従って演算する第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.
前記第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.
の式で示される演算によって前記中間アドレスに変換し、
前記第8ないし第14の初期設定値を各々i8〜i14とし、前記中間アドレスおよび出力アドレスを各々fxおよびgxとすると、前記第2のアドレス変換部は前記中間アドレスを
の式で示される演算によって前記出力アドレスに変換することを特徴とする、請求項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
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
4. The interleaving apparatus according to claim 3, wherein the interleaving apparatus converts the output address by an operation represented by the following formula.
前記ブロックサイズの範囲内で各処理ごとに重複しない前記乱数を発生する乱数生成手段と、
前記ブロックサイズの範囲内で各処理ごとに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の設定で与えられた処理回数ごとに増加するオフセット値を出力するオフセット出力手段と、
前記出力アドレスから前記オフセット出力手段から出力された前記オフセット値を減算した値を出力する減算器と、
前記設定コントローラによって与えられた値を記憶し、前記減算器から出力された値に対応するアドレスに記憶されている値を出力するメモリ手段と、
前記メモリ手段から出力された値と前記オフセット出力手段から出力された値とを加算してこれを前記最終出力アドレスとして出力する加算器と
を備えることを特徴とする、請求項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.
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015005968A (en) * | 2013-06-21 | 2015-01-08 | エフシーアイ インク | Transmitter receiver for orthogonal frequency division multiplex communication |
-
2011
- 2011-11-24 JP JP2011256092A patent/JP2013110678A/en active Pending
Cited By (1)
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 |