"R行×C列のマトリクスにR×C’個ただし、C’はR×Cの任意の約数あるのデータからなる原データブロックのデータを列優先で格納して行優先で読み出すことでインタリーブされた入力データブロックをデインタリーブして前記原データブロックを復元するデインタリーブ装置であって、R×C個のデータを格納可能なメモリと、入力データブロックごとに初期値から前記メモリのライトアドレスの生成を始めて、前記初期値と前記メモリに格納された一つ前の入力データブロックに係る第c1番目ただし、cは一つ前の入力データブロックのデータを前記マトリクスに列優先で並べたときの列数であるのライトアドレスとの差分として与えられる第1の増分値に基づいてライトアドレスを生成するライトアドレス生成部と、入力データブロックごとに前記初期値から前記メモリのリードアドレスの生成を始めて、前記第1の増分値に基づいて第n×R1番目以外ただし、nは0以上の整数であるのリードアドレスを生成する一方、前記メモリに格納された一つ前の入力データブロックに係る第2番目のライトアドレスと前記初期値との差分として与えられる第2の増分値に基づいて第n×R1番目のリードアドレスを生成するリードアドレス生成部と、前記リードアドレス生成部によって生成されるリードアドレスからデータを順次読み出すとともに、前記ライトアドレス生成部によって生成されるライトアドレスに入力データブロックのデータを順次書き込むメモリインタフェース部とを備えていることを特徴とするデインタリーブ装置。請求項1のデインタリーブ装置において、前記リードアドレス生成部は、一つ前のリードアドレスに前記第1の増分値を加算した値に基づいてリードアドレスを生成する第1のアドレス生成部と、R個前のリードアドレスに前記第2の増分値を加算した値に基づいてリードアドレスを生成する第2のアドレス生成部と、前記第1および第2のアドレス生成部によって生成されたリードアドレスのいずれか一方を選択的に前記メモリインタフェース部に供給するマルチプレクサと、前記マルチプレクサの選択動作を制御する選択制御部とを有することを特徴とするデインタリーブ装置。請求項1のデインタリーブ装置において、一つ前のライトアドレスを保持する第1のレジスタと、一つ前のリードアドレスを保持する第2のレジスタと、前記ライトアドレス生成部およびリードアドレス生成部によって時分割で共有され、与えられたアドレスに前記第1の増分値を加算した値に基づいてアドレスを生成するアドレス生成部と、前記第1および第2のレジスタに保持されたアドレスのいずれか一方を選択的に前記アドレス生成部に供給するマルチプレクサと、前記アドレス生成部によって生成されたアドレスをリードアドレスおよびライトアドレスのいずれか一方として選択的に前記メモリインタフェース部に供給するデマルチプレクサと、前記マルチプレクサおよびデマルチプレクサの選択動作を制御する選択制御部とを備えていることを特徴とするデインタリーブ装置。R行×C列のマトリクスにR×C’個ただし、C’はR×Cの任意の約数であるのデータからなる原データブロックのデータを列優先で格納して行優先で読み出すことでインタリーブされた入力データブロックをメモリに格納し、当該入力データブロックをデインタリーブして前記原データブロックを復元するデインタリーブ方法であって、前記メモリに格納された一つ前の入力データブロックに係る第1番目および第c1番目ただし、cは一つ前の入力データブロックのデータを前記マトリクスに列優先で並べたときの列数であるのライトアドレスの差分として与えられる第1の増分値を生成するステップと、前記メモリに格納された一つ前の入力データブロックに係る第1番目および第2番目のライトアドレスの差分として与えられる第2の増分値を生成するステップと、入力データブロックごとに初期値から前記メモリのライトアドレスの生成を始めて、前記第1の増分値に基づいてライトアドレスを生成するステップと、入力データブロックごとに前記初期値から前記メモリのリードアドレスの生成を始めて、前記第1の増分値に基づいて第n×R1番目以外ただし、nは0以上の整数であるのリードアドレスを生成する一方、前記第2の増分値に基づいて第n×R1番目のリードアドレスを生成するステップと、前記生成されるリードアドレスからデータを順次読み出すとともに、前記生成されるライトアドレスに入力データブロックのデータを順次書き込むステップとを備えていることを特徴とするデインタリーブ方法。R行×C列のマトリクスにR×C’個ただし、C’はR×Cの任意の約数であるのデータからなる原データブロックのデータを列優先で格納して行優先で読み出すことでインタリーブされたデータブロックを生成して送信するインタリーブ装置と、前記インタリーブされたデータブロックを受信し、当該受信したデータブロックをデインタリーブして前記原データブロックを復元する請求項1のデインタリーブ装置とを備えていることを特徴とするデータ伝送システム。R行×C列のマトリクスにR×C’個ただし、C’はR×Cの任意の約数であるのデータからなる原データブロックのデータを列優先で格納して行優先で読み出すことでインタリーブされたデータブロックを生成して送信するステップと、前記インタリーブされたデータブロックを受信し、当該受信したデータブロックを請求項4のデインタリーブ方法に従ってデインタリーブして前記原データブロックを復元するステップとを備えていることを特徴とするデータ伝送方法。固定長の入力データブロックをデインタリーブする場合、メモリからデータを一つ読み出すたびに同じアドレスに受信データを一つ書き込めばよいため、入力データブロックのデータ書き込みとその一つ前にメモリに格納された入力データブロックのデータ読み出しとを1個のメモリを用いて行うことができる。一方、可変長の入力データブロックをデインタリーブする場合、データ読み出しに係るデータブロックとデータ書き込みに係るデータブロックとでブロック長が異なる場合があり、特に、後者の方が長い場合、データがまだ読み出されていないアドレスにデータが上書きされるおそれがある。そこでデータのオーバーライトを回避するために、2個のメモリを交互に使用して一方のメモリからデータを読み出しているときは他方のメモリにデータを書き込むようにするか、あるいは、固定長と同様に1個のメモリを用いてデータ読み出しとデータ書き込みを行うのであれば、不使用の列に係るライトアドレスの生成をスキップしている間に受信するデータを一時的に格納するバッファを設ける必要がある。しかし、いずれの場合もメモリあるいはバッファといった記憶手段が追加的に必要となり、回路面積が増大してしまう。上記問題に鑑み、本発明は、追加の記憶手段なしで1個のメモリを用いて可変長の入力データブロックのデインタリーブ処理が可能なデインタリーブ装置および方法を提供することを課題とする。さらに、そのようなデインタリーブ装置を備えたデータ伝送システムおよび方法を提供することを課題とする。上記課題を解決するために本発明によって次のような手段を講じた。すなわち、R行×C列のマトリクスにR×C’個ただし、C’はR×Cの任意の約数であるのデータからなる原データブロックのデータを列優先で格納して行優先で読み出すことでインタリーブされた入力データブロックをデインタリーブして原データブロックを復元するデインタリーブ装置は、R×C個のデータを格納可能なメモリと、入力データブロックごとに初期値からメモリのライトアドレスの生成を始めて、初期値とメモリに格納された一つ前の入力データブロックに係る第c1番目ただし、cは一つ前の入力データブロックのデータをマトリクスに列優先で並べたときの列数であるのライトアドレスとの差分として与えられる第1の増分値に基づいてライトアドレスを生成するライトアドレス生成部と、入力データブロックごとに初期値からメモリのリードアドレスの生成を始めて、第1の増分値に基づいて第n×R1番目以外ただし、nは0以上の整数であるのリードアドレスを生成する一方、メモリに格納された一つ前の入力データブロックに係る第2番目のライトアドレスと初期値との差分として与えられる第2の増分値に基づいて第n×R1番目のリードアドレスを生成するリードアドレス生成部と、リードアドレス生成部によって生成されるリードアドレスからデータを順次読み出すとともに、ライトアドレス生成部によって生成されるライトアドレスに入力データブロックのデータを順次書き込むメモリインタフェース部とを備えている。また、R行×C列のマトリクスにR×C’個ただし、C’はR×Cの任意の約数であるのデータからなる原データブロックのデータを列優先で格納して行優先で読み出すことでインタリーブされた入力データブロックをメモリに格納し、当該入力データブロックをデインタリーブして原データブロックを復元するデインタリーブ方法は、メモリに格納された一つ前の入力データブロックに係る第1番目および第c1番目ただし、cは一つ前の入力データブロックのデータをマトリクスに列優先で並べたときの列数であるのライトアドレスの差分として与えられる第1の増分値を生成するステップと、メモリに格納された一つ前の入力データブロックに係る第1番目および第2番目のライトアドレスの差分として与えられる第2の増分値を生成するステップと、入力データブロックごとに初期値からメモリのライトアドレスの生成を始めて、第1の増分値に基づいてライトアドレスを生成するステップと、入力データブロックごとに初期値からメモリのリードアドレスの生成を始めて、第1の増分値に基づいて第n×R1番目以外ただし、nは0以上の整数であるのリードアドレスを生成する一方、第2の増分値に基づいて第n×R1番目のリードアドレスを生成するステップと、生成されるリードアドレスからデータを順次読み出すとともに、生成されるライトアドレスに入力データブロックのデータを順次書き込むステップとを備えている。当該デインタリーブ装置またはデインタリーブ方法によると、ライトアドレスは入力データブロックのブロック長にかかわらず第1の増分値に基づいて生成されるのに対して、リードアドレスは第n×R1番目以外のときは第1の増分値に基づいて、第n×R1番目のときは第2の増分値に基づいて生成される。ここで、入力データブロックのデータをR行×C列のマトリクスに列優先で格納した場合の列数C’がR×Cの約数となっていれば、データ読み出しに係るデータブロックとデータ書き込みに係るデータブロックとでブロック長が異なっていても、常にリードアドレスがライトアドレスを先行する、すなわち、メモリの任意のアドレスについてリードアドレスが生成されてデータが読み出された後に同じ値のライトアドレスが生成されることが保証される。したがって、ライトアドレスの生成をスキップすることがなく、受信データを一時的に格納するバッファは不要である。また、データ伝送システムまたは方法は、R行×C列のマトリクスにR×C’個ただし、C’はR×Cの任意の約数であるのデータからなる原データブロックのデータを列優先で格納して行優先で読み出すことでインタリーブされたデータブロックを生成して送信するインタリーブ装置またはステップと、インタリーブされたデータブロックを受信し、当該受信したデータブロックをデインタリーブして原データブロックを復元する上記のデインタリーブ装置または当該受信したデータブロックを上記のデインタリーブ方法に従ってデインタリーブして原データブロックを復元するステップとを備えている。本発明によると、追加の記憶手段なしで1個のメモリを用いて可変長の入力データブロックのデインタリーブ処理が可能である。これにより、デインタリーブ装置の回路面積を縮小することができる。デインタリーブ装置の実施形態図1は、本発明の一実施形態に係るデインタリーブ装置の構成を示す。本実施形態に係るデインタリーブ装置は、インタリーブされた入力データブロックインタリーブブロックをデインタリーブして出力データブロックデインタリーブブロックを生成する。なお、説明の便宜のため、入力データブロックは、図示しないインタリーブ装置におけるR行×C列のマトリクスに列優先で格納したデータを行優先で読み出すことでインタリーブされたデータブロックであるとする。また、入力データブロックは、ブロック長=R×C’ただし、C’はR×Cの任意の約数という制約条件を満たす可変長のデータブロックであるとする。本実施形態に係るデインタリーブ装置において、メモリ11はM個ただし、M=R×Cであるのデータを格納可能なメモリである。便宜上、メモリアドレスは0からM-1までの各整数で特定されるものとする。メモリインタフェース部14は、リードアドレス生成部13によって生成されるメモリ11のリードアドレスからデータを順次読み出す。それと並行して、メモリインタフェース部14は、ライトアドレス生成部12によって生成されるメモリ11のライトアドレスに入力データブロックのデータを順次書き込む。ライトアドレス生成部12は、入力データブロックごとに初期値例えば、0からメモリ11のライトアドレスの生成を始めて、初期値とメモリ11に格納された一つ前の入力データブロックに係る第c1番目ただし、cは一つ前の入力データブロックのデータをR行×C列のマトリクスに列優先で並べたときの列数であるのライトアドレスとの差分として与えられる増分値Xjに基づいてライトアドレスを生成する。具体的には、ライトアドレス生成部12は、アドレスAi,jを生成するアドレス生成部121を備えており、アドレス生成部121が生成するアドレスAi,jをライトアドレスとしてメモリインタフェース部14に供給する。アドレス生成部121は、次の計算式に従ってアドレスAi,jを生成する。ここで、iは各入力データブロックにおけるデータの識別番号である。jは入力データブロック自体の識別番号である。cj-1は一つ前の入力データブロックのデータをR行×C列のマトリクスに列優先で並べたときの列数であり、上記制約条件の下でR×Cの任意の約数を取り得る。なお、iおよびjは図示しないカウンタによって生成される。便宜上、iおよびjのいずれも0から始まってデインタリーブ装置への入力順に1ずつ増加する整数とする。リードアドレス生成部13は、入力データブロックごとに初期値例えば、0からメモリ11のリードアドレスの生成を始めて、増分値Xjに基づいて第n×R1番目以外ただし、nは0以上の整数であるのリードアドレスを生成し、メモリ11に格納された一つ前の入力データブロックに係る第2番目のライトアドレスと初期値との差分として与えられる増分値Yjに基づいて第n×R1番目のリードアドレスを生成する。具体的には、リードアドレス生成部13は、増分値Xjに基づいてアドレスAi,jを生成するアドレス生成部131、増分値Yjに基づいてアドレスARi,jを生成するアドレス生成部132、これらアドレス生成部によって生成されたリードアドレスのいずれか一方を選択的にメモリインタフェース部14に供給するマルチプレクサ133、およびマルチプレクサ133の選択動作を制御する選択制御部134で構成することができる。アドレス生成部131は、次の計算式に従ってアドレスAi,jを生成する。基本的にはアドレス生成部121のアドレス計算式と同じであるが、X0は1ではなくアドレス生成部121で生成されるX1を使用する点、imodR=0のときにAi,jをARi,jに更新する点が異なる。アドレス生成部132は、次の計算式に従ってアドレスARi,jを生成する。選択制御部134は、マルチプレクサ133の選択動作を制御する。具体的には、選択制御部134は、マルチプレクサ133に対して、imodR≠0のときはアドレス生成部131を、imodR=0のときはアドレス生成部132を、それぞれ選択するように指示する。<変形例>アドレス生成部121およびアドレス生成部131のアドレス生成規則はほぼ同じであるため、ライトアドレス生成部12およびリードアドレス生成部13で1個のアドレス生成部を時分割で共有するようにしてもよい。例えば、アドレス生成部131を省略し、アドレス生成部121でリードアドレス生成も行うようにしてもよい。図2は、そのような変形例に係るデインタリーブ装置の構成を示す。アドレス生成部121でリードアドレスおよびライトアドレスのいずれも生成可能にするために、本変形例に係るデインタリーブ装置は、一つ前のライトアドレスを保持するレジスタ15と、一つ前のリードアドレスを保持するレジスタ16と、これらレジスタに保持されたアドレスのいずれか一方を選択的にアドレス生成部121に供給するマルチプレクサ17と、アドレス生成部121によって生成されたアドレスをリードアドレスおよびライトアドレスのいずれか一方として選択的にメモリインタフェース部14に供給するデマルチプレクサ18と、マルチプレクサ17およびデマルチプレクサ18の選択動作を制御する選択制御部19とを備えている。選択制御部19の動作は次の通りである。ライトアドレス生成の場合、選択制御部19は、マルチプレクサ17に対してレジスタ15を選択するように指示するとともに、デマルチプレクサ18に対してアドレス生成部121によって生成されたアドレスをライトアドレスとして出力するように指示する。一方、リードアドレス生成の場合、選択制御部19は、マルチプレクサ17に対してレジスタ16を選択するように指示するとともに、デマルチプレクサ18に対してアドレス生成部121によって生成されたアドレスをリードアドレスとして出力するように指示する。次に、本実施形態に係るデインタリーブ装置によるデインタリーブ処理について具体例を示しながら説明する。図3に示したように、原データブロックのデータを3行×8列のマトリクスに列優先で格納して行優先で読み出すことでインタリーブブロックが生成される。デインタリーブ装置はこれらインタリーブブロックをデインタリーブして原データブロックを復元する。第1番目の原データブロックDATA1およびインタリーブブロックIL1は12個=3行×4列のデータD0~D11で構成される。第2番目の原データブロックDATA2およびインタリーブブロックIL2は18個=3行×6列のデータD0~D17で構成される。第3番目の原データブロックDATA3およびインタリーブブロックIL3は24個=3行×8列のデータD0~D23で構成される。デインタリーブ装置は、図4に示した実線矢印の順にライトアドレスを生成し、メモリ11にIL1を格納する。すなわち、IL1の格納においてライトアドレスは初期値0から始まってX0=1ずつ増加する。なお、この時点では読み出すべきデータが存在しないためリードアドレスは該当なしN/Aである。IL1の格納が完了すると、デインタリーブ装置は、図5に示した実線矢印の順にリードアドレスおよびライトアドレスを生成し、メモリ11からIL1をデインタリーブして読み出しつつメモリ11にIL2を格納する。リードアドレス生成のための増分値X0およびライトアドレス生成のための増分値X1は、IL1に係る第5番目のライトアドレスと初期値との差分として与えられ、また、リードアドレス生成のための増分値Y0は、IL1に係る第2番目のライトアドレスと初期値との差分として与えられる。ここで、初期値が0であるため、IL1の第5番目のライトアドレス4がそのままX0およびX1となり、IL1の第2番目のライトアドレス1がそのままY0となる図4参照。注目すべきは、ライトアドレスは初期値0からX0=4ずつ増加するただし、4を加算した結果が24以上になる場合には23を減ずるのに対して、リードアドレスは3つ生成されるごとにARi,jに更新される。これにより、データ読み出しに係るデータブロックとデータ書き込みに係るデータブロックとでブロック長が異なっていても、常にリードアドレスがライトアドレスを先行するためデータがまだ読み出されていないアドレスにデータが上書きされることがなく、データのオーバーライトの問題は生じない。例えば、ライトアドレス1、5、9が生成されたときにはすでにこれらアドレスからデータが読み出されている。以後同様に、IL1のデインタリーブが完了すると、デインタリーブ装置は、図6に示した実線矢印の順にリードアドレスおよびライトアドレスを生成し、メモリ11からIL2をデインタリーブして読み出しつつメモリ11にIL3を格納する。ここでは、IL2の第7番目のライトアドレス1がそのままリードアドレス生成のための増分値X1およびライトアドレス生成のための増分値X2となり、IL2の第2番目のライトアドレス4がそのままリードアドレス生成のための増分値Y1となる図5参照。IL2のデインタリーブが完了すると、デインタリーブ装置は、図7に示した実線矢印の順にリードアドレスを生成し、メモリ11からIL3をデインタリーブして読み出す。ここでは、IL3の第9番目のライトアドレス8がリードアドレス生成のための増分値X2となり、IL3の第2番目のライトアドレス1がリードアドレス生成のための増分値Y2となる図6参照。以上、本実施形態によると、バッファなどの追加の記憶手段を設けることなく1個のメモリを用いて可変長の入力データブロックのデインタリーブを行うことができる。これにより、デインタリーブ装置の回路面積を縮小することができる。なお、ライトアドレス生成部12およびリードアドレス生成部13は、図示しないCPUCentralProcessingUnitで実行されるソフトウェアとして実現することもできる。また、ライトアドレス生成部12およびリードアドレス生成部13は、ライトアドレスおよびリードアドレスは逐一算出するのではなく、あらかじめ算出しておいたアドレスを入力データブロックのブロック長およびデータの識別番号に応じて読み出すルックアップテーブルなどとして実現することもできる。データ伝送システムの実施形態図8は、本発明の一実施形態に係るデータ伝送システムの構成を示す。データ伝送システムは、例えば、地上デジタル放送システムである。送信者である放送局などに配置されたインタリーブ装置100は、図示しないR行×C列のマトリクスに放送コンテンツのデータブロックのデータを列優先で格納して行優先で読み出すことで原データブロックをインタリーブする。なお、原データブロックはR×C’個ただし、C’はR×Cの任意の約数であるのデータからなるものとする。インタリーブされたデータブロックは地上デジタル波200となって空間に放出される。受信者である各家庭などには上述したデインタリーブ装置300が配置されている。デインタリーブ装置300は、例えば、地上デジタル波チューナなどに搭載されている。デインタリーブ装置10は、受信した地上デジタル波100からインタリーブブロックを取得して、これをデインタリーブして原データブロックを復元する。そして、復元された原データブロックについて誤り訂正などが実施されて放送コンテンツが再生される。"