(57)【要約】【課題】半導体フラッシュメモリの書換え回数を平均化することによって長寿命化を図るとともに、同期処理に係わる時間の不均一性を解消すること。【解決手段】ファイルシステムとしてＵＤＦファイルシステムを用いた半導体フラッシュメモリであって、半導体フラッシュメモリに記録される空間ビットマップが３つの消去ブロックにまたがっている場合、各ブロックの空間ビットマップを部分ＳＢＭ１〜３及びこれに対応するデータ格納領域を部分ＤＳＡ１〜３とすると、Ｒｏｏｔディレクトリを部分ＳＢＭ１に対応する部分ＤＳＡ１に記録し、第１のファイル・ディレクトリ群を部分ＳＢＭ１と部分ＳＢＭ２に対応する部分ＤＳＡ１と部分ＤＳＡ２にのみ記録し、第２のファイル・ディレクトリ群を部分ＳＢＭ１と部分ＳＢＭ３に対応する部分ＤＳＡ１と部分ＤＳＡ３にのみ記録するというマッピング規則を提供する。【選択図】図４
2007241539.tif 000002
【特許請求の範囲】
【請求項１】
ブロック単位でデータの消去を行う半導体フラッシュメモリにおけるデータ管理・制御システムであって、
前記半導体フラッシュメモリには、ファイルシステムで規定されたファイルデータを格納するデータ格納領域と、前記データ格納領域の使用状況をあらわし前記ブロック単位の複数の部分空間ビットマップからなる空間ビットマップと、が形成され、
前記部分空間ビットマップは、前記データ格納領域において区分けされた部分データ格納領域に対応しており、
前記部分空間ビットマップの数に対応して仕分けされたファイルディレクトリ群と前記部分データ格納領域とを対応させるマッピング規則であるとともに、一のファイルディレクトリ群がまたがって記録できない部分データ格納領域を設けるマッピング規則を設定する
ことを特徴とする半導体フラッシュメモリのデータ管理・制御システム。
【請求項２】
請求項１において、
前記ファイルシステムは、ＵＤＦファイルシステム仕様に準拠することを特徴とするデータ管理・制御システム。
【請求項３】
請求項２において、
前記マッピング規則は、前記部分空間ビットマップがＮ(Ｎ≧３)個である場合、前記ファイルデータにおけるルートディレクトリを含み且つ前記ルートディレクトリ以下のファイルディレクトリを互いに重複させることなくＮ個のファイルディレクトリ群に分割し、前記ルートディレクトリを第１番目の部分空間ビットマップで管理するとともに、第Ｍ番目（１＜Ｍ＜Ｎ）のファイルディレクトリ群を、第１番目と第Ｍ番目の部分空間ビットマップで管理し、前記第Ｍ番目のファイルディレクトリ群を、第１番目と第Ｍ番目の部分データ格納領域のみに記録する
ことを特徴とするデータ管理・制御システム。
【請求項４】
請求項２において、
前記マッピング規則は、前記部分空間ビットマップがＮ(Ｎ≧２)個である場合、前記ファイルデータにおけるルートディレクトリを１回だけ含み且つ前記ルートディレクトリ以下のファイルディレクトリを互いに重複させることなくＮ個のファイルディレクトリ群に分割し、前記ルートディレクトリを第１番目の部分空間ビットマップで管理するとともに、第Ｍ番目（１＜Ｍ＜Ｎ）のファイルディレクトリ群を、第Ｍ番目の部分空間ビットマップで管理し、前記第Ｍ番目のファイルディレクトリ群を、第Ｍ番目の部分データ格納領域のみに記録する
ことを特徴とするデータ管理・制御システム。
【請求項５】
ファイルシステムで規定されたファイルデータを格納するデータ格納領域と、前記データ格納領域の使用状況をあらわし前記ブロック単位の複数の部分空間ビットマップからなる空間ビットマップと、を形成した半導体フラッシュメモリと、
前記空間ビットマップを参照または変更するために前記空間ビットマップとの同期処理の情報を格納するとともに、ファイルデータを一時的に格納するシステムメモリと、
前記部分空間ビットマップの数に対応して仕分けされたファイルディレクトリ群と前記部分データ格納領域とを対応させるとともに、一のファイルディレクトリ群がまたがって記録できない部分データ格納領域を設けるマッピング規則を提供するデータ配置管理部を含み、ＵＤＦファイルシステムと空間ビットマップを管理するデータ管理手段と、
前記システムメモリと前記半導体フラッシュメモリとの間におけるデータフローを制御するデータ制御手段と、を備えた
ことを特徴とする半導体フラッシュメモリ収容装置。
【請求項６】
請求項５において、
映像または音声を取得する映像処理手段と、ネットワークとの接続を行うネットワーク接続手段とをさらに備えた監視カメラ装置であって、
前記ファイルディレクトリ群は、複数の曜日で仕分けされるイメージ情報を有することを特徴とする監視カメラ装置。
【請求項７】
ブロック単位でデータの消去を行う半導体フラッシュメモリにおけるデータ管理方法において、
前記半導体フラッシュメモリに対して、ファイルシステムで規定されたファイルデータを格納するデータ格納領域と、前記データ格納領域の使用状況をあらわし前記ブロック単位の複数の部分空間ビットマップからなる空間ビットマップと、を形成し、
前記ファイルデータのディレクトリ構造と、前記データ格納領域で区分けされた部分データ格納領域との対応付けを規定するマッピング規則を設定し、
前記マッピング規則は、
前記部分空間ビットマップがＮ(Ｎ≧３)個である場合、前記ディレクトリ構造のルートディレクトリを含み且つ前記ルートディレクトリ以下のファイルディレクトリを互いに重複させることなくＮ個のファイルディレクトリ群に分割し、
前記ルートディレクトリを第１番目の部分空間ビットマップで管理するとともに当該部分空間ビットマップに対応する第１番目の部分データ格納領域のみに記録し、
第Ｍ番目（１＜Ｍ＜Ｎ）のファイルディレクトリ群を第１番目と第Ｍ番目の部分空間ビットマップで管理するとともに当該部分空間ビットマップに対応する第１番目と第Ｍ番目の部分データ格納領域のみに記録し、
第Ｍ番目のファイルディレクトリ群は、第Ｍ番目と第Ｌ番目（Ｌは１とＭを除いたＮより小さい整数値）の部分データ格納領域にまたがっては記録できないようにする
ことを特徴とする半導体フラッシュメモリのデータ管理方法。
【請求項８】
ブロック単位でデータの消去を行う半導体フラッシュメモリにおけるデータ管理方法において、
前記半導体フラッシュメモリに対して、ファイルシステムで規定されたファイルデータを格納するデータ格納領域と、前記データ格納領域の使用状況をあらわし前記ブロック単位の複数の部分空間ビットマップからなる空間ビットマップと、を形成し、
前記ファイルデータのディレクトリ構造と、前記データ格納領域で区分けされた部分データ格納領域との対応付けを規定するマッピング規則を設定し、
前記マッピング規則は、
前記部分空間ビットマップがＮ(Ｎ≧２)個である場合、前記ディレクトリ構造のルートディレクトリを１回だけ含み且つ前記ルートディレクトリ以下のファイルディレクトリを互いに重複させることなくＮ個のファイルディレクトリ群に分割し、
前記ルートディレクトリを第１番目の部分空間ビットマップで管理するととも当該部分空間ビットマップに対応する第１番目の部分データ格納領域のみに記録し、
第Ｍ番目（１＜Ｍ＜Ｎ）のファイルディレクトリ群を第Ｍ番目の部分空間ビットマップで管理するとともに当該部分空間ビットマップに対応する第Ｍ番目の部分データ格納領域のみに記録し、
第Ｍ番目のファイルディレクトリ群は、第Ｍ番目以外の他の部分データ格納領域にまたがっては記録できないようにする
ことを特徴とする半導体フラッシュメモリのデータ管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ブロック単位でのデータ消去を特徴とする半導体フラッシュメモリにおけるデータ管理及び制御システムと、半導体フラッシュメモリを適用した監視カメラ装置を一例とする半導体フラッシュメモリ収容装置に関する。
【背景技術】
【０００２】
近年、ブロック単位でのデータ消去を特徴とする半導体フラッシュメモリの大容量化、低価格化に伴い、ストレージデバイスとしての利用が広まっている。そしてこのような半導体フラッシュメモリをストレージデバイスとして利用するには、半導体フラッシュメモリが有するいくつかの公知の特徴に配慮しなければならない。
【０００３】
まず第１に、各ブロックには一定の書換え保証回数があり、これは半導体フラッシュメモリの信頼性すなわちメモリとしての寿命に関係するという特徴がある。そのため、前記書換え保証回数を超えないように各ブロックを平均的に使用するための工夫が必要である。
【０００４】
第２に、同一ブロックへの上書き動作は、当該ブロックを一旦消去する必要があることから、上書きを伴わない単なるライト動作に比べて動作完了までの時間が長いという特徴がある。このため上書き動作と、リード動作や単なるライト動作が競合しないように調停したり、上書き動作自身を減少させたりする工夫が必要である。
【０００５】
このような第１の特徴に対して、半導体フラッシュメモリの各ブロックに対する書換え回数カウンタを具備し、そしてこのカウンタ値に基づいてデータを記録するブロックを決定することによって書換え回数を平均化するという長寿命化方式が提案されている（例えば、特許文献１を参照）。また第２の特徴に対して、半導体フラッシュメモリ上において頻繁に更新する必要があるデータは、一旦システムメモリ（主記憶メモリ）上にコピーされ、そのコピーされたデータに対して変更を行うとともに、前記変更とは異なるタイミングを契機にシステムメモリ上のデータを半導体フラッシュメモリ上に書き戻す同期処理を行うという上書き動作削減方式が知られている。さらに前記同期処理を行う際に、変更が生じた箇所のみをブロック単位で書き戻すことによって、同期処理に係わる時間を短くするという高速化方式が提案されている（例えば、特許文献２を参照）。
【０００６】
ところで、半導体フラッシュメモリばかりでなく、光磁気ディスクやＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）といった各種メディアにデータを記録し管理するためには、ファイルシステムが必要になる。ファイルシステムは、そのメディアの物理的特徴や利用形態に応じて様々な方式があるが、新たに生成したデータの作成日時や既にあるデータを編集した際の更新日時、さらにはデータの種別や属性等を管理情報として保持するとともに、データをメディアに記録するセクタやページを指定する機能を提供する。そして、このファイルシステムにおける管理情報こそが、頻繁に更新する必要があるデータの一つである。
【０００７】
現在、多くのメディアにおいて使用されているファイルシステムにＦＡＴ（Ｆｉｌｅ  Ａｌｌｏｃａｔｉｏｎ  Ｔａｂｌｅ）があるが、メディアの大容量化や可搬化に伴う互換性確保のためにも、光磁気ディスク向けにデファクトスタンダードとなっているＵＤＦ（Ｕｎｉｖｅｒｓａｌ  Ｄｉｓｋ  Ｆｏｒｍａｔ）ファイルシステムが注目されている（非特許文献１を参照）。
【０００８】
ここで、図２と図３を用いて、ＵＤＦファイルシステム仕様におけるデータ管理方法について説明する。なお、図２と図３に対する説明は、本発明の実施形態に係るデータ管理及び制御システムの前提となる技術である。図２は半導体フラッシュメモリ上に記録するファイルデータが属するディレクトリ構造を示している。図示するように、Ｒｏｏｔディレクトリ２１の直下にＤｉｒ１（２２）とＤｉｒ２（２４）とＦｉｌｅ３（２３）があり、前記Ｄｉｒ１（２２）の下にＦｉｌｅ１（２５）とＤｉｒ３（２６）、前記Ｄｉｒ２（２４）の下にＦｉｌｅ２（２７）がある場合である。
【０００９】
そして図３は、図２に示したディレクトリ構造をＵＤＦファイルシステム仕様で表現した例である。図示するように、ＲｏｏｔＦＥ（Ｆｉｌｅ  Ｅｌｅｍｅｎｔ）３１はヘッダ情報と、Ｄｉｒ１ＦＥ３２とＤｉｒ２ＦＥ３３とＦｉｌｅ３ＦＥ３４へのＦＩＤ（Ｆｉｌｅ  Ｉｄｅｎｔｉｆｉｅｒ  Ｄｅｓｃｒｉｐｔｏｒ）を所有し、前記Ｄｉｒ１ＦＥ３２はヘッダ情報と、Ｄｉｒ３ＦＥ３５とＦｉｌｅ１ＦＥ３６とＲｏｏｔＦＥ３１へのＦＩＤを所有し、前記Ｄｉｒ２ＦＥ３３はヘッダ情報と、Ｆｉｌｅ２ＦＥ３７とＲｏｏｔＦＥ３１へのＦＩＤを所有し、前記Ｆｉｌｅ１ＦＥ３６と前記Ｆｉｌｅ２ＦＥ３７と前記Ｆｉｌｅ３ＦＥ３４ではヘッダ情報と各ファイルのデータを所有している。
【００１０】
このようにＵＤＦファイルシステム仕様では、ディレクトリやファイルをＦＥ（Ｆｉｌｅ  Ｅｌｅｍｅｎｔ）と呼ばれるデータ構造によって管理し、ディレクトリであるならばその配下に存在するファイルや子ディレクトリへのポインタ情報と、それに加えて親ディレクトリに対するポインタを管理している。このため、例えばＦｉｌｅ３ＦＥ３４を削除すると、ＲｏｏｔＦＥ３１では前記Ｆｉｌｅ３ＦＥ３４に対応するＦＩＤの所定のビットを変更する必要がある。
【００１１】
一方、半導体フラッシュメモリの利用先は、テキストデータを中心に取り扱うＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）や静止画像を中心に取り扱うデジタルカメラ装置向けストレージデバイスから、映像や音楽といったリアルタイムデータを記録、保存するメディアとして注目されており、今後は様々な組込み装置へ適用されていく方向にある。
【００１２】
例えば、前記組込み装置の例として監視カメラ装置がある。監視カメラ装置は、設置場所における動画像や静止画像といった監視情報を日々決まった時刻に取得して記録するものであるが、その用途及び目的から小型であるとともに保守の容易性や省電力性、静音性、耐衝撃性といった要件を満たす必要がある。
【００１３】
従来、監視情報を格納する記録手段としてＨＤＤを具備した監視カメラ装置があるが、前記要件に照らすとＨＤＤの代わりに半導体フラッシュメモリを使用することも十分可能である。しかしながらこれまで述べてきたように、リアルタイム性が要求される監視情報といったデータを半導体フラッシュメモリに記録するには、その特徴を考慮したデータ管理及び制御システムが必要である。
【特許文献１】特開２００４−３１０６５６号公報
【特許文献２】特開２００５−２１６１１９号公報
【非特許文献１】Ｕｎｉｖｅｒｓａｌ  Ｄｉｓｋ  Ｆｏｒｍａｔ  （ＯＳＴＡ）
【発明の開示】
【発明が解決しようとする課題】
【００１４】
しかしながら、上記特許文献１に開示されたように、半導体フラッシュメモリの公知の特徴に対する前記長寿命化方式によれば、各ブロック（消去ブロックとも称される）に対する書換え回数を示すカウンタ値も不揮発なメディアである半導体フラッシュメモリ上に記録しておかなければならない。
【００１５】
通常の動作時は、例えばシステムメモリ（主記憶メモリ）上にコピーした前記カウンタ値をカウントアップすることになるが、不測の電源障害等に対応するために前記カウンタ値を同期処理として半導体フラッシュメモリの所定ブロックに書き戻す必要がある。このため、同期処理時に書き戻さなければならないデータ量やブロック数が増加し、結果として同期処理に係わる時間が増大するという課題がある（システムメモリと半導体フラッシュメモリとで同期処理すべき対象としては、書き換え回数のカウント値と書き換えに伴うデータがある）。
【００１６】
また、上記特許文献２に開示されたように、半導体フラッシュメモリの公知の特徴に対する前記高速化方式によれば、システムメモリ上において変更される箇所、すなわち同期処理において半導体フラッシュメモリに書き戻さなければならないブロック数は必ずしも一定にならない。このため、同期処理に係わる時間が不規則に変動するという課題がある。
【００１７】
本発明は、上述した課題を解決するために、半導体フラッシュメモリの書換えを平均化することによって長寿命化を図るとともに、同期処理に係わる時間の不均一性を解消することによって容易にリアルタイムデータの記録と読出しを可能とするデータ管理及び制御システムを提供することにある。
【課題を解決するための手段】
【００１８】
前記課題を解決するために、本発明は主として次のような構成を採用する。  
ブロック単位でデータの消去を行う半導体フラッシュメモリにおけるデータ管理・制御システムであって、
前記半導体フラッシュメモリには、ＵＤＦファイルシステム仕様に準拠したファイルデータを格納するデータ格納領域と、前記データ格納領域の使用状況をあらわし前記ブロック単位の複数の部分空間ビットマップからなる空間ビットマップと、が形成され、
前記部分空間ビットマップは、前記データ格納領域において区分けされた部分データ格納領域に対応しており、
前記部分空間ビットマップの数に対応して仕分けされたファイルディレクトリ群と前記部分データ格納領域とを対応させるマッピング規則であるとともに、一のファイルディレクトリ群がまたがって記録できない部分データ格納領域を設けるマッピング規則を設定する構成とする。
【００１９】
また、前記半導体フラッシュメモリのデータ管理・制御システムにおいて、前記マッピング規則は、前記部分空間ビットマップがＮ(Ｎ≧３)個である場合、前記ファイルデータにおけるルートディレクトリを含み且つ前記ルートディレクトリ以下のファイルディレクトリを互いに重複させることなくＮ個のファイルディレクトリ群に分割し、前記ルートディレクトリを第１番目の部分空間ビットマップで管理するとともに、第Ｍ番目（１＜Ｍ＜Ｎ）のファイルディレクトリ群を、第１番目と第Ｍ番目の部分空間ビットマップで管理し、前記第Ｍ番目のファイルディレクトリ群を、第１番目と第Ｍ番目の部分データ格納領域のみに記録する構成とする。
【００２０】
また、前記データ管理・制御システムにおいて、前記マッピング規則は、前記部分空間ビットマップがＮ(Ｎ≧２)個である場合、前記ファイルデータにおけるルートディレクトリを１回だけ含み且つ前記ルートディレクトリ以下のファイルディレクトリを互いに重複させることなくＮ個のファイルディレクトリ群に分割し、前記ルートディレクトリを第１番目の部分空間ビットマップで管理するとともに、第Ｍ番目（１＜Ｍ＜Ｎ）のファイルディレクトリ群を、第Ｍ番目の部分空間ビットマップで管理し、前記第Ｍ番目のファイルディレクトリ群を、第Ｍ番目の部分データ格納領域のみに記録する構成とする。
【発明の効果】
【００２１】
本発明によると、記録対象のデータが属するディレクトリ構造と前記データを記録するデータ格納領域とを対応付けするマッピング規則を設けることによって、このマッピング規則による対応付けのため、前記ディレクトリ構造を意識することによって明示的にデータ格納領域を分散することができる。これによって同期処理に対する空間ビットマップの書換え回数を平均化することが可能であるとともに、前記空間ビットマップに対応するデータを記録するデータ格納領域の書換え回数も平均化することが可能である。したがって、半導体フラッシュメモリの長寿命化に貢献することができる。
【００２２】
また、半導体フラッシュメモリの空間ビットマップ全体に生じる変更を局所化することができる。これによって空間ビットマップの同期処理に係わる時間の短縮化と均一化、更には同期処理に係わる最大時間の保証を行うが可能である。したがって、同期処理に伴うデータのリード動作や単なるライト動作の遅延を抑制することができ、リアルタイム性の高いデータの半導体フラッシュメモリへの記録と読出しを容易に実現することができる。
【００２３】
さらに、データのデータ格納領域における記録場所を限定することができる。このため、前記データが不要にフラグメントされることを抑制することが可能である。したがって、所望のファイルデータに対するアクセス性能を向上し、検索時間を短縮することが可能になる。
【発明を実施するための最良の形態】
【００２４】
「第１の実施形態」
本発明の第１の実施形態に係るデータ管理及び制御システムを備えた半導体フラッシュメモリ収容装置について、図１と図４を参照しながら以下説明する。図１は本発明の第１の実施形態に係るデータ管理及び制御システムに適用するマッピング規則を説明するためのファイルデータが属するディレクトリ構造を示す図である。図４は本発明の第１の実施形態に係るデータ管理及び制御システムを備えた半導体フラッシュメモリ収容装置の構成を示すブロック図である。
【００２５】
図４において、半導体フラッシュメモリ収容装置４１は、データ管理手段４２と、データ制御手段５３と、システムメモリ４７と、半導体フラッシュメモリ５６と、から構成され、前記半導体フラッシュメモリ５６はブロック単位でデータ消去を行うようになっている。後述するが、図４の例では、半導体フラッシュメモリの部分ＳＢＭ１，ＳＢＭ２及びＳＢＭ３はそれぞれデータ消去のブロック単位であり、部分ＤＳＡ１，ＤＳＡ２及びＤＳＡ３はそれぞれ複数の消去ブロック単位からなる。
【００２６】
また、前記半導体フラッシュメモリ５６は、ＵＤＦファイルシステム仕様に準拠してフォーマットされており、図４ではＵＤＦパーティション６５において空間ビットマップ５７とデータ格納領域６１とを示している。
【００２７】
空間ビットマップ５７は、半導体フラッシュメモリ５６のＵＤＦパーティション６５における使用状況（空状況）を、ページ単位（例えば５１２バイト単位）で管理しているＵＤＦファイルシステム仕様にて規定されたビットマップであり、言い換えれば半導体フラッシュメモリ５６に格納された各種データの記録場所を示している。そして図４では、前記空間ビットマップ５６の配置状況として３つのブロックに連続的にまたがって配置されている例を示している。以下、複数のブロックにまたがって配置されたブロック単位の各空間ビットマップを、それぞれ部分ＳＢＭ（Ｓｐａｃｅ  Ｂｉｔ  Ｍａｐ）１（５８）、部分ＳＢＭ２（５９）、部分ＳＢＭ３（６０）と呼ぶこととする。本実施形態に示すように、空間ビットマップ５７が複数のブロックにまたがって記録されることは、半導体フラッシュメモリ５６のページサイズやブロックサイズ、更にはＵＤＦパーティション６５のサイズに依存することになるが、近年の大容量化に伴って通常発生しうる現象である。
【００２８】
データ格納領域６１は、システムメモリ４７上のファイルデータ５２等を記録するところであり、以下、空間ビットマップ５７の部分ＳＢＭ１（５８）、部分ＳＢＭ２（５９）、部分ＳＢＭ３（６０）に対応するデータ格納領域６１を、それぞれ部分ＤＳＡ（Ｄａｔａ  Ｓｕｂ  Ａｒｅａ）１（６２）、部分ＤＳＡ２（６３）、部分ＤＳＡ３（６４）と呼ぶことにする。
【００２９】
システムメモリ４７は、データ管理手段４２が高速に半導体フラッシュメモリ５６の空間ビットマップ５７を参照したり変更したりすることを目的に、前記空間ビットマップ５７のコピーである空間ビットマップ４８を格納したり、またユーザが編集したりアプリケーションプログラムが生成したりする各種のファイルデータ５２を一時的に格納したりする場所である。前記システムメモリ４７の空間ビットマップ４８は、半導体フラッシュメモリ収容装置４１の起動時に所定の起動シーケンスに従って半導体フラッシュメモリ５６から読み出され、また終了時に所定の終了シーケンスに従って半導体フラッシュメモリ５６に書き戻される。
【００３０】
また詳細は後述するが、運用中はデータ管理手段４２のイベント管理部４４の指示に従って逐次半導体フラッシュメモリ５６に書き戻され、システムメモリ４７の空間ビットマップ４８と半導体フラッシュメモリ５６の空間ビットマップ５７との間で同期処理が実施される。なお、フラッシュメモリ４７と半導体フラッシュメモリ５６との間の同期処理は、空間ビットマップ４８と５７の外に、ファイルデータ５２とデータ格納領域６１における各ＤＳＡのデータとが対象となる。
【００３１】
データ管理手段４２は、ＵＤＦファイルシステム部４３と、イベント管理部４４と、ＳＢＭ管理部４５と、データ配置管理部４６と、より構成される。ＵＤＦファイルシステム部４３は、ＵＤＦファイルシステム仕様に準拠して半導体フラッシュメモリ５６をフォーマットしたり、ファイルデータ５２の作成・更新日時、種別、属性等を管理、変更、参照したり、更にはシステムメモリ４７上の空間ビットマップ４８を用いて、半導体フラッシュメモリ５６におけるＵＤＦパーティション６５の使用状況（空状況）を管理するところである。またＵＤＦファイルシステム部４３は、データ配置管理部４６に対してフォーマット時に決定された空間ビットマップ５７の配置状況を通知する。
【００３２】
ＳＢＭ管理部４５は、システムメモリ４７の空間ビットマップ４８と半導体フラッシュメモリ５６の空間ビットマップ５７の同期処理を実施する際に必要な情報を提供するところである。また、イベント管理部４４は、データ管理手段４２やデータ制御手段５３を構成する各機能部や、図４には記載していないが半導体フラッシュメモリ収容装置４１が具備するタイマ部等からの通知を受信し、前記通知に対応する指示を前記各機能部に発行するところである。また前記イベント管理部４４は、前記同期処理の実施に係わるスケジューリングを行うところでもある。
【００３３】
データ配置管理部４６は、ＵＤＦファイルシステム部４３より取得した半導体フラッシュメモリ５６における空間ビットマップ５７の配置状況に応じて、システムメモリ４７上のファイルデータ５２を前記半導体フラッシュメモリ５６のどの部分ＳＢＭに対応する部分ＤＳＡに記録するか、すなわち前記ファイルデータ５２のディレクトリ構造と、前記空間ビットマップ５７の部分ＤＳＡ１（６２）、部分ＤＳＡ２（６３）、部分ＤＳＡ３（６４）とを対応付けるためのマッピング規則を提供するところである。
【００３４】
前記データ管理手段４２は、例えば半導体フラッシュメモリ収容装置４１を制御したり管理したりするＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）やＵＤＦファイルシステム部４３の拡張機能として、ソフトウェアで実現することができる。
【００３５】
データ制御手段５３は、ＳＢＭ制御部５４とデータ制御部５５とから構成される。ＳＢＭ制御部５４及びデータ制御部５５は、システムメモリ４７と半導体フラッシュメモリ５６との間における、様々なデータフロー６６を制御するところである。前記データ制御手段５３は、半導体フラッシュメモリ５６に物理的なインターフェイスを提供するハードウェアにおける制御ソフトウェアとして実現することができる。
【００３６】
次に、データ管理手段４２のデータ配置管理部４６について、図４と図１を用いて説明する。図１は、図４に示すように半導体フラッシュメモリ５６における空間ビットマップ５７が３つのブロックにまたがって配置される場合であって、半導体フラッシュメモリ５６のデータ格納領域６１に記録されるシステムメモリ４７上のファイルデータ５２が属するディレクトリ構造を示している。
【００３７】
そして、本発明の第１の実施形態では、図１に示すＲｏｏｔディレクトリ１１を図４に示す部分ＳＢＭ１（５８）に対応するデータ格納領域６１の部分ＤＳＡ１（６２）に記録し、前記Ｒｏｏｔディレクトリ１１以下に配置される第１のファイル・ディレクトリ群１２を、図４に示す部分ＳＢＭ１（５８）と部分ＳＢＭ２（５９）に対応する部分ＤＳＡ１（６２）と部分ＤＳＡ２（６３）に記録し、また前記ルートディレクトリ１１以下に配置される第２のファイル・ディレクトリ群１３を、図４に示す部分ＳＢＭ１（５８）と部分ＳＢＭ３（６０）に対応する部分ＤＳＡ１（６２）と部分ＤＳＡ３（６４）に記録し、さらに、第１のファイル・ディレクトリ群１２と第２のファイル・ディレクトリ群１３は、図４に示す部分ＳＢＭ２（５９）と部分ＳＢＭ３（６０）に対応する部分ＤＳＡ２（６３）と部分ＤＳＡ３（６４）にまたがって記録できない、というマッピング規則を提供し、このマッピング規則が本発明の第１の実施形態の特徴の１つである。
【００３８】
なお、データ更新の頻度を考慮して、例えば、深い階層のファイルディレクトリ群をＤＳＡ２にし、浅い階層の方のものをＤＳＡ１としてもよく、使用状況を見て変更しても良く、要は半導体フラッシュメモリのブロック（消去の単位となる消去ブロック）を均等に使用することが主旨である。また、図１の例で云えば、第１のファイルディレクトリ群のＦｉｌｅ１を書き換える場合には、当然のことながらルートディレクトリは変更無しである。
【００３９】
ＵＤＦファイルシステム仕様では、図３でも述べたように、ディレクトリやファイルを管理するデータ構造（ＦＥ）において、その配下に存在するファイルや子ディレクトリへのポインタ情報と、それに加えて、親ディレクトリに対するポインタも所有している。このため、図１に示した第１のファイル・ディレクトリ群１２を、図４における部分ＳＢＭ１（５８）と部分ＳＢＭ２（５９）に対応する部分ＤＳＡ１（６２）と部分ＤＳＡ２（６３）の２つにまたがって記録するという前記マッピング規則は、第１のファイル・ディレクトリ群１２におけるＲｏｏｔディレクトリ１１直下のファイル及びディレクトリ構造に自由度を提供するためである。
【００４０】
同様に、第２のファイル・ディレクトリ群１３を、図４に示す部分ＳＢＭ１（５８）と部分ＳＢＭ３（６０）に対応する部分ＤＳＡ１（６２）と部分ＤＳＡ３（６４）の２つにまたがって記録してもよいとする前記マッピング規則は、第２のファイル・ディレクトリ群１３におけるルートディレクトリ１１直下のファイル及びディレクトリ構成に自由度を提供するためである。
【００４１】
なお、図４に示す半導体フラッシュメモリ１０６の空間ビットマップとデータ格納領域は、上述したようにブロック単位でデータ消去されるのであり、空間ビットマップの各部分ＳＢＭは消去すべきブロック単位に対応しており、各部分ＤＳＡは複数の消去ブロック単位から形成されていてファイルデータ５２を記録する箇所である。そして、空間ビットマップにおける部分ＳＢＭの数は、半導体フラッシュメモリのサイズや属性によって決められるものであり、半導体フラッシュメモリの部分ＳＢＭと部分ＤＳＡはそれぞれ対応している。本実施形態では、この部分ＳＢＭの数に対応して、図１に示すようなディレクトリ構造をファイルディレクトリ群として仕分けするものである。ここで、図１に示すように仕分けされたファイルディレクトリ群を、図４に示す部分ＤＳＡ（６２，６３，６４）のどこにどのように記録するかを決めたものがマッピング規則である。そして、本実施形態では、一のファイルディレクトリ群が特定の部分ＤＳＡ間には（例えば、ＤＳＡ２とＤＳＡ３の間には）跨って記録できないというマッピング規則を作成するのである。
【００４２】
上述したように、ファイルデータ５２のディレクトリ構造とデータ格納領域６１の各部分ＤＳＡとを対応付けるマッピング規則を採用することによって、以下のような効果が得られる。まず、半導体フラッシュメモリ５６に対して、図１に示す第１のファイル・ディレクトリ群１２と第２のファイル・ディレクトリ群１３を短期的もしくは長期的視点に立ち交互に（経時的に）データを記録するという方策を設けることによって、同期処理に対する空間ビットマップの各部分ＳＢＭの書換え回数を平均化することができる。また、これに対応して、実際にファイルデータを記録する部分ＤＳＡの書換え回数も平均化することができる（部分ＤＳＡは部分ＳＢＭにそれぞれ対応していて、ファイルデータ５２を記録する箇所である）。したがって、半導体フラッシュメモリの長寿命化に貢献することができる。なお、部分ＳＢＭは消去ブロック単位に対応しているが、部分ＤＳＡは多数の消去ブロックから成り立っている。
【００４３】
また、第１のファイル・ディレクトリ群１２もしくは第２のファイル・ディレクトリ群１３に存在する、１つのファイルやディレクトリに対する変更や削除、追加といった動作に対し、３つすべての部分ＳＢＭに変更が生じることなく、最大でも２つの部分ＳＢＭに変更箇所を抑制することができる。このため、空間ビットマップの同期処理を早期に完了することができ（３つすべての部分ＳＢＭに変更が生じる場合に比べて、最大でも２つの部分ＳＢＭの変更で済ませることができるため）、同期処理に伴うファイルデータのリード動作やライト動作の遅延を短縮することが可能になる。また、同期処理に係わる最大時間を見積もることができ、リアルタイム性の高いファイルデータの半導体フラッシュメモリへの記録や前記半導体フラッシュメモリからの読出しを容易に設計することが可能になる。
【００４４】
更に、第１のファイル・ディレクトリ群１２もしくは第２のファイル・ディレクトリ群１３が特定の部分ＳＢＭ間、すなわち部分ＤＳＡ間にまたがって記録することを許可しないため（例示で云えば、ＤＳＡ２とＤＳＡ３とにまたがって記録されないというマッピング規則）、半導体フラッシュメモリにおけるファイルデータやディレクトリ構造が複雑に配置されたり、フラグメントされたりすることを防ぐことができる。このため、所望のファイルデータに対するアクセス性能を向上し、検索時間を短縮することが可能になる。
【００４５】
ところで、図１は、図４に示すように空間ビットマップ５７が３つのブロックにまたがって記録される場合を用いてマッピング規則を説明したが、４つ以上のブロックにまたがる場合でも、前記マッピング規則を適用することが可能であり、同様の効果を得ることができる。例えば、半導体フラッシュメモリにおける空間ビットマップが４つのブロックにまたがって配置される場合、このとき部分ＳＢＭは４つ（部分ＳＢＭ１〜４）存在し、それに対応した部分ＤＳＡも４つ（部分ＤＳＡ１〜４）存在することになる。
【００４６】
そしてマッピング規則としてＲｏｏｔディレクトリを部分ＳＢＭ１に対応する部分ＤＳＡ１に、Ｒｏｏｔディレクトリ以下に配置される第１のファイル・ディレクトリ群を部分ＳＢＭ１と部分ＳＢＭ２に対応する部分ＤＳＡ１と部分ＤＳＡ２に、Ｒｏｏｔディレクトリ以下に配置される第２のファイル・ディレクトリ群を部分ＳＢＭ１と部分ＳＢＭ３に対応する部分ＤＳＡ１と部分ＤＳＡ３に、Ｒｏｏｔディレクトリ以下に配置される第３のファイル・ディレクトリ群を部分ＳＢＭ１と部分ＳＢＭ４に対応する部分ＤＳＡ１と部分ＤＳＡ４に記録するとともに、第１のファイル・ディレクトリと、第２のファイル・ディレクトリ群と、第３のファイル・ディレクトリ群の各々が、他の部分ＳＢＭに対応する部分ＤＳＡにまたがって記録することを認めないことによって、４つすべての部分ＳＢＭ及び部分ＤＳＡに変更が生じることなく、最大でも２つの部分ＳＢＭ及び部分ＤＳＡに変更箇所を抑制することが可能となる。
【００４７】
次に、図５を参照して、ＵＤＦファイルシステム部４３とＳＢＭ管理部４５とイベント管理部４４とＳＢＭ制御部５４とデータ制御部５５の動作について、システムメモリ４７の空間ビットマップ４８と半導体フラッシュメモリ５６の空間ビットマップ５７間の同期処理と、システムメモリ４７のファイルデータ５２を半導体フラッシュメモリ５６のデータ格納領域６１へ格納する格納処理を例にして、以下説明する。尚、図５は図４に示した半導体フラッシュメモリ収容装置４１において、説明に必要な部分のみを抽出するとともに、一部を詳細化して示している。
【００４８】
システムメモリ４７上のファイルデータ５２を半導体フラッシュメモリ５６のデータ格納領域６１に格納する場合、まずＵＤＦファイルシステム部４３は、システムメモリ４７の空間ビットマップ４８を参照し、データ配置管理部４６より提供されるマッピング規則に従って、ファイルデータ５２の半導体フラッシュメモリ５６における記録場所を探索する。そして前記記録場所が決定すると、対応する空間ビットマップ４８の部分ＳＢＭ１（４９）もしくは部分ＳＢＭ２（５０）もしくは部分ＳＢＭ３（５１）もしくは部分ＳＢＭ１（４９）と部分ＳＢＭ２（５０）、もしくは部分ＳＢＭ１（４９）と部分ＳＢＭ３（５１）のいずれかのビットを記録状態に変更するという、空間ビットマップ変更処理７２を実施する。そして前記空間ビットマップ変更処理７２が完了すると、ＳＢＭ管理部４５に対して変更した部分ＳＢＭの番号を含む空間ビットマップ更新完了通知７１を発行する。
【００４９】
次に、ＳＢＭ管理部４５は、部分ＳＢＭ番号７３と、これに対応する書換えフラグ７４を持つＳＢＭ管理テーブル８６を所有しており、前記空間ビットマップ更新完了通知７１を受信すると、対応するＳＢＭ管理テーブル８６の書換えフラグ７４を１にセットする。図５では、空間ビットマップ４８の部分ＳＢＭ１（４９）と部分ＳＢＭ２（５０）が変更された場合を示している。そしてセットが完了すると、イベント管理部４４に対してフラグセット完了通知７５を発行する。
【００５０】
次にイベント管理部４４は、前記フラグセット完了通知７５を受信すると、ＳＢＭ制御部５４に対して空間ビットマップ４８の同期処理開始指示７７を発行する。但し、前記イベント管理部４４は、図５では示していないがタイマ装置から時間情報を取得し、ある一定期間は部分ＳＢＭ１（４９）と部分ＳＢＭ２（５０）しか変更が生じないことを別途所定の手段によって既知であるならば、前記タイマ装置からの時間情報に基づいて同期処理開始指示７７を発行するというスケジューリングを行うことも可能である。
【００５１】
ＳＢＭ制御部５４は、前記同期処理開始指示７７を受信するとＳＢＭ管理部４５のＳＢＭ管理テーブル８６を参照し、半導体フラッシュメモリ５６に書き戻す対象の部分ＳＢＭを取得する。そして、部分ＳＢＭ１（４９）の空間ビットマップデータ８３と部分ＳＢＭ２（５０）の空間ビットマップデータ８４を半導体フラッシュメモリ５６の空間ビットマップ５７の部分ＳＢＭ１（５８）と部分ＳＢＭ２（５９）への書き戻しと、それが完了したことを検出する一連の書き戻し処理８１を実施する。
【００５２】
ここで、図５には記載していないが、前記書き戻し処理８１は、システムメモリ４７と半導体フラッシュメモリ５６との物理的なインターフェイスを提供するハードウェアに対して部分ＳＢＭ１（４９）と部分ＳＢＭ２（５０）の書き戻しを依頼し、所定の方法によって実施される。前記ハードウェアは、ＳＢＭ制御部５４に対して書き戻しが完了した旨を通知し、ＳＢＭ制御部５４はそれを取得することとなる。ＳＢＭ制御部５４は前記書き戻し処理８１が完了すると、イベント管理部４４に対して同期処理完了通知７８を発行する。
【００５３】
イベント管理部４４は、前記同期処理完了通知７８を受信すると、データ制御部７９に対して半導体フラッシュメモリ５６へのファイルデータ５２の記録を行うデータ格納指示７９を発行する。それと同時にＳＢＭ管理部４５に対してＳＢＭ管理テーブル８６の書換えフラグ７４をクリアするためのフラグクリア指示７６を発行する。ＳＢＭ管理部４５は、前記フラグクリア指示７６を受信すると、ＳＢＭ管理テーブル８６の書換えフラグ７４をすべて０にクリアする。
【００５４】
データ制御部５５は前記データ格納指示７９を受信すると、半導体フラッシュメモリ５６のデータ格納領域６１における部分ＤＳＡ１（６２）と部分ＤＳＡ２（６３）にファイルデータ５２を格納し、それが完了したことを検出するという一連のデータ格納処理８２を実施する。
【００５５】
前記データ格納処理８２の実際は、ＳＢＭ制御部５４における書き戻し処理８１と同様の機構によってなされ、すなわちシステムメモリ４７と半導体フラッシュメモリ５６との物理的なインターフェイスを提供するハードウェアに対してファイルデータ５２の記録を依頼し、所定の方法によってライトデータ８５がデータ格納領域６１に記録される。前記ハードウェアは、データ制御部５５に対してデータの記録が完了した旨を通知し、データ制御部５５はそれを取得することとなる。データ制御部５５は前記データ格納処理８２が完了すると、イベント管理部４４に対してデータ格納完了通知８０を発行する。
【００５６】
次に、図６を用いて、本発明の第１の実施の形態におけるデータ管理及び制御システムを適用した具体的な半導体フラッシュメモリ収容装置を説明する。図６は図４における半導体フラッシュメモリ収容装置４１の具体例であり、ブロック単位でのデータ消去を特徴とし、ＵＤＦファイルシステム仕様でフォーマットされた半導体フラッシュメモリ１０６と、図４におけるデータ管理手段４２とデータ制御手段５３を構成するＣＰＵ１０２と、ＲＯＭ１０３と、システムメモリ４７を構成するＲＡＭ１０４と、を具備し、さらに、映像処理部１０５と、ネットワークＩ／Ｆ（Ｉｎｔｅｒｆａｃｅ）１０７を具備した監視カメラ装置１０１を示している。
【００５７】
ＣＰＵ１０２はマイクロプロセッサを主体に構成されており、ＲＯＭ１０３やＲＡＭ１０４に格納しているＯＳやソフトウェアプログラムにしたがって各種の処理を実行したり、前記半導体フラッシュメモリ１０６との物理的なインターフェイスを提供したりする。
【００５８】
ＲＯＭ１０３やＲＡＭ１０４は、ＣＰＵ１０２によって処理されるソフトウェアプログラムや、本発明に関るデータ管理及び制御システムを提供するソフトウェアプログラムを記憶したり、半導体フラッシュメモリ１０６に配置された空間ビットマップ１０９や、映像処理部１０５から出力された監視情報を一時的に記憶しておくためのメモリとして使用される。映像処理部１０５は、アナログの映像信号や音声信号を取得し、これをデジタルに変換して、必要であるならば圧縮処理を行ったりするところであり、バス１０８に対してデジタル化された監視情報を出力する。
【００５９】
半導体フラッシュメモリ１０６はＵＤＦファイルシステム仕様によってフォーマットされており、空間ビットマップ１０９やデータ格納領域１１３にデジタル化された前記監視情報を格納するところである。図６に示す監視カメラ装置１０１は、例えば日々一定の時間間隔で動画像や静止画像を取得し、少なくとも一週間分の前記監視情報は保持するように前記半導体フラッシュメモリ１０６に記録していく。
【００６０】
ネットワークＩ／Ｆ１０７は、前記半導体フラッシュメモリ１０６に記録したデジタルデータを監視カメラ装置１０１の外部に送信するために、有線や無線ネットワーク等との接続を可能とするところである。尚、ＣＰＵ１０２とＲＯＭ１０３とＲＡＭ１０４と映像処理部１０５と半導体フラッシュメモリ１０６とネットワークＩ／Ｆ１０７は、バス１０８で相互に接続され、必要な制御情報やデータのやりとりが行えるようになっている。
【００６１】
次に、図６に示す監視カメラ装置１０１が取得した動画像や静止画像を管理するためのディレクトリ構造と半導体フラッシュメモリ１０６への記録方法について、本発明の第１の実施の形態に係わるマッピング規則に従って、図６と図７を参照しながら説明する。尚、前記監視カメラ装置１０１の半導体フラッシュメモリ１０６に配置された空間ビットマップ１０９は、３つのブロックにわたって配置されている場合を示している。
【００６２】
図７に示すように、ディレクトリ構造は、Ｒｏｏｔディレクトリ１２１以下に第１のファイル・ディレクトリ群１３１として各曜日のディレクトリであるＭｏｎディレクトリ１２２、Ｔｕｅディレクトリ１２３、Ｗｅｄディレクトリ１２４、Ｔｈｕディレクトリ１２５を設け、また第２のファイル・ディレクトリ群１３２として残りの各曜日のディレクトリであるＦｒｉディレクトリ１２６、Ｓａｔディレクトリ１２７、Ｓｕｎディレクトリ１２８を設けている。当該日が月曜日であるならばＭｏｎディレクトリ１２２以下に、取得した動画像や静止画像（Ｉｍｇ１（１２９）やＩｍｇＮ（１３０））を順次に格納していく。
【００６３】
そして、Ｒｏｏｔディレクトリ１２１を、図６に示す部分ＳＢＭ１（１１０）に対応する部分ＤＳＡ１（１１４）に、第１のファイル・ディレクトリ群１３１を、図６に示す部分ＳＢＭ１（１１０）と部分ＳＢＭ２（１１１）に対応する部分ＤＳＡ１（１１４）、部分ＤＳＡ２（１１５）に記録し、第２のファイル・ディレクトリ群１３２を、図６に示す部分ＳＢＭ１（１１０）と部分ＳＢＭ３（１１２）に対応する部分ＤＳＡ１（１１４）と部分ＤＳＡ３（１１６）に記録する。また第１のファイル・ディレクトリ群１３１と第２のファイル・ディレクトリ群１３２は、図６に示す部分ＳＢＭ２（１１１）と部分ＳＢＭ３（１１２）に対応する部分ＤＳＡ２（１１５）と部分ＤＳＡ３（１１６）にまたがって記録しないようにする。このように、図７に示すディレクトリ構造を、図６に示す半導体フラッシュメモリ１０６の空間ビットマップとデータ格納領域に上述したようにして記録することが、本発明の第１の実施形態で云うマッピング規則である。
【００６４】
以上のように、本発明の第１の実施形態に係るデータ管理及び制御システムを適用した図６に示す監視カメラ装置１０１によれば、取得した監視情報を月単位や年単位で見れば半導体フラッシュメモリ１０６に分散して記録することが可能になるため、空間ビットマップが配置されたブロックを平均的に使用することが可能となる。したがって前記半導体フラッシュメモリ１０６の長寿命化を図ることができ、監視カメラ装置１０１の保守を省力化することができる。
【００６５】
また、空間ビットマップ１０９におけるブロックの変更箇所を最大でも２つの部分ＳＢＭに抑制できることから、空間ビットマップ１０９に係わる同期処理を早期に完了できるとともに、同期処理に係わる最大時間を見積もることができる。このため、半導体フラッシュメモリ１０３に対し、取得した監視情報を一定のビットレートで書き込むことが可能になるとともに、ネットワークＩ／Ｆ１０７からの要求に応じても一定のビットレートで読み出すことが可能となる。またＲＡＭ１０４の容量及び前記ＲＡＭ１０４に確保しなければならない一時的な格納容量を見積もることが可能となり、監視カメラ装置１０１の設計が容易になる
更に、月曜日から木曜日に取得した監視情報は、部分ＳＢＭ１（１１０）と部分ＳＢＭ２（１１１）に対応する部分ＤＳＡ１（１１４）、部分ＤＳＡ２（１１５）に記録され、金曜日から日曜日に取得した動画、静止画データは、部分ＳＢＭ１（１１０）と部分ＳＢＭ３（１１２）に対応する部分ＤＳＡ１（１１４）、部分ＤＳＡ３（１１６）に記録されていることから、所望の監視情報へのアクセスを高速に行うことができる。以上、本発明の第１の実施形態に係るデータ管理及び制御システムを適用した半導体フラッシュメモリ収容装置の具体例としての監視カメラ装置を説明した。
【００６６】
「第２の実施形態」
本発明の第２の実施形態に係るデータ管理方法及び制御システムについて、図８と図９を参照しながら以下説明する。
【００６７】
図８は、図４に示すように半導体フラッシュメモリ５６における空間ビットマップ５７が３つのブロックにまたがって配置される場合であって、半導体フラッシュメモリ５６のデータ格納領域６１に記録されるシステムメモリ４７上のファイルデータ５２が属するディレクトリ構造を示している。
【００６８】
そして図４に示す半導体フラッシュメモリ収容装置４１において、データ管理手段４２のデータ配置管理部４６が提供する本発明の第２の実施形態では、図８に示すように、Ｒｏｏｔディレクトリ１４１を含む第１のファイル・ディレクトリ群１４４を、図４に示す部分ＳＢＭ１（５８）に対応する部分ＤＳＡ１（６２）に記録し、また前記ルートディレクトリ１４１以下に配置される、ある一つのＤｉｒ１（１４２）を含む第２のファイル・ディレクトリ群１４５を、図４に示す部分ＳＢＭ２（５９）に対応する部分ＤＳＡ２（６３）に記録し、さらに前記Ｄｉｒ１（１４２）以下に配置される、ある一つのＤｉｒ２（１４３）を含む第３のファイル・ディレクトリ群１４６を、図４に示す部分ＳＢＭ３（６０）に対応する部分ＤＳＡ３（６４）に記録する。
【００６９】
加えて、第１のファイル・ディレクトリ群１４４は、図４に示す部分ＳＢＭ２（５９）と部分ＳＢＭ３（６０）に対応する部分ＤＳＡ２（６３）と部分ＤＳＡ３（６４）に記録することを認めない、また第２のファイル・ディレクトリ群１４５は、図４に示す部分ＳＢＭ１（５８）と部分ＳＢＭ３（６０）に対応する部分ＤＳＡ１（６２）と部分ＤＳＡ３（６４）に記録することを認めない、更に第３のファイル・ディレクトリ群１４６は、図４に示す部分ＳＢＭ１（５８）と部分ＳＢＭ２（５９）に対応する部分ＤＳＡ１（６２）と部分ＤＳＡ２（６３）に記録することを認めない、というマッピング規則を提供する。
【００７０】
但し、ＵＤＦファイルシステム仕様に準拠して上記マッピング規則を達成するために、第２のファイル・ディレクトリ群１４５にあるＤｉｒ１（１４２）及び第３のファイル・ディレクトリ群（１４６）にあるＤｉｒ２（１４３）は削除することが出来ない。
【００７１】
本発明の第２の実施形態に係わる上述したマッピング規則を採用することによって以下のような効果が得られる。まず、半導体フラッシュメモリに対して、図８に示す第１のファイル・ディレクトリ群１４４と第２のファイル・ディレクトリ群１４５と第３のファイル・ディレクトリ群１４６を短期的もしくは長期的視点に立ち所定の順序に応じてデータを記録するという方策を設けることによって、本発明の第１の実施形態に係わるマッピング規則よりも同期処理に対する空間ビットマップの各部分ＳＢＭの書換え回数をより平均化することができる。またこれに対応して、実際にファイルデータを記録する部分ＤＳＡの書換え回数も平均化することができる。したがって、半導体フラッシュメモリの長寿命化に貢献することができる。
【００７２】
また、第１のファイル・ディレクトリ群１４４もしくは第２のファイル・ディレクトリ群１４５もしくは第３のファイル・ディレクトリ群１４６に存在する、１つのファイルやディレクトリに対する変更や削除、追加といった動作に対し、３つすべての部分ＳＢＭに変更が生じることなく、必ず１つの部分ＳＢＭに変更箇所を抑制することができる。このため、本発明の第１の実施形態に係わるマッピング規則よりも空間ビットマップの同期処理を早期に完了することができ、同期処理に伴うファイルデータのリード動作やライト動作の遅延をさらに短縮することが可能になる。また、同期処理に係わる時間を固定化することができ、リアルタイム性の高いファイルデータの半導体フラッシュメモリへの記録や前記半導体フラッシュメモリからの読出しを容易に設計することが可能になる。
【００７３】
更に、第１のファイル・ディレクトリ群１４４、第２のファイル・ディレクトリ群１４５、第３のファイル・ディレクトリ群１４６はそれぞれ１つの部分ＳＢＭとそれに対応する部分ＤＳＡにしか記録しないため、本発明の第１の実施形態に係わるマッピング規則よりも、さらに半導体フラッシュメモリ上におけるファイルデータやディレクトリ構造が複雑に配置されたり、フラグメントされたりすることを防ぐことができる。このため、所望のファイルデータに対するアクセス性能を向上し、検索時間を短縮することが可能になる。
【００７４】
加えて、本発明の第２の実施形態に係わるマッピング規則によれば、本発明の第１の実施形態に係わるマッピング規則は空間ビットマップが少なくとも３つのブロックに配置される場合から適用可能であるのに対して、２つのブロックに配置される場合からでもよいことから適用可能な範囲が高い。
【００７５】
次に、図６に示した監視カメラ装置１０１が取得した動画像や静止画像を管理するためのディレクトリ構造と、半導体フラッシュメモリ１０６への記録方法について、本発明の第２の実施形態におけるマッピング規則に従って図６と図９を参照しながら説明する。尚、図６に示すように、前記監視カメラ装置１０１の半導体フラッシュメモリ１０６における空間ビットマップ１０９は３つのブロックにわたって配置されている場合を示している。
【００７６】
図９に示すように、ディレクトリ構造は、第１のファイル・ディレクトリ群１６３としてＲｏｏｔディレクトリ１５１と各曜日のディレクトリであるＭｏｎディレクトリ１５４、Ｔｕｅディレクトリ１５５を設け、第２のファイル・ディレクトリ群１６４として、Ｄｉｒ１（１５２）と各曜日のディレクトリであるＷｅｄディレクトリ１５６、Ｔｈｕディレクトリ１５７を設け、第３のファイル・ディレクトリ群１６５として、Ｄｉｒ２（１５３）を含む残りの曜日のディレクトリであるＦｒｉディレクトリ１５８、Ｓａｔディレクトリ１５９、Ｓｕｎディレクトリ１６０を設けている。当該日が月曜日であるならばＭｏｎディレクトリ１５４以下に、取得した動画像や静止画像（Ｉｍｇ１（１６１）やＩｍｇＮ（１６２））を順次に格納していく。
【００７７】
そして、Ｒｏｏｔディレクトリ１５１を含む第１のファイル・ディレクトリ群１６３を、図６に示す部分ＳＢＭ１（１１０）に対応する部分ＤＳＡ１（１１４）のみに記録し、第２のファイル・ディレクトリ群１６４を、図６に示す部分ＳＢＭ２（１１１）に対応する部分ＤＳＡ２（１１５）のみに記録し、第３のファイル・ディレクトリ群１６５を、図６に示す部分ＳＢＭ３（１１２）に対応する部分ＤＳＡ３（１１６）のみに記録する。
【００７８】
このように、本発明の第２の実施形態に係わるデータ管理及び制御システムを適用した図６に示す監視カメラ装置１０１によれば、月単位や年単位で見れば半導体フラッシュメモリ１０６に分散して記録することが可能になるため、空間ビットマップが配置されたブロックを平均的に使用することが可能となる。したがって前記半導体フラッシュメモリ１０６の長寿命化を図ることができ、監視カメラ装置１０１の保守を省力化することができる。
【００７９】
また、空間ビットマップ１０９におけるブロックの変更箇所を常に１つの部分ＳＢＭに変更箇所を抑制できることから、空間ビットマップ１０９の同期処理を早期に完了できるとともに、同期処理に係わる時間を固定化することができるため、半導体フラッシュメモリ１０３に対して取得した監視情報の一定ビットレートで書き込みと読み出しが可能となる。
【００８０】
更に、月曜日から火曜日に取得した監視情報は、部分ＳＢＭ１（１１０）に対応する部分ＤＳＡ１（１１４）、水曜日から木曜日に取得した監視情報は、部分ＳＢＭ２（１１１）に対応する部分ＤＳＡ２（１１５）、金曜日から日曜日に取得した監視情報は、部分ＳＢＭ３（１１２）に対応する部分ＤＳＡ３（１１６）に記録されていることから、所望の監視情報への参照を高速に行うことができる。以上、本発明の第２の実施形態におけるデータ管理及び制御システムを適用した半導体フラッシュメモリ収容装置の具体例としての監視カメラ装置を説明した。
【００８１】
本発明については、ブロック単位でのデータ消去をなす半導体フラッシュメモリをストレージデバイスとして使用する種々の装置に利用が可能であり、そのような半導体フラッシュメモリの長寿命化を図り、リアルタイム性の高いデータの記録と読出しを容易に行うための技術として有効である。
【００８２】
以上説明したように、本発明の実施形態は次のような構成を備えることを具体的な一例として示すものである。すなわち、ファイルシステムとしてＵＤＦファイルシステムを用いた半導体フラッシュメモリであって、半導体フラッシュメモリに記録される空間ビットマップが３つのブロックにまたがって配置される場合、各ブロックの空間ビットマップを部分ＳＢＭ１〜３及びこれに対応するデータ格納領域を部分ＤＳＡ１〜３とすると、Ｒｏｏｔディレクトリ１１を部分ＳＢＭ１に対応する部分ＤＳＡ１に記録し、第１のファイル・ディレクトリ群１２を、部分ＳＢＭ１と部分ＳＢＭ２に対応する部分ＤＳＡ１と部分ＤＳＡ２にのみ記録し、第２のファイル・ディレクトリ群１３を、部分ＳＢＭ１と部分ＳＢＭ３に対応する部分ＤＳＡ１と部分ＤＳＡ３にのみ記録するというマッピング規則を提供するものである。
【図面の簡単な説明】
【００８３】
【図１】本発明の第１の実施形態に係るデータ管理及び制御システムに適用するマッピング規則を説明するためのディレクトリ構造を示す図である。
【図２】半導体フラッシュメモリ上に記録するファイルデータが属するディレクトリ構造を示す図である。
【図３】図２に示すディレクトリ構造をＵＤＦファイルシステム仕様で表現したファイル管理方法を説明する図である。
【図４】本発明の第１の実施形態に係るデータ管理及び制御システムを用いた半導体フラッシュメモリ収容装置の構成を示すブロック図である。
【図５】本発明の第１の実施形態に関する半導体フラッシュメモリ収容装置における動作を説明する図である。
【図６】本発明の第１の実施形態に関する半導体フラッシュメモリ収容装置の適用例である監視カメラ装置を説明する図である。
【図７】本発明の第１の実施形態に係わるマッピング規則を監視カメラ装置に適用した場合のディレクトリ構造を説明する図である
【図８】本発明の第２の実施形態に係わるマッピング規則を説明するためのディレクトリ構造を示す図である
【図９】本発明の第２の実施形態に係わるマッピング規則を監視カメラ装置に適用した場合のディレクトリ構造を説明する図である
【符号の説明】
【００８４】
１１…Ｒｏｏｔディレクトリ、１２…第１のファイル・ディレクトリ群、１３…第２のファイル・ディレクトリ群、２１…Ｒｏｏｔディレクトリ、２２…Ｄｉｒ１ディレクトリ、２３…Ｆｉｌｅ３ファイル、２４…Ｄｉｒ２ディレクトリ、２５…Ｆｉｌｅ１ファイル、２６…Ｄｉｒ３ディレクトリ、２７…Ｆｉｌｅ２ファイル、３１…Ｒｏｏｔ  ＦＥ、３２…Ｄｉｒ１  ＦＥ、３３…Ｄｉｒ２  ＦＥ、３４…Ｆｉｌｅ３  ＦＥ、３５…Ｄｉｒ３  ＦＥ、３６…Ｆｉｌｅ１  ＦＥ、３７…Ｆｉｌｅ２  ＦＥ、４１…半導体フラッシュメモリ格納装置、４２…データ管理手段、４３…ＵＤＦファイルシステム部、４４…イベント管理部、４５…ＳＢＭ管理部、４６…データ配置管理部、テムメモリ、４８…空間ビットマップ、４９…部分ＳＢＭ１、５０…部分ＳＢＭ２、５１…部分ＳＢＭ３、５２…ファイルデータ、５３…データ制御手段、５４…ＳＢＭ制御部、５５…データ制御部、５６…半導体フラッシュメモリ、５７…空間ビットマップ、５８…部分ＳＢＭ１、５９…部分ＳＢＭ２、６０…部分ＳＢＭ３、６１…データ格納手段、６２…部分ＤＳＡ１、６３…部分ＤＳＡ２、６４…部ＤＳＡ３、６５…ＵＤＦパーティション、６６…データフロー、７１…空間ビットマップ更新完了通知、７２…空間ビットマップ変更処理、７３…部分ＳＢＭ番号、７４…書換えフラグ、７５…フラグセット完了通知、７６…フラグクリア指示、７７…同期処理開始指示、７８…同期処理完了通知、７９…データ制御部、８０…データ格納完了通知、８１…書き戻し処理、８２…データ格納処理、８３…空間ビットマップデータ、８４…空間ビットマップデータ、８５…ライトデータ、８６…ＳＢＭ管理テーブル、
１０１…監視カメラ装置、１０２…ＣＰＵ、１０３…ＲＯＭ、１０４…ＲＡＭ、１０５…映像処理部、１０６…半導体フラッシュメモリ、１０７…ネットワークＩ／Ｆ、１０８…バス、１０９…空間ビットマップ、１１０…部分ＳＢＭ１、１１１…部分ＳＢＭ２、１１２…部分ＳＢＭ３、１１３…データ格納領域、１１４…部分ＤＳＡ１、１１５…部分ＤＳＡ２、１１６…部分ＤＳＡ３、１２１…Ｒｏｏｔディレクトリ、１２２…Ｍｏｎディレクトリ、１２３…Ｔｕｅディレクトリ、１２４…Ｗｅｄディレクトリ、１２５…Ｔｈｕディレクトリ、１２６…Ｆｒｉディレクトリ、１２７…Ｓａｔディレクトリ、１２８…Ｓｕｎディレクトリ、１２９…動画像や静止画像、１３０…動画像や静止画像、１３１…第１のファイル・ディレクトリ群、１３２…第２のファイル・ディレクトリ群、１４１…Ｒｏｏｔディレクトリ、１４２…Ｄｉｒ１ディレクトリ、１４３…Ｄｉｒ２ディレクトリ、１４４…第１のファイル・ディレクトリ群、１４５…第２のファイル・ディレクトリ群、１４６…第３のファイル・ディレクトリ群、１５１…Ｒｏｏｔディレクトリ、１５２…Ｄｉｒ１ディレクトリ、１５３…Ｄｉｒ２ディレクトリ、１５４…Ｍｏｎディレクトリ、１５５…Ｔｕｅディレクトリ、１５６…Ｗｅｄディレクトリ、１５７…Ｔｈｕディレクトリ、１５８…Ｆｒｉディレクトリ、１５９…Ｓａｔディレクトリ、１６０…Ｓｕｎディレクトリ、１６１…動画像や静止画像、１６２…動画像や静止画像、１６３…第１のファイル・ディレクトリ群、１６４…第２のファイル・ディレクトリ群、１６５…第３のファイル・ディレクトリ群
【図１】
2007241539.tif 000003
【図２】
2007241539.tif 000004
【図３】
2007241539.tif 000005
【図４】
2007241539.tif 000006
【図５】
2007241539.tif 000007
【図６】
2007241539.tif 000008
【図７】
2007241539.tif 000009
【図８】
2007241539.tif 000010
【図９】
2007241539.tif 000011