JP2001188701A - 半導体メモリカードについてのアクセス装置、コンピュータ読取可能な記録媒体、初期化方法、及び半導体メモリカード - Google Patents

半導体メモリカードについてのアクセス装置、コンピュータ読取可能な記録媒体、初期化方法、及び半導体メモリカード

Info

Publication number
JP2001188701A
JP2001188701A JP2000321738A JP2000321738A JP2001188701A JP 2001188701 A JP2001188701 A JP 2001188701A JP 2000321738 A JP2000321738 A JP 2000321738A JP 2000321738 A JP2000321738 A JP 2000321738A JP 2001188701 A JP2001188701 A JP 2001188701A
Authority
JP
Japan
Prior art keywords
area
sectors
sector
file
plurality
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.)
Granted
Application number
JP2000321738A
Other languages
English (en)
Other versions
JP3954790B2 (ja
Inventor
Teruto Hirota
Takuji Maeda
卓治 前田
照人 廣田
Original Assignee
Matsushita Electric Ind 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
Priority to JP11-299636 priority Critical
Priority to JP29963699 priority
Application filed by Matsushita Electric Ind Co Ltd, 松下電器産業株式会社 filed Critical Matsushita Electric Ind Co Ltd
Priority to JP2000321738A priority patent/JP3954790B2/ja
Publication of JP2001188701A publication Critical patent/JP2001188701A/ja
Application granted granted Critical
Publication of JP3954790B2 publication Critical patent/JP3954790B2/ja
Application status is Active legal-status Critical
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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, networked record carriers
    • G06F3/0601Dedicated interfaces to storage systems
    • G06F3/0628Dedicated interfaces to storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/1425Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
    • G06F12/1433Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block for a module or a part of a module
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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, networked record carriers
    • G06F3/0601Dedicated interfaces to storage systems
    • G06F3/0602Dedicated interfaces to storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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, networked record carriers
    • G06F3/0601Dedicated interfaces to storage systems
    • G06F3/0602Dedicated interfaces to storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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, networked record carriers
    • G06F3/0601Dedicated interfaces to storage systems
    • G06F3/0628Dedicated interfaces to storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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, networked record carriers
    • G06F3/0601Dedicated interfaces to storage systems
    • G06F3/0628Dedicated interfaces to storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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, networked record carriers
    • G06F3/0601Dedicated interfaces to storage systems
    • G06F3/0628Dedicated interfaces to storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • GPHYSICS
    • G06COMPUTING; CALCULATING; 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, networked record carriers
    • G06F3/0601Dedicated interfaces to storage systems
    • G06F3/0668Dedicated interfaces to 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]
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/202Non-volatile memory
    • G06F2212/2022Flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7202Allocation control and policies
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/00086Circuits for prevention of unauthorised reproduction or copying, e.g. piracy

Abstract

(57)【要約】 【課題】消去可能ブロック書換のための処理時間の低減
化を図り、また不揮発メモリについての高寿命化を実現
するようなデータ格納フォーマットを半導体メモリカー
ド上に形成するアクセス装置を提供する。 【解決手段】 半導体メモリカードのボリューム領域に
おいて先頭に位置する所定数の消去可能ブロックはボリ
ューム管理情報を含んいる。後続するユーザ領域のクラ
スタが消去可能ブロックの境界に配置されないように、
マスタブートレコード及びパーティションテーブルを含
むセクタからパーティションブートセクタまでのデータ
サイズが決定されている。後続するユーザ領域におい
て、クラスタ同士の境界と、消去可能ブロックの境界と
が一致するので、1つのクラスタの書き換えにあたっ
て、2つの消去可能ブロックを消去するような、無駄は
起こり得ない。

Description

【発明の詳細な説明】

【0001】

【発明の属する技術部分野】本発明は、EEPROM等の不揮
発メモリを内蔵した半導体メモリカードをアクセスする
アクセス装置、半導体メモリカードについての初期化プ
ログラムを記録したコンピュータ読取可能な記録媒体、
初期化方法、及び半導体メモリカードに関し、特に、不
揮発メモリに対するデータ書換効率を向上させる改良に
関する。

【0002】

【従来の技術】小型・軽量であることを長所とする半導
体メモリカードは、様々な技術分野において、記録媒体
としての確固たる地位を築きつつある。半導体メモリカ
ードは、EEPROMと呼ばれる不揮発メモリを内蔵してお
り、半導体メモリカードと接続した機器は、この不揮発
メモリに対するアクセスを行うことにより、半導体メモ
リカードを記録媒体として利用する。EEPROMにおいて白
紙の状態にあるセクタに関しては、磁気ディスク、光デ
ィスク同様、データを直接書き込むことができる。一
方、既にデータが書かれているセクタに対しては、一旦
書込先に記録されているデータを消去して、白紙の状態
に戻してからデータ書き込みを行わねばならない。多く
の半導体メモリカードに内蔵されているNAND型と呼ばれ
るEEPROMにあっては、セクタを白紙の状態に戻すという
作業を32個のセクタに対して一括して行う必要があるの
で(この不揮発メモリにおいて32個のセクタ群は消去可
能ブロックと呼ばれる。)、半導体メモリカードは、消
去可能ブロックをアクセス単位とした領域管理を実現す
るべく、専用の制御回路を内蔵している。そして消去可
能ブロックの状態管理、及び、消去可能ブロックに対す
るデータの読み出し、データ書き込みをこの制御回路に
委ねている。

【0003】以上のことから、半導体メモリカードは、
磁気ディスク、光ディスク型の記録媒体とは全く異なる
独特のハードウェア構造(物理層)を有している。その反
面、図35に示すような物理層・ファイルシステム層・応
用層からなるレイヤモデルにて、データ管理を行ってい
る点は、磁気ディスク、光ディスクと共通しているとい
える。図36は、物理層のレイアウトを詳細に示す図で
ある。図36において、物理層におけるボリューム領域
は、消去可能ブロックを複数配置してなる。各消去可能
ブロックは、32個のセクタからなり、16KByteのデータ
長を有している。図37に、ファイルシステム層のレイ
アウトを詳細に示す。図37に示すファイルシステム層
のレイアウトは、俗にFAT型ファイルシステムと呼ばれ
るものである。FAT型ファイルシステムにおいて、ボリ
ューム領域における領域管理は、クラスタとよばれる単
位を用いて行われる。ボリューム領域の先頭にはボリュ
ーム管理情報が配置され、ボリューム管理情報の直後に
はユーザデータの記録のための領域であるユーザ領域が
配置される。ボリューム管理情報は、マスタブートレコ
ード、パーティションテーブル、パーティションブート
セクタ、二重化ファイルアロケーションテーブル(FA
T)、ルートディレクトリエントリからなる。このうち、
二重化ファイルアロケーションテーブルは、ボリューム
領域に含まれる複数のクラスタに対応づけられ、クラス
タと、クラスタとの間のリンク関係を示す。こうしたフ
ァイルシステム層を設けることにより、応用層では、デ
ィレクトリ、ファイルからなる階層構造にて、データが
格納されることなる。レイヤモデルの導入により、アク
セス装置は、物理層の違いを意識せずに、磁気ディス
ク、光ディスク型の記録媒体をアクセスするのと同じ手
順を経て、半導体メモリカードをアクセスすることがで
きる。

【0004】

【発明が解決しようとする課題】ところで、ファイルシ
ステムのボリューム領域に、データを格納するにあたっ
て、ボリューム領域のデータサイズをユーザが任意に決
める機会が多々ある。ユーザの要望に応じてボリューム
領域のサイズを変化させた場合、ボリューム領域に含ま
れるクラスタ数が増減する。クラスタ数が増減すれば、
それらクラスタに対応するエントリーからなるFATのサ
イズも増減し、このFATを含むボリューム管理情報のサ
イズも、増減することなる。こうしてボリューム管理情
報のサイズが増減すると、ボリューム管理情報に後続す
るユーザ領域の先頭アドレスも、変動することなる。ユ
ーザ領域の先頭アドレスは、ボリューム領域のサイズに
応じて変動するものなので、無論このユーザ領域に含ま
れる各クラスタの先頭アドレスもユーザ領域のサイズに
応じて変動する。

【0005】クラスタの先頭アドレスが、ユーザ領域の
サイズに応じて変動するとなると、2つの消去可能ブロ
ックの境界をまたぐように、クラスタが配置されたり、
ボリューム管理情報の終端部分と、ユーザ領域の先頭に
位置するクラスタとが同じ消去可能ブロックに配置され
ることも有り得る。ボリューム管理情報の終端部分と、
ユーザ領域の先頭に位置するクラスタとが同じ消去可能
ブロックに配置された状態のボリューム領域のレイアウ
トを図38に示す。図38のようにクラスタが配置され
れば、このクラスタに格納されたデータを書き換えたい
場合、このクラスタが配置されている2つの消去可能ブ
ロックを読み出して、2つの消去可能ブロックを白紙の
状態に戻さねばならない。一方不揮発メモリは、絶縁層
に浮遊ゲートを埋設してなる記憶素子から構成されてお
り、かかる構造の記憶素子は、数万回の消去を限界とし
ているので、1つのクラスタの書き換えのために、2つの
消去可能ブロックを消去するような現象が多く発生すれ
ば、不揮発メモリ自体の寿命を著しく縮める結果とな
る。

【0006】仮に32個のセクタを1つのクラスタとして
管理する場合、クラスタに対するデータの書き込みは、
書込先が消去済みならば32×200μ秒(200μ秒は、セク
タ1つ当たりの書き込みに要する時間)にて完遂するが、
書込先の消去を先に行ってからデータ書き込みを行う場
合は、これに約2m秒の消去時間が追加される。クラスタ
が2つの消去可能ブロックの境界を跨いでいるため、2つ
のブロックの消去が必要となると、書込先の消去に、4m
秒が費やされることなり、データ書き込み時間の長期化
が顕著化してしまう。

【0007】本発明の目的は、消去可能ブロックに対す
る書き換えのための処理時間の低減化を図り、また不揮
発メモリについての高寿命化を実現するようなデータ格
納フォーマットを半導体メモリカード上に形成するアク
セス装置を提供することである。

【0008】

【課題を解決するための手段】SD(Secure Digital)メモ
リカードと呼ばれるタイプの半導体メモリカードの実用
にあたっては、上述したような、処理時間の低減化及び
不揮発メモリについての高寿命化といった問題の解決が
強く迫られる。その理由は以下の通りである。SDメモリ
カードには、データの暗号化に用いられた暗号鍵や、著
作物の再生の際の課金に用いられる課金情報等、ユーザ
への公開が望ましくない情報を格納しておくための領域
(プロテクト領域という)が一般ユーザが使用できる領
域とは別に、ボリューム領域上に設けられる。非公開が
要求されるデータの量は、アプリケーションプログラム
の種別毎に異なるので、プロテクト領域のサイズは、ア
プリケーションプログラムの種別に応じて変化させねば
ならない。プロテクト領域のサイズが変化するとなる
と、ボリューム領域のレイアウトは、アプリケーション
プログラムの種別に応じて変化することなる。アプリケ
ーションプログラムの種別に応じて、ボリューム領域の
レイアウトを変化させるとなると、クラスタが、消去可
能ブロックの境界を跨ぐようなレイアウトが多く発生し
うるので、上述した目的の達成は強く望まれる。

【0009】こうした目的達成のため、半導体メモリカ
ードについてのアクセス装置は、複数のセクタからな
り、それら複数のセクタのうち連続する2のi乗個のセク
タ(iは、0以上の整数)がデータ消去の最小単位であるブ
ロックとしてグループ化されているメモリ領域を有する
半導体メモリカードにおいて、複数のセクタのうち2のj
乗個のセクタ(jは、0以上の整数)に格納されるデータ群
をクラスタとして管理し、1つ以上のクラスタをファイ
ルとして管理することにより、ファイルアクセスを実現
する装置であり、前記メモリ領域において管理されるべ
きクラスタ数に基づいて、同一ファイルとして管理され
る前記クラスタ間のリンク関係をファイル毎に示すファ
イルアロケーションテーブルのデータサイズを算出し、
ファイルアロケーションテーブルを含むボリューム管理
情報のデータサイズを算出する算出手段と、算出された
ボリューム管理情報のデータサイズを上回り、尚且つ、
m×2のj乗個のセクタからなる第1領域を(mは、1以上の
整数)、ボリューム管理情報の記録のために確保し、第
1領域に後続するセクタからなる第2領域を、ユーザデ
ータの記録のために確保する確保手段と、確保された第
1領域にボリューム管理情報を記録し、第2領域にユー
ザデータを記録して、これらをクラスタとして管理する
記録手段とを備えることを特徴としている。

【0010】

【発明の実施の形態】以降、図面を参照しながら、半導
体メモリカード、半導体メモリカード及びアクセス装置
からなるシステムについての実施形態について説明す
る。図1は、半導体メモリカードの外観形状を示す図で
あり、図2(a)、図2(b)は、アクセス装置の外観
形状を示す図である。図3(a)は、半導体メモリカー
ド100及びアクセス装置の内部構成を示す図である。

【0011】半導体メモリカード100は、図1に示す
ような外観形状を有しており、長さ32.0 mm、幅24.0 m
m、厚さ2.1 mmといった大きさ(切手サイズの大きさ)
のカード型記録媒体である。ユーザはこの半導体メモリ
カード100を指先で把持することができる。半導体メ
モリカード100には、アクセス装置との接続のための
9本のコネクタが設けられており、側面には、記憶内容
の上書きを許可するか禁止するかを操作者が設定するこ
とができるプロテクトスイッチ101が設けられてい
る。半導体メモリカード100は、図3(a)の下半分
に示すように、NAND型EEPROMである不揮発メモリ1と、
アクセス装置から発せられるコマンドに従って、不揮発
メモリに対するデータ書き込み、不揮発メモリからのデ
ータ読み出し、データ消去を行うアクセス制御部2と、
不揮発メモリから読み出されたデータを書き換える際、
データの一時格納に用いられるワークメモリ3とを含
む。

【0012】次にアクセス装置について説明する。アク
セス装置は、図2(a)に示すような民生用音響機器、
図2(b)に示すようなパソコン等の情報機器であり、
図3(a)の上半分に示すように、半導体メモリカード
100を接続するためのカードコネクタ4と、半導体メ
モリカード100をアクセスするための各種ソフトウェ
アを格納した二次記憶装置5と、アクセス装置における
統合制御を行うCPU6と、半導体メモリカード100を
アクセスする際、FATやルートディレクトリエントリの
一時的な格納に用いられる一次記憶装置7とからなる。
図3(b)は、アクセス装置にて用いられるソフトウェ
アのレイヤモデルを示す図である。本図に示すように、
アクセス装置のソフトウェアは、映像再生、音声再生等
のアクセス装置固有の処理を行うアプリケーションプロ
グラム8と、ファイルの読み出し、書き込み、ファイル
の削除、ファイルの書き換えといったファイルシステム
に対する操作を、アプリケーションプログラム8からの
指示に従って実行するファイルシステム操作部9と、半
導体メモリカード100に対して読出コマンド、書込コ
マンドを発行することにより、ファイルシステムに対す
る操作を実践するデバイスドライバ10とからなる。

【0013】続いて、不揮発メモリ1におけるデータ格
納フォーマットの一例について説明する。不揮発メモリ
1は、図4に示したようなフォーマットで、データ格納
を行う。図4において、不揮発メモリの全体はボリュー
ム領域と称される。ボリューム領域は、複数のクラスタ
により管理される領域であり、パーティション管理領域
と、パーティション(パーティションは、レギュラー領
域と呼ばれる)とからなる。図4の右段に示すように、
パーティションは、システム領域と、ユーザ領域とに区
分けされる。

【0014】ユーザ領域の先頭アドレスは、システム領
域の直後であるが、システム領域における二重化FATの
サイズは、ユーザ領域のサイズに応じて増減し得るの
で、これに応じてユーザ領域の先頭アドレスが変動する
点は、従来技術で述べた通りである。ボリューム領域に
おける各セクタは、ボリューム領域の先頭を基準とした
物理アドレスにて指示される。

【0015】以降、ボリューム領域に含まれる各領域に
ついて説明してゆく。図5は、ボリューム領域に含まれ
る『パーティション管理領域』、『システム領域』、
『ユーザ領域』の構成を示す図である。『パーティショ
ン管理領域』は、マスタブートレコード&パーティショ
ンテーブルセクタと、Reserved情報1/2,2/2とからな
る。マスタブートレコード&パーティションテーブルセ
クタの構成を詳細に表したものが図6(a)である。図
6(a)では、"<"型の矢印を用いて、マスタブートレ
コード&パーティションテーブルセクタの内容を階層的
に表現している。矢印ky1に示すように、マスタブート
レコード&パーティションテーブルセクタは、マスタブ
ートレコード(Master Boot Record)、4つのパーティシ
ョンテーブル(Partition Table1,2,3,4)、Signature Wo
rdからなる。

【0016】『マスタブートレコード』は、自身に後続
する領域が"物理的な一つの媒体(物理媒体)"であるこ
とをアクセス装置に認識させるための標識である。本図
では、ボリューム領域にマスタブートレコードが1つだ
け存在するので、ボリューム領域において1つの物理媒
体がアクセス装置により認識され得るが、仮にボリュー
ム領域にマスタブートレコードを2つ配せば、2つの物理
媒体がアクセス装置により認識される。

【0017】『パーティションテーブル』は、パーティ
ションに関する情報が記述されたテーブルであり、矢印
ky2に示すように、本半導体メモリカード100を起動
ドライブとして用いる際、0x80が設定される"Boot Indi
cator"と、パーティションの開始ヘッダを特定する"Sta
rting Head"と、パーティションの開始セクタ・開始シリ
ンダを特定する"Starting Sector/Starting Cylinder"
と、パーティションのサイズが32680Byteより少ない場
合、01が設定され、65536Byteより少ない場合、04が設
定されることにより、ファイルシステムのタイプを示
す"SystemID"と、"Ending Head"と、パーティションの
終了セクタ・終了シリンダを特定する"EndingSector/End
ing Cylinder"と、このパーティションの開始セクタま
での相対セクタ数を示す"Relative Sector"と、パーテ
ィションのセクタ数が設定される"Total Sector"とから
なる。

【0018】続いて半導体メモリカード100のパーテ
ィションについて説明する。パーティションは、システ
ム領域及びユーザ領域からなるが、ユーザ領域と、シス
テム領域の順に、これらの領域の説明を行う。ユーザ領
域の説明にあたっては、図7(c)を引用する。『ユー
ザ領域』は、クラスタを最小単位にして、ファイルが格
納される領域である。図7(c)における破線の引き出
し線ff2は、ユーザ領域に含まれる複数のクラスタ002,0
03,004,005・・・・・を示す。図中の番号002,003,004,005,0
06,007,008・・・・・・・は、各クラスタを識別するために付
与された3桁の16進数表記のクラスタ番号を示す。デー
タ領域に対するアクセスは、クラスタを最小単位として
行われるので、データ領域の内部位置は、これらのクラ
スタ番号を用いて、指示される。

【0019】システム領域は、パーティションブートセ
クタ、二重化FAT、ルートディレクトリエントリからな
る。パーティションブートセクタの説明にあたっては図
6(b)を、二重化FATの説明にあたっては図7(a)
を、RDEの説明にあたっては図7(b)を引用するもの
として、これらの領域について順次説明する。パーティ
ションブートセクタは、図6(b)に示すような情報項
目を有するExtend FDC記述子が設定される。図6(b)
によれば、Extend FDC記述子は、JumpCommand,Creating
System Identifier,一セクタのサイズ(Sector Size),
一クラスタ当たりのセクタ数(Sector per Cluster),Res
erved Sector Count,二重化FATに含まれるFAT数(Numbr
of FATs),ルートディレクトリエントリのデータ長(Numb
er of Root-directory Entries),Total Sectors,Medium
Identifier,FAT1つ当たりのセクタ数(Sector Per FA
T),Sector Per Track,Number of Sides,Number of Hidd
en Sectors,システム領域及びユーザ領域における総セ
クタ数(Total Sectors),Physical Disk Number,Extende
d Boot Record Signature,Volume ID Number,ボリュー
ムラベル(Volume Label),File System Type,Signature
Word等の項目が設定される。

【0020】『二重化ファイルアロケーションテーブル
(FAT)』は、ISO/IEC 9293に準拠した2つのFATからな
る。各FATは、各クラスタに対応づけられた複数のFATエ
ントリーからなる。各FATエントリーは、対応するクラ
スタが使用中であるか、未使用であるかを示すものであ
り、対応するクラスタが未使用であれば、そのファイル
エントリーには、"0"が設定され、対応するクラスタが
使用中であれば、クラスタ番号が設定される。このクラ
スタ番号は、対応するクラスタが読み出された場合、次
にどのクラスタを読み出せばよいかといったクラスタ間
のリンク関係を示す。図7(a)の破線の引き出し線ff
1は、FATに含まれる複数のFATエントリー002,003,004,0
05・・を示す。このFATエントリーに付与された数値『00
2,003,004,005・・』は、各FATエントリーがどのクラスタ
に対応づけられているか、つまり、各FATエントリーが
対応づけられているクラスタのクラスタ番号を示す。

【0021】『ルートディレクトリエントリ』は、ルー
トディレクトリに存在する複数ファイルについてのファ
イルエントリーを複数含む。各ファイルエントリーは、
存在するファイルの「ファイル名」と、そのファイルの
「ファイル拡張子」と、ファイルの先頭部が格納されて
いる「ファイル最初のクラスタ番号」と、そのファイル
についての「ファイル属性」と、ファイルが記録された
「記録時刻」と、ファイルの「記録日付」と、ファイル
のデータ長である「ファイル長」とを含む。

【0022】ここで、ルートディレクトリにAOB001.SA1
というファイルを格納する場合、AOB001.SA1がどのよう
に格納されるか、即ち、ファイル格納方式の一例を図8
を参照しながら説明する。上述したようにデータ領域の
最小アクセス単位はクラスタであるので、AOB001.SA1
は、クラスタサイズを最小単位にしてデータ領域に格納
せねばならない。AOB001.SA1は、先ずクラスタサイズに
分割されて、各クラスタに書き込まれる。図8は、AOB0
01.SA1をクラスタサイズに合わせて5つに分割し、各分
割部分を、クラスタ003,004,005,00A,00Cに格納する状
態を想定した図である。

【0023】AOB001.SA1が分割格納されると、ディレク
トリエントリー及びFATは、図9のように設定されねば
ならない。図9は、AOB001.SA1が複数のクラスタに記録
されている場合のディレクトリエントリー及びFATにつ
いての設定例を示す図である。本図においてAOB001.SA1
の先頭部分がクラスタ003に記録されている場合、ルー
トディレクトリエントリーにおける『最初のクラスタ番
号』には、その先頭部分が格納されているクラスタにつ
いてのクラスタ番号003が記載される。以降、AOB001.SA
1の後続する部分は、クラスタ004、クラスタ005に格納
されていることがわかる。AOB001.SA1の先頭部分を格納
しているクラスタ003には、FATエントリー003(004)が対
応しているが、このFATエントリーは、AOBファイルの後
続する部分を格納しているクラスタ004を示すものであ
る。またこれに後続している部分を格納しているクラス
タ004,005には、FATエントリー004(005),FATエントリー
005(00A)が対応しているが、これのFATエントリーは、A
OBファイルの次の後続する部分を格納しているクラスタ
005,00Aを示すものである。

【0024】これらFATエントリーに記載されたクラス
タ番号を矢印fk1,fk2,fk3,fk4,fk5・・・・・に示すように順
次読みとってゆけば、AOB001.SA1の分割部分を全て読み
取ることができる。以上の説明により、半導体メモリカ
ード100のユーザ領域は、クラスタを最小単位として
アクセスされ、また各クラスタにはそれぞれFATエント
リーが対応づけられていることがわかる。尚、AOBファ
イルの末尾の部分を格納したクラスタ(図9の一例で
は、クラスタ00C)に対応づけられているFATエントリー
には、そのクラスタがファイルの最終部分を格納してい
ることを示すクラスタ番号『FFF』が記述される。

【0025】これまでの説明は、不揮発メモリにおける
ファイルシステムの構成を一通り解説にしたに過ぎな
い。ここからの説明が、本実施形態において特に主眼と
するところである。クラスタの境界と、消去可能ブロッ
クの境界とをどのように整合させたか、システム領域−
ユーザ領域間の境界を、消去可能ブロックの境界とどの
ように整合させたかの説明を行う。境界整合を実現する
ため、本実施形態では、2つの改良を行っている。1つ目
の改良は、クラスタのサイズを、消去可能ブロックのサ
イズの1/n(nは、1,2,4,8,16,32)に設定するという改良
である。図10(a)は、消去可能ブロックと、クラス
タとの関係を示す図であり、クラスタサイズは、消去可
能ブロックのサイズである16KByteの1/nの大きさ(32セ
クタの1/n)に定める。図10(b)は、n=1と定められ
た場合のクラスタを示す図であり、図10(c)は、n=
16と定められた場合のクラスタを示す図である。

【0026】2つ目の改良は、ボリューム領域におい
て、クラスタのm倍のサイズの領域を、ボリューム管理
情報の記録に割り当てるという改良である。図11
(a)は、s個の消去可能ブロックに含まれるs個のクラ
スタのうち、m個のクラスタをボリューム管理情報の記
録に割り当てる場合を想定した図である。m個のクラス
タをボリューム管理情報の記録に割り当てれば、s個の
消去可能ブロックの内部領域のうち、m/nの部分が、ボ
リューム管理情報に占有されることなり、残る(s・n-m)/
nの内部領域が、ユーザ領域に割り当てられることな
る。

【0027】ボリューム管理情報を、クラスタのm倍の
サイズに設定することにより、s個の消去可能ブロック
には、ボリューム管理情報と、s・n-m個のクラスタとが
詰め込まれ、クラスタが2つの消去可能ブロックの境界
を跨ぐことはない。図11(b)は、n=1と設定された
場合、ボリューム管理情報の記録にどれだけのクラスタ
が割り当てられるかを示す図であり、図11(c)は、
n=16と設定された場合、ボリューム管理情報の記録にど
れだけのクラスタを割り当てるかを示す図である。これ
らの図からも明らかなように、ボリューム管理情報の設
定により複数のクラスタが、複数の消去可能ブロックに
詰め込まれているので、何れのクラスタも消去可能ブロ
ックの境界を跨ぐことはない。先の図5では、かかるサ
イズ調整がなされたボリューム領域のレイアウトをより
詳細に示している。図5において、パーティション管理
領域のサイズはNOM、パーティションブートセクタのサ
イズはRSC、二重化FATのサイズは、Size1×2、ルートデ
ィレクトリエントリのサイズはRDE、総セクタサイズをT
S、クラスタに含まれるセクタの個数はSCと表現してい
る。

【0028】この図5において、二重化FATに含まれるF
ATのサイズSize1は、TSに依存したものとなる。具体的
にいうなら、以下の数式11により算出される値となる。 {数式11} FAT12の場合:Size1=(((((TS-(RSC+RDE))/SC)+2)×12/8)
+511)/512 FAT16の場合:Size1=(((((TS-(RSC+RDE))/SC)+2)×16/8)
+511)/512 ここでFAT12とは、FATエントリー1つ当たりに12ビット
を割り当てることをいい、FAT16とは、FATエントリー1
つ当たりに16ビットを割り当てることをいう。

【0029】数式11において、(TS-(RSC+RDE))は、ユー
ザ領域の記録に必要なクラスタ数であり、これにインデ
ィケータ数2を加算して、FATエントリーのバイト長(12
又は16)を乗じ、且つ8で割ることにより、FATのバイト
長が算出される。この算出結果に、オフセット値である
511Byteを足し合わせ、セクタのバイト長512で割れば、
1つ当たりのFATを格納するのに必要なセクタ数を算出す
ることができる。尚、このオフセット値511は、例え
ば、FATのデータ長が1Byteと算出された場合、セクタ数
が0個と算出されるのを防ぐ目的で設けられている。FAT
のデータ長が1Byteと算出された場合、オフセット無し
でFATのデータ長を512で割れば、FATのセクタ数が0に算
出されてしまう。FATのデータ長が1Byteと算出された場
合でも、1セクタ以上のSize1を導き出すため、数式11で
は、オフセット値511を加算している。

【0030】図5において特に注意すべきは、パーティ
ション管理領域のサイズであるNOMである。NOMは、パー
ティション管理領域と、システム領域とが、互いに異な
るクラスタに属するように、"SC+α"という値に設定さ
れる。NOMの設定により、パーティション管理領域と、
システム領域を異なるクラスタに配置する理由は、シス
テム領域が配置されたクラスタの書き換えに失敗した
際、その失敗がパーティション管理領域に波及するのを
避けるためである。つまり書き換え失敗にて、パーティ
ション管理領域におけるマスタブートレコード、パーテ
ィションテーブルが破壊されれば、この半導体メモリカ
ード100は、正規の記録媒体として、アクセス装置に
より認識されなくなる。そうした最悪ケースの発生を避
けるため、NOMをSC+αに設定している。

【0031】SC+αのαをどのように設定するかである
が、αは、以下に示すように、RSCと、Size1×2と、RD
Eとの和がSCの整数倍になるように、(RSC+RDE+Size1×
2)をSCで割り、その余りをSCから引くことにより求めら
れる。これらのことを勘案すると、NOMは、数式12に示
すように算出される。 {数式12} NOM=(SC-(RSC+RDE+Size1×2)%SC)+SC こうしてαに定めると、パーティション管理領域及びユ
ーザ領域は、複数の消去可能ブロックに丁度収まる形と
なり、システム領域と、ユーザ領域との境界が、消去可
能ブロックの境界と一致することなる。こうした境界一
致がはかれるので、後続する全てのクラスタの境界は、
消去可能ブロックの境界に一致することになる。

【0032】ここでSC=32セクタ(16KByte)、RDEを32セ
クタ、RSCを1セクタとし、TSを65600とした場合、NOM、
Size1がどのように算出されるかを説明する。二重化フ
ァイルアロケーションテーブルのタイプがFAT12である
とすると、数式11によりSize1は、Size1=(((((TS-(RSC+
RDE))/SC)+2)×12/8)+511)/512=(((((65600-(1+32))/S
C)+2)×12/8)+511)/512=7セクタと算出される。

【0033】また数式12により、NOMは、NOM=(SC-(RSC+
RDE+Size1×2)%SC)+SC=(32-(1+32+7×2)%32)+32=47セク
タと算出される。算出された大きさで、パーティション
管理領域と、システム領域と、クラスタを作図して得ら
れたのが図12である。PSN000からPSN031までのセクタ
には、マスタブートレコード&パーティションテーブル
セクタとReserved情報1/2とが配置され、PSN032からPSN
063までのセクタには、Reserved情報2/2とパーティショ
ンブートセクタと二重化FATとが配置される。またPSN06
4からPSN095までのセクタは、ルートディレクトリエン
トリが配置される。ボリューム領域におけるセクタは、
32個単位で1つの消去可能ブロックを形成するので、マ
スタブートレコード、パーティションテーブル、Reserv
ed情報1/2は、1番目の消去可能ブロック001に配置さ
れ、Reserved情報2/2、パーティションブートセクタ、
二重化FATは2番目の消去可能ブロック002に、ルートデ
ィレクトリエントリは、3番目の消去可能ブロック003に
配置される。ルートディレクトリエントリは、同じサイ
ズの消去可能ブロックに格納されるので、ユーザ領域
と、システム領域の境界は、消去可能ブロックの境界と
整合することなる。

【0034】以上のボリューム領域のレイアウトは、ア
クセス装置におけるファイルシステム操作部9が、不揮
発メモリの初期化処理を行うことにより実現される。こ
の初期化処理の手順を示したのが図13のフローチャー
トであり、以降、図13のフローチャートを参照しなが
ら、ボリューム領域の初期化手順について説明する。ス
テップS1では、フォーマットすべき領域の大きさ(T
S)や半導体メモリカード100の全体容量、アクセス
装置にて動作するオペレーションシステム、ユーザによ
る指定に応じて、クラスタサイズを決定する。

【0035】クラスタサイズが決定されれば、ステップ
S2において、クラスタサイズSCと、フォーマットサイ
ズTSとから、FAT12、FAT16の何れかを使用するかを一意
に決める。FAT12、FAT16の何れかが決定されればステッ
プS3において、ルートディレクトリエントリのRDEを
決定する(本実施形態では、RDEを32セクタに固定す
る。)。その後、ファイルシステム操作部9はステップ
S4において、パーティションブートセクタのRSCを決
定し(尚本実施形態では、RSCを1セクタに固定す
る。)、ステップS5では、RDE及びRSCが算出されれ
ば、数式11にてFATのデータ長を計算する。ステップS
6において、ファイルシステム操作部9は、マスタブー
トレコードとパーティションブートセクタとが別のクラ
スタになるように、数式12にてNOMを計算する。

【0036】以上のステップS5〜ステップS6は、数
式11、数式12に示した計算と何等変わるところはない。
以降のステップS7、ステップS8、ステップS9がこ
のフローチャートで初めてあかされる処理である。ステ
ップS7において、下記の数式13にて、ユーザ領域のク
ラスタ数CNを算出する。 {数式13} CN=(TS-(RSC+RDE+Size1×2+NOM))/SC ステップS8において、下記の数式14にて、FATのデー
タ長を算出する。

【0037】{数式14} FAT12の場合:Size2=(((CN+2)×12/8)+511)/512 FAT16の場合:Size2=(((CN+2)×16/8)+511)/512 ステップS9では、ステップS5にて算出されたSize1
と、ステップS8にて算出されたSize2との比較を行
い、同一値であれば計算を終了する。異なっていれば、
ステップS10においてSize2をSize1に代入して、ステ
ップS6に移行し、NOMを計算しなおす。代入によりSiz
e1は別の値になるので、ステップS6に移行することに
より、異なるNOMが算出される。そうして算出されたNOM
に基づいて、ステップS8においてSize2が再度算出さ
れ、Size1とSize2との一致が判定されれば、ステップS
9がYesとなり処理を終える。

【0038】以上の手順を経て、算出されたNOMは、パ
ーティションテーブルにおいてパーティションの開始セ
クタまでの相対セクタ数を示す"Relative Sector"に設
定される、またTSが、パーティションテーブルにおい
て"Total Sector"に設定される。SCは、パーティション
ブートセクタにおいて一クラスタ当たりのセクタ数を示
す『Sector per Cluster』に設定される。またセクタ数
を表すRDEは、1セクタ当たりのバイト長(512Byte)を乗
じ、更に32Byteで除されることにより、エントリー数に
変換され、パーティションブートセクタにおける『Numb
er of Root-directory Entries』に設定される。Size1
は、パーティションブートセクタにおいてFAT1つ当たり
のセクタ数を示す『Sector Per FAT』に設定される。ア
クセス装置は、パーティションテーブル及びパーティシ
ョンブートセクタに設定されたこれらの値を参照して、
二重化FAT、ルートディレクトリエントリ、ユーザ領域
の所在を特定する。

【0039】以上で、図13のフローチャートの説明を
終える。続いてTSを65568セクタと決定した場合、パー
ティション管理領域と、システム領域のサイズがどのよ
うに算出されるかの計算例を以下に示す。TSが65568で
あるので、ステップS1では、クラスタサイズは32セク
タと決定される。クラスタサイズが32セクタと決定され
たので、ステップS2において、クラスタサイズSCと、
フォーマットサイズTSとから、FAT12を使用すると決定
する。本実施形態では、RDEは32セクタに固定されてお
り、RSCは1セクタに固定されているので、ステップS
3、ステップS4での計算は行われない。ステップS5
では、数式11、数式12にてFATのデータ長を計算する。
ここでFATはFAT12なので、Size1=(((((TS-(RSC+RDE))/S
C)+2)×12/8)+511)/512=(((((65568-(1+32))/SC)+2)×1
2/8)+511)/512=7セクタと算出される。

【0040】Size1が算出されれば、ステップS6にお
いて、マスタブートレコードとパーティションブートセ
クタとが別のクラスタになるように、数式12にてNOMを
計算する。 NOM=(SC-(RSC+RDE+Size1×2)%SC)+SC=(32-(1+32+7×2)%
32)+32=49セクタと算出される。

【0041】NOMが算出されれば、ステップS7におい
て、数式13にてレギュラー領域におけるクラスタ数の計
算を行う。 CN=(TS-(RSC+RDE+Size1×2+NOM))/SC CN=(65568-(1+32+7×2+49))/32=2046セクタと算出され
る。

【0042】ステップS8において、数式14にて、FAT
のデータ長を算出する。 FAT12の場合:Size2=(((CN+2)×12/8)+511)/512 Size2=(((2046+2)×12/8)+511)/512 Size2=6 ステップS9では、ステップS5にて算出されたSize1
と、ステップS8にて算出されたSize2との比較を行
う。ここで、Size1は7セクタと、Size2は6セクタと算出
され、これらは同一値ではないので、ステップS10に
移行して、Size2をSize1に代入して再度ステップS6に
移行し、NOMを計算しなおす。

【0043】NOM=(SC-(RSC+RDE+Size1×2)%SC)+SC=(32-
(1+32+6×2)%32)+32=51セクタと算出される。NOMが算出
されれば、ステップS7において、レギュラー領域にお
けるクラスタ数の計算を行う。 CN=(TS-(RSC+RDE+Size1×2+NOM))/SC CN=(65568-(1+32+6×2+49))/32=2046セクタと算出され
る。

【0044】ステップS8において、FATのデータ長を
算出する。 FAT12の場合:Size2=(((CN+2)×12/8)+511)/512 Size2=(((2046+2)×12/8)+511)/512 Size2=6 こうした計算の後、ステップS9においてSize1とSize2
との比較がなされるが、Size1、Size2は一致しているの
で、本フローチャートの処理を終了する。

【0045】以上のように本実施形態によれば、パーテ
ィション領域のサイズと、システム領域のサイズとが消
去可能ブロックの整数倍の大きさになるように、NOMを
算出するので、1つのクラスタが2つの消去可能ブロック
に跨って格納されることはない。クラスタの境界と、消
去可能ブロックの境界との整合、ボリューム管理情報の
境界と、消去可能ブロックの境界との整合が図られるの
で、1つのクラスタを書き換えたり、上書きしたりする
際、消去すべき消去可能ブロックの数は1つで済み、消
去可能ブロックの消去回数を低減させることができる。
消去回数の低減により、半導体メモリカード100にデ
ータを書き込む際の時間を短縮することができ、また、
不揮発メモリ自体の長寿命化を実現することができる。

【0046】(第2実施形態)第2実施形態は、一般ユ
ーザがアクセスすることができる領域(ユーザデータ領
域)と、一般ユーザによるアクセスに制限を課し、デー
タをセキュアに格納することができる領域(プロテクト
領域)とにボリューム領域を区分することを提案する。

【0047】第2実施形態に係るアクセス装置及び半導
体メモリカード100の構成を図14に示す。図14に
示す内部構成が、図3(a)に示した内部構成と異なる
のは、不揮発メモリ1内にプロテクト領域が設けられ、
半導体メモリカード100及びアクセス装置にセキュア
処理部11、セキュア処理部12が加えられている点で
ある。

【0048】プロテクト領域に対する読み書きをセキュ
アに行うために設けられたセキュア処理部11について
説明する。セキュア処理部11の構成は、図15に示す
通りであり、システム領域13、Hidden領域14、AKE
処理部15、Ks復号化部16、Ks暗号化部17からな
る。システム領域13は、Media Key Block(MKB)と、Me
dia-IDとを格納した読出専用領域であり、ここに格納さ
れたMKB、Media-IDを書き換えることはできない。半導
体メモリカード100がアクセス装置と接続され、MKB
とMedia-IDとがアクセス装置により読み出された場合、
これらを読み出したアクセス装置が、MKB、Media-ID
と、自身が所持しているデバイス鍵Kdとを用いて所定の
演算を正しく行えば、アクセス装置は正しい暗号鍵Kmu
を所持することができる。

【0049】Hidden領域14は、正解値となる暗号鍵Km
u、即ち、アクセス装置が正常なデバイス鍵Kdを用いて
正常な演算を行なった場合、得られるべき暗号鍵Kmuを
格納している領域である。Authentication and Key Ex
cange(AKE)処理部15は、アクセス装置と半導体メモリ
カード100との間でチャレンジ・レスポンス型の相互
認証を行って、相手側の正当性を認証し、相手側が不当
であれば処理を中断するが、相手側が正当であればアク
セス装置と半導体メモリカード100との間で暗号鍵
(セッション鍵Ks)を共有する。アクセス装置による認
証は3つのフェーズ(アクセス装置側で乱数を発生さ
せ、得られた乱数をKmuを用いて暗号化して、チャレン
ジ値Aとして半導体メモリカード100に送信するChall
enge1フェーズ、半導体メモリカード100側でこのチ
ャレンジ値Aを半導体メモリカード100内のKmuを用い
て復号化し、得られた値をレスポンス値Bとしてアクセ
ス装置に送信するResponse1フェーズ、アクセス装置側
で保持していたチャレンジ値Aをアクセス装置側のKmuで
復号化して、半導体メモリカード100から送信された
レスポンス値Bと比較するVerify1フェーズ)からなる。

【0050】半導体メモリカード100による認証は3
つのフェーズ(半導体メモリカード100で乱数を発生
させ、得られた乱数をKmuを用いて暗号化して、この値
をチャレンジ値Cとしてアクセス装置に送信するChallen
ge2フェーズ、アクセス装置側においてこのチャレンジ
値Cをアクセス装置内のKmuを用いて復号化し、得られた
値をレスポンス値Dとして半導体メモリカード100に
送信するResponse2フェーズ、半導体メモリカード10
0側で保持していたチャレンジ値Cを半導体メモリカー
ド100側のKmuで復号化して、アクセス装置から送信
されたレスポンス値Dと比較するVerify2フェーズ)から
なる。

【0051】この際、アクセス装置が不正な暗号鍵Kmu
を用いて相互認証を行えば、フェーズVerify1,2におい
て、チャレンジ値Aとレスポンス値Bとの不一致、チャレ
ンジ値Cとレスポンス値Dとの不一致が判定され、相互認
証が中断することなる。逆に相手側の正当性が認証され
れば、AKE処理部15は、上述したチャレンジ値Aと、チ
ャレンジ値Cとの排他的論理和をとり、これをKmuにて暗
号化することにより、セッション鍵Ksを得る。

