(57)【要約】  ライトワンスメモリ上の残容量の情報をライトワンス記録装置２Ａから取得する論物空き容量管理部１６をアクセス装置１内に設ける。また、ライトワンス記録装置２Ａ内に、ライトワンスメモリ上の残容量を管理し、アクセス装置に通知する物理空き容量管理部２７を設ける。アクセス装置１はファイルデータの記録に先立ち、ライトワンス記録装置２Ａから、ライトワンスメモリの残容量を取得し、ＦＡＴ上の残容量と比較して実際にファイルデータの記録が可能な残容量を決定することにより、ライトワンス記録装置の正確な残容量を把握することができる。
2008072590.tif 000002
【特許請求の範囲】
【請求項１】
１回のデータ書き込みが可能なライトワンスメモリに接続され、外部のアクセス装置が前記ライトワンスメモリに対するアクセスを実施する際に指定する論理アドレスが与えられ、該論理アドレスに基づいてデータを記録し、読み出すコントローラであって、
前記ライトワンスメモリを固定長の管理単位毎に分割して領域管理し、各管理単位の物理アドレスと論理アドレスとの対応関係を保持すると共に、前記アクセス装置から書き込み要求が発行された際に、データ記録領域として前記ライトワンスメモリの未記録の領域を割り当て、前記データ記録領域を前記アクセス装置が書き込み要求時に指定した論理アドレスに対応付けるアドレス変換処理を行うアドレス変換制御部と、
前記ライトワンスメモリ内の未記録領域の大きさを判別し、前記アクセス装置が物理的に記録可能な残り容量として前記アクセス装置に通知する物理空き容量管理部と、
前記アクセス装置からのコマンドに基づいてデータを前記ライトワンスメモリに書き込み、及び前記ライトワンスメモリからデータを読み出すメモリアクセス部と、を具備するコントローラ。
【請求項２】
前記メモリアクセス部は、
前記ライトワンスメモリの物理アドレスの昇順にデータを順次書き込むものであり、
前記アドレス変換制御部は、
前記物理アドレスと前記論理アドレスの対応関係を保持し、複数の物理アドレスに同一の論理アドレスが対応付けられている場合、物理アドレスの最も大きな領域に格納されているデータをその論理アドレスの領域に格納された有効なデータとする請求項１記載のコントローラ。
【請求項３】
前記物理空き容量管理部は、
前記アクセス装置がデータ記録に先立ち発行する残容量取得コマンドを受け付けた際に、前記アドレス管理情報を元に前記ライトワンスメモリ内の未記録領域の大きさを算出し、前記アクセス装置が物理的に記録可能な残容量として前記アクセス装置に通知する請求項１記載のコントローラ。
【請求項４】
前記物理空き容量管理部は、
前記アクセス装置が発行した記録コマンドを受け付けて前記メモリアクセス部が前記ライトワンスメモリへのデータ書き込み処理を実施した後、前記アドレス管理情報を元に前記ライトワンスメモリ内の未記録領域の大きさを算出し、前記アクセス装置が物理的に記録可能な残容量として前記アクセス装置に通知する請求項１記載のコントローラ。
【請求項５】
前記物理空き容量管理部は、
前記アクセス装置がデータ記録に先立ち発行する変化情報コマンドを受け付けた際に、前記アドレス管理情報と、前記コマンドと共に前記アクセス装置により指定された記録処理のアドレス及びサイズの情報とを元に、前記アクセス装置により指定された記録をする前後の前記ライトワンスメモリに対する残り記録可能な容量の変化に関する情報を把握し、前記アクセス装置に通知する請求項１記載のコントローラ。
【請求項６】
１回のデータ書き込みが可能なライトワンスメモリと、
前記ライトワンスメモリに接続され、外部のアクセス装置が前記ライトワンスメモリに対するアクセスを実施する際に指定する論理アドレスが与えられ、該論理アドレスに基づいてデータを記録し、読み出すコントローラとを具備するライトワンス記録装置であって、
前記コントローラは、
前記ライトワンスメモリを固定長の管理単位毎に分割して領域管理し、各管理単位の物理アドレスと論理アドレスとの対応関係を保持すると共に、前記アクセス装置から書き込み要求が発行された際に、データ記録領域として前記ライトワンスメモリの未記録の領域を割り当て、前記データ記録領域を前記アクセス装置が書き込み要求時に指定した論理アドレスに対応付けるアドレス変換処理を行うアドレス変換制御部と、
前記ライトワンスメモリ内の未記録領域の大きさを判別し、前記アクセス装置が物理的に記録可能な残り容量として前記アクセス装置に通知する物理空き容量管理部と、
前記アクセス装置からのコマンドに基づいてデータを前記ライトワンスメモリに書き込み、及び前記ライトワンスメモリからデータを読み出すメモリアクセス部と、を具備するライトワンス記録装置。
【請求項７】
前記メモリアクセス部は、
前記ライトワンスメモリの物理アドレスの昇順にデータを順次書き込むものであり、
前記アドレス変換制御部は、
前記物理アドレスと前記論理アドレスの対応関係を保持し、複数の物理アドレスに同一の論理アドレスが対応付けられている場合、物理アドレスの最も大きな領域に格納されているデータをその論理アドレスの領域に格納された有効なデータとする請求項６記載のライトワンス記録装置。
【請求項８】
前記物理空き容量管理部は、
前記アクセス装置がデータ記録に先立ち発行する残容量取得コマンドを受け付けた際に、前記アドレス管理情報を元に前記ライトワンスメモリ内の未記録領域の大きさを算出し、前記アクセス装置が物理的に記録可能な残容量として前記アクセス装置に通知する請求項６記載のライトワンス記録装置。
【請求項９】
前記物理空き容量管理部は、
前記アクセス装置が発行した記録コマンドを受け付けて前記メモリアクセス部が前記ライトワンスメモリへのデータ書き込み処理を実施した後、前記アドレス管理情報を元に前記ライトワンスメモリ内の未記録領域の大きさを算出し、前記アクセス装置が物理的に記録可能な残容量として前記アクセス装置に通知する請求項６記載のライトワンス記録装置。
【請求項１０】
前記物理空き容量管理部は、
前記アクセス装置がデータ記録に先立ち発行する残量変化取得コマンドを受け付けた際に、前記アドレス管理情報と、前記コマンドと共に前記アクセス装置により指定された記録処理のアドレス及びサイズの情報とを元に、前記アクセス装置により指定された記録をする前後の前記ライトワンスメモリに対する残り記録可能な容量の変化に関する情報を把握し、前記アクセス装置に通知する請求項６記載のライトワンス記録装置。
【請求項１１】
１回のデータ書き込みが可能なライトワンスメモリを有するライトワンス記録装置にアクセスするアクセス装置であって、
前記ライトワンス記録装置内の記録領域に構築されたファイルシステム情報に基づいてデータをファイルとして制御するファイルシステム制御部と、
前記ファイルシステム制御部が管理する領域管理情報から得られる前記ライトワンス記録装置に論理的に記録可能な残容量と、前記ライトワンス記録装置から取得した物理的に記録可能な残容量とを元に、前記ライトワンス記録装置に対する記録可否を判定する論物空き容量管理部と、を具備するアクセス装置。
【請求項１２】
前記論物空き容量管理部は、
前記ライトワンス記録装置に対するデータ記録に先立ち、残容量取得コマンドを発行し、前記ライトワンス記録装置に物理的に記録可能な残容量を取得する請求項１１記載のアクセス装置。
【請求項１３】
前記論物空き容量管理部は、
前記ライトワンス記録装置に対して書き込みコマンドを発行し、そのレスポンスとして、前記ライトワンス記録装置に物理的に記録可能な残容量を取得する請求項１１記載のアクセス装置。
【請求項１４】
前記論物空き容量管理部は、
前記ライトワンス記録装置に対するデータ記録に先立ち、記録処理のアドレス及びサイズの情報を指定して残量の変化に関する変化情報コマンドを発行し、前記ライトワンス記録装置に物理的に記録可能な残り容量を取得する請求項１１記載のアクセス装置。
【請求項１５】
１回のデータ書き込みが可能なライトワンスメモリを具備したライトワンス記録装置と、前記ライトワンス記録装置にアクセスするアクセス装置からなるライトワンス記録システムであって、
前記ライトワンス記録装置は、
１回のデータ書き込みが可能なライトワンスメモリと、
前記ライトワンスメモリに接続され、外部のアクセス装置が前記ライトワンスメモリに対するアクセスを実施する際に指定する論理アドレスが与えられ、該論理アドレスに基づいてデータを記録し、読み出すコントローラとを具備するものであり、
前記コントローラは、
前記ライトワンスメモリを固定長の管理単位毎に分割して領域管理し、各管理単位の物理アドレスと論理アドレスとの対応関係を保持すると共に、前記アクセス装置から書き込み要求が発行された際に、データ記録領域として前記ライトワンスメモリの未記録の領域を割り当て、前記データ記録領域を前記アクセス装置が書き込み要求時に指定した論理アドレスに対応付けるアドレス変換処理を行うアドレス変換制御部と、
前記ライトワンスメモリ内の未記録領域の大きさを判別し、前記アクセス装置が物理的に記録可能な残り容量として前記アクセス装置に通知する物理空き容量管理部と、
前記アクセス装置からのコマンドに基づいてデータを前記ライトワンスメモリに書き込み、及び前記ライトワンスメモリからデータを読み出すメモリアクセス部と、を有し、
前記アクセス装置は、
前記ライトワンス記録装置内の記録領域に構築されたファイルシステム情報に基づいてデータをファイルとして制御するファイルシステム制御部と、
前記ファイルシステム制御部が管理する領域管理情報から得られる前記ライトワンス記録装置に論理的に記録可能な残容量と、前記ライトワンス記録装置から取得した物理的に記録可能な残容量とを元に、前記ライトワンス記録装置に対する記録可否を判定する論物空き容量管理部と、を具備するライトワンス記録システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、１回のみ記録が可能なライトワンス型のメモリを用いたライトワンス記録装置にデータを記録する際において、残り記録可能な容量を正確にアクセス装置が把握することのできるライトワンス記録装置、コントローラ、アクセス装置、及びライトワンス記録システムに関する。
【背景技術】
【０００２】
音楽コンテンツや、映像データ等のデジタルデータを記録する記録媒体には、磁気ディスク、光ディスク、光磁気ディスク等、様々な種類が存在する。これら記録媒体の１種類であるメモリカードは、記録素子としてフラッシュＲＯＭ等の半導体メモリを主に使用しており、記録媒体の小型化が図れることから、デジタルスチルカメラや携帯電話端末等、小型の携帯機器を中心に急速に普及している。【０００３】
このようなメモリカードでは、記録素子としてＮＡＮＤ型フラッシュメモリと呼ばれる半導体素子が主に使用されている。ＮＡＮＤ型フラッシュメモリは、既に記録されたデータを一旦消去した後、再度別のデータを記録することが可能な記録素子であり、従来のハードディスクと同様に、複数回書き換え可能なメモリカードを構成することが可能である。【０００４】
一方、近年ＮＡＮＤ型フラッシュメモリとは異なる記録素子として、従来のＣＭＯＳプロセスの技術を応用して安価に製造することが可能なＯＴＰ（Ｏｎｅ  Ｔｉｍｅ  Ｐｒｏｇｒａｍｍａｂｌｅ）メモリが登場し、注目されている。ＯＴＰメモリは同一の物理メモリ領域に対して一回しか記録できないという制限を持つライトワンスメモリである。このメモリは製造コストが安価であるため、特にＤＶＤ−Ｒ等のメディア同様、データの長期保存などの用途に使用されるメモリカードの記録素子として普及する可能性がある。すなわち、従来のメモリカードのように複数回の書き換えが必要な用途向けにはＮＡＮＤ型フラッシュメモリを用いて比較的高価なメモリカードとして販売し、１回記録した以後は書き換えが不要であるような用途向けにはＯＴＰメモリを用いて比較的安価なメモリカードとして販売することで、ユーザニーズに応じて使い分けることが可能である。【０００５】
また従来、メモリカードに格納されたデータはファイルシステムにより管理されており、ユーザは格納されたデータをファイルとして容易に取り扱うことができる。従来使用されているファイルシステムとして、ＦＡＴファイルシステムや、ＵＤＦファイルシステム（Ｕｎｉｖｅｒｓａｌ  Ｄｉｓｋ  Ｆｏｒｍａｔ）、ＮＴＦＳファイルシステム（Ｎｅｗ  Ｔｅｃｈｎｏｌｏｇｙ  Ｆｉｌｅ  Ｓｙｓｔｅｍ）等が存在する。これらファイルシステムによりデータが管理されたメモリカードは、同一のファイルシステムを解釈する機器間でファイルを共有することができるため、機器間でデータを授受することが可能となる。【０００６】
ここで従来のファイルシステムの一例として、ＦＡＴファイルシステムを説明する。図１は論理アドレス空間を示しており、論理アドレス空間の先頭には、ファイルシステム管理情報１００を保持する領域が存在する。このファイルシステム管理情報１００は、領域割り当て単位やファイルシステムが管理する領域の大きさ等、ファイルシステムの管理情報が格納される領域である。この情報には、マスターブートレコード・パーティションテーブル１０２、パーティションブートセクタ１０３、ＦＡＴ（１０４、１０５）、ルートディレクトリエントリ１０６と呼ばれるファイルシステムの管理情報が含まれ、ユーザデータ１０１の領域を管理するために必要な情報が各々格納されている。マスターブートレコード・パーティションテーブル１０２は、ファイルシステムが管理する論理アドレス空間上の領域を複数のパーティションと呼ばれる領域に分割して管理するための情報が格納される領域である。パーティションブートセクタ１０３は、１つのパーティション内の管理情報が格納される領域である。ＦＡＴ（１０４、１０５）は、ファイルに含まれるデータの格納位置に関する情報が格納される領域であり、通常、同じ情報を持つ２つのＦＡＴ（１０４、１０５）がメモリカード内に存在し、一方のＦＡＴ（１０４、１０５）が破損したとしても他方のＦＡＴ（１０４、１０５）によりファイルにアクセスできるよう二重化されている。ルートディレクトリエントリ１０６は、ルートディレクトリ直下に存在するファイル、ディレクトリの情報（ディレクトリエントリ）が格納される部分である。【０００７】
またＦＡＴファイルシステムでは、このファイルシステム管理情報１００を保持する領域に引き続いてファイル本体のデータなどユーザデータ１０１を格納する領域が存在する。ユーザデータ１０１は、１６ＫＢや３２ＫＢ程度の大きさを持つクラスタと呼ばれる管理単位毎に分割管理されており、各クラスタにはファイルに含まれるデータが格納されている。多くのデータを格納するファイル等は、複数のクラスタに跨ってデータを格納しており、各クラスタ間の繋がりは、ＦＡＴ（１０４、１０５）に格納されたリンク情報により管理されている。また、ルートディレクトリ直下のディレクトリ内に存在するファイル、サブディレクトリの情報（ディレクトリエントリ）は、このユーザデータ１０１の一部を利用して格納される。【０００８】
次に図２から図５を用いてＦＡＴファイルシステムにおけるファイルデータの書き込み例を説明する。図２は、ディレクトリエントリの構成を示した図である。図３はファイルデータ書き込みの処理手順を示した図である。図４は書き込み前のディレクトリエントリ１０７、ＦＡＴ（１０４、１０５）、ユーザデータ１０１の一例を示した図である。図５は書き込み後のディレクトリエントリ１０７、ＦＡＴ（１０４、１０５）、ユーザデータ１０１の一例を示した図である。【０００９】
前述の通り、ＦＡＴファイルシステムでは、ルートディレクトリエントリ１０６やユーザデータ１０１の一部に、図５（ａ）に示すファイル名やファイルサイズ、ファイル属性等の情報を格納したディレクトリエントリ１０７が格納される。ＦＡＴファイルシステムにおけるディレクトエントリ１０７は図２に示すように、３２バイトで構成されており、ファイル名や属性、最終更新日時、開始クラスタ番号、ファイルサイズ等が格納される。【００１０】
次にファイルデータ書き込み処理手順について図３を用いて説明する。
（Ｓ１０１）対象ファイルのディレクトリエントリ１０７を読み込む。
（Ｓ１０２）読み込んだディレクトリエントリ１０７に格納された開始クラスタ番号を取得し、ファイルデータの先頭位置を確認する。
（Ｓ１０３）ＦＡＴ（１０４、１０５）を読み込み、Ｓ１０２で取得したファイルデータの先頭位置から順にＦＡＴ（１０４、１０５）上でリンクを辿り、書き込み位置のクラスタ番号を取得する。
（Ｓ１０４）データ書き込みに際し、ファイルに新たに空き領域を割り当てる必要があるか判定する。空き領域の割り当てが必要な場合Ｓ１０５の処理に進む。空き領域の割り当てが不要な場合Ｓ１０６の処理に進む。
（Ｓ１０５）ＦＡＴ（１０４、１０５）上で空き領域を検索し、１クラスタの空き領域をファイルの終端に割り当てる。
（Ｓ１０６）現在参照しているクラスタ内に書き込めるだけのデータをユーザデータ１０１に書き込む。
（Ｓ１０７）全データの書き込みが完了したか判定する。まだデータが残っている場合Ｓ１０４の処理に戻る。全データの書き込みが完了した場合Ｓ１０８の処理に進む。
（Ｓ１０８）ディレクトリエントリ１０７内に格納されたファイルサイズや最終更新日時等を更新し、ディレクトリエントリ１０７を上書きする。
（Ｓ１０９）ＦＡＴ（１０４、１０５）を上書きし、処理を完了する。【００１１】
このファイルデータ書き込み処理により、図４に示された６００００バイトのデータを持つＦＩＬＥ１．ＴＸＴに１００００バイトのデータを更に書き込んだ場合、図５に示されるように７００００バイトのデータを持つファイルに変化する。【００１２】
このようにＦＡＴファイルシステムでは、ファイルデータを格納する際に、データ本体と共にディレクトリエントリ１０７やＦＡＴ（１０４、１０５）等をカードに格納する必要がある。これらの情報は、更新の度に同一論理アドレスに上書きする必要があることから、１回だけしか記録が行えないＯＴＰメモリに対して上記ＦＡＴファイルシステムを適用することができないという問題が生じる。【００１３】
従来、このような問題を解決する方法として、特許文献１にはＯＴＰメモリを用いた記録媒体において、論理アドレスと物理アドレスの変換を行う機能を用い擬似的に上書きを実現する方法が提案されている。この従来の方法では、従来欠陥ブロックの代替方法として使用されている論理アドレスと物理アドレスの変換機能を応用し、欠陥ブロックの代替用の領域として確保されている領域の一部を、データの上書きが発生した時点で新たに割り当て、アドレス変換によりデータ記録位置を交替させることにより、擬似的な上書きを実現している。【００１４】
次に、図６を用いて複数回書き換え可能な情報記録装置に対する従来のファイルデータ書き込み処理手順を説明する。
（Ｓ２０１）情報記録装置からアクセス装置上のＲＡＭに読み出したＦＡＴ（１０４、１０５）を元に残容量を算出する。ＦＡＴ（１０４、１０５）では、空きクラスタに対応するＦＡＴエントリの値が０に設定されていることから、全ＦＡＴエントリを検索し、値が０に設定されているエントリの個数をカウントすることで、残容量の算出が行える。また、ＦＡＴ（１０４、１０５）の読み込みはアクセス装置に情報記録装置が装着された直後などに予め実施しておく。
（Ｓ２０２）算出した残容量からファイルデータの記録が可能か判定する。この判定は、残容量と１回のファイルデータ記録で書き込みを行うデータサイズとの大小比較によって実施することができる。例えばファイルデータの記録を１クラスタ単位で実施する場合、Ｓ２０１で取得した残容量が１クラスタ以上であれば記録可能と判定し、それ以外であれば記録不可能と判定する。
（Ｓ２０３）Ｓ２０２において記録可能と判定した場合、１回のファイルデータ記録で書き込みを行うデータサイズ分の空き領域をＦＡＴ上で検索し、そのＦＡＴエントリをＲＡＭ上で０以外の値に設定することにより、ＦＡＴ上で記録領域を割り当てる。
（Ｓ２０４），（Ｓ２０５）Ｓ２０３で割り当てた記録領域にファイルデータの記録コマンドを送信する。情報記録装置はＳ２０４によってアクセス装置から発行された記録コマンドを受信する。
（Ｓ２０６）情報記録装置はＮＡＮＤ型フラッシュメモリなどの記録素子上で記録可能な領域を検索し、ファイルデータを記録する。
（Ｓ２０７）Ｓ２０６でファイルデータを記録した領域の物理アドレスと、Ｓ２０４によってアクセス装置から記録コマンドで指定された論理アドレスとが対応するよう、アドレス管理情報を更新する。
（Ｓ２０８），（Ｓ２０９）記録コマンドに対する応答として、記録が終了した旨の記録終了レスポンスを情報記録装置がアクセス装置に返信し、アクセス装置はこれを受信する。
以下、記録対象のファイルデータが存在する間、Ｓ２０１からＳ２０９の処理を、繰り返し実施する。【００１５】
このように、従来のファイルデータ記録処理手順では、残容量はＦＡＴ上で管理されており、アクセス装置がＦＡＴ上で空きクラスタ数をカウントすることにより、残容量を把握していた。
【特許文献１】特開２００６−８５８５９号公報
【発明の開示】
【発明が解決しようとする課題】
【００１６】
しかしながら、上記の従来技術には次のような問題点がある。従来の方法では、ＯＴＰメモリに対する擬似的な上書きを実現するために、新たに物理メモリ領域を割り当てる必要があり、上書き処理が発生する度に物理メモリ領域が消費されていく。ＯＴＰメモリは一回だけしか記録できないため、上記のように消費された領域には二度と記録することができず、上書き処理が発生する度に残り記録可能な容量が減少することになる。この容量の減少は、メモリカード内部のアドレス変換処理により発生するため、メモリカードアクセスするアクセス装置側のファイルシステム制御部はその容量の変化を知ることができず、ファイルシステム制御部が認識している残り記録可能な容量と、実際にメモリカードに記録可能な容量との間に不整合が生じる。そのためアクセス装置はＦＡＴを参照するだけでは残り記録可能容量を把握することができない。ファイルシステム制御部が記録可能であると判定してデータを記録するコマンドを送出したにもかかわらず、ＯＴＰメモリには空き領域が存在せず、エラーが発生することがあるという問題が生じていた。【００１７】
また従来のライトワンス記録装置のファイルデータ記録処理手順では、ライトワンスメモリに対して擬似的な上書きを実施するため、残り記録可能な容量が擬似的な上書き処理により変化してしまうという問題点が生じる。【００１８】
本発明では上記問題点に鑑み、ＯＴＰメモリに対する擬似的な上書きを実現する場合において、正確な残り記録可能な空き容量をアクセス装置側のファイルシステム制御部に通知することを特徴とするライトワンス記録装置、コントローラ、アクセス装置、及びライトワンス記録システムを提供することを目的とする。
【課題を解決するための手段】
【００１９】
この課題を解決するために本発明のコントローラは、１回のデータ書き込みが可能なライトワンスメモリに接続され、外部のアクセス装置が前記ライトワンスメモリに対するアクセスを実施する際に指定する論理アドレスが与えられ、該論理アドレスに基づいてデータを記録し、読み出すコントローラであって、前記ライトワンスメモリを固定長の管理単位毎に分割して領域管理し、各管理単位の物理アドレスと論理アドレスとの対応関係を保持すると共に、前記アクセス装置から書き込み要求が発行された際に、データ記録領域として前記ライトワンスメモリの未記録の領域を割り当て、前記データ記録領域を前記アクセス装置が書き込み要求時に指定した論理アドレスに対応付けるアドレス変換処理を行うアドレス変換制御部と、前記ライトワンスメモリ内の未記録領域の大きさを判別し、前記アクセス装置が物理的に記録可能な残り容量として前記アクセス装置に通知する物理空き容量管理部と、前記アクセス装置からのコマンドに基づいてデータを前記ライトワンスメモリに書き込み、及び前記ライトワンスメモリからデータを読み出すメモリアクセス部と、を具備するものである。【００２０】
ここで前記メモリアクセス部は、前記ライトワンスメモリの物理アドレスの昇順にデータを順次書き込むものであり、前記アドレス変換制御部は、前記物理アドレスと前記論理アドレスの対応関係を保持し、複数の物理アドレスに同一の論理アドレスが対応付けられている場合、物理アドレスの最も大きな領域に格納されているデータをその論理アドレスの領域に格納された有効なデータとしてもよい。【００２１】
ここで前記物理空き容量管理部は、前記アクセス装置がデータ記録に先立ち発行する残容量取得コマンドを受け付けた際に、前記アドレス管理情報を元に前記ライトワンスメモリ内の未記録領域の大きさを算出し、前記アクセス装置が物理的に記録可能な残容量として前記アクセス装置に通知するようにしてもよい。【００２２】
ここで前記物理空き容量管理部は、前記アクセス装置が発行した記録コマンドを受け付けて前記メモリアクセス部が前記ライトワンスメモリへのデータ書き込み処理を実施した後、前記アドレス管理情報を元に前記ライトワンスメモリ内の未記録領域の大きさを算出し、前記アクセス装置が物理的に記録可能な残容量として前記アクセス装置に通知するようにしてもよい。【００２３】
ここで前記物理空き容量管理部は、前記アクセス装置がデータ記録に先立ち発行する変化情報コマンドを受け付けた際に、前記アドレス管理情報と、前記コマンドと共に前記アクセス装置により指定された記録処理のアドレス及びサイズの情報とを元に、前記アクセス装置により指定された記録をする前後の前記ライトワンスメモリに対する残り記録可能な容量の変化に関する情報を把握し、前記アクセス装置に通知するようにしてもよい。【００２４】
この課題を解決するために本発明のライトワンス記録装置は、１回のデータ書き込みが可能なライトワンスメモリと、前記ライトワンスメモリに接続され、外部のアクセス装置が前記ライトワンスメモリに対するアクセスを実施する際に指定する論理アドレスが与えられ、該論理アドレスに基づいてデータを記録し、読み出すコントローラとを具備するライトワンス記録装置であって、前記コントローラは、前記ライトワンスメモリを固定長の管理単位毎に分割して領域管理し、各管理単位の物理アドレスと論理アドレスとの対応関係を保持すると共に、前記アクセス装置から書き込み要求が発行された際に、データ記録領域として前記ライトワンスメモリの未記録の領域を割り当て、前記データ記録領域を前記アクセス装置が書き込み要求時に指定した論理アドレスに対応付けるアドレス変換処理を行うアドレス変換制御部と、前記ライトワンスメモリ内の未記録領域の大きさを判別し、前記アクセス装置が物理的に記録可能な残り容量として前記アクセス装置に通知する物理空き容量管理部と、前記アクセス装置からのコマンドに基づいてデータを前記ライトワンスメモリに書き込み、及び前記ライトワンスメモリからデータを読み出すメモリアクセス部と、を具備するものである。【００２５】
ここで前記メモリアクセス部は、前記ライトワンスメモリの物理アドレスの昇順にデータを順次書き込むものであり、前記アドレス変換制御部は、前記物理アドレスと前記論理アドレスの対応関係を保持し、複数の物理アドレスに同一の論理アドレスが対応付けられている場合、物理アドレスの最も大きな領域に格納されているデータをその論理アドレスの領域に格納された有効なデータとしてもよい。【００２６】
ここで前記物理空き容量管理部は、前記アクセス装置がデータ記録に先立ち発行する残容量取得コマンドを受け付けた際に、前記アドレス管理情報を元に前記ライトワンスメモリ内の未記録領域の大きさを算出し、前記アクセス装置が物理的に記録可能な残容量として前記アクセス装置に通知するようにしてもよい。【００２７】
ここで前記物理空き容量管理部は、前記アクセス装置が発行した記録コマンドを受け付けて前記メモリアクセス部が前記ライトワンスメモリへのデータ書き込み処理を実施した後、前記アドレス管理情報を元に前記ライトワンスメモリ内の未記録領域の大きさを算出し、前記アクセス装置が物理的に記録可能な残容量として前記アクセス装置に通知するようにしてもよい。【００２８】
ここで前記物理空き容量管理部は、前記アクセス装置がデータ記録に先立ち発行する残量変化取得コマンドを受け付けた際に、前記アドレス管理情報と、前記コマンドと共に前記アクセス装置により指定された記録処理のアドレス及びサイズの情報とを元に、前記アクセス装置により指定された記録をする前後の前記ライトワンスメモリに対する残り記録可能な容量の変化に関する情報を把握し、前記アクセス装置に通知するようにしてもよい。【００２９】
この課題を解決するために本発明のアクセス装置は、１回のデータ書き込みが可能なライトワンスメモリを有するライトワンス記録装置にアクセスするアクセス装置であって、前記ライトワンス記録装置内の記録領域に構築されたファイルシステム情報に基づいてデータをファイルとして制御するファイルシステム制御部と、前記ファイルシステム制御部が管理する領域管理情報から得られる前記ライトワンス記録装置に論理的に記録可能な残容量と、前記ライトワンス記録装置から取得した物理的に記録可能な残容量とを元に、前記ライトワンス記録装置に対する記録可否を判定する論物空き容量管理部と、を具備するものである。【００３０】
ここで前記論物空き容量管理部は、前記ライトワンス記録装置に対するデータ記録に先立ち、残容量取得コマンドを発行し、前記ライトワンス記録装置に物理的に記録可能な残容量を取得するようにしてもよい。【００３１】
ここで前記論物空き容量管理部は、前記ライトワンス記録装置に対して書き込みコマンドを発行し、そのレスポンスとして、前記ライトワンス記録装置に物理的に記録可能な残容量を取得するようにしてもよい。【００３２】
ここで前記論物空き容量管理部は、前記ライトワンス記録装置に対するデータ記録に先立ち、記録処理のアドレス及びサイズの情報を指定して残量の変化に関する変化情報コマンドを発行し、前記ライトワンス記録装置に物理的に記録可能な残り容量を取得するようにしてもよい。【００３３】
この課題を解決するために本発明のライトワンス記録システムは、１回のデータ書き込みが可能なライトワンスメモリを具備したライトワンス記録装置と、前記ライトワンス記録装置にアクセスするアクセス装置からなるライトワンス記録システムであって、前記ライトワンス記録装置は、１回のデータ書き込みが可能なライトワンスメモリと、前記ライトワンスメモリに接続され、外部のアクセス装置が前記ライトワンスメモリに対するアクセスを実施する際に指定する論理アドレスが与えられ、該論理アドレスに基づいてデータを記録し、読み出すコントローラとを具備するものであり、前記コントローラは、前記ライトワンスメモリを固定長の管理単位毎に分割して領域管理し、各管理単位の物理アドレスと論理アドレスとの対応関係を保持すると共に、前記アクセス装置から書き込み要求が発行された際に、データ記録領域として前記ライトワンスメモリの未記録の領域を割り当て、前記データ記録領域を前記アクセス装置が書き込み要求時に指定した論理アドレスに対応付けるアドレス変換処理を行うアドレス変換制御部と、前記ライトワンスメモリ内の未記録領域の大きさを判別し、前記アクセス装置が物理的に記録可能な残り容量として前記アクセス装置に通知する物理空き容量管理部と、前記アクセス装置からのコマンドに基づいてデータを前記ライトワンスメモリに書き込み、及び前記ライトワンスメモリからデータを読み出すメモリアクセス部と、を有し、前記アクセス装置は、前記ライトワンス記録装置内の記録領域に構築されたファイルシステム情報に基づいてデータをファイルとして制御するファイルシステム制御部と、前記ファイルシステム制御部が管理する領域管理情報から得られる前記ライトワンス記録装置に論理的に記録可能な残容量と、前記ライトワンス記録装置から取得した物理的に記録可能な残容量とを元に、前記ライトワンス記録装置に対する記録可否を判定する論物空き容量管理部と、を具備するものである。
【発明の効果】
【００３４】
本発明によれば、ＯＴＰメモリを備えたメモリカードに対する擬似的な上書きを実現する場合において、正確な残り記録可能容量をアクセス装置が把握することができ、メモリカードに空き領域が存在しないにも拘らずファイルデータを記録してしまうなどの問題を回避することが可能となる。
【図面の簡単な説明】
【００３５】
【図１】図１はＦＡＴファイルシステムの構成を示した説明図である。
【図２】図２はディレクトリエントリの構成を示した説明図である。
【図３】図３はＦＡＴファイルシステムのファイルデータ書き込み処理を示したフローチャートである。
【図４】図４はＦＡＴファイルシステムのファイルデータ書き込み前の状態を示した説明図である。
【図５】図５はＦＡＴファイルシステムのファイルデータ書き込み後の状態を示した説明図である。
【図６】図６は複数回書き換え可能な情報記録装置に対する従来のファイルデータ書き込み処理を示したフローチャートである。
【図７】図７は本発明の実施の形態１におけるアクセス装置、及びライトワンス記録装置を示した説明図である。
【図８】図８は本発明の実施の形態１におけるライトワンスメモリの構成を示した説明図である。
【図９】図９は本発明の実施の形態１におけるアドレス管理情報の一例を示した説明図である。
【図１０Ａ】図１０Ａは本発明の実施の形態１におけるライトワンス記録装置に対するファイルデータ書き込み処理を示したフローチャートである。
【図１０Ｂ】図１０Ｂは本発明の実施の形態１におけるライトワンス記録装置に対するファイルデータ書き込み処理を示したフローチャートである。
【図１１】図１１は本発明の実施の形態１におけるライトワンスメモリの状態（１）を示した説明図である。
【図１２】図１２は本発明の実施の形態１におけるライトワンスメモリの状態（２）を示した説明図である。
【図１３】図１３は本発明の実施の形態１におけるライトワンスメモリの状態（３）を示した説明図である。
【図１４】図１４は本発明の実施の形態１におけるライトワンスメモリの状態（４）を示した説明図である。
【図１５Ａ】図１５Ａは本発明の実施の形態１におけるライトワンス記録装置に対するファイルデータ書き込み処理の変形例１を示したフローチャートである。
【図１５Ｂ】図１５Ｂは本発明の実施の形態１におけるライトワンス記録装置に対するファイルデータ書き込み処理の変形例１を示したフローチャートである。
【図１６Ａ】図１６Ａは本発明の実施の形態１におけるライトワンス記録装置に対するファイルデータ書き込み処理の変形例２を示したフローチャートである。
【図１６Ｂ】図１６Ｂは本発明の実施の形態１におけるライトワンス記録装置に対するファイルデータ書き込み処理の変形例２を示したフローチャートである。
【図１７】図１７は本発明の実施の形態２におけるアクセス装置、及びライトワンス記録装置を示した説明図である。
【図１８】図１８は本発明の実施の形態２におけるライトワンスメモリの構成を示した説明図である。
【図１９Ａ】図１９Ａは本発明の実施の形態２におけるライトワンス記録装置に対するファイルデータ書き込み処理を示したフローチャートである。
【図１９Ｂ】図１９Ｂは本発明の実施の形態２におけるライトワンス記録装置に対するファイルデータ書き込み処理を示したフローチャートである。
【符号の説明】
【００３６】
１  アクセス装置
２Ａ，２Ｂ  ライトワンス記録装置
１１，２２  ＣＰＵ
１２，２３  ＲＡＭ
１３  記録装置インタフェース
１４，２４  ＲＯＭ
１５  アプリケーション制御部
１６  論物空き容量管理部
１７  ファイルシステム制御部
１８  記録装置アクセス部
２１  アクセス装置インタフェース
２５，３０−１，３０−２，・・・３０−Ｐ  ライトワンスメモリ
２６  コマンド解釈部
２７  物理空き容量管理部
２８  アドレス変換制御部
２９  メモリアクセス部
１００  ファイルシステム管理情報
１０１  ユーザデータ
１０２  マスターブートレコード・パーティションテーブル
１０３  パーティションブートセクタ
１０４，１０５  ＦＡＴ
１０６  ルートディレクトリエントリ
１０７  ディレクトリエントリ
【発明を実施するための最良の形態】
【００３７】
以下、本発明のライトワンス記録装置、コントローラ、アクセス装置、及びライトワンス記録システムについて、図面を参照しつつ説明する。【００３８】
（実施の形態１）
図７は本発明の実施の形態１におけるアクセス装置１、ライトワンス記録装置２Ａの構成図である。図７においてアクセス装置１は、ＣＰＵ１１、ＲＡＭ１２、記録装置インタフェース（記録装置ＩＦ）１３、ＲＯＭ１４を含む。記録装置インタフェース１３は、アクセス装置１とライトワンス記録装置２Ａとの接続部であり、制御信号及びデータを送受信するインタフェースである。【００３９】
ＲＯＭ１４にはアクセス装置１を制御するプログラムが格納されており、このプログラムはＲＡＭ１２を一時記憶領域として使用し、ＣＰＵ１１上で動作する。ＲＯＭ１４は、アプリケーション制御部１５、論物空き容量管理部１６、ファイルシステム制御部１７、記録装置アクセス部１８を含んでいる。【００４０】
アプリケーション制御部１５は、データの生成や電源の制御などアクセス装置１全体を制御するものである。【００４１】
論物空き容量管理部１６は、ライトワンス記録装置に対するデータ記録に先立ち、残容量取得コマンドを発行する。そしてファイルシステム制御部１７が管理する領域管理情報から得られる論理アドレス空間上での残容量と、ライトワンス記録装置２Ａから取得した物理的に記録可能な残容量とを元に、ライトワンス記録装置に対する記録可否を判定し、ファイルシステム制御部１７に通知するものである。【００４２】
ファイルシステム制御部１７は、従来のアクセス装置に搭載されているファイルシステム制御部と同様のものであり、ＦＡＴファイルシステムなどを用いて、データをファイルとして管理するための制御を行うものである。アクセス装置がライトワンスメモリに対してアクセスする際には、論理アドレスを指定する。【００４３】
記録装置アクセス部１８は、ファイルシステム制御部１７からデータと共にサイズと論理アドレスを渡され、指定されたサイズのデータをライトワンス記録装置２Ａの記録領域内に記録するなど、ライトワンス記録装置２Ａに対するコマンドやデータの送受信を制御するものである。【００４４】
一方、図７においてライトワンス記録装置２Ａは、アクセス装置インタフェース（アクセス装置ＩＦ）２１、ＣＰＵ２２、ＲＡＭ２３、ＲＯＭ２４を有するコントローラと、ライトワンスメモリ（ＷＯＭ）２５とを含む。【００４５】
アクセス装置インタフェース２１は、ライトワンス記録装置２Ａとアクセス装置１との接続部であり、記録装置インタフェース１３と同様に、制御信号及びデータを送受信するインタフェースである。【００４６】
ライトワンスメモリ（ＷＯＭ）２５は、各領域に１回だけの書き込みが可能なメモリであり、例えばＯＴＰメモリが用いられる。このメモリに記録するデータには、ファイルシステム管理情報や、ユーザデータ、論理アドレスと物理アドレスの対応関係を示すアドレス管理情報などが含まれる。【００４７】
ＲＯＭ２４にはライトワンス記録装置２Ａを制御するプログラムが格納されており、このプログラムはＲＡＭ２３を一時記憶領域として使用し、ＣＰＵ２２上で動作する。また、ＲＯＭ２４はコマンド解釈部２６、物理空き容量管理部２７、アドレス変換制御部２８、ライトワンスメモリアクセス部２９を含んでいる。【００４８】
コマンド解釈部２６は、アクセス装置１から送信されたコマンドを解釈するものである。このコマンドとしては、記録コマンド、読み出しコマンドに加えて、残容量についてのデータを取得するための残容量取得コマンド、残容量の変化情報を取得するための変化情報コマンドがある。【００４９】
物理空き容量管理部２７は、ライトワンスメモリ２５上に存在する記録可能な残容量を算出し管理している。そしてアクセス装置１から残容量取得コマンドが発行された場合、物理空き容量管理部２７が管理している残容量を物理的に記録可能な残容量としてアクセス装置１に通知するものである。【００５０】
アドレス変換制御部２８は、ライトワンスメモリを固定長の管理単位毎に分割して領域管理し、アクセス装置１との通信で使用する論理アドレスとライトワンスメモリ２５上の各管理単位の物理アドレスとを変換し、その対応関係を保持するものである。又アドレス変換制御部２８は、アクセス装置から書き込み要求が発行された際に、データ記録領域としてライトワンスメモリ２５の未記録の領域を割り当て、データ記録領域をアクセス装置が書き込み要求時に指定した論理アドレスに対応付けるアドレス変換処理を行う。アドレス変換制御部２８は、物理アドレスと論理アドレスの対応関係を保持し、複数の物理アドレスに同一の論理アドレスが対応付けられている場合、物理アドレスの最も大きな領域に格納されているデータをその論理アドレスの領域に格納された有効なデータとする。【００５１】
メモリアクセス部２９は、アドレス変換部２８で指示された物理アドレスに基づいてライトワンスメモリ２５にアクセスしてデータの書き込み、読み出しを行うものである。データを書き込む際には、メモリアクセス部２９は、ライトワンスメモリの物理アドレスの昇順にデータを順次書き込む。【００５２】
図８は本発明の実施の形態１におけるライトワンスメモリ２５の全体構成を示す図である。ライトワンスメモリ２５は、ページが複数個連続的に配置された構成となっており、それぞれのページには、物理アドレスとしてページ番号ＰＮが０〜Ｍ−１まで割り振られて管理されている。ここではライトワンスメモリ２５の各ページを管理単位とする。各ページは、アクセス装置１から読み書き可能なデータ領域と、ライトワンス記録装置２Ａ内の管理用領域として使用される冗長領域とから構成される。【００５３】
図９は各ページの詳細を示す図であり、２０４８バイトのデータ領域と、６４バイトの冗長領域が１つの記録単位（ページ）として管理されている例を示している。データ領域は５１２バイトから成るデータ領域１〜４を有している。冗長領域には、そのページの物理アドレスがどの論理アドレスに対応しているかを示す情報を格納する領域や、データ領域のエラー訂正に使用されるＥＣＣを格納する領域が存在する。本発明の実施の形態１では、アドレス管理情報としてライトワンスメモリ２５の冗長領域に論理アドレスが格納される場合について説明する。【００５４】
本実施の形態のライトワンス記録装置２Ａでは、ライトワンスメモリ２５上での残り記録可能な残容量を物理空き容量管理部２７により管理すると共に、アクセス装置１がデータの記録を指示した場合にアドレス変換制御部２８により新たな物理アドレスを割り当ててデータを記録した上で論理アドレスと物理アドレスの対応関係を更新し、ライトワンスメモリ２５に対する擬似的な上書き処理、追記処理を実現する。更に、アクセス装置１から残容量取得コマンドが発行された場合、物理空き容量管理部２７が管理している残容量をアクセス装置１に通知する。これにより、アクセス装置１がライトワンス記録装置２Ａにデータを記録する場合において、正確な残りの記録可能容量をアクセス装置１が把握することができ、ライトワンス記録装置２Ａに空き領域が存在しないにも拘らずファイルデータを記録してしまうなどの問題を回避することが可能となる。【００５５】
ライトワンスメモリ２５の全物理容量は、アクセス装置１が読み書き可能な論理アドレス空間の全容量と同一の大きさとしてライトワンス記録装置２Ａで管理しても良い。この場合には新しいライトワンスメモリ２５であれば、ＦＡＴから見た論理空間上の残容量と物理アドレス空間上の残容量は同一となる。また全物理容量からライトワンス記録装置２Ａが領域管理などの目的のため独自に使用する領域の大きさを差し引いた容量を論理アドレス空間の全容量として管理しても良い。この場合には新しいライトワンスメモリ２５であれば、ＦＡＴから見た論理アドレス空間上の残容量は物理アドレス空間上の残容量よりも小さくなり、上書きなどを繰り返していくにつれて物理アドレス空間上の残容量が論理アドレス空間上の残容量よりも小さくなる。【００５６】
次に図１０Ａ，図１０Ｂを用いて、実施の形態１におけるライトワンス記録装置２Ａに対するファイルデータ書き込み処理手順を説明する。
（Ｓ３０１）アクセス装置１は、ライトワンス記録装置２Ａからアクセス装置１上のＲＡＭ１２に読み出したＦＡＴ（１０４、１０５）の情報を元に論理空間上での残容量Ａを算出する。
（Ｓ３０２）アクセス装置１がライトワンス記録装置２Ａに対して残容量を取得するためのコマンド（以下、単に残容量取得コマンドという）を発行する。このコマンドは、ライトワンス記録装置２Ａ内のライトワンスメモリ２５に対して記録できる物理空間上での残り容量を取得するためのコマンドである。
（Ｓ３０３），（Ｓ３０４）ライトワンス記録装置２Ａは、Ｓ３０２によってアクセス装置１から発行された残容量取得コマンドを受信し、コマンド解釈部２６によりコマンドの種別を識別し、物理空き容量管理部２７から物理空間上の残容量を取得する。具体的には、ライトワンスメモリ２５上で一度も記録が行われていない物理容量の大きさなどを残容量として取得する。
（Ｓ３０５）ライトワンス記録装置２Ａは、残容量取得コマンドに対する応答として、残容量取得処理が完了した旨のレスポンスと共にＳ３０４で取得した物理空間上での残容量Ｂの情報をアクセス装置１に返信する。
（Ｓ３０６），（Ｓ３０７）アクセス装置１は、レスポンスを受信すると、Ｓ３０１で算出した残容量Ａと、Ｓ３０４で取得した残容量Ｂの小さい方の値を、実際に記録が可能な残容量Ｃとして決定する。
（Ｓ３０８）決定した残容量Ｃを元にファイルデータの記録が可能か判定し、不可であれば処理を終了する。
（Ｓ３０９）Ｓ３０８において記録可能と判定した場合、１回のファイルデータ記録で書き込みを行うデータサイズ分の空き領域をＦＡＴ（１０４、１０５）上で検索し、そのＦＡＴエントリをＲＡＭ１２上で０以外の値に設定することにより、ＦＡＴ（１０４、１０５）上で記録領域を割り当てる。
（Ｓ３１０）アクセス装置１はＳ３０９で割り当てた記録領域にファイルデータを記録するため、ライトワンス記録装置２Ａに記録コマンドを送信する。
（Ｓ３１１），（Ｓ３１２）ライトワンス記録装置２Ａはアクセス装置１から発行された記録コマンドを受信すると、アドレス変換制御部２８はライトワンスメモリ２５上で記録可能な領域を検索し、メモリアクセス部２９によりファイルデータを記録する。
（Ｓ３１３）Ｓ３１２でファイルデータを記録した領域の物理アドレスと、アクセス装置１からの記録コマンドで指定された論理アドレスとが対応するよう、アドレス管理情報を更新する。
（Ｓ３１４），（Ｓ３１５）アドレス変換制御部２８はライトワンス記録装置２Ａは記録コマンドに対する応答として、記録が完了した旨のレスポンスをアクセス装置１に返信し、アクセス装置１はこれを受信する。
以下、記録対象のファイルデータが存在する間、Ｓ３０１からＳ３１５の処理を、繰り返し実行する。【００５７】
このように、本発明の実施の形態１におけるライトワンス記録装置２Ａにファイルデータを記録する場合には、アクセス装置１がライトワンス記録装置２Ａに対して、残容量取得コマンドを発行し、物理的に記録可能な残り容量を取得した上で、ＦＡＴ（１０４、１０５）上の残容量と比較して実際に記録可能な残り容量を把握する。これにより、ライトワンスメモリ２５に対して擬似的な上書きを実施する場合において、正確な残容量を把握することができる。【００５８】
次に、図１１から１４は夫々データ記録時におけるライトワンスメモリ２５とそれに対応する論理アドレス空間ＬＡＳの保持情報の変化を示す図である。ここで破線で示す論理アドレス空間ＬＡＳは、この論理アドレスＬＡとそれに対応するデータを示している。図１１はライトワンスメモリ２５に何もデータが記録されていない状態を示しており、ライトワンスメモリ２５の物理アドレスであるページ番号ＰＮ０〜ＰＮ（Ｍ−１）のデータ領域と、冗長領域のうちの論理アドレスＬＡを格納する領域は全て初期値になっている。ここではデータ領域の初期値として、０ｘＦＦが設定されている場合を想定している。又論理アドレスを格納する領域に０ｘＦＦＦＦＦＦＦＦが設定されている場合、そのページがどの論理アドレスにも割り当てられていないことを示している。すなわち、図１１の状態では全ての論理アドレスにページが割り当てられていないため、アクセス装置１がライトワンス記録装置２Ａから各論理アドレスに格納されたデータを読み出すと、初期値（０ｘＦＦ）が読み出されることになる。【００５９】
次にアクセス装置１が論理アドレス０の領域に１ページ分のデータを記録した場合、ライトワンスメモリ２５は図１２の状態に変化する。本実施の形態１では、ライトワンスメモリ２５に対して全て物理アドレスの先頭から昇順に記録されるものとする。図１２に示すようにメモリアクセス部２９は、データ（Ｄａｔａ１）を物理アドレス０のページ（ＰＮ０）に記録し、冗長領域にそのページが対応する論理アドレスを０（正確には０ｘ００００００００）と設定する。そのため、アクセス装置１がライトワンス記録装置２Ａから論理アドレス０に格納されたデータを読み出すと、物理アドレス０のページ（ＰＮ０）に格納されたＤａｔａ１が読み出されることになる。【００６０】
同様にアクセス装置１が論理アドレス１（正確には０ｘ０００００００１）の領域に１ページ分のデータ（Ｄａｔａ２）を記録した場合、図１３の状態に変化する。図１３では、Ｄａｔａ２は物理アドレス１のページ（ＰＮ１）に格納されており、そのページが対応する論理アドレスは１と設定されている。そのため、アクセス装置１がライトワンス記録装置２Ａから論理アドレス１に格納されたデータを読み出すと、物理アドレス１のページ（ＰＮ１）に格納されたＤａｔａ２が読み出されることになる。【００６１】
次にアクセス装置１が論理アドレス０の領域に１ページ分のデータを記録した場合、図１４の状態に変化する。図１４ではデータ（Ｄａｔａ３）は物理アドレス２のページに格納されており、そのページが対応する論理アドレスは０と設定されている。ここで論理アドレス０の領域には既にデータが記録されていたため、図１４の状態ではライトワンスメモリ２５内において論理アドレスの情報を格納する領域には、２箇所に“０”の値が存在することになる。ライトワンスメモリ２５に対して物理アドレスの先頭から昇順に記録されるので、複数個所に同一の論理アドレスの情報が格納されている場合には、物理アドレスの大きなページに格納されているデータが有効となる。そのため図１４の状態では、アクセス装置１がライトワンス記録装置２Ａから論理アドレス０に格納されたデータを読み出すと、物理アドレス２のページ（ＰＮ２）に格納されたＤａｔａ３が読み出されることになる。このようにして、本発明の実施の形態１ではライトワンスメモリに対する擬似的な上書きを実現する。【００６２】
また、ライトワンス記録装置２Ａ内の物理空き容量管理部２７では、ライトワンスメモリ２５内の論理アドレスの情報を格納する領域に初期値０ｘＦＦＦＦＦＦＦＦが設定されている場合、そのページが記録可能ページであると判定する。そのため、ライトワンスメモリ２５内の残り記録可能な残容量は、論理アドレスの情報を格納する領域に０ｘＦＦＦＦＦＦＦＦが設定されているページの数をカウントすることにより算出することができる。特に、ライトワンスメモリ２５に対し物理アドレスの先頭から昇順に記録するものとした場合、ライトワンスメモリ２５は物理アドレスの先頭から順に記録され、消費される。そのため、論理アドレスの情報を格納する領域に最初に０ｘＦＦＦＦＦＦＦＦが設定されている物理アドレスのページ以降は全てが記録可能なページとなる。従って全ページ数から、ここで見出されたページ番号を減算することにより、残容量を容易に算出することができる。【００６３】
以上のように、本発明の実施の形態１におけるアクセス装置１、及びライトワンス記録装置２Ａは、ライトワンス記録装置２Ａが管理している残容量に関する情報を、アクセス装置１がライトワンス記録装置２Ａから取得し、ＦＡＴ（１０４、１０５）上の残容量と比較して実際に記録可能な残り容量を把握する。これにより、ライトワンスメモリ２５に対して擬似的な上書きを実施する場合において、正確な残容量を把握することが可能となる。【００６４】
（変形例１）
尚、本発明を実施の形態１に基づいて説明してきたが、本発明は実施の形態１に限定されないのは勿論である。本発明の趣旨を逸脱しない範囲で実施変更することができる。本発明の実施の形態１において、残容量取得コマンドによりライトワンス記録装置２Ａが管理している残容量に関する情報をアクセス装置１が取得する例について説明したが、その他の方法を用いても良い。【００６５】
図１５Ａ，図１５Ｂはこの変形例１を示すフローチャートである。図１５Ａにおいて、ステップＳ４０１〜４１３は図８に示すＳ３０１〜３１３と同様である。Ｓ４１４ではＳ４１２，Ｓ４１３でデータを記録し、アドレス管理情報を更新した後、物理空き容量管理部２７が保持している残容量Ｄを取得し、残容量Ｄの情報と共に記録終了のレスポンスを送出する。アクセス装置はこの情報を受信し、更に記憶する必要がなければ処理を終える。記録するデータが残っている場合には、Ｓ４１７においてＦＡＴから論理アドレス空間上の残容量Ｅを算出する。そしてＳ４０９と同様に容量ＤとＥとからより少ない容量を残容量Ｆとし、この容量を元に記録可否を判定する。記録ができなければ処理を終え、記録が可能な場合にはＳ４２０においてＦＡＴ上で記録領域を割当て、Ｓ４２１においてファイルデータの記録コマンドを送信する。ライトワンス記録装置２Ａはこのコマンドを受信すると、データを記録し、アドレス管理情報を更新する（Ｓ４２２〜Ｓ４２４）。そして新たに残容量Ｄを取得し（Ｓ４２５）、残容量Ｄの情報と共に記録終了のレスポンスを送信する（Ｓ４２６）。アクセス装置１はこのレスポンスを受信する（Ｓ４２７）。そして必要に応じてＳ４１７に戻って同様の処理を繰り返す。【００６６】
このように変形例１では、記録コマンドに対し記録を終了した旨のレスポンスに加えて残容量の情報をアクセス装置１に通知している。これにより、次回のファイルデータ記録時に残容量取得コマンドを発行して残容量を取得する必要がなくなり、高速にファイルデータを記録することが可能となる。但し、初回のファイルデータ記録時においては、図１５Ａに示すように、残容量取得コマンドを発行して残容量を取得する必要がある。【００６７】
この場合は物理空き容量管理部２７は、アクセス装置が発行した書き込みコマンドを受け付けてメモリアクセス部２９がライトワンスメモリへのデータ書き込み処理を実施した後、アドレス管理情報を元にライトワンスメモリ内の未記録領域の大きさを算出し、アクセス装置が物理的に記録可能な残容量としてアクセス装置に通知する機能を有している。【００６８】
（変形例２）
次に本実施の形態の変形例２について説明する。この実施の形態では、アクセス装置１は記録コマンドを実際に発行する前に今から記録しようとしている領域のアドレスとサイズの情報をライトワンス記録装置２Ａに通知し、その記録により残容量がどのように変化するかに関する情報を取得するようにしたものである。図１６Ａ，図１６Ｂのフローチャートにおいて、Ｓ５０１，Ｓ５０２ではＦＡＴ（１０４、１０５）から算出した残容量を元に記録可否判定を行う。この点は図６に示した従来の処理手順と同様である。しかしながら、その後の処理が従来の処理手順とは異なる。ファイルシステムでは、図３で示したようにファイルデータの記録時には、ファイルデータの記録と共に、ディレクトリエントリ１０７やＦＡＴ（１０４、１０５）の記録が必要となる。そのため、Ｓ５０３では、ファイルシステムの一連の処理で発生する記録処理のアドレス、サイズを決定する。即ち、具体的にはファイルデータの記録と共に、それに伴い発生するディレクトリエントリ１０７やＦＡＴ（１０４、１０５）の記録に関する記録処理のアドレス、サイズを決定する。そして、Ｓ５０４において、このアドレス、サイズを引数として残量の変化を示す情報を取得するためのコマンド（以下、変化情報コマンドという）をライトワンス記録装置２Ａに発行する。この場合、論物空き容量管理部１６は、ライトワンス記録装置に対するデータ記録に先立ち、記録処理のアドレス及びサイズの情報を指定して残量の変化に関する変化情報コマンドを発行し、ライトワンス記録装置に物理的に記録可能な残り容量を取得する機能を達成している。【００６９】
ライトワンス記録装置２Ａは、Ｓ５０５においてこのコマンドを受け取ると、指定されたアドレス、サイズの記録コマンドが発生した場合に生じる残量の変化を示す情報を算出する（Ｓ５０６）。この情報は例えば、現在の残容量と、指定されたアドレス、サイズの記録コマンドにより減少する残容量との組などがある。ライトワンス記録装置はこの変化情報を含めたレスポンスをアクセス装置に送出する（Ｓ５０７）。アクセス装置１はＳ５０８においてこのレスポンスを受信する。アクセス装置１は変化情報コマンドを先に決定したファイルシステムの一連の処理で発生する全記録処理分に対して繰り返し実施することにより、ファイルシステムの一連の処理で残量がどのように変化するかを予め把握することが可能となる。【００７０】
次いで図１６Ｂに示すＳ５０９ではこの残量変化情報を元に記録可否を判定する。記録が不可であれば処理を終了し、記録可能であればＳ５１０においてＦＡＴ上で記録を割当て、Ｓ５１１において記録コマンドを送出する。ライトワンス記録装置２ＡはＳ５１２においてこのコマンドを受信すると、Ｓ５１３，Ｓ５１４に進んでデータを記録し、アドレス管理情報を更新する。そして記録終了レスポンスをアクセス装置に返信する（Ｓ５１５）。アクセス装置１はこのレスポンスを受信する。そしてＳ５１１〜５１５の処理は一連の必要なデータを終えるまで繰り返す。【００７１】
この方法を用いることにより、ファイルデータ、ディレクトリエントリ１０７、ＦＡＴ（１０４、１０５）が全て記録されて始めてファイルシステムの整合性が保たれる場合に、ファイルデータ、ディレクトリエントリ１０７まで記録した段階で残容量がなくなり、ＦＡＴ（１０４、１０５）が記録できず、ファイルシステムの整合性が保てなくなることを防ぐことができる。【００７２】
物理空き容量管理部２７は、アクセス装置がデータ記録に先立ち発行する変化情報コマンドを受け付けた際に、アドレス管理情報と、コマンドと共に前記アクセス装置により指定された記録処理のアドレス及びサイズの情報とを元に、アクセス装置により指定された記録処理を実施する前後のライトワンスメモリに対する残り記録可能な容量の変化に関する情報を把握し、アクセス装置に通知する。【００７３】
また、図１６Ａ，図１６Ｂのフローでは変化情報コマンドを必要回数分繰り返す例について説明したが、１回のコマンドで複数回数分の記録コマンドに関する残量の変化に関する情報を取得するようにしても良い。【００７４】
また、本発明の実施の形態１で説明したアドレス管理情報の構成は一例であり、その他の構成を取っても良い。ここでは管理単位として２ｋＢの容量を持つページ単位としているが、異なったサイズを管理単位とすることができる。例えば、論理アドレスを格納する領域として１ページ当たり４バイトの領域を使用する例について記載したが、１ページ当たり１６バイトの領域を使用してもよい。こうすれば図８に示すセクタ単位（５１２バイト単位）でアドレス変換を行うことができ、セクタ単位を管理単位とすることができる。また逆に複数ページをまとめて管理単位とし、この単位でアドレス変換を行うようにしてもよい。また、アドレス管理情報をライトワンスメモリ２５の冗長領域に分散して格納する例について説明したが、１箇所にまとめてアドレス管理情報を格納してもよい。【００７５】
（実施の形態２）
図１７は本発明の実施の形態２におけるアクセス装置、ライトワンス記録装置の構成図である。実施の形態では、ライトワンス記録装置２ＢはＰ（Ｐは自然数）個のライトワンスメモリを有している。各ライトワンスメモリ３０−１，３０−２，・・・３０−Ｐの中には、図７と同様にファイルシステム管理情報やユーザデータが格納される論理アドレス空間が存在し、ライトワンスメモリに対する擬似的な上書きを実現するためにアドレス管理情報も格納されている。【００７６】
図１８は、本発明の実施の形態２におけるライトワンスメモリの構成を示した図である。各ライトワンスメモリには識別子としてメモリ番号１，２，・・・Ｐが割り当てられている。各ライトワンスメモリの内部の領域は図８と同様にデータ領域と冗長領域からなるページが複数存在する。従ってメモリ番号とページ番号を組み合わせることで、一意な物理アドレスが決定されることになる。また、各ライトワンスメモリは特定の論理アドレスに割り当てられ、管理されている。例えば、メモリ番号１のライトワンスメモリ３０−１は、論理アドレス０から（Ｎ−１）の論理アドレス空間に割り当てられており、メモリ番号２のライトワンスメモリ３０−２は、論理アドレスＮから（２Ｎ−１）の論理アドレス空間に割り当てられている。このように各ライトワンスメモリを特定の論理アドレス空間に割り当てることで、アドレス変換対象のアドレス空間が小規模になり、アドレス変換処理のオーバーヘッドを低く抑えることができるというメリットが生じる。【００７７】
次に図１９Ａ，図１９Ｂを用いて、本発明の実施の形態２におけるライトワンス記録装置２Ｂに対するファイルデータ書き込み処理手順を説明する。
（Ｓ６０１）ライトワンス記録装置２Ｂからアクセス装置１上のＲＡＭ１２に読み出したＦＡＴ（１０４、１０５）の情報を元に残容量Ａを算出する。このとき、各ライトワンスメモリに対して割り当てられている論理アドレス空間を特定し、ライトワンスメモリ１枚分に対応する論理アドレス空間に含まれる領域のみを算出対象とする。
（Ｓ６０２）アクセス装置１がライトワンス記録装置２Ｂに対して残容量取得コマンドを発行する。このコマンドでは引数としてＳ６０１で特定した論理アドレスに対応するメモリ番号ｉを指定し、そのライトワンスメモリ３０−ｉに対する残容量の情報を要求する。
（Ｓ６０３），（Ｓ６０４）Ｓ６０２によってアクセス装置１から発行された残容量取得コマンドを受信したライトワンス記録装置２Ｂは、コマンド解釈部２６によりコマンドの種別を識別し、物理空き容量管理部２７から残容量Ｂを取得する。
（Ｓ６０５）ライトワンス記録装置２Ｂは、残容量取得コマンドに対する応答として、残容量取得処理が完了した旨のレスポンスと共に、特定したライトワンスメモリに含まれる残容量Ｂの情報をアクセス装置１に返信する。
（Ｓ６０６），（Ｓ６０７）アクセス装置１は、このレスポンスを受信し、Ｓ６０１で算出した残容量Ａと、Ｓ６０４で取得した残容量Ｂの小さい方の値を、該当メモリ番号ｉのライトワンスメモリに実際に記録が可能な残容量Ｃｉとして決定する。Ｓ６０１からＳ６０７までの処理を、ライトワンス記録装置２Ａ内に存在する全ライトワンスメモリに対して繰り返し実施する。
（Ｓ６０８）その後アクセス装置１は各ライトワンスメモリに対するＣｉ（ｉ＝１〜Ｐ）の総和からライトワンス記録装置２Ａの残容量Ｄを算出する。
（Ｓ６０９）Ｓ６０８で決定した残容量Ｄを元にファイルデータの記録が可能かどうかを判定する。記録が不可であれば処理を終了する。
（Ｓ６１０）Ｓ６０９において記録可能と判定した場合、１回のファイルデータ記録で書き込みを行うデータサイズ分の空き領域をＦＡＴ（１０４、１０５）上で検索し、そのＦＡＴエントリをＲＡＭ１２上で０以外の値に設定することにより、ＦＡＴ（１０４、１０５）上で記録領域を割り当てる。このとき、各ライトワンスメモリで残容量が異なるため、残容量が存在するライトワンスメモリに対応する論理アドレス空間に限定してＦＡＴ（１０４、１０５）上で空き領域を検索する。具体的には、Ｓ６０７の処理において残容量Ｃｉが０となったライトワンスメモリのメモリ番号ｉを記憶しておき、対応する論理アドレス空間をＦＡＴ（１０４、１０５）上の空き領域検索の対象から外すことで実現できる。
（Ｓ６１１）Ｓ６１０で割り当てた記録領域にファイルデータを記録するためライトワンス記録装置２Ｂに記録コマンドを発行する。
（Ｓ６１２），（Ｓ６１３）ライトワンス記録装置２Ｂは、アクセス装置１から発行された記録コマンドを受信し、ライトワンスメモリ上で記録可能な領域を検索し、ファイルデータを記録する。
（Ｓ６１４）Ｓ６１３でファイルデータを記録した領域の物理アドレスと、アクセス装置１から指定された論理アドレスとが対応するよう、アドレス管理情報を更新する。
（Ｓ６１５），（Ｓ６１６）記録コマンドに対する応答として、記録が終了した旨の記録終了レスポンスをライトワンス記録装置２Ａがアクセス装置１に返信する。アクセス装置はこのレスポンスを受信し、必要に応じてＳ６０１に戻って同様の処理を繰り返す。
このように記録対象のファイルデータが存在する間、Ｓ６０１からＳ６１６の処理を、繰り返し実施する。【００７８】
このように、本発明の実施の形態２におけるファイルデータ記録では、アクセス装置１がライトワンス記録装置２Ｂに対して、複数のライトワンスメモリ毎に残容量取得コマンドを発行し、物理的に記録可能な残り容量を取得した上で、ＦＡＴ上の残容量と比較して実際に記録可能な残容量を把握する。これにより、ライトワンス記録装置２Ｂが複数のライトワンスメモリを有する場合においても、正確な残容量を把握することが可能となる。【００７９】
尚、本発明を実施の形態２に基づいて説明してきたが、本発明はここでの説明に限定されないのは勿論である。本発明の趣旨を逸脱しない範囲で実施変更することができる。本発明の実施の形態１において記載した各種の変更を、実施の形態２に適用しても良い。【００８０】
また、図１９ＡのフローのＳ６０７の処理において、ＦＡＴ（１０４、１０５）が存在する論理アドレス空間を含むいずれかのライトワンスメモリの残容量Ｃを常に０と設定しても良い。このようにすることで、特定のライトワンスメモリをＦＡＴの記録用とすることができ、このライトワンスメモリへはファイルデータが書き込まれなくなる。その結果、このライトワンスメモリはＦＡＴの擬似的な上書き処理にのみ空き領域を消費していくことになり、ＦＡＴを上書きする回数を延ばすことが可能となる。【００８１】
また、１枚のライトワンスメモリ内を複数領域に分割して管理し、各々の領域と特定の論理アドレス空間に割り当てて管理する場合に本発明を適用しても良い。【００８２】
本発明に関わるアクセス装置、及びライトワンス記録装置は、ライトワンス記録装置が管理している残容量に関する情報を、アクセス装置がライトワンス記録装置から取得し、ＦＡＴ上の残容量と比較して実際に記録可能な残り容量を把握する。これにより、ライトワンスメモリに対して擬似的な上書きを実施する場合において、正確な残容量を把握することができ、ライトワンス記録装置に空き領域が存在しないにも拘らずファイルデータを記録してしまうなどの問題を回避することが可能となる。
【産業上の利用可能性】
【００８３】
このようなライトワンス記録装置は、音楽や静止画、動画などのデジタルコンテンツを格納する記録媒体として利用することができ、またアクセス装置は、ライトワンス記録装置にアクセスするＰＣアプリケーション、オーディオレコーダ、ＤＶＤレコーダ、ＨＤＤレコーダ、ムービー、デジタルスチルカメラ、携帯電話端末等として利用することができる。
【図１】
2008072590.tif 000003
【図２】
2008072590.tif 000004
【図３】
2008072590.tif 000005
【図４】
2008072590.tif 000006
【図５】
2008072590.tif 000007
【図６】
2008072590.tif 000008
【図７】
2008072590.tif 000009
【図８】
2008072590.tif 000010
【図９】
2008072590.tif 000011
【図１０Ａ】
2008072590.tif 000012
【図１０Ｂ】
2008072590.tif 000013
【図１１】
2008072590.tif 000014
【図１２】
2008072590.tif 000015
【図１３】
2008072590.tif 000016
【図１４】
2008072590.tif 000017
【図１５Ａ】
2008072590.tif 000018
【図１５Ｂ】
2008072590.tif 000019
【図１６Ａ】
2008072590.tif 000020
【図１６Ｂ】
2008072590.tif 000021
【図１７】
2008072590.tif 000022
【図１８】
2008072590.tif 000023
【図１９Ａ】
2008072590.tif 000024
【図１９Ｂ】
2008072590.tif 000025
【国際調査報告】
2008072590.tif 000026
2008072590.tif 000027