(57)【特許請求の範囲】
【請求項１】
複数のデータを、メモリに、書込方向に順次書き込み、前記メモリに書き込まれた前記複数のデータを読出方向に順次読み出すデータ書込読出方法において、前記メモリに現在書き込まれている複数のデータの次に該メモリに書き込む複数のデータの書込方向を、現在書き込まれている複数のデータが読み出されるときの読出方向と同一方向若しくは反対方向にし、
前記メモリに現在書き込まれている複数のデータを行方向に読み出す場合は、次に書き込む複数のデータを行方向に順次書き込み、一方、前記メモリに現在書き込まれている複数のデータを列方向に読み出す場合は、次に書き込む複数のデータを列方向に順次書き込み、
複数のデータを、前記メモリに、少なくとも１個のアドレスを有し１個のアドレスに対応する領域に少なくとも１個のデータが書き込まれるブロックがｎ行ｎ列に並ぶマトリックス構造に配列し、
前記複数のデータが、マトリックス状に配列されて成るフレームを複数有するスーパーフレームを構成し、
前記スーパーフレームが、（２０３×４８）個のデータがマトリックス状に配列されて成るフレームを８個有し、
前記メモリに現在書き込まれている（２０３×４８×８）個のデータを行方向に読み出す場合は、次に書き込む（２０３×４８×８）個のデータを行方向に順次書き込み、一方、前記メモリに現在書き込まれている（２０３×４８×８）個のデータを列方向に読み出す場合は、次に書き込む（２０３×４８×８）個のデータを列方向に順次書き込み、
前記マトリックス構造の数は４８個であり、
前記マトリックス構造それぞれが、２０３×８個のデータを有し、
前記マトリックス構造それぞれが、４個のアドレスを有し１個のアドレスに対応する領域に７個のデータが書き込まれるブロックが８行８列に並んだ構造であり、
前記マトリックス構造それぞれの、１個のアドレスに対応する領域に、７個のデータを書き込むことを特徴とするデータ書込読出方法。
【請求項２】
インターリーブされた複数のデータを、メモリに、書込方向に順次書き込み、前記メモリに書き込まれた前記複数のデータを読出方向に順次読み出してデインターリーブするデインターリーブ方法において、前記メモリに現在書き込まれている複数のデータの次に該メモリに書き込む複数のデータの書込方向を、現在書き込まれている複数のデータが読み出されるときの読出方向と同一方向若しくは反対方向にし、
前記メモリに現在書き込まれている複数のデータを行方向に読み出す場合は、次に書き込む複数のデータを行方向に順次書き込み、一方、前記メモリに現在書き込まれている複数のデータを列方向に読み出す場合は、次に書き込む複数のデータを列方向に順次書き込み、
インターリーブされた複数のデータを、前記メモリに、少なくとも１個のアドレスを有し１個のアドレスに対応する領域に少なくとも１個のデータが書き込まれるブロックがｎ行ｎ列に並ぶマトリックス構造に配列し、
前記複数のデータが、マトリックス状に配列されて成るフレームを複数有するスーパーフレームを構成し、
前記スーパーフレームが、（２０３×４８）個のデータがマトリックス状に配列されて成るフレームを８個有し、
前記メモリに現在書き込まれている（２０３×４８×８）個のデータを行方向に読み出す場合は、次に書き込む（２０３×４８×８）個のデータを行方向に順次書き込み、一方、前記メモリに現在書き込まれている（２０３×４８×８）個のデータを列方向に読み出す場合は、次に書き込む（２０３×４８×８）個のデータを列方向に順次書き込み、
前記マトリックス構造の数は４８個であり、
前記マトリックス構造それぞれが、２０３×８個のデータを有し、
前記マトリックス構造それぞれが、４個のアドレスを有し１個のアドレスに対応する領域に７個のデータが書き込まれるブロックが８行８列に並んだ構造であり、
前記マトリックス構造それぞれの、１個のアドレスに対応する領域に、７個のデータを書き込むことを特徴とするデインターリーブ方法。
【請求項３】
複数のデータをインターリーブする第１のステップと、該インターリーブされた複数のデータを、メモリに、書込方向に順次書き込み、前記メモリに書き込まれた前記複数のデータを読出方向に順次読み出してデインターリーブする第２のステップとを備えたデータ処理方法において、前記第２のステップが、前記メモリに現在書き込まれている複数のデータの次に該メモリに書き込む複数のデータの書込方向を、現在書き込まれている複数のデータが読み出されるときの読出方向と同一方向若しくは反対方向にするステップであり、
前記第２のステップが、前記メモリに現在書き込まれている複数のデータを行方向に読み出す場合は、次に書き込む複数のデータを行方向に順次書き込み、一方、前記メモリに現在書き込まれている複数のデータを列方向に読み出す場合は、次に書き込む複数のデータを列方向に順次書き込み、
前記第２のステップが、インターリーブされた複数のデータを、前記メモリに、少なくとも１個のアドレスを有し１個のアドレスに対応する領域に少なくとも１個のデータが書き込まれるブロックがｎ行ｎ列に並ぶマトリックス構造に配列するステップであり、
前記第１のステップが、複数のデータがマトリックス状に配列されて成るフレームを複数有するスーパーフレームを構成し、該スーパーフレームを構成する複数のデータをインターリーブするステップであり、
前記第１のステップが、（２０３×４８）個のデータがマトリックス状に配列されて成るフレームを８個有するスーパーフレームを構成し、該スーパーフレームを構成する（２０３×４８×８）個のデータをインターリーブするステップであり、前記第２のステップが、前記メモリに現在書き込まれている（２０３×４８×８）個のデータを行方向に読み出す場合は、次に書き込む（２０３×４８×８）個のデータを行方向に順次書き込み、一方、前記メモリに現在書き込まれている（２０３×４８×８）個のデータを列方向に読み出す場合は、次に書き込む（２０３×４８×８）個のデータを列方向に順次書き込み、
前記第２のステップが、前記メモリに（２０３×４８×８）個のデータを、それぞれが２０３×８個のデータから成る４８個のマトリックス構造に配列するステップであって、前記４８個のマトリックス構造それぞれが、少なくとも１個のアドレスを有し１個のアドレスに対応する領域に少なくとも１個のデータが書き込まれるブロックがｎ行ｎ列に並んだ構造であり、
前記４８個のマトリックス構造それぞれが、４個のアドレスを有し１個のアドレスに対応する領域に７個のデータが書き込まれるブロックが８行８列に並んだ構造であり、前記第２のステップが、前記マトリックス構造の、１個のアドレスに対応する領域に、７個のデータを書き込むステップであることを特徴とするデータ処理方法。
【請求項４】
複数のデータをメモリに、書込方向に順次書き込み、前記メモリに書き込まれた前記複数のデータを読出方向に順次読み出すメモリ駆動装置において、前記メモリに現在書き込まれている複数のデータの次に該メモリに書き込む複数のデータの書込方向を、現在書き込まれている複数のデータが読み出されるときの読出方向と同一方向若しくは反対方向にし、前記メモリに現在書き込まれている複数のデータを行方向に読み出す場合は、次に書き込む複数のデータを行方向に順次書き込み、一方、前記メモリに現在書き込まれている複数のデータを列方向に読み出す場合は、次に書き込む複数のデータを列方向に順次書き込み、
前記メモリのアドレスを指定するアドレス指定手段を有し、該アドレス指定手段で前記メモリのアドレスを順次指定することにより、複数のデータを、前記メモリに、少なくとも１個のアドレスを有し１個のアドレスに対応する領域に少なくとも１個のデータが書き込まれるブロックがｎ行ｎ列に並ぶマトリックス構造に配列し、
前記複数のデータが、マトリックス状に配列されて成るフレームを複数有するスーパーフレームを構成し、
前記スーパーフレームが、（２０３×４８）個のデータがマトリックス状に配列されて成るフレームを８個有し、
前記メモリに現在書き込まれている（２０３×４８×８）個のデータを行方向に読み出す場合は、次に書き込む（２０３×４８×８）個のデータを行方向に順次書き込み、一方、前記メモリに現在書き込まれている（２０３×４８×８）個のデータを列方向に読み出す場合は、次に書き込む（２０３×４８×８）個のデータを列方向に順次書き込み、
前記マトリックス構造の数は４８個であり、
前記マトリックス構造それぞれが、２０３×８個のデータを有し、
前記マトリックス構造それぞれが、４個のアドレスを有し１個のアドレスに対応する領域に７個のデータが書き込まれるブロックが８行８列に並んだ構造であり、
前記マトリックス構造それぞれの、１個のアドレスに対応する領域に、７個のデータを書き込むことを特徴とするメモリ駆動装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データをメモリに書き込み、この書き込まれたデータを読み出すデータ書込読出方法、このデータ書込読出方法を適用したデインターリーブ方法、このデータ書込読出方法を適用したデータ処理方法、このデータ書込読出方法によりデータが書き込まれるメモリ、及び、このデータ書込読出方法を実施してメモリへのデータの書込み、読出しを行うメモリ駆動装置に関する。
【０００２】
【従来の技術】
データの送受が行われる送受信システムは、送信機と、その送信機から送信されたデータを受信する受信機とを備えている。送受信システムのうち、デジタル放送システムでは、送信機から受信機にデータを伝送するときに伝送路で発生するバースト状の誤りを分散させるため、送信機で、伝送されるデータがブロック化して並べられたスーパーフレームを２つ構成し、それら２つのスーパーフレームを構成するデータをインターリーブして読み出し、受信機に送信している。後述する図２には、送信機で構成されるスーパーフレームを示す模式図が示されている。
【０００３】
この図２には、構成される２つのスーパーフレームのうちの一方のスーパーフレーム１のみが示されているが、もう一方のスーパーフレームについても、図示したスーパーフレーム１と全く同じ構成である。従って、以下では、スーパーフレームの構成を説明するにあたっては、図２に示されているスーパーフレーム１を主に取りあげて説明する。
【０００４】
スーパーフレーム１は、１〜８の番号が付された８個のフレーム１，フレーム２，フレーム３，…，フレーム８を有している。１個のフレームは、１〜４８の番号が付された、ｙ方向に並ぶ４８個のスロット１，スロット２，スロット３，…，スロット４８から構成されている。１個のスロットは、１ｂｙｔｅから成るデータがｘ方向に２０４個並んで構成されるが、その２０４個のデータのうちの１個のデータは、インターリーブの対象から除かれるデータであるため、図２には、ｘ方向に２０３個のデータが並んだ構成が示されており、以下では、ｘ方向に２０３個のデータが並んでいるとして話を進めていく。尚、１ｂｙｔｅ＝８ｂｉｔである。
【０００５】
図２に示すスーパーフレーム１が構成されると、そのスーパーフレーム１を構成するデータは、フレーム１の最上層にあるスロット１のデータ１＿１から、インターリーブ方向に順次読み出され受信機に送信され、最後にフレーム８のスロット４８のデータ８＿２０３が読み出されると、１つのスーパーフレーム１を構成する全データの読み出しが終了する。このようにインターリーブ方向にデータを順次読み出すことにより、１つのスーパーフレームを構成するデータはインターリーブされて受信機に送信される。
【０００６】
上記のようにしてスーパーフレーム１のデータの読出しが終了したら、引き続いて、もう１つ別のスーパーフレーム（以下、スーパーフレーム２と呼ぶ）を構成するデータについても、同様の方法で読み出されて受信機に送信される。スーパーフレーム２を構成するデータが読み出されて受信機に送信されている間、送信機のメモリには、新たなデータから成るスーパーフレーム１が構成される。スーパーフレーム２を構成するデータの送信が終了したら、引き続いて、新たなデータから成るスーパーフレーム１を構成するデータがインターリーブ方向に順次読み出され受信機に送信される。このように、送信機では、メモリから一方のスーパーフレームのデータを読み出している間に、そのメモリに新たにデータが書き込まれてもう一方のスーパーフレームが構成される。つまり、送信機では、メモリへの、スーパーフレーム１を構成するデータの書込みと、スーパーフレーム２を構成するデータの書込みとが交互に行われるとともに、メモリからの、スーパーフレーム１を構成するデータの読出しと、スーパーフレーム２を構成するデータの読出しとが交互に行われる。
【０００７】
受信機は、送信機から送信されたインターリーブされた複数のデータが書き込まれるメモリを有している。その受信機が有するメモリは、送信機で構成される２つのスーパーフレーム分のデータが書き込まれるだけの容量を有しており、受信機のメモリは、そのメモリの半分の領域で、送信機で構成されるスーパーフレーム１についてのデータの書込み、読出しが繰り返し行われ、残りの半分の領域で、もう１つ別のスーパーフレーム２を構成するデータの書込み、読出しが繰り返し行われる。これにより、送信機でインターリーブされて送信された複数データを、順次デインターリーブすることができる。
【０００８】
【発明が解決しようとする課題】
送信機で構成される１つのスーパーフレームは、上述したように、８個のフレームから構成され、各フレームは４８個のスロットから構成され、１つのスロットは、１ｂｙｔｅのデータが２０３個から成る。従って、１つのスーパーフレームの容量は、２０３（＝１つのスロットを構成する１ｂｙｔｅのデータの数）×４８（１つのフレームが有するスロットの数）×８（１つのスーパーフレームが有するフレームの数）＝７７９５２ｂｙｔｅとなる。送信機は、通常２つのスーパーフレームを構成するため、受信機のメモリは、これら２つのスーパーフレーム分のデータが書き込めるように、７７９５２ｂｙｔｅ×２＝１５５９０４ｂｙｔｅ、つまり、約１．２５Ｍｂｉｔの容量が必要となる。このため、データをデインターリーブするためだけに、約１．２５Ｍｂｉｔのメモリ１１０ａが必要となり、データを受信するためのコストが高くなるという問題がある。
【０００９】
本発明は、上記の事情に鑑み、コストの削減が図られたデータ書込読出方法、デインターリーブ方法、データ処理方法、メモリ、及びメモリ駆動装置を提供することを目的とする。
【００１０】
【課題を解決するための手段】
本発明のデータ書込読出方法は、複数のデータを、メモリに、書込方向に順次書き込み、上記メモリに書き込まれた上記複数のデータを読出方向に順次読み出すデータ書込読出方法において、
【００１１】
上記メモリに現在書き込まれている複数のデータの次にこのメモリに書き込む複数のデータの書込方向を、現在書き込まれている複数のデータが読み出されるときの読出方向と同一方向若しくは反対方向にすることを特徴とする。
【００１２】
従来、データが書き込まれるメモリセルを複数有するメモリに、例えば、複数のデータそれぞれを順次書き込み、そのメモリに書き込まれたデータを並びかえて順次読み出す場合、そのメモリを第１の領域と第２の領域との２つの領域に分割し、各領域で、データの書込み、読出しを行っている。このとき、そのメモリの第１の領域で、複数のデータが書き込まれ、その書き込まれた複数のデータが並びかえられて読み出されるとともに、もう一方の第２の領域では、第１の領域でデータの読出しが行われている間に別の複数のデータが書き込まれ、その第１の領域でデータの書込みが行われている間に、その第２の領域に書き込まれたデータが並びかえられて読み出される。つまり、従来では、メモリに、データの書込み、読出しが行われる第１の領域に加えて、さらに、データの読出し、書込みが行われる第２の領域が必要である。
【００１３】
これに対し、本発明のデータ書込読出方法では、メモリに現在書き込まれている複数のデータの次にこのメモリに書き込む複数のデータの書込方向を、現在書き込まれている複数のデータが読み出されるときの読出方向と同一方向若しくは反対方向にしている。従って、メモリの、読出方向に配列されるメモリセルの配列方向と、次に書き込まれるデータの書込方向に配列されるメモリセルの配列方向とが一致する。従って、本発明のデータ書込読出方法では、データの読出しが現在行われている領域に、その領域でのデータの読出しを行いながら、次のデータを書き込むことができる。従来では、上述したように、メモリには、新たな複数のデータが書き込めるように、第１の領域に加えて第２の領域が必要であったが、本発明のデータ書込読出方法では、メモリに、従来では必要な第２の領域に相当する領域は不要であり、データを並びかえるためのメモリの容量は小さくてすみ、コストの削減が図られる。
【００１４】
また、本発明のデータ書込読出方法は、上記メモリに現在書き込まれている複数のデータを行方向に読み出す場合は、次に書き込む複数のデータを行方向に順次書き込み、一方、上記メモリに現在書き込まれている複数のデータを列方向に読み出す場合は、次に書き込む複数のデータを列方向に順次書き込むことが好ましい。
【００１５】
現在書き込まれている複数のデータが、行方向に読み出されるのか、あるいは列方向に読み出されるのかに応じて、次に書き込む複数のデータの書込方向を行方向若しくは列方向にすることにより、データの読出しが現在行われている領域に、その領域でのデータの読出しを行いながら、次のデータを書き込むことができる。
【００１６】
また、本発明のデータ書込読出方法は、複数のデータを、上記メモリに、少なくとも１個のアドレスを有し１個のアドレスに対応する領域に少なくとも１個のデータが書き込まれるブロックがｎ行ｎ列に並ぶマトリックス構造に配列することが好ましい。
【００１７】
データを、ブロックがｎ行ｎ列に並ぶマトリックス構造に配列すると、行方向に書き込まれるデータの数と、列方向に書き込まれるデータの数とを等しくすることができる。従って、行方向に読み出されるデータの数と、列方向に読み出されるデータの数とを、互いに等しくすることができる。
【００１８】
また、本発明のデインターリーブ方法は、インターリーブされた複数のデータを、メモリに、書込方向に順次書き込み、上記メモリに書き込まれた上記複数のデータを読出方向に順次読み出してデインターリーブするデインターリーブ方法において、
【００１９】
上記メモリに現在書き込まれている複数のデータの次にこのメモリに書き込む複数のデータの書込方向を、現在書き込まれている複数のデータが読み出されるときの読出方向と同一方向若しくは反対方向にすることを特徴とする。
【００２０】
本発明のデインターリーブ方法は、本発明のデータ書込読出方法が適用された方法である。従って、メモリにインターリーブされたデータを書き込んだ後、それらデータをデインターリーブして読み出す場合、データの読出しが現在行われている領域に、その領域でのデータの読出しを行いながら、インターリーブされた新たなデータを書き込むことができる。このため、インターリーブされた複数のデータをデインターリーブするためのメモリの容量は小さくてすみ、インターリーブされた複数のデータを、低コストでデインターリーブすることができる。
【００２１】
ここで、本発明のデインターリーブ方法は、上記メモリに現在書き込まれている複数のデータを行方向に読み出す場合は、次に書き込む複数のデータを行方向に順次書き込み、一方、上記メモリに現在書き込まれている複数のデータを列方向に読み出す場合は、次に書き込む複数のデータを列方向に順次書き込むことが好ましい。
【００２２】
このようにデータを書き込むことにより、データの読出しが現在行われている領域に、その領域でのデータの読出しを行いながら、次のデータを書き込むことができる。
【００２３】
ここで、本発明のデインターリーブ方法は、インターリーブされた複数のデータを、上記メモリに、少なくとも１個のアドレスを有し１個のアドレスに対応する領域に少なくとも１個のデータが書き込まれるブロックがｎ行ｎ列に並ぶマトリックス構造に配列することが好ましい。
【００２４】
データを、ブロックがｎ行ｎ列に並ぶマトリックス構造に配列すると、行方向に読み出されてデインターリーブされるデータの数と、列方向に読み出されてデインターリーブされるデータの数とを、互いに等しくすることができる。
また、本発明のデインターリーブ方法において、例えば、メモリに書き込まれたデータを行方向もしくは列方向のどちらの方向から読み出しても同じ数のデータがデインターリーブされるようにする場合、上記のように、インターリーブされた複数のデータを、ブロックがｎ行ｎ列に並ぶマトリックス構造に配列すると、メモリにデータを書き込むときに、そのメモリの、データが書き込まれないメモリセルの数を少なくすることができ、インターリーブされた複数のデータをメモリに効率よく書き込むことができる。
【００２５】
また、本発明のデータ処理方法は、複数のデータをインターリーブする第１のステップと、このインターリーブされた複数のデータを、メモリに、書込方向に順次書き込み、上記メモリに書き込まれた上記複数のデータを読出方向に順次読み出してデインターリーブする第２のステップとを備えたデータ処理方法において、
【００２６】
上記第２のステップが、上記メモリに現在書き込まれている複数のデータの次にこのメモリに書き込む複数のデータの書込方向を、現在書き込まれている複数のデータが読み出されるときの読出方向と同一方向若しくは反対方向にするステップであることを特徴とする。
【００２７】
本発明のデータ処理方法は、本発明のデータ書込読出方法を実行する方法である。従って、インターリーブされた複数のデータを、低コストでデインターリーブすることができる。
【００２８】
ここで、本発明のデータ処理方法は、上記第２のステップが、上記メモリに現在書き込まれている複数のデータを行方向に読み出す場合は、次に書き込む複数のデータを行方向に順次書き込み、一方、上記メモリに現在書き込まれている複数のデータを列方向に読み出す場合は、次に書き込む複数のデータを列方向に順次書き込むことが好ましい。
【００２９】
このようにデータを書き込むことにより、データの読出しが現在行われている領域に、その領域でのデータの読出しを行いながら、第１のステップでインターリーブされた新たな複数のデータを書き込むことができる。
【００３０】
ここで、本発明のデータ処理方法は、上記第１のステップが、複数のデータがマトリックス状に配列されて成るフレームを複数有するスーパーフレームを構成し、このスーパーフレームを構成する複数のデータをインターリーブするステップであることが好ましい。
【００３１】
スーパーフレームを構成することにより、本発明のデータ処理方法をデジタル放送システムに適用することができる。
【００３２】
ここで、本発明のデータ処理方法は、上記第２のステップが、インターリーブされた複数のデータを、上記メモリに、少なくとも１個のアドレスを有し１個のアドレスに対応する領域に少なくとも１個のデータが書き込まれるブロックがｎ行ｎ列に並ぶマトリックス構造に配列するステップであることが好ましい。
【００３３】
データを、ブロックがｎ行ｎ列に並ぶマトリックス構造に配列すると、行方向に読み出されてデインターリーブされるデータの数と、列方向に読み出されてデインターリーブされるデータの数とを、互いに等しくすることができる。また、本発明のデータ処理方法において、例えば、メモリに書き込まれたデータを行方向もしくは列方向のどちらの方向から読み出しても同じ数のデータがデインターリーブされるようにする場合、上記のように、インターリーブされた複数のデータを、ブロックがｎ行ｎ列に並ぶマトリックス構造に配列すると、メモリにデータを書き込むときに、そのメモリの、データが書き込まれないメモリセルの数を少なくすることができ、インターリーブされた複数のデータをメモリに効率よく書き込むことができる。
【００３４】
ここで、本発明のデータ処理方法は、上記第１のステップが、（２０３×４８）個のデータがマトリックス状に配列されて成るフレームを８個有するスーパーフレームを構成し、このスーパーフレームを構成する（２０３×４８×８）個のデータをインターリーブするステップであり、
【００３５】
上記第２のステップが、上記メモリに現在書き込まれている（２０３×４８×８）個のデータを行方向に読み出す場合は、次に書き込む（２０３×４８×８）個のデータを行方向に順次書き込み、一方、上記メモリに現在書き込まれている（２０３×４８×８）個のデータを列方向に読み出す場合は、次に書き込む（２０３×４８×８）個のデータを列方向に順次書き込むことが好ましい。
【００３６】
ＢＳデジタル放送では、通常、送信機側で、（２０３×４８）個のデータがマトリックス構造に配列されて成るフレームを８個有するスーパーフレームを構成し、そのスーパーフレームを構成する（２０３×４８×８）個のデータをインターリーブしている。従って、第１のステップを上記のようなステップにすることにより、本発明のデータ処理方法を、ＢＳデジタル放送に適合した形態にすることができる。
【００３７】
ここで、本発明のデータ処理方法は、上記第２のステップが、上記メモリに（２０３×４８×８）個のデータを、それぞれが２０３×８個のデータから成る４８個のマトリックス構造に配列するステップであって、
【００３８】
上記４８個のマトリックス構造それぞれが、少なくとも１個のアドレスを有し１個のアドレスに対応する領域に少なくとも１個のデータが書き込まれるブロックがｎ行ｎ列に並んだ構造であることが好ましい。
【００３９】
（２０３×４８×８）個のデータを４８個のマトリックス構造に配列すると、インターリーブされた（２０３×４８×８）個のデータを、（２０３×８）個のデータ毎にデインターリーブすることができる。また、メモリに書き込まれたデータを行方向もしくは列方向のどちらの方向から読み出しても同じ数のデータがデインターリーブされるようにする場合、上記のように、インターリーブされた複数のデータを、ブロックがｎ行ｎ列に並ぶマトリックス構造に配列すると、メモリにデータを書き込むときに、そのメモリの、データが書き込まれないメモリセルの数を少なくすることができ、インターリーブされた複数のデータをメモリに効率よく書き込むことができる。
【００４０】
ここで、本発明のデータ処理方法は、上記４８個のマトリックス構造それぞれが、２６個のアドレスを有し１個のアドレスに対応する領域に１個のデータが書き込まれるブロックが８行８列に並んだ構造であり、上記第２のステップが、上記ブロックの、１個のアドレスに対応する領域に、１個のデータを書き込むステップであることが好ましく、また、上記４８個のマトリックス構造それぞれが、４個のアドレスを有し１個のアドレスに対応する領域に７個のデータが書き込まれるブロックが８行８列に並んだ構造であり、上記第２のステップが、上記マトリックス構造の、１個のアドレスに対応する領域に、７個のデータを書き込むステップであることも好ましい。
【００４１】
また、本発明のメモリは、複数のデータが書込方向に順次書き込まれ、書き込まれた複数のデータが読出方向に順次読み出されるメモリにおいて、
【００４２】
現在書き込まれている複数のデータの次に書き込まれる複数のデータの書込方向が、現在書き込まれている複数のデータが読み出されるときの読出方向と同一方向もしくは反対方向であることを特徴とする。
【００４３】
また、本発明のメモリ駆動装置は、複数のデータを、メモリに、書込方向に順次書き込み、上記メモリに書き込まれた上記複数のデータを読出方向に順次読み出すメモリ駆動装置において、
【００４４】
上記メモリに現在書き込まれている複数のデータの次にこのメモリに書き込む複数のデータの書込方向を、現在書き込まれている複数のデータが読み出されるときの読出方向と同一方向若しくは反対方向にすることを特徴とする。
【００４５】
本発明のメモリ駆動装置は、本発明のデータ書込読出方法を実行する装置である。従って、本発明のメモリ駆動装置を用いることにより、メモリの、データの読出しが現在行われている領域に、その領域での複数のデータの読出しを行いながら、次のデータを書き込むことができ、データの並べかえを、容量の小さいメモリで行うことができる。
【００４６】
ここで、本発明のメモリ駆動装置は、上記メモリに現在書き込まれている複数のデータを行方向に読み出す場合は、次に書き込む複数のデータを行方向に順次書き込み、一方、上記メモリに現在書き込まれている複数のデータを列方向に読み出す場合は、次に書き込む複数のデータを列方向に順次書き込むことが好ましい。
【００４７】
また、本発明のメモリ駆動装置は、上記メモリのアドレスを指定するアドレス指定手段を有し、
【００４８】
このアドレス指定手段で上記メモリのアドレスを順次指定することにより、複数のデータを、上記メモリに、少なくとも１個のアドレスを有し１個のアドレスに対応する領域に少なくとも１個のデータが書き込まれるブロックがｎ行ｎ列に並ぶマトリックス構造に配列することが好ましい。
【００４９】
例えば、１個のアドレスに対応する領域に１個のデータを書き込むようにすると、複数のデータをメモリに書き込む前に一旦並べ替えることは不要である。すなわち、メモリに書き込む前に一旦データを並べ替えるためのバッファは不要であり、さらにコストの削減が図られるメリットがある。一方、１個のアドレスに対応する領域に複数のデータを書き込むようにすると、メモリに書き込む前に一旦データを並べ替えるためのバッファは必要となるが、メモリのアドレスの数を少なくすることができるためアドレス生成回路の構成が簡単になるというメリットや、アクセス速度の遅いメモリにも対応できるというメリットがある。これらのメリットについては、後述する実施形態でさらに詳しく述べる。また、複数のデータを、ブロックがｎ行ｎ列に並ぶマトリックス構造に配列することにより、メモリにデータを効率よく書き込むことができる。
【００５０】
【発明の実施の形態】
以下、本発明の実施形態について説明する。
【００５１】
図１〜図６は、本発明のデータ書込方法の第１実施形態を採用したデータ処理方法を実行する送受信システム（以下、第１の送受信システムと呼ぶ）を用いて、複数のデータをインターリーブし、そのインターリーブされた複数のデータをデインターリーブする様子を説明する図である。
【００５２】
図１は、第１の送受信システムの一例を示す図である。
【００５３】
この送受信システムは、伝送路１２０で互いに接続された送信機１００と受信機１１０を備えている。送信機１００は、データが書き込まれるとともに、書き込まれたデータが読み出されるメモリ１００ａと、メモリ駆動装置１００ｂを有している。そのメモリ駆動装置１００ｂは、受信機１１０に送信する複数のデータを、その受信機１１０に送信する前に一旦メモリ１００ａに書き込み、そのメモリ１００ａに書き込まれた複数のデータをインターリーブして読み出すものである。そのメモリ駆動装置１００ｂによりデータがメモリ１００ａに順次書き込まれると、図２に示すスーパーフレームが構成される。
【００５４】
送信機１００において、図２に示すスーパーフレーム１を構成するにあたっては、送信機のメモリにデータが順次書き込まれ、２０３個のデータ１＿１，データ１＿２，データ１＿３，…，データ１＿２０３から成る１つのスロットが、スロット１、スロット２、スロット３、…、スロット４８の順に構成され、フレーム１が構成される。次に、２０３個のデータ２＿１，データ２＿２，データ２＿３，…，データ２＿２０３から成る１つのスロットが、スロット１、スロット２、スロット３、…、スロット４８の順に構成され、フレーム２が構成される。以下、同様にして、２０３個のデータから成る１つのスロットが４８個から構成されたフレーム３、…、フレーム８が順次構成される。これにより、スーパーフレーム１が構成される。
【００５５】
送信機１００において、図２に示すように、スーパーフレーム１が構成されると、そのスーパーフレーム１を構成するデータは、フレーム１の最上層にあるスロット１のデータ１＿１から、インターリーブ方向に、フレーム１のスロット１のデータ１＿１、フレーム２のスロット１のデータ２＿１、フレーム３のスロット１のデータ３＿１、……、フレーム８のスロット１のデータ８＿１が、メモリ駆動装置１００ｂにより順次読み出され伝送路１２０（図１参照）を経由して受信機１１０に送信される。さらにフレーム８のスロット１のデータ８＿１が読み出されたら、今度はフレーム１のスロット１のデータ１＿２から、インターリーブ方向に、フレーム１のスロット１のデータ１＿２、フレーム２のスロット１のデータ２＿２、フレーム３のスロット１のデータ３＿２、……、フレーム８のスロット１のデータ８＿２が順次読み出され受信機１１０に送信される。フレーム８のスロット１のデータ８＿２が読み出されたら、今度はフレーム１のスロット１のデータ１＿３から、やはりインターリーブ方向に、データが順次読み出される。このようにして、フレーム１のスロット１のデータ１＿１から、インターリーブ方向に各フレームのスロット１のデータが順次読み出され、とりあえず、フレーム１のスロット１のデータ１＿１から数えて、インターリーブ方向に２０３個のデータが読み出され受信機１１０に送信される（すなわち、フレーム１のスロット１のデータ１＿１から、フレーム３のスロット１のデータ３＿２６まで読み出され送信される）。
【００５６】
図３は、フレーム１のスロット１のデータ１＿１から数えて、インターリーブ方向に２０３個のデータが読み出される様子を示す模式図である。この図３には、スーパーフレーム１を構成するフレーム１〜フレーム８それぞれのスロット１が並べて示されている。
【００５７】
読出データＲ１は、インターリーブ方向に読み出される、フレーム１のスロット１のデータ１＿１からフレーム３のスロット１のデータ３＿２６までの２０３個のデータ（つまり、２０３ｂｙｔｅ分のデータ）である。このように、２０３個のデータが読み出されたら、次に、各フレームのスロット１の１段下層にあるスロット２（図２参照）のデータについて、フレーム１のスロット２のデータ１＿１から、やはりインターリーブ方向に２０３個のデータが読み出され、受信機１１０に送信される。以下、同様にして、各フレームのスロット２よりも下層にあるスロット３〜スロット４８について、同一番号が付されたスロットから成るスロット集合体毎に、データ１＿１から、インターリーブ方向に２０３個のデータが読み出され受信機１１０に送信される。尚、以下では、各フレームのスロット１の集合から成るスロット集合体を、スロット１集合体と呼び、各フレームのスロット２，…，スロット８の集合から成るスロット集合体を、スロット２集合体，…，スロット８集合体と呼ぶことにする。
【００５８】
各フレームそれぞれのスロット４８の集合からなるスロット４８集合体から２０３個のデータが読み出されて受信機１１０に送信されたら、最上層のスロット１に戻り、先に読み出された読出データＲ１（図３参照）のうちの最後に読み出されたデータ３＿２６に対し、インターリーブ方向に隣り合う、フレーム４のスロット１のデータ４＿２６から、やはりインターリーブ方向に２０３個のデータが順次読み出され、受信機１１０に送信される。図３に示す読出データＲ２は、フレーム４のスロット１のデータ４＿２６からインターリーブ方向に読み出された２０３個のデータである（すなわち、フレーム４のスロット１のデータ４＿２６から、フレーム６のスロット１のデータ６＿５１までのデータである）。フレーム６のスロット１のデータ６＿５１が読み出されたら、各フレームのスロット１よりも下層にあるスロット２〜スロット４８スロットについて、同一番号が付されたスロット集合体毎に、フレーム４のスロット１のデータ４＿２６からインターリーブ方向に２０３個のデータが読み出され受信機１１０に送信される。以下、同一番号が付されたスロット集合体毎に、２０３個のデータの読出しが順次繰り返される。図３に示す読出データＲ３は、フレーム６のスロット１のデータ６＿１７８からフレーム８のスロット１のデータ８＿２０３までの２０３個のデータを表す。この読出データＲ３が読み出されることにより、各フレームのスロット１の集合から成るスロット１集合体のデータが全て読み出され、受信機１１０に送信されたことになる。ところで、１つのスロットは、２０３個のデータから構成され、スーパーフレーム１は８個のフレームから構成されるため、各フレームの同一番号が付されたスロットの集合から成るスロット集合体について考えると、そのスロット集合体は、全部で、２０３×８個のデータから構成されていることになる。従って、上記のようにデータを２０３個づつ読み出していくと、１つのスロット集合体を構成するデータは、２０３個づつのデータの読出しを８回行うことにより全て読み出されることになる。読出データＲ３が読み出されたら、２〜４８の番号が付されたスロットについても、フレーム６のスロット１のデータ６＿１７８から、フレーム８のスロット１のデータ８＿２０３までデータが順次読み出される。フレーム８のスロット４８のデータ８＿２０３が読み出されると、１つのスーパーフレーム１を構成する全データの読み出しが終了したことになる。このようにインターリーブ方向にデータを順次読み出すことにより、１つのスーパーフレームを構成するデータはインターリーブされて受信機１１０に送信される。
【００５９】
上記のようにしてスーパーフレーム１のデータの読出しが終了したら、引き続いて、もう１つ別のスーパーフレーム２を構成するデータについても、同様の方法で読み出されて受信機１１０に送信される。スーパーフレーム２を構成するデータが読み出されて受信機１１０に送信されている間、送信機１００のメモリ１００ａには、メモリ駆動装置１００ｂにより新たなデータが順次書き込まれ、新たなデータから成るスーパーフレーム１が構成される。スーパーフレーム２を構成するデータの送信が終了したら、引き続いて、新たなデータから成るスーパーフレーム１を構成するデータがインターリーブ方向に順次読み出され受信機１１０に送信される。このように、送信機１００では、メモリ１００ａから一方のスーパーフレームのデータを読み出している間に、そのメモリ１００ａに新たにデータが書き込まれ、もう一方のスーパーフレームが構成される。つまり、送信機１００では、メモリ１００ａへの、スーパーフレーム１を構成するデータの書込みと、スーパーフレーム２を構成するデータの書込みとが交互に行われるとともに、メモリ１００ａからの、スーパーフレーム１を構成するデータの読出しと、スーパーフレーム２を構成するデータの読出しとが交互に行われる。
【００６０】
メモリ１００ａから読み出されたデータは、図１に示す受信機１１０に送信される。この受信機１１０は、データが書き込まれるとともに、書き込まれたデータが読み出されるメモリ（本発明のメモリの第１実施形態）１１０ａと、メモリ駆動装置（本発明のメモリ駆動装置の第１実施形態）１１０ｂを有している。そのメモリ駆動装置１１０ｂは、メモリ１１０ａのアドレスを指定し、その指定されたアドレスに対応する領域に、送信機１００から送信されたデータを書き込み、その書き込まれたデータをデインターリーブして読み出すものである。メモリ駆動装置１１０ｂがメモリ１１０ａにデータを順次書き込む様子について、図４を参照しながら説明する。
【００６１】
送信機１００で行われるデータのインターリーブは、１つのスーパーフレーム毎に行われているが、受信機１１０で行われるデインターリーブについては、８個のフレーム１，フレーム２，フレーム３，…，フレーム８（図２参照）それぞれの同一番号のスロットの集合から成るスロット集合体を構成するデータ毎に行われる。各フレームは４８個のスロットから構成されるため、スロット集合体は４８個存在する。この４８個のスロット集合体を構成するデータを、各スロット集合体を構成するデータ毎にデインターリーブするために、送信機１００において、インターリーブされた、１つのスーパーフレームを構成する複数のデータは、受信機１１０のメモリ１１０ａに順次書き込まれるときに、４８個のマトリックス構造に分けて配列される。このとき、１個のマトリックス構造は、フレーム１，フレーム２，フレーム３，…，フレーム８それぞれの同一番号のスロットの集合から成るスロット集合体を構成する複数のデータから構成され、４８個のマトリックス構造全体で見ると、各マトリックス構造は、それぞれ、スロット１集合体，…，スロット４８集合体を構成するデータから構成される。マトリックス構造に配列された複数のデータをデインターリーブする方法は、４８個のマトリックス構造それそれで全く同じであるため、以下では、８個のフレーム１，２，３，…，８それぞれが有する４８個のスロット１，２，３，…，４８のうちのスロット１のみに着目し、各フレームのスロット１の集合から成るスロット１集合体を構成するデータがインターリーブされて受信機１１０に送信された後、どのようにして、そのインターリーブされたデータがデインターリーブされるかを、図４を参照しながら説明する。
【００６２】
上述したように、送信機１００において、スロット１の集合から成るスロット１集合体を構成するデータは、インターリーブ方向に、フレーム１のスロット１のデータ１＿１から読出しが開始され、最後に、フレーム８のスロット１のデータ８＿２０３が読み出されて、スロット１集合体を構成するデータの読出しが終了する。このとき、読み出されたこれらデータは受信機１１０に送信され、受信機１１０に送信されてきたデータは、送信機１００で読み出された順序で、その受信機１１０のメモリ１１０ａに順次書き込まれる。このとき、これらデータは、図４に示すように、８行８列に並ぶ６４個のブロック１，ブロック２，ブロック３，…，ブロック６４を有するマトリックス構造に配列される。各ブロックは２６個のアドレスを有しており、１個のアドレスに対応する領域には、１ｂｙｔｅのデータが１個書き込まれる。従って、１個のブロックには、最大２６個のデータが書込可能である。各ブロックの上部に記載した数字がアドレスを示す。スロット１集合体の全データは、このマトリックス構造に配列される。
【００６３】
スロット１集合体の全データをマトリックス構造に配列するにあたっては、先ず、行方向Ｌに並ぶ第１行のブロック１〜ブロック８にデータが書き込まれる。第１行のブロック１〜ブロック８にデータを書き込むにあたっては、各ブロックの先頭のアドレス０、２６、５２、…、１５６、１８２に対応する領域それぞれに、送信機１００からインターリーブ方向に読み出されて順次送られてきたデータ１＿１、データ２＿１、データ３＿１、…、データ７＿１、データ８＿１が行方向Ｌに順次書き込まれる。尚、先に示した図２には、各データを横書きの符号で表したが、図４では、紙面の都合上、各データを縦書きの符号で表す。また、３桁もしくは４桁で表されるアドレスの番号についても、紙面の都合上、縦書きで表す。
【００６４】
アドレス１８２に対応する領域にデータ８＿１が書き込まれたら、今度は、各ブロック１〜ブロック８の２番目のアドレス１、２７、５３、…、１５７、１８３に対応する領域それぞれに、送信機１００からインターリーブ方向に読み出されて新たに送られてきたデータ１＿２、データ２＿２、データ３＿２、…、データ７＿２、データ８＿２が行方向Ｌに順次書き込まれる。以下、同様にして、ブロック１〜ブロック８のｎ番目のアドレスに対応する領域に、送信機１００から新たに送られてきたデータ１＿ｎ、データ２＿ｎ、データ３＿ｎ、…、データ７＿ｎ、データ８＿ｎが行方向Ｌに順次書き込まれ、最後に、ブロック１〜ブロック８の最後のアドレス２５、５１、７７、…、１８１、２０７に対応する領域にデータ１＿２６、データ２＿２６、データ３＿２６、…、データ７＿２６、データ８＿２６が行方向Ｌに従って順次書き込まれる。このようにして、ブロック１〜ブロック８にデータが書き込まれる。各ブロックそれぞれを独立して見ると、各ブロック１〜８に書き込まれた２６個のデータは、送信機において、図２に示すフレーム１、…、フレーム８それぞれのスロット１を構成する２０３個のデータのうちの、先頭からｘ方向に連続して並ぶ２６個のデータである。
【００６５】
ブロック１〜ブロック８にデータが書き込まれたら、次に、行方向Ｌに並ぶ第２行のブロック９〜ブロック１６にデータが書き込まれる。これらブロックへのデータの書込みも、ブロック１〜ブロック８へのデータの書込みと同様に、各ブロック９〜ブロック１６の先頭のアドレス２０８、…、３９０に対応する領域それぞれに、送信機１００からインターリーブ方向に読み出されて新たに送られてきたデータ１＿２７、…、データ８＿２７が行方向Ｌに従って順次書き込まれ、アドレス３９０に対応する領域にデータ８＿２７が書き込まれたら、今度は、各ブロックの２番目のアドレス２０９、…、３９１に対応する領域それぞれに、データ１＿２８、…、データ８＿２８が行方向Ｌに従って順次書き込まれ、最後に、各ブロックの最後のアドレス２３３、…、４１５に対応する領域にデータ１＿５２、…、データ８＿５２が行方向Ｌに従って順次書き込まれ、ブロック９〜ブロック１６へのデータの書込みが終了する。ブロック９〜ブロック１６へのデータの書込みが終了したら、以下、同様にして、行方向Ｌに並ぶ第３行のブロック（図示省略）へのデータの書込み、…、第７行のブロック４９〜ブロック５６へのデータの書込みが、行方向Ｌに並ぶブロック毎に行われる。
【００６６】
ブロック４９〜ブロック５６へのデータの書込みが終了したら、今度は、第８行のブロック５７〜ブロック６４へのデータの書込みが行われる。ブロック５７〜ブロック６４へのデータの書込みにあたっては、各ブロック５７〜６４の先頭のアドレス１４５６、…、１６３８に対応する領域それぞれに、データ１＿１８３、…、データ８＿１８３が行方向Ｌに従って順次書き込まれる。以下、各ブロック５７〜６４の２番目、３番目、…のアドレスに対応する領域に、行方向Ｌに従ってデータが書き込まれ、各ブロック５７〜６４の先頭から２１番目のアドレス１４７６、…、１６５８に到達すると、そのアドレス１４７６、…、１６５８に対応する領域には、データ１＿２０３、…、データ８＿２０３が行方向Ｌに従って順次書き込まれる。上述したように、送信機１００では、スロット１集合体を構成するデータの読出しは、データ１＿１からインターリーブ方向に開始され、最後にデータ８＿２０３が読み出されて終了する。従って、ブロック６４のアドレス１６５８に対応する領域にデータ８＿２０３が書き込まれると、スロット１集合体のデータ全ての書込みが終了する。これにより、図４に示すように、データ１＿２０３、…、データ８＿２０３はマトリックス状に書き込まれる。
【００６７】
尚、各ブロックは、上述したように、最大２６個のデータが書込可能であり、スロット１集合体は２０３×８＝１６２４個のデータから構成される。従って、スロット１集合体を構成するデータを、上記のように行方向Ｌに順次書き込むと、８行８列に並ぶ６４個のブロック１〜ブロック６４のうちの、第１行〜第７行の５６個のブロック１〜ブロック５６には、スロット１集合体を構成する１６２４個のデータのうち、２６（＝１個のブロックに書き込まれるデータの数）×７（＝第１行〜第７行の５６個のブロック１〜ブロック５６のうち、列方向Ｒに並ぶブロックの数）×８（＝第１行〜第７行の５６個のブロック１〜ブロック５６のうち、行方向Ｌに並ぶブロックの数）＝１４５６個のデータが書き込まれる。従って、第８行のブロック５７〜ブロック６４には、残りの１６８（＝１６２４−１４５６）個のデータが書き込まれることになる。各ブロックには、２６個のデータが書込可能であるため、第８行のブロック５７〜ブロック６４に、上記のように行方向Ｌにデータを書き込むと、第８行のブロック５７〜ブロック６４それぞれに２１（＝１６８／８）個のデータが書き込まれた時点で、残りの１６８個のデータの書込みが終了し、スロット１集合体を構成するデータが全て書き込まれたことになる。従って、第１行〜第７行の５６個のブロック１〜ブロック５６それぞれは、２６個のアドレスに対応する領域全てにデータが書き込まれるが、一方、第８行のブロック５７〜ブロック６４は、２６個のアドレスに対応する領域のうち、２１個のアドレスに対応する領域にのみデータが書き込まれ、残りの５個のアドレスに対応する領域にはデータが書き込まれないことになる。
【００６８】
第８行のブロック５７〜ブロック６４へのデータの書込みが終了したら、今度は、ブロック１〜ブロック６４に書き込まれたデータが読み出される。
【００６９】
データの読出しにあたっては、先ず、列方向Ｒに並ぶ第１列のブロック１、ブロック９、…、ブロック４９、ブロック５７に書き込まれたデータが順次読み出される。これらブロック１、ブロック９、…、ブロック４９、ブロック５７からのデータの読出しにあたっては、ブロック１の各アドレス０〜２５が、先頭のアドレス０から１つづつインクリメントしながら順次指定され、アドレス０、１、２、…、２５に対応する領域に書き込まれたデータ１＿１、データ１＿２、データ１＿３、…、データ１＿２６が読み出される。以下、同様にして、ブロック９、…、ブロック５７に書き込まれたデータが、ブロック９、…、ブロック５７の順序で、指定するアドレスをインクリメントすることにより順次読み出される。このようにして、列方向Ｒにデータを順次読み出すことにより、ブロック１、ブロック９、…、ブロック４９、ブロック５７に書き込まれたデータがデインターリーブされ、データ１＿１〜データ１＿２０３が連続して読み出される。従って、送信機１００でインターリーブされて受信機１１０に送信されたデータは行方向Ｌに順次書き込まれるが、この行方向Ｌに書き込まれたデータを列方向Ｒに順次読み出すことにより、図２に示すフレーム１のスロット１を構成するデータ１＿１〜データ１＿２０３がデインターリーブされて読み出される。
【００７０】
ブロック１、ブロック９、…、ブロック４９、ブロック５７に書き込まれたデータを読み出したら、次に、第２列のブロック２、ブロック１０、…、ブロック５８に書き込まれたデータを読み出す。これらブロック２、ブロック１０、…、ブロック５８のデータの読み出しにあたっては、ブロック２のアドレスを、先頭のアドレス２６から１つづつインクリメントしながら順次指定して、アドレス２６、２７、２８、…、５１に対応する領域に書き込まれたデータ２＿１、データ２＿２、データ２＿３、…、データ２＿２６が読み出される。アドレス５１に対応する領域のデータ２＿２６が読み出されたら、以下、同様にして、ブロック１０、…、５８に書き込まれたデータが、指定するアドレスをインクリメントすることにより順次読み出される。このようにして、列方向Ｒにデータを順次読み出すことにより、図２に示すフレーム２のスロット１を構成するデータ２＿１〜データ２＿２０３がデインターリーブされて読み出される。
【００７１】
第２列のデータ２＿１〜データ２＿２０３が読み出されたら、以下、同様にして、列方向Ｒに並ぶ第３列、…、第８列のブロックに書き込まれたデータを、列方向Ｒに順次読み出すことにより、データ３＿１〜データ３＿２０３（図示せず）、…、データ８＿１〜データ８＿２０３がデインターリーブされて読み出される。
【００７２】
上記のようにして、受信機１１０のメモリ１１０ａに行方向Ｌに書き込んだデータを列方向Ｒに読み出すことにより、送信機１００のメモリ１００ａから受信機１１０にインターリーブされて送信された、スーパーフレーム１を構成するデータが、受信機１１０でデインターリーブされる。本実施形態では、送信機１００からスーパーフレーム１を構成するデータが受信機１１０に送信されたら、次に、スーパーフレーム１を構成するデータの読出し手順と同じ手順で、もう一方のスーパーフレーム２を構成するデータが読み出されて受信機１１０に送信される。
【００７３】
ところで、図４に示すマトリックスに書き込まれた、スーパーフレーム１についてのデータは、上述したように、ブロック１から列方向Ｒに順次読み出されることによりデインターリーブされる。従って、第１列のブロック１、９、…、４９、５７に書き込まれたデータ１＿１〜データ１＿２０３が読み出されたら、第８列のブロック８、１６、…、５６、６４を構成するデータの読出しが終了する前に、その第１列のブロック１、９、…、４９、５７に、新たにデータを書き込むことができる。本実施形態では、第１列のブロック１、９、…、４９、５７に書き込まれたデータ１＿１〜データ１＿２０３が読み出されたら、第２列のブロック２、１０、…、５８を構成するデータの読出しを開始すると同時に、その第１列のブロック１、９、…、４９、５７に、もう一方のスーパーフレーム２を構成する２０３ｂｙｔｅ分のデータの書込みを行っている。
【００７４】
図５は、もう一方のスーパーフレーム２を構成する２０３ｂｙｔｅ分のデータが、ブロック１、ブロック９、…、ブロック４９、ブロック５７に書き込まれた様子を示す概念図である。
【００７５】
第１列のブロック１、ブロック９、…、ブロック４９、ブロック５７に、もう一方のスーパーフレーム２を構成する２０３ｂｙｔｅ分のデータを書き込むにあたっては、各ブロックの先頭のアドレス０、２０８、…、１２４８、１４５６に対応する領域それぞれに、データ１＿１、データ２＿１、データ３＿１、…、データ７＿１、データ８＿１が順次列方向Ｒに書き込まれる。
【００７６】
アドレス１４５６に対応する領域にデータ８＿１が書き込まれたら、今度は、各ブロック１、ブロック９、…、ブロック４９、ブロック５７の２番目のアドレス１、２０９、…、１２４９、１４５７に対応する領域それぞれに、データ１＿２、データ２＿２、…、データ７＿２、データ８＿２が順次列方向Ｒに書き込まれる。以下、同様にして、各ブロック１、ブロック９、…、ブロック４９、ブロック５７のｎ番目のアドレスに対応する領域にデータ１＿ｎ、データ２＿ｎ、データ３＿ｎ、…、データ７＿ｎ、データ８＿ｎが順次列方向Ｒに書き込まれ、最後に、各ブロック１、ブロック９、…、ブロック４９、ブロック５７の最後のアドレス２５、２３３、…、１２７３、１４８１に対応する領域にデータ１＿２６、データ２＿２６、…、データ７＿２６、データ８＿２６が順次列方向Ｒに書き込まれる。このようにして、ブロック１、ブロック９、…、ブロック４９、ブロック５７にデータが書き込まれる。
【００７７】
ブロック１、ブロック９、…、ブロック４９、ブロック５７にデータが書き込まれでいる間、第２列のブロック２、ブロック１０、…、ブロック５８では、既に書き込まれているスーパーフレーム１についてのデータが、上述した手順で順次読み出される。以下、同様にして、第ｎ列のブロックに書き込まれたスーパーフレーム１についてのデータが、列方向Ｒに順次読み出された直後に、その第ｎ列のブロックに、スーパーフレーム２についてのデータが列方向Ｒに順次書き込まれる。
【００７８】
従って、第８列のブロックに書き込まれた、スーパーフレーム１についてのデータが読み出された直後に、その第８列のブロックにスーパーフレーム２のデータが書き込まれる。これにより、スーパーフレーム２を構成するスロット１集合体全てのデータの書込みが終了する。
【００７９】
図６は、スーパーフレーム２を構成するスロット１集合体全てのデータが書き込まれた様子を示す概念図である。
【００８０】
上述したように、各ブロックは最大２６個のデータが書込可能であり、また、スロット１集合体は２０３×８＝１６２４個のデータから構成される。従って、スロット１集合体を構成するデータを、上記のように列方向Ｒに順次書き込むと、８行８列に並ぶ６４個のブロックのうちの、第１列〜第７列の５６個のブロックには、スロット１集合体を構成する１６２４個のデータのうち、２６（＝１個のブロックに書き込まれるデータの数）×７（＝第１列〜第７列の５６個のブロックのうち、行方向Ｌに並ぶブロックの数）×８（＝第１列〜第７列の５６個のブロックのうち、列方向Ｒに並ぶブロックの数）＝１４５６個のデータが書き込まれる。従って、第８列のブロック８、ブロック１６、…、ブロック５６、ブロック６４には、残りの１６８（＝１６２４−１４５６）個のデータが書き込まれることになる。各ブロックには、２６個のデータが書込可能であるため、第８列のブロック８、ブロック１６、…、ブロック５６、ブロック６４に、上記のように列方向Ｒにデータを書き込むと、第８列のブロック８、ブロック１６、…、ブロック５６、ブロック６４それぞれに２１（＝１６８／８）個のデータが書き込まれた時点で、残りの１６８個のデータの書込みが終了し、スロット１集合体を構成するデータが全て書き込まれたことになる。従って、第１列〜第７列の５６個のブロックそれぞれは、２６個のアドレスに対応する領域全てにデータが書き込まれるが、一方、第８列のブロック８、ブロック１６、…、ブロック５６、ブロック６４は、２６個のアドレスに対応する領域のうち、２１個のアドレスに対応する領域にのみデータが書き込まれ、残りの５個のアドレスに対応する領域にはデータが書き込まれないことになる。
【００８１】
ところで、スーパーフレーム１についてのデータは、図４を参照しながら説明したように、行方向Ｌに書き込まれて列方向Ｒに読み出されることによりデインターリーブされるが、図６に示すスーパーフレーム２についてのデータは、スーパーフレーム１とは反対に、列方向Ｒに書き込まれて行方向Ｌに読み出されることによりデインターリーブされる。
【００８２】
具体的には、スーパーフレーム２のデータが、図５、図６を参照しながら説明したようにして列方向Ｒに書き込まれた後、第１行のブロック１、ブロック２、ブロック３、…、ブロック７、ブロック８のデータが行方向Ｌに読み出されることにより、データ１＿１〜データ１＿２０３が順次読み出される。以下、同様にして、行方向Ｌへのデータの読出しを、第２行〜第８行のブロックについて順次行うことにより、スーパーフレーム２のデータが全てデインターリーブされて読み出される。このとき、第ｎ行のブロックに書き込まれたデータが読み出された直後に、送信機１００で新たに構成されたスーパーフレーム１のデータが、図２、図３を参照しながら説明した手順に従ってインターリーブされ、そのインターリーブされたデータが、その第ｎ行のブロックに、図４を参照しながら説明した手順に従って行方向Ｌに順次書き込まれる。従って、第８列のブロックに書き込まれたスーパーフレーム２についてのデータが読み出された直後に、その第８列のブロックに、新たなスーパーフレーム１のデータが行方向Ｌに順次書き込まれ、新たなスーパーフレーム１を構成するデータ全ての書込みが終了する。以下、図４〜図６を参照しながら説明した手順で、データの読出方向及び書込方向を、行方向Ｌ及び列方向Ｒに交互に変えながら、送信機１００でインターリーブされたデータが、受信機１１０で次々にデインターリーブされる。
【００８３】
メモリ駆動装置１１０ｂは、上述したように、送信機１００でインターリーブされ受信機１１０に送られてきた新たなデータをメモリ１１０ａに書き込むにあたっては、メモリ１１０ａに現在書き込まれているデータを行方向Ｌに読み出す場合、行方向Ｌに並ぶ８個のブロックのデータを読み出す毎に、新たなデータを、そのデータが読み出された直後の８個のブロックに行方向Ｌに書き込み、一方、メモリ１１０ａに現在書き込まれているデータを列方向Ｒに読み出す場合、列方向Ｒに並ぶ８個のブロックのデータを読み出す毎に、新たなデータを、そのデータが読み出された直後の８個のブロックに列方向Ｒに書き込んでいる。
【００８４】
ところで、従来では、上述したように、送信機でインターリーブされた複数のデータが、次々に受信機のメモリに書き込めるように、受信機のメモリとして、現在データの読出しが行われている領域に加えて、新たなデータが書き込める分の領域が確保された、容量の大きいメモリを用いる必要である。これに対し、上記の第１の送受信システムでは、データの読出方向及び書込方向を、行方向Ｌ及び列方向Ｒに交互に変えながら、送信機１００でインターリーブされたデータを、受信機１１０で次々にデインターリーブしている。従って、受信機のメモリの、データの読出しが行われた直後の領域に、新たなデータをすぐに書き込むとができる。従って、本実施形態では、メモリ１１０ａに、データの読出しが現在行われている領域とは別に、従来では必要な新たなデータが書き込まれる分の領域を確保することは不要であり、従来と比較して、メモリの容量を小さくすることができ、低コストでデータの並べかえを行うことができる。例えば、従来では、送信機から送信されたデータをデインターリーブするために、メモリの容量として、上述したように、２つのスーパーフレーム分のデータが書き込めるだけの容量、つまり、約１．２５Ｍｂｉｔの容量が必要である。これに対し、本実施形態では、スロット１集合体のデータは、１ｂｙｔｅ（＝８ｂｉｔ）のデータが最大２６個書き込まれる１個のブロックが８行８列に並べられたマトリックス構造に配列されることから、スロット１集合体のデータをデインターリーブするのに必要なメモリ１１０ａの容量は、８（＝１個のデータのｂｉｔ数）×２６（＝１個のブロックに最大限書き込めるデータの数）×６４（＝１個のマトリックス構造が有するブロックの数）＝１３３１２ｂｉｔである。本実施形態では、このマトリックス構造が４８個構成されることから、メモリ１１０ａに必要な容量は、１３３１２×４８＝６３８９７６ｂｉｔ、つまり、約０．６４Ｍｂｉｔである。従って、本実施形態では、従来と比較して、メモリ１１０ａの容量が約半分で済むことがわかる。
【００８５】
尚、本実施形態では、現在書き込まれているデータの次に書き込まれるデータの書込方向は、現在書き込まれているデータの読出方向と一致しているが、次に書きこまれるデータの書込方向を、現在書き込まれているデータの読出方向と反対方向にしてもよい。具体的には、本実施形態では、現在書き込まれているデータが行方向Ｌに読み出された場合、次のデータは行方向Ｌに書き込まれているが、行方向Ｌとは反対方向の行方向Ｌ’（図４参照）に書き込んでもよい。同様に考えて、現在書き込まれているデータが列方向Ｒに読み出された場合、次のデータは列方向Ｒとは反対方向の列方向Ｒ’に書き込んでもよい。
【００８６】
図７〜図１３は、本発明のデータ書込方法の第２実施形態を採用したデータ処理方法を実行する送受信システム（以下、第２の送受信システムと呼ぶ）を用いて、複数のデータをインターリーブし、そのインターリーブされた複数のデータをデインターリーブする様子を説明する図である。
【００８７】
尚、第２の送受信システムと、先に説明した第１の送受信システムとの違いは、受信機の構成だけであるため、第２の送受信システムの構成を説明するにあたっては、受信機の構成のみについて説明する。
【００８８】
図７は、その第２の送受信システムにおける受信機を示す概略図である。
【００８９】
受信機５０は送信機１００（図１参照）から送信されたデータが書き込まれるメモリ５１を有している。また、この受信機５０はメモリ駆動装置（本発明のメモリ駆動装置の第２実施形態）５２を有しており、そのメモリ駆動装置５２は送信機１００から送信されたデータをメモリ（本発明のメモリの第２実施形態）５１に順次書き込んでマトリックス構造に配列するとともに、そのマトリックス構造に配列されたデータをデインターリーブしながら読み出す装置である。このメモリ駆動装置５２により、メモリ５１に書き込まれるデータは、後述する図１１に示すように、８行８列に並ぶ６４個のブロック１，２，３，…，６４を有するマトリックス構造に配列される。各ブロックは４個のアドレスを有している。各ブロックの、１個のアドレスに対応する領域には、１ｂｙｔｅのデータが７個書き込まれる。従って、１個のブロックには、最大、４（＝１個のブロックが有するアドレスの数）×７（１個のアドレスに対応する領域に書き込まれるデータの数）＝２８個のデータが書込可能である。
【００９０】
尚、メモリ駆動装置５２は、メモリ５１の、１個のアドレスに対応する領域に７個のデータを書き込むときには、それら７個のデータを、対応する領域に同時に書き込んでいる。メモリ駆動装置５２は、１個のアドレスに対応する領域に７個のデータを同時に書き込むために、送信機１００から送信されたデータを、メモリ５１に書き込む前に一旦バッファ５２ａに書き込み、そのバッファ５２ａに書き込まれたデータを読み出して、メモリ５１の、１個のアドレスに対応する領域に、７個のデータを同時に書き込んでいる。
【００９１】
図８〜図１０は、そのバッファ５２ａにデータを書き込み、その書き込まれたデータを読み出すときの概念図である。
【００９２】
図２に示す各フレームのスロット１の集合から成るスロット１集合体のデータ１＿１、…、データ８＿２０３がインターリーブ方向に読み出されると、それらデータ１＿１、…、データ８＿２０３は、送信機１００で読み出された順に、一旦バッファ５２ａ（図７参照）に書き込まれる。このバッファ５２ａは、６４個のアドレスを有しており、１個のアドレスに対応する領域に１ｂｙｔｅのデータが１個書き込まれる。そのバッファ５２ａにデータ１＿１、…、データ８＿２０３を書き込むにあたっては、送信機１００から送信されてきたデータが、図８に示すように、データ１＿１から行方向Ｌに順次書き込まれ、行方向Ｌに並ぶ第１行のアドレス０〜アドレス７に対応する領域それぞれに、データ１＿１、データ２＿１、データ３＿１、…、データ７＿１、データ８＿１が行方向Ｌに順次書き込まれる。アドレス７に対応する領域にデータ８＿１が書き込まれたら、今度は、第２行のアドレス８、９、１０、…、１４、１５に対応する領域それぞれに、データ１＿２、データ２＿２、データ３＿２、…、データ７＿２、データ８＿２が行方向Ｌに順次書き込まれる。以下、同様にして、行方向Ｌに並ぶアドレスに対応する領域にデータ１＿ｎ、データ２＿ｎ、データ３＿ｎ、…、データ８＿ｎが行方向Ｌに順次書き込まれる。第７行のアドレス４８、４９、５０、…、５４、５５に対応する領域にデータ１＿７、データ２＿７、データ３＿７、…、データ７＿７、データ８＿７を順次書き込んだら、アドレス５６、５７、５８、…、６２、６３に対応する領域にはデータを書き込まずに、アドレス０〜アドレス５５に対応する領域に書き込まれたデータの読出しを開始する。このように、データが行方向Ｌに書き込まれる場合、データは、第８行のアドレスに対応する領域には書き込まれずに、第１行〜第７行のアドレスに対応する領域にのみ書き込まれ、その後、それら書き込まれたデータの読出しが行われる。
【００９３】
データの読出しにあたっては、先ず、列方向Ｒに並ぶ第１列のアドレス０、アドレス８、…、アドレス４８に対応する領域に書き込まれたデータ１＿１、データ１＿２、…、データ１＿７が読み出され、メモリ５１に送信される。つまり、７個のデータを１つのデータ群として、この１つのデータ群がメモリ５１に同時に送信される。列方向Ｒに読み出されることにより、これら７個のデータは、並べかえられてメモリ５１に送信される。
【００９４】
第１列のアドレス０、アドレス８、…、アドレス４８に対応する領域に書き込まれた７個のデータ１＿１、データ１＿２、…、データ１＿７からなるデータ群が読み出されたら、その直後に、第２列のアドレス１、アドレス９、…、アドレス４９に対応する領域に書き込まれた７個のデータ２＿１、データ２＿２、…、データ２＿７からなるデータ群を読み出すと同時に、その第１列のアドレス０、アドレス８、…、アドレス４８、アドレス５６に対応する領域に、送信機１００から新たに送信されたデータ１＿８、データ２＿８、…、データ７＿８、データ８＿８が書き込まれる。
【００９５】
図９は、第１列のアドレス０、アドレス８、…、アドレス５６に対応する領域に、新たなデータが書き込まれた様子を示す概念図である。
【００９６】
図９に示すように、列方向Ｒにデータが書き込まれる場合、第８行のアドレスに対応する領域にもデータが書き込まれる。
【００９７】
以下、第２列のアドレスに対応する領域の７個のデータ２＿１〜データ２＿７からなるデータ群、…、第８列のアドレスに対応する領域の７個のデータ８＿１〜データ８＿７からなるデータ群が、各データ群毎に順次読み出される。このように、列方向Ｒに読み出されることにより、７個のデータから成る各データ群は、並べかえられてメモリ５１に送信される。このとき、第ｎ列のアドレスに対応する領域に書き込まれたデータが読み出された直後に、その第ｎ列のアドレスに対応する領域に、送信機１００から送信されてきた新たなデータが列方向Ｒに順次書き込まれる。
【００９８】
図１０は、第８列のアドレスに対応する領域に書き込まれた７個のデータ８＿１〜データ８＿７が読み出された直後の様子を示す概念図である。
【００９９】
列方向Ｒにデータを書き込む場合、データは、図１０に示すように、第８列のアドレスに対応する領域には書き込まれず、第１列〜第７列のアドレスに対応する領域にのみ書き込まれる。この図１０と、先に示した図８とを比較すると、図１０には、新たなデータ１＿８、…、データ８＿１４が書き込まれていることがわかる。図１０に示すように、新たなデータが書き込まれたら、今度はこれらデータが行方向Ｌに読み出され、第１行の７個のデータ１＿８〜データ１＿１４からなるデータ群、…、第８行の７個のデータ８＿８〜データ８＿１４からなるデータ群が、各データ群毎に順次メモリ５１に送信される。これにより、バッファ５２ａに先に書き込まれたデータが順次読み出されながら、そのバッファ５２ａに新たなデータが順次書き込まれる。
【０１００】
以下、バッファ５２ａでは、データの書込方向及び読出方向それぞれが、図８〜図１０を参照しながら説明したように、行方向及び列方向に交互に変更されながら、データの書込み及び読出しが行われる。バッファ５２ａから読み出されたデータは順次メモリ５１に送信される。このとき、バッファ５２ａに書き込まれるデータが行方向Ｌに書き込まれる場合、データは、第８行のアドレスに対応する領域には書き込まれずに、第１行〜第７行のアドレスに対応する領域にのみ書き込まれ、一方、データが列方向Ｒに書き込まれる場合、データは、第８列のアドレスに対応する領域には書き込まれず、第１列〜第７列のアドレスに対応する領域にのみ書き込まれる。このようにデータを書き込むことにより、書き込まれたデータを行方向Ｌ若しくは列方向Ｒに読み出したときに、メモリ５１へのデータの送信は、７個のデータ毎に行われることになる。尚、バッファ５２ａへのデータの書込み、読出しは、図８〜図１０を参照しながら説明したように、データの書込方向及び読出方向を、行方向及び列方向に交互に変更しながら行われている。従って、このバッファ５２ａが、６４個のアドレスに対応する領域分（つまり、６４ｂｙｔｅ＝５１２ｂｉｔ分）の容量を有していれば、バッファ５２ａに書き込まれたデータを読み出しながら、新たなデータを順次書き込むことができる。
【０１０１】
一方、メモリ５１には、バッファ５２ａから送信されてきた、一旦並べかえられた７個のデータからなる各データ群が、図１１に示すように、マトリックス構造に順次書き込まれる。このとき、メモリ５１に送信されてきた各データ群は、バッファ５２ａで読み出された順序で、そのメモリ５１に順次書き込まれる。各データ群を、図１１に示すようにマトリックス構造に配列するにあたっては、先ず、行方向Ｌに並ぶ第１行のブロック１、ブロック２、…、ブロック８にデータが書き込まれる。第１行のブロック１、ブロック２、…、ブロック８にデータを書き込むにあたっては、各ブロック１、ブロック２、…、ブロック８の先頭のアドレス０、アドレス４、…、アドレス２８に対応する領域それぞれに、７個のデータ１＿１〜データ１＿７からなるデータ群、７個のデータ２＿１〜データ２＿７からなるデータ群、…、７個のデータ８＿１〜データ８＿７からなるデータ群が行方向Ｌに順次書き込まれる。
【０１０２】
アドレス２８に対応する領域に７個のデータ８＿１〜データ８＿７からなるデータ群が書き込まれたら、今度は、各ブロック１、ブロック２、…、ブロック８の２番目のアドレス１、アドレス５、…、アドレス２９に対応する領域それぞれに、７個のデータ１＿８〜データ１＿１４からなるデータ群、７個のデータ２＿８〜データ２＿１４からなるデータ群、…、７個のデータ８＿８〜データ８＿１４からなるデータ群が行方向Ｌに順次書き込まれる。以下、同様にして、各ブロック１、ブロック２、…、ブロック８の３番目のアドレス２、アドレス６、…、アドレス３０に対応する領域それぞれに、７個のデータからなるデータ群が書き込まれ、最後に、各ブロック１、ブロック２、…、ブロック８の４番目のアドレス３、アドレス７、…、アドレス３１に対応する領域それぞれに、７個のデータ１＿２２〜データ１＿２８からなるデータ群、７個のデータ２＿２２〜データ２＿２８からなるデータ群、…、７個のデータ８＿２２〜データ８＿２８からなるデータ群が行方向Ｌに順次書き込まれる。このようにして、各ブロック１、ブロック２、…、ブロック８それぞれに２８個のデータが書き込まれる。各ブロックそれぞれを独立して見ると、各ブロック１〜８に書き込まれた２８個のデータは、送信機１００において、図２に示すフレーム１、…フレーム８それぞれのスロット１を構成する２０３個のデータのうちの、先頭からｘ方向に連続して並ぶ２８個のデータである。
【０１０３】
ブロック１〜ブロック８にデータが書き込まれたら、さらに、バッファ５２ａから新たなデータが順次送信され、以下同様にして、第２行のブロック（図示省略）へのデータの書込み、…、第７行のブロック４９〜ブロック５６へのデータの書込みが、行方向Ｌに並ぶブロック毎に行われる。第７行のブロック４９、…、ブロック５６には、それぞれ、データ１＿１６９〜データ１＿１９６、…、データ８＿１６９〜データ８＿１９６が書き込まれる。
【０１０４】
ブロック４９〜ブロック５６へのデータの書込みが終了したら、今度は、第８行のブロック５７〜ブロック６４へのデータの書込みが行われる。ブロック５７〜ブロック６４へのデータの書込みにあたっては、各ブロック５７〜６４の先頭のアドレス２２４、…、２５２に対応する領域それぞれに、７個のデータ１＿１９７〜データ１＿２０３からなるデータ群、…、７個のデータ８＿１９７〜データ８＿２０３からなるデータ群が行方向Ｌに順次書き込まれる。上述したように、送信機１００では、各フレームのスロット１の集合から成るスロット１集合体を構成するデータの読出しは、データ１＿１からインターリーブ方向に開始され、最後にデータ８＿２０３が読み出されて終了する。従って、ブロック６４のアドレス２５２に対応する領域に７個のデータ８＿１９７〜データ８＿２０３からなるデータ群が書き込まれると、スロット１集合体のデータ全ての書込みが終了する。これにより、図１１に示すように、データ１＿２０３、…、データ８＿２０３はマトリックス状に書き込まれる。
【０１０５】
尚、各ブロックは、上述したように、最大２８個のデータが書込可能であり、スロット１集合体は２０３×８＝１６２４個のデータから構成される。従って、スロット１集合体を構成するデータを、上記のように行方向Ｌに順次書き込むと、８行８列に並ぶ６４個のブロック１〜ブロック６４のうちの、第１行〜第７行の５６個のブロック１〜ブロック５６には、スロット１集合体を構成する１６２４個のデータのうち、２８（＝１個のブロックに書き込まれるデータの数）×７（＝第１行〜第７行の５６個のブロック１〜ブロック５６のうち、列方向Ｒに並ぶブロックの数）×８（＝第１行〜第７行の５６個のブロック１〜ブロック５６のうち、行方向Ｌに並ぶブロックの数）＝１５６８個のデータが書き込まれる。従って、第８行のブロック５７〜ブロック６４には、残りの５６（＝１６２４−１５６８）個のデータが書き込まれることになる。各ブロックには、２８個のデータが書込可能であるため、第８行のブロック５７〜ブロック６４に、上記のように行方向Ｌにデータを書き込むと、第８行のブロック５７〜ブロック６４それぞれの先頭のアドレスに対応する領域に、７個のデータが書き込まれた時点で、残りの５６個のデータの書込みが終了し、スロット１集合体を構成するデータが全て書き込まれたことになる。従って、第１行〜第７行の５６個のブロック１〜ブロック５６それぞれは、４個のアドレスに対応する領域全てにデータが書き込まれるが、一方、第８行のブロック５７〜ブロック６４は、４個のアドレスに対応する領域のうち、１個のアドレスに対応する領域にのみデータが書き込まれ、残りの３個のアドレスに対応する領域にはデータが書き込まれないことになる。
【０１０６】
第８行のブロック５７〜ブロック６４へのデータの書込みが終了したら、今度は、ブロック１〜ブロック６４に書き込まれたデータが読み出される。
【０１０７】
データの読出しにあたっては、先ず、列方向Ｒに並ぶ第１列のブロック１、…、ブロック４９、ブロック５７に書き込まれたデータが順次読み出される。これらブロック１、…、ブロック４９、ブロック５７からのデータの読出しにあたっては、ブロック１の各アドレス０〜３が、先頭のアドレス０から１つづつインクリメントしながら順次指定され、各アドレス０、１、２、３に対応する領域に書き込まれたデータ１＿１〜データ１＿７、データ１＿８〜データ１＿１４、データ１＿１５〜データ１＿２１、データ１＿２２〜データ１＿２８が順次読み出される。アドレス３に対応する領域の７個のデータ１＿２２〜データ１＿２８が読み出されたら、以下、同様にして、第１列に並ぶブロック９（図示せず）、…、ブロック４９、ブロック５７に書き込まれたデータが、アドレスをインクリメントすることにより順次読み出される。このようにして、列方向Ｒにデータを順次読み出すことにより、図２に示すフレーム２のスロット１を構成するデータ１＿１〜データ１＿２０３がデインターリーブされて読み出される。
【０１０８】
ブロック１、…、ブロック４９、ブロック５７に書き込まれたデータを読み出したら、次に、第２列のブロック２、…、ブロック５８に書き込まれたデータを読み出す。これらブロック２、…、ブロック５８のデータの読み出しにあたっては、ブロック２のアドレスを、先頭のアドレス４から１つづつインクリメントしながら順次指定して、各アドレス４、５、６、７に対応する領域に書き込まれたデータ２＿１〜データ２＿７、データ２＿８〜データ２＿１４、データ２＿１５〜データ２＿２１、データ２＿２２〜データ２＿２８が順次読み出される。アドレス７に対応する領域のデータ２＿２２〜データ２＿２８が読み出されたら、以下、同様にして、指定するアドレスをインクリメントすることにより、ブロック１０（図示せず）、…、ブロック５８に書き込まれたデータが順次読み出される。このようにして、列方向Ｒにデータを順次読み出すことにより、図２に示すフレーム２のスロット１を構成するデータ２＿１〜データ２＿２０３がデインターリーブされて読み出される。
【０１０９】
第２列のデータ２＿１〜データ２＿２０３が読み出されたら、以下、同様にして、第３列、…、第８列のブロックに書き込まれたデータを、列方向Ｒに順次読み出すことにより、データ３＿１〜データ３＿２０３（図示せず）、…、データ８＿１〜データ８＿２０３がデインターリーブされて読み出される。
【０１１０】
上記のようにして、行方向Ｌに書き込んだデータを列方向Ｒに読み出すことにより、送信機１００のメモリ１００ａ（図１参照）からインターリーブされて読み出され受信機５０に送信された、スーパーフレーム１を構成するデータがデインターリーブされる。送信機１００からスーパーフレーム１を構成するデータが受信機５０に送信されたら、次に、スーパーフレーム１を構成するデータの読出し手順と同じ手順でもう１つのスーパーフレーム２を構成するデータが読み出されて受信機５０に送信される。
【０１１１】
また、第２の送受信システムでは、第１列のブロック１、…、ブロック４９、ブロック５７に書き込まれたデータ１＿１〜データ１＿２０３がデインターリーブされて読み出されたら、次に、上記のように、第２列のブロック２、…、ブロック５８を構成するデータが読み出されるが、その第２列のブロック２、…、ブロック５８を構成するデータの読出しと同時に、バッファ５２ａから、もう一方のスーパーフレーム２を構成する２０３ｂｙｔｅ分のデータが読み出され、その第１列のブロック１、…、ブロック４９、ブロック５７に書き込まれる。
【０１１２】
図１２は、スーパーフレーム２を構成する２０３ｂｙｔｅ分のデータが、ブロック１、…、ブロック４９、ブロック５７に書き込まれた様子を示す概念図である。
【０１１３】
第１列のブロック１、…、ブロック４９、ブロック５７にスーパーフレーム２を構成する２０３ｂｙｔｅ分のデータを書き込むにあたっては、各ブロックの先頭のアドレス０、…、アドレス１９２、アドレス２２４に対応する領域それぞれに、７個のデータ１＿１〜データ１＿７からなるデータ群、…、７個のデータ７＿１〜データ７＿７からなるデータ群、７個のデータ８＿１〜データ８＿７からなるデータ群が順次列方向Ｒに書き込まれる。
【０１１４】
アドレス２２４に対応する領域に７個のデータ８＿１〜データ８＿７からなるデータ群が書き込まれたら、今度は、各ブロック１、…、ブロック４９、ブロック５７の２番目のアドレス１、…、１９３、２２５に対応する領域それぞれに、７個のデータ１＿８〜データ１＿１４からなるデータ群、…、７個のデータ７＿８〜データ７＿１４からなるデータ群、７個のデータ８＿８〜データ８＿１４からなるデータ群が順次列方向Ｒに書き込まれる。以下、同様にして、各ブロック１、…、ブロック４９、ブロック５７の３番目のアドレスに対応する領域に７個のデータからなるデータ群が順次列方向Ｒに書き込まれ、最後に、各ブロック１、…、ブロック４９、ブロック５７の最後のアドレス３、…、１９５、２２７に対応する領域に、７個のデータ１＿２２〜データ１＿２８からなるデータ群、…、７個のデータ７＿２２〜データ７＿２８からなるデータ群、７個のデータ８＿２２〜データ８＿２８からなるデータ群が順次列方向Ｒに書き込まれる。このようにして、ブロック１、…、ブロック４９、ブロック５７にデータが書き込まれる。
【０１１５】
ブロック１、…、ブロック４９、ブロック５７にデータが書き込まれている間、第２列のブロック２、…、ブロック５８では、既に書き込まれているスーパーフレーム１についてのデータが、上述した手順で順次読み出される。以下、同様にして、第ｎ列のブロックに書き込まれたスーパーフレーム１についてのデータが列方向Ｒに順次読み出された直後に、その第ｎ列のブロックに、もう一方のスーパーフレーム２についてのデータが列方向Ｒに順次書き込まれる。
【０１１６】
従って、第８列のブロックに書き込まれたスーパーフレーム１についてのデータが読み出された直後に、その第８列のブロックにスーパーフレーム２のデータが書き込まれ、スーパーフレーム２のスロット１集合体を構成する全てのデータの書込みが終了する。
【０１１７】
図１３は、スーパーフレーム２のスロット１集合体を構成する全てのデータが書き込まれた様子を示す概念図である。
【０１１８】
上述したように、各ブロックは、最大２８個のデータが書込可能であり、また、スロット１集合体は２０３×８＝１６２４個のデータから構成される。従って、スロット１集合体を構成するデータを、上記のように列方向Ｒに順次書き込むと、８行８列に並ぶ６４個のブロック１〜ブロック６４のうちの、第１列〜第７列の５６個のブロックには、スロット１集合体を構成する１６２４個のデータのうち、２８（＝１個のブロックに書き込まれるデータの数）×７（＝第１列〜第７列の５６個のブロックのうち、行方向Ｌに並ぶブロックの数）×８（＝第１列〜第７列の５６個のブロックのうち、列方向Ｒに並ぶブロックの数）＝１５６８個のデータが書き込まれる。従って、第８列のブロック８、…、ブロック５６、ブロック６４には、残りの５６（＝１６２４−１５６８）個のデータが書き込まれることになる。各ブロックには、２８個のデータが書込可能であるため、第８列のブロック８、…、ブロック５６、ブロック６４に、上記のように列方向Ｒにデータを書き込むと、第８列のブロック８、…、ブロック５６、ブロック６４それぞれの先頭のアドレスに対応する領域に、７個のデータが書き込まれた時点で、残りの５６個のデータの書込みが終了し、スロット１集合体を構成するデータが全て書き込まれたことになる。従って、第１列〜第７列の５６個のブロックそれぞれは、４個のアドレスに対応する領域全てにデータが書き込まれるが、一方、第８列のブロック８、…、ブロック５６、ブロック６４は、４個のアドレスに対応する領域のうち、１個のアドレスに対応する領域にのみデータが書き込まれ、残りの３個のアドレスに対応する領域にはデータが書き込まれないことになる。
【０１１９】
スーパーフレーム１についてのデータは、図１１を参照しながら説明したように、行方向Ｌに書き込まれて列方向Ｒに読み出されることによりデインターリーブされるが、スーパーフレーム２についてのデータは、スーパーフレーム１とは反対に、図１２、図１３を参照しながら説明したようにして列方向Ｒに書き込まれると、行方向Ｌに読み出されてデインターリーブされる。
【０１２０】
具体的には、アドレスが、アドレス０〜アドレス２８まで順次インクリメントされて指定され、第１行のブロック１、２、…、８のデータが行方向Ｌに読み出され、データ１＿１〜データ１＿２０３が読み出される。以下、同様にして、行方向Ｌへのデータの読出しを第２行〜第８行のブロックについて、順次行うことにより、スーパーフレーム２を構成するデータが全てデインターリーブされて読み出される。このとき、第ｎ行のブロックに書き込まれたデータが読み出された直後に、その第ｎ行のブロックに、図１１を参照しながら説明した手順でスーパーフレーム１のデータが行方向Ｌに順次書き込まれる。従って、第８行のブロックに書き込まれたスーパーフレーム２についてのデータが読み出された直後に、その第８行のブロックに、図１１を参照しながら説明した手順で新たなスーパーフレーム１についてのデータが行方向Ｌに順次書き込まれる。これにより、新たなスーパーフレーム１のスロット１集合体を構成する全てのデータの書込が終了する。以下、図１１〜図１３を参照しながら説明した手順で、データの読出方向及び書込方向を、行方向Ｌ及び列方向Ｒに交互に変えながら、送信機１００でインターリーブされたデータが、受信機１１０で次々にデインターリーブされる。
【０１２１】
先に説明した第１の送受信システムでは、１個のアドレスに対応する領域に１ｂｙｔｅ分のデータを書き込んで、１ｂｙｔｅ／ｗｏｒｄとしたが、第２の送受信システムでは、１個のアドレスに対応する領域に７ｂｙｔｅ分のデータを書き込んで、７ｂｙｔｅ／ｗｏｒｄとしている。このように、１ｗｏｒｄを複数のバイトにすると、メモリ５１の他に、送信機１００から送信されてきたデータを一旦書き込むためのバッファ５２ａが必要となるが、このバッファ５２ａの容量は、上述したように、６４ｂｙｔｅ＝５１２ｂｉｔと極めて少ない容量で済む。つまり、第２の送受信システムでは、バッファ５２ａに必要な容量と、メモリ５１に必要な容量との和は、５１２ｂｉｔ＋０．６４Ｍｂｉｔ≒０．６４Ｍｂｉｔである。従って、第２の送受信システムは、受信機のメモリに２つのスーパーフレーム分の容量（約１．２５Ｍｂｉｔ）が必要な従来の送受信システムと比較して、やはり少ないメモリ容量でデータをデインターリーブすることができる。
【０１２２】
また、第１の送受信システムでは、メモリ１１０ａに１ｂｙｔｅ／ｗｏｒｄのデータが書き込まれるため、メモリ１１０ａには、図４〜図６に示すように、０番地〜１６６３番地のアドレスが必要であるが、一方、第２の送受信システムでは、メモリ５１に７ｂｙｔｅ／ｗｏｒｄのデータが書き込まれるため、そのメモリ５１には、図１１〜図１３に示すように、０番地〜２５５番地のアドレスを用意するだけで済む。従って、１ｗｏｒｄを複数ｂｙｔｅにすると、メモリに必要なアドレスが少なくてすみアドレス生成回路の構成が簡単になるという利点がある。また、１ｗｏｒｄを複数ｂｙｔｅにすると、１つのアドレスに対応する領域に、一度に複数ｂｙｔｅのデータを書き込むことができるため、アクセス速度の遅いメモリを用いても、効率よくデータを書き込むことができるという利点がある。
【０１２３】
ところで、第１、第２の送受信システムでは、いずれも、８個のフレームそれぞれを構成する同一番号のスロットから成るスロット集合体（つまり、８個のスロットから成るスロット集合体）を構成するデータを、８行８列のブロックから成るマトリックス構造に配列してデインターリーブしている。つまり、マトリックス構造は、行方向Ｌに並ぶブロックの数と、列方向Ｒに並ぶブロックの数とが等しい構造を有している。このように、行方向Ｌに並ぶブロックの数と、列方向Ｒに並ぶブロックの数とを等しくすると、８個のスロットから成るスロット集合体を構成するデータを、行方向もしくは列方向のどちらの方向から書き込んでも、メモリの、データが書き込まれないメモリセルの数が最小限に抑えられ、メモリに、効率よくデータを書き込むことができる。
【０１２４】
尚、第１、第２の送受信システムでは、インターリーブされた複数のデータを８行８列のブロックから成るマトリックス構造に配列し、行方向Ｌに並ぶブロックの数と、列方向Ｒに並ぶブロックの数とを等しくしているが、本発明では、インターリーブされた複数のデータを、行方向及び列方向に同じ数だけ配列されたブロックから成るマトリックス構造に配列する必要はなく、ブロックの数は、行方向及び列方向で異なっていてもよく、メモリに現在書き込まれている複数のデータの次にそのメモリに書き込む複数のデータの書込方向を、現在書き込まれている複数のデータが読み出されるときの読出方向と同一方向若しくは反対方向にすることにより、やはり、インターリーブされた複数のデータをデインターリーブするためにかかるコストを削減することができる。
【０１２５】
また、第１、第２の送受信システムでは、受信機に備えられたメモリにインターリブされた複数のデータを書き込み、そのメモリに書き込まれたデータをデインターリーブして読み出す例を取り上げて、データの並べかえが低コストで行われる様子が示されているが、送信機側で行われるデータの並べかえについても、本発明のデータ書込読出方法を採用することにより、やはり低コストで行うことができる。
【０１２６】
【発明の効果】
以上説明したように、本発明によれば、コストの削減が図られたデータ書込読出方法、デインターリーブ方法、データ処理方法、メモリ、及びメモリ駆動装置が得られる。
【図面の簡単な説明】
【図１】第１の送受信システムの一例を示す図である。
【図２】構成されるスーパーフレームを示す模式図である。
【図３】フレーム１のスロット１のデータ１＿１から数えて、インターリーブ方向に２０３個のデータが読み出される様子を示す模式図である。
【図４】データが、８行８列に並ぶ６４個のブロックを有するマトリックス構造に配列された様子を示す図である。
【図５】もう一方のスーパーフレーム２を構成する２０３ｂｙｔｅ分のデータが、ブロック１、ブロック９、…、ブロック４９、ブロック５７に書き込まれた様子を示す概念図である。
【図６】スーパーフレーム２を構成するスロット１集合体全てのデータが書き込まれた様子を示す概念図である。
【図７】送受信システムにおける受信機を示す概略図である。
【図８】バッファにデータが書き込まれた様子を示す概念図である。
【図９】第１列のアドレス０、アドレス８、…、アドレス５６に対応する領域に、新たなデータが書き込まれた様子を示す概念図である。
【図１０】第８列のアドレスに対応する領域に書き込まれた７個のデータ８＿１〜データ８＿７が読み出された直後の様子を示す概念図である。
【図１１】バッファ５２ａから送信されてきた、一旦インターリーブされた７個のデータからなる各データ群が、マトリックス構造に順次書き込まれた様子を示す概念図である。
【図１２】スーパーフレーム２を構成する２０３ｂｙｔｅ分のデータが、ブロック１、…、ブロック４９、ブロック５７に書き込まれた様子を示す概念図である。
【図１３】スーパーフレーム２のスロット１集合体を構成する全てのデータが書き込まれた様子を示す概念図である。
【符号の説明】
５０，１１０  受信機
５１，１００ｂ，１１０ｂ  メモリ
５２，１００ａ，１１０ｂ  メモリ駆動装置
５２ａ  バッファ
１００  送信機
【図１】
0004097852.tif 000002
【図２】
0004097852.tif 000003
【図３】
0004097852.tif 000004
【図４】
0004097852.tif 000005
【図５】
0004097852.tif 000006
【図６】
0004097852.tif 000007
【図７】
0004097852.tif 000008
【図８】
0004097852.tif 000009
【図９】
0004097852.tif 000010
【図１０】
0004097852.tif 000011
【図１１】
0004097852.tif 000012
【図１２】
0004097852.tif 000013
【図１３】
0004097852.tif 000014