【0052】Ks復号化部16は、半導体メモリカード1
00と接続されたアクセス装置から、プロテクト領域に
書き込むべきデータであって、暗号化されたものが出力
された場合、それらデータがセッション鍵Ksを用いて暗
号化されているものとして、セッション鍵Ksを用いるこ
とにより復号を行う。そうして復号により得られたデー
タが本来のデータであるとして、プロテクト領域に書き
込む。

【0053】Ks暗号化部17は、半導体メモリカード1
00と接続されたアクセス装置から、データを読み出す
旨の読出コマンドが出力されると、セッション鍵Ksを用
いてプロテクト領域に格納されているデータを暗号化し
た後に、そのコマンドを発行したアクセス装置に出力す
る。プロテクト領域に対するデータ読み書きには、Ks復
号化部16による復号化と、Ks暗号化部17による暗号
化とが伴うので、プロテクト領域は、半導体メモリカー
ド100と接続しているアクセス装置がAKEプロセスを
正しく行った場合のみ、正規にアクセスされることな
る。

【0054】続いて、第2実施形態に係るボリューム領
域のフォーマットについて説明する。プロテクト領域が
設けられたボリューム領域を詳細に示したのが、図16
である。図16において、ボリューム領域全体のサイズ
をVolume_Sizeとすると、ボリューム領域の先頭からのV
olume_Size×(1-β)までがユーザデータ領域に、ユーザ
データ領域の直後からのVolume_Size×βがプロテクト
領域に割り当てられる。このβは、0.01を最小とした値
に設定される。例えば、Volume_Sizeが64MByteであり、
βが0.01ならば、プロテクト領域は、640KByteに設定さ
れることなる。これらユーザデータ領域及びプロテクト
領域のフォーマットは、ファイルシステム操作部9が図
9に示した初期化手順を実行することにより実現され
る。

【0055】ユーザデータ領域の総データTSを124160セ
クタと決定した場合、ユーザデータ領域において、パー
ティション管理領域と、システム領域のサイズがどのよ
うに算出されるかの計算例を以下に示す。TSが124160で
あるので、ステップS1ではクラスタサイズが32セクタ
と決定される。クラスタサイズが32セクタと決定された
ので、ステップS2において、クラスタサイズSCと、フ
ォーマットサイズTSとから、FAT12を使用すると決め
る。本実施形態では、RDEは32セクタに固定であり、RSC
は1セクタに固定なので、ステップS3、ステップS4
での計算は行われない。ステップS5では、数式11、数
式12にてFATのデータ長を計算する。ここでFATはFAT12
なので、Size1=(((((TS-(RSC+RDE))/SC)+2)×12/8)+51
1)/512=(((((124160-(1+32))/32)+2)×12/8)+511)/512=
12セクタと算出される。Size1が算出されれば、ステッ
プS6において、マスタブートレコードとパーティショ
ンブートセクタとが別のクラスタになるように、数式12
にてNOMを計算する。

【0056】NOM=(SC-(RSC+RDE+Size1×2)%SC)+SC=(32-
(1+32+12×2)%32)+32=39セクタ と算出される。NOMが
算出されれば、ステップS7において、レギュラー領域
におけるクラスタ数の計算を行う。 CN=(TS-(RSC+RDE+Size1×2+NOM))/SC CN=(124160-(1+32+12×2+39))/32=3877セクタと算出さ
れる。 ステップS8において、数式13にて、FATのデー
タ長を計算する。

【0057】Size2=(((CN+2)×12/8)+511)/512 Size2=(((3877+2)×12/8)+511)/512 Size2=12と算出される。ステップS9では、ステップS
5にて算出されたSize1と、ステップS8にて算出され
たSize2との比較を行う。ここで、Size1は12セクタと算
出され、Size2は12セクタと算出されるので、両者の一
致がステップS9において算出される。これにより、本
フローチャートの手順を終える。以上の計算にて算出さ
れたTS、Size1、NOMの大きさで、システム領域と、パー
ティション管理領域を作図するとプロテクト領域のレイ
アウトは、図17のように表現される。本図と図12と
を比較すると、図12と比べて二重化ファイルアロケー
ションテーブルのサイズは増大しているが(14→24セク
タ)、Reserved情報1/2,2/2のサイズが縮小しているため
(17→7セクタ)、パーティション管理領域と、システム
領域は、丁度3つの消去可能ブロックに収まっている。

【0058】続いて、プロテクト領域のTSを1280セクタ
と決定した場合、パーティション管理領域と、システム
領域がどのように算出されるかの計算例を以下に示す。
TSが1280であるので、ステップS1では、クラスタサイ
ズは2セクタ(1KByteであり、ユーザデータ領域のサイズ
の1/16にすぎない)と決定される。クラスタサイズが2セ
クタと決定されたので、ステップS2において、クラス
タサイズSCと、フォーマットサイズTSとから、FAT12を
使用すると決定する。本実施形態では、RDEは32セクタ
に固定であり、RSCは1セクタに固定なので、ステップS
3、ステップS4での計算は行われない。ステップS5
では、数式11,数式12にてFATのデータ長を計算する。こ
こでFATはFAT12なので、Size1=(((((TS-(RSC+RDE))/SC)
+2)×12/8)+511)/512=(((((1280-(1+32))/2)+2)×12/8)
+511)/512=2セクタと算出される。Size1が算出されれ
ば、ステップS6において、マスタブートレコードとパ
ーティションブートセクタとが別のクラスタになるよう
に、数式12にてNOMを計算する。これによりNOMは、NOM=
(SC-(RSC+RDE+Size1×2)%SC)+SC=(2-(1+32+2×2)%2)+2=
3セクタと算出される。NOMが算出されれば、ステップS
7において、ユーザ領域におけるクラスタ数の計算を行
う。これによりクラスタ数CNは、 CN=(TS-(RSC+RDE+Size1×2+NOM))/SC CN=(1280-(1+32+2×2+3))/32=620セクタと算出される。
ステップS8において、FATのデータ長を算出する。

【0059】 FAT12の場合:Size2=(((CN+2)×12/8)+511)/512 Size2=(((620+2)×12/8)+511)/512 Size2=2 ステップS9では、ステップS5にて算出されたSize1
と、ステップS8にて算出されたSize2との比較を行
う。ここで、Size1は2セクタと算出され、Size2は2セク
タと算出されるので、計算を終える。

【0060】以上の計算にて算出されたTS、Size1、NOM
の大きさで、システム領域と、パーティション管理領域
を作図するとプロテクト領域のレイアウトは、図18の
ように表現される。本実施形態では、ユーザデータ領域
と、プロテクト領域の双方が、パーティション管理領域
と、システム領域と、ユーザ領域を有しているため、独
立した物理媒体としてアクセス装置により認識されるこ
となる。クラスタサイズに違いはあるものの、ユーザデ
ータ領域と、プロテクト領域の双方とも、クラスタの境
界と、消去可能ブロックの境界とが整合している。

【0061】以上のように本実施形態によれば、ボリュ
ーム領域に、ユーザデータ領域と、プロテクト領域とい
う2つの領域を設ける場合でも、消去可能ブロックの境
界と一致させるので、クラスタの書き換えを短期間に完
遂することができる。また、消去可能ブロックの消去回
数を削減することも可能なので、不揮発メモリの寿命を
いたずらに縮めることもない。

【0062】(第3実施形態)第3実施形態は、消去可
能ブロックを、論理アドレス・物理アドレスを用いて管
理し、消去可能ブロックに格納されたデータを消去する
場合の改良に関する。第3実施形態におけるアクセス制
御部2の構成を図19に示す。図19に示すようにアク
セス制御部2は、コマンド解読部21、論理・物理アド
レス変換部22、読出制御部23、割当変更部24、書
込制御部25、消去制御部26、及び書換制御部27か
らなる。

【0063】コマンド解読部21は、アクセス装置から
発行されたコマンドを受け取って、当該コマンド発行の
際の内容を解読する。受け取ったコマンドが読出コマン
ドなら、不揮発メモリ1からのデータ読み出しを行うよ
う読出制御部23に命じ(Read)、受け取ったコマンド
が、データが既に書き込まれているブロックをアクセス
先とした書込コマンドなら、不揮発メモリ1へのデータ
書き込みを行うよう書込制御部25に命じる(Write)。
消去済みブロックをアクセス先とした書込コマンドな
ら、不揮発メモリ1に格納されたデータについての書き
換えを行うよう書換制御部27に命じる(Modify)。状態
取得コマンドなら後述する消去済みフリーリストを読み
出すよう割当変更部24に命じる。消去コマンドなら、
指定された消去可能ブロックを消去するよう割当変更部
24に命じる。

【0064】論理・物理アドレス変換部22は、各消去
可能ブロックについての論理アドレスと物理アドレスと
の対応関係を示すアドレス対応表を有しており、アクセ
ス先の指定となる論理アドレスがアクセス装置から発行
されれば、本アドレス対応表に示される対応関係を参照
して、そのアクセスコマンドにて指定された論理アドレ
スを物理アドレスに変換して、読出制御部23、割当変
更部24、書換制御部27に出力する。

【0065】読出制御部23は、アクセス装置から読出
コマンドが発行された場合、不揮発メモリ1において、
その読出先に格納されているデータをアクセス装置に読
み出すよう、制御を行う。割当変更部24は、消去済み
についての物理アドレスを先入先出し式に配置した消去
済みフリーリストを保持しており、アクセス装置から書
込コマンドが発行された場合、書込先にて指定された論
理アドレスに対応する物理アドレスが消去済みフリーリ
ストに存在するか否かを判定する。消去済みフリーリス
トに存在すると判定されれば、対応する物理アドレスを
書込制御部25に出力すると共に、消去済みフリーリス
トから、その対応する物理アドレスを削除する。書込先
論理アドレスに対応する物理アドレスが、未消去ブロッ
クを指示するものであれば、消去済みフリーリストにお
いて先頭に位置する物理アドレスをその書込先にて指定
された論理アドレスに割り当てて書込制御部25に出力
すると共に、書込先論理アドレスにそれまで割り当てら
れていた物理アドレスを、消去済みフリーリストの最語
尾に追加する。また、アクセス装置から状態取得コマン
ドが発行されると、消去済みフリーリストに示される物
理アドレスを論理アドレスに置き換えて、論理アドレス
の羅列により消去済みの消去可能ブロックを表した消去
済みフリーリストをアクセス装置に出力する。更にアク
セス装置から論理アドレスが指定された消去コマンドが
発行されれば、その論理アドレスに対応する物理アドレ
スを消去済みフリーリストに追加するよう制御を行う。

【0066】書込制御部25は、書込コマンドによりブ
ロックへの書き込みが命じられば、割当変更部24から
出力された物理アドレスに従って、不揮発メモリ1に対
するデータ書き込みを行う。消去制御部26は、消去済
みフリーリストにおいて、未消去ブロックの物理アドレ
スが追加されたか否かを一定期間毎に監視(ポーリン
グ)しており、消去済みフリーリストに物理アドレスが
追加されれば、その物理アドレスにて指示される消去可
能ブロックを消去する。

【0067】書換制御部27は、既にデータが書き込ま
れている消去可能ブロックの書き換えが書込コマンドに
より命じられれば、不揮発メモリ1からワークメモリ3
へとデータ読み出しを行い、ワークメモリ3において、
データ書き換えを行った後、ワークメモリ3から不揮発
メモリ1へのデータ書き込みを行う。書換制御部27に
よる書き換え処理は、割当変更部24との協調制御によ
り実現される。書換制御部27によるデータ書き換えの
手順の推移を時系列に表したのが図20(a)〜(d)
である。

【0068】図20(a)は初期状態であり、網掛けが
なされたブロック(物理アドレス0000,0001,0002,00
04,0007〜0015のブロック)にデータが格納され、物理
アドレス0003,0005,0006のブロックが消去済みである
ことを示す。消去済みフリーリストには、消去済みブロ
ックの物理アドレス0003,0005,0006が配置される。論
理アドレス−物理アドレスの対応を示すアドレス対応表
は、論理アドレス0001,0002,0003,0004,0005がそれぞ
れ、物理アドレス0001,0002,0003,0004,0005に対応する
よう設定されている。

【0069】この際、論理アドレス0001の消去可能ブロ
ックに別の値を書き込む旨の書込コマンドがアクセス装
置から発行されれば、書込制御部25は図20(a)に
おいて実線の矢印Readに示すように、論理アドレス00
01のブロックに書き込まれたデータを不揮発メモリから
ワークメモリに転送し、ワークメモリにおいて、論理ア
ドレス0001のブロックに書き込まれていたデータの書き
換えを行う(Modify)。

【0070】続く図20(b)では、破線の矢印BN1に
示すように、消去済みフリーリストにおいて先頭に位置
する物理アドレス0003を取り出し、実線の矢印(Writ
e)に示すように、この物理アドレス0003に指定されたブ
ロックに対するデータ書き込みを行う。その後、図20
(c)において、物理アドレス0001のブロックを、デー
タ消去の対象にするべく、実線の矢印に示すように、
物理アドレス0001を消去済みフリーリストに配する。

【0071】最後に、図20(d)に示すように、論理
アドレス−物理アドレスの対応関係の入れ替えを行う。
即ち、物理アドレス0003を論理アドレス0001に割り当
て、物理アドレス0001を論理アドレス0003に割り当て
る。こうした物理アドレス0003へのデータ書き込みと、
物理アドレス−論理アドレスの対応関係の入れ替えとを
行えば、論理アドレス0001へのデータの上書きが実現さ
れることなる。

【0072】続いてアクセス装置の内部構成について説
明する。図21は、第3実施形態におけるアクセス装置
の、ファイルシステム操作部9の内部構成を示す図であ
る。本図においてファイルシステム操作部9は、ファイ
ル削除部28、先行消去制御部29を含む。ファイル削
除部28は、一次記憶装置7に読み出されたFATを更新
して、半導体メモリカード100に書き込むことによ
り、ファイルの削除を行う。アプリケーションプログラ
ム8から、ファイルを削除する旨の指示がなされれば、
該当するファイルの分割部分が格納されているクラスタ
に対応するFATエントリーを"0"に設定することによりフ
ァイル削除を実行する。こうしたファイル削除により、
ファイルが格納されたクラスタは、未使用に設定される
ことなる。しかし、ファイルの分割部分を格納していた
クラスタ(消去可能ブロック)が、白紙の状態に戻った
訳ではないので、別のファイルを同じクラスタに記録す
る場合には、そのクラスタを一旦消去せねばならない。
従って、古いファイルを削除し、新たなファイルを記録
しようとする機会が多ければ多い程、消去のために多く
の処理時間が費やされることなる。

【0073】先行消去制御部29は、アプリケーション
プログラム8からの指示が無い状態において、状態取得
コマンドを半導体メモリカード100に発行して、消去
済みフリーリストを半導体メモリカード100から読み
出すよう命じる。コマンドを発行した後、消去済みフリ
ーリストが出力されれば、ファイルシステム操作部9は
これをうけとって消去済みフリーリストと、FATとを照
合することにより、FATにおいて未使用ブロックと設定
されているクラスタに対応する消去可能ブロック(1つ
の消去可能ブロックが複数のクラスタから構成される場
合は、未使用クラスタのみからなる消去可能ブロック)
を特定する。そうして特定された未使用クラスタのみか
らなるブロックのうち、消去済みフリーリストに存在し
ないものを更に特定する。特定された消去可能ブロック
は、いわば未使用未消去ブロックであり、そうして特定
された未使用未消去ブロックの消去を命じるべく、消去
コマンドを半導体メモリカード100に対して発行す
る。この消去コマンドは、論理アドレスの指定を含み、
この論理アドレスに対応する物理アドレスを消去済みフ
リーリストに加えよと命じる旨を含む。こうした消去コ
マンド発行の際の発行により、物理アドレスが消去済み
フリーリストに加えられれば、消去制御部26がポーリ
ングを行うことにより、他の未使用未消去ブロックと同
様、消去コマンドにて指定されたブロックが消去される
ことなる。以上の先行消去制御部29による処理手順を
詳細に表したのが、図22のフローチャートであり、以
降このフローチャートを参照しながら、先行消去制御部
29の処理を詳細に説明する。

【0074】本実施形態において先行消去制御部29が
起動されれば、ステップS21〜ステップS22からな
るループ処理に移行する。ステップS21において先行
消去制御部29は、アプリケーションプログラム8から
のアクセス指示が有ったかどうかの判定を行い、ステッ
プS22において先行消去制御部29は、所定の監視期
間が経過したかを判定する。アプリケーションプログラ
ム8から指示があれば、ステップS23に移行して、指
示に従ったファイルシステム操作及び半導体メモリカー
ド100に対するアクセスを行う。所定の監視期間が経
過したなら、ステップS22からステップS24への移
行を行い、消去済みフリーリストを読み出す旨の状態取
得コマンドを半導体メモリカード100に対して発行す
る。その後、ステップS25において消去済みフリーリ
ストの読出待ち状態となり、消去済みフリーリストが読
み出されれば、ステップS26において、FATにおいて
未使用と設定されているクラスタからなる消去可能ブロ
ックであって、消去済みフリーリストに存在しないもの
の論理アドレスを全て特定する。

【0075】ステップS27では、未使用未消去ブロッ
クが存在するか否かの判定を行い、未使用未消去ブロッ
クが存在しなければ、何の処理をも行わずに、ステップ
S21−ステップS22のループ処理に戻る。未使用未
消去ブロックが存在すれば、ステップS28〜ステップ
S30からなるループ処理を行う。即ち、ステップS2
6にて特定された未使用未消去ブロックの物理アドレス
の全てに対して、未使用未消去ブロックを指定した消去
コマンドを半導体メモリカード100に対して発行する
のである。そうすると、半導体メモリカード100の内
部では、これらの未使用未消去ブロックの物理アドレス
が消去済みフリーリストに追加され、消去の対象とな
る。

【0076】以上に示した先行消去制御部29の処理に
ついての理解を深めるべく、本実施形態における先行消
去制御部29の動作を図23(a)、(b)を参照しな
がら説明する。図23(a)に示す初期状態では、物理
アドレス0001の消去可能ブロックがFATにおいて使用中
と設定され、物理アドレス0003,0005,0006が、消去済
みブロックのアドレスとして消去済みフリーリストに配
置されている。ファイルシステムにおいて網掛けが付さ
れたブロック(物理アドレス0000,0001,0002,0004)
にはデータが書き込まれている。この状態において、ア
プリケーションプログラム8からの指示が存在せず、ま
た、所定の監視時間が経過すれば(ステップS21-N
o、ステップS22-Yes)、アクセス装置内のファイル
システム操作部9が、半導体メモリカード100に対し
て状態取得コマンドを発行することにより、消去済みフ
リーリストを読み出し(ステップS24)、読み出され
た消去済みフリーリストとFATとの照合を行う(ステッ
プS25)。その結果、FATにおいて未使用と設定され
ているブロックであって、消去済みフリーリスト内に論
理アドレスが存在しないもの(物理アドレス0000,000
2,0004の消去可能ブロック)が特定されることなる(ス
テップS26)。これらのブロックは未使用であること
から、ファイルシステム操作部9は消去コマンドを半導
体メモリカード100に発行することにより、これらの
消去可能ブロックに対するデータの消去を行う(ステッ
プS28〜ステップS30)。そうすると、図23
(b)に示すように、物理アドレス0000,0002,0004が
消去済みフリーリストに追加され、これらのアドレスに
て指示される消去可能ブロックが消去されることなる。

【0077】以上のように本実施形態によれば、アクセ
ス装置は、半導体メモリカード100から消去済みフリ
ーリストを読み出し、FATと、消去済みフリーリストと
の照合により、未使用未消去ブロックを特定して、その
ブロックの消去を半導体メモリカード100に命じるの
で、ファイルシステム操作部9がアプリケーションプロ
グラム8からの指示を待っている状態等に、未使用ブロ
ックの消去が可能となり、未使用ブロックの消去を効率
良く行うことができる。

【0078】また未使用ブロックの消去がアクセス装置
の空き時間に行えるので、ブロックの消去が行なえる機
会が大幅に増える。そのため、消去済みフリーリストに
おける物理アドレスの個数が欠乏することは無くなり、
ブロックの書き換えや上書きを行う場合の処理効率が大
幅に向上されることなる。尚、本実施形態においてアク
セス装置が、半導体メモリカード100から消去済みフ
リーリストを読み出して未消去未使用ブロックを特定し
たが、半導体メモリカード100においてアクセス制御
部2内の消去制御部26が、FATを参照することによ
り、未消去未使用ブロックを特定して、消去してもよ
い。アクセス制御部2が消去済みフリーリストに含まれ
る物理アドレスを論理アドレスに変換して、アクセス装
置に引き渡したが、消去済みフリーリストとアドレス対
応表とをアクセス装置に引き渡して、物理アドレスから
論理アドレスへの変換をアクセス装置に行わせてもよ
い。データ消去処理はファイル削除時に行ってもよい
し、他のコマンドの実行中に並行処理してもよい。また
消去済みの消去可能ブロックの物理アドレスを管理する
消去済みフリーリストの代わりに、未消去ブロックの消
去可能ブロックの物理アドレスを管理する未消去フリー
リストなど、その他の情報を用いてもよい。更に本実施
形態では、FATを用いて説明を行ったが、リストなど他
の形態でもよい。

