(57)【要約】【課題】  情報記録媒体へのアクセスを極力減らし、読み書き時間を短縮することが可能な情報記録再生装置を提供する。【解決手段】  アプリケーションプログラム１又はファイルシステム２は、キャッシュバッファ領域５３内の所定データを書き換え禁止に設定する手段を具備する。これにより、再度読み出すことがわかっているデータを書き換え禁止に設定すれば、キャッシュバッファ内から削除されることがないため、再度の読み出し或いは書き込み時にディスク８へのアクセスが発生せず、読み書き時間を短縮できる。【選択図】        図１
2006163801.tif 000002
【特許請求の範囲】
【請求項１】
キャッシュバッファを有し、アプリケーションプログラムからファイルシステムを通して入出力データを指示する情報記録再生装置において、前記アプリケーションプログラム又はファイルシステムは前記キャッシュバッファ内の所定データを書き換え禁止に設定する手段を有することを特徴とする情報記録再生装置。
【請求項２】
前記キャッシュバッファはＥＣＣブロック単位で制御され、前記書き換え禁止はＥＣＣブロック単位で設定することを特徴とする請求項１に記載の情報記録再生装置。
【請求項３】
前記入出力データは、ＥＣＣブロックサイズよりも小さいことを特徴とする請求項１に記載の情報記録再生装置。
【請求項４】
前記入出力データが、ＥＣＣブロック単位で指定された場合には、前記キャッシュバッファを通さずにメモリ上の所定位置に該データを直接読み出すことを特徴とする請求項１に記載の情報記録再生装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、光ディスク等の記録媒体に情報を記録或いは再生する情報記録再生装置、特に、カムコーダやＤＶＤレコーダ等に用いられる情報記録再生装置に好適なキャッシュバッファ制御技術に関するものである。
【背景技術】
【０００２】
従来、カムコーダやＤＶＤレコーダ等に内蔵されたディスク記録再生装置には、ディスクから読み出したデータを一時的に貯めるキャッシュバッファが設けられている。このようなキャッシュバッファを用いることにより、ディスクから読み出すデータがキャッシュバッファ内に存在すれば、ディスクにアクセスすることなくキャッシュバッファからデータを取り出すことができる。従来のキャッシュバッファに関する技術は、例えば、特開２００１−０１４１０９号公報等に記載されている。
【特許文献１】特開２００１−０１４１０９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
従来のキャッシュバッファ技術では、貯めるデータをアプリケーションプログラムやファイルシステムから制御できず、単に古いデータを新たに読み出されたデータに置き換えるだけなので、再度読み出すことがわかっているデータもキャッシュバッファ上になければ、再度の読み出し時にディスクへのアクセスが発生して時間がかかってしまうという問題があった。特開２００１−０１４１０９号公報に開示されている技術は、キャッシュバッファ領域のデータに重み付けを行い、重みが最小のデータから上書きしていくというもので、必要なデータがキャッシュ内に残っている可能性は高くなるが、重み付けは自動的に行われるのでアプリケーションやファイルシステムが明示的に指定することはできなかった。
【０００４】
本発明の目的は、情報記録媒体へのアクセスを極力減らし、読み書き時間を短縮することが可能な情報記録再生装置を提供することにある。
【課題を解決するための手段】
【０００５】
本発明は、上記目的を達成するため、キャッシュバッファを有し、アプリケーションプログラムからファイルシステムを通して入出力データを指示する情報記録再生装置において、前記アプリケーションプログラム又はファイルシステムは前記キャッシュバッファ内の所定データを書き換え禁止に設定する手段を有することを特徴とする。
【０００６】
本発明においては、アプリケーションプログラムやファイルシステムがキャッシュバッファ内の所定データを書き換え禁止に設定する手段を有することにより、再度読み出すことがわかっているデータを書き換え禁止に設定すれば、キャッシュバッファ内から削除されることがないため、再度の読み出し或いは書き込み時に情報記録媒体へのアクセスが発生せず、読み書き時間を短縮することができる。
【発明の効果】
【０００７】
本発明によれば、再度読み出すことがわかっているデータを書き換え禁止に設定することにより、再度の読み出し或いは書き込み時に情報記録媒体へのアクセスが発生しないため、読み書き時間を短縮することができる。
【発明を実施するための最良の形態】
【０００８】
次に、発明を実施するための最良の形態について図面を参照して詳細に説明する。図１は本発明に係る情報記録再生装置の一実施形態の構成を示すブロック図である。図中１は、アプリケーションプログラムであり、入出力デバイス３を通してデータ１０の入出力を制御し、コーデック４にデータ１０のエンコードとデコードを指示する。また、メモリ５上に符号化されたデータを蓄積すると共に、光ディスク等の情報記録媒体であるディスク８上へのデータの記録又は再生や編集等をファイルシステムドライバー２に指示する。メモリ５内には、キャッシュバッファ領域が設けられている。
【０００９】
ファイルシステムドライバー２は、ディスク８上の空き領域やファイルの記録位置を調べて、ディスクコントローラ６にディスク８に対するデータの読み書きの指示を与える。この時、アプリケーションプログラム１はデータのディスク８上の位置を考慮する必要はなく、ファイルシステムドライバー２がディスク８上の空き領域を探して記録したり、データのディスク８上の位置を検索して読み出す。
【００１０】
ディスクコントローラ６はメモリ５上のデータをディスク８上へ書き込んだり、ディスク８上のデータをメモリ５上に読み出す。９はディスク８上に書き込まれた実際のデータであり、７の記録再生ヘッドによりディスク８に読み書きを行う。本実施形態においては、一つのファイルは連続した領域に記録されていても、異なる領域に記録された複数のデータであってもよく、ファイルの一部を成す連続領域に記録された一塊のデータをエクステントと呼ぶ。
【００１１】
また、後述するようにアプリケーションプログラム１やファイルシステムドライバー２は、キャッシュバッファ内の所定データを書き換え禁止に設定する機能を有する。これにより、再度読み出すことがわかっているデータを書き換え禁止に設定すれば、キャッシュバッファ内から削除されることがないため、再度の読み出し或いは書き込み時にディスク８へのアクセスが発生せず、読み書き時間を短縮できる。
【００１２】
図２は従来例のメモリ上のデータの配置を示す図である。メモリ上には、図２に示すように通常データ領域５１、ＡＶデータ領域５２、キャッシュバッファ領域５３の３領域が存在する。この他にハードウェアが使用する領域等を設けても構わないが、本実施形態では省略する。キャッシュバッファ領域５３はディスクから読み出したデータをＥＣＣデコードして一時的に保存する領域で、６４ＫＢ単位である。ここでは新たに読み出されたデータが古いデータを上書きし、常に最新のデータが保存される。
【００１３】
アプリケーションやファイルシステムで使用される通常のデータはセクタ単位（２ＫＢ）でディスク上に記録されており、アプリケーションから通常データの読み出し指示があれば、キャッシュバッファ上に書き出された６４ＫＢ単位のデータから必要なデータが２ＫＢ単位で、メモリ上の指定された場所（通常データ領域）にコピーされる。
【００１４】
ＡＶデータは最初からディスク上に６４ＫＢ単位で記録されているので、キャッシュバッファを通すことなく、直接メモリ上の指定された場所（ＡＶデータ領域）に書き込むことが可能である。ＡＶデータのリアルタイム記録再生時には、この領域をリングバッファとして使用し、ショックプルーフメモリとしての機能も持つ。
【００１５】
キャッシュバッファ領域５３はコントローラ6が管理し、アプリケーションからデータ読み込みの指示があった場合には、キャッシュ上にデータを含むＥＣＣブロック（６４ＫＢ単位）が存在すれば、ディスクにアクセスすることなくキャッシュから読み込むが、キャッシュに存在しなければディスクから新規に読み出すことになる。
【００１６】
また、アプリケーションからデータ書き込みの指示があった場合には、キャッシュ上にデータが存在すれば、必要な部分のみを書き換えてディスクに書き戻せばよいが、キャッシュ上に存在しなければ、まず、ディスクから該当するデータを含むＥＣＣブロックを読み出し、必要な部分を書き換えてディスクに書き戻すという処理が必要となる。
【００１７】
図３は本実施形態のメモリ上のデータ配置を示す図である。通常データ領域５１、ＡＶデータ領域５２、キャッシュバッファ領域５３の３領域が存在するのは、図２の従来例と同様である。各領域の働きも図２と同様であるが、本実施形態では、アプリケーションプログラム１やファイルシステムドライバー２の指示により、キャッシュバッファ領域５３に書き込まれたデータを６４ＫＢ単位で上書き禁止に設定できることが異なる。これは、キャッシュバッファ領域５３を管理するコントローラ6が、キャッシュバッファ領域全体に対して、上書き禁止かどうかを示すテーブルを持つことにより実現される。
【００１８】
即ち、キャッシュバッファ領域５３には上書き禁止部分と上書き可能部分とが存在し、新たにディスク８から読み出されたデータは上書き可能部分の古いデータから上書きしていき、上書き禁止部分のデータは指示があるまでメモリ５上に残る。具体的には、コントローラ6が上書き禁止かどうかを示すテーブルに基づいて、上書き可能部分のデータのみを書き換えることになる。こうすることにより、管理データ等の頻繁に読み込んだり書き換えたりするデータをキャッシュバッファ領域上に残しておくことができ、ディスク８へのアクセス回数を減らすことができる。
【００１９】
図４及び図５は本実施形態のディスク８からのデータ読み出し手順と、ディスク８へのデータ書き込み手順を示すフローチャートである。図４はデータの読み出し手順を示しており、アプリケーションプログラム１からデータ読み出し命令が発行されると、ファイルシステムドライバー２を通してディスクコントローラ６に指示が送られる。
【００２０】
ディスクコントローラ６はキャッシュバッファ領域５３を管理しており、キャッシュバッファ領域５３内に指示されたデータ（２ＫＢ）が存在するか否かを判断し（Ｓ１０１）、指示されたデータが存在すればキャッシュ内の該当するデータ部分をメモリ内の指定位置にコピーする（Ｓ１０３）。存在しなければディスク８からデータを含むＥＣＣブロック（６４ＫＢ単位）を読み出して、キャッシュバッファ領域５３内の上書き許可部分にコピーし（Ｓ１０２）、その後、該当するデータをメモリ５内の指定位置にコピーする（Ｓ１０３）。
【００２１】
次いで、読み出されたデータがアプリケーションプログラム１かファイルシステムドライバー２により上書き禁止に指定されているか否かを判断する（Ｓ１０４）。上書き禁止に設定されていれば、キャッシュバッファ領域５３内の該当データを含むＥＣＣブロックを上書き禁止に設定し（Ｓ１０５）、上書き禁止に設定されていなければ、そのＥＣＣブロックを上書き許可に設定する（Ｓ１０６）。
【００２２】
図５はデータ書き出し手順を示しており、アプリケーションプログラム１からデータ書き込み命令が発行されると、ファイルシステムドライバー２を通してディスクコントローラ６に指示が送られる。ディスクコントローラ６はキャッシュバッファ領域５３を管理しており、キャッシュバッファ領域５３内に書き込むべきアドレスを含むＥＣＣブロック（６４ＫＢ単位）が存在するか否かを判断する（Ｓ２０１）。
【００２３】
この時、目的のアドレスがキャッシュバッファ領域５３内に存在すれば、該当部分のデータ（２ＫＢ）を書き換えて（Ｓ２０３）、ＥＣＣブロック単位でディスク８に書き込む（Ｓ２０４）。一方、存在しなければ、ディスク８から該当アドレスを含むＥＣＣブロックをキャッシュバッファ領域５３に一度読み出して、キャッシュバッファ領域５３内の上書き許可部分にコピーする（Ｓ２０２）。その後、同様に該当部分のデータを書き換え（Ｓ２０３）、書き換えたＥＣＣブロックをディスク８に書き戻す（Ｓ２０４）。
【００２４】
次いで、書き出したデータがアプリケーションプログラム１かファイルシステムドライバー２により上書き禁止に指定されているか否かを判定する（Ｓ２０５）。この時、上書き禁止に指定されていれば、キャッシュバッファ領域５３内の該当データを含むＥＣＣブロックを上書き禁止に設定し（Ｓ２０６）、上書き禁止に指定されていなければ、そのＥＣＣブロックは上書き許可に設定する（Ｓ２０７）。
【００２５】
次に、本発明の有効性を具体例を挙げて説明する。図６はディスク８上のデータ配置を示す。ディスク８のアクセス速度を向上させるために、アプリケーションプログラム１やファイルシステムドライバー２等の管理情報はディスク８の内周領域に集中配置し、通常データは外側の領域に記録する。こうすることにより、ディスク８の挿入時に管理情報をまとめて読み込んだり、途中で管理情報を更新したりする場合等に記録再生ヘッド７の長距離シークが発生せず、アクセス時間を短縮することができる。
【００２６】
図７は実際に映像をディスク８に記録する時の、記録途中におけるメモリ５上のデータ配置例を示す。映像はＡＶデータ領域５２に配置され、映像を管理するファイルシステム等の管理情報は通常データ領域５１に配置されている。図７では映像データがメモリアドレス１０２４ＫＢ以降に配置され、便宜上、ディスク８への書き込みコマンド単位である５１２ＫＢづつに分割して示している。また、ファイルシステム情報である管理情報はメモリアドレス５１２ＫＢの位置から８ＫＢのサイズで通常データ領域５１上に配置されている。
【００２７】
実際にＡＶデータをリアルタイムでディスク８に書き込むことを考えると、書き込み中に瞬断対策として一定時間毎にファイルシステムを更新する処理を行うことがある。こうすると、瞬断が発生してメモリ５上のデータが消滅しても、直前のファイルシステム更新までのデータはディスク８で再生できる。
【００２８】
この時のディスク８からの読み込み及びディスク８への書き込みコマンドの例を図８に示す。コマンドはディスク８からの読み込み（Ｒｅａｄ）と、ディスク８への書き込み（Ｗｒｉｔｅ）であり、パラメータはメモリアドレス、データサイズ、ディスクアドレス、上述の上書き禁止設定の４つである。メモリアドレスとデータサイズはＫＢ単位、ディスクアドレスはセクタ単位（２ＫＢ）で示している。
【００２９】
まず、映像を記録するに当たり関連するディレクトリ情報等の管理情報をディスク８から読み出す。図７に示すようにメモリ上のアドレス５１２ＫＢに、ディスク８上のセクタアドレス５０００から８ＫＢ分の管理情報を読み出す。
【００３０】
この時、ディスク８から管理情報８ＫＢを含む６４ＫＢのＥＣＣブロックが読み出されるのであるが、この管理情報は更新時に再度ディスク８から読み出す必要があるので、キャッシュバッファ領域５３上で上書き禁止に設定しておく。こうすると、再度読み出す必要がなくなる。なお、映像のファイル管理情報等の管理情報が新たに作成されるだけで、最初はディスク８上に存在しない場合、この管理情報の読み出し手順は省略される。
【００３１】
次に、映像をディスク８に記録する手順であるが、映像をディスク８に記録している途中で、管理情報（ファイルシステム情報）を更新する。即ち、映像１を５１２ＫＢディスク８に記録した後で、更新された管理情報を８ＫＢ記録し、続けて映像２を５１２ＫＢ記録する。この時、記録元であるメモリアドレスとデータサイズは図７に示す通りであり、記録先であるディスク８上のセクタアドレスは映像データの場合、ディスク８の外周（１０００００，１００２５６）に記録され、管理情報は内周（５０００）に記録される。
【００３２】
ディスク８上の２５６セクタは５１２ＫＢに相当するため、映像２のディスク８上の記録開始位置である１００２５６セクタは、映像１のディスク上の記録終了位置の次のセクタとなる。また、管理情報の８ＫＢは更新部分を含むＥＣＣブロックがキャッシュバッファ領域上になければ、一度該当部分をディスク８から読み出す必要があるが、この場合は前回読み出したＥＣＣブロックが上書き禁止に設定されているため、必ずキャッシュバッファ領域上に存在し、更新部分を書き換えてディスク８に書き戻すだけでよい。更に、ここでも上書き禁止に設定しているが、今後必要なければ上書き許可にしてもよい。
【００３３】
この時のディスク８上における記録再生ヘッド７の動きを図９に示す。図中の数字は記録再生ヘッド７の動く順番を示しており、まず、映像１を記録する（１）。次に、映像の記録途中で瞬断対策としてファイルシステムの更新を行うので、管理情報領域までジャンプを行う（２）。ファイルシステム情報を更新したら（３）、記録途中の映像の末尾までジャンプし（４）、映像２の記録を再開する（５）。
【００３４】
この時、ファイルシステム情報の更新において、更新部分を含むＥＣＣブロックがキャッシュバッファ領域上になければ、一度該当部分をディスク８から読み出す必要があり、（３）の処理は更新前データのディスク８からの読み出しと、更新後データのディスク８への書き込みという煩雑な手順が発生してしまう。
【００３５】
このように一定時間毎にファイルシステム等の管理情報を更新する場合には、管理情報を含むＥＣＣブロックがメモリ上になければ、該当部分を一度ディスク８から読み出す必要があるが、読み出し処理に伴う時間のため、リアルタイム記録が失敗する可能性もある。
【００３６】
本実施形態では、管理情報を含むＥＣＣブロックをキャッシュバッファ領域内で上書き禁止に設定しておけば、必ずメモリ内に書き換えデータが存在するので、ディスク８から読み出す手順を省略でき、ディスクアクセスは書き込み動作だけになるので、リアルタイム記録が失敗する可能性も著しく低くなる。
【図面の簡単な説明】
【００３７】
【図１】本発明に係る情報記録再生装置の一実施形態の構成を示すブロック図である。
【図２】従来のメモリ上のデータ配置の例を示す図である。
【図３】本発明に係るメモリ上のデータ配置を示す図である。
【図４】本発明に係るデータの読み出し手順を示すフローチャートである。
【図５】本発明に係るデータの書き込み手順を示すフローチャートである。
【図６】本発明に係るディスク上のデータ配置を示す図である。
【図７】本発明に係る実際のメモリ上のデータ配置例を示す図である。
【図８】本発明に係る実際のコマンドの例を示す図である。
【図９】本発明に係るリアルタイム記録時の記録再生ヘッドの動きを説明する図である。
【符号の説明】
【００３８】
１  アプリケーションプログラム
２  ファイルシステムドライバー
３  入出力デバイス
４  コーデック
５  メモリ
６  ディスクコントローラ
７  記録再生ヘッド
８  ディスク
９  記録データ
１０  入力データ
５１  通常データ領域
５２  ＡＶデータ領域
５３  キャッシュバッファ領域
【図１】
2006163801.tif 000003
【図２】
2006163801.tif 000004
【図３】
2006163801.tif 000005
【図４】
2006163801.tif 000006
【図５】
2006163801.tif 000007
【図６】
2006163801.tif 000008
【図７】
2006163801.tif 000009
【図８】
2006163801.tif 000010
【図９】
2006163801.tif 000011