JP2008097526A - データ管理方法 - Google Patents

データ管理方法 Download PDF

Info

Publication number
JP2008097526A
JP2008097526A JP2006281645A JP2006281645A JP2008097526A JP 2008097526 A JP2008097526 A JP 2008097526A JP 2006281645 A JP2006281645 A JP 2006281645A JP 2006281645 A JP2006281645 A JP 2006281645A JP 2008097526 A JP2008097526 A JP 2008097526A
Authority
JP
Japan
Prior art keywords
data
area
memory
address
areas
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
JP2006281645A
Other languages
English (en)
Other versions
JP4468342B2 (ja
Inventor
Masanobu Nojiri
昌伸 野尻
Nobuko Hosoya
信子 細谷
Kazuyo Isoo
和代 磯尾
Kazuo Morimura
一雄 森村
Koji Aotani
浩二 青谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NTT Electronics Corp
Nippon Telegraph and Telephone Corp
Original Assignee
NTT Electronics Corp
Nippon Telegraph and Telephone Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NTT Electronics Corp, Nippon Telegraph and Telephone Corp filed Critical NTT Electronics Corp
Priority to JP2006281645A priority Critical patent/JP4468342B2/ja
Publication of JP2008097526A publication Critical patent/JP2008097526A/ja
Application granted granted Critical
Publication of JP4468342B2 publication Critical patent/JP4468342B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

【課題】データの更新を繰り返しても最新データへのアクセス時間が長くならないデータ管理方法を得る。
【解決手段】本発明に係るデータ管理方法は、アドレスが小さい順にデータ領域にデータを書き込むステップと、各メモリ領域について、アドレスが最小のデータ領域にデータが格納されているかを検索するステップと、アドレスが最小のデータ領域にデータが格納されているメモリ領域のうち、アドレスが最大のメモリ領域を使用中のメモリ領域として検索するステップと、使用中のメモリ領域内のデータ領域のうち、データが格納されていないデータ領域を未使用データ領域として検索するステップと、データ書き込み時において、未使用データ領域に新たなデータを書き込むステップと、データ読み出し時において、未使用データ領域からアドレスの小さいデータ領域に遡ってデータを読み出すステップとを有する。
【選択図】図3

Description

本発明は、アドレス順に配列した複数のメモリ領域を有し、各メモリ領域内に、データの書き込み及び読み出し単位である複数のデータ領域をアドレス順に配列したフラッシュメモリを用いたデータ管理方法に関し、特にデータの更新を繰り返しても最新データへのアクセス時間が長くならないデータ管理方法に関するものである。
データを記録する媒体としてフラッシュメモリがある。フラッシュメモリへのデータの書き込み及び読み出しの単位をデータ領域と呼び、それを複数個集めたものをメモリ領域と呼ぶ。そして、データの消去は通常、メモリ領域単位に実施する。
フラッシュメモリでは、データを更新する際には、書き込まれているデータを一旦消去し、新たに更新データを書き込む必要があった。しかし、消去は書き込みに比べて非常に多くの時間を要するため、データの更新作業には時間がかかっていた。そこで、データ更新時において、新たなデータ領域に更新データを書き込み、旧データ領域からアドレスのポインターを張ることによって、古いデータの消去を伴わない技術が提案されている(例えば、特許文献1又は2参照)。
また、近年のフラッシュメモリの大型化に伴い、フラッシュメモリ内に複数のメモリ領域を用意する場合がある。この場合に、複数のメモリ領域の中から所望のメモリ領域を検索する技術が提案されている(例えば、特許文献3参照)。
特開2002−196976 特開2003−122646 特開2006−039772
特許文献1,2に記載された技術では、データの更新を繰り返した場合、最新データへのアクセス時間が長くなるという問題があった。また、特許文献3に記載された技術では、メモリ領域を検索する際に、最上位のメモリ領域から順次検索しているため、メモリ領域の数が増えた場合に検索時間が長くなるという問題があった。
本発明は、上述のような課題を解決するためになされたもので、その目的は、データの更新を繰り返しても最新データへのアクセス時間が長くならないデータ管理方法を得るものである。
本発明に係るデータ管理方法は、アドレス順に配列した複数のメモリ領域を有し、各メモリ領域内に、データの書き込み及び読み出し単位である複数のデータ領域をアドレス順に配列したフラッシュメモリを用いたデータ管理方法であって、アドレスが小さい順にデータ領域にデータを書き込むステップと、各メモリ領域について、アドレスが最小のデータ領域にデータが格納されているかを検索するステップと、アドレスが最小のデータ領域にデータが格納されているメモリ領域のうち、アドレスが最大のメモリ領域を使用中のメモリ領域として検索するステップと、使用中のメモリ領域内のデータ領域のうち、データが格納されていないデータ領域を未使用データ領域として検索するステップと、データ書き込み時において、未使用データ領域に新たなデータを書き込むステップと、データ読み出し時において、未使用データ領域からアドレスの小さいデータ領域に遡ってデータを読み出すステップとを有する。本発明のその他の特徴は以下に明らかにする。
本発明により、データの更新を繰り返しても最新データへのアクセス時間が長くならない。
以下、本発明の実施の形態に係るデータ管理方法について図を用いて説明する。本実施の形態に係るデータ管理方法は、フラッシュメモリを用いたデータ管理方法である。そして、フラッシュメモリは、図1に示すように、アドレス順に配列した複数のメモリ領域1〜6を有する。ここで、メモリ領域1が最小のアドレスで、以下、メモリ領域2、3、…6の順にアドレスが大きくなる。
そして、各メモリ領域内に、データの書き込み及び読み出し単位である複数のデータ領域1A〜6X、及び複数のデータ領域1A〜6Xにそれぞれ対応する複数のフラグ領域1a〜6xをそれぞれアドレス順に配列している。ここで、各データ領域のサイズは同じである。また、データ領域は、Aが最小のアドレスで、以下、B、C、…Xの順にアドレスが大きくなる。同様に、フラグ領域は、aが最小のアドレスで、以下、b、c、…xの順にアドレスが大きくなる。なお、データの書き込み及び読み出しはデータ領域単位で行ない、データの消去はメモリ領域単位で行なう。
本実施の形態に係るデータ管理方法において、まず、アドレスが小さい順にデータ領域にデータを書き込む。このデータの書き込みが完了したら、1つアドレスの大きいデータ領域に移動し、最新のデータが書き込まれているデータ領域のアドレスデータ(以下、アドレス格納データと呼ぶ)を書き込む。
具体的には、図1に示すように、データ領域3Cにデータ1、データ領域3Dにデータ2を書き込み、データ領域3Cのアドレスα及びデータ領域3Dのアドレスβをアドレス格納データとしてデータ領域3Eに書き込む。このとき、データ領域3Eの1番目の書き込み場所にアドレスαを、データ領域3Eの2番目の書き込み場所にアドレスβを書き込む。これにより、読み出し時に、データ領域3Eに格納されているアドレス格納データを読むことによって、データ1及びデータ2を読み出すことができる。
また、フラグ領域により、対応するデータ領域の使用状況を表示する。例えば、データが書き込まれていないデータ領域に対応しているフラグ領域を「11」、データが書き込まれているデータ領域に対応するフラグ領域を「10」、アドレス格納データの書き込みが完了しているデータ領域に対応するフラグ領域を「00」と表示する。これにより、フラグ領域を検索することで、所望の使用状況のデータ領域を容易に検索することができる。例えば、アドレス格納データが書き込まれていることを示すフラグ領域を検索することで、アドレス格納データを検索することができる。
なお、フラッシュメモリに1つのデータ領域に収まらないサイズのデータを書き込む際には、図2に示すように、書き込みを行なったデータ領域以降のデータ領域に順次書き込めばよい。
次に、各メモリ領域1〜6について、アドレスが最小のデータ領域1A〜6Aにデータが格納されているかを検索する。具体的には、アドレスが最小のデータ領域1A〜6Aに対応するフラグ領域1a〜6aが、データが格納されていることを示しているかを検索する。ここで、検索の結果、フラグ領域1a〜3aの表示が、対応するデータ領域にデータが格納されていることを示す「10」、又はアドレス格納データが格納されていることを示す「00」で、データ領域4a〜6aの表示が、対応するデータ領域にはデータが格納されていないことを示す「11」であったとする。
次に、アドレスが最小のデータ領域にデータが格納されているメモリ領域1〜3のうち、アドレスが最大のメモリ領域3を使用中のメモリ領域として検索する。ただし、メモリ領域1〜6全体に対して二分探索を行って使用中のメモリ領域を検索してもよい。これにより、メモリ領域の数によらず検索時間をほぼ一定にすることができる。
次に、使用中のメモリ領域3内のデータ領域3A〜3Xのうち、データが格納されていないデータ領域を未使用データ領域として検索する。この際に二分探索を用いることで、メモリ領域の数によらず検索時間をほぼ一定にすることができる。ここでは、メモリ領域3内において、データが格納されていないことを示しているフラグ領域3f〜3xのうち、アドレスが最小のフラグ領域3fに対応するデータ領域3Fを検索結果とする。
なお、使用中のメモリ領域3において、最大アドレスをもつフラグ領域3xまでデータが格納されていることを示していた場合は、メモリ領域3に未使用データ領域はないと判断し、使用中のメモリ領域3の次のメモリ領域4の最小アドレスをもつデータ領域4Aを未使用データ領域とする。
そして、データ書き込み時において、検索結果のフラグ領域3fに対応する未使用データ領域3Fに新たなデータを書き込む。一方、データ読み出し時において、検索結果のフラグ領域3fからアドレスの小さい方向にフラグ領域を1つずつ移動し、アドレス格納データが格納されていることを示している(「00」が表示されている)フラグ領域3eを検索する。そして、アドレス格納データが書き込まれていることを示しているフラグ領域3eに対応するデータ領域3Eからアドレス格納データを読み出し、データを読み出す。即ち、未使用データ領域3Fからアドレスの小さいデータ領域に遡ってデータを読み出す。
ここで、既に書き込まれているデータを更新する場合について図3(a)〜(d)を参照しながら説明する。図3(a)に示す状態において、データ1を更新してデータ3にする場合、まず、未使用データ領域に対応するフラグ領域を検索する。ここでは、検索の結果、未使用データ領域に対応するフラグ領域が、フラグ領域1eであったとする。次に、図3(b)に示すように、検索によって得られたフラグ領域1eのフラグを「10」に変更し、フラグ領域1eに対応するデータ領域1Eにデータ3を書き込む。その後、図3(c)に示すように、アドレス格納データを書き込むデータ領域1Fに対応するフラグ領域1fのフラグを「10」にし、データ領域1Fにアドレス格納データを書き込む。そして、図3(d)に示すように、アドレス格納データの書き込み後、フラグ領域1Fのフラグを「00」に変更する。
なお、データ領域1Fにアドレス格納データを書き込む際は、データ領域1Dにおいて更新前のアドレスαが書き込まれていた書き込み場所(1番目)と同じ書き込み場所に更新後のアドレスγを書き込む。これによって、データ1が更新されてデータ3になったという対応をとることができる。また、データが更新されていないデータ2については、データ領域1Dの2番目の書き込み場所に書き込まれていたアドレス格納データをデータ領域1Fの2番目の書き込み場所にそのままコピーして書き込む。
以上説明したように、本発明の実施の形態に係るデータ管理方法によれば、データの更新を繰り返しても最新データへのアクセス時間が長くならない。
また、データやアドレス格納データの書き込み中、即ち図3(b)又は図3(c)の状態で電源断が発生した場合、書き込みが完全に終了する前で書き込みが終わるため、データ領域1Eやデータ領域1Fに書き込まれているデータが不完全なデータとなる。これに対し、本発明の実施の形態に係るデータ管理方法のように、アドレス格納データの書き込みが完了した段階でフラグ領域を「00」に書き換えることで、不完全なデータを検索しないようにすることができる。
本発明の実施の形態に係るデータ管理方法で用いられるフラッシュメモリを示すブロック図である。 フラッシュメモリに1つのデータ領域に収まらないサイズのデータを書き込んだ状態を示すブロック図である。 本発明の実施の形態に係るデータ管理方法におけるデータの更新について説明するためのブロック図である。
符号の説明
1〜6 メモリ領域
1A〜6X データ領域
1a〜6x フラグ領域

Claims (3)

  1. アドレス順に配列した複数のメモリ領域を有し、各メモリ領域内に、データの書き込み及び読み出し単位である複数のデータ領域をアドレス順に配列したフラッシュメモリを用いたデータ管理方法であって、
    アドレスが小さい順に前記データ領域にデータを書き込むステップと、
    各メモリ領域について、アドレスが最小のデータ領域に前記データが格納されているかを検索するステップと、
    前記アドレスが最小のデータ領域に前記データが格納されているメモリ領域のうち、アドレスが最大のメモリ領域を使用中のメモリ領域として検索するステップと、
    前記使用中のメモリ領域内のデータ領域のうち、前記データが格納されていないデータ領域を未使用データ領域として検索するステップと、
    データ書き込み時において、前記未使用データ領域に新たなデータを書き込むステップと、
    データ読み出し時において、前記未使用データ領域からアドレスの小さいデータ領域に遡って前記データを読み出すステップとを有することを特徴とするデータ管理方法。
  2. 前記使用中のメモリ領域を検索する際、及び前記未使用データ領域を検索する際には、二分探索を行なうことを特徴とする請求項1に記載のデータ管理方法。
  3. 各メモリ領域内に、前記複数のデータ領域にそれぞれ対応する複数のフラグ領域を設け、前記フラグ領域により、対応する前記データ領域の使用状況を表示することを特徴とする請求項1又は2に記載のデータ管理方法。
JP2006281645A 2006-10-16 2006-10-16 データ管理方法 Active JP4468342B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006281645A JP4468342B2 (ja) 2006-10-16 2006-10-16 データ管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006281645A JP4468342B2 (ja) 2006-10-16 2006-10-16 データ管理方法

Publications (2)

Publication Number Publication Date
JP2008097526A true JP2008097526A (ja) 2008-04-24
JP4468342B2 JP4468342B2 (ja) 2010-05-26

Family

ID=39380278

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006281645A Active JP4468342B2 (ja) 2006-10-16 2006-10-16 データ管理方法

Country Status (1)

Country Link
JP (1) JP4468342B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010178132A (ja) * 2009-01-30 2010-08-12 Nec Corp 携帯電話装置、携帯電話装置の発信方法及びプログラム
US8868822B2 (en) 2010-03-24 2014-10-21 Spansion Llc Data-processing method, program, and system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010178132A (ja) * 2009-01-30 2010-08-12 Nec Corp 携帯電話装置、携帯電話装置の発信方法及びプログラム
US8868822B2 (en) 2010-03-24 2014-10-21 Spansion Llc Data-processing method, program, and system

Also Published As

Publication number Publication date
JP4468342B2 (ja) 2010-05-26

Similar Documents

Publication Publication Date Title
JP4948793B2 (ja) バッドブロック管理部を含むフラッシュメモリシステム
JP4740216B2 (ja) 不揮発性メモリ管理方法及び装置
KR20100003244A (ko) 판독 실패 관리 방법 및 시스템
US8156278B2 (en) Non-volatile data storage system and method thereof
CN107045423B (zh) 存储器装置及其数据存取方法
US20170285953A1 (en) Data Storage Device and Data Maintenance Method thereof
JP2003058417A (ja) 記憶装置
JP4235646B2 (ja) メモリコントローラおよびフラッシュメモリシステム
CN110286848B (zh) 数据处理方法及装置
JP4468342B2 (ja) データ管理方法
KR20090119481A (ko) 파일 시스템의 로그 파일 및 상기 파일 시스템의 오류 복구방법
JP2008084184A (ja) メモリコントローラ
JP2011227802A (ja) データ記録装置
JP2004264912A (ja) 記録媒体の記録制御方法および記録媒体の記録制御装置
US20130326123A1 (en) Memory management device and method, and program
WO2020039927A1 (ja) 不揮発性記憶装置、ホスト装置、及びデータ記憶システム
JP2017059281A (ja) 半導体記憶装置および半導体記憶装置におけるデータ消去方法
JP2009217630A (ja) メモリシステム
JP2005321843A (ja) ファームウェアの書換え方法
JP2008299455A (ja) データ記憶装置及びデータ管理方法
JP2004062554A (ja) フラッシュメモリの管理方法
JP2014115927A (ja) プログラム更新装置、方法、プログラム、及び記憶媒体
JP4105179B2 (ja) データ管理方法
JP2009211202A (ja) メモリシステム
JP2006048746A (ja) メモリカード

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091222

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100202

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100224

R150 Certificate of patent or registration of utility model

Ref document number: 4468342

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130305

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130305

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140305

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350