【0079】(第4実施形態)第4実施形態は、第3実
施形態において消去済みフリーリストを用いて実現した
処理を、消去済みフリーテーブルを用いて実現する場合
の改良に関する。第4実施形態におけるアクセス制御部
2の内部構成を、図24に示す。本図を図19と比較す
ると、図19における消去済みフリーリストが図24で
は、「消去済みフリーテーブル」に置き換えられている
ことがわかる。第4実施形態に係る消去済みフリーテー
ブルは、各ブロックに対応するエントリーからなり、対
応するブロックが消去済みであれば値"1"が設定され、
未消去ブロックならば、"0"の値が設定される。"1","0"
の設定により、消去済みフリーテーブルには、各ブロッ
クの消去状況が表現される。

【0080】消去済みフリーリストが消去済みフリーテ
ーブルに置き換えられているため、第4実施形態におけ
る書込制御部25、消去制御部26は以下の処理を行う
ことが第3実施形態と異なる。第4実施形態における書
込制御部25は、アクセス装置から書込コマンドが発行
された場合、消去済みフリーテーブルを参照して、その
コマンド発行の際の書込先が消去済みであるか、未使用
ブロックであるかを判定する。そして書込先ブロックが
消去済みであれば、その書込先ブロックに対するデータ
消去を消去制御部26に行わせてから、データ書き込み
を行う。つまり、第4実施形態の書込制御部25は、デ
ータ書き込みに先立って、データ消去を行う。

【0081】続いて、第4実施形態に係る先行消去制御
部29の処理について説明する。第4実施形態における
先行消去制御部29は、第3実施形態同様、アプリケー
ションプログラム8からの指示を待っている状態におい
て消去可能ブロックの消去を行う。その消去手順は、第
3実施形態に示したものと同一であり、図25に示され
るものとなる。図25のフローチャートは、図22にお
ける『消去済みフリーリスト』を『消去済みフリーテー
ブル』に置き換えたものであり、その処理内容には大差
はないので詳細説明は省略する。続いて、第4実施形態
における先行消去制御部29の処理を、図26を参照し
ながら説明する。

【0082】図26(a)に示す初期状態は、アドレス
0001のブロックが使用中領域として管理されており、消
去済みフリーテーブルにおいて、アドレス0003,0005,
0006のブロックがデータ消去済み領域として管理されて
いる。不揮発メモリの網掛けの部分(アドレス0000,00
01,0002,0004)にデータが記録されている。この初期
状態では、未使用であるにも関わらずデータが書かれて
いる領域が存在しており、それらの未使用領域にデータ
書き込みが発生した場合、データ消去処理が必要とな
る。そこで本実施形態では、アプリケーションプログラ
ム8からの指示が存在せず、監視期間が経過した状態に
おいて(ステップS21-No、ステップS22-Yes)、
先行消去制御部29は、状態取得コマンドを半導体メモ
リカードに対して発行する(ステップS24)。消去済
みフリーテーブルが読み出されれば、これを自身が有し
ているFATと照合し、FATにより未使用領域となっている
領域で、かつ消去済みフリーテーブルで管理されていな
い消去可能ブロックを検索する(ステップS26)。図
26の例では、FATに"0"が設定されており、消去済みフ
リーテーブルに"0"が設定されているアドレス0000,000
2,0004の領域が未消去未使用ブロックに該当する。こ
れらの領域は未使用であることからデータを消去しても
構わないため、消去コマンドの発行により、消去済みフ
リーテーブルの該当アドレスに消去済みであることを意
味する値"1"に設定させる(ステップS28〜ステップ
S30)。このようにすることで、未使用ブロックのデ
ータはすべて消去され、消去済みフリーテーブルで消去
済みブロックとして管理される。よって以降の未使用領
域の割当てによるデータ書き込みは、すべて消去処理な
しでおこなわれることになり、高速にデータ書き込みを
行うことができる。

【0083】(第5実施形態)第5実施形態は、ファイ
ルを格納する際のフラグメンテーションの解消を提案す
るものである。一般にファイルを格納する際のフラグメ
ンテーションとは、ファイルを複数に分割して、その分
割により得られた分割部分が不連続な領域に格納される
ことをいう。光ディスク、磁気ディスク等の記録媒体に
おいて、不連続な領域に複数の分割部分が格納されれ
ば、それら不連続領域から分割部分を読み出すために、
多くのディスクシークが発生し、読み出し処理が長期化
してしまう。そうしたフラグメンテーションの解消のた
め、ファイルシステム操作部9では、それら不連続領域
に格納された分割部分を読み出して、連続領域に格納し
直すという処理を行う。以上の処理を経れば、ファイル
を構成する分割部分の読み出しは、全くディスクシーク
を伴うことなくスムーズに行われることなり、結果とし
て、データ読み出しの高速化が実現される。以上がディ
スクにおけるフラグメンテーションの解消についての概
要である。これに対して、半導体メモリカード100に
おけるフラグメンテーションの発生を考える。半導体メ
モリカード100からのデータ読み出しには、ディスク
シークといった処理は不要なので、ファイルを構成する
分割部分が不連続に格納されたからといって、ディスク
シークにより、処理が長期化することは有り得ない。

【0084】ディスクシークが発生しないとはいえ、フ
ラグメンテーションが存在していれば、以下に示す(1.
コマンド発行の際のオーバーヘッド)、(2.FAT読み込み
の際のキャッシュミス)が増大することにより、ファイ
ルの読み出し時間が長大化してしまう。 (1.コマンド発行の際のオーバーヘッド)フラグメン
テーションの有無がコマンド発行の際のオーバーヘッド
とどのような因果関係にあるかは、図27(a)、
(b)を用いて説明すれば理解が容易である。図27
(a)は、48KByteのファイルを構成する16KByteの分割
部分が3つの領域にバラバラに配置されている状態を表
している。図27(b)は、48KByteのファイルが連続
領域に配置された状態を示す。図27(a)、図27
(b)において、ファイルシステム操作部9が不揮発メ
モリに対してデータの読み込みを実行する読出コマンド
を、Read(add,size)の形式で発行するものとする。
ここで、addは読み込み先の論理アドレスを示し、size
は読み込みサイズを示す。各読出コマンドは、データ長
に比例したデータ読み込み時間と、読出コマンドを発行
するために必要な一定のオーバーヘッド時間がかかる。
図27(a)のようなデータ配置では、Read(0000,16KB
yte),Read(0002,16KByte),Read(0004,16KByte)とい
うように、3回の読出コマンドの発行により、ファイル
を読み出さねばならない。そうすると、36m秒(=(8+4)×
3)の読み出し時間が費やされる。一方、図27(b)の
ようなデータ配置では、Read(0000,48KByte)というよう
に、1回のコマンド発行にて、48KByteのデータを読み
出せばよい。読み出し時間は、28m秒(=(8×3+4))とな
る。これらのことからコマンド実行に伴うオーバーヘッ
ドは、ファイルを構成する分割部分が多くの領域にバラ
バラに配置される程、増大することなる。

【0085】(2.FATキャッシュ)FATのキャッシュと
は、半導体メモリカード100においてシステム領域に
配置されているFATを、アクセス装置の内部メモリに先
行的に読み出しておき、内部メモリに対するアクセスに
て、FATの参照を高速に行うことである。かかるFATのキ
ャッシュは、アクセス装置が携帯機器であり、アクセス
装置の内部メモリの規模が小さい場合に、頻繁に行われ
る。FATのキャッシュは、FATが連続している領域に配置
されているとして、FATを分割することにより得られた
分割部分を格納している連続領域を順次読み出してゆく
ことにより行われる。しかし、FATのフラグメンテーシ
ョンが発生している場合において、FATのキャッシュを
行おうとすると、FATを構成する分割部分と、そうでな
い分割部分とが内部メモリに順次読み出されることな
る。FATの構成部分でないデータが内部メモリに読み出
されるということは、目的としないデータが内部メモリ
に多く読み出されることを意味し、キャッシュミスが発
生していることになる。キャッシュミスが多く発生すれ
ば、それだけ内部メモリへの読み出し回数が増大するこ
とになるので、FATの読み出しをいたずらに長期化させ
る結果となる。

【0086】こうした2つの問題があるからといって、
ディスクを対象としたフラグメンテーションの解消を半
導体メモリカード100に対し実行するのは賢明ではな
い。何故なら、半導体メモリカード100では、ブロッ
クに格納されているデータの書き換えにあたっては、そ
れまで格納されたいたデータを一旦消去する必要があ
り、そうした消去のため、ディスク以上の処理時間が費
やされるからである。そこで本実施形態では、フラグメ
ンテーション発生時におけるコマンドオーバーヘッド及
びキャッシュミスの増大への対処法として、物理アドレ
ス、論理アドレスの対応関係を変更するという考えを提
案する。つまりファイル、FATの分割部分の物理的な配
置は変化させず、これらを格納したブロックが、連続し
た論理アドレスにて指示されるように、物理アドレス、
論理アドレスの対応関係を変化させるのである。

【0087】図27(a)のように、48KByteのファイ
ルを構成する3つの分割部分が、3つの領域に配置される
場合、それら分割部分を格納したブロックが連続した論
理アドレスにて指示されれば、アクセス装置が複数の論
理アドレスのうち先頭のものと、データ長48KByteとを
指定した読出コマンドを一回発行することにより、それ
ら3つの領域(ブロック)に格納された分割部分をまと
めて読み出すことができる。またFATが3つに分割され、
3つの領域に格納されている場合、これら3つのブロック
を連続した論理アドレスにて指示すれば、これら連続論
理アドレスを読出先とした読出コマンドを順次発行する
ことにより、バラバラに格納されたFATを内部メモリに
順次読み出してゆくことができ、キャッシュミスが生じ
ることはない。

【0088】ファイル、FATを分割することにより得ら
れた複数の分割部分が複数の領域にバラバラに格納され
ている場合であっても、これらの領域に連続した論理ア
ドレスを割り当てれば、読出コマンド発行に伴うオーバ
ーヘッドを解消することができ、またキャッシュミスの
発生を防ぐことができる。以上説明した論理アドレスの
フラグメーション解消処理は、先行消去制御部29が図
28のフローチャートに示す手順を実行することによ
り、実現される。尚、本フローチャートの説明にあたっ
て、図29の説明図を引用するものとする。図29は、
フローチャートにおける変数s、変数t、変数u、変数v、
変数yが具体的にどのようなものを対象としているかを
示す図である。ステップS50において、ファイルシス
テム操作部9は、変数x、変数yのそれぞれの初期化を行
う(x←1,y←1)。これにより、1番目のファイルの1番目
の分割部分が処理対象となる。続いてステップS51で
は、x番目のファイルのy番目の分割部分を格納したブロ
ックの論理アドレスsと、x番目のファイルのy+1番目の
分割部分を格納したブロックの論理アドレスtとの前後
比較を行う。図29(a)のように、y番目の分割部分
と、y+1番目の分割部分とが、隔てられた消去可能ブロ
ックに格納されているが、y番目、y+1番目の順に分割部
分が格納されている場合、ステップS52がYesとな
り、そのままステップS54に移行する。

【0089】図29(b)のように、y+1番目の分割部
分、y番目の分割部分の順で、分割部分が格納されてい
るのであれば、ステップS53に移行して、物理アドレ
スuを論理アドレスtに割り当て、物理アドレスvを論理
アドレスsに割り当てる。これにより、図29(b)の
矢印rv1,rv2に示すように、物理アドレス−論理アドレ
ス間の割り当て変更がなされる。続くステップS54で
は、y番目の分割部分が格納された消去可能ブロックの
論理アドレスと、y+1番目の分割部分が格納された消去
可能ブロックの論理アドレスとが連続しているかを判定
する。図29(c)のようにy番目の分割部分を格納し
た消去可能ブロックの直後の消去可能ブロックに、y+1
番目の分割部分が格納されている場合、s+1=tという関
係が成立するので、ステップS54がYesとなり、ステ
ップS56に移行する。図29(d)のように、y番目
の分割部分を格納した消去可能ブロックと、y+1番目の
分割部分を格納した消去可能ブロックとが隔てられてい
る場合、s+1=tという関係が成立しないので、ステップ
S54がNoとなり、ステップS55に移行する。ここで
論理アドレスs+1に対応する物理アドレスを物理アドレ
スwとすると、ステップS55では、y+1番目の分割部分
を格納した消去可能ブロックについての物理アドレスv
を論理アドレスs+1に割り当て、物理アドレスwを論理ア
ドレスtに割り当てる。y番目の分割部分、y+1番目の分
割部分が図29(d)のように格納されている状態にお
いて、ステップS55の処理が実行されれば、矢印rv3,
rv4に示すように、アドレスの対応関係の変更がなされ
る。

【0090】以上の処理を終えれば、ステップS56に
おいて変数yがラストナンバーになったか否かを判定
し、そうでなければ、ステップS57において変数yを
インクリメントしたステップS51に移行する。ステッ
プS56におけるチェックと、ステップS57における
変数yのインクリメントとにより、x番目ファイルを構成
する全ての分割部分を対象として、ステップS51〜ス
テップS57の処理は繰り返される。

【0091】一方、ステップS56においてYesと判定
されれば、ステップS58においてxがラストナンバー
であるかが判定され、Noならば、ステップS59に移行
して、変数xをインクリメントし(x←x+1)、ステップ
S60において変数yを初期化する。ステップS58に
おけるチェックと、ステップS59における変数yのイ
ンクリメントとにより、全てのファイルを対象として、
ステップS51〜ステップS57の処理は繰り返され
る。

【0092】図30に示す具体例を交えて、本実施形態
におけるフラグメーションの解消を説明する。図30
(a)に示す初期状態において、論理アドレス0000,00
01,0004に対応する消去可能ブロックにはfile1を構成
する分割部分(file1・1/3、file1・2/3、file1・3/3)が
格納される。また、論理アドレス0002,0003,0005,00
06に対応する消去可能ブロックには、file2を構成する
分割部分(file2・1/4、file2・2/4、file2・3/4、file2・4
/4)が格納されている。

【0093】file1・2/3を格納した論理アドレス0001の
次アドレス(論理アドレス0002)に対応する消去可能ブロ
ックには、file2・1/4が格納されており、またfile1・3/3
は、論理アドレス0004に対応する消去可能ブロックに格
納されている。本図に対して図28のフローチャートを
適用すると、file1・1/3とfile1・2/3との関係を考える
と、論理アドレス0000,0001というように、論理アドレ
スの順番に分割部分が配置されているので、対応関係の
入れ替えは行われない。一方、file1・2/3とfile1・3/3と
の関係を考えると、file1・2/3が格納されている消去可
能ブロックには、論理アドレス0001が対応しており、こ
れの次の論理アドレス0002には、file2・1/4が格納され
た消去可能ブロックが対応しているので、ステップS5
4がNoとなり、ステップS55に移行する。そしてステ
ップS55においてfile1・3/3が格納された論理アドレ
ス、物理アドレスの対応関係と、file2・1/4が格納され
た論理アドレス、物理アドレスの対応関係とを入れ替え
ることにより、このfile1・2/3と、file1・3/3とが連続の
論理アドレスにて指示されるようにする。即ち、file2・
1/4が格納された消去可能ブロックについての物理アド
レス0002に論理アドレス0004を割り当て、逆にfile1・3/
3が格納された消去可能ブロックについての物理アドレ
ス0004に論理アドレス0002を割り当てる。かかる変更後
の論理アドレス−物理アドレスの対応関係は図30
(b)の通りとなる。file1・3/3の処理が済んだので、f
ile2のfile2・1/4に処理を移す。図30(b)におい
て、file2・1/4とfile2・2/4との間の関係を考えると、fi
le2・1/4は、論理アドレス0004に対応する消去可能ブロ
ックに格納されており、また直後の分割部分file2・2/4
は、論理アドレス0003に対応する消去可能ブロックに格
納されているので、分割部分に付されるべき論理アドレ
スの順序が逆になっている。そのため、ステップS52
がNoとなり、ステップS53に移行してfile2・1/4とfil
e2・2/4との前後関係を入れ替える。これにより、図30
(c)に示すように、file2・1/4を格納した消去可能ブ
ロックに対応する物理アドレス0002が、論理アドレス00
03に割り当てられ、file2・2/4を格納した消去可能ブロ
ックに対応する物理アドレス0003が、論理アドレス0004
に割り当てられることなる。結果として、file1、file2
を構成する分割部分は、全て連続する論理アドレスにて
指示されることなる。

【0094】以上のように本実施形態によれば、ファイ
ルを構成する分割部分が連続な領域に格納されなくて
も、それら連続領域に連続した論理アドレスを割り当て
るので、読出コマンド発行の際のオーバーヘッドや、FA
T、ファイルをキャッシュする際のキャッシュミスを低
減することができる。 (第6実施形態)第6実施形態は、配信サービスにおい
て不揮発メモリに様々なコンテンツを記録し、携帯型プ
レーヤで再生する場合の改良に関する。不揮発メモリに
様々なコンテンツを記録する場合、音楽、映像、ゲー
ム、テキスト等、様々な属性を有するファイルが半導体
メモリカード100に格納されることを想定せねばなら
ない。読み出しの可否や編集の可否が、音楽、映像、ゲ
ーム、テキストの種別毎に異なる場合、アクセス装置の
ファイルシステム操作部9は、ファイル読み出しや編集
にあたって、ファイルの中身を調べて、それから読み出
し処理や編集処理を行う必要がある。ファイルの読み出
しや編集を行う度に、そのような中身の調査が必要とな
ると、ファイルシステム操作部9の処理が複雑になって
しまう。そこでDVD等に採用されているUDF(universal d
isk format)ファイルシステムでは、ファイルの中身を
調べることなく、そのファイルに格納されたデータの種
別が一目瞭然となるよう、ファイルに拡張属性を設定し
ている。

【0095】拡張属性の一例を図31に示す。図31
は、UDFのImplementation Use Extended Attributeを用
いて規定された新たな拡張属性であり、Attribute Type
200,Attribute SubType2010,Reserved202
0,Attribute Length2030,Implementation Use L
ength2040,Implementation Identifier2050
(これらは、UDFのImplementation UseExtended Attribu
teと同一であるため、説明は省略する)、Implementati
on Use2060からなる。Implementation Use2060
は、拡張属性のヘッダ部分のチェックサムが格納される
HeaderChecksum2061、ファイル名が格納されるName
2063、ファイルの属性が格納されるFlag2062と
からなる。Flag2062は、各ビットが0であるか、1で
あるかによりファイルの属性を表す。0ビット目は、対
応するファイルがテキストファイルであるか否かを示
し、1ビット目は、対応するファイルが音楽ファイルで
あるか否かを示す。2ビット目は、対応するファイルが
映像ファイルであるか否かを示し、3ビット目以降は予
備の領域となっている。

【0096】こうした拡張属性を、半導体メモリカード
100に格納させようとすると、1つの問題に直面す
る。それは、これまでの実施形態で説明してきたよう
に、半導体メモリカード100のボリューム管理情報
は、IS0/IEC9293のデータ構造に準じているので、各フ
ァイルに拡張属性を設定する余地が存在しないという点
である。

【0097】そこで本実施形態では、プロテクト領域及
び代替領域に拡張属性を格納する。プロテクト領域につ
いては、既に第2実施形態で説明済みなので説明を省略
する。代替領域は、ユーザ領域の通常パーティションと
は別に管理される領域であり、割当変更部24は、不揮
発メモリのユーザ領域に欠陥セクタが現れた場合、この
代替領域から、セクタを選んで、この欠陥セクタに置き
換えるという動作を行う。図32は、代替領域が設けら
れた半導体メモリカード100の内部構成を示す図であ
る。拡張属性をプロテクト領域又は代替領域に格納する
ことにより、FAT型ファイルシステムで定義されていな
い新たな拡張属性を各ファイルに設定することができ
る。また、通常ユーザが使用するユーザ領域と、ユーザ
データ領域において、新しく設定した拡張属性とはまっ
たく独立して、従来のファイルシステムを使用すること
が可能であるため、他のシステムとの互換性が生じる。
さらに、アクセス装置には各属性のファイルに必要な操
作のみを実装することが可能になるため、アクセス装置
に実装する操作の量を減らすことができ、アクセス装置
のメモリ量を低減することができる。加えて、各ファイ
ルの中身を参照して各ファイルの属性を判定するのでは
なく、拡張属性のみを参照して判定することが可能であ
るため、高速な動作が実現できる。

