(57)【要約】【課題】  デッドロックの発生を未然に防止することができ、リングバッファを用いたデータ記録再生システムを安定して制御することができるリングバッファ制御方法及びリングバッファ装置及びデータ記録再生装置を提供する。【解決手段】  データを読み出し中の記憶領域を指すリードポインタと、データの書き込みが完了した記憶領域を指すライトポインタと、データの書き込みが可能な記憶領域を指す書き込み可能ポインタとをリングバッファ上で仮想的に移動又は待機させることにより、リングバッファからのデータの読み出しと、リングバッファへのデータの書き込みを制御するリングバッファ制御方法及びリングバッファ装置及びデータ記録再生装置において、リングバッファからのデータの読み出し中又はリングバッファへのデータの書き込み中に、リードポインタとライトポインタとの両方が待機状態となった場合に、リードポインタとライトポインタのうち先に待機状態となった一方のポインタを強制的に移動可能とすることとした。【選択図】図2
2005309698.tif 000002
【特許請求の範囲】
【請求項１】
データを読み出し中の記憶領域を指すリードポインタと、データの書き込みが完了した記憶領域を指すライトポインタと、データの書き込みが可能な記憶領域を指す書き込み可能ポインタとをリングバッファ上で仮想的に移動又は待機させることにより、前記リングバッファからのデータの読み出しと、前記リングバッファへのデータの書き込みを制御するリングバッファ制御方法において、
前記リングバッファからのデータの読み出し中又は前記リングバッファへのデータの書き込み中に、前記リードポインタと前記ライトポインタとの両方が待機状態となった場合に、前記リードポインタと前記ライトポインタのうち先に待機状態となった一方のポインタを強制的に移動可能とすることを特徴とするリングバッファ制御方法。
【請求項２】
データを読み出し中の記憶領域を指すリードポインタと、データの書き込みが完了した記憶領域を指すライトポインタと、データの書き込みが可能な記憶領域を指す書き込み可能ポインタとをリングバッファ上で仮想的に移動又は待機させるバッファコントローラを有するリングバッファ装置において、
前記バッファコントローラは、前記リングバッファからのデータの読み出し中又は前記リングバッファへのデータの書き込み中に、前記リードポインタと前記ライトポインタとの両方が待機状態となった場合に、前記リードポインタと前記ライトポインタのうち先に待機状態となった一方のポインタを強制的に移動可能としたことを特徴とするリングバッファ装置。
【請求項３】
データを読み出し中の記憶領域を指すリードポインタと、データの書き込みが完了した記憶領域を指すライトポインタと、データの書き込みが可能な記憶領域を指す書き込み可能ポインタとをリングバッファ上で仮想的に移動又は待機させるバッファコントローラを有するデータ記憶再生装置において、
前記バッファコントローラは、前記リングバッファからのデータの読み出し中又は前記リングバッファへのデータの書き込み中に、前記リードポインタと前記ライトポインタとの両方が待機状態となった場合に、前記リードポインタと前記ライトポインタのうち先に待機状態となった一方のポインタを強制的に移動可能としたことを特徴とするデータ記憶再生装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リングバッファ制御方法及びリングバッファ装置及びデータ記録再生装置に関するものである。
【背景技術】
【０００２】
従来より、データ記録再生装置には、データを記録又は再生する際に、データ入力部とデータ出力部でのデータの入出力速度の差を緩和するためにバッファ装置を設けていた。
【０００３】
このバッファ装置は、データを所定期間保持可能なメモリにより構成しており、このメモリが有する限られたメモリ容量で大量のデータを取り扱う必要があったため、リングバッファと呼ばれるメモリを用いて、メモリへのデータの書き込みと、メモリからのデータの読み出しを行うようにしていた。
【０００４】
このリングバッファ100は、図4（a）に示すように、メモリ領域が複数個の記憶領域101に分割されており、各記憶領域101には順番に0番地〜N番地のアドレスが与えられ、N＋1番地のアドレスを0とすることにより、図4（b）に示すような、仮想的にリング状のリングバッファ100を形成したものである（たとえば、特許文献１参照。）。
【０００５】
なお、図4（b）では、3番地〜N−2番地までのアドレスの記憶領域を省略している。
【０００６】
このようなリングバッファ100を有するリングバッファ装置は、データを読み出し中の記憶領域101のアドレスをリードポインタ（以下、「RP」という。）とし、データの書き込みが完了した記憶領域101のアドレスをライトポインタ（以下、「WP」という。）とし、データの読み出しが既に完了してデータの書き込みが可能な記憶領域101のアドレスを書き込み可能ポインタ（以下、「RP’」という。）として管理するバッファコントローラを有している。
【０００７】
特に、RP'は、RP'＝RP−Mと定義することにより、RPからM個前のアドレスを有する記憶領域を指すポインタとする場合が多い。
【０００８】
そして、バッファコントローラは、リングバッファ100上でRPとWPとRP'とを移動又は待機させることにより、リングバッファ100上でのデータの書き込み状態とデータの読み出し状態とを監視しながらデータの書き込みとデータの読み出しとを行うようにしていた。
【０００９】
通常、このバッファコントローラは、RPとWPとRP'との全てをそれぞれ移動させることにより、データの書き込みとデータの読み出しとを同時に行うようにしているが、リングバッファ100は、仮想的にリング状のバッファとなっているため、RPを移動させることによってRP＝WP＋1となる場合があった。
【００１０】
この場合は、RPがWPを追い越すこととなってしまい、データが書き込まれていない記憶領域からデータを読み出すこととなり誤ったデータを読み出すおそれがあった。
【００１１】
そのため、このような場合は、WPが移動するまでの間RPを待機状態にしてデータの読み出し処理を中断させていた。
【００１２】
そして、WPが移動を開始した後に、RPを移動させてデータの読み出しを再開させるようにしていた。
【００１３】
また、WPを移動させることによって、WP＝RP'となる場合があった。
【００１４】
この場合は、RP’＋1以降の記憶領域には、まだ読み出されていないデータが書き込まれたままの状態であるため、RP'が移動するまでの間WPを待機状態にしてデータの書き込み処理を中断させていた。
【００１５】
そして、RP'が移動を開始した後に、WPを移動させてデータの書き込みを再開させていた。
【特許文献１】特開2002-351740号公報
【発明の開示】
【発明が解決しようとする課題】
【００１６】
ところが、上記従来のリングバッファ装置において、RP'を定義するために用いる所定の自然数のMを設定する際に、M=１が誤って設定されるおそれがあった。
【００１７】
このように、M=1と設定されると、RP'＝RP−1となるために、RP＝WP＋1となると同時にWP＝RP'となる場合があった。
【００１８】
この場合は、RP＝WP＋1となっているので、WPが移動するまでの間RPは待機状態であり、さらに、WP＝RP'となっているのでWPも待機状態になってしまう。
【００１９】
そのため、この場合は、データの書き込みと、データの読み出しとの両方の処理を行うことができなくなるデッドロックが発生するおそれがあった。
【課題を解決するための手段】
【００２０】
そこで、請求項1に係る本発明では、データを読み出し中の記憶領域を指すリードポインタと、データの書き込みが完了した記憶領域を指すライトポインタと、データの書き込みが可能な記憶領域を指す書き込み可能ポインタとをリングバッファ上で仮想的に移動又は待機させることにより、リングバッファからのデータの読み出しと、リングバッファへのデータの書き込みを制御するリングバッファ制御方法において、リングバッファからのデータの読み出し中又はリングバッファへのデータの書き込み中に、リードポインタとライトポインタとの両方が待機状態となった場合に、リードポインタとライトポインタのうち先に待機状態となった一方のポインタを強制的に移動可能とすることとした。
【００２１】
また、請求項2に係る本発明では、データを読み出し中の記憶領域を指すリードポインタと、データの書き込みが完了した記憶領域を指すライトポインタと、データの書き込みが可能な記憶領域を指す書き込み可能ポインタとをリングバッファ上で仮想的に移動又は待機させるバッファコントローラを有するリングバッファ装置において、バッファコントローラは、リングバッファからのデータの読み出し中又はリングバッファへのデータの書き込み中に、リードポインタとライトポインタとの両方が待機状態となった場合に、リードポインタとライトポインタのうち先に待機状態となった一方のポインタを強制的に移動可能とした。
【００２２】
また、請求項3に係る本発明では、データを読み出し中の記憶領域を指すリードポインタと、データの書き込みが完了した記憶領域を指すライトポインタと、データの書き込みが可能な記憶領域を指す書き込み可能ポインタとをリングバッファ上で仮想的に移動又は待機させるバッファコントローラを有するデータ記憶再生装置において、バッファコントローラは、リングバッファからのデータの読み出し中又はリングバッファへのデータの書き込み中に、リードポインタとライトポインタとの両方が待機状態となった場合に、リードポインタとライトポインタのうち先に待機状態となった一方のポインタを強制的に移動可能とした。
【発明の効果】
【００２３】
本発明では以下に記載するような効果を奏する。
【００２４】
請求項1に係る本発明では、データを読み出し中の記憶領域を指すリードポインタと、データの書き込みが完了した記憶領域を指すライトポインタと、データの書き込みが可能な記憶領域を指す書き込み可能ポインタとをリングバッファ上で仮想的に移動又は待機させることにより、リングバッファからのデータの読み出しと、リングバッファへのデータの書き込みを制御するリングバッファ制御方法において、リングバッファからのデータの読み出し中又はリングバッファへのデータの書き込み中に、リードポインタとライトポインタとの両方が待機状態となった場合に、リードポインタとライトポインタのうち先に待機状態となった一方のポインタを強制的に移動可能とすることとしたため、デッドロックの発生を未然に防止することができ、リングバッファを用いたデータ記録再生システムを安定して制御することができる。
【００２５】
また、請求項2に係る本発明では、データを読み出し中の記憶領域を指すリードポインタと、データの書き込みが完了した記憶領域を指すライトポインタと、データの書き込みが可能な記憶領域を指す書き込み可能ポインタとをリングバッファ上で仮想的に移動又は待機させるバッファコントローラを有するリングバッファ装置において、バッファコントローラは、リングバッファからのデータの読み出し中又はリングバッファへのデータの書き込み中に、リードポインタとライトポインタとの両方が待機状態となった場合に、リードポインタとライトポインタのうち先に待機状態となった一方のポインタを強制的に移動可能としたため、デッドロックの発生を未然に防止することができ、リングバッファを用いたデータ記録再生システムを安定して制御することができるリングバッファ装置を提供することができる。
【００２６】
また、請求項3に係る本発明では、データを読み出し中の記憶領域を指すリードポインタと、データの書き込みが完了した記憶領域を指すライトポインタと、データの書き込みが可能な記憶領域を指す書き込み可能ポインタとをリングバッファ上で仮想的に移動又は待機させるバッファコントローラを有するデータ記憶再生装置において、バッファコントローラは、リングバッファからのデータの読み出し中又はリングバッファへのデータの書き込み中に、リードポインタとライトポインタとの両方が待機状態となった場合に、リードポインタとライトポインタのうち先に待機状態となった一方のポインタを強制的に移動可能としたため、デッドロックの発生を未然に防止することができ、リングバッファを用いたデータ記録再生システムを安定して制御することができるデータ記憶再生装置を提供することができる。
【発明を実施するための最良の形態】
【００２７】
本発明に係るデータ記録装置は、データを記録又は再生する際に、データ入力部とデータ出力部でのデータの入出力速度の差を緩和するバッファ装置を設けている。
【００２８】
このバッファ装置は、データの書き込み又はデータの読み出しが可能なバッファと、このバッファへのデータの書き込み及びバッファからのデータの読み出しを制御するバッファコントローラとを有している。
【００２９】
また、バッファは、それぞれにアドレスを与えた複数の記憶領域に分割されており、この複数の記憶領域の最終アドレスの次のアドレスをこの複数の記憶領域の先頭アドレスにすることで仮想的にリング状のバッファを形成したリングバッファである。
【００３０】
また、バッファコントローラは、データを読み出し中の記憶領域を指すリードポインタと、データの書き込みが完了した記憶領域を指すライトポインタと、データの書き込みが可能な記憶領域を指す書き込み可能ポインタとをリングバッファ上で仮想的に移動又は待機させることにより、リングバッファからのデータの読み出しと、リングバッファへのデータの書き込みを制御するものである。
【００３１】
特に、このバッファコントローラは、リングバッファからのデータの読み出し中又はリングバッファへのデータの書き込み中に、リードポインタとライトポインタとの両方が待機状態となった場合に、リードポインタとライトポインタのうち先に待機状態となった一方のポインタを強制的に１つ先のアドレスの記憶領域に移動可能にし、この移動可能にしたポインタを移動させることによってリードポインタとライトポインタのうち、後に待機状態となった他方のポインタを移動可能な状態にするようにしている。
【００３２】
これにより、リードポインタとライトポインタとの両方のポインタが待機状態になることに起因してリングバッファからのデータの読み出しと、リングバッファへのデータの書き込みとの両方の処理が共にできなくなるデッドロック状態を回避することができるため、リングバッファを用いたデータ記録再生システムを安定して制御することができる。
【００３３】
以下に、本発明に係るデータ記録再生装置について図面を参照しながら具体的に説明する。
【００３４】
データ記録再生装置1は、図1に示すように、ピックアップ部2と、チャネル部3と、信号変換部4と、リングバッファ装置5と、データ再生部6と、主記憶部7と、主制御部8とを有している。
【００３５】
ピックアップ部2は、光ディスク18からデータを読み出すとともに、光ディスク18へデータを書き込む光ピックアップと、この光ピックアップを動作させるサーボ回路とから構成している。
【００３６】
チャネル部3は、光ピックアップから読み出したデータ及び信号変換部4から入力されるデータ信号の波形整形を行う波形整形回路により構成している。
【００３７】
信号変換部4は、チャネル部3から入力されるデータ信号をエンコードするとともに、リングバッファ装置5から入力されるデータ信号をデコードする信号変換回路により構成している。
【００３８】
リングバッファ装置5は、データの書き込み又はデータの読み出しが可能なリングバッファ9（図2参照）と、このリングバッファ9へのデータの書き込み及びリングバッファ9からのデータの読み出しを制御するバッファコントローラ10（図2参照）とから構成している。
【００３９】
リングバッファ9は、メモリ領域が複数個の記憶領域に分割されており、各記憶領域には順番に0番地〜N番地のアドレスが与えられ、N＋1番地のアドレスを0とすることにより、仮想的にリング状のバッファを形成したものである。
【００４０】
主記憶部7は、リングバッファ装置5から読み出したデータ信号を記憶するハードディスクにより構成している。
【００４１】
データ再生部6は、リングバッファ装置5から読み出したデータを増幅する増幅回路と、増幅回路により増幅したデータ信号を再生するスピーカーやディスプレイ等からなる再生手段により構成している。
【００４２】
主制御部8は、これらピックアップ部2、チャネル部3、信号変換部4、リングバッファ装置5、データ再生部6、主記憶部7の動作を制御するCPUにより構成している。
【００４３】
特に、バッファコントローラ10は、図2に示すように、主制御部8からの制御信号に基づいてリングバッファ9にデータを書き込むとともに、リングバッファ9からデータを読み出すRW（Read Write）手段11と、リングバッファ9上でデータを読み出し中の記憶領域を指すリードポインタ（以下、「RP」という。）を制御するRP制御手段12と、同じくリングバッファ9上でデータの書き込みが完了した記憶領域を指すライトポインタ（以下、「WP」という。）を制御するWP制御手段14と、データの書き込みが可能な記憶領域を指す書き込み可能ポインタ（以下、「RP'」という。）を制御するRP'制御手段13と、リングバッファ9上のWPを仮想的に移動又は待機させるWP_wait手段15と、リングバッファ9上のRPを仮想的に移動又は待機させるRP_wait手段16と、リングバッファ9からのデータの読み出し中又はリングバッファ9へのデータの書き込み中に、RPとWPとの両方が待機状態となった場合に、RPとWPのうち先に待機状態となった一方のポインタを強制的に移動可能な状態にしたことを記憶するmove_pntr手段17とを有している。
【００４４】
特に、このmove_pntr手段17は、RPとWPとの両方が待機状態となった際、WPの方が後に待機状態となった場合に、「1」というデータが記憶されている状態となり、RPの方が後に待機状態となった場合に、「0」というデータが記憶されている状態となるようにしている。
【００４５】
また、RP_wait手段16は、RPが待機状態である場合に「1」というデータを記憶し、RPが移動可能状態である場合に「0」というデータを記憶するようにしている。
【００４６】
また、WP_wait手段15は、WPが待機状態である場合に「1」というデータを記憶し、WPが移動可能状態である場合に「0」というデータを記憶するようにしている。
【００４７】
また、RP'は、RP'＝RP−Mで定義することにより、RPからM個前のアドレスを有する記憶領域を指すポインタである。
【００４８】
次に、このように構成したバッファコントローラ10による、リングバッファ制御について、図3に示すフローチャートを用いて説明する。
【００４９】
まず、主制御部8からの制御信号に基づいて、リングバッファ9からのデータの読み出しとリングバッファ9へのデータの書き込みを同時に行うか否かの選択を行う（ステップS1）。
【００５０】
ステップS1において、リングバッファ9からのデータの読み出しとリングバッファ9へのデータの書き込みを同時に行う場合は、RW手段11によりRPとWPとを共に仮想的に1個先の記憶領域に移動させた後、このリングバッファ制御を終了する（ステップS2）。
【００５１】
また、ステップS１において、リングバッファ9からのデータの読み出しとリングバッファ9へのデータの書き込みを同時に行わない場合は、処理をステップS3に移す。
【００５２】
ステップS3では、主制御部8からの制御信号に基づいてリングバッファ9からデータを読み出すか、又は、リングバッファ9へデータを書き込むかのいずれかを選択する。
【００５３】
ステップS3において、リングバッファ9からデータを読み出す場合は、処理をステップS4へ移し、リングバッファ9へデータを書き込む場合は、処理をステップS14へ移す。
【００５４】
ステップS4では、RP_wait手段16に記憶しているデータが「0」であるか否かを判定することによってRPが移動可能な状態であるか否かを判定する。
【００５５】
ここで、RP_wait手段16に記憶しているデータが「0」でなく「1」である場合は、処理をステップS8へ移すことでRPは待機状態となる。
【００５６】
一方、RP_wait手段16に記憶しているデータが「0」である場合は、RPが移動可能な状態であるので、RPが指している記憶領域の1個先の記憶領域からデータの読み出しを行うとともに、RW手段11によりRPを仮想的に1個先の記憶領域に移動させる。
【００５７】
このとき、同時に、move_pntr手段17に「0」というデータを記憶させ、その後、処理をステップS6へ移す（ステップS5）。
【００５８】
次に、ステップS6では、ステップS5で移動させたRPがN番地（最終アドレス）の次の番地の記憶領域を指しているか否かを判定し、RPがN番地の次の番地の記憶領域を指していると判定した場合は、処理をステップS7へ移し、RPがN番地の次の番地の記憶領域を指していないと判定した場合は、処理をステップS8へ移す。
【００５９】
ステップS7では、RPが0番地（先頭アドレス）の記憶領域を指すように設定して処理をステップS8へ移す。
【００６０】
ステップS8では、RPがWPよりも先の記憶領域に仮想的に移動しているか否かの判定を行い、RPがWPよりも先の記憶領域に仮想的に移動していると判定した場合は、処理をステップS9に移し、RPがWPよりも先の記憶領域に仮想的に移動していないと判定した場合は、処理をステップS10に移す。
【００６１】
ステップS9では、RP_wait手段16に1というデータを記憶させることによりRPを待機状態にし、その後、処理をステップS11に移す。
【００６２】
また、ステップS10では、RP_wait手段16に「0」というデータを記憶させることにより、RPを移動可能な状態にしてこのリングバッファ制御を終了する。
【００６３】
次に、ステップS11では、WPとRP'とが同一の記憶領域を指しているか否かの判定を行い、WPとRP'とが同一の記憶領域を指していると判定した場合は、処理をステップS12に移し、WPとRP'とが同一の記憶領域を指していないと判定した場合は、処理をステップS13に移す。
【００６４】
ステップS13では、WP_wait手段15に「0」というデータを記憶させることにより、WPを移動可能な状態にしてこのリングバッファ制御を終了する。
【００６５】
また、ステップS12では、WP_wait手段15に「1」というデータを記憶させることによりWPを待機状態にし、その後、処理をステップS24に移す。
【００６６】
また、ステップS3において、リングバッファ9にデータを書き込むことを選択した場合に、ステップS14では、WP_wait手段15に記憶しているデータが「0」であるか否かを判定することによってWPが移動可能な状態であるか否かを判定する。
【００６７】
ここで、WP_wait手段15に記憶しているデータが「0」でなく「1」である場合は、処理をステップS18へ移すことでWPは待機状態となる。
【００６８】
また、WP_wait手段15に記憶しているデータが「0」である場合は、WPが移動可能な状態であるので、WPが指している記憶領域の1個先の記憶領域にデータの書き込みを行うとともに、RW手段11によりWPを仮想的に1個先の記憶領域に移動させる。
【００６９】
このとき、同時に、move_pntr手段17に「１」というデータを記憶させた後、処理をS13へ移す（ステップS15）。
【００７０】
次に、ステップS15で移動させたWPがN番地（最終アドレス）次の番地の記憶領域を指しているか否かを判定し、WPがN番地の次の番地の記憶領域を指していると判定した場合は、処理をステップS17へ移し、WPがN番地の次の番地の記憶領域を指していないと判定した場合は、処理をステップS18へ移す（ステップS16）。
【００７１】
ステップS17では、WPが0番地（先頭アドレス）の記憶領域を指すように設定して処理をステップS18へ移す。
【００７２】
次に、ステップS18では、WPとRP'とが同一の記憶領域を指しているか否かの判定を行い、WPとRP'とが同一の記憶領域を指していると判定した場合は、処理をステップS19に移し、WPとRP'とが同一の記憶領域を指していないと判定した場合は、処理をステップS20に移す。
【００７３】
ステップS20では、WP_wait手段15に「0」というデータを記憶させることにより、WPを移動可能な状態にしてこのリングバッファ制御を終了する。
【００７４】
また、ステップS19では、WP_wait手段15に「1」というデータを記憶させることによりWPを待機状態にし、その後、処理をステップS21に移す。
【００７５】
ステップS21では、RPがWPよりも先の記憶領域に仮想的に移動しているか否かの判定を行い、RPがWPよりも先の記憶領域に仮想的に移動していると判定した場合は、処理をステップS22に移し、RPがWPよりも先の記憶領域に仮想的に移動していないと判定した場合は、処理をステップS23に移す。
【００７６】
また、ステップS23では、RP_wait手段16に「0」というデータを記憶させることにより、RPを移動可能な状態にしてこのリングバッファ制御を終了する。
【００７７】
ステップS22では、RP_wait手段16に「1」というデータを記憶させることによりRPを待機状態にし、その後、処理をステップS24に移す。
【００７８】
次に、ステップS24では、RP_wait手段16とWP_wait手段15とがともに「1」というデータを記憶しているか否かを判定する。
【００７９】
つまり、ここではPRとWRとの両方が待機状態となるデッドロック状態であるか否かを判定する。
【００８０】
ステップS24において、デッドロック状態ではないと判定した場合は、このリングバッファ制御を終了する。
【００８１】
一方、ステップS24において、デッドロック状態であると判定した場合は、move_pntr手段17が「1」というデータを記憶している状態であるか否かの判定を行う（ステップS25）。
【００８２】
つまり、ここでは、デッドロック状態になる直前にWPとRPとのどちらのポインタが移動していたかを判定している。
【００８３】
次に、ステップS25において、move_pntr手段17に「1」というデータが記憶されている状態であり、デッドロック状態になる直前にWPが移動していたと判定した場合は、RP_wait手段16に「0」というデータを記憶させることによってRPの待機を解除し、RPを強制的に1個先の記憶領域に移動可能とした後、このリングバッファ制御を終了する（ステップS26）。
【００８４】
これにより、RPが1個先の記憶領域に移動することで待機状態であったWPが移動可能となりデッドロック状態を回避することができる。
【００８５】
また、ステップS25において、move_pntr手段17に「0」というデータが記憶されている状態であり、デッドロック状態になる直前にRPが移動していたと判定した場合は、WP_wait手段15に「0」というデータを記憶させることによってWPの待機を解除し、WPを強制的に1個先の記憶領域に移動可能とした後、このリングバッファ制御を終了する（ステップS27）。
【００８６】
これにより、WPが1個先の記憶領域に移動することで待機状態であったRPが移動可能となりデッドロック状態を回避することができる。
【図面の簡単な説明】
【００８７】
【図１】本発明に係るデータ記録再生装置を示すブロック図である。
【図２】本発明に係るリングバッファ装置を示すブロック図である。
【図３】本発明に係るリングバッファ制御方法を示すフローチャートである。
【図４】リングバッファを示す説明図である。
【符号の説明】
【００８８】
１  データ記録再生装置
２  ピックアップ部
３  チャネル部
４  信号変換部
５  リングバッファ装置
６  データ再生部
７  主記憶部
８  主制御部
９  リングバッファ
１０  バッファコントローラ
１１  RW手段
１２  RP制御手段
１３  RP'制御手段
１４  WP制御手段
１５  WP_wait手段
１６  RP_wait手段
１７  move_pntr手段
１８  光ディスク
【図１】
2005309698.tif 000003
【図２】
2005309698.tif 000004
【図３】
2005309698.tif 000005
【図４】
2005309698.tif 000006