JP2003203007A - Nonvolatile area control method for memory of mobile phone - Google Patents
Nonvolatile area control method for memory of mobile phoneInfo
- Publication number
- JP2003203007A JP2003203007A JP2002000486A JP2002000486A JP2003203007A JP 2003203007 A JP2003203007 A JP 2003203007A JP 2002000486 A JP2002000486 A JP 2002000486A JP 2002000486 A JP2002000486 A JP 2002000486A JP 2003203007 A JP2003203007 A JP 2003203007A
- Authority
- JP
- Japan
- Prior art keywords
- block
- page
- data
- area
- unused
- 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.)
- Pending
Links
Landscapes
- Telephone Function (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は、携帯電話機のメモ
リの不揮発エリア管理方法に関し、特に、フラッシュメ
モリを不揮発エリアとして使用した場合における不揮発
エリア管理方法および不揮発エリアにおける未使用領域
の高速検索方法に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a method for managing a non-volatile area of a memory of a mobile phone, and more particularly to a method for managing a non-volatile area when a flash memory is used as the non-volatile area and a method for quickly searching an unused area in the non-volatile area. .
【0002】[0002]
【従来の技術】現在の携帯電話機においては、電話帳等
のユーザー個人が入力する情報は、SRAM(スタティ
ックランダムアクセスメモリ)に格納されている。しか
し、SRAMは、その特性として、読み出し・書き込み
は自由に行なうことができるという利点があるけれど、
携帯電話機内のバックアップ電池切れが発生すると、デ
ータを保持することが出来ないという問題をもってい
る。その結果、バックアップ電池切れの状態に陥ると、
SRAMに蓄積されたデータが消えてしまい再度入力し
直さなければならなかった。2. Description of the Related Art In a current mobile phone, information input by a user such as a telephone directory is stored in SRAM (Static Random Access Memory). However, SRAM has the advantage that it can be freely read and written as its characteristic,
When the backup battery in the mobile phone runs out, there is a problem that the data cannot be retained. As a result, when the backup battery runs out,
The data stored in the SRAM disappeared and I had to re-enter it.
【0003】この問題を解決するために、フラッシュ型
EEPROM(以下、FROMと記す)が携帯電話のメ
モリダイヤル等に使用されるようになっている。FRO
Mは、不揮発性で電気的に書込・消去が出来るばかりで
なく、低消費電力で、ハードディスクに比較してアクセ
ス時間が早い等の長所をもっている。その理由で、デー
タ保持を保証するFROMにデータをバックアップする
ことによって、バックアップ電池切れに起因してデータ
が消滅するという問題を防ぐことが可能になる。しか
し、周知のように、FROMはSRAMと異なり、デー
タのビット1からビット0への書き込みは可能である
が、ビット0からビット1への書き込みは出来ない。し
たがって、ユーザ情報のデータ等のように、1と0とが
不特定に出現するデータをFROMに書き込むときに
は、部分的に上書きすることはできないので、一度消去
を行なった後でなければ、新しいデータを書き込むこと
はできない。従ってFROMにおいては、使用済み領域
の消去と、未使用領域への新しいデータの書き込みとが
連鎖して行われる。In order to solve this problem, a flash type EEPROM (hereinafter referred to as FROM) has been used for a memory dial of a mobile phone or the like. FRO
M is not only nonvolatile and can be electrically written / erased, it has low power consumption, and has advantages such as faster access time than a hard disk. For that reason, by backing up the data in the FROM that guarantees data retention, it becomes possible to prevent the problem that the data is lost due to the backup battery running out. However, as is well known, unlike an SRAM, a FROM can write data from bit 1 to bit 0, but cannot write from bit 0 to bit 1. Therefore, when data such as user information data in which 1s and 0s appear indefinitely is written in the FROM, it cannot be partially overwritten. Can not be written. Therefore, in the FROM, erasing the used area and writing new data to the unused area are performed in a chain.
【0004】特願平2000−355914号には、携
帯電話機の電源オフ時に、SRAMに蓄積されているユ
ーザー設定情報をバックアップするためにFROMが用
いられる場合のユーザー設定情報管理方法およびユーザ
ー設定情報管理システムが記載されている。以下、この
技術を第1の引用技術と記す。Japanese Patent Application No. 2000-355914 discloses a user setting information management method and a user setting information management when a FROM is used for backing up the user setting information stored in the SRAM when the power of the mobile phone is turned off. The system is described. Hereinafter, this technique is referred to as the first cited technique.
【0005】この方法によると、フラッシュメモリを、
相互に独立に消去することができる複数のブロックに分
割し、各ブロックを、バックアップ保存されるユーザー
設定情報が書き込まれるユーザー設定情報領域と、ブロ
ック毎のブロック管理情報が書き込まれるブロック管理
領域とに分割し、そして、バックアップ保存処理(SR
AMからユーザー設定情報を読み出してフラッシュメモ
リに書き込む処理)されたブロックの、当該処理を受け
た順序を判定するユーザー設定情報履歴をブロック管理
情報としてブロック毎に生成する。According to this method, the flash memory is
It is divided into multiple blocks that can be erased independently of each other, and each block is divided into a user setting information area where backup setting user setting information is written and a block management area where block management information for each block is written. Split and backup save process (SR
A user setting information history for determining the order in which the processing is performed on the blocks processed by reading the user setting information from the AM and writing it in the flash memory is generated for each block as block management information.
【0006】電源断等の事象が発生したときにバックア
ッププログラムを起動するトリガが発生すると、総ての
ブロックのブロック管理情報を比較して最先(最も過去
に)にバックアップ保存処理を受けたブロックと最近に
バックアップ保存処理を受けたブロックとを判定し、最
先にバックアップ保存処理を受けたブロックを消去して
当該ブロックにバックアップ保存を実行し、その消去お
よびバックアップ保存処理されるブロックのブロック管
理情報を、前記最近にバックアップ保存処理を受けたブ
ロックのブロック管理領域に書き込む。When a trigger for starting a backup program occurs when an event such as power failure occurs, the block management information of all blocks is compared and the block that has undergone the backup saving process first (the earliest) And the block that has undergone the backup save process recently are erased, the block that received the backup save process first is erased, the backup save is executed for the block, and the block management of the block to be erased and backup saved Information is written in the block management area of the block that has been recently backed up and saved.
【0007】この引用技術1においては、最先にバック
アップ保存処理を受けたブロックが使用済みブロックと
判定されて消去され、その消去後の当該ブロックが未使
用ブロックと判定されてユーザー設定情報の書き込みが
実行される。そして、仮に、その書き込み過程に失敗し
ても、最近にバックアップ保存処理を受けたブロックに
保存されているユーザー設定情報を使用することができ
る。したがって、バックアップに障害が生じても、ユー
ザー設定情報が失われることはなくなる。In this cited technique 1, the block that was subjected to the backup storage processing first is determined to be a used block and is erased, and the block after the erase is determined to be an unused block and the user setting information is written. Is executed. Even if the writing process fails, the user setting information stored in the block that has been recently backed up and stored can be used. Therefore, even if the backup fails, the user setting information will not be lost.
【0008】特開2000−284996には、携帯電
話機に用途が限定されていないけれど、データの書込み
が一定量のデータ単位(以下、ページと記す)で行われ
るメモリのメモリ管理方式が記載されている。以下、こ
の技術を第2の引用技術を記す。Japanese Unexamined Patent Publication No. 2000-284996 describes a memory management system for a memory, which is not limited to a mobile phone, but in which data is written in a fixed amount of data unit (hereinafter referred to as page). There is. Hereinafter, this technique will be referred to as the second cited technique.
【0009】この方式においては、メモリ上のメモリ空
間を所定サイズの複数のページで成るブロックに分割し
該ブロック毎に使用済みページと未使用ページとを識別
する識別テーブルを生成する。(本発明との対照を容易
にするために、引用技術2の「ブロック」および「ゾー
ン」を、ここでは、それぞれ「ページ」および「ブロッ
ク」と記す。)メモリへのアクセス時には、識別テーブ
ルを参照し未使用のページを含んでいるブロックを選択
するとともに、選択したブロック中の、個々のページの
論理アドレスと物理アドレスとを対応付けるための変換
テーブルを生成し、該変換テーブルを参照してアクセス
すべき論理アドレスに対応する物理アドレスを取得す
る。In this method, the memory space on the memory is divided into blocks each having a predetermined size, and an identification table for identifying a used page and an unused page is generated for each block. (In order to facilitate the contrast with the present invention, the “block” and “zone” of the cited technique 2 are referred to as “page” and “block”, respectively.) When accessing the memory, the identification table is While referring to and selecting a block including an unused page, a conversion table for associating a logical address and a physical address of each page in the selected block is generated, and access is performed by referring to the conversion table. Get the physical address that corresponds to the logical address that should be.
【0010】このように、未使用のページをもつブロッ
クのみについて変換テーブルを作成するので、未使用ペ
ージを含まないブロックについて変換テーブルを作成す
るという無駄な演算が省かれるばかりでなく、1ブロッ
ク内の少数のページについて変換テーブルを作成すれば
よいので、バッファの使用を極力抑えながら書き込みに
必要な物理アドレスを取得することができる。As described above, since the conversion table is created only for the block having the unused page, not only the wasteful operation of creating the conversion table for the block not including the unused page is omitted, but also in one block. Since it is only necessary to create the conversion table for a small number of pages, it is possible to obtain the physical address required for writing while suppressing the use of the buffer as much as possible.
【0011】[0011]
【発明が解決しようとする課題】上記の第1の引用技術
は、FROMを用いる場合には消去と書き込みが連鎖し
て行われる例として引用されたものである。したがっ
て、FROMをバックアップメモリとしてではなく、メ
モリ装置の不揮発情報を格納する不揮発領域として使用
する場合には適用されない技術である。その理由は、例
えば、携帯電話機の移動機情報(例えばID情報、無線
部調整情報、装置調整情報等)は、通常の個人情報のよ
うに頻繁に変更される情報ではないので、FROMに格
納されることが多く、このような場合に、引用技術1の
ように、1発のトリガ信号でブロック毎にFROMへ情
報を書き込む事態は生じにくいからである。The above-mentioned first cited technique is cited as an example in which erasing and writing are performed in a chain when a FROM is used. Therefore, this technique is not applied when the FROM is used as a non-volatile area for storing non-volatile information of the memory device, not as a backup memory. The reason is that, for example, mobile device information (for example, ID information, wireless unit adjustment information, device adjustment information, etc.) of a mobile phone is not information that is frequently changed like normal personal information, and is therefore stored in FROM. This is because in such a case, the situation in which information is written to the FROM for each block by one trigger signal is unlikely to occur in such a case as in the cited technique 1.
【0012】上記の第2の引用技術は、データの書込み
が一定量のデータ単位(以下、ページと記す)で行われ
る場合のメモリのメモリ管理方式であるので、FROM
のデータ書き込みにも適用することができる技術であ
る。The above-mentioned second cited technique is a memory management system of a memory when data is written in a fixed amount of data unit (hereinafter referred to as page).
This is a technology that can also be applied to the data writing of.
【0013】しかし、この技術を実際にFROMに適用
する場合には次の問題が発生する。前記したように、F
ROMの書き込みは消去との連鎖において実行されるけ
れど、引用技術2においては、消去がどのようなデータ
量単位で行われるのか、例えば、ブロック単位で消去が
おこなわれるのか、またはページ単位でおこなわれるの
かが明らかではない。However, the following problems occur when this technique is actually applied to FROM. As mentioned above, F
Although the writing of the ROM is executed in a chain with the erasing, in the cited technique 2, the erasing is performed in what data amount unit, for example, the erasing is performed in the block unit or in the page unit. It's not clear what.
【0014】また、管理テーブルに記述される管理情報
は「使用済みページ」と「未使用ページ」であるが、
「使用済みページ」には、そのページに書き込まれてい
るデータが有効である場合(有効ページ)と無効になっ
たデータである場合(無効ページ)があり得る。その無
効ページは無効のまま維持しておくのか、または消去す
るのかが明らかではない。The management information described in the management table is "used pages" and "unused pages".
The "used page" may be valid (valid page) or invalid data (invalid page) written in the page. It is not clear whether the invalid page should remain invalid or be erased.
【0015】引用技術2にはれらの点に関する技術が含
まれていないので、この技術をFROMに適用するため
には、さらに工夫が必要である。Since the cited technique 2 does not include a technique relating to these points, further devising is required to apply this technique to the FROM.
【0016】本発明の目的は、消去処理を考慮に入れた
上で携帯電話機の不揮発メモリエリアの管理方法を提供
し、この管理方法に基づいて、携帯電話機の個々の不揮
発情報(例えばID情報、無線部調整情報、装置調整情
報等、携帯電話機の1端末毎に異なるデータ)を蓄積す
る不揮発エリアにおいてデータ書き換えの際に次に使用
する未使用領域の高速検索方法を提供することにある。An object of the present invention is to provide a method for managing a nonvolatile memory area of a mobile phone in consideration of erasing processing, and based on this management method, individual nonvolatile information (eg ID information, etc.) of the mobile phone is provided. Another object of the present invention is to provide a high-speed search method for an unused area to be used next when rewriting data in a non-volatile area that stores wireless unit adjustment information, device adjustment information, etc., which is different for each mobile phone terminal.
【0017】[0017]
【課題を解決するための手段】上記の目的を達成するた
めに、本発明の、携帯電話機のメモリの不揮発エリア管
理方法は、不揮発エリアに、相互に独立に消去すること
ができる複数のブロックを設定し、各ブロックに、当該
ブロックの使用中、使用済み、未使用を表わす情報がブ
ロック管理情報として書き込まれるブロック管理領域
と、所定のデータ量を1ページとして、ページ単位でデ
ータが書き込まれる、複数のページを有するデータ領域
と、前記データ領域における各ページの未使用状態であ
るか、または使用中状態であって使用ページに蓄積され
ているデータが有効または無効であることを表す情報を
ページ管理情報として保持するページ管理領域とを設定
する。In order to achieve the above object, a method for managing a nonvolatile area of a memory of a mobile phone according to the present invention includes a plurality of blocks that can be erased independently from each other in the nonvolatile area. In each block, data is written page by page with a block management area in which information indicating used, used, and unused of the block is written as block management information, and a predetermined data amount as one page. A data area having a plurality of pages and information indicating that each page in the data area is in an unused state or is in use and the data accumulated in the used page is valid or invalid A page management area to be held as management information is set.
【0018】そして、複数のブロックをブロック毎の輪
番で順次に使用し、使用ブロックにデータを書き込むと
きには、所定の検索アルゴリズムに従って、ページ管理
領域に蓄積されているページ管理情報から未使用ページ
を検索し、検索されたページにデータを書き込み、検索
の結果、未使用ページが検索されなかったとき、すなわ
ち、当該ブロックが完全使用ブロックであったときに
は、当該ブロックの有効データを次ぎの輪番の未使用ブ
ロックにコピーして、そのコピー後の当該完全使用ブロ
ックを使用済みブロックとして消去する。Then, when a plurality of blocks are sequentially used in the rotation number of each block and data is written in the used block, an unused page is searched from the page management information accumulated in the page management area according to a predetermined search algorithm. However, if the unused page is not found as a result of the search by writing the data to the searched page, that is, if the block is a completely used block, the valid data of the block is used as the next unused number of the block. The block is copied to the block and the completely used block after the copying is erased as a used block.
【0019】完全使用ブロックの有効データを次ぎの輪
番の未使用ブロックにコピーする処理は、コピーする有
効データをコピー先の未使用ブロックのデータ領域へ、
所定のページ番号順に順次にコピーする処理を含んでい
る。In the process of copying the valid data of the completely used block to the unused block of the next ring number, the valid data to be copied is transferred to the data area of the unused block of the copy destination.
It includes a process of sequentially copying in a predetermined page number order.
【0020】高速検索をするために、所定の検索アルゴ
リズムとして、2分検索アルゴリズムを採用することが
望ましい。In order to perform high speed search, it is desirable to adopt a binary search algorithm as a predetermined search algorithm.
【0021】使用ページに蓄積されているデータの有効
または無効は、予め設定された基準に従って自動判定さ
れる。The validity or invalidity of the data stored in the used page is automatically determined according to a preset standard.
【0022】不揮発エリアはフラッシュメモリの所定領
域であることが望ましい。The non-volatile area is preferably a predetermined area of the flash memory.
【0023】不揮発エリアに蓄積されるデータは、当該
携帯電話機の不揮発情報、例えばID情報、無線部調整
情報、装置調整情報等の個々の移動機情報であることが
できる。また、不揮発エリアに蓄積されるデータは、当
該携帯電話機のユーザによって選定されたデータ、例え
ば、ユーザが、電源断等によって消滅させたくない情報
であることができる。The data stored in the non-volatile area can be non-volatile information of the mobile phone, for example, individual mobile device information such as ID information, radio section adjustment information, device adjustment information and the like. Further, the data stored in the non-volatile area may be data selected by the user of the mobile phone, for example, information that the user does not want to be erased due to power failure or the like.
【0024】[0024]
【発明の実施の形態】本発明の実施形態を、携帯電話機
の不揮発メモリエリアとしてFROMのメモリ空間の所
定領域を用い、携帯電話機のID情報、無線部調整情
報、装置調整情報等の不揮発情報を格納した場合におけ
る不揮発エリア管理方法の場合について説明する。BEST MODE FOR CARRYING OUT THE INVENTION According to an embodiment of the present invention, a predetermined area of a memory space of FROM is used as a nonvolatile memory area of a mobile phone, and nonvolatile information such as mobile phone ID information, radio section adjustment information, device adjustment information, etc. is stored. A case of the non-volatile area management method in the case of storing will be described.
【0025】図1は、不揮発エリアに使用するFROM
領域のブロックの構成を説明する図である。本実施形態
の不揮発エリアには、相互に独立に消去することができ
る複数のブロックが設定されている。各ブロックには、
ブロック管理領域1、ページ管理領域2、およびデータ
領域3が設定されている。ブロック管理領域1には、当
該ブロックの「使用」「使用済み」「未使用」を管理す
る情報がブロック管理情報として書き込まれている。本
実施形態においては、不揮発エリアを3ブロックとし、
その3ブロックをローテーション(輪番)で使用するた
めのブロック管理情報に、図中xxFFF0Hを先頭アドレス
とする1バイトが割り当てられている。FIG. 1 shows a FROM used in a non-volatile area.
It is a figure explaining the structure of the block of an area | region. In the non-volatile area of this embodiment, a plurality of blocks that can be erased independently of each other are set. Each block has
A block management area 1, a page management area 2, and a data area 3 are set. In the block management area 1, information for managing “used”, “used”, and “unused” of the block is written as block management information. In this embodiment, the non-volatile area is 3 blocks,
One byte having a start address of xxFFF0H in the figure is assigned to the block management information for using the three blocks in rotation (turning).
【0026】データ領域3は、所定のデータ量を1ペー
ジとして、ページ単位で不揮発データが書き込まれる複
数のページを含んでいる。図1に記述されているページ
番号xxは、不揮発情報を格納するメモリ空間をページ
で表したものである。本実施形態においては、16バイ
トのデータエリアを1ページとし、データ領域3が0000H
〜DFFFH(3584ページ)に設定されている。(図
中、例えば、xx00100Hはページ番号xxのページの物理ア
ドレス00100Hを表す。)ページ管理領域2(xxE000H〜x
xFFFFH)には、データ領域における各ページの使用、未
使用を表す情報がページ管理情報として保持される。本
実施形態においては、使用を表す情報は、蓄積されてい
るデータの有効・無効情報によって表示される。したが
って、ページ管理領域2によって「未使用」、「有
効」、「無効」が管理される。図1においては、データ
領域における3584枚のページについて、各ページの
ページ管理情報に2バイトが割り当てられている。本実
施形態においては、未使用はFFFFH、有効はF0xxH、無効
は00xxHで標識されている。The data area 3 includes a plurality of pages in which nonvolatile data is written page by page with a predetermined data amount as one page. The page number xx described in FIG. 1 represents a memory space for storing nonvolatile information in pages. In this embodiment, a 16-byte data area is set as one page, and the data area 3 is 0000H.
~ It is set to DFFFH (page 3584). (In the figure, for example, xx00100H represents the physical address 00100H of the page of page number xx.) Page management area 2 (xxE000H to x
xFFFFH) holds, as page management information, information indicating whether each page is used or not in the data area. In this embodiment, the information indicating the use is displayed by the valid / invalid information of the accumulated data. Therefore, the page management area 2 manages “unused”, “valid”, and “invalid”. In FIG. 1, for 3584 pages in the data area, 2 bytes are allocated to the page management information of each page. In this embodiment, unused is labeled FFFFH, valid is labeled F0xxH, and invalid is labeled 00xxH.
【0027】複数のブロック(図1の実施例においては
3ブロック)は、ブロック毎のローテーションで順次に
不揮発データの書き込みブロック(使用ブロック)が決
定される。使用中ブロックへのデータの書き込みは、所
定の検索アルゴリズムに従って行われ、ページ管理領域
に蓄積されているページ管理情報から所定の検索アルゴ
リズムによって検索された未使用ページにデータが書き
込まれる。本実施形態においては、所定の検索アルゴリ
ズムとして2分検索アルゴリズムが用いられている。With respect to a plurality of blocks (3 blocks in the embodiment of FIG. 1), nonvolatile data write blocks (use blocks) are sequentially determined by rotation of each block. The writing of data to the in-use block is performed according to a predetermined search algorithm, and the data is written to the unused page searched by the predetermined search algorithm from the page management information accumulated in the page management area. In this embodiment, a binary search algorithm is used as the predetermined search algorithm.
【0028】検索の結果、未使用ページが検索されなか
ったとき、すなわち、当該ブロックの全ページが書き込
まれていたとき(以下、全ページが書き込まれているブ
ロックを完全使用ブロックと記す)には、当該ブロック
の有効データを次ぎのローテーション順序の未使用ブロ
ックにおけるデータ領域へ、所定のページ順にコピーす
る。そして、当該完全使用ブロックを使用済みブロック
として消去する。As a result of the search, when an unused page is not searched, that is, when all pages of the block are written (hereinafter, a block in which all pages are written is referred to as a completely used block). , The valid data of the block is copied to the data area in the unused block in the next rotation order in a predetermined page order. Then, the completely used block is erased as a used block.
【0029】本実施形態においては、使用中ブロックに
おける未使用ページ検索に2分検索を採用するので、次
の未使用ブロックへの有効データのコピーは、そのコピ
ー先未使用ブロックの最も低いページ番号から高いペー
ジ番号のページへ、順次に行われる。または、そのコピ
ー先未使用ブロックの最も高いページ番号から低いペー
ジ番号のページへ、順次に行われる。In this embodiment, since the binary search is used for the unused page search in the in-use block, the copy of valid data to the next unused block is performed by copying the lowest page number of the unused block at the copy destination. To the page with the highest page number. Alternatively, the copy destination unused blocks are sequentially processed from the highest page number to the lowest page number.
【0030】コピー先未使用ブロックのデータ領域にお
ける有効データコピーのページ番号順は、当該未使用ブ
ロックにおいて使用される未使用ページ検索アルゴリズ
ムに好都合になるように定められることが望ましい。そ
の理由は、コピー先未使用ブロックにコピーされた有効
データのページ配置は、そのコピー先未使用ブロックが
使用中ブロックとして使用されるとき、未使用ページ検
索領域の初期設定値を構成するからである。It is desirable that the order of page numbers of valid data copies in the data area of the unused block at the copy destination is determined so as to be convenient for the unused page search algorithm used in the unused block. The reason is that the page layout of valid data copied to the copy destination unused block configures the initial setting value of the unused page search area when the copy destination unused block is used as a used block. is there.
【0031】上記の使用ブロックの遷移を、図1を参照
して記すと、次のように行われる。The transition of the above used blocks will be described as follows with reference to FIG.
【0032】初めに、ブロック0の0〜3583ページが不揮
発情報書き込み状態であって、ブロック1およびブロッ
ク2が未使用状態の場合を考える。このとき、ブロック
0領域が全て使用された状態(完全使用状態)で次に不
揮発情報を書き込む場合において、ブロック0の0〜3583
ページに無効ページと有効ページの両方があるときに
は、ブロック1の0ページから順にページ番号が増加する
方向に不揮発情報を書き込み、ブロック2は未使用状態
のまま維持する。このようにしてブロック0の有効デー
タのみをブロック1に統合(コピー)する。First, consider a case where pages 0 to 3583 of block 0 are in the non-volatile information writing state and blocks 1 and 2 are in the unused state. At this time, block
0 to 3583 in block 0 when writing non-volatile information next when all 0 areas are used (full use status)
When there are both invalid pages and valid pages, the nonvolatile information is written in the direction in which the page number increases in order from page 0 of block 1, and block 2 is kept unused. In this way, only valid data in block 0 is integrated (copied) into block 1.
【0033】ブロック0の0〜3583ページの不揮発情報書
き込み状態が無効データのみの場合には、ブロックの状
態は使用済みになり、消去が行われる。このとき、ブロ
ック1は不揮発情報(有効のみ)が蓄積されている使用
中状態で、ブロック2は未使用状態である。When the nonvolatile information write state of pages 0 to 3583 of block 0 is only invalid data, the state of the block becomes used and erase is performed. At this time, the block 1 is in the in-use state in which the nonvolatile information (valid only) is accumulated, and the block 2 is in the unused state.
【0034】ブロック0の消去後は、ブロック0は未使
用、ブロック1は使用中(有効のみ)、ブロック2は未
使用になる。ローテーションとは、ブロック0の使用後
は、ブロック1に使用が遷移し、ブロック1の使用後は
ブロック2に使用が遷移し、ブロック2を使用した後に
はブロック0に使用が遷移するというように、使用状態
が輪環して遷移することである。After erasing block 0, block 0 is unused, block 1 is in use (valid only), and block 2 is unused. Rotation means that after use of block 0, use transitions to block 1, after use of block 1 transitions to use of block 2, and after use of block 2 transitions to use of block 0. , The state of use is to make a ring transition.
【0035】有効データが、あるページxxに蓄積されて
いるとき、同じ情報番号の新たなデータが書き込まれる
ときには、現在蓄積されているデータは無効にされる。
その有効・無効処理は次のようにして行われる。When valid data is stored in a page xx and new data having the same information number is written, the currently stored data is invalidated.
The valid / invalid processing is performed as follows.
【0036】不揮発情報に対して、情報番号が割り振ら
れており、同じ情報番号の新しいデータを書き込む際、
旧データを無効にし、新しいデータを有効にする。例え
ば、最初の状態においてID情報が有効情報としてxxE000
に蓄積されている場合において新しいID情報の書き込み
を行うとき、新しいID情報をxxE002に書き込み、新しい
データは有効にして古いデータを無効にする。すなわ
ち、xxE000に書き込まれているID情報は無効にされる。An information number is assigned to the non-volatile information, and when writing new data of the same information number,
Disable the old data and enable the new data. For example, ID information is xxE000 as valid information in the first state.
When the new ID information is written in the case of being stored in, the new ID information is written in xxE002, the new data is valid and the old data is invalid. That is, the ID information written in xxE000 is invalidated.
【0037】上記の実施例は、有効・無効の判定基準を
時間的に新しいか、古いかに置いている。しかし、その
判定を他の基準に準拠して行うことも勿論可能である。
データの有効・無効はソフトで認識する。したがって、
有効・無効の判定を自動化することができる。In the above embodiment, the validity / invalidity criterion is set to be new or old in terms of time. However, it is of course possible to make the determination based on other standards.
The software recognizes whether the data is valid or invalid. Therefore,
The determination of validity / invalidity can be automated.
【0038】次に、本実施形態の動作を説明する。Next, the operation of this embodiment will be described.
【0039】図2は、不揮発エリアにデータを書き込む
ときに未使用ブロックを使用ブロックに決定した後に2
分検索法によって未使用ページを検索する処理フローで
ある。検索方法はページ管理領域を2で割った中間アド
レスを求め、中間アドレスが未使用かを判断する。未使
用であったら検索する範囲を中間アドレスより前のアド
レスを2分検索し、使用中であったら中間アドレスより
後のアドレスを2分検索するというふうに検索範囲を狭
め、最終的には、2で割った値が、奇数アドレス(ペー
ジ管理領域は2バイトの為)まで、本実施例では14
(0×0E)まで検索範囲の絞りを行う。その後は、1
ページ(ページ管理領域は2バイト)毎にページ管理領
域が未使用であるかを見て未使用エリアを決定する。図
2において、先ず、検索するエリアのスタートアドレス
(=SA)を設定する(ステップS1)。このスタートア
ドレスの初期値としてページ管理領域の先頭アドレスを
設定する。次に、検索するエリアのエンドアドレス(=E
A)を設定する(ステップS2)。このエンドアドレス
の初期値としてページ管理領域のエンドアドレスを設定
する。次に、検索領域のサイズ(SIZE=EA-SA)を計算す
る(ステップS3)。次に、サイズを2で除算する(S2
=SIZE/2、ステップS4)。次に検索するエリアの中間
アドレス(PA=SA+S2)を求める(ステップS5)。次
に、PAが14(0x0E)であるか、否かを判断する
(ステップS6)。PAが14(0x0E)である場合に
は、2分検索で絞り込まれた残り14バイトの未使用領
域を検索して(ステップS7)2分検索処理を終了す
る。FIG. 2 shows that after the unused block is determined to be the used block when writing data in the non-volatile area, 2
It is a processing flow which searches an unused page by the minute search method. As a search method, an intermediate address obtained by dividing the page management area by 2 is obtained, and it is determined whether the intermediate address is unused. If it is not used, the search range will be searched for 2 minutes before the intermediate address, and if it is in use, the address after the intermediate address will be searched for 2 minutes, narrowing the search range, and finally, The value divided by 2 is an odd address (since the page management area is 2 bytes), which is 14 in this embodiment.
The search range is narrowed down to (0 × 0E). Then 1
The unused area is determined by checking whether the page management area is unused for each page (page management area is 2 bytes). In FIG. 2, first, the start address (= SA) of the area to be searched is set (step S1). The start address of the page management area is set as the initial value of this start address. Next, the end address of the area to be searched (= E
A) is set (step S2). The end address of the page management area is set as the initial value of this end address. Next, the size of the search area (SIZE = EA-SA) is calculated (step S3). Then divide the size by 2 (S2
= SIZE / 2, step S4). Next, the intermediate address (PA = SA + S2) of the area to be searched is obtained (step S5). Next, it is determined whether or not the PA is 14 (0x0E) (step S6). If the PA is 14 (0x0E), the unused area of the remaining 14 bytes narrowed down by the binary search is searched (step S7), and the binary search processing ends.
【0040】ステップ6の判断によってPAが14(0x
0E)より大きい場合には中間アドレス(PA=*PA)を読
み出す(ステップS8)。次に、中間アドレス(PA=*P
A)のページが未使用か、否かを判断し(ステップS
9)、未使用の場合には中間アドレス(PA)にエンドア
ドレス(EA)を設定(ステップS10)してステップS
3に戻る。中間アドレス(PA)が使用ページである場合
には中間アドレス(PA)にスタートアドレス(SA)を設
定(ステップS11)してステップS3に戻る。ステッ
プS3からステップS10、ステップS11までの処理
は、PAが14(0x0E)になるまで繰り返され、PAが
14(0x0E)になったとき、ステップS7に処理が
進行し、ステップS7の処理が終了すると2分検索処理
を終了する。According to the judgment in step 6, PA is 14 (0x
If it is larger than 0E, the intermediate address (PA = * PA) is read (step S8). Next, the intermediate address (PA = * P
It is judged whether or not the page A) is unused (step S
9) If not used, set the end address (EA) to the intermediate address (PA) (step S10) and then step S
Return to 3. If the intermediate address (PA) is the used page, the start address (SA) is set to the intermediate address (PA) (step S11), and the process returns to step S3. The process from step S3 to step S10 and step S11 is repeated until PA becomes 14 (0x0E). When PA becomes 14 (0x0E), the process proceeds to step S7, and the process of step S7 ends. Then, the 2-minute search process ends.
【0041】前掲の実施形態においては、携帯電話機の
不揮発情報を不揮発エリアに蓄積した場合について説明
したけれど、不揮発情報のみではなく電話帳等、SRA
Mのバックアップ電池切れでも消したくないデータを、
ユーザー設定で不揮発エリアに格納した場合において
も、同様に、未使用領域の検索を高速化することができ
る。In the above-described embodiment, the case where the nonvolatile information of the mobile phone is stored in the nonvolatile area has been described. However, not only the nonvolatile information but also the SRA such as a telephone directory.
Data that you don't want to erase even when M's backup battery runs out,
Even when the data is stored in the non-volatile area by the user setting, similarly, the search for the unused area can be speeded up.
【0042】[0042]
【発明の効果】以上説明したように、本発明において
は、データ領域をページに分割し、ページごとの未使
用、有効、無効をページ管理領域において管理し、その
管理情報を2分検索することによって高速検索を実現す
ることができるという効果がある。As described above, in the present invention, the data area is divided into pages, and the unused, valid, and invalid of each page are managed in the page management area, and the management information is searched for twice. This has the effect of enabling high-speed search.
【図1】不揮発エリアに使用するFROM領域のブロッ
クの構成を説明する図である。FIG. 1 is a diagram illustrating a configuration of blocks in a FROM area used in a nonvolatile area.
【図2】2分検索法によって未使用ページを検索する処
理フローである。FIG. 2 is a processing flow for searching an unused page by a binary search method.
1 ブロック管理領域 2 ページ管理領域 3 データ領域 1 block management area 2 page management area 3 data areas
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5B060 AA02 AA06 AA14 5K027 AA11 BB01 GG00 MM00 ─────────────────────────────────────────────────── ─── Continued front page F-term (reference) 5B060 AA02 AA06 AA14 5K027 AA11 BB01 GG00 MM00
Claims (7)
方法において、 前記不揮発エリアに、相互に独立に消去することができ
る複数のブロックを設定し、 各ブロックに、当該ブロックの使用中、使用済み、未使
用を表わす情報がブロック管理情報として書き込まれる
ブロック管理領域と、所定のデータ量を1ページとし
て、ページ単位でデータが書き込まれる、複数のページ
を有するデータ領域と、前記データ領域における各ペー
ジの未使用状態であるか、または使用中状態であって使
用ページに蓄積されているデータが有効または無効であ
ることを表す情報をページ管理情報として保持するペー
ジ管理領域とを設定し、 前記複数のブロックをブロック毎の輪番で順次に使用
し、使用ブロックにデータを書き込むときには、所定の
検索アルゴリズムに従って、ページ管理領域に蓄積され
ているページ管理情報から未使用ページを検索し、検索
されたページにデータを書き込み、 前記検索の結果、未使用ページが検索されなかったとき
には、すなわち、当該ブロックが完全使用ブロックであ
ったときには、当該ブロックの有効データを次ぎの輪番
の未使用ブロックにコピーして、そのコピー後の当該ブ
ロックを使用済みブロックとして消去する、ことを特徴
とする携帯電話機のメモリの不揮発エリア管理方法。1. A method for managing a non-volatile area of a memory of a mobile phone, wherein a plurality of blocks that can be erased independently from each other are set in the non-volatile area, and each block is used, used, or used. A block management area in which information indicating unused is written as block management information, a data area having a plurality of pages in which data is written page by page with a predetermined data amount as one page, and each page in the data area. Set a page management area that holds information indicating that the data accumulated in the used page is valid or invalid, which is in an unused state or a used state, and a page management area. When you use the blocks in order by rotating each block and write data to the blocks, use the specified search algorithm. According to the gorism, an unused page is searched from the page management information accumulated in the page management area, data is written to the searched page, and when the unused page is not searched as a result of the search, that is, the block Is a completely used block, the valid data of the block is copied to an unused block of the next wheel number, and the copied block is erased as a used block. Non-volatile area management method.
輪番の未使用ブロックにコピーする処理は、コピーする
有効データをコピー先の未使用ブロックのデータ領域
へ、所定のページ番号順に順次にコピーする処理を含ん
でいる、請求項1に記載の方法。2. The process of copying the valid data of a completely used block to an unused block of the next ring number, the valid data to be copied is sequentially copied to the data area of the unused block of the copy destination in order of a predetermined page number. The method of claim 1 including processing.
ルゴリズムである、請求項1に記載の方法。3. The method of claim 1, wherein the predetermined search algorithm is a binary search algorithm.
効または無効は、予め設定された基準に従って自動判定
される、請求項1に記載の方法。4. The method according to claim 1, wherein the validity or invalidity of the data stored in the used page is automatically determined according to a preset standard.
領域である、請求項1に記載の方法。5. The method of claim 1, wherein the non-volatile area is a predetermined area of flash memory.
該携帯電話機の不揮発情報を含んでいる、請求項5に記
載の方法。6. The method according to claim 5, wherein the data stored in the non-volatile area includes non-volatile information of the mobile phone.
該携帯電話機のユーザによって選定されたデータを含ん
でいる、請求項5に記載の方法。7. The method of claim 5, wherein the data stored in the non-volatile area includes data selected by a user of the mobile phone.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002000486A JP2003203007A (en) | 2002-01-07 | 2002-01-07 | Nonvolatile area control method for memory of mobile phone |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002000486A JP2003203007A (en) | 2002-01-07 | 2002-01-07 | Nonvolatile area control method for memory of mobile phone |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2003203007A true JP2003203007A (en) | 2003-07-18 |
Family
ID=27640860
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002000486A Pending JP2003203007A (en) | 2002-01-07 | 2002-01-07 | Nonvolatile area control method for memory of mobile phone |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2003203007A (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006155461A (en) * | 2004-12-01 | 2006-06-15 | Sony Corp | Information processor and processing method, and program |
JP2007249509A (en) * | 2006-03-15 | 2007-09-27 | Matsushita Electric Ind Co Ltd | Data management method for nonvolatile storage device |
JP2007272657A (en) * | 2006-03-31 | 2007-10-18 | Tdk Corp | Memory controller, flash memory system, and control method of flash memory |
JP2007323138A (en) * | 2006-05-30 | 2007-12-13 | Tdk Corp | Memory controller, flash memory system, and control method of flash memory |
CN110457231A (en) * | 2008-11-06 | 2019-11-15 | 慧荣科技(深圳)有限公司 | For managing the method and its relevant memory storage of a memory storage |
-
2002
- 2002-01-07 JP JP2002000486A patent/JP2003203007A/en active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006155461A (en) * | 2004-12-01 | 2006-06-15 | Sony Corp | Information processor and processing method, and program |
JP2007249509A (en) * | 2006-03-15 | 2007-09-27 | Matsushita Electric Ind Co Ltd | Data management method for nonvolatile storage device |
JP2007272657A (en) * | 2006-03-31 | 2007-10-18 | Tdk Corp | Memory controller, flash memory system, and control method of flash memory |
JP4497124B2 (en) * | 2006-03-31 | 2010-07-07 | Tdk株式会社 | Memory controller, flash memory system, and flash memory control method |
JP2007323138A (en) * | 2006-05-30 | 2007-12-13 | Tdk Corp | Memory controller, flash memory system, and control method of flash memory |
JP4513782B2 (en) * | 2006-05-30 | 2010-07-28 | Tdk株式会社 | Memory controller, flash memory system, and flash memory control method |
CN110457231A (en) * | 2008-11-06 | 2019-11-15 | 慧荣科技(深圳)有限公司 | For managing the method and its relevant memory storage of a memory storage |
CN110457231B (en) * | 2008-11-06 | 2023-10-24 | 慧荣科技(深圳)有限公司 | Method for managing a memory device and related memory device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6839823B1 (en) | Increased reliability of data stored on flash memory in applications sensitive to power-loss | |
CN1900919B (en) | Flash memory comprising a plurality of blocks | |
KR100843543B1 (en) | System comprising flash memory device and data recovery method thereof | |
US6154808A (en) | Method and apparatus for controlling data erase operations of a non-volatile memory device | |
CN102737715B (en) | For the method for power fail safeguard of data of NOR flash memory | |
US20040139310A1 (en) | Information processing apparatus, memory management apparatus, memory management method, and information processing method | |
JP2002157170A (en) | Cellular phone user setting information managing method and system | |
CN109558335B (en) | Nor Flash memory based file storage format of embedded system | |
US20050144396A1 (en) | Coalescing disk write back requests | |
US20080250188A1 (en) | Memory Controller, Nonvolatile Storage, Nonvolatile Storage System, and Memory Control Method | |
JP2005190288A (en) | Memory controller, flash memory system therewith, and method for controlling flash memory | |
JP2000182381A (en) | Batch erasable non-volatile memory | |
JP2004303238A (en) | Flash memory access device and method | |
CN113568579B (en) | Memory, data storage method and data reading method | |
JP5166211B2 (en) | Device using non-volatile memory as main memory | |
JP4175881B2 (en) | Nonvolatile memory storage method and storage device | |
JP2003203007A (en) | Nonvolatile area control method for memory of mobile phone | |
KR20050076156A (en) | Data recovery device and method thereof | |
JPH07114500A (en) | Nonvolatile memory device | |
JP2008084184A (en) | Memory controller | |
CN110399143A (en) | Brush machine method, apparatus, computer storage medium and the system of terminal device | |
JP3801176B2 (en) | Memory control method, storage device, control program, and readable recording medium | |
JP2004062554A (en) | Managing method of flash memory | |
FR2842920A1 (en) | MEMORY SYSTEM BASED ON REMANENT MEMORY AND WRITING METHOD THEREOF | |
JP3313576B2 (en) | Memory access control method and device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20041203 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20041203 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050418 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050420 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050620 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20050810 |