(57)【要約】【課題】回路規模を抑制しつつ、畳み込みインタリーブ方式のインタリーブ処理又はデインタリーブ処理を行う。【解決手段】第１の設定に従って、外部から入力されたインタリーブ前データに対する畳み込みインタリーブ処理における複数のパスのそれぞれに対応付けたパス番号を生成するパス番号生成部と、パス番号、及び第２の設定によって与えられた第１至第３の初期設定値とを用いて予め与えられた演算規則に従って演算し、複数のパスのそれぞれに割り当てられたインタリーブ処理用メモリの上界アドレス及び下界アドレスを生成する境界アドレス生成部と、パス番号をアドレスとして入力データを記憶する第１のメモリへ入力データとして、インタリーブアドレスをアドレスとしてインタリーブ前データを記憶する第２のメモリへアドレスとして、インタリーブアドレスを供給するインタリーブアドレス生成部と、を備える。【選択図】      図１
2013207382.tif 000002
【特許請求の範囲】
【請求項１】
第１の設定に従って、外部から入力されたインタリーブ前データに対する畳み込みインタリーブ処理における複数のパスのそれぞれに対応付けたパス番号を生成するパス番号生成部と、
前記パス番号、及び第２の設定によって与えられた第１至第３の初期設定値を用いて予め与えられた演算規則に従って演算し、前記複数のパスのそれぞれに割り当てられたインタリーブ処理用メモリの上界アドレス及び下界アドレスを生成する境界アドレス生成部と、
インタリーブアドレスを供給するインタリーブアドレス生成部と、
前記複数のパスのそれぞれに対応付けて前記インタリーブアドレスを記憶する第１のメモリと、
前記インタリーブアドレスに対応付けて前記インタリーブ前データを記憶する第２のメモリと、
を備えることを特徴とするインタリーブ処理装置。
【請求項２】
前記第１の初期設定値をｉ１とし、出力系列のインデックスを前記パス番号ｎ（ｎは自然数）、前記上界アドレスをｆ（ｎ）、前記下界アドレスをｄとするとき、前記境界アドレス生成部は
ｆ（ｎ）＝ｆ（ｎ−１）±ｎ×ｉ１
の式で示される演算によって、前記上界アドレスを生成することを特徴とする、請求項１に記載のインタリーブ処理装置。
【請求項３】
前記複数のパスのそれぞれに対応付けて前記インタリーブアドレスを記憶するレジスタファイルと、
第３の設定に従って、前記パス番号をアドレスとして、前記インタリーブアドレスをデータとして出力、又は前記インタリーブアドレスをアドレスとして、前記インタリーブ前データをデータとして出力するメモリ入力選択部と、
前記第３の設定に従って、前記レジスタファイル又は前記第１のメモリから出力されたデータのいずれかを選択し、前記インタリーブアドレス生成部に供給するポインタ出力選択部と、
前記第３の設定に従って、前記第１のメモリ又は前記第２のメモリから出力されたデータのいずれかを選択し、出力するデータ出力選択部と、をさらに備え、
前記第１のメモリは、前記複数のパスのそれぞれに対応付けて前記インタリーブアドレスを記憶、又は前記インタリーブアドレスに対応付けて前記インタリーブ前データを記憶する、
ことを特徴とする請求項１又は２に記載のインタリーブ処理装置。
【請求項４】
第１の設定に従って、外部から入力されたインタリーブ前データに対する畳み込みインタリーブ処理における複数のパスのそれぞれに対応付けたパス番号を生成するパス番号生成部と、
前記パス番号、及び第２の設定によって与えられた第１至第３の初期設定値とを用いて予め与えられた演算規則に従って演算し、前記複数のパスのそれぞれに割り当てられたインタリーブ処理用メモリの上界アドレス及び下界アドレスを生成する境界アドレス生成部と、
前記パス番号をアドレスとして入力データを記憶する第１のメモリへ前記入力データとして、前記インタリーブアドレスをアドレスとして前記インタリーブ前データを記憶する第２のメモリへ前記アドレスとして、前記インタリーブアドレスを供給するインタリーブアドレス生成部と、
を備えることを特徴とするインタリーブ制御装置。
【請求項５】
第１の設定に従って、外部から入力されたインタリーブ前データに対する畳み込みインタリーブ処理における複数のパスのそれぞれに対応付けたパス番号を生成し、
前記パス番号、及び第２の設定によって与えられた第１至第３の初期設定値を用いて予め与えられた演算規則に従って演算して、前記複数のパスのそれぞれに割り当てられたインタリーブ処理用メモリの上界アドレス及び下界アドレスを生成し、
前記パス番号をアドレスとして入力データを記憶する第１のメモリへ前記入力データとして、前記インタリーブアドレスをアドレスとして前記インタリーブ前データを記憶する第２のメモリへ前記アドレスとして、前記インタリーブアドレスを供給する
ことを特徴とするインタリーブ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、回路規模を抑制しつつ畳み込みインタリーブ処理又は畳み込みインタリーブ処理を行うことができるインタリーブ制御装置、インタリーブ処理装置及びインタリーブ処理方法に関する。
【背景技術】
【０００２】
デジタル通信において、信号の伝送中のインパルス状の雑音の付加や信号強度の変動により、伝送するデータがバースト状に連続して誤ってしまうことがある。また、電波の伝搬路にマルチパスがある場合も、周波数スペクトルがフラットではなくなり、受信レベルが低いキャリアが連続してしまい、伝送されるデータが連続的に誤ってしまうことがある。
【０００３】
このような誤りを回避するために使われるのが「インタリーブ」と呼ばれる処理である。インタリーブは、複数の符号語を並べて、そのデータの並びを変えることにより、連続したデータを分散させる処理である。インタリーブを行うことにより、バースト誤りをランダム誤りに変換でき、バースト誤りに対する訂正能力を高めることができる。並び替えられたデータは、受信側で再び並び替えられ、元の連続したデータに復元される。この受信側の処理は「デインタリーブ」と呼ばれる。
【０００４】
インタリーブ処理では、一般的に、インタリーブ対象のデータと同規模のメモリに、ある特定のアドレス列を用いて、対象データを書き込み、又は、読み出すことで、データが並び替えられる。
【０００５】
インタリーブは、その並び替えの方法により、「ブロックインタリーブ」、「畳み込みインタリーブ」に分類できる。ここでは畳み込みインタリーブに着目する。畳み込みインタリーブ方式のインタリーブは、同じ効果を得ようとした際にブロックインタリーブ方式より少ないメモリで構成可能なことから、地上デジタルテレビジョン放送の伝送方式に採用されている。地上デジタルテレビジョン放送の伝送方式の詳細については、例えば、非特許文献１に記載されている。
【０００６】
非特許文献１等で採用されている畳み込みインタリーブ方式について、図１２を用いて説明する。畳み込みインタリーブ回路４００は、任意の自然数Ｎと、Ｎを割り切る自然数Ｄとによって規定される。図１２において、畳み込みインタリーブ回路４００は、Ｄ本のパスを有し、パス１、２、・・・、（Ｄ−１）にはそれぞれ、Ｍ段、２・Ｍ段、・・・、（Ｄ−１）・Ｍ段のシフトレジスタ４２０−１、４２０−２、・・・、４２０−（Ｄ−１）が設けられている。ここで、Ｍは自然数であり、Ｍ＝Ｎ／Ｄである。
【０００７】
畳み込みインタリーブ回路４００において、入力データが１シンボルずつ入力端子４１０から入力され、入力端子４１０は、０番目のシンボルをパス０へ、１番目のシンボルをパス１へ、（Ｄ−１）番目のシンボルをパス（Ｄ−１）へ送る。さらに入力端子４１０は、Ｄ番目のシンボルを再びパス１へ、（Ｄ＋１）番目のシンボルを再びパス（Ｄ−１）へ送る。
【０００８】
出力端子４３０は、入力端子４１０によるデータの分配に同期して、パス０、パス１、・・・、パス（Ｄ−１）を順次切り換えてデータを入力し、出力データとして出力する。このとき、出力端子４３０は、パス０については入力端子４１０から入力されたデータをそのまま入力し、その他のパスについては、各パスに設けられたシフトレジスタからシフトアウトされたデータを入力する。
【０００９】
シフトレジスタ４２０−１〜４２０−（Ｄ−１）は、対応するパスに入力端子４１０と出力端子４３０が接続されたときに１シンボルシフトする。つまり、シフトレジスタ４２０−１〜４２０−（Ｄ−１）は、データ入力Ｄ回毎に１度シフトする。従って、段数の異なるシフトレジスタ４２０−１〜４２０−（Ｄ−１）を通過して出てきた出力データの遅延量は、それぞれ、パス１でＭ・Ｄシンボル、パス２で２・Ｍ・Ｄシンボル、・・・、（Ｄ−１）・Ｍ・Ｄシンボルとなる。ここで「シンボル」とは、ある単位データのまとまりであり、非特許文献１の３．７節バイトインタリーブでは１シンボルの大きさは１バイトである。
【００１０】
また、畳み込みデインタリーブ処理は、図１２のインタリーブ回路において、データ入力１シンボル毎に切り換えられるパスの順序を逆方向にすることにより実現される。すなわち、インタリーブでは、データが入力されるパスは、パス０、１、・・・（Ｄ−１）の順に切り換えられ、デインタリーブでは、データが取り込まれるパスは、パス（Ｄ−１）、（Ｄ−２）、・・・、０の順に切り換えられる。
【００１１】
畳み込みインタリーブに関する技術は、非特許文献２、３等に記載されている。
【００１２】
例えば非特許文献２には、入力データに遅延を与えるときにシフトレジスタの代わりにメモリを使用する畳み込みインタリーブ回路が種々提案されている。
【００１３】
図１３に非特許文献２のメモリ領域の内容を示す。図１３に示すように、メモリ領域はパス１からパス（Ｄ−１）のシフトレジスタと同量の領域が確保される。それぞれのパスに割り当てられた領域のメモリアドレスは、それぞれ、パス１で０〜（Ｍ−１）、パス２でＭ〜（３・Ｍ−１）、・・・、パス（Ｄ−１）で（Ｄ−２）（Ｄ−１）・Ｍ／２〜（Ｄ−１）Ｄ・Ｍ／２−１である。
【００１４】
このように、メモリにシフトレジスタと同量の領域を用意し、読み出しアクセス・書き込みアクセスの順に、同じアドレスへアクセスする。そして、アクセスするごとに、アドレスを順次巡回させ各パスに対応する領域をリングバッファのように使用することによって入力データに対してシフトレジスタと同様の遅延を与えている。
【００１５】
非特許文献２の畳み込みインタリーブ回路では、各パスに割り当てられたメモリの領域間の境界アドレスを記憶させたテーブルが用いられている。
【００１６】
非特許文献３の畳み込みインタリーブ回路では、インタリーブアドレスを生成するために、乗算器が用いられている。具体的には、非特許文献３の畳み込みインタリーブ回路では、乗算器、加算器及びレジスタ等を用いて、境界アドレスを生成する。
【先行技術文献】
【非特許文献】
【００１７】
【非特許文献１】規格番号「ＡＲＩＢ−ＳＴＤ−Ｂ３１」、標準規格名「地上デジタルテレビジョン放送の伝送方式」、社団法人電波産業会（ＡＲＩＢ）、第１．９版（改定日：平成２２年７月１５日）、策定年月日：平成１３年５月３１日、３．７節、及び３．１１節１項
【非特許文献２】Yun-Nan Chang, "A Low-Cost Dual-Mode Deinterleaver Design," IEEE Transactions on Consumer Electronics, Vol.54, No.2, May 2008.
【非特許文献３】Rizwan Asghar, Dake Liu, "Low Complexity Multi Mode Interleaver Core for WiMAX with Support for Convolutional Interleaving," International Journal of Electrical and Computer Engineering, vol.1, no.1, 2009.
【発明の概要】
【発明が解決しようとする課題】
【００１８】
非特許文献２の畳み込みインタリーブ回路では、各パスに割り当てられたメモリの領域間の境界アドレスを記憶させたテーブルが用いられている。境界アドレスは、パスの本数分だけ必要である。従って、パス数が多いインタリーブを行う場合、テーブルの回路規模が大きくなるという課題がある。また、方式が異なると境界アドレスも変更する必要があるため、複数の方式に対応するためには、テーブルのサイズが大きくなり、さらに回路規模が増大するという課題がある。
【００１９】
非特許文献３の畳み込みインタリーブ回路では、インタリーブアドレスを生成するために、乗算器が用いられている。一般に、乗算器は、回路規模が大きい。そのため、極力、乗算器を用いずに処理することが望ましい。
【００２０】
また、例えば、地上デジタルテレビジョン放送に採用されている、非特許文献１に記載された畳み込みインタリーブ方式は、乗算が必須の処理を含まないので、本来は、乗算器を使用せずに処理可能である。従って、非特許文献１の畳み込みインタリーブ方式には、非特許文献３の畳み込みインタリーブ回路は適すると言えない。
（発明の目的）
本発明は上記のような技術的課題に鑑みて行われたもので、回路規模を抑制しつつ、畳み込みインタリーブ処理又は畳み込みデインタリーブ処理を行うことが可能なインタリーブ制御装置、インタリーブ処理装置及びインタリーブ処理方法を提供することを目的とする。
【課題を解決するための手段】
【００２１】
本発明のインタリーブ制御装置は、第１の設定に従って、外部から入力されたインタリーブ前データに対する畳み込みインタリーブ処理又は畳み込みデインタリーブ処理における複数のパスのそれぞれに対応付けたパス番号を生成するパス番号生成部と、パス番号、及び第２の設定によって与えられた第１至第３の初期設定値とを用いて予め与えられた演算規則に従って演算し、複数のパスのそれぞれに割り当てられたインタリーブ処理用メモリの上界アドレス及び下界アドレスを生成する境界アドレス生成部と、パス番号をアドレスとして入力データを記憶する第１のメモリへ入力データとして、インタリーブアドレスをアドレスとしてインタリーブ前データを記憶する第２のメモリへアドレスとして、インタリーブアドレスを供給するインタリーブアドレス生成部と、を備えることを特徴とする。
【００２２】
本発明のインタリーブ処理装置は、第１の設定に従って、外部から入力されたインタリーブ前データに対する畳み込みインタリーブ処理又は畳み込みデインタリーブ処理における複数のパスのそれぞれに対応付けたパス番号を生成するパス番号生成部と、パス番号、及び第２の設定によって与えられた第１至第３の初期設定値とを用いて予め与えられた演算規則に従って演算し、複数のパスのそれぞれに割り当てられたインタリーブ処理用メモリの上界アドレス及び下界アドレスを生成する境界アドレス生成部と、インタリーブアドレスを供給するインタリーブアドレス生成部と、複数のパスのそれぞれに対応付けてインタリーブアドレスを記憶する第１のメモリと、インタリーブアドレスに対応付けてインタリーブ前データを記憶する第２のメモリと、を備えることを特徴とする。
【００２３】
本発明のインタリーブ処理方法は、第１の設定に従って、外部から入力されたインタリーブ前データに対する畳み込みインタリーブ処理又は畳み込みデインタリーブ処理における複数のパスのそれぞれに対応付けたパス番号を生成し、パス番号、及び第２の設定によって与えられた第１至第３の初期設定値を用いて予め与えられた演算規則に従って演算して、複数のパスのそれぞれに割り当てられたインタリーブ処理用メモリの上界アドレス及び下界アドレスを生成し、パス番号をアドレスとして入力データを記憶する第１のメモリへ入力データとして、インタリーブアドレスをアドレスとしてインタリーブ前データを記憶する第２のメモリへアドレスとして、インタリーブアドレスを供給することを特徴とする。
【発明の効果】
【００２４】
本発明のインタリーブ制御装置、インタリーブ処理装置及びインタリーブ処理方法は、２個の加算器と２個のレジスタのみを用いて、境界アドレスを発生させる。従って、小さい回路規模で、畳み込みインタリーブ又は畳み込みデインタリーブを行うことができるという効果がある。
【図面の簡単な説明】
【００２５】
【図１】本発明の実施形態のインタリーブ制御装置の構成を示すブロック図である。
【図２】本発明の実施形態のインタリーブ処理装置の構成を示すブロック図である。
【図３】本発明の実施形態の境界アドレス生成部の構成を示すブロック図である。
【図４】本発明の実施形態の境界アドレス生成部の変形例の構成を示すブロック図である。
【図５】本発明の実施形態の境界アドレス生成部の第２の変形例の構成を示すブロック図である。
【図６】本発明の実施形態のインタリーブアドレス生成部の構成を示すブロック図である。
【図７】本発明の実施形態のインタリーブ処理装置の動作を示すフローチャートである。
【図８】本発明の実施形態のインタリーブ処理装置の動作を示すフローチャートである。
【図９】本発明の実施形態のインタリーブ処理装置の、モードＡのときの設定を示すブロック図である。
【図１０】本発明の実施形態のインタリーブ処理装置の、モードＢのときの設定を示すブロック図である。
【図１１】本発明の実施形態の、モード切り換え機能を除いたインタリーブ処理装置の構成を示すブロック図である。
【図１２】非特許文献１に記載の畳み込みインタリーブ方式を示す図である。
【図１３】非特許文献２に記載の畳み込みインタリーブ回路におけるアドレスマップを示す図である。
【発明を実施するための形態】
【００２６】
本発明の実施形態に係るインタリーブ装置の構成例のブロック図を図２に示す。本実施形態に係るインタリーブ装置１００は、パス番号生成部１１０と、境界アドレス生成部１２０と、インタリーブアドレス生成部１３０と、レジスタファイル１４０と、第１のメモリ１５０と、第２のメモリ１６０と、メモリ入力選択部１７０と、アドレス出力選択部１８０と、データ出力選択部１９０とを備える。
【００２７】
パス番号生成部１１０は、第１の設定に従いパス番号を生成し出力する。「第１の設定」については後述する。
【００２８】
境界アドレス生成部１２０は、パス番号を入力とし、第２の設定に従い入力されたパス番号に対して演算を行い、各パスに割り当てられたメモリ領域の上界アドレス及び下界アドレスを生成し出力する。「上界アドレス」、「下界アドレス」とは、それぞれ、メモリを各パス番号に割り当てられた領域に区分するときの、境界となる２つのアドレスの大きい方、小さい方を意味する。「第２の設定」については後述する。
【００２９】
境界アドレス生成部１２０は、第２の設定に基づき演算を行い、各パスに割り当てられたメモリ領域の上界アドレスと下界アドレスを生成する。
【００３０】
境界アドレス生成部１２０の構成例のブロック図を図３に示す。境界アドレス生成部１２０は、加減算器１２１と、遅延器１２２と、加減算器１２３と、遅延器１２４と、マルチプレクサ１２５、１２６とを備える。境界アドレス生成部１２０は、第２の設定によって与えられた第１〜第３の初期設定値に基づき２段の累算を行い、その演算結果を上界アドレス又は下界アドレスとして出力する。
【００３１】
加減算器１２１は、第１の初期設定値と遅延器１２２出力との加算、又は遅延器１２２出力から第１の初期設定値の減算を行い、演算結果を出力する。加減算器１２１の演算機能は、インタリーブ処理装置３００の機能をインタリーブ又はデインタリーブに設定する設定信号deintによって、インタリーブ処理時には加算機能に設定され、デインタリーブ処理時には減算機能に設定される。
【００３２】
遅延器１２２は、第２の初期設定値によって初期化され、１タイミング前の入力を出力、すなわち入力値を１タイミング遅延させて出力する。
【００３３】
加減算器１２３は、遅延器１２２出力と遅延器１２４出力との加算、又は遅延器１２４出力から遅延器１２２出力の減算を行い、演算結果を出力する。加減算器１２３の演算機能も、インタリーブ処理装置１００の機能をインタリーブ又はデインタリーブに設定する設定信号deintによって、インタリーブ処理時には加算機能に設定され、デインタリーブ処理時には減算機能に設定される。
【００３４】
遅延器１２４は第３の初期設定値によって初期化され、１タイミング前の入力を出力、すなわち入力値を１タイミング遅延させて出力する。
【００３５】
マルチプレクサ１２５、１２６は、設定信号deintに従って、入力信号を選択し、それぞれ、上界アドレス、下界アドレスとして出力する。マルチプレクサ１２５は、インタリーブ処理時には加減算器１２３の出力を、デインタリーブ処理時には遅延器１２４の出力を、上界アドレスとして出力する。マルチプレクサ１２６は、インタリーブ処理時には遅延器１２４の出力を、デインタリーブ処理時には加減算器１２３の出力を、下界アドレスとして出力する。
【００３６】
なお、インタリーブ処理装置１００の機能をインタリーブ又はデインタリーブのいずれかに固定するときは、加減算器１２１及び加減算器１２３を、加算器又は減算器に置き換え、マルチプレクサ１２５、１２６を削除することができる。すなわち、インタリーブ処理装置１００の機能をインタリーブに固定するときは、加減算器１２１、加減算器１２３を、それぞれ加算器１２１−１、加算器１２３−１に置き換え、マルチプレクサ１２５、１２６を削除すればよい。インタリーブ処理装置１００の機能をデインタリーブに固定するときは、加減算器１２１、加減算器１２３を、それぞれ減算器１２１−２、減算器１２３−２に置き換え、マルチプレクサ１２５、１２６を削除すればよい。
【００３７】
図４は、インタリーブ機能のみを備えるインタリーブ処理装置１００の境界アドレス生成部１２０−１のブロック図である。図５は、デインタリーブ機能のみを備えるインタリーブ処理装置１００の、境界アドレス生成部１２０−２のブロック図である。
【００３８】
境界アドレス生成部１２０の行う演算は、第２の設定によって与えられる第１〜第３の初期設定値をｉ１〜ｉ３とし、系列のインデックスとして前記パス番号を用いてｎ（ｎは自然数）、下階アドレスをｆ（ｎ−１）、上界アドレスをｆ（ｎ）とすると、次式によって表すことができる。ただし、ｉ２＝０、ｆ（０）＝ｉ３＝０とする。
【００３９】
ｆ（ｎ）＝ｆ（ｎ−１）±ｎ×ｉ１
インタリーブアドレス生成部１３０は、アドレス出力選択部１８０の出力と境界アドレス生成部１２０の出力した上界アドレス及び下界アドレスを入力とし、処理結果をインタリーブアドレスとして出力する。
【００４０】
本実施形態に係るインタリーブアドレス生成部１３０の構成例のブロック図を図６に示す。インタリーブアドレス生成部１３０は、加算器１３１と、比較器１３２と、マルチプレクサ１３３とを備える。
【００４１】
加算器１３１は、アドレス出力選択部１８０から入力されたアドレスに対して１を加算する。比較器１３２は、入力された上界アドレスと加算器出力とを比較する。マルチプレクサ１３３は、比較器１３２における比較結果に従い、入力された下界アドレスか加算器出力かのいずれか一方を選択し、インタリーブアドレスとして出力する。
【００４２】
レジスタファイル１４０は、パス番号生成部１１０からのパス番号をアドレスとして、インタリーブアドレス生成部１３０からのインタリーブアドレスをデータとして入力する。そして、レジスタファイル１４０は、パス番号に対応するアドレスのレジスタに保存されている過去のインタリーブアドレス値を出力する。そして、インタリーブアドレス値を出力した後、入力された現在のインタリーブアドレス値を、パス番号に対応するアドレスのレジスタに保存する。
【００４３】
メモリ入力選択部１７０は、パス番号生成部１１０からパス番号、インタリーブアドレス生成部１３０からインタリーブアドレス、及び外部からインタリーブ前データを入力する。そして、第３の設定に従い、入力された３つの情報のうち、パス番号及びインタリーブアドレスか、もしくは、インタリーブアドレス及びインタリーブ前データかを選択し、それぞれアドレスとデータの組み合わせとして出力する。「第３の設定」については後述する。
【００４４】
第１のメモリ１５０は、メモリ入力選択部１７０から入力されたアドレスに保存されているデータを出力する。そして、入力されたアドレスに、メモリ入力選択部１７０から入力されたデータを保存する。
【００４５】
第２のメモリ１６０は、インタリーブアドレス生成部１３０からのインタリーブアドレスに保存されているデータを出力する。そして、入力されたアドレスに、入力されたデータを保存する。
【００４６】
アドレス出力選択部１８０は、レジスタファイル１４０の出力と第１のメモリ１５０の出力とを入力し、第３の設定に従いレジスタファイル１４０の出力か第１のメモリ１５０の出力かのいずれかを選択し、出力する。
【００４７】
データ出力選択部１９０は、第１のメモリ１５０の出力と第２のメモリ１６０の出力とを入力し、第３の設定に従い第１のメモリ１５０出力か第２のメモリ１６０出力かのいずれかを選択し、出力する。
【００４８】
以上の構成により、インタリーブに要するメモリ量に応じて、第１のメモリもしくは第２のメモリを使い分けて、畳み込みインタリーブ方式のインタリーブ処理を実行することができる。
（実施形態の動作）
図７、８は、本実施形態のインタリーブ処理装置の動作を示すフローチャートである。以上で説明したインタリーブ処理装置１００によるインタリーブ処理の動作について、図２、７、８を参照しながら説明する。なお、予め設定信号deintによって、インタリーブ処理装置１００の機能はインタリーブ処理に設定されているものとする。
【００４９】
インタリーブ処理装置１００では、メモリの使用形態が異なる２種類のモードＡ、Ｂでの動作が可能である。モードＡはインタリーブに要するメモリ量が少ない場合に適したモードで、モードＢはインタリーブに要するメモリ量が少ない場合に適したモードである。まず、モードＡにおける動作について説明する。
【００５０】
最初に、上位のコントローラ等によりインタリーブ処理装置１００への初期設定が行われる（ステップＳ１０１）。すなわち、パス番号生成部１１０に第１の設定が、境界アドレス生成部１２０に第２の設定が、メモリ入力選択部１７０、アドレス出力選択部１８０及びデータ出力選択部１９０に第３の設定が行われる。
【００５１】
パス番号生成部１１０への第１の設定により、パス番号の最大値が設定される。境界アドレス生成部１２０への第２の設定により、第１〜第３の初期値が設定される。メモリ入力選択部１７０、及びアドレス出力選択部１８０及びデータ出力選択部１９０への第３の設定により、それぞれへの複数の入力情報の中から、出力情報が選択される。
【００５２】
モードＡでは、具体的には、第２、第３の設定により、境界アドレス生成部１２０、メモリ入力選択部１７０、アドレス出力選択部１８０、データ出力選択部１９０は、それぞれ以下のように機能が設定される。
１）境界アドレス生成部１２０では、設定信号deintにより、加減算器１２１及び加減算器１２３が、２つの入力情報を加算するように設定される。マルチプレクサ１２５は、加減算器１２３の出力を上界アドレスとして出力する。マルチプレクサ１２６は、遅延器１２４の出力を下界アドレスとして出力する。また、第１〜第３の初期値が設定される。
２）メモリ入力選択部１７０では、第３の設定により、インタリーブアドレスとインタリーブ前データとが選択され、それぞれアドレスとデータとして第１のメモリ１５０へ出力される。
３）アドレス出力選択部１８０では、第３の設定により、レジスタファイル１４０の出力が選択され、インタリーブアドレス生成部１３０へ出力される。
４）データ出力選択部１９０では、第３の設定により、第１のメモリの出力が選択され、インタリーブ後データとして出力される。
【００５３】
なお、レジスタファイル１４０のパス番号１、２、３、・・・、（Ｄ−１）に対応する各レジスタの初期値は、それぞれ各パスに割り当てられたメモリ領域の上界アドレス−１の値が設定される。第１のメモリ１５０、第２のメモリ１６０の全領域は０に初期化される。
【００５４】
インタリーブ処理装置１００に対する第１〜第３の設定が終了したら、外部からインタリーブ前データの入力を受け付け始め、インタリーブ処理を開始する。
【００５５】
まず、パス番号生成部１１０はパス番号を生成する（ステップＳ１０２）。
【００５６】
そして、レジスタファイル１４０は、パス番号生成部１１０の生成したパス番号に対応するレジスタに保存されているデータを出力する（ステップＳ１０３）。
【００５７】
続いて、アドレス出力選択部１８０はレジスタファイル１４０の出力を選択し、出力する（ステップＳ１０４）。
【００５８】
そして、境界アドレス生成部１２０は、第１〜第３の初期値に基づき累算を行い、上界アドレス及び下界アドレスを出力する（ステップＳ１０５）。
【００５９】
さらに、インタリーブアドレス生成部１３０は、アドレス出力選択部１８０の出力に１を加算し（ステップＳ１０６）、入力された上界アドレスと加算結果とを比較する（ステップＳ１０７）。
【００６０】
そして、加算結果の方が小さい場合（ステップＳ１０７：Yes）、インタリーブアドレス生成部１３０は、加算結果をインタリーブアドレスとして出力する（ステップＳ１０８）。上界アドレスと加算結果とが等しい場合（ステップＳ１０７：No）、インタリーブアドレス生成部１３０は、入力された下界アドレスをインタリーブアドレスとして出力する（ステップＳ１０９）。
【００６１】
そして、メモリ入力選択部１７０は、入力されたインタリーブアドレスと、外部から入力されたインタリーブ前データとをそれぞれアドレスとデータとして出力する（ステップＳ１１０）。
【００６２】
第１のメモリ１５０は、インタリーブアドレス生成部１３０の生成したインタリーブアドレスからデータを取り出し出力した後、当該のアドレスにインタリーブ前データを保存する（ステップＳ１１１）。
【００６３】
続いて、データ出力選択部１９０は、第１のメモリ１５０から出力されたデータを、インタリーブ後データとして外部へ出力する（ステップＳ１１２）。
【００６４】
また、インタリーブアドレス生成部１３０の生成したインタリーブアドレスは、レジスタファイル１４０において、パス番号生成部１１０の生成したパス番号に対応するレジスタに保管される（ステップＳ１１３）。
【００６５】
以上の一連の作業が終了したら、入力された１個のインタリーブ前データに対する作業は終了する。
【００６６】
パス番号生成部１１０は、第１の設定により設定された最大値に達するまで、入力された１個のインタリーブ前データに対する上記の作業が終了するたびに、パス番号をカウントアップする（ステップＳ１１４）。そして、パス番号が最大値に達したか否かを確認する（ステップＳ１１５）。
【００６７】
パス番号が最大値に達した場合（ステップＳ１１５：Yes）、パス番号生成部１１０はパス番号を初期化、すなわち”０”に戻し（ステップＳ１１６）、ステップＳ１０３へ戻る。
【００６８】
パス番号が最大値に達していない場合（ステップＳ１１５：No）は、ステップＳ１０２へ戻り、次のパス番号についての処理を行う。
【００６９】
以上のようにして、インタリーブ処理装置１００は、入力された１個のインタリーブ前データ毎に上記の処理を行い、インタリーブ対象のデータがなくなるまで同様の動作を繰り返す。
【００７０】
なお、上記説明ではメモリ使用量が少ない方式に適したモードＡの場合を例として説明を行った。メモリ使用量の多い方式に適したモードＢの場合については、第２、第３の設定によって、境界アドレス生成部１２０、メモリ入力選択部１７０、アドレス出力選択部１８０、及びデータ出力選択部１９０を上記の場合とは逆側に設定し、同様の処理を行うことで、同様に実行可能である。具体的には、境界アドレス生成部１２０、メモリ入力選択部１７０、アドレス出力選択部１８０、データ出力選択部１９０は、それぞれ以下のように機能が設定される。
１’）境界アドレス生成部１２０では、設定信号deintにより、加減算器１２１及び加減算器１２３が、２つの入力情報を加算するように設定される。マルチプレクサ１２７は、インタリーブ処理時には加減算器１２５の出力を上界アドレスとして出力する。マルチプレクサ１２８は、インタリーブ処理時には遅延器１２６の出力を下界アドレスとして出力する。また、第１〜第５の初期値が設定される。本設定は、メモリ使用量が少ない場合と同様の設定である。
２’）メモリ入力選択部１７０では、第３の設定により、パス番号とインタリーブアドレスとが選択され、それぞれアドレスとデータとして第１のメモリ１５０へ出力される。
３’）アドレス出力選択部１８０では、第３の設定により、第１のメモリ１５０の出力が選択され、インタリーブアドレス生成部１３０へ出力される。
４’）データ出力選択部１９０では、第３の設定により、第２のメモリ１６０の出力が選択され、インタリーブ後データとして出力される。
（実際の通信に対する実施形態の適用例）
以下では、実際の通信に対するインタリーブ処理装置１００への、モードＡの適用例を挙げて、図２を参照しながら説明を行う。以下の説明では、文章中に数値を記載する場合、”１１”のように記載し、符号とは区別する。
【００７１】
モードＡの適用例として、インタリーブ処理装置１００をＩＳＤＢ−Ｔ（Integrated Services Digital Broadcasting。統合デジタル放送サービス）の「バイトインタリーブ処理」に適用する場合について説明する。ＩＳＤＢ−Ｔのバイトインタリーブでは、メモリ使用量が少ないので、インタリーブアドレスの保存にレジスタファイル１４０を用い、インタリーブ対象のデータの保存に第１のメモリ１５０を用いる。
【００７２】
最初に、上位のコントローラ等によりインタリーブ処理装置１００への初期設定が行われる。すなわち、パス番号生成部１１０に第１の設定が、境界アドレス生成部１２０に第２の設定が、メモリ入力選択部１７０及びアドレス出力選択部１８０及びデータ出力選択部１９０に第３の設定が行われる。
【００７３】
以上の設定により、パス番号生成部１１０においてパス番号の最大値が”１１”に設定される。境界アドレス生成部１２０においては、初期値が（第１、第２、第３）＝（１７、０、０）に設定され、加減算器３１１及び加減算器３２３において加算を行うように設定される。メモリ入力選択部１７０では、インタリーブアドレスとインタリーブ前データとが選択され、それぞれアドレスとデータとして第１のメモリ１５０へ出力される。アドレス出力選択部１８０では、レジスタファイル１４０の出力が選択され、データ出力選択部１９０では、第１のメモリ１５０の出力が選択される。なお、第１の初期値、第３の初期値は、”１１”より大きい任意の整数である。
【００７４】
また、レジスタファイル１４０のパス番号１、２、３、・・・、１１に対応する各レジスタの初期値はそれぞれ”１６”、”５０”、”１０１”、・・・、”１１２１”に設定される（第ｎ番目のパスに対応するレジスタの初期値はｎ（ｎ＋１）×１７／２−１）。
【００７５】
インタリーブ処理装置１００に対する第１〜第３の設定は以上である。以降の動作は、上記と同様である。以上のようにして、ＩＳＤＢ−Ｔのバイトインタリーブ処理を行うことができる。
【００７６】
なお、パス０に関しては、入力されたインタリーブ前データに対しては遅延を加える必要がない。そのため、第１のメモリ１５０に入力され遅延を加えられることなく、そのままインタリーブ後データとしてインタリーブ処理装置１００の外へ出力される。
【００７７】
以上、説明したように、本実施形態のインタリーブ処理装置１００では、加減算器及び遅延器のみを用いた境界アドレス生成部を用いて、上界アドレス、下界アドレスを生成する。加減算器及び遅延器は、多数の情報を記憶する必要がある背景技術のようなテーブルや、乗算器と比較すれば、回路規模は極めて小さい。従って、本実施形態のインタリーブ処理装置１００では、小さい回路規模で、畳み込みインタリーブを行うことができるという効果がある。
【００７８】
また、本実施形態のインタリーブ処理装置１００には、第１〜第３の設定を行われる。そして、その設定に従って、各パスに対応するインタリーブアドレスの保存には、レジスタファイル１４０もしくは第１のメモリ１５０が用いられる。インタリーブ対象のデータの保存には、第１のメモリ１５０もしくは第２のメモリ１６０が用いらえる。従って、インタリーブ処理装置１００は、２種類の用途で第１のメモリ１５０を使い分け、異なる処理方法でインタリーブを行うことができるという効果がある。従って、例えば、メモリ使用量の異なる複数の畳み込みインタリーブ処理方式に対応することができる。
【００７９】
なお、本実施形態では、インタリーブ処理装置１００を用いて畳み込みインタリーブ処理を行う動作例について説明したが、第１〜第３の設定を変更すれば、インタリーブ処理装置１００はデインタリーブ処理にも適用することができる。デインタリーブ処理を行うときは、インタリーブ処理装置１００へは、インタリーブ前データに代わり、デインタリーブされる対象のデータ、すなわちインタリーブ後データが入力され、デインタリーブされたデータが出力される。
【００８０】
例えば、デインタリーブに要するメモリ量が少ない場合に適した設定は、具体的には以下のようになる。なお、インタリーブアドレス生成部１３０が生成するアドレスは、正確には、「デインタリーブアドレス」であるが、本実施形態における処理上、本質的な違いはないので、「インタリーブアドレス」と表記する。また、予め設定信号deintによって、インタリーブ処理装置１００の機能はデインタリーブ処理に設定されているものとする。
１）境界アドレス生成部１２０では、設定信号deintにより、加減算器１２５は、乗算器１２４の出力から遅延器１２６の出力の減算を行う。マルチプレクサ１２５は、遅延器１２４の出力を上界アドレスとして出力する。マルチプレクサ１２６は、加減算器１２３の出力を、下界アドレスとして出力する。
２）メモリ入力選択部１７０では、第３の設定により、インタリーブアドレスとインタリーブ後データとが選択され、それぞれアドレスとデータとして第１のメモリ１５０へ出力される。
３）アドレス出力選択部１８０では、第３の設定により、レジスタファイル１４０の出力が選択され、インタリーブアドレス生成部１３０へ出力される。
４）データ出力選択部１９０では、第３の設定により、第１のメモリの出力が選択され、デインタリーブされたデータ、すなわちインタリーブ前データとして出力される。
【００８１】
メモリ入力選択部１７０、アドレス出力選択部１８０、データ出力選択部１９０は、データの転送経路を制御する。この制御は、モードＡとモードＢとでは異なるが、インタリーブ時とデインタリーブ時とでは共通である。
５）パス番号生成部１１０は、パス番号の最大値から最小値まで順に出力する。
【００８２】
パス番号生成部１１０の動作は、インタリーブ時とデインタリーブ時とでは、出力するパス番号の増減が逆である。
【００８３】
以上が、インタリーブ処理装置１００をデインタリーブ処理に適用するときの設定である。以上の設定によって、インタリーブ処理装置１００をデインタリーブ処理に適用することができる。
【００８４】
なお、本実施形態では、第１〜３の設定により、２種類の用途で第１のメモリ１５０を使い分け、異なる処理方法でインタリーブを行うことができる。しかし、１種類の畳み込みインタリーブ処理方式のみに対応すればよい場合には、第１〜３の設定を固定してしようすればよい。すなわち、本実施形態を適用する対象のシステムの要件に合致するように、第１〜３の設定を、メモリ使用量が少ないインタリーブ処理用設定、又はメモリ使用量が多いインタリーブ処理用の設定、にすればよい。
【００８５】
モードＡ用の設定を行った場合、及びモードＢ用の設定を行った場合の、インタリーブ処理装置１００の構成は、それぞれ図９、１０のブロック図の通りである。なお、図９、１０では、各モードにおけるインタリーブ動作に関わっていないブロックは表示されていない。
【００８６】
このように、モードＡにおける第１のメモリ１５０、第２のメモリ１６０が、モードＢではそれぞれレジスタファイル１４０、第１のメモリ１５０に入れ替わるが、両モードの基本的な動作は同じである。本実施形態においては、モードＡ、Ｂの切り換え機能を除くことができる。モードＡ、Ｂの切り換え機能を除いたインタリーブ装置１０１は、図１１の構成を備える。
【００８７】
インタリーブ装置１０１は、パス番号生成部１１０と、境界アドレス生成部１２０と、インタリーブアドレス生成部１３０と、第１のメモリ１５０と、第２のメモリ１６０と、を備える。
【００８８】
パス番号生成部１１０は、第１の設定に従って、外部から入力されたインタリーブ前データに対する畳み込みインタリーブ処理における複数のパスのそれぞれに対応付けたパス番号を生成する。
【００８９】
境界アドレス生成部１２０は、パス番号、及び第２の設定によって与えられた第１至第３の初期設定値とを用いて予め与えられた演算規則に従って演算し、複数のパスのそれぞれに割り当てられたインタリーブ処理用メモリの上界アドレス及び下界アドレスを生成する。
【００９０】
インタリーブアドレス生成部１３０はインタリーブアドレスを供給する。
【００９１】
第１のメモリ１５０は、複数のパスのそれぞれに対応付けてインタリーブアドレスを記憶する。第２のメモリ１６０は、インタリーブアドレスに対応付けてインタリーブ前データを記憶する。  さらに、本発明を適用してインタリーブを行うときに、第１のメモリ１５０及び第２のメモリ１６０を備えず、それぞれ外部のメモリを用いてもよい。従って、本発明における必須の構成を備えるインタリーブ制御装置２００は、図１の構成を備える。
【００９２】
インタリーブ制御装置２００は、パス番号生成部１１０と、境界アドレス生成部１２０と、インタリーブアドレス生成部１３０と、を備える。パス番号生成部１１０、境界アドレス生成部１２０、及びインタリーブアドレス生成部１３０の機能は、図１１のインタリーブ装置１０１のものと同じである。
【００９３】
なお、一般に、レジスタファイルよりもメモリの方が記憶容量が大きく、回路規模も大きいものと想定される。従って、図２のインタリーブ装置１００については、多くのインタリーブアドレスの記憶を必要としない方式の場合は、レジスタファイル１４０を用いるモードＡを、多くのインタリーブアドレスの記憶が必要な場合は、第１のメモリ１５０を用いるモードＢを選択することが望ましい。なお、前述のように、メモリ使用量の大小はあくまで相対的なものであり、実際のアプリケーションによって、いずれかのモードを選択すればよい。
【符号の説明】
【００９４】
１３１    加算器
１２５、１２６、１３３    マルチプレクサ
４１０    入力端子
４２０−１    シフトレジスタ
４３０    出力端子
【図１】
2013207382.tif 000003
【図２】
2013207382.tif 000004
【図３】
2013207382.tif 000005
【図４】
2013207382.tif 000006
【図５】
2013207382.tif 000007
【図６】
2013207382.tif 000008
【図７】
2013207382.tif 000009
【図８】
2013207382.tif 000010
【図９】
2013207382.tif 000011
【図１０】
2013207382.tif 000012
【図１１】
2013207382.tif 000013
【図１２】
2013207382.tif 000014
【図１３】
2013207382.tif 000015