【0098】(第7実施形態)FAT型ファイルシステム
におい、書込禁止、読出禁止等の属性をファイルに設定
することにより、ファイルの保護を、より強固にするこ
とを提案する。一般にFAT型ファイルシステムでは、書
込禁止や読込禁止といったファイル毎の属性を、ファイ
ルエントリーに設定することができる。アクセス装置の
ファイルシステム操作部9は、半導体メモリカード10
0と接続された際、ボリューム管理情報を読み出して保
持し、このファイルエントリに設定されたファイル属性
を参照して、ファイルに対する読み書きを行うか否かの
判定を行う。アクセス装置におけるアプリケーションプ
ログラム8が、ファイルシステム操作部9を通じて半導
体メモリカード100をアクセスするというルールを遵
守していれば、ファイルエントリに設定された属性は有
効なものとなる。しかしアクセス装置内部のアプリケー
ションプログラム8がファイルシステム操作部9を介さ
ずに、半導体メモリカード100を直接アクセスする場
合、つまりアプリケーションプログラム8が直接、半導
体メモリカード100に対して読出コマンド、書込コマ
ンドを発行することにより、半導体メモリカード100
に対するデータ読み書きを行おうとする場合、ファイル
エントリにおいて設定された書込禁止属性、読出禁止属
性は無意味なものとなる。そこで本実施形態では、ファ
イルシステム操作部9を介さずに、アプリケーションプ
ログラム8が直接半導体メモリカード100をアクセス
しようとする場合であっても、読出禁止、書込禁止とい
った属性が有効に活用されるよう、半導体メモリカード
100を図33のように構成している。図33は、第7
実施形態に係る半導体メモリカード100の内部構成を
示す図である。本図において特徴的なのは、不揮発メモ
リ1に、代替領域が設けられ、この代替領域にブロック
属性テーブルが設けられている点である。

【0099】ブロック属性テーブルは、ボリューム領域
に含まれる消去可能ブロックに対応づけられたエントリ
ーからなり、エントリーが"1"に設定されれば、対応す
るブロックは書込禁止に設定される。またエントリー
が"2"に設定されれば、対応するブロックは、読出禁止
に設定される。第5実施形態におけるファイルシステム
操作部9及びアクセス制御部2は、ファイルエントリー
に対する操作と共に、ブロック属性テーブルに対する操
作をも行う。アプリケーションプログラム8がファイル
オープンをファイルシステム操作部9に命じ、そのファ
イルに、属性の設定を命じた場合、ファイルシステム操
作部9は、このファイルに対応するファイルエントリー
に属性を設定する。例えば、読出禁止の設定をアプリケ
ーションプログラム8が命じたなら、ファイルエントリ
ーにおいて、その属性を読出禁止に設定する。書込禁止
の設定をアプリケーションプログラム8が命じたなら、
ファイルエントリーにおいて、その属性を書込禁止に設
定する。隠れ属性の設定をアプリケーションプログラム
8が命じたなら、ファイルシステム操作部9は、隠れ属
性を、そのファイルエントリーに設定する。

【0100】このようにして、ファイルのファイルエン
トリーに、属性が設定されたなら、ファイルシステム操
作部9は、ファイルをクラスタサイズに分割し、分割に
より得られた分割部分のそれぞれをユーザ領域における
複数クラスタに記録する。クラスタの記録に伴い、ブロ
ック属性テーブルにおいて、各消去可能ブロックに相当
するエントリーを、そのファイルの属性に応じて設定す
る。そのファイルが書込禁止であれば、そのファイルの
分割部分を格納したクラスタに対応するエントリーに書
込禁止属性を設定し、またファイルの属性が読出禁止で
あれば、そのファイルの分割部分を格納したクラスタに
対応するエントリーに読出禁止属性を設定する。ファイ
ルの属性が隠れ属性であれば、そのファイルの分割部分
を格納したクラスタに対応するエントリーに読出禁止属
性を設定する。

【0101】こうして、ファイルがユーザ領域に記録さ
れれば、ブロック属性テーブルに示された属性に従い、
ブロックからのデータ読み出し、及び、ブロックに対す
るデータ書き込みを行う。即ち、読出制御部23は、ア
クセス装置から読出コマンドが発行されれば、ブロック
属性テーブルにおいて、その読出先アドレスに対応する
エントリーを参照し、当該エントリーが読み書き可能を
示しているのなら、読出先アドレスにて示されるブロッ
クにデータ読み出しを行い、また読出禁止属性を示して
いるのなら、データ読み出しを行わない。

【0102】書込制御部25、書換制御部27は、アク
セス装置から書込コマンドが発行されれば、ブロック属
性テーブルにおいて、その書込先アドレスに対応するエ
ントリーを参照し、当該エントリーが読み書き可能を示
しているのなら、書込先アドレスにて示されるブロック
にデータ書き込みを行い、また書込禁止属性を示してい
るのなら、データ書き込みを行わない。

【0103】以上のようなブロックに対する読み書き制
御は、アプリケーションプログラム8がファイルシステ
ム操作部9を介して書込コマンド、読出コマンドを発行
する場合も、ファイルシステム操作部9を介さずに読出
コマンド、書込コマンドを発行する場合も可能であるの
で、アクセス装置からのコマンド発行がファイルシステ
ム操作部9を介しているか否かに拘らず、ブロックに対
する読み書きに制限を課すことができる。図34に示す
具体的を交えながら、本実施形態に係るファイルシステ
ム操作部9の処理を説明する。図34(a)において、
消去可能ブロックにおけるアドレス0000,0002,0003に
file1のデータが、アドレス0001,0004にfile2のデータ
が、アドレス0005にfile3のデータが、アドレス0006にf
ile4のデータが格納されている。

【0104】図34(b)は、書込禁止属性が設定され
たfile1を不揮発メモリ1に格納する場合を想定した図
である。ブロック属性テーブルにおいて、file1の各分
割部分を格納したブロック(アドレス0000,0002,000
3)に対応するエントリーは、書込禁止属性を示す値"1"
が設定される。ブロック属性テーブルがこのように設定
されれば、書込制御部25は、アドレス0000,0002,00
03に対する書き込みが命じられても、それらブロックに
対する書き込み処理を拒否する。

【0105】図34(c)は、読込禁止属性が設定され
たfile2を不揮発メモリ1に格納する場合を想定した図
である。file2に読み込み禁止属性が設定された場合、
ブロック属性テーブルにおいて、file2に対するファイ
ルエントリーに読み込み禁止属性を示すフラグが設定さ
れる。そしてfile2は、複数に分割され、ユーザ領域に
おける複数のブロックに格納される。

【0106】file2の分割部分が論理アドレス0001,000
4に格納された場合、ブロック属性テーブルにおいて、
これらのブロックに対応するエントリーには、読み込み
禁止属性を示す値"2"が設定される。ブロック属性テー
ブルがこのように設定されれば、読出制御部23は、た
とえアクセス装置からブロックの読み出しが命じられた
としても、アドレス0001,0004からのデータ読み出しを
拒否する。

【0107】以上のように本実施形態によれば、アクセ
ス装置のアプリケーションプログラム8がファイルシス
テム操作部9を介さずに半導体メモリカード100をア
クセスしようとしても、半導体メモリカード100に
は、各ブロックに対応づけて、読出禁止、書込禁止が設
定されているので、そのようなアクセスを拒否すること
ができる。ファイルを格納したブロックに、読出禁止、
書込禁止といった属性を設定することにより、ファイル
の保護を確実にすることができ、またファイルに著作物
が収録されている場合、その著作権を保護することがで
きる。

【0108】なお、本実施形態においては書込禁止属性
を示すフラグに"1"、読み込み禁止属性を示すフラグに"
2"を使用したが、これらのフラグは一例であり、本発明
はこれらに限定されるものではない。また本実施形態で
は、不揮発メモリの各ブロックに読み書き禁止属性を付
加するために、ブロック属性テーブルを使用したが、各
ブロック毎に属性を設定できるものであれば、リスト構
造を使用するなど、他の形態で実現してもよい。また、
本実施形態では、不揮発メモリのブロック属性として、
読み書き禁止属性を設定する方法について説明したが、
root特権を持つユーザのみがアクセスできるブロックを
管理する、各ユーザIDが所有するブロックはそのユー
ザIDを持つユーザのみがアクセスする、ユーザ毎にブ
ロックのアクセス権を設定するなど、ブロック属性と
して、本実施例以外の情報を使用してもよい。以上、フ
ァイルシステムの説明においては、FATファイルシステ
ムを用いたが、UDFやWindosNTに採用されているNew Tec
hnology File System(NTFS)など、その他の従来のファ
イルシステムや独自のファイルシステムを用いて同様の
効果をあげてもよい。また、消去可能ブロックを構成す
るセクタ数を32個としたのは、あくまでも一例に過ぎ
ず、消去可能ブロックを構成するセクタ数が、これより
増減してよいことはゆうまでもない。

【0109】以上説明したように本発明に係る半導体メ
モリカード100は、不揮発メモリ1に対する高寿命化
を実現できる。よって、電子音楽配信にて取得した音楽
コンテンツを記録し、それからその音楽コンテンツを削
除して、改めて別の音楽コンテンツを記録するというよ
うな「重ね録り」が多く発生した場合も、不揮発メモリ
の寿命を縮めることはないので、電子音楽配信にて取得
した音楽コンテンツの記録に、一枚の半導体メモリカー
ド100を繰り返し用いることができる。

【0110】

【発明の効果】以上説明したように、本発明に係る半導
体メモリカードのアクセス装置は、複数のセクタからな
り、それら複数のセクタのうち連続する2のi乗個のセク
タ(iは、0以上の整数)がデータ消去の最小単位であるブ
ロックとしてグループ化されているメモリ領域を有する
半導体メモリカードにおいて、複数のセクタのうち2のj
乗個のセクタ(jは、0以上の整数)に格納されるデータ群
をクラスタとして管理し、1つ以上のクラスタをファイ
ルとして管理することにより、ファイルアクセスを実現
する装置であり、前記メモリ領域において管理されるべ
きクラスタ数に基づいて、同一ファイルとして管理され
る前記クラスタ間のリンク関係をファイル毎に示すファ
イルアロケーションテーブルのデータサイズを算出し、
ファイルアロケーションテーブルを含むボリューム管理
情報のデータサイズを算出する算出手段と、算出された
ボリューム管理情報のデータサイズを上回り、尚且つ、
m×2のj乗個のセクタからなる第1領域を(mは、1以上の
整数)、ボリューム管理情報の記録のために確保し、第
1領域に後続するセクタからなる第2領域を、ユーザデ
ータの記録のために確保する確保手段と、確保された第
1領域にボリューム管理情報を記録し、第2領域にユー
ザデータを記録して、これらをクラスタとして管理する
記録手段とを備えることを特徴としている。このアクセ
ス装置によれば、メモリ領域においてm×2のj乗個のセ
クタからなる第1領域を、ボリューム管理情報の記録の
ために確保するので、1つのクラスタが2つの消去可能ブ
ロックに跨って格納されることはない。クラスタの境界
と、消去可能ブロックの境界との整合、ボリューム管理
情報の境界と、消去可能ブロックの境界との整合が図ら
れるので、1つのクラスタを書き換えたり、上書きした
りする際、消去するべき消去可能ブロックの数は1つで
済み、消去可能ブロックの消去回数を低減させることが
できる。消去回数の低減により、半導体メモリカードに
データを書き込む際の時間を短縮することができ、ま
た、不揮発メモリ自体の長寿命化を実現することができ
る。

【0111】ここで前記ボリューム管理情報は、前記フ
ァイルアロケーションテーブルの他に、マスタブートレ
コード、パーティションテーブル、パーティションブー
トセクタ、及びルートディレクトリエントリを含み、前
記記録手段は、マスタブートレコード及びパーティショ
ンテーブルを第1領域における先頭セクタに記録すると
共に、先頭セクタから所定のセクタ数だけ隔てて、パー
ティションブートセクタ、ファイルアロケーションテー
ブル、ルートディレクトリエントリを記録することによ
り、第1領域の末尾とルートディレクトリエントリの末
尾とを一致させてもよい。ドライブの先頭を示すマスタ
ブートレコードから、パーティション領域の先頭を示す
パーティションブートセクタまでのセクタ数を調整する
ことにより、ボリューム管理情報を、m×2のj乗個のセ
クタからなる第1領域に収めるので、FAT型ファイルシ
ステムを実行する機器との互換性を保つことができる。

【0112】ここで前記算出手段は、パーティションブ
ートセクタの記録に必要なセクタ数と、ファイルアロケ
ーションテーブルの記録に必要なセクタ数と、ルートデ
ィレクトリエントリの記録に必要なセクタ数との総和SU
Mを算出し、前記確保手段は、以下の{数式1}に基づき
数値mを算出して、第1領域の確保を行い、前記記録手
段は、以下の{数式1}を満たすセクタ数NUMから、先頭セ
クタのセクタ数を引き、これにより得られた数値を前記
所定のセクタ数として算出してもよい。

【0113】{数式1} NUM+SUM = 2のj乗×m ファイルアロケーションテーブルのサイズが変動するよ
うな場合であっても、消去可能ブロックのサイズの整数
倍であって、ボリューム管理情報のサイズを越える最小
のサイズの第1領域を確保するので、ファイルアロケー
ションテーブルサイズがどのように算出されようとも、
必要最小限のサイズの第1領域を確保することができ
る。

【0114】ここで前記記録手段は、ボリューム管理情
報の記録にあたって、セクタ数NUMから、1を引いたセク
タ数を、パーティションテーブルに設定してもよい。セ
クタ数NOMから1を引いたセクタ数がパーティションテー
ブルに設定されるので、第1領域のサイズが変化して、
第2領域の先頭アドレスが変動した場合でも、アクセス
装置は、このパーティションテーブルを参照することに
より、ユーザ領域を確実にアクセスすることができる。

【図面の簡単な説明】

【図1】半導体メモリカードの外観形状を示す図であ
る。

【図2】(a)(b)アクセス装置の外観を示す図であ
る。

【図3】(a)半導体メモリカード及びアクセス装置の
内部構成を示す図である。 (b)アクセス装置にて用いられるソフトウェアのレイ
ヤモデルを示す図である。

【図4】不揮発メモリ1がISO/IEC9293に準じたフォー
マットでデータ格納を行う際のフォーマットを示した図
である。

【図5】ボリューム領域に含まれるパーティション管理
領域と、システム領域と、ユーザ領域の構成を示す図で
ある。

【図6】(a)マスタブートレコード&パーティション
テーブルセクタの構成を表した図である。 (b)パーティションブートセクタの構成を示す図であ
る。

【図7】(a)二重化FATの構成を示す図である。 (b)ルートディレクトリエントリの構成を示す図であ
る。 (c)ユーザ領域の構成を示す図である。

【図8】ファイル格納方式の一例を示す図である。

【図9】AOB001.SA1が複数のクラスタに記録されている
場合のディレクトリエントリー及びFATについての設定
例を示す図である。

【図10】(a)消去可能ブロックと、クラスタとの関
係を示す図である。 (b)n=1と定められた場合のクラスタを示す図であ
る。 (c)n=16と定められた場合のクラスタを示す図であ
る。

【図11】(a)s個の消去可能ブロックのうち、m個の
クラスタをボリューム管理情報の記録に割り当てる場合
を想定した図である。 (b)n=1と設定された場合、ボリューム管理情報の記
録にどれだけのクラスタが割り当てられるかを示す図で
ある。 (c)n=16と設定された場合、ボリューム管理情報の記
録にどれだけのクラスタを割り当てるかを示す図であ
る。

【図12】数式11、数式12で算出された大きさで、パー
ティション管理領域と、システム領域と、クラスタを作
図して得られた図である。

【図13】ボリューム領域の初期化手順を示したフロー
チャートである。

【図14】第2実施形態に係るアクセス装置及び半導体
メモリカードの構成を示す図である。

【図15】セキュア処理部11の内部構成を示す図であ
る。

【図16】プロテクト領域が設けられたボリューム領域
を詳細に示した図である。

【図17】ユーザデータ領域におけるレイアウトの一例
を示す図である。

【図18】プロテクト領域のレイアウトの一例を示す図
である。

【図19】第3実施形態に係るアクセス制御部2の内部
構成を示す図である。

【図20】(a)〜(d)消去可能ブロックの書き換え
が行われる際の一連の手順を示す図である。

【図21】第3実施形態に係るファイルシステム操作部
9の内部構成を示す図である。

【図22】第3実施形態に係る先行消去制御部29によ
る処理手順を詳細に表したフローチャートである。

【図23】(a)(b)第3実施形態に係る消去可能ブ
ロックの消去手順を示す図である。

【図24】第4実施形態におけるアクセス制御部2の内
部構成を示す図である。

【図25】第4実施形態に係るファイルシステム操作部
9による処理手順を詳細に表したフローチャートであ
る。

【図26】(a)(b)第4実施形態に係る消去可能ブ
ロックの消去手順を示す図である。

【図27】フラグメンテーションの有無がコマンド発行
の際のオーバーヘッドとどのような因果関係にあるかを
示す図である。

【図28】論理アドレスのフラグメーション解消処理の
処理手順を示す図である。

【図29】(a)〜(d)図28のフローチャートにお
いて、示さていれる変数s、変数t、変数u、変数v、変数
yが具体的にどのようなモデルを想定しているかを示す
図である。

【図30】第5実施形態におけるフラグメーションの解
消がどのように行われるかを示す図である。

【図31】UDFのImplementation Use Extended Attribu
teを用いて規定された新たな拡張属性を示す図である。

【図32】代替領域が設けられた半導体メモリカードの
内部構成を示す図である。

【図33】第6実施形態に係る半導体メモリカードの内
部構成を示す図である。

【図34】第7実施形態に係るファイルシステム操作部
9の処理内容を示す説明図である。

【図35】物理層、ISO9293に準じたファイルシステム
層、応用層からなるレイヤモデルを示す図である。

【図36】物理層、ファイルシステム層のフォーマット
を示す図である。

【図37】物理層、ファイルシステム層のフォーマット
を示す図である。

【図38】ボリューム管理情報の終端部分と、ユーザ領
域の先頭に位置するクラスタとが同じ消去可能ブロック
に配置された状態のボリューム領域のレイアウトを示す
図である。

【符号の説明】

1 不揮発メモリ 2 アクセス制御部 3 ワークメモリ 4 カードコネクタ 5 二次記憶装置 7 一次記憶装置 8 アプリケーションプログラム 9 ファイルシステム操作部 10 デバイスドライバ 11 セキュア処理部 13 システム領域 14 Hidden領域 15 AKE処理部 16 Ks復号化部 17 Ks暗号化部 21 コマンド解読部 22 物理アドレス変換部 23 読出制御部 24 割当変更部 25 書込制御部 26 消去制御部 27 書換制御部 28 ファイル削除部 29 先行消去制御部 100 半導体メモリカード 101 プロテクトスイッチ

───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G06F 12/14 320 G06F 12/14 320A

