JP2016038778A - 記憶媒体の管理装置 - Google Patents
記憶媒体の管理装置 Download PDFInfo
- Publication number
- JP2016038778A JP2016038778A JP2014162589A JP2014162589A JP2016038778A JP 2016038778 A JP2016038778 A JP 2016038778A JP 2014162589 A JP2014162589 A JP 2014162589A JP 2014162589 A JP2014162589 A JP 2014162589A JP 2016038778 A JP2016038778 A JP 2016038778A
- Authority
- JP
- Japan
- Prior art keywords
- data
- block
- management
- blocks
- address
- 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
Links
Landscapes
- Memory System (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
Description
また、書き換え処理の中断と書き換え対象レコードを検出するためには、書き換え処理フェーズと書き換え対象レコードのアドレスだけを記憶すればよいので、例えば、1つのブロック(消去単位)に前記情報を記憶すれば、無駄な冗長領域が発生せず、高メモリ効率である。
つまり、書き換え回数に制限のある記憶媒体においては、その寿命が短くなる。
従って、本発明では、記憶媒体のデータの書き換え処理の際に、例えば電源の遮断による書き換え処理中断を検出する場合でも、記憶媒体の高いメモリ効率と高い耐久性とを両立できるという顕著な効果を奏する。
まず、本実施例1の記憶媒体の管理装置の全体構成について説明する。
図1に示すように、本実施例1の記憶媒体の管理装置1は、記憶媒体である不揮発性メモリのフラッシュメモリ(Flashメモリ)3にデータを書き込んだり、そのデータを消去することができる装置であり、各種の演算処理を行う周知のCPU5と、外部装置との入出力部であるI/O7と、Flashメモリ3へのデータの書き込みやデータの消去を行うFlashコントローラ9と、各種のソフトウェア等を記憶しているROM11と、周知のRAM13等を備えている。
なお、前記管理装置1やFlashメモリ3へは、電源15から電力が供給されている。
次に、本実施例1におけるFlashメモリ3のデータ構造について説明する。
図3に示すように、Flashメモリ3では、記憶領域として、複数の管理ブロックからなる管理ブロック群と、複数のデータブロックからなるデータブロック群とを有している。
[Flashメモリのデータを書き換える際の基本思想]
次に、Flashメモリ3のデータを書き換える際の基本となる思想(動作原理)について説明する。
具体的には、管理ブロック群の1つの管理ブロックが、書き換え中の対象データブロックのアドレスを記憶するとともに、データブロックの書き換え処理が中断されたときの書き換え対象のデータブロックを特定する。
(1)次に、Flashメモリ3の管理ブロック群の論理構造について、具体例を挙げて説明する。
なお、m<nの場合には、メモリ効率の点で効果が大きいが、ここでは、内容の理解を容易にするために、管理ブロック数とデータブロック数が同じ3個の場合(m=n)を例に挙げて説明する。
また、状態記憶部は、上述したように、各情報の書き換え状態を示すために、下記の3つのフラグ(AW、AF、DF)をもち、それぞれ、ブランク(Blank)か非ブランク(Non-blank)かの2値をとる。
AF:次ブロックのアドレスの書き換え完了を示すフラグ。従って、例えば管理ブロック1のアドレスの書き換え完了時にフラグが(例えば1に)設定される。
図6に示すように、各管理ブロックには、ある固定された順序性がある。
例えば、管理ブロック群には、管理ブロック0→管理ブロック1→管理ブロック2→管理ブロック0→・・のように、所定の順序が設定されている。従って、管理ブロックは、管理ブロック0→管理ブロック1→管理ブロック2→管理ブロック0→・・のように、循環的に使用される。
具体的には、(管理ブロック1の前の管理ブロックである)管理ブロック0の状態記憶部は、次の管理ブロックである管理ブロック1のアドレスの書き換え状態やそのアドレスに対応したデータブロックの書き換え状態を、前記各フラグによって記憶している。
[Flashメモリのデータを書き込む処理]
次に、Flashメモリ3にデータを書き込む際の処理について説明する。
ステップ120では、定常状態であるので、管理ブロック群の中で最も更新の新しいブロックの次のブロックを、更新するブロック(更新ブロック)とする。
続くステップ140では、更新ブロックのデータを消去する。
続くステップ160では、前ブロックに、AFフラグを立てる。
続くステップ170では、書き込み先データブロックのデータを消去する。ここで、書き込み先データブロックとは、書き込みを行う対象であるデータブロックのことである。
続くステップ190では、前ブロックに、DFフラグを立て、一旦本処理を終了する。
(2)ここで、所定の順序で更新する管理ブロックの指定方法について説明する。
順序性に基づくと、最新の管理ブロックは、状態管理部のいずれのフラグも立っていない管理ブロックであると判断できる。
ここでは、図9に示すように、管理ブロック3個、データブロック3個、管理ブロック群の順序性は、「アドレス0x05→アドレス0x04→アドレス0x03→アドレス0x05→・・」とする。
図10に示すように、(1)は、定常状態を示しており、この定常状態の際に、アドレス"0x20"のデータブロックに、レコード"0000000011111111"を記憶する要求を受領する。
(3)では、アドレス"0x50"のブロックの前のブロック(アドレス"0x30")に、AWフラグを立てる(ステップ130)。
(5)では、アドレス"0x50"のブロックに、書き換え予定のアドレス(アドレス"0x20")を記憶する(ステップ150)。
(7)では、アドレス"0x20"のブロックのデータを消去する(ステップ170)。
(8)では、アドレス"0x20"のブロックに、レコード"0000000011111111"を書き込む(ステップ180)。
[電源断からの再開時の処理]
次に、電源が遮断された後に、再度電源が供給された場合の処理(管理装置1の動作を再開する際の処理)について説明する。
ステップ240では、後述する復帰処理を施し、定常状態に戻して、一旦本処理を終了する。
ここでは、上述した復帰処理の内容について説明する。
(1)まず、復帰時に状態記憶部が示すブロック書き換え状態ついて説明する。
(2)次に、前記図7のステップ110、前記図11のステップ240にて実施される復帰処理について説明する。
続くステップ310では、管理ブロック群のうち、全てのフラグが立っている管理ブロック以外の管理ブロックのデータを消去する。
ステップ340では、対象ブロックにAWフラグを立てる。
続くステップ360では、対象ブロックにAFフラグを立てる。
続くステップ380では、対象ブロックの次ブロックを対象ブロックとし、前記ステップ330に戻る。
図14に示すように、(1)は、定常状態ではないフラグパターン(フラグの設定状態)を示している。
(3)では、同様に、全てのフラグが立っている管理ブロックのデータを消去する(ステップ300)。ここでは、アドレス"0x40"のブロックとなる。
(5)では、任意の管理ブロックを対象ブロックとする(ステップ320)。ここでは、アドレス"0x50"のブロックとする。
(7)では、対象ブロックの次ブロックを対象ブロックとする(ステップ380)。ここでは、対象ブロックをアドレス"0x40"のブロックに変更する。
(4)ここで、上述した復帰処理時の消去の順番について説明する。
管理ブロック群を定常状態に復帰させるために、管理ブロック(即ちそのデータ)を全消去する必要がある。
つまり、始めに全てのフラグが立っている管理ブロック以外のブロック(例えばアドレス"0x00"のブロック)のデータを消去した場合に、その後で、電源が遮断されてから処理が再開されると、「処理中断が発生していない」と誤判断されてしまう。
[本実施例1の効果]
本実施例1の記憶媒体の管理装置1は、データを書き換える際の消去単位であるブロックとして、データを記憶する複数のデータブロックと、データブロックのデータの書き換えに関する情報を記憶する複数の管理ブロックと、を有するFlashメモリ3に対して、データの書き換えを管理するものである。
従って、本実施例1では、Flashメモリ3のデータの書き換え処理の際に、例えば電源の遮断によって、書き換え処理に中断が生じる場合でも、Flashメモリ3の高いメモリ効率と高い耐久性とを両立できるという顕著な効果を奏する。
本実施例2は、ハード構成は前記実施例1と同じであり、主要な処理等は同じであるので、異なる点を説明する。
[Flashメモリのデータ構造]
まず、本実施例2におけるFlashメモリ3のデータ構造について説明する。
[Flashメモリの管理ブロック群の論理構造]
(1)次に、Flashメモリ3の管理ブロック群の論理構造について、具体例を挙げて説明する。
また、状態記憶部は、実施例1と同様に、3つのフラグ(AW、AF、DF)をもち、異常記憶部は、1つのフラグ(AE)を持ち、それぞれ、ブランクか非ブランクかの2値をとる。
図19に示すように、管理ブロック0のAEフラグがBlankで、管理ブロック1、2のAEフラグがNo−careの場合には、電源断が無い正常の状態を示している。
また、管理ブロック0のAEフラグがNon−Blankで、管理ブロック1、2のAEフラグがNo−careの場合には、電源断が有る異常の状態を示している。
また、データブロック書き換え中断状態は、管理ブロック群が、AW、AFフラグが立っていて、DF、AEフラグが立っていない管理ブロック1つと、何のフラグも立っていない管理ブロック1つと、AEフラグ以外の全てのフラグが立っている管理ブロック1つ以上で構成される。
次に、本実施例2における復帰処理の手順について説明する。
図20に示すように、(1)は、定常状態ではないフラグパターンを示している。なお、アドレス"0x50"の管理ブロックが、エラー判定用管理ブロックである。
(3)では、エラー判定用管理ブロック以外の管理ブロックのデータを消去する。ここでは、アドレス"0x30"の管理ブロックのデータを消去する。
(5)では、最後に、エラー判定用管理ブロックのデータを消去する。ここでは、アドレス"0x50"の管理ブロックのデータを消去する。
(7)では、上述した処理によって、定常状態に復帰した状態を示している。
本実施例2では、複数の管理ブロックのうち所定の管理ブロックに、前記状態記憶部に加えて、更にFlashメモリ3に電力を供給する電源の遮断の発生を示す情報(AEフラグ)を記憶する異常記憶部を備えている。詳しくは、電源の遮断から復帰する際には、異常記憶部に復帰処理中の電源の遮断の発生を示すAEフラグを設定している。
(1)例えば前記各実施例において、例えば1つの構成要素が有する機能を複数の構成要素に分散させたり、複数の構成要素が有する機能を1つの構成要素に統合したりしてもよい。また、実施例の構成の少なくとも一部を、同様の機能を有する公知の構成に置き換えてもよい。更に、実施例の構成の少なくとも一部を、他の実施例の構成に対して付加、置換等してもよい。
(4)前記実施例1、2では、データブロックの数と管理ブロックの数とが同じ例で説明した箇所があるが、管理ブロックの数(m)をデータブロックの数(n)より少なくすることができる。例えばデータブロック数が4個以上の場合に、管理ブロック数を(データブロック数より少ない)3個以上とすること(m<n)ができる。
3…フラッシュメモリ(Flashメモリ)
5…CPU
9…Flashコントローラ
11…ROM
13…RAM
Claims (8)
- データを書き換える際の消去単位であるブロックとして、前記データを記憶する複数のデータブロックと、前記データブロックのデータの書き換えに関する情報を記憶する複数の管理ブロックと、を有する記憶媒体(3)に対して、前記データの書き換えを管理する管理装置(1)であって、
前記複数の管理ブロックを前記情報の記憶のために使用する順序を設定するとともに、前記順序を複数の管理ブロックを繰り返して使用するように設定し、
前記データを書き換える書換対象のデータブロックを変更する際には、前記順序に従って前記書換対象のデータブロックのデータの書き換えに関する情報を記憶する前記管理ブロックを変更する(ステップ120〜190)ことを特徴とする記憶媒体の管理装置。 - 前記書換対象のデータブロックのデータの書き換えに関する情報とは、前記書換対象のデータブロックのアドレスと、前記アドレスの書き換え状態を示す第1情報と、前記書換対象のデータブロックのデータの書き換え状態を示す第2情報と、のうち少なくとも1種であることを特徴とする請求項1に記載の記憶媒体の管理装置。
- 前記複数の管理ブロックには、それぞれ、前記書換対象のデータブロックのアドレスを記憶するアドレス部と、前記第1情報及び第2情報を記憶する状態記憶部とを備えたことを特徴とする請求項2に記載の記憶媒体の管理装置。
- 前記書換対象のデータブロックのアドレスと、前記第1情報及び第2情報のうち少なくとも第1情報と、を異なる管理ブロックに記憶する(ステップ120〜190)ことを特徴とする請求項2又は3に記載の記憶媒体の管理装置。
- 前記管理ブロックとして、使用順序の早い第1の管理ブロックと次の使用順序の第2の管理ブロックとを備え、
前記第2の管理ブロックには、前記書換対象のデータブロックのアドレスを記憶し、
前記第1の管理ブロックには、第2の管理ブロックのアドレスの書き換え開始を示す情報と、第2の管理ブロックのアドレスの書き換え完了を示す情報と、前記書換対象のデータブロックのデータの書き換え完了を示す情報と、を記憶する(ステップ120〜190)ことを特徴とする請求項3又は4に記載の記憶媒体の管理装置。 - 前記複数の管理ブロックのうち所定の管理ブロックに、更に、前記記憶媒体に電力を供給する電源の遮断の発生を示す情報を記憶する異常記憶部を有することを特徴とする請求項1〜5のいずれか1項に記載の記憶媒体の管理装置。
- 前記電源の遮断から復帰する際には、前記異常記憶部に、前記電源の遮断の発生を示すフラグを設定することを特徴とする請求項6に記載の記憶媒体の管理装置。
- 前記管理ブロックのデータを消去する際には、前記異常記憶部を有する前記所定の管理ブロック以外から順番にデータを消去することを特徴とする請求項6又は7に記載の記憶媒体の管理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014162589A JP6311525B2 (ja) | 2014-08-08 | 2014-08-08 | 記憶媒体の管理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014162589A JP6311525B2 (ja) | 2014-08-08 | 2014-08-08 | 記憶媒体の管理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016038778A true JP2016038778A (ja) | 2016-03-22 |
JP6311525B2 JP6311525B2 (ja) | 2018-04-18 |
Family
ID=55529787
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014162589A Expired - Fee Related JP6311525B2 (ja) | 2014-08-08 | 2014-08-08 | 記憶媒体の管理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6311525B2 (ja) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005025401A (ja) * | 2003-06-30 | 2005-01-27 | Sharp Corp | メモリ管理装置およびこれを備えたicカード |
JP2008269635A (ja) * | 2008-06-02 | 2008-11-06 | Renesas Technology Corp | 半導体処理装置 |
JP2009158614A (ja) * | 2007-12-25 | 2009-07-16 | Toppan Printing Co Ltd | 不揮発性半導体メモリ素子及び半導体装置 |
JP2011175428A (ja) * | 2010-02-24 | 2011-09-08 | Kyocera Corp | 記憶装置 |
-
2014
- 2014-08-08 JP JP2014162589A patent/JP6311525B2/ja not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005025401A (ja) * | 2003-06-30 | 2005-01-27 | Sharp Corp | メモリ管理装置およびこれを備えたicカード |
JP2009158614A (ja) * | 2007-12-25 | 2009-07-16 | Toppan Printing Co Ltd | 不揮発性半導体メモリ素子及び半導体装置 |
JP2008269635A (ja) * | 2008-06-02 | 2008-11-06 | Renesas Technology Corp | 半導体処理装置 |
JP2011175428A (ja) * | 2010-02-24 | 2011-09-08 | Kyocera Corp | 記憶装置 |
Also Published As
Publication number | Publication date |
---|---|
JP6311525B2 (ja) | 2018-04-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9632714B2 (en) | Solid-state drive device | |
JP5623593B2 (ja) | ベーシック・インプット/アウトプット・システムを同時に更新するためのラックおよびその方法 | |
KR101822485B1 (ko) | 차량용 소프트웨어 원격 업데이트시 전원 차단 후 복구 방법 | |
US20070198768A1 (en) | Apparatus and method for operating flash memory according to priority order | |
JP5581577B2 (ja) | データ処理装置 | |
JP2014035730A (ja) | 車両用制御装置 | |
JP2016118815A (ja) | 不揮発性メモリ装置 | |
JP5981906B2 (ja) | 画像形成装置 | |
CN111045870A (zh) | 一种保存与恢复元数据的方法、装置和介质 | |
WO2014147906A1 (ja) | データ記憶装置、データの記憶方法および車載用制御装置 | |
US20160048120A1 (en) | Programmable logic controller system and programmable logic controller | |
JP2002318733A (ja) | ブロック消去型記憶媒体の管理装置 | |
JP6311525B2 (ja) | 記憶媒体の管理装置 | |
CN110275797B (zh) | 控制器以及数据保存方法 | |
US10120614B2 (en) | Storage device, storage system, and method of controlling storage device | |
JP2007328438A (ja) | 情報処理装置、そのデータバックアップ及び復旧方法 | |
JP4143952B2 (ja) | メモリバックアップ方法および装置 | |
JP2018073161A (ja) | 電子制御装置 | |
JP2013200919A (ja) | 不揮発性半導体メモリ装置、及び、その制御方法 | |
JP2019160080A (ja) | 制御装置および異常検出方法 | |
US20170010827A1 (en) | File system of controller | |
JP5161600B2 (ja) | 情報処理装置およびデータ復旧方法 | |
JP7288375B2 (ja) | 電子機器、算出方法及びプログラム | |
JP2014203381A (ja) | 記憶装置とその制御方法、および、プログラム | |
JP6036618B2 (ja) | 電子機器及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170309 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20171115 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20171128 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180129 |
|
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: 20180220 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180305 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 6311525 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |