JP5129156B2 - アクセス装置、および、ライトワンス記録システム - Google Patents

アクセス装置、および、ライトワンス記録システム Download PDF

Info

Publication number
JP5129156B2
JP5129156B2 JP2008549293A JP2008549293A JP5129156B2 JP 5129156 B2 JP5129156 B2 JP 5129156B2 JP 2008549293 A JP2008549293 A JP 2008549293A JP 2008549293 A JP2008549293 A JP 2008549293A JP 5129156 B2 JP5129156 B2 JP 5129156B2
Authority
JP
Japan
Prior art keywords
write
once
recording
remaining capacity
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2008549293A
Other languages
English (en)
Other versions
JPWO2008072590A1 (ja
Inventor
卓治 前田
信治 井上
博樹 衛藤
雅裕 中村
誠 越智
由紀子 岡本
雅浩 中西
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2008549293A priority Critical patent/JP5129156B2/ja
Publication of JPWO2008072590A1 publication Critical patent/JPWO2008072590A1/ja
Application granted granted Critical
Publication of JP5129156B2 publication Critical patent/JP5129156B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、1回のみ記録が可能なライトワンス型のメモリを用いたライトワンス記録装置にアクセスするアクセス装置、ならびに、ライトワンス記録装置およびアクセス装置を具備するライトワンス記録システムに関する。

音楽コンテンツや、映像データ等のデジタルデータを記録する記録媒体には、磁気ディスク、光ディスク、光磁気ディスク等、様々な種類が存在する。これら記録媒体の1種類であるメモリカードは、記録素子としてフラッシュROM等の半導体メモリを主に使用しており、記録媒体の小型化が図れることから、デジタルスチルカメラや携帯電話端末等、小型の携帯機器を中心に急速に普及している。
このようなメモリカードでは、記録素子としてNAND型フラッシュメモリと呼ばれる半導体素子が主に使用されている。NAND型フラッシュメモリは、既に記録されたデータを一旦消去した後、再度別のデータを記録することが可能な記録素子であり、従来のハードディスクと同様に、複数回書き換え可能なメモリカードを構成することが可能である。
一方、近年NAND型フラッシュメモリとは異なる記録素子として、従来のCMOSプロセスの技術を応用して安価に製造することが可能なOTP(One Time Programmable)メモリが登場し、注目されている。OTPメモリは同一の物理メモリ領域に対して一回しか記録できないという制限を持つライトワンスメモリである。このメモリは製造コストが安価であるため、特にDVD−R等のメディア同様、データの長期保存などの用途に使用されるメモリカードの記録素子として普及する可能性がある。すなわち、従来のメモリカードのように複数回の書き換えが必要な用途向けにはNAND型フラッシュメモリを用いて比較的高価なメモリカードとして販売し、1回記録した以後は書き換えが不要であるような用途向けにはOTPメモリを用いて比較的安価なメモリカードとして販売することで、ユーザニーズに応じて使い分けることが可能である。
また従来、メモリカードに格納されたデータはファイルシステムにより管理されており、ユーザは格納されたデータをファイルとして容易に取り扱うことができる。従来使用されているファイルシステムとして、FATファイルシステムや、UDFファイルシステム(Universal Disk Format)、NTFSファイルシステム(New Technology File System)等が存在する。これらファイルシステムによりデータが管理されたメモリカードは、同一のファイルシステムを解釈する機器間でファイルを共有することができるため、機器間でデータを授受することが可能となる。
ここで従来のファイルシステムの一例として、FATファイルシステムを説明する。図1は論理アドレス空間を示しており、論理アドレス空間の先頭には、ファイルシステム管理情報100を保持する領域が存在する。このファイルシステム管理情報100は、領域割り当て単位やファイルシステムが管理する領域の大きさ等、ファイルシステムの管理情報が格納される領域である。この情報には、マスターブートレコード・パーティションテーブル102、パーティションブートセクタ103、FAT(104、105)、ルートディレクトリエントリ106と呼ばれるファイルシステムの管理情報が含まれ、ユーザデータ101の領域を管理するために必要な情報が各々格納されている。マスターブートレコード・パーティションテーブル102は、ファイルシステムが管理する論理アドレス空間上の領域を複数のパーティションと呼ばれる領域に分割して管理するための情報が格納される領域である。パーティションブートセクタ103は、1つのパーティション内の管理情報が格納される領域である。FAT(104、105)は、ファイルに含まれるデータの格納位置に関する情報が格納される領域であり、通常、同じ情報を持つ2つのFAT(104、105)がメモリカード内に存在し、一方のFAT(104、105)が破損したとしても他方のFAT(104、105)によりファイルにアクセスできるよう二重化されている。ルートディレクトリエントリ106は、ルートディレクトリ直下に存在するファイル、ディレクトリの情報(ディレクトリエントリ)が格納される部分である。
またFATファイルシステムでは、このファイルシステム管理情報100を保持する領域に引き続いてファイル本体のデータなどユーザデータ101を格納する領域が存在する。ユーザデータ101は、16KBや32KB程度の大きさを持つクラスタと呼ばれる管理単位毎に分割管理されており、各クラスタにはファイルに含まれるデータが格納されている。多くのデータを格納するファイル等は、複数のクラスタに跨ってデータを格納しており、各クラスタ間の繋がりは、FAT(104、105)に格納されたリンク情報により管理されている。また、ルートディレクトリ直下のディレクトリ内に存在するファイル、サブディレクトリの情報(ディレクトリエントリ)は、このユーザデータ101の一部を利用して格納される。
次に図2から図5を用いてFATファイルシステムにおけるファイルデータの書き込み例を説明する。図2は、ディレクトリエントリの構成を示した図である。図3はファイルデータ書き込みの処理手順を示した図である。図4は書き込み前のディレクトリエントリ107、FAT(104、105)、ユーザデータ101の一例を示した図である。図5は書き込み後のディレクトリエントリ107、FAT(104、105)、ユーザデータ101の一例を示した図である。
前述の通り、FATファイルシステムでは、ルートディレクトリエントリ106やユーザデータ101の一部に、図5(a)に示すファイル名やファイルサイズ、ファイル属性等の情報を格納したディレクトリエントリ107が格納される。FATファイルシステムにおけるディレクトエントリ107は図2に示すように、32バイトで構成されており、ファイル名や属性、最終更新日時、開始クラスタ番号、ファイルサイズ等が格納される。
次にファイルデータ書き込み処理手順について図3を用いて説明する。
(S101)対象ファイルのディレクトリエントリ107を読み込む。
(S102)読み込んだディレクトリエントリ107に格納された開始クラスタ番号を取得し、ファイルデータの先頭位置を確認する。
(S103)FAT(104、105)を読み込み、S102で取得したファイルデータの先頭位置から順にFAT(104、105)上でリンクを辿り、書き込み位置のクラスタ番号を取得する。
(S104)データ書き込みに際し、ファイルに新たに空き領域を割り当てる必要があるか判定する。空き領域の割り当てが必要な場合S105の処理に進む。空き領域の割り当てが不要な場合S106の処理に進む。
(S105)FAT(104、105)上で空き領域を検索し、1クラスタの空き領域をファイルの終端に割り当てる。
(S106)現在参照しているクラスタ内に書き込めるだけのデータをユーザデータ101に書き込む。
(S107)全データの書き込みが完了したか判定する。まだデータが残っている場合S104の処理に戻る。全データの書き込みが完了した場合S108の処理に進む。
(S108)ディレクトリエントリ107内に格納されたファイルサイズや最終更新日時等を更新し、ディレクトリエントリ107を上書きする。
(S109)FAT(104、105)を上書きし、処理を完了する。
このファイルデータ書き込み処理により、図4に示された60000バイトのデータを持つFILE1.TXTに10000バイトのデータを更に書き込んだ場合、図5に示されるように70000バイトのデータを持つファイルに変化する。
このようにFATファイルシステムでは、ファイルデータを格納する際に、データ本体と共にディレクトリエントリ107やFAT(104、105)等をカードに格納する必要がある。これらの情報は、更新の度に同一論理アドレスに上書きする必要があることから、1回だけしか記録が行えないOTPメモリに対して上記FATファイルシステムを適用することができないという問題が生じる。
従来、このような問題を解決する方法として、特許文献1にはOTPメモリを用いた記録媒体において、論理アドレスと物理アドレスの変換を行う機能を用い擬似的に上書きを実現する方法が提案されている。この従来の方法では、従来欠陥ブロックの代替方法として使用されている論理アドレスと物理アドレスの変換機能を応用し、欠陥ブロックの代替用の領域として確保されている領域の一部を、データの上書きが発生した時点で新たに割り当て、アドレス変換によりデータ記録位置を交替させることにより、擬似的な上書きを実現している。
次に、図6を用いて複数回書き換え可能な情報記録装置に対する従来のファイルデータ書き込み処理手順を説明する。
(S201)情報記録装置からアクセス装置上のRAMに読み出したFAT(104、105)を元に残容量を算出する。FAT(104、105)では、空きクラスタに対応するFATエントリの値が0に設定されていることから、全FATエントリを検索し、値が0に設定されているエントリの個数をカウントすることで、残容量の算出が行える。また、FAT(104、105)の読み込みはアクセス装置に情報記録装置が装着された直後などに予め実施しておく。
(S202)算出した残容量からファイルデータの記録が可能か判定する。この判定は、残容量と1回のファイルデータ記録で書き込みを行うデータサイズとの大小比較によって実施することができる。例えばファイルデータの記録を1クラスタ単位で実施する場合、S201で取得した残容量が1クラスタ以上であれば記録可能と判定し、それ以外であれば記録不可能と判定する。
(S203)S202において記録可能と判定した場合、1回のファイルデータ記録で書き込みを行うデータサイズ分の空き領域をFAT上で検索し、そのFATエントリをRAM上で0以外の値に設定することにより、FAT上で記録領域を割り当てる。
(S204),(S205)S203で割り当てた記録領域にファイルデータの記録コマンドを送信する。情報記録装置はS204によってアクセス装置から発行された記録コマンドを受信する。
(S206)情報記録装置はNAND型フラッシュメモリなどの記録素子上で記録可能な領域を検索し、ファイルデータを記録する。
(S207)S206でファイルデータを記録した領域の物理アドレスと、S204によってアクセス装置から記録コマンドで指定された論理アドレスとが対応するよう、アドレス管理情報を更新する。
(S208),(S209)記録コマンドに対する応答として、記録が終了した旨の記録終了レスポンスを情報記録装置がアクセス装置に返信し、アクセス装置はこれを受信する。
以下、記録対象のファイルデータが存在する間、S201からS209の処理を、繰り返し実施する。
このように、従来のファイルデータ記録処理手順では、残容量はFAT上で管理されており、アクセス装置がFAT上で空きクラスタ数をカウントすることにより、残容量を把握していた。
特開2006−85859号公報
しかしながら、上記の従来技術には次のような問題点がある。従来の方法では、OTPメモリに対する擬似的な上書きを実現するために、新たに物理メモリ領域を割り当てる必要があり、上書き処理が発生する度に物理メモリ領域が消費されていく。OTPメモリは一回だけしか記録できないため、上記のように消費された領域には二度と記録することができず、上書き処理が発生する度に残り記録可能な容量が減少することになる。この容量の減少は、メモリカード内部のアドレス変換処理により発生するため、メモリカードアクセスするアクセス装置側のファイルシステム制御部はその容量の変化を知ることができず、ファイルシステム制御部が認識している残り記録可能な容量と、実際にメモリカードに記録可能な容量との間に不整合が生じる。そのためアクセス装置はFATを参照するだけでは残り記録可能容量を把握することができない。ファイルシステム制御部が記録可能であると判定してデータを記録するコマンドを送出したにもかかわらず、OTPメモリには空き領域が存在せず、エラーが発生することがあるという問題が生じていた。
また従来のライトワンス記録装置のファイルデータ記録処理手順では、ライトワンスメモリに対して擬似的な上書きを実施するため、残り記録可能な容量が擬似的な上書き処理により変化してしまうという問題点が生じる。
本発明では上記問題点に鑑み、OTPメモリに対する擬似的な上書きを実現する場合において、正確な残り記録可能な空き容量をアクセス装置側のファイルシステム制御部に通知することを特徴とするライトワンス記録装置、コントローラ、アクセス装置、及びライトワンス記録システムを提供することを目的とする。
この課題を解決するために本発明のコントローラは、1回のデータ書き込みが可能なライトワンスメモリに接続され、外部のアクセス装置が前記ライトワンスメモリに対するアクセスを実施する際に指定する論理アドレスが与えられ、該論理アドレスに基づいてデータを記録し、読み出すコントローラであって、前記ライトワンスメモリを固定長の管理単位毎に分割して領域管理し、各管理単位の物理アドレスと論理アドレスとの対応関係を保持すると共に、前記アクセス装置から書き込み要求が発行された際に、データ記録領域として前記ライトワンスメモリの未記録の領域を割り当て、前記データ記録領域を前記アクセス装置が書き込み要求時に指定した論理アドレスに対応付けるアドレス変換処理を行うアドレス変換制御部と、前記ライトワンスメモリ内の未記録領域の大きさを判別し、前記アクセス装置が物理的に記録可能な残り容量として前記アクセス装置に通知する物理空き容量管理部と、前記アクセス装置からのコマンドに基づいてデータを前記ライトワンスメモリに書き込み、及び前記ライトワンスメモリからデータを読み出すメモリアクセス部と、を具備するものである。
ここで前記メモリアクセス部は、前記ライトワンスメモリの物理アドレスの昇順にデータを順次書き込むものであり、前記アドレス変換制御部は、前記物理アドレスと前記論理アドレスの対応関係を保持し、複数の物理アドレスに同一の論理アドレスが対応付けられている場合、物理アドレスの最も大きな領域に格納されているデータをその論理アドレスの領域に格納された有効なデータとしてもよい。
ここで前記物理空き容量管理部は、前記アクセス装置がデータ記録に先立ち発行する残容量取得コマンドを受け付けた際に、前記アドレス管理情報を元に前記ライトワンスメモリ内の未記録領域の大きさを算出し、前記アクセス装置が物理的に記録可能な残容量として前記アクセス装置に通知するようにしてもよい。
ここで前記物理空き容量管理部は、前記アクセス装置が発行した記録コマンドを受け付けて前記メモリアクセス部が前記ライトワンスメモリへのデータ書き込み処理を実施した後、前記アドレス管理情報を元に前記ライトワンスメモリ内の未記録領域の大きさを算出し、前記アクセス装置が物理的に記録可能な残容量として前記アクセス装置に通知するようにしてもよい。
ここで前記物理空き容量管理部は、前記アクセス装置がデータ記録に先立ち発行する変化情報コマンドを受け付けた際に、前記アドレス管理情報と、前記コマンドと共に前記アクセス装置により指定された記録処理のアドレス及びサイズの情報とを元に、前記アクセス装置により指定された記録をする前後の前記ライトワンスメモリに対する残り記録可能な容量の変化に関する情報を把握し、前記アクセス装置に通知するようにしてもよい。
この課題を解決するために本発明のライトワンス記録装置は、1回のデータ書き込みが可能なライトワンスメモリと、前記ライトワンスメモリに接続され、外部のアクセス装置が前記ライトワンスメモリに対するアクセスを実施する際に指定する論理アドレスが与えられ、該論理アドレスに基づいてデータを記録し、読み出すコントローラとを具備するライトワンス記録装置であって、前記コントローラは、前記ライトワンスメモリを固定長の管理単位毎に分割して領域管理し、各管理単位の物理アドレスと論理アドレスとの対応関係を保持すると共に、前記アクセス装置から書き込み要求が発行された際に、データ記録領域として前記ライトワンスメモリの未記録の領域を割り当て、前記データ記録領域を前記アクセス装置が書き込み要求時に指定した論理アドレスに対応付けるアドレス変換処理を行うアドレス変換制御部と、前記ライトワンスメモリ内の未記録領域の大きさを判別し、前記アクセス装置が物理的に記録可能な残り容量として前記アクセス装置に通知する物理空き容量管理部と、前記アクセス装置からのコマンドに基づいてデータを前記ライトワンスメモリに書き込み、及び前記ライトワンスメモリからデータを読み出すメモリアクセス部と、を具備するものである。
ここで前記メモリアクセス部は、前記ライトワンスメモリの物理アドレスの昇順にデータを順次書き込むものであり、前記アドレス変換制御部は、前記物理アドレスと前記論理アドレスの対応関係を保持し、複数の物理アドレスに同一の論理アドレスが対応付けられている場合、物理アドレスの最も大きな領域に格納されているデータをその論理アドレスの領域に格納された有効なデータとしてもよい。
ここで前記物理空き容量管理部は、前記アクセス装置がデータ記録に先立ち発行する残容量取得コマンドを受け付けた際に、前記アドレス管理情報を元に前記ライトワンスメモリ内の未記録領域の大きさを算出し、前記アクセス装置が物理的に記録可能な残容量として前記アクセス装置に通知するようにしてもよい。
ここで前記物理空き容量管理部は、前記アクセス装置が発行した記録コマンドを受け付けて前記メモリアクセス部が前記ライトワンスメモリへのデータ書き込み処理を実施した後、前記アドレス管理情報を元に前記ライトワンスメモリ内の未記録領域の大きさを算出し、前記アクセス装置が物理的に記録可能な残容量として前記アクセス装置に通知するようにしてもよい。
ここで前記物理空き容量管理部は、前記アクセス装置がデータ記録に先立ち発行する残量変化取得コマンドを受け付けた際に、前記アドレス管理情報と、前記コマンドと共に前記アクセス装置により指定された記録処理のアドレス及びサイズの情報とを元に、前記アクセス装置により指定された記録をする前後の前記ライトワンスメモリに対する残り記録可能な容量の変化に関する情報を把握し、前記アクセス装置に通知するようにしてもよい。
この課題を解決するために本発明のアクセス装置は、1回のデータ書き込みが可能なライトワンスメモリを有するライトワンス記録装置にアクセスするアクセス装置であって、前記ライトワンス記録装置内の記録領域に構築されたファイルシステム情報に基づいてデータをファイルとして制御するファイルシステム制御部と、前記ファイルシステム制御部が管理する領域管理情報から得られる前記ライトワンス記録装置に論理的に記録可能な残容量と、前記ライトワンス記録装置から取得した物理的に記録可能な残容量とを元に、前記ライトワンス記録装置に対する記録可否を判定する論物空き容量管理部と、を具備するものである。
ここで前記論物空き容量管理部は、前記ライトワンス記録装置に対するデータ記録に先立ち、残容量取得コマンドを発行し、前記ライトワンス記録装置に物理的に記録可能な残容量を取得するようにしてもよい。
ここで前記論物空き容量管理部は、前記ライトワンス記録装置に対して書き込みコマンドを発行し、そのレスポンスとして、前記ライトワンス記録装置に物理的に記録可能な残容量を取得するようにしてもよい。
ここで前記論物空き容量管理部は、前記ライトワンス記録装置に対するデータ記録に先立ち、記録処理のアドレス及びサイズの情報を指定して残量の変化に関する変化情報コマンドを発行し、前記ライトワンス記録装置に物理的に記録可能な残り容量を取得するようにしてもよい。
この課題を解決するために本発明のライトワンス記録システムは、1回のデータ書き込みが可能なライトワンスメモリを具備したライトワンス記録装置と、前記ライトワンス記録装置にアクセスするアクセス装置からなるライトワンス記録システムであって、前記ライトワンス記録装置は、1回のデータ書き込みが可能なライトワンスメモリと、前記ライトワンスメモリに接続され、外部のアクセス装置が前記ライトワンスメモリに対するアクセスを実施する際に指定する論理アドレスが与えられ、該論理アドレスに基づいてデータを記録し、読み出すコントローラとを具備するものであり、前記コントローラは、前記ライトワンスメモリを固定長の管理単位毎に分割して領域管理し、各管理単位の物理アドレスと論理アドレスとの対応関係を保持すると共に、前記アクセス装置から書き込み要求が発行された際に、データ記録領域として前記ライトワンスメモリの未記録の領域を割り当て、前記データ記録領域を前記アクセス装置が書き込み要求時に指定した論理アドレスに対応付けるアドレス変換処理を行うアドレス変換制御部と、前記ライトワンスメモリ内の未記録領域の大きさを判別し、前記アクセス装置が物理的に記録可能な残り容量として前記アクセス装置に通知する物理空き容量管理部と、前記アクセス装置からのコマンドに基づいてデータを前記ライトワンスメモリに書き込み、及び前記ライトワンスメモリからデータを読み出すメモリアクセス部と、を有し、前記アクセス装置は、前記ライトワンス記録装置内の記録領域に構築されたファイルシステム情報に基づいてデータをファイルとして制御するファイルシステム制御部と、前記ファイルシステム制御部が管理する領域管理情報から得られる前記ライトワンス記録装置に論理的に記録可能な残容量と、前記ライトワンス記録装置から取得した物理的に記録可能な残容量とを元に、前記ライトワンス記録装置に対する記録可否を判定する論物空き容量管理部と、を具備するものである。
本発明によれば、OTPメモリを備えたメモリカードに対する擬似的な上書きを実現する場合において、正確な残り記録可能容量をアクセス装置が把握することができ、メモリカードに空き領域が存在しないにも拘らずファイルデータを記録してしまうなどの問題を回避することが可能となる。
図1はFATファイルシステムの構成を示した説明図である。 図2はディレクトリエントリの構成を示した説明図である。 図3はFATファイルシステムのファイルデータ書き込み処理を示したフローチャートである。 図4はFATファイルシステムのファイルデータ書き込み前の状態を示した説明図である。 図5はFATファイルシステムのファイルデータ書き込み後の状態を示した説明図である。 図6は複数回書き換え可能な情報記録装置に対する従来のファイルデータ書き込み処理を示したフローチャートである。 図7は本発明の実施の形態1におけるアクセス装置、及びライトワンス記録装置を示した説明図である。 図8は本発明の実施の形態1におけるライトワンスメモリの構成を示した説明図である。 図9は本発明の実施の形態1におけるアドレス管理情報の一例を示した説明図である。 図10Aは本発明の実施の形態1におけるライトワンス記録装置に対するファイルデータ書き込み処理を示したフローチャートである。 図10Bは本発明の実施の形態1におけるライトワンス記録装置に対するファイルデータ書き込み処理を示したフローチャートである。 図11は本発明の実施の形態1におけるライトワンスメモリの状態(1)を示した説明図である。 図12は本発明の実施の形態1におけるライトワンスメモリの状態(2)を示した説明図である。 図13は本発明の実施の形態1におけるライトワンスメモリの状態(3)を示した説明図である。 図14は本発明の実施の形態1におけるライトワンスメモリの状態(4)を示した説明図である。 図15Aは本発明の実施の形態1におけるライトワンス記録装置に対するファイルデータ書き込み処理の変形例1を示したフローチャートである。 図15Bは本発明の実施の形態1におけるライトワンス記録装置に対するファイルデータ書き込み処理の変形例1を示したフローチャートである。 図16Aは本発明の実施の形態1におけるライトワンス記録装置に対するファイルデータ書き込み処理の変形例2を示したフローチャートである。 図16Bは本発明の実施の形態1におけるライトワンス記録装置に対するファイルデータ書き込み処理の変形例2を示したフローチャートである。 図17は本発明の実施の形態2におけるアクセス装置、及びライトワンス記録装置を示した説明図である。 図18は本発明の実施の形態2におけるライトワンスメモリの構成を示した説明図である。 図19Aは本発明の実施の形態2におけるライトワンス記録装置に対するファイルデータ書き込み処理を示したフローチャートである。 図19Bは本発明の実施の形態2におけるライトワンス記録装置に対するファイルデータ書き込み処理を示したフローチャートである。
符号の説明
1 アクセス装置
2A,2B ライトワンス記録装置
11,22 CPU
12,23 RAM
13 記録装置インタフェース
14,24 ROM
15 アプリケーション制御部
16 論物空き容量管理部
17 ファイルシステム制御部
18 記録装置アクセス部
21 アクセス装置インタフェース
25,30−1,30−2,・・・30−P ライトワンスメモリ
26 コマンド解釈部
27 物理空き容量管理部
28 アドレス変換制御部
29 メモリアクセス部
100 ファイルシステム管理情報
101 ユーザデータ
102 マスターブートレコード・パーティションテーブル
103 パーティションブートセクタ
104,105 FAT
106 ルートディレクトリエントリ
107 ディレクトリエントリ
以下、本発明のライトワンス記録装置、コントローラ、アクセス装置、及びライトワンス記録システムについて、図面を参照しつつ説明する。
(実施の形態1)
図7は本発明の実施の形態1におけるアクセス装置1、ライトワンス記録装置2Aの構成図である。図7においてアクセス装置1は、CPU11、RAM12、記録装置インタフェース(記録装置IF)13、ROM14を含む。記録装置インタフェース13は、アクセス装置1とライトワンス記録装置2Aとの接続部であり、制御信号及びデータを送受信するインタフェースである。
ROM14にはアクセス装置1を制御するプログラムが格納されており、このプログラムはRAM12を一時記憶領域として使用し、CPU11上で動作する。ROM14は、アプリケーション制御部15、論物空き容量管理部16、ファイルシステム制御部17、記録装置アクセス部18を含んでいる。
アプリケーション制御部15は、データの生成や電源の制御などアクセス装置1全体を制御するものである。
論物空き容量管理部16は、ライトワンス記録装置に対するデータ記録に先立ち、残容量取得コマンドを発行する。そしてファイルシステム制御部17が管理する領域管理情報から得られる論理アドレス空間上での残容量と、ライトワンス記録装置2Aから取得した物理的に記録可能な残容量とを元に、ライトワンス記録装置に対する記録可否を判定し、ファイルシステム制御部17に通知するものである。
ファイルシステム制御部17は、従来のアクセス装置に搭載されているファイルシステム制御部と同様のものであり、FATファイルシステムなどを用いて、データをファイルとして管理するための制御を行うものである。アクセス装置がライトワンスメモリに対してアクセスする際には、論理アドレスを指定する。
記録装置アクセス部18は、ファイルシステム制御部17からデータと共にサイズと論理アドレスを渡され、指定されたサイズのデータをライトワンス記録装置2Aの記録領域内に記録するなど、ライトワンス記録装置2Aに対するコマンドやデータの送受信を制御するものである。
一方、図7においてライトワンス記録装置2Aは、アクセス装置インタフェース(アクセス装置IF)21、CPU22、RAM23、ROM24を有するコントローラと、ライトワンスメモリ(WOM)25とを含む。
アクセス装置インタフェース21は、ライトワンス記録装置2Aとアクセス装置1との接続部であり、記録装置インタフェース13と同様に、制御信号及びデータを送受信するインタフェースである。
ライトワンスメモリ(WOM)25は、各領域に1回だけの書き込みが可能なメモリであり、例えばOTPメモリが用いられる。このメモリに記録するデータには、ファイルシステム管理情報や、ユーザデータ、論理アドレスと物理アドレスの対応関係を示すアドレス管理情報などが含まれる。
ROM24にはライトワンス記録装置2Aを制御するプログラムが格納されており、このプログラムはRAM23を一時記憶領域として使用し、CPU22上で動作する。また、ROM24はコマンド解釈部26、物理空き容量管理部27、アドレス変換制御部28、ライトワンスメモリアクセス部29を含んでいる。
コマンド解釈部26は、アクセス装置1から送信されたコマンドを解釈するものである。このコマンドとしては、記録コマンド、読み出しコマンドに加えて、残容量についてのデータを取得するための残容量取得コマンド、残容量の変化情報を取得するための変化情報コマンドがある。
物理空き容量管理部27は、ライトワンスメモリ25上に存在する記録可能な残容量を算出し管理している。そしてアクセス装置1から残容量取得コマンドが発行された場合、物理空き容量管理部27が管理している残容量を物理的に記録可能な残容量としてアクセス装置1に通知するものである。
アドレス変換制御部28は、ライトワンスメモリを固定長の管理単位毎に分割して領域管理し、アクセス装置1との通信で使用する論理アドレスとライトワンスメモリ25上の各管理単位の物理アドレスとを変換し、その対応関係を保持するものである。又アドレス変換制御部28は、アクセス装置から書き込み要求が発行された際に、データ記録領域としてライトワンスメモリ25の未記録の領域を割り当て、データ記録領域をアクセス装置が書き込み要求時に指定した論理アドレスに対応付けるアドレス変換処理を行う。アドレス変換制御部28は、物理アドレスと論理アドレスの対応関係を保持し、複数の物理アドレスに同一の論理アドレスが対応付けられている場合、物理アドレスの最も大きな領域に格納されているデータをその論理アドレスの領域に格納された有効なデータとする。
メモリアクセス部29は、アドレス変換部28で指示された物理アドレスに基づいてライトワンスメモリ25にアクセスしてデータの書き込み、読み出しを行うものである。データを書き込む際には、メモリアクセス部29は、ライトワンスメモリの物理アドレスの昇順にデータを順次書き込む。
図8は本発明の実施の形態1におけるライトワンスメモリ25の全体構成を示す図である。ライトワンスメモリ25は、ページが複数個連続的に配置された構成となっており、それぞれのページには、物理アドレスとしてページ番号PNが0〜M−1まで割り振られて管理されている。ここではライトワンスメモリ25の各ページを管理単位とする。各ページは、アクセス装置1から読み書き可能なデータ領域と、ライトワンス記録装置2A内の管理用領域として使用される冗長領域とから構成される。
図9は各ページの詳細を示す図であり、2048バイトのデータ領域と、64バイトの冗長領域が1つの記録単位(ページ)として管理されている例を示している。データ領域は512バイトから成るデータ領域1〜4を有している。冗長領域には、そのページの物理アドレスがどの論理アドレスに対応しているかを示す情報を格納する領域や、データ領域のエラー訂正に使用されるECCを格納する領域が存在する。本発明の実施の形態1では、アドレス管理情報としてライトワンスメモリ25の冗長領域に論理アドレスが格納される場合について説明する。
本実施の形態のライトワンス記録装置2Aでは、ライトワンスメモリ25上での残り記録可能な残容量を物理空き容量管理部27により管理すると共に、アクセス装置1がデータの記録を指示した場合にアドレス変換制御部28により新たな物理アドレスを割り当ててデータを記録した上で論理アドレスと物理アドレスの対応関係を更新し、ライトワンスメモリ25に対する擬似的な上書き処理、追記処理を実現する。更に、アクセス装置1から残容量取得コマンドが発行された場合、物理空き容量管理部27が管理している残容量をアクセス装置1に通知する。これにより、アクセス装置1がライトワンス記録装置2Aにデータを記録する場合において、正確な残りの記録可能容量をアクセス装置1が把握することができ、ライトワンス記録装置2Aに空き領域が存在しないにも拘らずファイルデータを記録してしまうなどの問題を回避することが可能となる。
ライトワンスメモリ25の全物理容量は、アクセス装置1が読み書き可能な論理アドレス空間の全容量と同一の大きさとしてライトワンス記録装置2Aで管理しても良い。この場合には新しいライトワンスメモリ25であれば、FATから見た論理空間上の残容量と物理アドレス空間上の残容量は同一となる。また全物理容量からライトワンス記録装置2Aが領域管理などの目的のため独自に使用する領域の大きさを差し引いた容量を論理アドレス空間の全容量として管理しても良い。この場合には新しいライトワンスメモリ25であれば、FATから見た論理アドレス空間上の残容量は物理アドレス空間上の残容量よりも小さくなり、上書きなどを繰り返していくにつれて物理アドレス空間上の残容量が論理アドレス空間上の残容量よりも小さくなる。
次に図10A,図10Bを用いて、実施の形態1におけるライトワンス記録装置2Aに対するファイルデータ書き込み処理手順を説明する。
(S301)アクセス装置1は、ライトワンス記録装置2Aからアクセス装置1上のRAM12に読み出したFAT(104、105)の情報を元に論理空間上での残容量Aを算出する。
(S302)アクセス装置1がライトワンス記録装置2Aに対して残容量を取得するためのコマンド(以下、単に残容量取得コマンドという)を発行する。このコマンドは、ライトワンス記録装置2A内のライトワンスメモリ25に対して記録できる物理空間上での残り容量を取得するためのコマンドである。
(S303),(S304)ライトワンス記録装置2Aは、S302によってアクセス装置1から発行された残容量取得コマンドを受信し、コマンド解釈部26によりコマンドの種別を識別し、物理空き容量管理部27から物理空間上の残容量を取得する。具体的には、ライトワンスメモリ25上で一度も記録が行われていない物理容量の大きさなどを残容量として取得する。
(S305)ライトワンス記録装置2Aは、残容量取得コマンドに対する応答として、残容量取得処理が完了した旨のレスポンスと共にS304で取得した物理空間上での残容量Bの情報をアクセス装置1に返信する。
(S306),(S307)アクセス装置1は、レスポンスを受信すると、S301で算出した残容量Aと、S304で取得した残容量Bの小さい方の値を、実際に記録が可能な残容量Cとして決定する。
(S308)決定した残容量Cを元にファイルデータの記録が可能か判定し、不可であれば処理を終了する。
(S309)S308において記録可能と判定した場合、1回のファイルデータ記録で書き込みを行うデータサイズ分の空き領域をFAT(104、105)上で検索し、そのFATエントリをRAM12上で0以外の値に設定することにより、FAT(104、105)上で記録領域を割り当てる。
(S310)アクセス装置1はS309で割り当てた記録領域にファイルデータを記録するため、ライトワンス記録装置2Aに記録コマンドを送信する。
(S311),(S312)ライトワンス記録装置2Aはアクセス装置1から発行された記録コマンドを受信すると、アドレス変換制御部28はライトワンスメモリ25上で記録可能な領域を検索し、メモリアクセス部29によりファイルデータを記録する。
(S313)S312でファイルデータを記録した領域の物理アドレスと、アクセス装置1からの記録コマンドで指定された論理アドレスとが対応するよう、アドレス管理情報を更新する。
(S314),(S315)アドレス変換制御部28はライトワンス記録装置2Aは記録コマンドに対する応答として、記録が完了した旨のレスポンスをアクセス装置1に返信し、アクセス装置1はこれを受信する。
以下、記録対象のファイルデータが存在する間、S301からS315の処理を、繰り返し実行する。
このように、本発明の実施の形態1におけるライトワンス記録装置2Aにファイルデータを記録する場合には、アクセス装置1がライトワンス記録装置2Aに対して、残容量取得コマンドを発行し、物理的に記録可能な残り容量を取得した上で、FAT(104、105)上の残容量と比較して実際に記録可能な残り容量を把握する。これにより、ライトワンスメモリ25に対して擬似的な上書きを実施する場合において、正確な残容量を把握することができる。
次に、図11から14は夫々データ記録時におけるライトワンスメモリ25とそれに対応する論理アドレス空間LASの保持情報の変化を示す図である。ここで破線で示す論理アドレス空間LASは、この論理アドレスLAとそれに対応するデータを示している。図11はライトワンスメモリ25に何もデータが記録されていない状態を示しており、ライトワンスメモリ25の物理アドレスであるページ番号PN0〜PN(M−1)のデータ領域と、冗長領域のうちの論理アドレスLAを格納する領域は全て初期値になっている。ここではデータ領域の初期値として、0xFFが設定されている場合を想定している。又論理アドレスを格納する領域に0xFFFFFFFFが設定されている場合、そのページがどの論理アドレスにも割り当てられていないことを示している。すなわち、図11の状態では全ての論理アドレスにページが割り当てられていないため、アクセス装置1がライトワンス記録装置2Aから各論理アドレスに格納されたデータを読み出すと、初期値(0xFF)が読み出されることになる。
次にアクセス装置1が論理アドレス0の領域に1ページ分のデータを記録した場合、ライトワンスメモリ25は図12の状態に変化する。本実施の形態1では、ライトワンスメモリ25に対して全て物理アドレスの先頭から昇順に記録されるものとする。図12に示すようにメモリアクセス部29は、データ(Data1)を物理アドレス0のページ(PN0)に記録し、冗長領域にそのページが対応する論理アドレスを0(正確には0x00000000)と設定する。そのため、アクセス装置1がライトワンス記録装置2Aから論理アドレス0に格納されたデータを読み出すと、物理アドレス0のページ(PN0)に格納されたData1が読み出されることになる。
同様にアクセス装置1が論理アドレス1(正確には0x00000001)の領域に1ページ分のデータ(Data2)を記録した場合、図13の状態に変化する。図13では、Data2は物理アドレス1のページ(PN1)に格納されており、そのページが対応する論理アドレスは1と設定されている。そのため、アクセス装置1がライトワンス記録装置2Aから論理アドレス1に格納されたデータを読み出すと、物理アドレス1のページ(PN1)に格納されたData2が読み出されることになる。
次にアクセス装置1が論理アドレス0の領域に1ページ分のデータを記録した場合、図14の状態に変化する。図14ではデータ(Data3)は物理アドレス2のページに格納されており、そのページが対応する論理アドレスは0と設定されている。ここで論理アドレス0の領域には既にデータが記録されていたため、図14の状態ではライトワンスメモリ25内において論理アドレスの情報を格納する領域には、2箇所に“0”の値が存在することになる。ライトワンスメモリ25に対して物理アドレスの先頭から昇順に記録されるので、複数個所に同一の論理アドレスの情報が格納されている場合には、物理アドレスの大きなページに格納されているデータが有効となる。そのため図14の状態では、アクセス装置1がライトワンス記録装置2Aから論理アドレス0に格納されたデータを読み出すと、物理アドレス2のページ(PN2)に格納されたData3が読み出されることになる。このようにして、本発明の実施の形態1ではライトワンスメモリに対する擬似的な上書きを実現する。
また、ライトワンス記録装置2A内の物理空き容量管理部27では、ライトワンスメモリ25内の論理アドレスの情報を格納する領域に初期値0xFFFFFFFFが設定されている場合、そのページが記録可能ページであると判定する。そのため、ライトワンスメモリ25内の残り記録可能な残容量は、論理アドレスの情報を格納する領域に0xFFFFFFFFが設定されているページの数をカウントすることにより算出することができる。特に、ライトワンスメモリ25に対し物理アドレスの先頭から昇順に記録するものとした場合、ライトワンスメモリ25は物理アドレスの先頭から順に記録され、消費される。そのため、論理アドレスの情報を格納する領域に最初に0xFFFFFFFFが設定されている物理アドレスのページ以降は全てが記録可能なページとなる。従って全ページ数から、ここで見出されたページ番号を減算することにより、残容量を容易に算出することができる。
以上のように、本発明の実施の形態1におけるアクセス装置1、及びライトワンス記録装置2Aは、ライトワンス記録装置2Aが管理している残容量に関する情報を、アクセス装置1がライトワンス記録装置2Aから取得し、FAT(104、105)上の残容量と比較して実際に記録可能な残り容量を把握する。これにより、ライトワンスメモリ25に対して擬似的な上書きを実施する場合において、正確な残容量を把握することが可能となる。
(変形例1)
尚、本発明を実施の形態1に基づいて説明してきたが、本発明は実施の形態1に限定されないのは勿論である。本発明の趣旨を逸脱しない範囲で実施変更することができる。本発明の実施の形態1において、残容量取得コマンドによりライトワンス記録装置2Aが管理している残容量に関する情報をアクセス装置1が取得する例について説明したが、その他の方法を用いても良い。
図15A,図15Bはこの変形例1を示すフローチャートである。図15Aにおいて、ステップS401〜413は図8に示すS301〜313と同様である。S414ではS412,S413でデータを記録し、アドレス管理情報を更新した後、物理空き容量管理部27が保持している残容量Dを取得し、残容量Dの情報と共に記録終了のレスポンスを送出する。アクセス装置はこの情報を受信し、更に記憶する必要がなければ処理を終える。記録するデータが残っている場合には、S417においてFATから論理アドレス空間上の残容量Eを算出する。そしてS409と同様に容量DとEとからより少ない容量を残容量Fとし、この容量を元に記録可否を判定する。記録ができなければ処理を終え、記録が可能な場合にはS420においてFAT上で記録領域を割当て、S421においてファイルデータの記録コマンドを送信する。ライトワンス記録装置2Aはこのコマンドを受信すると、データを記録し、アドレス管理情報を更新する(S422〜S424)。そして新たに残容量Dを取得し(S425)、残容量Dの情報と共に記録終了のレスポンスを送信する(S426)。アクセス装置1はこのレスポンスを受信する(S427)。そして必要に応じてS417に戻って同様の処理を繰り返す。
このように変形例1では、記録コマンドに対し記録を終了した旨のレスポンスに加えて残容量の情報をアクセス装置1に通知している。これにより、次回のファイルデータ記録時に残容量取得コマンドを発行して残容量を取得する必要がなくなり、高速にファイルデータを記録することが可能となる。但し、初回のファイルデータ記録時においては、図15Aに示すように、残容量取得コマンドを発行して残容量を取得する必要がある。
この場合は物理空き容量管理部27は、アクセス装置が発行した書き込みコマンドを受け付けてメモリアクセス部29がライトワンスメモリへのデータ書き込み処理を実施した後、アドレス管理情報を元にライトワンスメモリ内の未記録領域の大きさを算出し、アクセス装置が物理的に記録可能な残容量としてアクセス装置に通知する機能を有している。
(変形例2)
次に本実施の形態の変形例2について説明する。この実施の形態では、アクセス装置1は記録コマンドを実際に発行する前に今から記録しようとしている領域のアドレスとサイズの情報をライトワンス記録装置2Aに通知し、その記録により残容量がどのように変化するかに関する情報を取得するようにしたものである。図16A,図16Bのフローチャートにおいて、S501,S502ではFAT(104、105)から算出した残容量を元に記録可否判定を行う。この点は図6に示した従来の処理手順と同様である。しかしながら、その後の処理が従来の処理手順とは異なる。ファイルシステムでは、図3で示したようにファイルデータの記録時には、ファイルデータの記録と共に、ディレクトリエントリ107やFAT(104、105)の記録が必要となる。そのため、S503では、ファイルシステムの一連の処理で発生する記録処理のアドレス、サイズを決定する。即ち、具体的にはファイルデータの記録と共に、それに伴い発生するディレクトリエントリ107やFAT(104、105)の記録に関する記録処理のアドレス、サイズを決定する。そして、S504において、このアドレス、サイズを引数として残量の変化を示す情報を取得するためのコマンド(以下、変化情報コマンドという)をライトワンス記録装置2Aに発行する。この場合、論物空き容量管理部16は、ライトワンス記録装置に対するデータ記録に先立ち、記録処理のアドレス及びサイズの情報を指定して残量の変化に関する変化情報コマンドを発行し、ライトワンス記録装置に物理的に記録可能な残り容量を取得する機能を達成している。
ライトワンス記録装置2Aは、S505においてこのコマンドを受け取ると、指定されたアドレス、サイズの記録コマンドが発生した場合に生じる残量の変化を示す情報を算出する(S506)。この情報は例えば、現在の残容量と、指定されたアドレス、サイズの記録コマンドにより減少する残容量との組などがある。ライトワンス記録装置はこの変化情報を含めたレスポンスをアクセス装置に送出する(S507)。アクセス装置1はS508においてこのレスポンスを受信する。アクセス装置1は変化情報コマンドを先に決定したファイルシステムの一連の処理で発生する全記録処理分に対して繰り返し実施することにより、ファイルシステムの一連の処理で残量がどのように変化するかを予め把握することが可能となる。
次いで図16Bに示すS509ではこの残量変化情報を元に記録可否を判定する。記録が不可であれば処理を終了し、記録可能であればS510においてFAT上で記録を割当て、S511において記録コマンドを送出する。ライトワンス記録装置2AはS512においてこのコマンドを受信すると、S513,S514に進んでデータを記録し、アドレス管理情報を更新する。そして記録終了レスポンスをアクセス装置に返信する(S515)。アクセス装置1はこのレスポンスを受信する。そしてS511〜515の処理は一連の必要なデータを終えるまで繰り返す。
この方法を用いることにより、ファイルデータ、ディレクトリエントリ107、FAT(104、105)が全て記録されて始めてファイルシステムの整合性が保たれる場合に、ファイルデータ、ディレクトリエントリ107まで記録した段階で残容量がなくなり、FAT(104、105)が記録できず、ファイルシステムの整合性が保てなくなることを防ぐことができる。
物理空き容量管理部27は、アクセス装置がデータ記録に先立ち発行する変化情報コマンドを受け付けた際に、アドレス管理情報と、コマンドと共に前記アクセス装置により指定された記録処理のアドレス及びサイズの情報とを元に、アクセス装置により指定された記録処理を実施する前後のライトワンスメモリに対する残り記録可能な容量の変化に関する情報を把握し、アクセス装置に通知する。
また、図16A,図16Bのフローでは変化情報コマンドを必要回数分繰り返す例について説明したが、1回のコマンドで複数回数分の記録コマンドに関する残量の変化に関する情報を取得するようにしても良い。
また、本発明の実施の形態1で説明したアドレス管理情報の構成は一例であり、その他の構成を取っても良い。ここでは管理単位として2kBの容量を持つページ単位としているが、異なったサイズを管理単位とすることができる。例えば、論理アドレスを格納する領域として1ページ当たり4バイトの領域を使用する例について記載したが、1ページ当たり16バイトの領域を使用してもよい。こうすれば図8に示すセクタ単位(512バイト単位)でアドレス変換を行うことができ、セクタ単位を管理単位とすることができる。また逆に複数ページをまとめて管理単位とし、この単位でアドレス変換を行うようにしてもよい。また、アドレス管理情報をライトワンスメモリ25の冗長領域に分散して格納する例について説明したが、1箇所にまとめてアドレス管理情報を格納してもよい。
(実施の形態2)
図17は本発明の実施の形態2におけるアクセス装置、ライトワンス記録装置の構成図である。実施の形態では、ライトワンス記録装置2BはP(Pは自然数)個のライトワンスメモリを有している。各ライトワンスメモリ30−1,30−2,・・・30−Pの中には、図7と同様にファイルシステム管理情報やユーザデータが格納される論理アドレス空間が存在し、ライトワンスメモリに対する擬似的な上書きを実現するためにアドレス管理情報も格納されている。
図18は、本発明の実施の形態2におけるライトワンスメモリの構成を示した図である。各ライトワンスメモリには識別子としてメモリ番号1,2,・・・Pが割り当てられている。各ライトワンスメモリの内部の領域は図8と同様にデータ領域と冗長領域からなるページが複数存在する。従ってメモリ番号とページ番号を組み合わせることで、一意な物理アドレスが決定されることになる。また、各ライトワンスメモリは特定の論理アドレスに割り当てられ、管理されている。例えば、メモリ番号1のライトワンスメモリ30−1は、論理アドレス0から(N−1)の論理アドレス空間に割り当てられており、メモリ番号2のライトワンスメモリ30−2は、論理アドレスNから(2N−1)の論理アドレス空間に割り当てられている。このように各ライトワンスメモリを特定の論理アドレス空間に割り当てることで、アドレス変換対象のアドレス空間が小規模になり、アドレス変換処理のオーバーヘッドを低く抑えることができるというメリットが生じる。
次に図19A,図19Bを用いて、本発明の実施の形態2におけるライトワンス記録装置2Bに対するファイルデータ書き込み処理手順を説明する。
(S601)ライトワンス記録装置2Bからアクセス装置1上のRAM12に読み出したFAT(104、105)の情報を元に残容量Aを算出する。このとき、各ライトワンスメモリに対して割り当てられている論理アドレス空間を特定し、ライトワンスメモリ1枚分に対応する論理アドレス空間に含まれる領域のみを算出対象とする。
(S602)アクセス装置1がライトワンス記録装置2Bに対して残容量取得コマンドを発行する。このコマンドでは引数としてS601で特定した論理アドレスに対応するメモリ番号iを指定し、そのライトワンスメモリ30−iに対する残容量の情報を要求する。
(S603),(S604)S602によってアクセス装置1から発行された残容量取得コマンドを受信したライトワンス記録装置2Bは、コマンド解釈部26によりコマンドの種別を識別し、物理空き容量管理部27から残容量Bを取得する。
(S605)ライトワンス記録装置2Bは、残容量取得コマンドに対する応答として、残容量取得処理が完了した旨のレスポンスと共に、特定したライトワンスメモリに含まれる残容量Bの情報をアクセス装置1に返信する。
(S606),(S607)アクセス装置1は、このレスポンスを受信し、S601で算出した残容量Aと、S604で取得した残容量Bの小さい方の値を、該当メモリ番号iのライトワンスメモリに実際に記録が可能な残容量Ciとして決定する。S601からS607までの処理を、ライトワンス記録装置2A内に存在する全ライトワンスメモリに対して繰り返し実施する。
(S608)その後アクセス装置1は各ライトワンスメモリに対するCi(i=1〜P)の総和からライトワンス記録装置2Aの残容量Dを算出する。
(S609)S608で決定した残容量Dを元にファイルデータの記録が可能かどうかを判定する。記録が不可であれば処理を終了する。
(S610)S609において記録可能と判定した場合、1回のファイルデータ記録で書き込みを行うデータサイズ分の空き領域をFAT(104、105)上で検索し、そのFATエントリをRAM12上で0以外の値に設定することにより、FAT(104、105)上で記録領域を割り当てる。このとき、各ライトワンスメモリで残容量が異なるため、残容量が存在するライトワンスメモリに対応する論理アドレス空間に限定してFAT(104、105)上で空き領域を検索する。具体的には、S607の処理において残容量Ciが0となったライトワンスメモリのメモリ番号iを記憶しておき、対応する論理アドレス空間をFAT(104、105)上の空き領域検索の対象から外すことで実現できる。
(S611)S610で割り当てた記録領域にファイルデータを記録するためライトワンス記録装置2Bに記録コマンドを発行する。
(S612),(S613)ライトワンス記録装置2Bは、アクセス装置1から発行された記録コマンドを受信し、ライトワンスメモリ上で記録可能な領域を検索し、ファイルデータを記録する。
(S614)S613でファイルデータを記録した領域の物理アドレスと、アクセス装置1から指定された論理アドレスとが対応するよう、アドレス管理情報を更新する。
(S615),(S616)記録コマンドに対する応答として、記録が終了した旨の記録終了レスポンスをライトワンス記録装置2Aがアクセス装置1に返信する。アクセス装置はこのレスポンスを受信し、必要に応じてS601に戻って同様の処理を繰り返す。
このように記録対象のファイルデータが存在する間、S601からS616の処理を、繰り返し実施する。
このように、本発明の実施の形態2におけるファイルデータ記録では、アクセス装置1がライトワンス記録装置2Bに対して、複数のライトワンスメモリ毎に残容量取得コマンドを発行し、物理的に記録可能な残り容量を取得した上で、FAT上の残容量と比較して実際に記録可能な残容量を把握する。これにより、ライトワンス記録装置2Bが複数のライトワンスメモリを有する場合においても、正確な残容量を把握することが可能となる。
尚、本発明を実施の形態2に基づいて説明してきたが、本発明はここでの説明に限定されないのは勿論である。本発明の趣旨を逸脱しない範囲で実施変更することができる。本発明の実施の形態1において記載した各種の変更を、実施の形態2に適用しても良い。
また、図19AのフローのS607の処理において、FAT(104、105)が存在する論理アドレス空間を含むいずれかのライトワンスメモリの残容量Cを常に0と設定しても良い。このようにすることで、特定のライトワンスメモリをFATの記録用とすることができ、このライトワンスメモリへはファイルデータが書き込まれなくなる。その結果、このライトワンスメモリはFATの擬似的な上書き処理にのみ空き領域を消費していくことになり、FATを上書きする回数を延ばすことが可能となる。
また、1枚のライトワンスメモリ内を複数領域に分割して管理し、各々の領域と特定の論理アドレス空間に割り当てて管理する場合に本発明を適用しても良い。
本発明に関わるアクセス装置、及びライトワンス記録装置は、ライトワンス記録装置が管理している残容量に関する情報を、アクセス装置がライトワンス記録装置から取得し、FAT上の残容量と比較して実際に記録可能な残り容量を把握する。これにより、ライトワンスメモリに対して擬似的な上書きを実施する場合において、正確な残容量を把握することができ、ライトワンス記録装置に空き領域が存在しないにも拘らずファイルデータを記録してしまうなどの問題を回避することが可能となる。
このようなライトワンス記録装置は、音楽や静止画、動画などのデジタルコンテンツを格納する記録媒体として利用することができ、またアクセス装置は、ライトワンス記録装置にアクセスするPCアプリケーション、オーディオレコーダ、DVDレコーダ、HDDレコーダ、ムービー、デジタルスチルカメラ、携帯電話端末等として利用することができる。

Claims (4)

  1. 1回のデータ書き込みが可能なライトワンスメモリを有するライトワンス記録装置にアクセスするアクセス装置であって、
    前記ライトワンス記録装置の記録領域内のファイルシステム情報に基づいてデータをファイルとして制御するファイルシステム制御部と、
    前記ライトワンス記録装置の物理的な残容量を取得するためのコマンドを前記ライトワンス記録装置に対して発行し、前記コマンドに対するレスポンスにおいて取得した前記物理的な残容量、および、前記ファイルシステム情報から得られる残容量の両方に基づいて、前記ライトワンス記録装置の記録可能容量を決定する論物空き容量管理部と、を具備するアクセス装置。
  2. 1回のデータ書き込みが可能なライトワンスメモリを有するライトワンス記録装置と、前記ライトワンス記録装置にアクセスするアクセス装置と、を具備するライトワンス記録システムであって、
    前記ライトワンス記録装置は、
    1回のデータ書き込みが可能なライトワンスメモリと、
    物理的に記録可能な大きさを、物理的な残容量として前記アクセス装置に通知するコントローラと、を具備し、
    記アクセス装置は、
    前記ライトワンス記録装置の記録領域内のファイルシステム情報に基づいてデータをファイルとして制御するファイルシステム制御部と、
    前記ライトワンス記録装置の物理的な残容量を取得するためのコマンドを前記ライトワンス記録装置に対して発行し、前記コマンドに対するレスポンスにおいて取得した前記物理的な残容量、および、前記ファイルシステム情報から得られる残容量の両方に基づいて、前記ライトワンス記録装置の記録可能容量を決定する論物空き容量管理部と、を具備するライトワンス記録システム。
  3. 前記論物空き容量管理部は、前記ファイルシステム情報から得られる前記残容量と、前記物理的な残容量と、を比較し、前記残容量および前記物理的な残容量のうち、より小さい一方を選択することにより前記記録可能容量を決定する請求項1に記載のアクセス装置。
  4. 前記論物空き容量管理部は、前記ファイルシステム情報から得られる前記残容量と、前記物理的な残容量と、を比較し、前記残容量および前記物理的な残容量のうち、より小さい一方を選択することにより前記記録可能容量を決定する請求項2に記載のライトワンス記録システム。
JP2008549293A 2006-12-15 2007-12-10 アクセス装置、および、ライトワンス記録システム Active JP5129156B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008549293A JP5129156B2 (ja) 2006-12-15 2007-12-10 アクセス装置、および、ライトワンス記録システム

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP2006337925 2006-12-15
JP2006337925 2006-12-15
PCT/JP2007/073765 WO2008072590A1 (ja) 2006-12-15 2007-12-10 ライトワンス記録装置
JP2008549293A JP5129156B2 (ja) 2006-12-15 2007-12-10 アクセス装置、および、ライトワンス記録システム

Publications (2)

Publication Number Publication Date
JPWO2008072590A1 JPWO2008072590A1 (ja) 2010-03-25
JP5129156B2 true JP5129156B2 (ja) 2013-01-23

Family

ID=39511610

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008549293A Active JP5129156B2 (ja) 2006-12-15 2007-12-10 アクセス装置、および、ライトワンス記録システム

Country Status (5)

Country Link
US (1) US8589617B2 (ja)
EP (1) EP2096546B1 (ja)
JP (1) JP5129156B2 (ja)
CN (1) CN101542447B (ja)
WO (1) WO2008072590A1 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9015444B2 (en) 2008-06-09 2015-04-21 Panasonic Intellectual Property Management Co., Ltd. Access apparatus and available storage space calculation method
US8090692B2 (en) * 2008-09-10 2012-01-03 Infinite Memory Ltd Method for using an OTP storage device
JP5962918B2 (ja) * 2012-03-09 2016-08-03 パナソニックIpマネジメント株式会社 記憶装置、ホスト装置、記憶システム
US9201784B2 (en) * 2012-09-07 2015-12-01 Kabushiki Kaisha Toshiba Semiconductor storage device and method for controlling nonvolatile semiconductor memory
US10528529B1 (en) * 2014-12-23 2020-01-07 EMC IP Holding Company LLC Multi-core journal system and method
CN108292264B (zh) * 2015-12-02 2023-01-03 瑞典爱立信有限公司 用于管理存储器页的可用性的方法和存储器可用性管理模块
US10228856B2 (en) * 2016-01-28 2019-03-12 Hewlett Packard Enterprise Development Lp Storage space management in a thin provisioned virtual environment
JP6877134B2 (ja) * 2016-12-15 2021-05-26 株式会社東芝 電子装置、通信装置及びプログラム
WO2019111254A1 (en) * 2017-12-05 2019-06-13 Defender Cyber Technologies Ltd. Secure content routing using one-time pads
KR102545229B1 (ko) * 2018-05-04 2023-06-21 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작 방법
CN109273041B (zh) * 2018-08-29 2020-09-01 珠海市一微半导体有限公司 一种otp的写入方法
CN109326307B (zh) * 2018-09-07 2020-12-11 江苏菲利斯通信息科技有限公司 光盘流式刻录方法
EP3909196B1 (en) 2019-01-08 2023-12-20 Defender Cyber Technologies Ltd. One-time pads encryption hub
CN111240884B (zh) * 2019-12-25 2024-06-07 上海亮牛半导体科技有限公司 Efuse的纠错方法
US11656773B2 (en) * 2020-04-28 2023-05-23 EMC IP Holding Company LLC Automatic management of file system capacity using predictive analytics for a storage system
CN113568560A (zh) * 2020-04-29 2021-10-29 瑞昱半导体股份有限公司 存取一次性可编程记忆体的方法及相关的电路
US11740789B2 (en) 2020-05-18 2023-08-29 EMC IP Holding Company LLC Automated storage capacity provisioning using machine learning techniques

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997017652A1 (fr) * 1995-11-10 1997-05-15 Sony Corporation Appareil et procede de traitement d'informations
JP2002050131A (ja) * 2000-08-03 2002-02-15 Hitachi Ltd 追記型記録媒体の記録制御方法
JP2004038961A (ja) * 2002-06-28 2004-02-05 Hewlett-Packard Development Co Lp 追記型メモリ記憶装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040160799A1 (en) * 2003-02-17 2004-08-19 Park Yong Cheol Write-once optical disc, and method and apparatus for allocating spare area on write-once optical disc
CN1641785A (zh) * 2004-01-06 2005-07-20 联发科技股份有限公司 计算光盘片内一轨道的数据容量的方法
JPWO2005122577A1 (ja) 2004-06-14 2008-04-10 松下電器産業株式会社 コンテンツ利用方法およびコンテンツ記録装置
JP4379276B2 (ja) 2004-08-16 2009-12-09 ソニー株式会社 記録方法、記録装置、再生方法、再生装置、記録媒体
US7752412B2 (en) * 2006-09-29 2010-07-06 Sandisk Corporation Methods of managing file allocation table information
JP2008139908A (ja) 2006-11-29 2008-06-19 Matsushita Electric Ind Co Ltd メモリ制御装置、コンピュータシステム及びデータ再生記録装置
US7680991B2 (en) * 2007-05-31 2010-03-16 International Business Machines Corporation Correlated analysis of wasted space and capacity efficiency in complex storage infrastructures

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1997017652A1 (fr) * 1995-11-10 1997-05-15 Sony Corporation Appareil et procede de traitement d'informations
JP2002050131A (ja) * 2000-08-03 2002-02-15 Hitachi Ltd 追記型記録媒体の記録制御方法
JP2004038961A (ja) * 2002-06-28 2004-02-05 Hewlett-Packard Development Co Lp 追記型メモリ記憶装置

Also Published As

Publication number Publication date
US8589617B2 (en) 2013-11-19
EP2096546B1 (en) 2018-08-08
CN101542447B (zh) 2013-06-05
WO2008072590A1 (ja) 2008-06-19
JPWO2008072590A1 (ja) 2010-03-25
EP2096546A4 (en) 2011-09-21
EP2096546A1 (en) 2009-09-02
CN101542447A (zh) 2009-09-23
US20110022807A1 (en) 2011-01-27

Similar Documents

Publication Publication Date Title
JP5129156B2 (ja) アクセス装置、および、ライトワンス記録システム
US8161225B2 (en) Semiconductor memory card, access device and method
US7395384B2 (en) Method and apparatus for maintaining data on non-volatile memory systems
KR100951107B1 (ko) 최적의 성능을 위한 파일 관리 방법
JP4807683B2 (ja) データ記憶装置
JP5577238B2 (ja) アクセス装置、情報記録装置、コントローラ、及び情報記録システム
US8185705B2 (en) Information recording medium, information recording medium accessing apparatus and accessing method
WO2009096180A1 (ja) メモリコントローラ、不揮発性記憶装置、及び、不揮発性記憶システム
JPWO2005103903A1 (ja) 不揮発性記憶システム
JP5481493B2 (ja) アクセス装置、情報記録装置、コントローラ、リアルタイム情報記録システム、アクセス方法、および、プログラム
US20080288710A1 (en) Semiconductor Memory Device and Its Control Method
GB2383859A (en) Memory controller managing a file allocation table for a memory card
JP2003308240A (ja) データ記憶装置
WO2007034706A1 (ja) 情報記録媒体アクセス装置、及びデータ記録方法
JP2007193883A (ja) データ記録装置及び方法、及びデータ再生装置及び方法、並びにデータ記録再生装置及び方法
JP4551328B2 (ja) 情報記録媒体におけるデータ領域管理方法、及びデータ領域管理方法を用いた情報処理装置
JP4401863B2 (ja) ストレージシステム
JP4130808B2 (ja) フォーマット方法
JPWO2008146473A1 (ja) フォーマット装置
JP2009205590A (ja) アクセスモジュール、情報記録モジュール、コントローラ、及び情報記録システム
JP2009205591A (ja) アクセスモジュール、情報記録モジュール、及び情報記録システム
WO2018186455A1 (ja) 不揮発性メモリにおける空き容量管理方法、及び不揮発性メモリを含む情報記録装置にデータを記録するアクセス装置、情報記録装置および情報記録システム
JP6805501B2 (ja) ストレージ装置
JP2006178633A (ja) 情報処理装置、情報処理方法、プログラム
JP5161989B2 (ja) 情報記録装置、情報記録方法及び情報記録用プログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100922

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100922

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20120207

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20120210

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120703

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120830

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121023

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121101

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151109

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250