Claims (25)

    【特許請求の範囲】
  1. 【請求項1】 複数のセクタからなり、それら複数のセ
    クタのうち連続する2のi乗個のセクタ(iは、0以上の整
    数)がデータ消去の最小単位であるブロックとしてグル
    ープ化されているメモリ領域を有する半導体メモリカー
    ドにおいて、 複数のセクタのうち2のj乗個のセクタ(jは、0以上の整
    数)に格納されるデータ群をクラスタとして管理し、1
    つ以上のクラスタをファイルとして管理することによ
    り、ファイルアクセスを実現するアクセス装置であっ
    て、 前記メモリ領域において管理されるべきクラスタ数に基
    づいて、同一ファイルとして管理される前記クラスタ間
    のリンク関係をファイル毎に示すファイルアロケーショ
    ンテーブルのデータサイズを算出し、ファイルアロケー
    ションテーブルを含むボリューム管理情報のデータサイ
    ズを算出する算出手段と、 算出されたボリューム管理情報のデータサイズを上回
    り、尚且つ、m×2のj乗個のセクタからなる第1領域を
    (mは、1以上の整数)、ボリューム管理情報の記録のため
    に確保し、第1領域に後続するセクタからなる第2領域
    を、ユーザデータの記録のために確保する確保手段と、 確保された第1領域にボリューム管理情報を記録し、第
    2領域にユーザデータを記録して、これらをクラスタと
    して管理する記録手段とを備えることを特徴とするアク
    セス装置。
  2. 【請求項2】 前記ボリューム管理情報は、前記ファイ
    ルアロケーションテーブルの他に、マスタブートレコー
    ド、パーティションテーブル、パーティションブートセ
    クタ、及びルートディレクトリエントリを含み、 前記記録手段は、 マスタブートレコード及びパーティションテーブルを第
    1領域における先頭セクタに記録すると共に、先頭セク
    タから所定のセクタ数だけ隔てて、パーティションブー
    トセクタ、ファイルアロケーションテーブル、ルートデ
    ィレクトリエントリを記録することにより、第1領域の
    末尾とルートディレクトリエントリの末尾とを一致させ
    ることを特徴とする請求項1記載のアクセス装置。
  3. 【請求項3】 前記算出手段は、 パーティションブートセクタの記録に必要なセクタ数
    と、ファイルアロケーションテーブルの記録に必要なセ
    クタ数と、ルートディレクトリエントリの記録に必要な
    セクタ数との総和SUMを算出し、 前記確保手段は、以下の{数式1}に基づき数値mを算出
    して、第1領域の確保を行い、 前記記録手段は、以下の{数式1}を満たすセクタ数NUMか
    ら、先頭セクタのセクタ数を引き、これにより得られた
    数値を前記所定のセクタ数として算出する {数式1} NUM+SUM = 2のj乗×m ことを特徴とする請求項2記載のアクセス装置。
  4. 【請求項4】 前記記録手段は、ボリューム管理情報の
    記録にあたって、セクタ数NUMから、1を引いたセクタ数
    を、パーティションテーブルに設定することを特徴とす
    る請求項3記載のアクセス装置。
  5. 【請求項5】 前記ファイルアロケーションテーブル
    は、前記複数のセクタに格納され得る複数クラスタの総
    数に相等しい数のエントリーからなり、各エントリー
    は、同一ファイルとして管理されるクラスタ間のリンク
    関係を示し、 前記アクセス装置は更に、 メモリ領域における総セクタ数の設定を受け付ける受付
    手段を備え、 前記算出手段は、 受け付けた総セクタ数を、クラスタに対応する2のj乗個
    のセクタ数で割ることにより、総クラスタ数を算出し、
    算出された総クラスタ数にエントリー1つ当たりのビッ
    ト長を乗ずることにより、ファイルアロケーションテー
    ブルのサイズを算出する第1算出部を備え、 前記確保手段は算出されたファイルアロケーションテー
    ブルのサイズと、パーティションブートセクタを構成す
    るセクタ数と、ルートディレクトリエントリを構成する
    セクタ数との総和SUMを前記{数式1}に適用することに
    より、数値mを算出する第2算出部を備えることを特徴
    とする請求項3記載のアクセス装置。
  6. 【請求項6】 前記メモリ領域には、 半導体メモリカードと接続している機器の正当性が認証
    された場合のみ、当該機器によりアクセスされるプロテ
    クト領域と、 機器の正当性が認証されるか否かに拘らず、当該機器に
    よりアクセスされるユーザデータ領域とが存在し、 前記受付手段は、 プロテクト領域及びユーザデータ領域のそれぞれに割り
    当てるべき、総セクタ数の設定をアクセス装置外部から
    受け付けて、 前記第1算出部は、 プロテクト領域及びユーザデータ領域のそれぞれについ
    ての総セクタ数の設定に基づいて、それらの領域におけ
    るファイルアロケーションテーブルのサイズを算出し、 前記第2算出部は、 プロテクト領域及びユーザデータ領域のそれぞれについ
    て算出されたファイルアロケーションテーブルのサイズ
    と、パーティションブートセクタを構成するセクタ数
    と、ルートディレクトリエントリを構成するセクタ数と
    の総和SUMを前記{数式1}に適用することにより、プロ
    テクト領域及びユーザデータ領域のそれぞれについての
    数値mを算出することを特徴とする請求項5記載のアク
    セス装置。
  7. 【請求項7】 前記記録手段は、 ユーザデータを第2領域に記録するにあたって、前記ユ
    ーザデータを複数に分割することにより得られた複数の
    分割部分を、複数のクラスタとして第2領域に記録する
    処理(1)と、 前記複数のクラスタ間のリンク関係を示す複数のエント
    リーをファイルアロケーションテーブルに設定する処理
    (2)と、 前記ファイルについてのファイル名と、そのファイルを
    構成するクラスタのうち、先頭のものの所在を示す位置
    情報とを前記ルートディレクトリエントリに記録する処
    理(3)とを行うことを特徴とする請求項2記載のアクセ
    ス装置。
  8. 【請求項8】 前記確保手段は更に、第1領域と、第2
    領域とは別に予備領域をメモリ領域に確保し、 前記記録手段は、 第2領域に記録されたユーザデータを拡張属性が設定さ
    れたファイルとして管理する際、予備領域に、当該拡張
    属性を示す属性情報を記録することを特徴とする請求項
    1記載のアクセス装置。
  9. 【請求項9】 前記半導体メモリカードは更に、複数の
    ブロックのそれぞれに対応づけられた複数の属性エント
    リーからなる属性テーブルを保持しており、 第2領域に記録されたユーザデータは、書込禁止属性が
    設定されたファイルを構成する1つ以上のクラスタとし
    て管理されており、 前記記録手段は、 前記属性テーブルにおける複数の属性エントリーのう
    ち、当該クラスタを格納する2のj乗個のセクタのみから
    なるブロックに対応するものに、書き込み禁止属性を設
    定することを特徴とする請求項1記載のアクセス装置。
  10. 【請求項10】 前記ボリューム管理情報は、ファイル
    アロケーションテーブルを含み、 前記ファイルアロケーションテーブルは、未使用のクラ
    スタに対応するエントリーが、第1の値が設定され、使
    用中のクラスタに対するエントリーが、第1の値以外の
    値が設定され、 前記半導体メモリカードは更に、 メモリ領域に含まれる複数のブロックのうち、消去済み
    ブロックを特定する物理アドレスからなる消去済みフリ
    ーリストを保持しており、 前記アクセス装置はファイルアロケーションテーブルに
    おいて未使用と設定されているクラスタを格納する2のj
    乗個のセクタのみを含むブロックであって、消去済みフ
    リーテーブルにおいて未消去と設定されているものを特
    定する特定手段と特定された消ブロックを消去する消去
    手段とを備えることを特徴とする請求項1記載のアクセ
    ス装置。
  11. 【請求項11】 前記ファイルアロケーションテーブル
    の複数のエントリーのうち未使用のクラスタに対応する
    ものは、第1の値が設定され、使用中のクラスタに対す
    るエントリーには、第1の値以外の値が設定され、 半導体メモリカードは、各ブロックに対応づけられたエ
    ントリーとからなる消去済みフリーテーブルを保持し、 各エントリーは、各ブロックが消去済みであるか、未消
    去であるかを示し、 前記アクセス装置はファイルアロケーションテーブルに
    おいて未使用と設定されているクラスタを格納する2のj
    乗個のセクタのみを含むブロックであって、消去済みフ
    リーテーブルにおいて未消去と設定されているものを特
    定する特定手段と、 特定されたブロックを消去する消去手段とを備えること
    を特徴とする請求項1記載のアクセス装置。
  12. 【請求項12】 前記各ブロックには、ユーザデータを
    分割することにより得られた複数の分割部分が格納さ
    れ、 前記半導体メモリカードは、複数の分割部分が格納され
    たブロックに付された物理アドレスと、論理アドレスと
    の対応関係を示すテーブルを保持しており、 前記アクセス装置はテーブルにおいて各分割部分を格納
    した複数ブロックについての複数の物理アドレスが、不
    連続な複数の論理アドレスに割り当てられている場合、
    これら複数ブロックについての複数の物理アドレスに、
    連続する複数の論理アドレスを割り当てる割当手段と、 連続する複数の論理アドレスのうち、先頭のものを指定
    した読出コマンドを半導体メモリカードに発行すること
    により、連続する複数の論理アドレスが割り当てられた
    複数のブロックから、分割部分を読み出すコマンド発行
    手段とを備えることを特徴とする請求項1記載のアクセ
    ス装置。
  13. 【請求項13】 複数のセクタからなり、それら複数の
    セクタのうち連続する2のi乗個のセクタ(iは、0以上の
    整数)がデータ消去の最小単位であるブロックとしてグ
    ループ化されているメモリ領域を有する半導体メモリカ
    ードにおいて、 複数のセクタのうち2のj乗個のセクタ(jは、0以上の整
    数)に格納されるデータ群をクラスタとして管理し、1
    つ以上のクラスタをファイルとして管理することによ
    り、ファイルアクセスを実現するコンピュータに、初期
    化処理を行わせる初期化プログラムをコンピュータ読取
    可能な形式で記録している記録媒体であって、 前記メモリ領域において管理されるべきクラスタ数に基
    づいて、同一ファイルとして管理される前記クラスタ間
    のリンク関係をファイル毎に示すファイルアロケーショ
    ンテーブルのデータサイズを算出し、ファイルアロケー
    ションテーブルを含むボリューム管理情報のデータサイ
    ズを算出する算出ステップと、 算出されたボリューム管理情報のデータサイズを上回
    り、尚且つ、m×2のj乗個のセクタからなる第1領域を
    (mは、1以上の整数)、ボリューム管理情報の記録のため
    に確保し、第1領域に後続するセクタからなる第2領域
    を、ユーザデータの記録のために確保する確保ステップ
    と、 確保された第1領域にボリューム管理情報を記録し、第
    2領域にユーザデータを記録する記録ステップとからな
    る手順をコンピュータに行せる初期化プログラムが記録
    されていることを特徴とするコンピュータ読取可能な記
    録媒体。
  14. 【請求項14】 前記ボリューム管理情報は、前記ファ
    イルアロケーションテーブルの他に、マスタブートレコ
    ード、パーティションテーブル、パーティションブート
    セクタ、及びルートディレクトリエントリを含み、 前記記録ステップは、 マスタブートレコード及びパーティションテーブルを第
    1領域における先頭セクタに記録すると共に、先頭セク
    タから所定のセクタ数だけ隔てて、パーティションブー
    トセクタ、ファイルアロケーションテーブル、ルートデ
    ィレクトリエントリを記録することにより、第1領域の
    末尾とルートディレクトリエントリの末尾とを一致させ
    ることを特徴とする請求項13記載のコンピュータ読取
    可能な記録媒体。
  15. 【請求項15】 前記算出ステップは、 パーティションブートセクタの記録に必要なセクタ数
    と、ファイルアロケーションテーブルの記録に必要なセ
    クタ数と、ルートディレクトリエントリの記録に必要な
    セクタ数との総和SUMを算出し、 前記確保ステップは、以下の{数式1}に基づき数値mを
    算出して、第1領域の確保を行い、 前記記録ステップは、以下の{数式1}を満たすセクタ数N
    UMから、先頭セクタのセクタ数を引き、これにより得ら
    れた数値を前記所定のセクタ数として算出する {数式1} NUM+SUM = 2のj乗×m ことを特徴とする請求項14記載のコンピュータ読取可
    能な記録媒体。
  16. 【請求項16】 前記記録ステップは、ボリューム管理
    情報の記録にあたって、セクタ数NUMから、1を引いたセ
    クタ数を、パーティションテーブルに設定することを特
    徴とする請求項15記載のコンピュータ読取可能な記録
    媒体。
  17. 【請求項17】 前記ファイルアロケーションテーブル
    は、前記複数のセクタに格納され得る複数クラスタの総
    数に相等しい数のエントリーからなり、各エントリー
    は、同一ファイルとして管理されるクラスタ間のリンク
    関係を示し、 前記初期化プログラムは更に、 メモリ領域における総セクタ数の設定を受け付ける受付
    ステップを有し、 前記算出ステップは、 受け付けた総セクタ数を、クラスタに対応する2のj乗個
    のセクタ数で割ることにより、総クラスタ数を算出し、
    算出された総クラスタ数にエントリー1つ当たりのビッ
    ト長を乗ずることにより、ファイルアロケーションテー
    ブルのサイズを算出する第1算出サブステップを有し、 前記確保ステップは算出されたファイルアロケーション
    テーブルのサイズと、パーティションブトセクタを構成
    するセクタ数と、ルートディレクトリエントリを構成す
    るセクタ数との総和SUMを前記{数式1}に適用すること
    により、数値mを算出する第2算出サブステップからな
    ることを特徴とする請求項15記載のコンピュータ読取
    可能な記録媒体。
  18. 【請求項18】 前記メモリ領域には、 半導体メモリカードと接続している機器の正当性が認証
    された場合のみ、当該機器によりアクセスされるプロテ
    クト領域と、 機器の正当性が認証されるか否かに拘らず、当該機器に
    よりアクセスされるユーザデータ領域とが存在し、 前記受付ステップは、 プロテクト領域及びユーザデータ領域のそれぞれに割り
    当てるべき、総セクタ数の設定をコンピュータ外部から
    受け付けて、 前記第1算出サブステップは、 プロテクト領域及びユーザデータ領域のそれぞれについ
    ての総セクタ数の設定に基づいて、それらの領域におけ
    るファイルアロケーションテーブルのサイズを算出し、 前記第2算出サブステップは、 プロテクト領域及びユーザデータ領域のそれぞれについ
    て算出されたファイルアロケーションテーブルのサイズ
    と、パーティションブートセクタを構成するセクタ数
    と、ルートディレクトリエントリを構成するセクタ数と
    の総和SUMを前記{数式1}に適用することにより、プロ
    テクト領域及びユーザデータ領域のそれぞれについての
    数値mを算出することを特徴とする請求項17記載のコ
    ンピュータ読取可能な記録媒体。
  19. 【請求項19】 複数のセクタからなり、それら複数の
    セクタのうち連続する2のi乗個のセクタ(iは、0以上の
    整数)がデータ消去の最小単位であるブロックとしてグ
    ループ化されているメモリ領域を有する半導体メモリカ
    ードにおいて、 複数のセクタのうち2のj乗個のセクタ(jは、0以上の整
    数)に格納されるデータ群をクラスタとして管理し、1
    つ以上のクラスタをファイルとして管理することによ
    り、ファイルアクセスを実現するコンピュータに、初期
    化処理を行わせる初期化方法であって、 前記メモリ領域において管理されるべきクラスタ数に基
    づいて、同一ファイルとして管理される前記クラスタ間
    のリンク関係をファイル毎に示すファイルアロケーショ
    ンテーブルのデータサイズを算出し、ファイルアロケー
    ションテーブルを含むボリューム管理情報のデータサイ
    ズを算出する算出ステップと、 算出されたボリューム管理情報のデータサイズを上回
    り、尚且つ、m×2のj乗個のセクタからなる第1領域を
    (mは、1以上の整数)、ボリューム管理情報の記録のため
    に確保し、第1領域に後続するセクタからなる第2領域
    を、ユーザデータの記録のために確保する確保ステップ
    と、 確保された第1領域にボリューム管理情報を記録し、第
    2領域にユーザデータを記録する記録ステップととから
    なることを特徴とする初期化方法。
  20. 【請求項20】 複数のセクタからなり、それら複数の
    セクタのうち連続する2のi乗個のセクタ(iは、0以上の
    整数)がデータ消去の最小単位であるブロックとしてグ
    ループ化されているメモリ領域を有していて、、 複数のセクタのうち2のj乗個のセクタ(jは、0以上の整
    数)に格納されるデータ群がクラスタとして管理され、
    1つ以上のクラスタがファイルとして管理されている半
    導体メモリカードであって、 m×2のj乗個のセクタからなり、ボリューム管理情報の
    記録のために確保されている第1領域と、 第1領域に後続するセクタからなり、ユーザデータが記
    録されている第2領域とを含み、 前記ボリューム管理情報は、ファイルアロケーションテ
    ーブルを含み、前記ファイルアロケーションテーブル
    は、同一ファイルとして管理される前記クラスタ間のリ
    ンク関係をファイル毎に示していることを特徴とする半
    導体メモリカード。
  21. 【請求項21】 前記ボリューム管理情報は、 前記ファイルアロケーションテーブルの他に、マスタブ
    ートレコード、パーティションテーブル、パーティショ
    ンブートセクタ、及びルートディレクトリエントリを含
    み、 前記マスタブートレコード及びパーティションテーブル
    は、第1領域における先頭セクタに記録され、パーティ
    ションブートセクタ、ファイルアロケーションテーブ
    ル、ルートディレクトリエントリは、先頭セクタから所
    定のセクタ数だけ隔てて記録されており、第1領域の末
    尾とルートディレクトリエントリの末尾とが一致してい
    ることを特徴とする請求項20記載の半導体メモリカー
    ド。
  22. 【請求項22】 前記半導体メモリカードは更に、複数
    のブロックのそれぞれに対応づけられた複数の属性エン
    トリーからなる属性テーブルを保持しており、 第2領域に記録されたユーザデータは、書込禁止属性が
    設定されたファイルを構成する1つ以上のクラスタとし
    て管理されており、 前記属性テーブルにおける複数の属性エントリーのう
    ち、当該クラスタを格納する2のj乗個のセクタのみから
    なるブロックに対応するものに、書き込み禁止属性が設
    定されていることを特徴とする請求項20記載の半導体
    メモリカード。
  23. 【請求項23】 メモリ領域を有する半導体メモリカー
    ドであって、 前記メモリ領域には、半導体メモリカー
    ドと接続している機器の正当性が認証された場合のみ、
    当該機器によりアクセスされるプロテクト領域と、 機器の正当性が認証されるか否かに拘らず、当該機器に
    よりアクセスされるユーザデータ領域とが割り当てら
    れ、 プロテクト領域及びユーザデータ領域は、複数のセクタ
    からなり、それら複数のセクタのうち連続する2のi乗個
    のセクタ(iは、0以上の整数)がデータ消去の最小単位で
    あるブロックとしてグループ化されていて、 複数のセクタのうち2のj乗個のセクタ(jは、0以上の整
    数)に格納されるデータ群がクラスタとして管理され、
    1つ以上のクラスタがファイルとして管理されており、 前記プロテクト領域及びユーザデータ領域のうち少なく
    とも1つは、 m×2のj乗個のセクタからなり、ボリューム管理情報の
    記録のために確保されている第1領域と、 第1領域に後続するセクタからなり、ユーザデータが記
    録されている第2領域とを備え、 前記ボリューム管理情報は、ファイルアロケーションテ
    ーブルを含み、ファイルアロケーションテーブルは、同
    一ファイルとして管理される前記クラスタ間のリンク関
    係をファイル毎に示していることを特徴とする半導体メ
    モリカード。
  24. 【請求項24】 前記ボリューム管理情報は、 前記ファイルアロケーションテーブルの他に、マスタブ
    ートレコード、パーティションテーブル、パーティショ
    ンブートセクタ、及びルートディレクトリエントリを含
    み、 前記マスタブートレコード及びパーティションテーブル
    は、第1領域における先頭セクタに記録され、パーティ
    ションブートセクタ、ファイルアロケーションテーブ
    ル、ルートディレクトリエントリは、先頭セクタから所
    定のセクタ数だけ隔てて記録されており、第1領域の末
    尾とルートディレクトリエントリの末尾とが一致してい
    ることを特徴とする請求項23記載の半導体メモリカー
    ド。
  25. 【請求項25】 前記半導体メモリカードは更に、複数
    のブロックのそれぞれに対応づけられた複数の属性エン
    トリーからなる属性テーブルを保持しており、 第2領域に記録されたユーザデータは、書込禁止属性が
    設定されたファイルを構成する1つ以上のクラスタとし
    て管理されており、 前記属性テーブルにおける複数の属性エントリーであっ
    て、当該クラスタを格納する2のj乗個のセクタのみから
    なるブロックに対応するものに、書き込み禁止属性が設
    定されていることを特徴とする請求項23記載の半導体
    メモリカード。
JP2000321738A 1999-10-21 2000-10-20 半導体メモリカードについてのアクセス装置、コンピュータ読取可能な記録媒体、及び初期化方法。 Active JP3954790B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP11-299636 1999-10-21
JP29963699 1999-10-21
JP2000321738A JP3954790B2 (ja) 1999-10-21 2000-10-20 半導体メモリカードについてのアクセス装置、コンピュータ読取可能な記録媒体、及び初期化方法。

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000321738A JP3954790B2 (ja) 1999-10-21 2000-10-20 半導体メモリカードについてのアクセス装置、コンピュータ読取可能な記録媒体、及び初期化方法。

Publications (2)

Publication Number Publication Date
JP2001188701A true JP2001188701A (ja) 2001-07-10
JP3954790B2 JP3954790B2 (ja) 2007-08-08

Family

ID=17875164

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000321738A Active JP3954790B2 (ja) 1999-10-21 2000-10-20 半導体メモリカードについてのアクセス装置、コンピュータ読取可能な記録媒体、及び初期化方法。

Country Status (9)

Country Link
US (14) US6611907B1 (ja)
EP (2) EP1498810B1 (ja)
JP (1) JP3954790B2 (ja)
CN (2) CN1203395C (ja)
BR (1) BR0007239B1 (ja)
CA (1) CA2355082C (ja)
DE (1) DE60017870T2 (ja)
RU (1) RU2257609C2 (ja)
WO (1) WO2001029670A2 (ja)

