JP2009093242A - Information processor, flash memory management method, flash memory management program, and program recording medium - Google Patents
Information processor, flash memory management method, flash memory management program, and program recording medium Download PDFInfo
- Publication number
- JP2009093242A JP2009093242A JP2007260494A JP2007260494A JP2009093242A JP 2009093242 A JP2009093242 A JP 2009093242A JP 2007260494 A JP2007260494 A JP 2007260494A JP 2007260494 A JP2007260494 A JP 2007260494A JP 2009093242 A JP2009093242 A JP 2009093242A
- Authority
- JP
- Japan
- Prior art keywords
- flash memory
- logical address
- address
- allocated
- area
- 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
- 238000007726 management method Methods 0.000 title claims description 32
- 230000006870 function Effects 0.000 claims abstract description 36
- 230000010365 information processing Effects 0.000 claims description 25
- 230000001360 synchronised effect Effects 0.000 claims description 4
- 230000003213 activating effect Effects 0.000 claims 2
- 238000012005 ligant binding assay Methods 0.000 description 24
- 230000008859 change Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000012544 monitoring process Methods 0.000 description 4
- 239000012141 concentrate Substances 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000004913 activation Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000000034 method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
本発明は、情報処理装置、フラッシュメモリ管理方法、フラッシュメモリ管理プログラムおよびプログラム記録媒体に関し、特に、フラッシュメモリをストレージ装置として使用する情報処理装置、フラッシュメモリ管理方法、フラッシュメモリ管理プログラムおよびプログラム記録媒体に関する。デジタルカメラや携帯電話機等の小型電子端末に好適に適用することができる。 The present invention relates to an information processing device, a flash memory management method, a flash memory management program, and a program recording medium, and in particular, an information processing device, a flash memory management method, a flash memory management program, and a program recording medium that use a flash memory as a storage device. About. The present invention can be suitably applied to small electronic terminals such as digital cameras and mobile phones.
近年、フラッシュメモリの大容量化に伴い、フラッシュメモリをストレージ装置として利用するコンピュータや情報機器が増加してきている。 In recent years, with an increase in capacity of flash memory, computers and information devices that use the flash memory as a storage device have been increasing.
しかし、フラッシュメモリは、その物理的な特性から、各物理アドレス上のブロック当たりの書き込み回数を寿命としており、特定のブロックに書き込みが集中した場合、早く寿命を迎えてしまうという問題がある。 However, the flash memory has a problem that, due to its physical characteristics, the number of times of writing per block on each physical address is the lifetime, and when the writing concentrates on a specific block, the lifetime is quickly reached.
そのため、特許文献1の特開2004−234473号公報「不揮発性記憶装置」にも記載されているように、フラッシュメモリの制御装置には、ブロックに対する書き換え回数を平準化する機能(以下、平準化機能と称する)が備わっている場合が多い。ここで、平準化機能とは、書き込みが発生するごとに、同一の論理アドレスについて、制御装置内部で、定期的に、異なる物理アドレスの未割当領域を割り当てる一方、以前、書かれていた元の割当領域のデータを、消去した後に、未割当領域に戻すことによって、同じ論理アドレスへの書き込みが頻発するような場合であっても、特定の物理アドレスのブロックに書き込みが集中して書き込み回数が多くなることを防止する機能である。 Therefore, as described in Japanese Patent Application Laid-Open No. 2004-234473 “Nonvolatile Storage Device” of Patent Document 1, the flash memory control device has a function of leveling the number of rewrites to a block (hereinafter referred to as leveling). In many cases. Here, the leveling function is to allocate an unallocated area of a different physical address periodically for the same logical address every time writing occurs inside the control device. Even if writing to the same logical address occurs frequently by erasing the data in the allocation area and then returning it to the non-allocation area, the write count is concentrated on the block of a specific physical address. This is a function to prevent the increase.
例えば、図4(A)に示すように、システムが、論理アドレス(より詳細には、論理ブロックアドレス。LBA:Logical Block Address)として論理アドレスa〜eの5つのブロックをフラッシュメモリの物理アドレス1〜5の各領域に割り当てて使用している状態で、あらかじめ定めた一定時間が経過した場合、平準化機能が起動される。 For example, as shown in FIG. 4A, the system assigns five blocks of logical addresses a to e as logical addresses (more specifically, logical block addresses; LBA: Logical Block Address) to the physical address 1 of the flash memory. The leveling function is activated when a predetermined period of time has elapsed while being allocated to each of the areas -5.
その結果、図4(B)のように、論理アドレスa〜eの5つのブロックを、今まで割り当てていた物理アドレス1〜5から、未割当領域の物理アドレス6〜10に自動的に切り替えるように割当てを変更し、今まで割り当てていた物理アドレス1〜5を開放して未割当領域に戻すことによって、特定の物理アドレスに書き込みが集中しないように制御する。
As a result, as shown in FIG. 4B, the five blocks of the logical addresses a to e are automatically switched from the physical addresses 1 to 5 allocated so far to the
而して、書き込みが特定の物理アドレスに集中しなくなる結果として、フラッシュメモリの寿命を延ばすことができるという効果が得られる。ここに、図4は、フラッシュメモリの平準化機能を説明するための説明図である。
しかしながら、フラッシュメモリにおける平準化機能は、物理アドレスの未割当領域が多い場合には、極めて有効であるが、フラッシュメモリをストレージ装置として利用しているコンピュータや情報機器を長期に亘って使用して、フラッシュメモリへの書き込み・消去を繰り返していると、論理的にはアクセスされない空き領域が発生していても、物理アドレスとして割当領域のままになっている領域が増加していき、その結果として、未割当領域が少なくなってしまうことが生じる。 However, the leveling function in the flash memory is extremely effective when there are many unallocated areas of physical addresses. However, the computer and information equipment using the flash memory as a storage device have been used for a long time. If the flash memory is repeatedly written and erased, even if there is a free area that is not logically accessed, the area that remains the allocated area as the physical address increases, and as a result The unallocated area is reduced.
例えば、図5(A)のように、現時点では、論理アドレス(LBA)として、物理アドレス1〜5が割り当てられた論理アドレスa〜eの5つのブロックが使用中の状態になっていたとしても、それまでに、OS(Operating System)上のファイルシステムがストレージ装置としてフラッシュメモリを長期に亘って平準化機能を併用しながら使用した結果、論理的には確保されている状態にあるものの、まったく使用していない空き状態のまま放置されてしまう領域が増大し、例えば、図5(A)のように、空き領域に対応するフラッシュメモリの物理アドレス6〜8が割当領域のまま残されてしまう場合が生じる。この結果、未割当領域は物理アドレス9,10のみと少なくなった状態に陥る。ここに、図5は、従来のフラッシュメモリの平準化機能の問題を説明するための説明図である。
For example, as shown in FIG. 5A, even if five blocks of logical addresses a to e to which physical addresses 1 to 5 are assigned as logical addresses (LBAs) are currently in use. Until then, the file system on the OS (Operating System) has been logically secured as a result of using the flash memory as a storage device while using the leveling function for a long time. An area that is left unused and unused is increased, and, for example, as shown in FIG. 5A, the
このような状態に陥ってしまうと、たとえ、平準化機能が動作しても、図5(B)に示すように、少なくなった未割当領域の物理アドレス9,10が、例えば、現状では論理的には空き領域となっている論理アドレスに対して割り当てられてしまう場合が発生し、現在使用中の状態にある論理アドレスa〜eの物理アドレスを切り替えて割り当てることができず、書き込みが特定の物理アドレスに集中してしまう事態を招くことになる。つまり、切り替え対象の未割当領域が少なくなってしまうと、平準化機能を効果的に利用することができなくなるという問題がある。
In such a state, even if the leveling function operates, as shown in FIG. 5B, the
本発明は、かかる事情に鑑みてなされたものであり、OS(Operating System)上のファイルシステムとして認識される論理アドレスの使用状態を定期的に監視し、論理的に使用されていない論理アドレスの空き領域を検出した場合には、対応して割り当てられているフラッシュメモリの物理アドレスを強制的に開放して、未割当領域に復帰させることにより、平準化機能を効果的に動作させて、フラッシュメモリの寿命の延伸が可能な仕組みを提供することを目的としている。 The present invention has been made in view of such circumstances, and periodically monitors the usage state of a logical address recognized as a file system on an OS (Operating System), and detects logical addresses that are not logically used. When a free area is detected, the physical address of the flash memory allocated correspondingly is forcibly released and restored to the unallocated area, thereby effectively operating the leveling function and The purpose is to provide a mechanism capable of extending the lifetime of the memory.
前述の課題を解決するため、本発明による情報処理装置、フラッシュメモリ管理方法、フラッシュメモリ管理プログラムおよびプログラム記録媒体は、次のような特徴的な構成を採用している。 In order to solve the above-described problems, an information processing apparatus, a flash memory management method, a flash memory management program, and a program recording medium according to the present invention employ the following characteristic configurations.
(1)論理アドレスを用いてストレージ装置の読み書きを行う情報処理装置において、各論理アドレスとして割り当てられる前記ストレージ装置の種別を示す識別子と各論理アドレスの使用中状態/空き状態を示す識別子とを少なくとも記録しているアドレス管理マップを備え、該アドレス管理マップに基づいて、前記ストレージ装置として用いるフラッシュメモリの物理アドレスが割り当てられている論理アドレスが空き状態にあるか否かを、あらかじめ定めた周期で定期的に監視し、空き状態の論理アドレスを検出した場合、当該論理アドレスに割り当てられているフラッシュメモリの物理アドレスを開放して、割当領域から未割当状態に切り替えて設定する情報処理装置。 (1) In an information processing apparatus that reads / writes data from / to a storage device using a logical address, at least an identifier that indicates the type of the storage device assigned as each logical address and an identifier that indicates whether each logical address is in use / empty Whether or not a logical address to which a physical address of a flash memory used as the storage device is allocated is empty based on the address management map is recorded at a predetermined cycle. An information processing apparatus that periodically monitors and detects a free logical address, releases the physical address of the flash memory assigned to the logical address, and switches from the assigned area to the unassigned state for setting.
本発明の情報処理装置、フラッシュメモリ管理方法、フラッシュメモリ管理プログラムおよびプログラム記録媒体によれば、OS上のファイルシステムの論理アドレス(LBA:Logical Block Address)として、フラッシュメモリの物理アドレスが割り当てられている論理アドレス(LBA)のいずれかに空き状態が存在していることを検出した場合、当該論理アドレスに割り当てられているフラッシュメモリの物理アドレスを未割当領域に復帰させることを可能としているので、以下のような効果を得ることができる。 According to the information processing apparatus, the flash memory management method, the flash memory management program, and the program recording medium of the present invention, the physical address of the flash memory is assigned as the logical address (LBA: Logical Block Address) of the file system on the OS. When it is detected that a free state exists in one of the logical addresses (LBA), it is possible to return the physical address of the flash memory allocated to the logical address to the unallocated area. The following effects can be obtained.
つまり、フラッシュメモリの未割当領域を拡大して確保することが可能となり、フラッシュメモリの物理アドレス上のブロック当たりの書き込み回数の平準化を図ることが可能になるので、フラッシュメモリの寿命を延伸させることができる。 In other words, it becomes possible to expand and secure the unallocated area of the flash memory, and to level the number of writes per block on the physical address of the flash memory, thereby extending the life of the flash memory. be able to.
以下、本発明による情報処理装置、フラッシュメモリ管理方法、フラッシュメモリ管理プログラムおよびプログラム記録媒体の好適な実施形態について添付図を参照して説明する。なお、以下の説明においては、本発明による情報処理装置、フラッシュメモリ管理方法について説明するが、かかるフラッシュメモリ管理方法をコンピュータにより実行可能なフラッシュメモリ管理プログラムとして実施するようにしても良いし、あるいは、フラッシュメモリ管理プログラムをコンピュータにより読み取り可能な記録媒体に記録するようにしても良いことは言うまでもない。 Hereinafter, preferred embodiments of an information processing apparatus, a flash memory management method, a flash memory management program, and a program recording medium according to the present invention will be described with reference to the accompanying drawings. In the following description, the information processing apparatus and the flash memory management method according to the present invention will be described. However, the flash memory management method may be implemented as a flash memory management program executable by a computer, or Needless to say, the flash memory management program may be recorded on a computer-readable recording medium.
(本発明の特徴)
本発明の実施形態の説明に先立って、本発明の特徴についてまず説明する。本発明は、フラッシュメモリの物理アドレスが割り当てられていて、情報処理装置のOS(Operating System)上のファイルシステムの論理アドレス(LBA:Logical Block Address)として認識される記憶領域について未使用領域(つまり空き領域)を定期的に監視して、未使用領域を検出した場合、当該未使用領域に対応して割り当てられているフラッシュメモリの物理アドレスの割当状態を開放して、未割当領域に復帰させることによって、フラッシュメモリの物理アドレス上のブロック当たりの書き込み回数を平準化する平準化機能の動作を効果的に活用することを可能とし、而して、フラッシュメモリの寿命を延ばすことを可能としている。
(Features of the present invention)
Prior to the description of the embodiments of the present invention, the features of the present invention will be described first. According to the present invention, a physical address of a flash memory is allocated, and an unused area (that is, a storage area recognized as a logical address (LBA: Logical Block Address) of a file system on an OS (Operating System) of an information processing apparatus) When free space is periodically monitored and an unused area is detected, the allocation state of the physical address of the flash memory allocated corresponding to the unused area is released and returned to the unallocated area. This makes it possible to effectively use the operation of the leveling function for leveling the number of writes per block on the physical address of the flash memory, thus extending the life of the flash memory. .
つまり、図1(A)に示すように、OS上のファイルシステムのアドレス空間と認識される記憶領域(つまり論理アドレス)のうち、フラッシュメモリの物理アドレス1〜8が割り当てられているすべてのアドレス空間すなわち論理アドレスa〜e(使用中領域)および※マーク(空き領域)を、あらかじめ定めた周期で、定期的に監視する。なお、図1は、本発明のフラッシュメモリ管理方法の概念を説明するための説明図である。 That is, as shown in FIG. 1A, all the addresses to which the physical addresses 1 to 8 of the flash memory are allocated among the storage areas (that is, logical addresses) recognized as the address space of the file system on the OS. Spaces, that is, logical addresses a to e (in-use areas) and * marks (free areas) are periodically monitored at a predetermined cycle. FIG. 1 is an explanatory diagram for explaining the concept of the flash memory management method of the present invention.
ここで、フラッシュメモリの物理アドレス1〜8の割当領域6〜8が割り当てられている論理アドレスが、空き領域(※マークの3つの領域)であることを検出した場合、図1(B)のように、論理アドレスの設定を変更して、現在使用中の状態にある論理アドレスa〜eのみを有効な論理アドレスに設定すると同時に、空き領域(※マークの3つの領域)に該当していたフラッシュメモリの割当領域つまり物理アドレス6〜8を未割当領域に復帰させる。
Here, when it is detected that the logical addresses to which the
この結果、物理アドレス6〜8に格納されているデータは消失してしまうことになるが、元々、OS上のファイルシステムとしては未使用の状態にある不要なデータであり、全く問題にならない。
As a result, the data stored in the
かくのごとく、論理的に未使用の領域に割り当てられていた割当領域を定期的に監視して開放することによって、フラッシュメモリの物理アドレス上の未割当領域を拡大させ、図1(C)のように、あらかじめ定めた周期で、平準化機能を動作させて、割当領域と未割当領域とを切り替える動作を効果的ならしめ、もって、フラッシュメモリの寿命を延伸可能としている。 As described above, by periodically monitoring and releasing the allocated area that has been allocated to the logically unused area, the unallocated area on the physical address of the flash memory is expanded, and as shown in FIG. As described above, the leveling function is operated at a predetermined cycle, and the operation of switching between the allocated area and the unallocated area is effectively performed, so that the lifetime of the flash memory can be extended.
(実施例の構成)
次に、フラッシュメモリを備えて、該フラッシュメモリを、各種データを書き込むストレージ装置として利用する本発明の情報処理装置の構成例を、図2に示す。図2は、本発明による情報処理装置のブロック構成の一例を示すブロック構成図であり、本発明に直接関連する回路ブロックのみを示している。
(Configuration of Example)
Next, FIG. 2 shows a configuration example of an information processing apparatus according to the present invention that includes a flash memory and uses the flash memory as a storage apparatus for writing various data. FIG. 2 is a block diagram showing an example of a block configuration of the information processing apparatus according to the present invention, and shows only circuit blocks directly related to the present invention.
図2に示すように、本発明による情報処理装置1は、入出力回路12にストレージ装置2を接続して構成されており、演算器11からの制御により、データを、ストレージ装置2に書き込んだり、ストレージ装置2から読み出したりすることによって、所要の動作を実行する。また、ストレージ装置2は、少なくとも、データを格納するためのフラッシュメモリ22と、該フラッシュメモリの読み書き動作を制御する制御装置21とからなっており、制御装置21には、あらかじめ定めた周期で、定期的に、フラッシュメモリ22の割当領域と未割当領域とを切り替えて、書き込み回数の平準化を図る平準化機能が少なくとも備えられている。
As shown in FIG. 2, the information processing apparatus 1 according to the present invention is configured by connecting a
さらに、制御装置21には、情報処理装置1側のOSのファイルシステムが扱う論理アドレス(LBA)とフラッシュメモリ22の物理アドレス上のブロックとの対応関係(割当状況)を設定する論理アドレス割当てマップ21aが備えられている。制御装置21の平準化機能は、論理アドレス割当てマップ21a上に記録されているフラッシュメモリ22の割当て状態(割当領域と未割当領域)を、あらかじめ定めた周期で、定期的に書き換えている。
Further, the
なお、論理アドレス割当てマップ21aに設定登録されている内容は、前述のように、論理アドレス(LBA)対応に構成されており、定期的に起動される平準化機能によって、あるいは、情報処理装置1側からの指示コマンドによって、書き換えられる。例えば、平準化機能の動作によって、論理アドレスに今まで割り当てられていたフラッシュメモリ22の物理アドレスを切り替えようとして、今までの割当領域と未割当領域との間の切り替え動作を行った場合には、論理アドレス割当てマップ21aの登録内容が書き換えられることになる。
Note that the contents set and registered in the logical
さらに、情報処理装置1には、OS(Operating System)のファイルシステムとして使用可能な記憶領域となる論理アドレス(LBA)に対応する物理アドレスを有する記憶装置例えばフラッシュメモリ22のストレージ装置2などを識別する識別子と論理アドレス(LBA)の使用中状態/未使用状態(空き状態)を設定する識別子とを少なくとも有するアドレス管理マップ13aが少なくとも格納されたメモリ13が備えられている。アドレス管理マップ13aは、演算器11からの制御によって読み出されて、ファイルシステムが指定する論理アドレスに対応して割り当てられている記憶装置例えばストレージ装置2を識別して、入出力回路12を介して、当該記憶装置例えばストレージ装置2との間で、データの転送動作が実行される。
Further, the information processing apparatus 1 identifies a storage device having a physical address corresponding to a logical address (LBA) that is a storage area usable as an OS (Operating System) file system, such as the
また、OS(Operating System)のファイルシステムによって、記憶領域を使用するためにGET MEMORY動作が実行される都度、アドレス管理マップ13a中のGET MEMORYされた論理アドレスは、使用中の状態に書き換えられ、逆に、FREE MEMORY動作が実行されると、アドレス管理マップ13a中の該当する論理アドレスは、未使用の状態(つまり、空き領域の状態)に書き換えられる。
Each time a GET MEMORY operation is executed to use a storage area by an OS (Operating System) file system, the GET MEMORY logical address in the
さらに、アドレス管理マップ13a中において、ストレージ装置2のフラッシュメモリ22の物理アドレスが割り当てられている論理アドレスの未使用状態(空き領域)が、あらかじめ定めた周期で、定期的に、監視されている。未使用状態(空き領域)が検出された時点で、アドレス管理マップ13a中の当該論理アドレスの設定状態を使用禁止状態に変更するとともに、未使用状態(空き領域)の論理アドレスに割り当てられていたフラッシュメモリ22の物理アドレスを未割当領域に変更させることを指示する開放コマンドを、ストレージ装置2の制御装置21に発出する。
Furthermore, in the
この結果、制御装置21は、論理アドレス割当てマップ21aの設定内容を書き換えて、当該開放コマンドにて指定された論理アドレスに割り当てられていたフラッシュメモリ22の物理アドレスを、割当領域から未割当領域に変更する。
As a result, the
(実施例の動作の説明)
図2に示す情報処理装置1のフラッシュメモリ22の管理方法の一例について、図3のフローチャートを用いて詳細に説明する。図3は、本発明によるフラッシュメモリ管理方法の一例を示すフローチャートである。
(Description of operation of the embodiment)
An example of a method for managing the
フラッシュメモリ22が割り当てられた論理アドレスの監視周期としてあらかじめ定めた定期的な監視時刻に達したか否かをチェックし(ステップS1)、監視時刻に達していた場合は(ステップS1のY)フラッシュメモリ管理プログラムが起動される。フラッシュメモリ管理プログラムが起動されると、まず、OS上のファイルシステムの論理アドレス(LBA)のすべてに亘って、チェックが完了しているか否かを確認し(ステップS2)、まだチェックしていない論理アドレス(LBA)が存在している場合は(ステップS2のN)、チェックしていない論理アドレス(LBA)がフラッシュメモリ22上の物理アドレスとして割り当てられているか否かを調べるために、アドレス管理マップ13aの中から、当該論理アドレス(LBA)に関する情報を読み出す(ステップS3)。
It is checked whether the
次いで、当該論理アドレス(LBA)がフラッシュメモリ22上の物理アドレスとして割り当てられているか否かをチェックし(ステップS4)、割り当てられていた場合には(ステップS4のY)、割り当てられている論理アドレス(LBA)が使用中の状態か未使用中の状態(空き状態)かを調べるために、アドレス管理マップ13aの中から、当該論理アドレス(LBA)の使用中状態/空き状態に関する情報を読み出す(ステップS5)。
Next, it is checked whether or not the logical address (LBA) is assigned as a physical address on the flash memory 22 (step S4). If it is assigned (Y in step S4), the assigned logical address is checked. In order to check whether the address (LBA) is in use or not in use (empty state), information on the used / empty state of the logical address (LBA) is read from the
そして、フラッシュメモリ22上の物理アドレスが割り当てられている論理アドレス(LBA)が使用中の状態か未使用中の状態(空き状態)かをチェックする(ステップS6)。当該論理アドレス(LBA)が未使用中の状態(空き状態)にあった場合には(ステップS6のY)、アドレス管理マップ13aの当該論理アドレス(LBA)を利用不可能な状態に書き換えると同時に、当該論理アドレスに割り当てられていたフラッシュメモリ22の物理アドレスを開放し、未割当領域に復帰させるために、当該物理アドレスを開放して未割当領域に書き換えることを指示する開放コマンドをストレージ装置2の制御装置21に対して発出する(ステップS7)。該開放コマンドを受け取ったストレージ装置2側では、論理アドレス割当てマップ21aの記録内容を書き換えて、空き状態になっていた論理アドレス(LBA)に割り当てられていたフラッシュメモリ22の物理アドレスを開放し、未割当領域に復帰させる。
Then, it is checked whether the logical address (LBA) to which the physical address on the
最後に、次の論理アドレス(LBA)をチェックするために、今までの論理アドレス(LBA)に“1”だけ加えて(ステップS8)、次の論理アドレス(LGA)に設定して、ステップS2に戻り、すべての論理アドレス(LBA)のチェックが終了するまで、前述した動作を繰り返す。 Finally, in order to check the next logical address (LBA), only “1” is added to the previous logical address (LBA) (step S8), and the next logical address (LGA) is set. The above operation is repeated until all logical addresses (LBA) are checked.
この結果、ストレージ装置2側の制御装置21では、フラッシュメモリ22の未割当領域を拡大して保有する状態になるので、制御装置21が、あらかじめ定めた周期で、定期的に、平準化機能を起動した際に、論理アドレス割当てマップ21a上の未割当領域を、今までの割当領域のほぼすべての領域と切り替えることが可能となり、平準化機能として効果的に動作させることができる。
As a result, the
なお、図3に示すフラッシュメモリ管理プログラムを起動して、フラッシュメモリ22の物理アドレスに割り当てられている論理アドレス(LBA)の使用状態を確認する起動周期と、ストレージ装置2側の制御装置21が平準化機能を起動する周期とを同期させて、平準化機能を起動する直前に、論理アドレスの使用状態を確認させ、その結果をただちに反映した形で平準化機能を動作させるようにしても良い。あるいは、ユーザによって、任意の周期に設定することを可能としても良い。
It should be noted that the flash memory management program shown in FIG. 3 is started to check the use cycle of the logical address (LBA) assigned to the physical address of the
(効果の説明)
本発明によって、何らかの理由によりフラッシュメモリの物理アドレスの未割当領域が少なくなってしまった場合であっても、定期的に、情報処理装置側で未使用の状態にあるフラッシュメモリの割当領域を検出して未使用領域に戻すことを可能としているので、フラッシュメモリの平準化機能を効果的に動作させることを可能とし、従来の平準化機能よりも、フラッシュメモリの寿命を延伸させることができる。
(Explanation of effect)
According to the present invention, even if the unallocated area of the physical address of the flash memory is reduced for some reason, the allocated area of the flash memory that is unused on the information processing apparatus side is periodically detected. Thus, it is possible to return to the unused area, so that the leveling function of the flash memory can be effectively operated, and the life of the flash memory can be extended as compared with the conventional leveling function.
以上、本発明の好適実施例の構成を説明した。しかし、斯かる実施例は、本発明の単なる例示に過ぎず、何ら本発明を限定するものではないことに留意されたい。本発明の要旨を逸脱することなく、特定用途に応じて種々の変形変更が可能であることが、当業者には容易に理解できよう。例えば、本発明の実施態様は、課題を解決するための手段における構成(1)に加えて、次のような構成として表現できる。 The configuration of the preferred embodiment of the present invention has been described above. However, it should be noted that such examples are merely illustrative of the invention and do not limit the invention in any way. Those skilled in the art will readily understand that various modifications and changes can be made according to a specific application without departing from the gist of the present invention. For example, the embodiment of the present invention can be expressed as the following configuration in addition to the configuration (1) in the means for solving the problems.
(2)あらかじめ定めた周期で、平準化機能を起動して、論理アドレスに割り当てられるフラッシュメモリの物理アドレスの割当状態を変更し、今まで未割当領域にあったフラッシュメモリの物理アドレスを論理アドレスに割り当て、今まで割り当てられていた割当領域を開放し、未割当領域に復帰させる上記(1)の情報処理装置。
(3)空き状態の論理アドレスを検出する動作を行う周期を、前記平準化機能を実行する周期と同期させるか、あるいは、ユーザが任意に設定する上記(2)の情報処理装置。
(4)ストレージ装置として用いるフラッシュメモリの物理アドレスが割り当てられている論理アドレスが空き状態にあるか否かを、あらかじめ定めた周期で定期的に監視し、空き状態の論理アドレスを検出した場合、当該論理アドレスに割り当てられているフラッシュメモリの物理アドレスを開放して、割当領域から未割当状態に切り替えて設定するフラッシュメモリ管理方法。
(5)あらかじめ定めた周期で、平準化機能を起動して、論理アドレスに割り当てられるフラッシュメモリの物理アドレスの割当状態を変更し、今まで未割当領域にあったフラッシュメモリの物理アドレスを論理アドレスに割り当て、今まで割り当てられていた割当領域を開放し、未割当領域に復帰させる上記(4)のフラッシュメモリ管理方法。
(6)空き状態の論理アドレスを検出する動作を行う周期を、前記平準化機能を実行する周期と同期させるか、あるいは、ユーザが任意に設定する上記(5)のフラッシュメモリ管理方法。
(7)上記(4)ないし(6)のいずれかのフラッシュメモリ管理方法を、コンピュータにより実行可能なプログラムとして実施するフラッシュメモリ管理プログラム。
(8)上記(7)のフラッシュメモリ管理プログラムを、コンピュータにより読み取り可能な記録媒体に記録しているプログラム記録媒体。
(2) Start the leveling function at a predetermined cycle, change the allocation state of the physical address of the flash memory assigned to the logical address, and change the physical address of the flash memory that was previously in the unallocated area to the logical address The information processing apparatus according to (1), wherein the allocation area that has been allocated up to now is released and returned to an unallocated area.
(3) The information processing apparatus according to (2), wherein a cycle for performing an operation of detecting an empty logical address is synchronized with a cycle for executing the leveling function or is arbitrarily set by a user.
(4) Whether or not the logical address to which the physical address of the flash memory used as the storage device is assigned is free is periodically monitored at a predetermined cycle, and when a free logical address is detected, A flash memory management method in which a physical address of a flash memory allocated to the logical address is released, and an allocation area is switched to an unallocated state.
(5) Start the leveling function at a predetermined cycle, change the allocation state of the physical address of the flash memory assigned to the logical address, and change the physical address of the flash memory that was previously in the unallocated area to the logical address (4) The flash memory management method according to (4) above, wherein the allocated area that has been allocated up to now is released and returned to the unallocated area.
(6) The flash memory management method according to (5), wherein a cycle for performing an operation for detecting an empty logical address is synchronized with a cycle for executing the leveling function or is arbitrarily set by a user.
(7) A flash memory management program for implementing the flash memory management method according to any one of (4) to (6) as a program executable by a computer.
(8) A program recording medium in which the flash memory management program of (7) is recorded on a computer-readable recording medium.
1 情報処理装置
2 ストレージ装置
11 演算器
12 出力回路
13 メモリ
13a アドレス管理マップ
21 制御装置
21a 論理アドレス割当てマップ
22 フラッシュメモリ
DESCRIPTION OF SYMBOLS 1
Claims (8)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007260494A JP4710056B2 (en) | 2007-10-04 | 2007-10-04 | Information processing apparatus, flash memory management method, and flash memory management program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007260494A JP4710056B2 (en) | 2007-10-04 | 2007-10-04 | Information processing apparatus, flash memory management method, and flash memory management program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009093242A true JP2009093242A (en) | 2009-04-30 |
JP4710056B2 JP4710056B2 (en) | 2011-06-29 |
Family
ID=40665216
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007260494A Expired - Fee Related JP4710056B2 (en) | 2007-10-04 | 2007-10-04 | Information processing apparatus, flash memory management method, and flash memory management program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4710056B2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010117008A1 (en) | 2009-04-07 | 2010-10-14 | 株式会社神戸製鋼所 | Method for producing metallic iron |
US9442843B2 (en) | 2012-11-29 | 2016-09-13 | Canon Kabushiki Kaisha | Information processing apparatus, method of controlling the same, and storage medium |
US9852746B2 (en) | 2014-02-17 | 2017-12-26 | Canon Kabushiki Kaisha | Information processing apparatus, method of controlling the same, program and storage medium |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006019700A2 (en) * | 2004-07-30 | 2006-02-23 | United Parcel Service Of America, Inc. | Systems, methods, computer readable medium and apparatus for memory management using nvram |
JP2006127242A (en) * | 2004-10-29 | 2006-05-18 | Fuji Photo Film Co Ltd | Storage device control unit and program |
JP2006146808A (en) * | 2004-11-24 | 2006-06-08 | Kyocera Corp | Memory management device and method |
JP2007172250A (en) * | 2005-12-21 | 2007-07-05 | Fujitsu Ltd | Image memory management device, image memory management method, and program |
-
2007
- 2007-10-04 JP JP2007260494A patent/JP4710056B2/en not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2006019700A2 (en) * | 2004-07-30 | 2006-02-23 | United Parcel Service Of America, Inc. | Systems, methods, computer readable medium and apparatus for memory management using nvram |
JP2008508596A (en) * | 2004-07-30 | 2008-03-21 | ユナイテッド パーセル サービス オブ アメリカ インコーポレイテッド | System, method, computer readable medium, and apparatus for memory management using NVRAM |
JP2006127242A (en) * | 2004-10-29 | 2006-05-18 | Fuji Photo Film Co Ltd | Storage device control unit and program |
JP2006146808A (en) * | 2004-11-24 | 2006-06-08 | Kyocera Corp | Memory management device and method |
JP2007172250A (en) * | 2005-12-21 | 2007-07-05 | Fujitsu Ltd | Image memory management device, image memory management method, and program |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010117008A1 (en) | 2009-04-07 | 2010-10-14 | 株式会社神戸製鋼所 | Method for producing metallic iron |
US9442843B2 (en) | 2012-11-29 | 2016-09-13 | Canon Kabushiki Kaisha | Information processing apparatus, method of controlling the same, and storage medium |
US9852746B2 (en) | 2014-02-17 | 2017-12-26 | Canon Kabushiki Kaisha | Information processing apparatus, method of controlling the same, program and storage medium |
Also Published As
Publication number | Publication date |
---|---|
JP4710056B2 (en) | 2011-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100877448B1 (en) | Nonvolatile storage system | |
JP4886866B2 (en) | Method for speeding up access to main storage device and storage device system | |
JP6403164B2 (en) | Memory system | |
US8402204B2 (en) | Methods for measuring usable lifespan and replacing an in-system programming code of a memory device, and data storage system using the same | |
TW201802683A (en) | Method of wear leveling for data storage device | |
JP2013232216A (en) | Information processing apparatus and program | |
JP2011145838A (en) | Storage device management device and method for managing storage device | |
US20150032944A1 (en) | Data storage device and flash memory control method | |
JP4843222B2 (en) | Semiconductor memory device control method, memory card, and host device | |
JP2011090460A (en) | Data storage device and method of controlling the same | |
JP4710056B2 (en) | Information processing apparatus, flash memory management method, and flash memory management program | |
CN109690465B (en) | Storage device management method and user terminal | |
KR20100102283A (en) | Flash memory apparatus and method of controlling the same | |
JPWO2009001514A1 (en) | MEMORY CONTROLLER, NONVOLATILE STORAGE DEVICE, FILE SYSTEM, NONVOLATILE STORAGE SYSTEM, DATA WRITE METHOD, AND DATA WRITE PROGRAM | |
JP4966418B1 (en) | Information processing apparatus and write control method | |
CN110727470A (en) | Hybrid non-volatile storage device | |
JP6004923B2 (en) | Information processing apparatus, control method therefor, and program | |
JP2007233838A (en) | Control method for memory system | |
JP2009176147A (en) | Electronic equipment and method for determining permission of access to memory of electronic equipment | |
JP2015069241A (en) | Image processing apparatus, control apparatus, control method therefor, and program | |
JP2014203381A (en) | Storage device, control method therefor, and program | |
JP4645043B2 (en) | MEMORY CONTROLLER, NONVOLATILE MEMORY DEVICE, AND NONVOLATILE MEMORY SYSTEM | |
JP6652605B2 (en) | Memory system control method | |
JP2005276288A (en) | Service life control method of nonvolatile memory | |
JP2012033045A (en) | Electronic equipment and data reading method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20091211 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20091215 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100514 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100525 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100723 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20101026 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101224 |
|
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: 20110222 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110301 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4710056 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
LAPS | Cancellation because of no payment of annual fees |