(57)【要約】【課題】映像の入出力処理の性能保証を行いつつ、複数のハードウェアを共有可能として、ハードウェア全体の処理効率を向上させることのできる映像記録再生装置及びファイルシステムを提供する。【解決手段】映像記録再生装置は、マイクロプロセッサ１００と、マイクロプロセッサ１００に接続されたバスインタフェース制御部２００と、バスインタフェース制御部２００に接続されたアドレスデータバスＡＤＢ１、ＡＤＢ２と、アドレスデータバスＡＤＢ１、ＡＤＢ２に接続されたメモリ３１０、映像音声デコーダ３３０等、及びドライブインタフェース３５０、３５１と、ドライブインタフェース３５０、３５１に接続されたディスク装置４００、４０１とを有し、アドレスデータバスＡＤＢ１、ＡＤＢ２のアドレス空間から、バスインタフェース制御部２００内のバス帯域管理レジスタ２０２及び２０３とドライブインタフェース３５０、３５１内のディスク帯域管理レジスタ３５２及び３５３とを読み書き可能とする。【選択図】　　　　図１
2004013962.tif 000002
【特許請求の範囲】
【請求項１】
ファイル管理を行うソフトウェアが動作するマイクロプロセッサと、
前記マイクロプロセッサに接続されたバスインタフェース制御部と、
前記バスインタフェース制御部に接続された複数のアドレスデータバスと、
前記複数のアドレスデータバスの全てに接続されたメモリと、
前記複数のアドレスデータバスに接続されたチューナー、映像音声デコーダ、ネットワークインタフェースから選択される少なくとも一つと、
前記複数のアドレスデータバスの全てに接続された２個以上のドライブインタフェースと、
前記ドライブインタフェースのそれぞれに接続されたディスク装置とを有する映像記録再生装置であって、該映像記録再生装置は、
前記バスインタフェース制御部内にバス帯域管理レジスタを、
前記ドライブインタフェース内に前記ディスク装置のディスク帯域管理レジスタをさらに有し、
２個以上の前記アドレスデータバス毎のアドレス空間から前記バス帯域管理レジスタと、前記ディスク帯域管理レジスタとを、読み書き可能であることを特徴とする映像記録再生装置。
【請求項２】
前記ディスク装置に映像および／または音声を記録及び再生する際に、前記複数アドレスデータバスに接続されたチューナー、映像音声デコーダ、またはネットワークインタフェースが、前記バスインタフェース制御部内の前記バス帯域管理レジスタを書き換えることによりバス帯域を確保し、
前記メモリ上のデータを入出力実行することを特徴とする請求項１記載の映像記録再生装置。
【請求項３】
ファイル管理を行うソフトウェアが動作するマイクロプロセッサと、
前記マイクロプロセッサに接続されたバスインタフェース制御部と、
前記バスインタフェース制御部に接続された複数のアドレスデータバスと、
前記複数のアドレスデータバスの全てに接続されたメモリと、
前記複数アドレスデータバスに接続されたチューナー、映像音声デコーダ、ネットワークインタフェースから選択される少なくとも一つと、
前記複数のアドレスデータバスの全てに接続された２個以上のドライブインタフェースと、
前記ドライブインタフェースのそれぞれに接続されたディスク装置とを有する映像記録再生装置において、前記マイクロプロセッサ上で動作するディスクの領域管理を行うファイルシステムであって、
前記ディスク装置に映像および／または音声を記録または再生する際に、前記ファイルシステムに対して入出力の指示を出すアプリケーションが指定した映像および／または音声の帯域幅に基づいて、前記ファイル管理を行うソフトウェアが前記メモリ内に保持したディスク帯域管理情報を使用して帯域使用状況を把握し、記録動作または再生動作開始時に可否を判断し、帯域保証を行うことを特徴とするファイルシステム。
【請求項４】
ファイル管理を行うソフトウェアが動作するマイクロプロセッサと、
前記マイクロプロセッサに接続されたバスインタフェース制御部と、
前記バスインタフェース制御部に接続された複数のアドレスデータバスと、
前記複数のアドレスデータバスの全てに接続されたメモリと、
前記複数アドレスデータバスに接続されたチューナー、映像音声デコーダ、ネットワークインタフェースから選択される少なくとも一つと、
前記複数のアドレスデータバスの全てに接続された２個以上のドライブインタフェースと、
前記ドライブインタフェースのそれぞれに接続されたディスク装置とを有する映像記録再生装置において、前記マイクロプロセッサ上で動作するディスクの領域管理を行うファイルシステムであって、
前記ディスク装置に映像および／または音声を記録または再生する際に、前記ファイルシステムに対して入出力の指示を出すアプリケーションが指定した前記映像および／または音声の帯域幅に基づいて、前記ドライブインタフェースのディスク帯域管理レジスタを使用して、
前記ディスク装置の帯域使用状況をレジスタを書き換えることにより保持し、前記レジスタ上の帯域使用状況に基づいて、記録動作または再生動作開始時に可否を判断して帯域保証を行うことを特徴とするファイルシステム。
【請求項５】
ファイル管理を行うソフトウェアが動作する１または２以上のマイクロプロセッサと、
前記マイクロプロセッサに接続されたバスインタフェース制御部と、
前記バスインタフェース制御部に接続された複数のアドレスデータバスと、
前記複数のアドレスデータバスの全てに接続されたメモリと、
前記複数アドレスデータバスに接続されたチューナー、映像音声デコーダ、ネットワークインタフェースから選択される少なくとも一つと、
前記複数のアドレスデータバスの全てに接続された２個以上のドライブインタフェースと、
前記ドライブインタフェースのそれぞれに接続されたディスク装置とを有する映像記録再生装置において、前記マイクロプロセッサ上で動作するディスクの領域管理を行うファイルシステムであって、
前記ディスク装置に映像および／または音声を記録または再生する際に、前記ドライブインタフェース内のディスク帯域管理レジスタを使用して、前記ディスク装置の帯域使用状況をレジスタを書き換えることにより保持し、
前記レジスタ上の帯域使用状況に基づいて記録再生動作可否を判断し、前記ディスク装置の帯域保証を行うとともに、
前記バスインタフェース制御部内のバス帯域管理レジスタを書き換えることにより、前記アドレスデータバスの帯域の使用状況を管理し、
負荷の軽い方の前記アドレスデータバスを選択することを特徴とするファイルシステム。
【請求項６】
前記ディスク装置に映像および／または音声を記録する際に、前記ドライブインタフェース内の前記ディスク帯域管理レジスタを使用して、前記ディスク装置の帯域使用状況をレジスタを書き換えることにより保持し、
前記レジスタ上の帯域利用状況に基づいて、ディスク負荷の軽い前記ディスク装置を選択し、
選択した該ディスク装置にファイルの書き込みを行うとともに、
前記ファイルの管理データおよびディレクトリ管理データを、前記ファイルを記録した前記ディスク装置に記録することを特徴とする請求項３から５のいずれか１項に記載のファイルシステム。
【請求項７】
前記アドレスデータバス上のレジスタアクセス動作を実行する際に、レジスタアクセス動作を、前記バス帯域管理レジスタ、またはファイルシステムの管理するメモリ内で保持されるバス帯域管理情報に応じて、動作間隔を変化させ、
前記アドレスデータバスの負荷が過大とならないように制御することを特徴とする請求項３から５のいずれか１項に記載のファイルシステム。
【請求項８】
前記ディスク装置に映像および／または音声を記録または再生する際に、定期的に利用する前記アドレスデータバスを変更することにより前記アドレスデータバスの占有時間を予め定めた上限値以下に抑えることを特徴とする請求項３または４記載のファイルシステム。
【請求項９】
前記ディスク装置に映像および／または音声を記録または再生する際に、定期的に記録する前記ディスク装置を変更することにより前記ディスク装置の占有時間を予め定めた上限値以下に抑えることを特徴とする請求項３から５のいずれか１項に記載のファイルシステム。
【請求項１０】
前記ディスク装置に映像および／または音声を記録する際に、映像のレートおよびディスク入出力に要するバス占有時間に基づいてディスク負荷を計算し、
前記ディスク帯域管理レジスタまたはファイルシステム内のメモリ上に保持されたディスク帯域管理情報に基づいて管理することにより、ディスク毎の負荷が予め定めた上限値以下となるように複数のディスクに一定の長さでデータを分割して分散記録することを特徴とする請求項３から５のいずれか１項に記載のファイルシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、映像記録再生装置及びファイルシステムに関し、特にデータの配置を管理し、データ伝送路などのハードウェアリソースを管理する映像記録再生装置及びファイルシステムに関する。
【０００２】
【従来の技術】
従来のシステムにも、ディスク装置の性能とアプリケーションの必要とする帯域を考慮してデータの配置を判定する装置は存在していた。
【０００３】
しかし、バスなどの他のアプリケーションなどと共有されるハードウェアリソースに関する評価が行われていないため、結果として、１チャネルの映像の記録や再生環境では性能見積りが可能であり利用可能であったとしても、複数チャネルの記録再生制御において帯域保証は困難であった。
【０００４】
例えば、特表２００１−５１７８２４号公報に、ディスクアクセスのための入出力帯域要求とディスクドライブの転送性能より、連続書き込みを行うファイルの長さを確定するファイルシステムが記載されているが、このシステムには上記のような問題があった。
【０００５】
また、従来のシステムでは、ディスクに対する負荷をチャネル利用率などで判断しており、負荷の低いチャネルを選択して記録することしかできなかった。また、映像などの帯域保証が必要な用途において、ディスク装置の入出力性能も考慮に入れた入出力制御では利用できなかった。
【０００６】
例えば、特開平８−２１２０８７号公報に、４ページ３０行目に外部記憶装置に接続されたチャネルの利用率を調べるために、チャネル利用率モニタに利用率要求を行うこと、および、得られた利用率をしきい値と比較し、しきい値以上になっている場合は退避用ファイル作成部に退避用ファイル作成、すなわち複製ファイルの生成要求を行うファイル管理方式の記載があるが、このファイル管理方式には、上記のような問題があった。
【０００７】
【発明が解決しようとする課題】
従来方式の問題点は、従来のコンピュータシステムのファイルシステムでは、帯域保証は１つの映像ストリームの記録再生に限定されていたことにある。すなわち、複数のファイルを扱う場合には、帯域保証を行うことはできなかった。
その理由は、ハードウェアのリソース管理ができないため、結果として複数の映像記録再生を同じディスク、あるいは同じバス上のリソースで共有するハードウェアリソースを管理していなかったためである。
【０００８】
そこで、本発明は、コンピュータシステムあるいは映像記録再生装置において、ファイルシステムを介した映像の入出力処理の性能保証を行うと共に、性能を保証したまま複数のハードウェアを共有可能とすることにより、ハードウェア全体の処理効率を向上することを目的としている。
【０００９】
【課題を解決するための手段】
請求項１記載の発明によれば、映像記録再生装置は、ファイル管理を行うソフトウェアが動作するマイクロプロセッサと、マイクロプロセッサに接続されたバスインタフェース制御部と、バスインタフェース制御部に接続された複数のアドレスデータバスと、複数のアドレスデータバスの全てに接続されたメモリと、複数のアドレスデータバスに接続されたチューナー、映像音声デコーダ、ネットワークインタフェースから選択される少なくとも一つと、複数のアドレスデータバスの全てに接続された２個以上のドライブインタフェースと、ドライブインタフェースのそれぞれに接続されたディスク装置とを有する映像記録再生装置であって、バスインタフェース制御部内にバス帯域管理レジスタを、ドライブインタフェース内にディスク装置のディスク帯域管理レジスタを有し、２個以上のアドレスデータバス毎のアドレス空間から、バス帯域管理レジスタと、ディスク帯域管理レジスタとを、読み書き可能であることを特徴とするものである。
【００１０】
請求項２記載の発明によれば、映像記録再生装置は、ディスク装置に映像および／または音声を記録及び再生する際に、複数アドレスデータバスに接続されたチューナー、映像音声デコーダ、またはネットワークインタフェースが、バスインタフェース制御部内のバス帯域管理レジスタを書き換えることによりバス帯域を確保し、メモリ上のデータを入出力実行することを特徴とするものである。
【００１１】
請求項３記載の発明によれば、ファイルシステムは、ファイル管理を行うソフトウェアが動作するマイクロプロセッサと、マイクロプロセッサに接続されたバスインタフェース制御部と、バスインタフェース制御部に接続された複数のアドレスデータバスと、複数のアドレスデータバスの全てに接続されたメモリと、複数アドレスデータバスに接続されたチューナー、映像音声デコーダ、ネットワークインタフェースから選択される少なくとも一つと、複数のアドレスデータバスの全てに接続された２個以上のドライブインタフェースと、ドライブインタフェースのそれぞれに接続されたディスク装置とを有する映像記録再生装置において、前記マイクロプロセッサ上で動作するディスクの領域管理を行うファイルシステムであって、ディスク装置に映像および／または音声を記録または再生する際に、ファイルシステムに対して入出力の指示を出すアプリケーションが指定した映像および／または音声の帯域幅に基づいて、ファイル管理を行うソフトウェアがメモリ内に保持したディスク帯域管理情報を使用して帯域使用状況を把握し、記録動作または再生動作開始時に可否を判断し、帯域保証を行うことを特徴とするものである。
【００１２】
請求項４記載の発明によれば、ファイルシステムは、ファイル管理を行うソフトウェアが動作するマイクロプロセッサと、マイクロプロセッサに接続されたバスインタフェース制御部と、バスインタフェース制御部に接続された複数のアドレスデータバスと、複数のアドレスデータバスの全てに接続されたメモリと、複数アドレスデータバスに接続されたチューナー、映像音声デコーダ、ネットワークインタフェースから選択される少なくとも一つと、複数のアドレスデータバスの全てに接続された２個以上のドライブインタフェースと、ドライブインタフェースのそれぞれに接続されたディスク装置とを有する映像音声の記録再生装置において、前記マイクロプロセッサ上で動作するディスクの領域管理を行うファイルシステムであって、ディスク装置に映像および／または音声を記録または再生する際に、ファイルシステムに対して入出力の指示を出すアプリケーションが指定した映像および／または音声の帯域幅に基づいて、ドライブインタフェースのディスク帯域管理レジスタを使用して、ディスク装置の帯域使用状況をレジスタを書き換えることにより保持し、レジスタ上の帯域使用状況に基づいて、記録動作または再生動作開始時に可否を判断し、帯域保証を行うこことを特徴とするものである。
【００１３】
請求項５記載の発明によれば、ファイルシステムは、ファイル管理を行うソフトウェアが動作する１または２以上のマイクロプロセッサと、マイクロプロセッサに接続されたバスインタフェース制御部と、バスインタフェース制御部に接続された複数のアドレスデータバスと、複数のアドレスデータバスの全てに接続されたメモリと、複数アドレスデータバスに接続されたチューナー、映像音声デコーダ、ネットワークインタフェースから選択される少なくとも一つと、複数のアドレスデータバスの全てに接続された２個以上のドライブインタフェースと、ドライブインタフェースのそれぞれに接続されたディスク装置とを有する映像記録再生装置において、前記マイクロプロセッサ上で動作するディスクの領域管理を行うファイルシステムであって、ディスク装置に映像および／または音声を記録または再生する際に、ドライブインタフェース内のディスク帯域管理レジスタを使用して、ディスク装置の帯域使用状況をレジスタを書き換えることにより保持し、レジスタ上の帯域使用状況に基づいて記録再生動作可否を判断し、ディスク装置の帯域保証を行うとともに、バスインタフェース制御部内のバス帯域管理レジスタを書き換えることにより、アドレスデータバスの帯域の使用状況を管理し、負荷の軽い方のアドレスデータバスを選択することを特徴とするものである。
【００１４】
請求項６記載の発明によれば、ファイルシステムは、ディスク装置に映像および／または音声を記録する際に、ドライブインタフェース内のディスク帯域管理レジスタを使用して、ディスク装置の帯域使用状況をレジスタを書き換えることにより保持し、レジスタ上の帯域利用状況に基づいて、ディスク負荷の軽いディスク装置を選択し、選択したディスク装置にファイルの書き込みを行うとともに、ファイルの管理データおよびディレクトリ管理データを、ファイルを記録したディスク装置に記録することを特徴とするものである。
【００１５】
請求項７記載の発明によれば、ファイルシステムは、アドレスデータバス上のレジスタアクセス動作を実行する際に、レジスタアクセス動作を、バス帯域管理レジスタ、またはファイルシステムの管理するメモリ内で保持されるバス帯域管理情報に応じて、動作間隔を変化させ、アドレスデータバスの負荷が過大とならないように制御することを特徴とするものである。
【００１６】
請求項８記載の発明によれば、ファイルシステムは、ディスク装置に映像および／または音声を記録または再生する際に、定期的に利用するアドレスデータバスを変更することによりアドレスデータバスの占有時間を予め定めた上限値以下に抑えることを特徴とするものである。
【００１７】
請求項９記載の発明によれば、ファイルシステムは、ディスク装置に映像および／または音声を記録または再生する際に、定期的に記録するディスク装置を変更することによりディスク装置の占有時間を予め定めた上限値以下に抑えることを特徴とするものである。
【００１８】
請求項１０記載の発明によれば、ファイルシステムは、ディスク装置に映像および／または音声を記録する際に、映像のレートおよびディスク入出力に要するバス占有時間に基づいてディスク負荷を計算し、ディスク帯域管理レジスタまたはファイルシステム内のメモリ上に保持されたディスク帯域管理情報に基づいて管理することにより、ディスク毎の負荷が予め定めた上限値以下となるように複数ディスクに一定の長さでデータを分割して分散記録することを特徴とするものである。
【００１９】
【発明の実施の形態】
次に、添付図面を参照して、本発明による映像記録再生装置及びファイルシステムの実施の形態について詳細に説明する。
【００２０】
図１に本発明による映像記録再生装置及びファイルシステムの一実施形態のハードウェア構成が示されている。
【００２１】
ディスク装置４００と４０１上に記録するデータの配置を決めるファイルシステムソフトウェアは、マイクロプロセッサ１００上で動作し、バスインタフェース制御部２００を介して、各ハードウェアの制御を実施する。
【００２２】
バスインタフェース制御部２００は、アドレスデータバスＡＤＢ１とＡＤＢ２との２系統のバスに接続されている。
マイクロプロセッサ１００は、アドレスバスの上位ビットなどを利用し、バスインタフェース制御部２００に接続された２系統のバスのアドレス空間にアクセス可能である。
【００２３】
また、バスインタフェース制御部２００は、接続された２系統のアドレスデータバスＡＤＢ１とＡＤＢ２のそれぞれの帯域を制御するためにバス帯域管理レジスタ２０１及び２０２を保持する。
このレジスタは、アドレスデータバスＡＤＢ１とＡＤＢ２のそれぞれのバス上のデバイスからもアクセス可能な共用のレジスタとしてバスのアドレス空間上にマップする。
【００２４】
バス帯域管理レジスタ２０１及び２０２は、後述する換算式に基づいた換算値をレジスタに保持することにより動作を行い、レジスタから値を減算することにより帯域の確保を、値に加えることにより帯域の解放動作を行うものとする。
【００２５】
帯域管理を行うアドレスデータバスには、ＩＥＥＥ１３９４規格（ＩＥＥＥ　Ｓｔｄ　１３９４−１９９５）に基づく帯域制御機能を持つハードウェアを適用することも可能である。
【００２６】
また、複数のマイクロプロセッサを使用しない場合は、バス帯域管理レジスタ２０１及び２０２はファイルシステムソフトウェアが管理するメモリ内に保持してもよい。
【００２７】
アドレスデータバスＡＤＢ１とＡＤＢ２とには、メモリ３１０と、チューナー３２０、音声映像デコーダ３３０、ネットワークインターフェイス３４０の一部または全部とが接続される。
【００２８】
これらのデバイスは、アドレスデータバスＡＤＢ１とＡＤＢ２との両方のバスに接続され、バスインタフェース制御部２００と同様、それぞれのバスのアドレス空間をそれぞれ指定し、レジスタに対してアクセス可能とする。
また、これらのデバイスが、ファイルシステムなどの制御ソフトウェアからの指示を受けず、能動的にバス上の帯域を消費し転送を実行する場合は、これらの各デバイスが直接バス帯域管理レジスタ２０１及び２０２を書き換え、帯域管理を行うことも可能とする。
【００２９】
なお、メモリ３１０、ネットワークデバイス３４０などは、複数のハードウェアと共用してデータの入出力実行を行うため、バスインタフェース制御部２００と同様にハードウェアリソースの帯域管理を行う帯域管理レジスタを１個ずつ設けてもよい。
【００３０】
ドライブインタフェース３５０、３５１も、アドレスデータバスＡＤＢ１と、ＡＤＢ２との両方に接続され、それぞれのアドレス空間に対してアクセス可能である。
また、ドライブインタフェース３５０と、３５１とは、それぞれディスク装置４００と、４０１とに接続され、ディスク装置毎にディスク帯域管理レジスタ３５２及び３５３を設ける。
【００３１】
ディスク帯域管理レジスタ３５２及び３５３も、アドレスデータバスＡＤＢ１、ＡＤＢ２上からアクセス可能なレジスタとし、マイクロプロセッサ１００などのデバイスから書き換え可能である。
また、帯域管理の方法は、バス帯域管理レジスタと同様に、後述する換算式から得られる値をレジスタ上で保持することにより実施する。
【００３２】
マイクロプロセッサ１００上のプログラムは、バスインタフェース制御部２００およびアドレスデータバスＡＤＢ１またはＡＤＢ２を介してドライブインタフェース３５０または３５１にデータ入出力のコマンドを送信する。そして、ドライブインタフェース３５０または３５１は、コマンドに基づいて、ディスク装置４００または４０１から要求のあったディスク上のアドレスからデータの入出力を実行し、メモリ３１０や映像音声デコーダ３３０などの、アドレスデータバス上のデバイスとの間で、データ転送を実行する。
【００３３】
なお、本実施形態では、ディスク装置を２個、バスを２個、マイクロプロセッサを１個と仮定して説明を行うが、ディスク装置やバスが３個以上、マイクロプロセッサが２個以上存在する場合においても、同様に適用可能である。
【００３４】
また、マイクロプロセッサが１個の場合で、他にディスクの領域管理及び入出力制御を要求するデバイスが存在しない場合は、ディスク帯域管理レジスタ３５２及び３５３は、ファイル管理を行うソフトウェアとして動作するファイルシステムが管理しているメモリ上に保持して実現することも可能である。
【００３５】
同様に、バス帯域管理レジスタ２０１及び２０２は、アドレスデータバスＡＤＢ１、ＡＤＢ２上のデバイスが、能動的にバス帯域を確保し、データの入出力動作を行わない場合は、ファイル管理を行うソフトウェアとして動作するファイルシステムが管理しているメモリ上に保持して実現することも可能である。
【００３６】
次に、バス帯域管理レジスタを使用した、ファイルシステムのデータ入出力管理動作について説明する。
【００３７】
図２に本発明による映像記録再生装置及びファイルシステムの一実施形態において、ファイルシステムにより実施されるデータ入出力動作のフローチャートが示されている。ここでの一連の処理は、アプリケーションからはファイルのオープン、リード／ライト、クロースなどのＡＰＩとして実装可能であるが、ここでは一連の処理フローとして説明する。
【００３８】
まず、帯域確保動作を実施する（ステップＳ１００）。
もし、帯域確保（ステップＳ１０１）に成功したら（Ｙｅｓ）、実際の入出力を実行する。
ステップＳ１０１において、帯域確保に失敗した場合は（Ｎｏ）、異常終了とする。
【００３９】
このステップＳ１００とステップＳ１０１の動作は、通常ファイルのオープン処理の際に実装することが望ましく、帯域確保動作で必要なデータレートなどの必要帯域を割り出すパラメータもこのときパラメータとして指定する。
なお、帯域確保動作ステップＳ１００の詳細に関しては後述する。
【００４０】
ステップＳ１０１において、帯域確保に成功したら（Ｙｅｓ）、リードライト動作を実行する（ステップＳ１０２）。
なお、リードライト動作ステップＳ１０２に関しても詳細は後述する。
【００４１】
次いで、リードライト動作が成功したかを判定する（ステップＳ１０３）。
正常終了しなかった場合は（Ｎｏ）、帯域解放動作（ステップＳ１０６）を実行して、処理を終了する。
正常終了している場合は（Ｙｅｓ）、入出力動作の終わりか否かを判定する（ステップＳ１０４）。
【００４２】
入出力動作が終わりでない場合は（Ｎｏ）、ステップＳ１０２以下を継続する。
入出力動作が終わりの場合は（Ｙｅｓ）、ファイル管理データを更新し、帯域解放動作を実行して（ステップＳ１０５）、正常終了する。
【００４３】
以下、図３を用いて、図２におけるリードライト動作（ステップＳ１０２）の詳細について説明する。図３には、本発明による映像記録再生装置及びファイルシステムの一実施形態におけるリードライト動作のフローチャートが示されている。
【００４４】
初めに、現在のファイルの管理データが指し示している領域がリードライト動作に対して領域が不足しているかどうかを判断する（ステップＳ２００）。
【００４５】
もし領域の不足がないのであれば（Ｎｏ）、ディスク装置の入出力動作を実行する（ステップＳ２０１）。
次いで、入出力動作が成功したか否かを判定する（ステップＳ２０２）。
【００４６】
ステップＳ２０２において、入出力動作が成功した場合は（Ｙｅｓ）、入出力動作の情報として、最後にアクセスしたディスク上の領域をメモリ上に保持し（ステップＳ２０３）、動作を終了する（正常終了）。
入出力動作が成功しなかった場合は（Ｎｏ）、異常終了とする。
【００４７】
ステップＳ２００において領域が不足すると判定された場合は（Ｙｅｓ）、ファイルシステムのディスク領域の確保動作を実施する（ステップＳ２０４）。
【００４８】
ステップＳ２０５において、領域確保が成功した場合は（Ｙｅｓ）、最終の領域確保に関する情報をメモリ上に保持し（ステップＳ２０６）、Ｓ２０１以下の処理を続ける。
ステップＳ２０５において、領域確保動作に失敗した場合は（Ｎｏ）、異常終了とする。
【００４９】
以下、図４を用いて、図２における帯域確保動作（ステップＳ１００）の詳細について説明する。図４には、本発明による映像記録再生装置及びファイルシステムの一実施形態における帯域確保動作のフローチャートが示されている。
予め選択されたディスク装置から、入出力に必要な性能確保が可能かどうかを判定する方法として、ここでは帯域確保動作Ａと表記する。
【００５０】
ディスクの選択方法に関しては、ディスク帯域の換算値がより多いディスク、すなわちディスクに対する負荷が軽いものを選択する。ラウンドロビンで順序付けたディスク選択する。記録動作時は、ファイルシステムの空き領域管理構造より割り出される、ディスクの未使用領域が多いディスクを優先的に選択する。同時にディスクに対する帯域要求などが発生した場合は、書き込み動作に優先的に帯域割り当てを行うなどが考えられる。ここでは、ディスクの選択に関しては、ディスク帯域管理レジスタの値がより多い、負荷の軽いディスクを選択する場合について説明する。
【００５１】
まず、ディスクの入出力性能に基づいたディスク帯域の確保動作を行う（ステップＳ３００）。これは下記の式に基づいて計算したディスク装置の性能に対する帯域を換算した値であり、この値をドライブインタフェース３５０、３５１上のディスク帯域管理レジスタ３５２及び３５３から、換算された分だけ値を差し引くことにより実行される。なお、この例ではフルレンジを１として、次の換算をおこなっている。
（帯域換算値）＝（単位時間あたりの入出力処理時間）／（ピーク動作時の単位時間あたりの処理時間）
【００５２】
上記の値をディスク帯域管理レジスタ３５２又は３５３より確保できるかを判定し（ステップＳ３０１）、確保できなかった場合（Ｎｏ）、帯域確保操作は異常終了とする。確保できた場合は（Ｙｅｓ）、選択したバスの帯域確保動作を行う（ステップＳ３０２）。この動作はバスインタフェース制御部２００内のバス帯域管理レジスタ２０１又は２０２より、必要帯域の換算値を差し引くことにより実施される。よって、バスの選択は、後述するバス帯域の換算値の残存値が多い方を選択して実行する。帯域の換算には、次のような式を利用する。なお、この例ではフルレンジを１として、次の換算をおこなっている。
（換算値）＝（単位時間あたりの所要時間）／（ピーク動作時の単位時間あたりの処理時間）
【００５３】
上記の値をバス帯域管理レジスタ２０１又は２０２より確保できるかを判定し（ステップＳ３０３）、確保できなかった場合は（Ｎｏ）、既に確保していたディスク帯域を開放し（ステップＳ３０６）、異常終了する。解放動作は確保した換算値をディスク帯域管理レジスタ３５２又は３５３に加えることにより実施される。確保できた場合は（Ｙｅｓ）、ファイル管理メタデータを生成、更新し（ステップＳ３０４）、最新ディスクリードライト動作情報を保持し（ステップＳ３０５）、正常終了する。
【００５４】
次に、帯域確保を必要としないレジスタアクセスなどの実施手順に関して、図５のフローチャートを使用して説明する。帯域確保を必要としないレジスタアクセスに関しても、バスなどのハードウェアリソースを利用する為、簡略化した帯域管理を行い、ハードウェアリソースの使用を制限することが望ましい。そのため、ここでは帯域確保動作Ｂとして、その処理例を説明する。
【００５５】
バス上のレジスタにアクセスする場合は、通常固定時間のバス使用で見積もられるため、前述のバス帯域管理レジスタ用の換算式を使用して固定値を確保し、その値を前記のバス帯域管理レジスタとは独立したバス帯域管理レジスタＢ２０３にセットする。
【００５６】
帯域確保動作は、このバス帯域管理レジスタＢ２０３から減算して帯域確保動作を行い（ステップＳ４００）、帯域確保に成功したか否かを判定する（ステップＳ４０１）。
帯域確保に成功した場合は（Ｙｅｓ）、一定間隔Ａのウェイトをかけた上で（ステップＳ４０２）、実際のレジスタアクセスを実行する。
帯域確保に失敗した場合は（Ｎｏ）、一定間隔Ｂのウェイトを挿入し（ステップＳ４０３）、ステップＳ４００からリトライを実行する。
【００５７】
また、バス帯域管理レジスタＢ２０３はある一定間隔で許容される帯域値をハードウェアまたはソフトウェア的に繰り返しセットすることにより、一定時間間隔における帯域管理不要のレジスタアクセスに伴うバス負荷を一定割合以下に抑えることができる。
【００５８】
ここで一定間隔Ａ及びＢは、バスアクセス頻度を抑えるために設けるものであり、バス全体の帯域に対して、ある一定以上の頻度でアクセスしないように予め値を設定する。例えば、バスの使用率が２０％を越えないように設定することが考えられる。また、ウェイトを挿入する代わりに、Ｉ／Ｏ要求を待ち行列に入れ、ＩＥＥＥ１３９４のようなバスの機能を使用することも可能である。
【００５９】
また、このような制御を適用する場合、帯域制御を伴う帯域確保動作Ａを優先度を高くし、帯域確保動作Ｂの優先度を低くした制御を行うことが必要であり、２段階の優先度を伴う制御とみなせる。しかし、３段階以上の優先度を考慮して帯域確保動作を行うことも可能であり、優先度の高い帯域確保動作は、優先度の低い帯域確保動作に帯域の開放を要求した上で、優先的に帯域を取得する制御を実施することも可能である。
【００６０】
以下、図６〜図１１を使用して、本発明による映像記録再生装置及びファイルシステムの一実施形態におけるファイル管理データ、およびディレクトリ管理データの管理方法について説明する。
【００６１】
前述の帯域管理を含む入出力処理手順に基づいてデータの入出力を実行するが、ファイルシステムとしてファイル単位の領域管理を行うためのメタデータとして管理データ構造をディスク上に書き込む必要がある。よって、まず、ファイルシステムが帯域管理をしながらディスク装置４００、４０１の選択動作などを行う場合の管理データ構造の書き込み方について説明する。
【００６２】
ファイルシステムが図６に示すディレクトリ構造を書き込む場合に、前記の帯域管理制御においてディスク帯域の確保の際に、帯域確保可能なディスクをディスク装置４００、４０１のいずれかを選択する必要があるが、この選択動作をファイルシステムが動作状況に応じて選択を行うためには、論理的にこのような構造を保持しつつ、複数のディスク装置に管理データを書き込む必要がある。
【００６３】
本実施例では、メタデータとして管理データをそれぞれのディスク装置に書き込むことにより、これを実現する。ここでは図７、図８のようなディレクトリ構造をディスク装置４００、４０１のそれぞれに書き込み、これらを重ね合わせ提示することにより図６のディレクトリ構造を実現する。
【００６４】
その際に、各ディスク装置４００、４０１へ記録したデータ構造は、各ファイルごとに図９に示すようなファイル管理データまたはディレクトリ管理データを保持し、これらのメタデータを図１０、図１１に示すようにディスク上に記録を行うことにより、前記のディレクトリ構造を構成する。
【００６５】
また、ここでディレクトリ管理データに関しては、片方のディスク装置上でファイルを保持していない場合でも、記録を行うものとする。
【００６６】
この例では、ディスク装置４００のディレクトリ構造図７を与えるのに、図１０のように管理データの書き込みを行うが、その際に、ディスク装置４００上のディレクトリ２管理データの指す領域にはファイルが存在していないが、このディレクトリ管理データ構造は両方のディスク装置に書き込むものとする。
【００６７】
ディレクトリ管理データに関しては常に複数のディスク上で同じ状態を保つことにより、ファイルのハンドリングにおいてファイル識別に使用するディレクトリ名を含む絶対パスネームによりファイルのハンドリングが行われた場合に、常にファイル管理データの書き込みが可能なノードを保持するために行う。
【００６８】
また、これらのファイル管理データ及びディレクトリ管理データは、前記の帯域確保動作の最後にファイル管理データの生成を実行し、ディスクに記録を行う。また、帯域解放動作の前に、ディスクへの書き込み最終結果としてディスクへの記録を行う。
【００６９】
以下、本発明による映像記録再生装置及びファイルシステムの他の実施形態について説明する。
【００７０】
ハードウェアの構成は、図１に示したのものと同じでありが、マイクロプロセッサ１００上で動作するファイルシステムソフトウェアの制御方式が前述の実施形態とは異なる。また、本実施形態においても、ディスク装置を２個、バスを２個、マイクロプロセッサを１個と仮定して説明を行うが、ディスク装置やバスが３個以上、マイクロプロセッサが２個以上存在する場合においても、同様に適用可能である。
【００７１】
マイクロプロセッサの制御において、データの入出力動作が大容量のデータの入出力を行う必要がある場合、ディスク装置の制御は同時に１つのデータストリームしか扱えないため、大量のデータの読み書きを一度に実施してしまうと、その間は他の入出力要求が滞る可能性がある。
よって、ディスク装置の入出力要求を、要求する帯域に応じて、データを固定長に分割しディスク上に記録を行うことにより、継続的にハードウェアを占有する度合いを低減し、システム全体の性能の向上を実現する。
【００７２】
図１２はデータをディスク装置４００及び４０１に分割して記録していく場合の分割順序を示したものであり、領域０から領域１、領域２と順次記録を行っていく。ここで各領域の分割するサイズは、記録データの必要帯域、およびシステム全体の必要帯域および入出力動作の応答時間に基づいて、固定長で割り当てられるものとする。
【００７３】
分割を行う長さは、同時に処理するべき複数の入出力要求を、システムが必要としている入出力の応答時間内で全て処理可能なようにその長さを設定する。すなわち、ディスク装置の入出力処理時間は、通常ディスク装置の性能依存するが、模式的には図１３のように表すことができる。
（入出力処理時間）＝（アクセス時間）＋（入出力データ長）／（データ読み出し速度）
【００７４】
よって、アクセスに伴いオーバーヘッドは固定的にオーバーヘッドとして発生するため、入出力データ長を長く取るほうが、相対的に性能は向上する。
【００７５】
しかし、その分入出力処理時間が長くなり、他の入出力処理が出来なくなることも考慮すると、システム全体としては、応答の悪いものとなってしまう。
【００７６】
これを避けるため、データが要求しているデータのレートに基づいて、ある一定応答時間内に全てのサービスが完了するように、応答時間内に読み出すべき入出力データ量程度の各入出力要求を抑えると、不用意にディスクが占有されないことがわかる。
【００７７】
実際にはアプリケーション動作のタイミング管理を行わない場合、他の入出力要求が最悪ケースでそれぞれ２回分溜まるケースが、最悪ケースと見積もられる。そのため、要求仕様である一定応答時間に対して１／２の時間を基準にして、入出力データ量を決定し、それに基づいたデータの分割配置を行う。
【００７８】
また、その結果得られる処理時間は次の式で求めることが可能である。ここでΣは、該当する全ての帯域制御を行う映像ストリームに関する処理時間の和を表しており、ここで入出力データ長は、応答時間の１／２の時間で必要とされるデータ量とする。
（ディスク処理時間）＝Σ｛（アクセス時間）＋（入出力データ長）／（データ読み出し速度）｝
【００７９】
実際の帯域割り当ての際にこの処理時間が、１／２応答時間以下に抑えることが入出力要求に対しては、入出力要求を許可しない。
【００８０】
この制御を前記のハードウェア構成で実装する場合は、ディスク帯域管理レジスタ３５２又は３５３に、このディスク処理時間を積算することにより、この時間が予め設定された１／２応答時間以下になるように制御を行うことにより、複数のマルチプロセッサ構成となる場合にも同様に適用可能となる。
【００８１】
また、これにより書き込まれるファイルの管理データの構造としては、図１４に示すファイル管理データを使用する。
【００８２】
次に、本実施例において、ディスク帯域を確保する際の処理手順を図１５のフローチャートを使用して説明する。
本実施例のようなデータ分割配置の際には、２個のディスクのそれぞれがディスク帯域を保証できる必要があるため、次のような手順で帯域確保動作Ｃを行う。
【００８３】
まず、ディスク装置４００及び４０１の帯域確保動作を実施する（ステップＳ５００）。ステップＳ５０１において、帯域確保に失敗した場合は（Ｎｏ）、帯域解放動作（ステップＳ５０４）を実行して、処理を終了する。
もし、帯域確保（ステップＳ５０１）に成功したら（Ｙｅｓ）、データ転送で使用するアドレスデータバスＡＤＢ１及びＡＤＢ２の帯域確保動作を実施する（Ｓ５０２）。どのバスを使用するかは特に限定されないが、最終的にバス帯域に余裕が残るよう、負荷が分散されるように選択すればよい。
【００８４】
次いで、アドレスデータバスの帯域確保が成功したかを判定する（ステップＳ５０３）。帯域確保が成功しなかった場合は（Ｎｏ）、帯域解放動作（ステップＳ５０４）を実行して、処理を終了する。
帯域確保が成功した場合は（Ｙｅｓ）、帯域確保動作を終了する。
【００８５】
ディスク装置４００、４０１には基本的には同様のファイル管理データを書き込むが、２つのディスクに分割されて記録されるファイルに関しては、それぞれのディスク上に書き込まれるファイル管理データのファイル属性にスプリットされていることを示すフラグ、スプリットされた順序を示す分割順序情報、およびスプリットされているデータの長さを分割サイズに書き込む。
ファイルシステムはこれらを参照し、データが分割されていることを認識し、入出力動作の順序を判定した上で入出力動作を実行する。
【００８６】
以上説明した実施の形態の作用（働き）として、アプリケーションから映像の入出力に伴う必要な帯域幅や応答時間の要求を受け取ることを可能となるので、ファイルシステムが各ファイルの入出力毎に提供すべき処理性能を把握した上でハードウェアの制御を行うことが可能となる。また、ハードウェア上のデータ伝送経路や、ファイルシステムの管理するディスク装置やバスインタフェースのバンド幅に基づくリソース管理が可能となるので、ファイルシステムが複数の入出力を制御する際においても、性能保証できるように、ハードウェアのリソース配分を行うことが可能となる。
【００８７】
【発明の効果】
本発明による映像記録再生装置及びファイルシステムによると、入出力を行うデータに必要な入出力性能などの情報をアプリケーションから引き取ることが可能であり、またハードウェアリソースの利用状態をモニタすることが可能であるため、各入出力要求に対して、所要の帯域保証を行うことが可能となる。よって、映像の記録再生動作などリアルタイム処理を行う際の性能保証が可能となることである。
【００８８】
また、本発明による映像記録再生装置及びファイルシステムによると、ファイルシステムがハードウェアのリソース管理を行えるため、ハードウェアの動作状況とアプリケーションの要求している性能を共に把握し、負荷状態に応じた効率的なデータ伝送経路の割り当てをファイルシステムが管理することが可能となる。その結果、性能を保証しつつハードウェアの利用効率を最大限まで向上することが可能となるよって、複数の映像ストリームを扱う場合、ハードウェアの処理効率を引き上げることが可能となる。
【図面の簡単な説明】
【図１】本発明による映像記録再生装置及びファイルシステムの一実施形態の構成図である。
【図２】本発明による映像記録再生装置及びファイルシステムの一実施形態におけるデータ入出力動作のフローチャートである。
【図３】本発明による映像記録再生装置及びファイルシステムの一実施形態におけるリードライト動作のフローチャートである。
【図４】本発明による映像記録再生装置及びファイルシステムの一実施形態における帯域確保動作Ａのフローチャートである。
【図５】本発明による映像記録再生装置及びファイルシステムの一実施形態における帯域確保動作Ｂのフローチャートである。
【図６】本発明による映像記録再生装置及びファイルシステムの一実施形態を説明するためのディレクトリ構造図である。
【図７】本発明による映像記録再生装置及びファイルシステムの一実施形態を説明するためのディレクトリ構造図である。
【図８】本発明による映像記録再生装置及びファイルシステムの一実施形態を説明するためのディレクトリ構造図である。
【図９】本発明による映像記録再生装置及びファイルシステムの一実施形態を説明するための管理データ構造図である。
【図１０】本発明による映像記録再生装置及びファイルシステムの一実施形態を説明するためのディレクトリ階層図である。
【図１１】本発明による映像記録再生装置及びファイルシステムの一実施形態を説明するためのディレクトリ階層図である。
【図１２】本発明による映像記録再生装置及びファイルシステムの他の実施形態の説明図である。
【図１３】本発明による映像記録再生装置及びファイルシステムの他の実施形態の説明図である。
【図１４】本発明による映像記録再生装置及びファイルシステムの他の実施形態を説明するための管理データ構造図である。
【図１５】本発明による映像記録再生装置及びファイルシステムの他の実施形態を説明するための帯域確保動作Ｃのフローチャートである。
【符号の説明】
１００　マイクロプロセッサ
２００　バスインタフェース制御部
２０１、２０２　バス帯域管理レジスタ
２０３　バス帯域管理レジスタＢ
３１０　メモリ
３２０　チューナー
３３０　映像音声デコーダ
３４０　ネットワークインタフェース
３５０　ドライブインタフェース
３５１　ドライブインタフェース
３５２、３５３　ディスク帯域管理レジスタ
４００　ディスク装置
４０１　ディスク装置
ＡＤＢ１、ＡＤＢ２　アドレスデータバス
【図１】
2004013962.tif 000003
【図２】
2004013962.tif 000004
【図３】
2004013962.tif 000005
【図４】
2004013962.tif 000006
【図５】
2004013962.tif 000007
【図６】
2004013962.tif 000008
【図７】
2004013962.tif 000009
【図８】
2004013962.tif 000010
【図９】
2004013962.tif 000011
【図１０】
2004013962.tif 000012
【図１１】
2004013962.tif 000013
【図１２】
2004013962.tif 000014
【図１３】
2004013962.tif 000015
【図１４】
2004013962.tif 000016
【図１５】
2004013962.tif 000017