Cited By (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003088043A1 (fr) * 2002-04-15 2003-10-23 Sony Corporation Appareil de stockage de donnees
WO2003088044A1 (fr) * 2002-04-15 2003-10-23 Sony Corporation Dispositif de stockage de donnees
US6829675B2 (en) * 1999-10-21 2004-12-07 Matsushita Electric Industrial Co., Ltd. Semiconductor memory card access apparatus, a computer-readable recording medium, an initialization method, and a semiconductor memory card
JP2005338897A (ja) * 2004-05-24 2005-12-08 Matsushita Electric Ind Co Ltd 不揮発性記憶装置および不揮発性メモリの消去方法と書込み方法
JP2006023854A (ja) * 2004-07-06 2006-01-26 Sharp Corp 情報処理装置、記憶装置、記憶制御装置及びプログラム
JP2006146505A (ja) * 2004-11-18 2006-06-08 Canon Inc 記憶管理装置及び記憶管理方法
WO2006068190A1 (ja) * 2004-12-22 2006-06-29 Matsushita Electric Industrial Co., Ltd. 電子機器、フォーマット判別システム、フォーマット判別方法
JP2007026097A (ja) * 2005-07-15 2007-02-01 Matsushita Electric Ind Co Ltd データ記録制御方法及びデータ記録システム
US7303135B2 (en) 2003-02-04 2007-12-04 Matsushita Electric Industrial Co., Ltd. Semiconductor memory card and computer readable program
JP2008022100A (ja) * 2006-07-11 2008-01-31 Sharp Corp 録画再生装置
US7328458B2 (en) 2001-08-22 2008-02-05 Sony Corporation Authoring system, authoring key generator, authoring device, authoring method, and data supply device, information terminal and information distribution method
WO2008016081A1 (en) * 2006-08-04 2008-02-07 Panasonic Corporation Memory controller, nonvolatile memory device, access device, and nonvolatile memory system
WO2008018446A1 (fr) * 2006-08-08 2008-02-14 Panasonic Corporation Contrôleur de mémoire, dispositif de mémoire non-volatile, dispositif d'accès, et système de mémoire non-volatile
WO2008032621A1 (en) * 2006-09-12 2008-03-20 Panasonic Corporation Memory controller, nonvolatile storage device and nonvolatile storage system
WO2008032711A1 (fr) * 2006-09-13 2008-03-20 Panasonic Corporation Contrôleur mémoire, dispositif de stockage non volatil, dispositif d'accès et système de stockage non volatil
US7426333B2 (en) 2002-04-03 2008-09-16 Sony Corporation Recording apparatus and method, recording medium and program
US7526625B2 (en) 2003-01-31 2009-04-28 Panasonic Corporation Semiconductor memory card, and program for controlling the same
WO2009096180A1 (ja) * 2008-01-30 2009-08-06 Panasonic Corporation メモリコントローラ、不揮発性記憶装置、及び、不揮発性記憶システム
US7610434B2 (en) 2003-11-18 2009-10-27 Panasonic Corporation File recording apparatus
JP2010183571A (ja) * 2005-01-07 2010-08-19 Apple Inc 電子デバイスのためのアクセサリ認証
JP2011118623A (ja) * 2009-12-02 2011-06-16 Canon Inc データ同期装置
US8019800B2 (en) 2008-04-04 2011-09-13 Panasonic Corporation Access device, information recording device, information recording system, file management method, and program
JP2012074050A (ja) * 2005-03-31 2012-04-12 Canon Inc 画像処理装置、画像処理装置の制御方法及びコンピュータプログラム
JP2012515955A (ja) * 2009-01-21 2012-07-12 マイクロン テクノロジー, インク. 固体メモリフォーマッティング
US8370611B2 (en) 2007-03-14 2013-02-05 Samsung Electronics Co., Ltd. Memory card, memory system including the same, and operating method thereof
WO2015121938A1 (ja) * 2014-02-13 2015-08-20 株式会社日立製作所 データ管理装置及び方法
US9152431B2 (en) 2011-05-23 2015-10-06 Nec Infrontia Corporation Computer and computer control method

Families Citing this family (160)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100566466B1 (ko) * 1995-01-31 2006-03-31 가부시끼가이샤 히다치 세이사꾸쇼 반도체 메모리 장치
JP4079506B2 (ja) * 1997-08-08 2008-04-23 株式会社東芝 不揮発性半導体メモリシステムの制御方法
US7321783B2 (en) * 1997-04-25 2008-01-22 Minerva Industries, Inc. Mobile entertainment and communication device
US20040157612A1 (en) * 1997-04-25 2004-08-12 Minerva Industries, Inc. Mobile communication and stethoscope system
US6993130B1 (en) * 2000-02-04 2006-01-31 Xtec, Incorporated Methods and apparatus for mediametric data cryptoprocessing
JP2002268874A (ja) * 2001-03-07 2002-09-20 Toshiba Corp 乱数シード生成回路及びこれを備えたドライバ、並びに、sdメモリカードシステム
KR100859922B1 (ko) 2001-07-05 2008-09-23 마츠시타 덴끼 산교 가부시키가이샤 기록장치, 기록매체, 기록방법
TW516000B (en) * 2001-09-12 2003-01-01 Winbond Electronics Corp Method for security protection of digital processing device and apparatus thereof
GB2411499B (en) * 2001-09-28 2006-02-08 Lexar Media Inc Method of writing data to non-volatile memory
PL351779A1 (en) * 2002-01-18 2003-07-28 Advanced Digital Broadcast Ltd Apparatus for storing data and method of subdividing te data storage area
JP4082913B2 (ja) * 2002-02-07 2008-04-30 株式会社ルネサステクノロジ メモリシステム
US7206970B1 (en) * 2002-02-07 2007-04-17 Network Appliance, Inc. System and method for diagnostics execution and data capture in a storage system using nonvolatile memory
JP3970070B2 (ja) * 2002-03-20 2007-09-05 富士通株式会社 自動イレーズ機能を有する不揮発性メモリ回路
EP1494232A4 (en) * 2002-04-05 2009-07-01 Panasonic Corp Recording medium
JP3866635B2 (ja) * 2002-08-26 2007-01-10 株式会社東芝 メモリカード及び記憶領域切り替え方法
DE60318477T2 (de) * 2002-10-17 2008-04-30 Matsushita Electric Industrial Co., Ltd., Kadoma Vorrichtung zur dateiaktualisierung
WO2004042584A2 (en) * 2002-11-07 2004-05-21 Koninklijke Philips Electronics N.V. Method and device for persistent-memory management
US7213119B2 (en) * 2002-12-05 2007-05-01 Canon Kabushiki Kaisha Inhibiting access to a portable storage device
US20050015557A1 (en) * 2002-12-27 2005-01-20 Chih-Hung Wang Nonvolatile memory unit with specific cache
KR101149593B1 (ko) * 2003-06-19 2012-05-30 코닌클리케 필립스 일렉트로닉스 엔.브이. 범용 저장 장치를 위한 유연성 있는 포맷팅
EP1498841B1 (fr) * 2003-07-14 2010-03-24 EM Microelectronic-Marin SA Circuit transpondeur multi-applications et procédé de gestion de la mémoire d'un tel circuit transpondeur
US7941554B2 (en) 2003-08-01 2011-05-10 Microsoft Corporation Sparse caching for streaming media
US20050027954A1 (en) * 2003-08-01 2005-02-03 Rothman Michael A. Method and apparatus to support the maintenance and reduction of FLASH utilization as it pertains to unused or infrequently referenced FLASH data
US7882510B2 (en) * 2003-08-06 2011-02-01 Microsoft Corporation Demultiplexer application programming interface
EP1538507A1 (fr) * 2003-12-02 2005-06-08 Axalto S.A. Procédé de contrôle d'acces dans une memoire flash et systeme pour la mise en oeuvre d'un tel procédé
US20050152251A1 (en) * 2004-01-08 2005-07-14 Victor Company Of Japan, Ltd. Method and apparatus for recording check data of file system on recording medium
JP2005222201A (ja) * 2004-02-04 2005-08-18 Matsushita Electric Ind Co Ltd メモリアクセス装置、及び半導体メモリカード
US20050182822A1 (en) * 2004-02-17 2005-08-18 Daniel Stuart W. Imaging device with memory device interface
EP1733555A4 (en) 2004-02-23 2009-09-30 Lexar Media Inc Secure compact flash
KR100648243B1 (ko) * 2004-03-19 2006-11-24 삼성전자주식회사 낸드 플래시 메모리를 사용하는 메모리 카드
US20050257017A1 (en) * 2004-05-14 2005-11-17 Hideki Yagi Method and apparatus to erase hidden memory in a memory card
SE527843C2 (sv) * 2004-06-03 2006-06-20 Roxtec Ab Brandskydd för kabelgenomföringar
JP2006004079A (ja) 2004-06-16 2006-01-05 Sony Corp 記憶装置
JP4157501B2 (ja) * 2004-06-30 2008-10-01 株式会社東芝 記憶装置
JP2006023957A (ja) * 2004-07-07 2006-01-26 Sony Corp 半導体集積回路及び情報処理装置
US8607016B2 (en) * 2004-07-21 2013-12-10 Sandisk Technologies Inc. FAT analysis for optimized sequential cluster management
US6967869B1 (en) * 2004-07-22 2005-11-22 Cypress Semiconductor Corp. Method and device to improve USB flash write performance
JP4689247B2 (ja) 2004-11-19 2011-05-25 キヤノン株式会社 カメラ及びその制御方法
US8606830B2 (en) 2004-12-17 2013-12-10 Microsoft Corporation Contiguous file allocation in an extensible file system
US8601283B2 (en) 2004-12-21 2013-12-03 Sandisk Technologies Inc. Method for versatile content control with partitioning
US20060242067A1 (en) * 2004-12-21 2006-10-26 Fabrice Jogand-Coulomb System for creating control structure for versatile content control
US8396208B2 (en) * 2004-12-21 2013-03-12 Sandisk Technologies Inc. Memory system with in stream data encryption/decryption and error correction
US20060242150A1 (en) * 2004-12-21 2006-10-26 Fabrice Jogand-Coulomb Method using control structure for versatile content control
US20060242151A1 (en) * 2004-12-21 2006-10-26 Fabrice Jogand-Coulomb Control structure for versatile content control
US20060239450A1 (en) * 2004-12-21 2006-10-26 Michael Holtzman In stream data encryption / decryption and error correction method
US20070180539A1 (en) * 2004-12-21 2007-08-02 Michael Holtzman Memory system with in stream data encryption / decryption
US8504849B2 (en) 2004-12-21 2013-08-06 Sandisk Technologies Inc. Method for versatile content control
EP2278518B1 (en) * 2004-12-21 2012-03-14 SanDisk Corporation Memory system with in-stream data encryption/decryption
US8051052B2 (en) * 2004-12-21 2011-11-01 Sandisk Technologies Inc. Method for creating control structure for versatile content control
US20060242066A1 (en) * 2004-12-21 2006-10-26 Fabrice Jogand-Coulomb Versatile content control with partitioning
US8321686B2 (en) 2005-02-07 2012-11-27 Sandisk Technologies Inc. Secure memory card with life cycle phases
US8423788B2 (en) 2005-02-07 2013-04-16 Sandisk Technologies Inc. Secure memory card with life cycle phases
US8108691B2 (en) 2005-02-07 2012-01-31 Sandisk Technologies Inc. Methods used in a secure memory card with life cycle phases
US20060200414A1 (en) * 2005-02-14 2006-09-07 Roberts Henry A Jr Methods of copy protecting software stored on portable memory
US8724740B2 (en) 2005-03-11 2014-05-13 Qualcomm Incorporated Systems and methods for reducing uplink resources to provide channel performance feedback for adjustment of downlink MIMO channel data rates
US8995547B2 (en) 2005-03-11 2015-03-31 Qualcomm Incorporated Systems and methods for reducing uplink resources to provide channel performance feedback for adjustment of downlink MIMO channel data rates
US7418531B2 (en) * 2005-05-04 2008-08-26 Pillar Data Systems, Inc. Quality of service for data storage volumes
JP4709583B2 (ja) * 2005-05-31 2011-06-22 株式会社東芝 データ送信装置およびデータ送信方法
US7748031B2 (en) 2005-07-08 2010-06-29 Sandisk Corporation Mass storage device with automated credentials loading
US8051268B2 (en) * 2005-07-29 2011-11-01 Panasonic Corporation Memory controller, nonvolatile storage device, nonvolatile storage system, and nonvolatile memory address management method
KR100739722B1 (ko) * 2005-08-20 2007-07-13 삼성전자주식회사 플래시 메모리 관리 방법 및 플래시 메모리 시스템
US20070041457A1 (en) 2005-08-22 2007-02-22 Tamer Kadous Method and apparatus for providing antenna diversity in a wireless communication system
US8073068B2 (en) 2005-08-22 2011-12-06 Qualcomm Incorporated Selective virtual antenna transmission
US7934049B2 (en) 2005-09-14 2011-04-26 Sandisk Corporation Methods used in a secure yet flexible system architecture for secure devices with flash mass storage memory
US8966284B2 (en) 2005-09-14 2015-02-24 Sandisk Technologies Inc. Hardware driver integrity check of memory card controller firmware
JP4808016B2 (ja) * 2005-12-20 2011-11-02 日立オートモティブシステムズ株式会社 マイクロコンピュータの初期化装置および車載用制御装置
US7752391B2 (en) * 2006-01-20 2010-07-06 Apple Inc. Variable caching policy system and method
CN100541490C (zh) 2006-01-24 2009-09-16 凌阳科技股份有限公司 无需回收的目录入口系统及其方法
US20070174641A1 (en) * 2006-01-25 2007-07-26 Cornwell Michael J Adjusting power supplies for data storage devices
US7702935B2 (en) * 2006-01-25 2010-04-20 Apple Inc. Reporting flash memory operating voltages
US7861122B2 (en) * 2006-01-27 2010-12-28 Apple Inc. Monitoring health of non-volatile memory
US20070180186A1 (en) * 2006-01-27 2007-08-02 Cornwell Michael J Non-volatile memory management
US7426606B2 (en) * 2006-03-31 2008-09-16 Intel Corporation Method, apparatus and system for reverting FAT cluster number to file ID and offset of non-FAT flash file system
US20070230690A1 (en) * 2006-04-03 2007-10-04 Reuven Elhamias System for write failure recovery
US7835518B2 (en) * 2006-04-03 2010-11-16 Sandisk Corporation System and method for write failure recovery
JP4229140B2 (ja) * 2006-06-16 2009-02-25 ソニー株式会社 集積回路チップ、データ読み出し方法、データ書き込み方法、icカード、および携帯電話機
CN100593213C (zh) 2006-06-20 2010-03-03 亮发科技股份有限公司 具多重分区的存储装置
JP2008009933A (ja) * 2006-06-30 2008-01-17 Toshiba Corp 記憶装置とその制御方法
US8639939B2 (en) 2006-07-07 2014-01-28 Sandisk Technologies Inc. Control method using identity objects
US20080010458A1 (en) * 2006-07-07 2008-01-10 Michael Holtzman Control System Using Identity Objects
US8613103B2 (en) 2006-07-07 2013-12-17 Sandisk Technologies Inc. Content control method using versatile control structure
US8245031B2 (en) * 2006-07-07 2012-08-14 Sandisk Technologies Inc. Content control method using certificate revocation lists
US8140843B2 (en) 2006-07-07 2012-03-20 Sandisk Technologies Inc. Content control method using certificate chains
US20080022395A1 (en) * 2006-07-07 2008-01-24 Michael Holtzman System for Controlling Information Supplied From Memory Device
US20080010449A1 (en) * 2006-07-07 2008-01-10 Michael Holtzman Content Control System Using Certificate Chains
US8266711B2 (en) * 2006-07-07 2012-09-11 Sandisk Technologies Inc. Method for controlling information supplied from memory device
US20080034440A1 (en) * 2006-07-07 2008-02-07 Michael Holtzman Content Control System Using Versatile Control Structure
WO2008013228A1 (fr) * 2006-07-26 2008-01-31 Panasonic Corporation Contrôleur de mémoire, dispositif de stockage non-volatile, dispositif d'accès et système de stockage non-volatile
WO2008030806A2 (en) 2006-09-06 2008-03-13 Qualcomm Incorporated Codeword permutation and reduced feedback for grouped antennas
TWI325113B (en) * 2006-10-13 2010-05-21 Data security device and the method thereof
US7515500B2 (en) * 2006-12-20 2009-04-07 Nokia Corporation Memory device performance enhancement through pre-erase mechanism
US7818701B1 (en) * 2006-12-22 2010-10-19 Cypress Semiconductor Corporation Memory controller with variable zone size
US20080158388A1 (en) * 2006-12-27 2008-07-03 Tomi Lahcanski Removable storage device providing automatic launch capability in an image processing system
US8423794B2 (en) 2006-12-28 2013-04-16 Sandisk Technologies Inc. Method and apparatus for upgrading a memory card that has security mechanisms for preventing copying of secure content and applications
JP4991320B2 (ja) * 2007-01-12 2012-08-01 株式会社東芝 ホスト装置およびメモリシステム
JP4978224B2 (ja) * 2007-02-08 2012-07-18 カシオ計算機株式会社 光電変換装置及びそれを備えた表示パネル
US20080288712A1 (en) 2007-04-25 2008-11-20 Cornwell Michael J Accessing metadata with an external host
US7913032B1 (en) 2007-04-25 2011-03-22 Apple Inc. Initiating memory wear leveling
US8156257B2 (en) * 2007-08-10 2012-04-10 Panasonic Corporation Removeable medium, formatting device, formatting system, formatting method, and formatting program
KR20090031102A (ko) * 2007-09-21 2009-03-25 삼성전자주식회사 이동식 저장 장치의 포맷 방법 및 장치
US7870351B2 (en) * 2007-11-15 2011-01-11 Micron Technology, Inc. System, apparatus, and method for modifying the order of memory accesses
US8073884B2 (en) * 2007-12-20 2011-12-06 Hewlett-Packard Development Company, L.P. System and method to derive high level file system information by passively monitoring low level operations on a FAT file system
JP5025009B2 (ja) * 2008-02-15 2012-09-12 株式会社東芝 認証方法、ホスト計算機及び記録媒体
US20090254729A1 (en) * 2008-04-07 2009-10-08 Skymedi Corporation Method of wear leveling for a non-volatile memory
CN101324862B (zh) 2008-05-05 2010-06-02 青岛海信电器股份有限公司 闪存存储管理方法
US8074023B2 (en) * 2008-05-22 2011-12-06 Nuvoton Technology Corporation In-system programming to switch memory access from one area to another in memory cards
CN101630233B (zh) 2008-07-17 2012-07-11 群联电子股份有限公司 用于闪存的数据存取方法、储存系统与控制器
TWI406175B (en) * 2008-08-20 2013-08-21 Nuvoton Technology Corp Memory card and method for memory card
TWI476676B (en) * 2008-09-29 2015-03-11 Sandisk Il Ltd File system for storage device which uses different cluster sizes
US9015209B2 (en) 2008-12-16 2015-04-21 Sandisk Il Ltd. Download management of discardable files
US9104686B2 (en) 2008-12-16 2015-08-11 Sandisk Technologies Inc. System and method for host management of discardable objects
US8880776B2 (en) * 2008-12-16 2014-11-04 Sandisk Il Ltd. Data access at a storage device using cluster information
US9020993B2 (en) 2008-12-16 2015-04-28 Sandisk Il Ltd. Download management of discardable files
US9104618B2 (en) 2008-12-18 2015-08-11 Sandisk Technologies Inc. Managing access to an address range in a storage device
US8370603B2 (en) 2008-12-23 2013-02-05 Apple Inc. Architecture for address mapping of managed non-volatile memory
TW201025002A (en) * 2008-12-26 2010-07-01 Asmedia Technology Inc Method of writing data into flash memory based on file system
US8205063B2 (en) * 2008-12-30 2012-06-19 Sandisk Technologies Inc. Dynamic mapping of logical ranges to write blocks
US20100199060A1 (en) * 2009-02-04 2010-08-05 Panasonic Corporation Memory controller, nonvolatile memory module, access module, and nonvolatile memory system
US20100235473A1 (en) * 2009-03-10 2010-09-16 Sandisk Il Ltd. System and method of embedding second content in first content
US8321647B2 (en) * 2009-05-06 2012-11-27 Apple Inc. Multipage preparation commands for non-volatile memory systems
US8438453B2 (en) 2009-05-06 2013-05-07 Apple Inc. Low latency read operation for managed non-volatile memory
US8495332B2 (en) * 2009-07-24 2013-07-23 Apple Inc. Controller for optimizing throughput of read operations
TWI498954B (en) * 2009-08-21 2015-09-01 Sumco Corp Method for manufacturing an epitaxial silicon wafer
US8489907B2 (en) * 2009-09-16 2013-07-16 Apple Inc. Method of selective power cycling of components in a memory device independently by reducing power to a memory array or memory controller
US8838877B2 (en) * 2009-09-16 2014-09-16 Apple Inc. File system derived metadata for management of non-volatile memory
JP5558093B2 (ja) * 2009-12-25 2014-07-23 株式会社東芝 半導体装置及びメモリシステム
KR101467514B1 (ko) * 2010-05-14 2014-12-01 삼성전자 주식회사 사용자 응답 시간을 고려한 메모리 관리 장치 및 방법
JP5460486B2 (ja) * 2010-06-23 2014-04-02 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation データをソートする装置及び方法
US8463802B2 (en) * 2010-08-19 2013-06-11 Sandisk Il Ltd. Card-based management of discardable files
US8549229B2 (en) 2010-08-19 2013-10-01 Sandisk Il Ltd. Systems and methods for managing an upload of files in a shared cache storage system
US20120089765A1 (en) * 2010-10-07 2012-04-12 Huang Shih-Chia Method for performing automatic boundary alignment and related non-volatile memory device
JP2012084071A (ja) 2010-10-14 2012-04-26 Toshiba Corp デジタルコンテンツの保護方法、復号方法、再生装置、記憶媒体、暗号装置
WO2012089069A1 (zh) * 2010-12-29 2012-07-05 厦门松霖科技有限公司 能切换水路和调节流量的阀
EP2492816A1 (en) * 2011-02-25 2012-08-29 Siemens Aktiengesellschaft Method for managing physical memory of a data storage and data storage management system
US8788849B2 (en) 2011-02-28 2014-07-22 Sandisk Technologies Inc. Method and apparatus for protecting cached streams
US9058212B2 (en) * 2011-03-21 2015-06-16 Microsoft Technology Licensing, Llc Combining memory pages having identical content
JP2012208584A (ja) * 2011-03-29 2012-10-25 Toshiba Corp 記憶装置およびプログラム
CN102289451A (zh) * 2011-06-17 2011-12-21 奇智软件(北京)有限公司 文件或文件夹查找方法和装置
CN102314490B (zh) * 2011-08-16 2013-07-10 晨星软件研发(深圳)有限公司 一种Linux FAT文件系统修复方法及装置
US8661527B2 (en) 2011-08-31 2014-02-25 Kabushiki Kaisha Toshiba Authenticator, authenticatee and authentication method
JP5275432B2 (ja) 2011-11-11 2013-08-28 株式会社東芝 ストレージメディア、ホスト装置、メモリ装置、及びシステム
JP5100884B1 (ja) 2011-12-02 2012-12-19 株式会社東芝 メモリ装置
JP5112555B1 (ja) 2011-12-02 2013-01-09 株式会社東芝 メモリカード、ストレージメディア、及びコントローラ
JP5204291B1 (ja) 2011-12-02 2013-06-05 株式会社東芝 ホスト装置、装置、システム
JP5204290B1 (ja) * 2011-12-02 2013-06-05 株式会社東芝 ホスト装置、システム、及び装置
JP5275482B2 (ja) 2012-01-16 2013-08-28 株式会社東芝 ストレージメディア、ホスト装置、メモリ装置、及びシステム
CN103246617B (zh) * 2012-02-07 2016-08-17 宇龙计算机通信科技(深圳)有限公司 移动终端和基于Android系统的数据保存方法
JP5687639B2 (ja) * 2012-02-08 2015-03-18 株式会社東芝 コントローラ、データ記憶装置及びプログラム
US20140229657A1 (en) * 2013-02-08 2014-08-14 Microsoft Corporation Readdressing memory for non-volatile storage devices
US9201811B2 (en) 2013-02-14 2015-12-01 Kabushiki Kaisha Toshiba Device and authentication method therefor
US8984294B2 (en) 2013-02-15 2015-03-17 Kabushiki Kaisha Toshiba System of authenticating an individual memory device via reading data including prohibited data and readable data
US9336131B1 (en) * 2013-04-16 2016-05-10 Veritas Technologies, LLC Systems and methods for enabling virtual environments to mount non-native storage disks
US9678689B2 (en) 2013-05-29 2017-06-13 Microsoft Technology Licensing, Llc Storage systems and aliased memory
JP6213040B2 (ja) * 2013-08-19 2017-10-18 富士通株式会社 半導体記憶装置および半導体記憶装置の制御方法
JP6017392B2 (ja) * 2013-09-27 2016-11-02 株式会社東芝 情報処理装置、ホストデバイス、及びシステム
US9984007B2 (en) 2014-03-28 2018-05-29 Samsung Electronics Co., Ltd. Storage system and method for performing and authenticating write-protection thereof
US10257192B2 (en) 2014-05-29 2019-04-09 Samsung Electronics Co., Ltd. Storage system and method for performing secure write protect thereof
TWI531963B (ja) * 2015-06-04 2016-05-01 Accelstor Inc
CN105303208B (zh) * 2015-10-26 2019-01-25 新大陆数字技术股份有限公司 一种ic卡管理方法及系统
TWI637264B (zh) * 2016-05-20 2018-10-01 慧榮科技股份有限公司 資料儲存裝置之資料頁對齊方法及其查找表的製作方法

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69033438D1 (de) 1989-04-13 2000-03-02 Sandisk Corp Austausch von fehlerhaften Speicherzellen einer EEprommatritze
GB2251324B (en) * 1990-12-31 1995-05-10 Intel Corp File structure for a non-volatile semiconductor memory
WO1993021579A1 (en) * 1992-04-21 1993-10-28 Storage Technology Corporation Method for managing data records in a cached data subsystem with non-volatile memory
JPH07219720A (ja) 1993-10-01 1995-08-18 Hitachi Maxell Ltd 半導体メモリ装置ならびにその制御方法
JPH07225727A (ja) * 1994-02-14 1995-08-22 Fujitsu Ltd 計算機システム
RU2103732C1 (ru) 1995-06-08 1998-01-27 Дьяков Юрий Александрович Устройство для выполнения платежей и услуг с помощью электронной карточки с документированием операций
US6125435A (en) * 1995-09-13 2000-09-26 Lexar Media, Inc. Alignment of cluster address to block addresses within a semiconductor non-volatile mass storage memory
US5867641A (en) * 1995-10-27 1999-02-02 Scm Microsystems (U.S.) Inc. Flash translation layer cleanup system and method
RU2094846C1 (ru) 1996-03-28 1997-10-27 Акционерное общество открытого типа Страховая компания "Росгал" Финансовая система безналичных платежей
JPH10124384A (ja) 1996-08-28 1998-05-15 Toshiba Corp 不揮発性半導体メモリの制御方法
JP4079506B2 (ja) * 1997-08-08 2008-04-23 株式会社東芝 不揮発性半導体メモリシステムの制御方法
US5845322A (en) * 1996-09-17 1998-12-01 Vlsi Technology, Inc. Modular scalable multi-processor architecture
US6182188B1 (en) * 1997-04-06 2001-01-30 Intel Corporation Method of performing reliable updates in a symmetrically blocked nonvolatile memory having a bifurcated storage architecture
JP3588231B2 (ja) 1997-08-04 2004-11-10 東京エレクトロンデバイス株式会社 データ処理システム及びブロック消去型記憶媒体
US6134581A (en) * 1997-10-06 2000-10-17 Sun Microsystems, Inc. Method and system for remotely browsing objects
US6295575B1 (en) * 1998-06-29 2001-09-25 Emc Corporation Configuring vectors of logical storage units for data storage partitioning and sharing
WO2000017874A1 (en) * 1998-09-18 2000-03-30 Kabushiki Kaisha Toshiba Information recording method, information recording device, and information recording medium
US6308264B1 (en) * 1998-09-30 2001-10-23 Phoenix Technologies Ltd. Dual use master boot record
US6278678B1 (en) * 1999-02-12 2001-08-21 Sony Corporation Editing apparatus, editing method, and recording medium
JP3389186B2 (ja) 1999-04-27 2003-03-24 松下電器産業株式会社 半導体メモリカード及び読み出し装置
JP3417889B2 (ja) * 1999-09-20 2003-06-16 克彦 長岡 糞尿処理工程などで用いる台車走行装置
CN1203395C (zh) * 1999-10-21 2005-05-25 松下电器产业株式会社 半导体存储卡的访问装置、计算机可读记录介质、初始化方法和半导体存储卡
US6426893B1 (en) * 2000-02-17 2002-07-30 Sandisk Corporation Flash eeprom system with simultaneous multiple data sector programming and storage of physical block characteristics in other designated blocks
JP2001307334A (ja) * 2000-04-21 2001-11-02 Toshiba Corp 情報記憶媒体、情報記録方法、及び情報再生方法
DE60105490T2 (de) * 2000-05-31 2005-10-20 Matsushita Electric Industrial Co., Ltd., Kadoma Informationsaufzeichnungsmedium, Informationsaufzeichnungsverfahren, Informationsaufzeichnungsgerät, Informationswiedergabeverfahren und Informationswiedergabegerät
KR100859922B1 (ko) * 2001-07-05 2008-09-23 마츠시타 덴끼 산교 가부시키가이샤 기록장치, 기록매체, 기록방법
JP2003196142A (ja) * 2001-12-25 2003-07-11 Sony Corp ライトワンス型メモリ装置及びファイル管理方法
US7123556B2 (en) * 2002-01-22 2006-10-17 Matsushita Electric Industrial Co., Ltd. Multi-layered information recording medium with spare defect management areas
JP2005108304A (ja) * 2003-09-29 2005-04-21 Toshiba Corp 半導体記憶装置及びその制御方法
KR100527276B1 (ko) * 2004-06-04 2005-11-25 주식회사 르노소프트 시스템 변경 데이터를 시스템 영역 내에서 비선점적으로관리하는 컴퓨터 하드디스크 시스템 데이터 보호 장치 및그 방법
JP4991320B2 (ja) * 2007-01-12 2012-08-01 株式会社東芝 ホスト装置およびメモリシステム

Cited By (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8751734B2 (en) 1999-10-21 2014-06-10 Panasonic Corporation Semiconductor memory card access apparatus, a computer-readable recording medium, an initialization method, and a semiconductor memory card
US8015349B2 (en) 1999-10-21 2011-09-06 Panasonic Corporation Semiconductor memory card access apparatus, a computer-readable recording medium, an initialization method, and a semiconductor memory card
US6829675B2 (en) * 1999-10-21 2004-12-07 Matsushita Electric Industrial Co., Ltd. Semiconductor memory card access apparatus, a computer-readable recording medium, an initialization method, and a semiconductor memory card
US6829676B2 (en) * 1999-10-21 2004-12-07 Matsushita Electric Industrial Co., Ltd. Semiconductor memory card access apparatus, a computer-readable recording medium, an initialization method, and a semiconductor memory card
US6829674B2 (en) * 1999-10-21 2004-12-07 Matsushita Electric Industrial Co., Ltd. Semiconductor memory card access apparatus, a computer-readable recording medium, an initialization method, and a semiconductor memory card
US7899982B2 (en) 1999-10-21 2011-03-01 Panasonic Corporation Semiconductor memory card access apparatus, a computer-readable recording medium, an initialization method, and a semiconductor memory card
US8176239B2 (en) 1999-10-21 2012-05-08 Panasonic Corporation Semiconductor memory card access apparatus, a computer-readable recording medium, an initialization method, and a semiconductor memory card
US7734864B2 (en) 1999-10-21 2010-06-08 Panasonic Corporation Semiconductor memory card access apparatus, a computer-readable recording medium, an initialization method, and a semiconductor memory card
US8473671B2 (en) 1999-10-21 2013-06-25 Panasonic Corporation Semiconductor memory card access apparatus, a computer-readable medium, an initialization method, and a semiconductor memory card
US7143261B2 (en) 1999-10-21 2006-11-28 Matsushita Electric Industrial Co., Ltd. Semiconductor memory card access apparatus, a computer-readable recording medium, an initialization method, and a semiconductor memory card
US8990487B2 (en) 1999-10-21 2015-03-24 Panasonic Corporation Semiconductor memory card access apparatus, a computer-readable recording medium, an initialization method, and a semiconductor memory card
US7398353B2 (en) 1999-10-21 2008-07-08 Matsushita Electric Industrial Co., Ltd. Semiconductor memory card access apparatus, a computer-readable recording medium, an initialization method, and a semiconductor memory card
US7328458B2 (en) 2001-08-22 2008-02-05 Sony Corporation Authoring system, authoring key generator, authoring device, authoring method, and data supply device, information terminal and information distribution method
US7426333B2 (en) 2002-04-03 2008-09-16 Sony Corporation Recording apparatus and method, recording medium and program
WO2003088043A1 (fr) * 2002-04-15 2003-10-23 Sony Corporation Appareil de stockage de donnees
KR100980905B1 (ko) * 2002-04-15 2010-09-07 소니 주식회사 리무버블 데이터 기억 장치, 호스트 기기, 데이터 기록 시스템, 및 리무버블 데이터 기억 장치의 데이터 관리 방법
WO2003088044A1 (fr) * 2002-04-15 2003-10-23 Sony Corporation Dispositif de stockage de donnees
US7472251B2 (en) 2002-04-15 2008-12-30 Sony Corporation Data storage apparatus detachably mounted to a host apparatus
US7526625B2 (en) 2003-01-31 2009-04-28 Panasonic Corporation Semiconductor memory card, and program for controlling the same
US7895405B2 (en) 2003-01-31 2011-02-22 Panasonic Corporation Semiconductor memory card, and program for controlling the same
US7303135B2 (en) 2003-02-04 2007-12-04 Matsushita Electric Industrial Co., Ltd. Semiconductor memory card and computer readable program
US7610434B2 (en) 2003-11-18 2009-10-27 Panasonic Corporation File recording apparatus
JP4661086B2 (ja) * 2004-05-24 2011-03-30 パナソニック株式会社 不揮発性記憶装置および不揮発性メモリの消去方法と書込み方法
JP2005338897A (ja) * 2004-05-24 2005-12-08 Matsushita Electric Ind Co Ltd 不揮発性記憶装置および不揮発性メモリの消去方法と書込み方法
JP2006023854A (ja) * 2004-07-06 2006-01-26 Sharp Corp 情報処理装置、記憶装置、記憶制御装置及びプログラム
US7523280B2 (en) 2004-11-18 2009-04-21 Canon Kabushiki Kaisha Storage managing system, storage managing apparatus, and storage managing method
JP4667014B2 (ja) * 2004-11-18 2011-04-06 キヤノン株式会社 記憶管理装置及びその制御方法
JP2006146505A (ja) * 2004-11-18 2006-06-08 Canon Inc 記憶管理装置及び記憶管理方法
WO2006068190A1 (ja) * 2004-12-22 2006-06-29 Matsushita Electric Industrial Co., Ltd. 電子機器、フォーマット判別システム、フォーマット判別方法
CN100541448C (zh) 2004-12-22 2009-09-16 松下电器产业株式会社 电子设备、格式辨别系统和格式辨别方法
JP4823921B2 (ja) * 2004-12-22 2011-11-24 パナソニック株式会社 電子機器、フォーマット判別方法
JP2010183571A (ja) * 2005-01-07 2010-08-19 Apple Inc 電子デバイスのためのアクセサリ認証
JP2012074050A (ja) * 2005-03-31 2012-04-12 Canon Inc 画像処理装置、画像処理装置の制御方法及びコンピュータプログラム
JP2007026097A (ja) * 2005-07-15 2007-02-01 Matsushita Electric Ind Co Ltd データ記録制御方法及びデータ記録システム
JP2008022100A (ja) * 2006-07-11 2008-01-31 Sharp Corp 録画再生装置
JP4651586B2 (ja) * 2006-07-11 2011-03-16 シャープ株式会社 録画再生装置
US8112575B2 (en) 2006-08-04 2012-02-07 Panasonic Corporation Memory controller, nonvolatile memory device, access device, and nonvolatile memory system
WO2008016081A1 (en) * 2006-08-04 2008-02-07 Panasonic Corporation Memory controller, nonvolatile memory device, access device, and nonvolatile memory system
JPWO2008016081A1 (ja) * 2006-08-04 2009-12-24 パナソニック株式会社 メモリコントローラ、不揮発性記憶装置、アクセス装置、及び不揮発性記憶システム
US8166231B2 (en) 2006-08-08 2012-04-24 Panasonic Corporation Memory controller, nonvolatile memory device, access device, and nonvolatile memory system
US8452915B2 (en) 2006-08-08 2013-05-28 Panasonic Corporation Memory controller, nonvolatile memory device, access device, and nonvolatile memory system
WO2008018446A1 (fr) * 2006-08-08 2008-02-14 Panasonic Corporation Contrôleur de mémoire, dispositif de mémoire non-volatile, dispositif d'accès, et système de mémoire non-volatile
JP2008070929A (ja) * 2006-09-12 2008-03-27 Matsushita Electric Ind Co Ltd メモリコントローラ、不揮発性記憶装置、及び不揮発性記憶システム
WO2008032621A1 (en) * 2006-09-12 2008-03-20 Panasonic Corporation Memory controller, nonvolatile storage device and nonvolatile storage system
WO2008032711A1 (fr) * 2006-09-13 2008-03-20 Panasonic Corporation Contrôleur mémoire, dispositif de stockage non volatil, dispositif d'accès et système de stockage non volatil
US8370611B2 (en) 2007-03-14 2013-02-05 Samsung Electronics Co., Ltd. Memory card, memory system including the same, and operating method thereof
WO2009096180A1 (ja) * 2008-01-30 2009-08-06 Panasonic Corporation メモリコントローラ、不揮発性記憶装置、及び、不揮発性記憶システム
US8019800B2 (en) 2008-04-04 2011-09-13 Panasonic Corporation Access device, information recording device, information recording system, file management method, and program
JP2012515955A (ja) * 2009-01-21 2012-07-12 マイクロン テクノロジー, インク. 固体メモリフォーマッティング
US9626287B2 (en) 2009-01-21 2017-04-18 Micron Technology, Inc. Solid state memory formatting
JP2011118623A (ja) * 2009-12-02 2011-06-16 Canon Inc データ同期装置
US9152431B2 (en) 2011-05-23 2015-10-06 Nec Infrontia Corporation Computer and computer control method
WO2015121938A1 (ja) * 2014-02-13 2015-08-20 株式会社日立製作所 データ管理装置及び方法
JPWO2015121938A1 (ja) * 2014-02-13 2017-03-30 株式会社日立製作所 データ管理装置及び方法

Also Published As

Publication number Publication date
CN100442393C (zh) 2008-12-10
CN1203395C (zh) 2005-05-25
CA2355082A1 (en) 2001-04-26
EP1498810A1 (en) 2005-01-19
US8473671B2 (en) 2013-06-25
EP1145126A2 (en) 2001-10-17
US8990487B2 (en) 2015-03-24
US20030196027A1 (en) 2003-10-16
CA2355082C (en) 2008-09-23
US8176239B2 (en) 2012-05-08
US8751734B2 (en) 2014-06-10
BR0007239A (pt) 2001-10-30
US7734864B2 (en) 2010-06-08
US6611907B1 (en) 2003-08-26
US6823422B2 (en) 2004-11-23
US20070033335A1 (en) 2007-02-08
RU2257609C2 (ru) 2005-07-27
US20120191905A1 (en) 2012-07-26
US20130268778A1 (en) 2013-10-10
US20030196064A1 (en) 2003-10-16
US20030196028A1 (en) 2003-10-16
US20140237203A1 (en) 2014-08-21
US6829675B2 (en) 2004-12-07
CN1341237A (zh) 2002-03-20
CN1674159A (zh) 2005-09-28
US20050060513A1 (en) 2005-03-17
DE60017870D1 (de) 2005-03-10
US7398353B2 (en) 2008-07-08
DE60017870T2 (de) 2005-06-23
US6829674B2 (en) 2004-12-07
US20080209115A1 (en) 2008-08-28
WO2001029670A3 (en) 2001-09-13
BR0007239B1 (pt) 2014-03-18
US7899982B2 (en) 2011-03-01
US8015349B2 (en) 2011-09-06
US20110283076A1 (en) 2011-11-17
US20110125958A1 (en) 2011-05-26
JP3954790B2 (ja) 2007-08-08
EP1145126B1 (en) 2005-02-02
WO2001029670A2 (en) 2001-04-26
US6829676B2 (en) 2004-12-07
EP1498810B1 (en) 2018-12-26
US7143261B2 (en) 2006-11-28
US20100205361A1 (en) 2010-08-12
US20030200411A1 (en) 2003-10-23

Similar Documents

Publication Publication Date Title
CN101427225B (zh) 数据区段尺寸不同于存储器页面和/或区块尺寸之非易失性存储器系统的操作技术
US6381176B1 (en) Method of driving remapping in flash memory and flash memory architecture suitable therefor
KR100886520B1 (ko) 블록 내에서 페이지들을 그룹화하는 방법 및 장치
JP3712231B2 (ja) 改善されたフラッシュファイルシステム
JP4966965B2 (ja) 電源喪失によるデータ破損に強いフラッシュメモリ管理方法
JP5530012B2 (ja) 記憶装置のためのストレージアドレス再マッピングのための方法およびシステム
CN1295622C (zh) 地址映射方法和映射信息管理方法及其闪速存储器
US7917709B2 (en) Memory system for data storage and retrieval
CN101382917B (zh) 半导体存储装置及半导体存储装置的控制方法
JP4206688B2 (ja) データ処理装置及びデータ処理方法
CN1322428C (zh) 闪速存储器管理方法
CN100458674C (zh) 多数据区段同时编程和在其它指定块中存储物理块特征的闪速eeprom系统
KR100453053B1 (ko) 플래쉬 메모리용 파일 시스템
US20030065899A1 (en) Memory system sectors
KR101139224B1 (ko) 소거/재기록 가능 메모리를 위해 고안된 호스트 장치에사용할 수 있는 한 번 또는 몇 번의 프로그램이 가능한메모리를 위한 방법 및 장치
Kang et al. A superblock-based flash translation layer for NAND flash memory
CN101354715B (zh) 用于操作数据处理系统的系统、方法和计算机程序产品
US7912991B1 (en) Systems and methods for segmenting and protecting a storage subsystem
US6459644B2 (en) Semiconductor memory device with block alignment function
KR100983212B1 (ko) 데이터 런 프로그래밍
CN101147133B (zh) 可再编程非易失性存储器系统的方法及存储器系统
EP1782211B1 (en) Fat analysis for optimized sequential cluster management
KR101038167B1 (ko) 프로세서로부터 메모리로의 액세스를 관리하는 메모리 관리 장치를 포함하는 정보 처리 장치 및 메모리 관리 방법
KR100926267B1 (ko) 플래시 메모리에서의 복사 동작을 관리하는 방법
KR100771519B1 (ko) 플래시 메모리를 포함한 메모리 시스템 및 그것의 머지방법

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060131

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060323

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060509

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060630

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20060809

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: 20070403

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070427

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: 20110511

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110511

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20120511

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120511

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130511

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130511

Year of fee payment: 6