JP2000076116A - 電子機器及びその制御方法及び記憶媒体 - Google Patents

電子機器及びその制御方法及び記憶媒体

Info

Publication number
JP2000076116A
JP2000076116A JP24626698A JP24626698A JP2000076116A JP 2000076116 A JP2000076116 A JP 2000076116A JP 24626698 A JP24626698 A JP 24626698A JP 24626698 A JP24626698 A JP 24626698A JP 2000076116 A JP2000076116 A JP 2000076116A
Authority
JP
Japan
Prior art keywords
file
sector
block
flash memory
erasing
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.)
Withdrawn
Application number
JP24626698A
Other languages
English (en)
Inventor
Hiroshi Nishikawa
寛 西川
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.)
Canon Electronic Business Machines HK Co Ltd
Original Assignee
Canon Electronic Business Machines HK Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Electronic Business Machines HK Co Ltd filed Critical Canon Electronic Business Machines HK Co Ltd
Priority to JP24626698A priority Critical patent/JP2000076116A/ja
Publication of JP2000076116A publication Critical patent/JP2000076116A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Memory System (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Read Only Memory (AREA)

Abstract

(57)【要約】 【課題】 フラッシュメモリに格納されたデータの削除
を、簡単な処理で、しかも、高速に行え、操作環境を向
上させる。 【解決手段】 フラッシュメモリ内の或るセクタ内のフ
ァイルを削除するとき、そのセクタ内の、削除しようと
しているファイルを構成する小ブロック以外であって、
有効なブロックをそのままの相対的な位置を維持したま
まSRAMに格納する。そして、該当セクタを消去し、
その後でSRAMに格納したブロックをそのままの位置
を維持したままセクタに書き込む。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はフラッシュメモリを
有する電子機器及びその制御方法及び記憶媒体に関する
ものである。
【0002】
【従来の技術】近年、携帯型電子機器(例えば電子手
帳、電子メモ帳、電子スケジューラ、或いはこれらの統
合装置)が普及してきているが、この種の装置では、外
出先で使用することがその主要環境であるので、電池或
いはバッテリーが消耗してもそのデータを保持し続ける
ことは要求される。従って、一般には、フラッシュメモ
リを用いることが多い。
【0003】ところで、フラッシュメモリの消去制御に
関して多くの発明が公開されている。例えば、米国モン
トローラ社による米国特許第5,473,569号にお
いては、特定のブロックをコピーブロックとして指定
し、消去したいメモリブロックからデータをコピーブロ
ックへ移していき、必要なデータをコピーブロックに移
した後そのメモリブロックを消去し、この消去済メモリ
ブロックを新たなコピーブロックとして用いる方法を提
供している。
【0004】この制御はフラッシュメモリのハード的な
構造上の制限に起因、つまり、SRAMのようにバイト
単位で指定したアドレスのデータを消去しないで変更で
きる構造とはなっていず、大きなブロック単位(64K
バイト単位が比較的標準的なブロック単位)を消去命令
で消去した後にバイト単位で指定したアドレスにデータ
を書き込んでデータ変更を行う必要があるためである。
そして、この提案では、有効なデータと消去するデータ
が混在している場合、その有効データを一時的にSRA
M等の他のメモリへ待避した後に消去し有効データを再
書き込みする。
【0005】
【発明が解決しようとする課題】ところが、上記した従
来技術に於いては、例えばあるファイルの消去時に消去
部分のファイルを除いて残りのファイルをフラッシュメ
モリのおおきなサイズのブロック(64Kバイト)のコ
ピーブロックに順次つめて書き込むことになるので、有
効なブロックを管理しているインデックスもその都度変
更する必要があり複雑な処理が必要なり、尚且つ、時間
もかかる。しかも、メモリの空き領域がファイルのサイ
ズよりも小さい場合は消去済のメモリブロックを新たに
探し出すことも必要になる。
【0006】
【課題を解決するための手段】本発明にかかる点に鑑み
なされたものであり、フラッシュメモリに格納されたデ
ータの削除を、簡単な処理で、しかも、高速に行え、操
作環境を向上させることを可能ならしめる電子機器及び
その制御方法及び記憶媒体を提供しようとするものであ
る。
【0007】この課題を解決するため、たとえば本発明
の電子機器は以下の構成を備える。すなわち、フラッシ
ュメモリを有する電気機器であって、フラッシュメモリ
の消去単位のセクタを、更に複数のブロックに分割し、
当該ブロックを1つ或いは複数個で1つのファイルを管
理するため、前記ファイルの管理情報を有する管理手段
と、前記フラッシュメモリに格納されているファイルを
削除するとき、当該削除対象のファイルを構成するブロ
ックを有するセクタ中の、前記削除対象のファイルを構
成するブロックを除く有効ブロック群を、当該有効ブロ
ックの格納アドレスの相対位置を保持したまま所定の揮
発性メモリに転送する転送手段と、該転送手段による転
送を行った後、前記フラッシュメモリにおける注目セク
タを消去する消去手段と、消去したセクタ内に、前記不
揮発性メモリに転送した有効ブロック群を、当該有効ブ
ロックの格納アドレスの相対位置を保持したまま書き込
む書き込み手段とを有する。
【0008】
【発明の実施の形態】以下、添付図面に従って本発明に
係る実施形態を詳細に説明する。
【0009】なお、実施形態では、携帯電子機器を例に
して説明するが、勿論、本発明はこれに限らず如何なる
電子機機器にも適用できることは、以下の説明から明ら
かになるであろう。
【0010】図1は第一の実施例における電子機器にお
けるフラッシュメモリ制御装置の構成を最も良く表すブ
ロック図である。図示において、1は後述するCPUフ
ラッシュメモリ、SRAM、ROM、CPU等の半導体
への電圧を発生すると共に、表示器用の電圧、データ通
信用の電圧などを発生する電源回路である。2は後述す
るCPUのデータ処理制御用の高速クロック、時間カウ
ント用低速クロック、表示用低速クロック、データ通信
用低速クロックを発生する九六個発生回路である。3は
タッチパネルを用いた入力回路であり、タッチパネル上
の位置を検出しデジタル化した結果をCPUに伝達し、
それをトリガーとしてCPUの制御処理をスタートさせ
る。
【0011】4は外部機器からのデータを受け取りCP
Uの制御により受け取ったデータファイルをフラッシュ
メモリへ格納したりフラッシュメモリに記憶しているデ
ータファイルをCPUの制御により送出する際の制御信
号とデータ信号の電圧変換コネクターケーブルを含むデ
ータ送受信部である。このデータ送受信部4は、例え
ば、本装置を回線に接続してメールの授受を行うため、
或いは、ホストコンピュータに接続して入力データをホ
ストコンピュータへ転送、或いは、その逆を行うために
用いられる。
【0012】5は前記した入力回路3やデータ送受信部
4より受け取った情報に基き、後述するROM8に格納
されている処理手順のプログラムに従ってデータ処理制
御を実行する中央処理装置(CPU)である。
【0013】6はCPU5でのデータ処理制御の結果を
表示するデータを記憶し表示用タイミング信号に基き表
示器に順次表示データを出力すると共に表示用電圧を電
源回路1から供給される電圧に基いて発生し表示器に供
給する表示制御回路である。
【0014】7は液晶表示技術を用いたLCD表示器で
あり表示制御回路から受け取った表示データを表示す
る。先に説明したように、この表示器7の前面にはタッ
チパネルが設けられており、例えば、不図示のペンで手
書きした位置を順次検出し、その結果である軌跡を表示
器7に表示させることで、あたかも紙上に記述するかの
如く、動作させることが可能となっている。
【0015】8は、リードオンリメモリ(ROM)であ
って、OS、各種アプリケーションプログラム、メモリ
制御プログラム、更にはフォントデータが格納されてい
る。
【0016】9はCPUのワークメモリとして使用され
るSRAM(DRAMで代用しても良い)である。この
SRAM9には、各種状態を記憶するフラグや暫定デー
タを記憶するとともに、フラッシュメモリで消去やデー
タ追加/変更を行った時にフラッシュメモリの1セクタ
ー分のデータを1時記憶するエリア(フラッシュ整理用
記憶領域9a)が設けられている。
【0017】10はデータファイルを記憶する1Mバイ
トのフラッシュメモリであり1セクター64Kバイト
(書き換え単位が64Kバイト)を16セクター内蔵し
ている。
【0018】図2は、実施形態におけるフラッシュメモ
リ10に格納されているファイルを消去する時の状態遷
移を示している。消去するタイミングであるが、所望と
するファイルをユーザが表示器上で所望とするファイル
をタッチ選択して削除指示した場合、或いは、既存のフ
ァイルをメモ帳等のプログラムで編集し、再保存した際
に従前のファイルを削除する場合等、様々な状況がある
が、ここでは説明を簡単にするために、ユーザが表示器
上で所望とするファイルを選択して削除指示した場合を
例にする。
【0019】同図(a)は1つのファイルを消去する前
のフラッシュメモリの状態を示している。1セクターは
64Kバイトであって、内部を256個の小ブロックに
細分化して管理している。従って、小ブロックのサイズ
は256バイトとなる。
【0020】ここで、図示のFILE「A」に着目する
と、このFILE「A」は部分1と部分2、すなわち、
2つの小ブロックで構成されている。これは、FILE
「A」のサイズが256バイトより大きく、512バイ
トより小さいことを意味している。今、このファイル
「A」を消去する状況になると、ファイルAを構成して
いる小ブロックを含む1セクタ(64Kバイト)をSR
AM9内のフラッシュ整理用記憶領域9aに転送する。
ただし、フラッシュ整理用記憶領域9aに転送するの
は、ファイル「A」を構成する2つの小ブロックを除
く、有効な小ブロック(以下、単に有効ブロックとい
う)群とする点である。従って、もともと何も記憶され
ていないブロックも転送対象外となる。なお、ここで言
う「有効ブロック」とは、実施形態の装置上で動作する
アプリケーションで作成したファイルを構成していて、
所謂、保存状態のファイルを構成しているブロックをい
う。
【0021】こうして、フラッシュ整理用記憶領域9a
への、消去対象以外であって有効ブロック群の転送が完
了すると、同図(b)のような状態でフラッシュ整理用
記憶領域9aにデータが記憶されることになる。同図
(a)と比較して有効ブロックのみが転送されることが
わかる。そして、次に、その各有効ブロックの位置を保
持したままフラッシュメモリ10の同じセクタ位置に書
き込む処理を行う。フラッシュメモリ10へのデータ書
き込みでは、1セクタ(64Kバイト)を消去処理して
から書き込むことになるので、上記の処理を行うこと
で、結果的にファイル「A」を構成するブロックが消去
された状態にさせることが可能となる。書き込み後の状
態は同図(c)に示す通りである。
【0022】上記の処理における特徴的な点は以下の4
点である。
【0023】第1点目:実施形態におけるファイルシス
テムは、フラッシュメモリの書き換え単位(64Kバイ
ト)を更に256バイトの領域に細分化させたことによ
り、より多くのアプリケーションで作成されたファイル
を保存することができる。 第2点目:消去対象のブロック(上記例では2つのブロ
ックであった)についてはSRAM9への転送を行わな
いので、SRAM9への転送にかかる時間を短縮でき
る。
【0024】第3点目:フラッシュメモリに書き込む場
合、SRAMに転送させた有効なブロックのみを書き込
むので、書き込み時間を最小限にすることができる。
【0025】第4点目:フラッシュメモリ10に書き込
む際、有効ブロックについてはもともと記憶されていた
ときと同じ位置に書き込みが行われるので、ファイル管
理用インデックスを記憶している領域(後述)の各有効
ブロックのアドレス情報を変更、つまり、アドレス変更
に係る演算及び書き込み処理が不要になるので、処理が
簡略化できることになる。
【0026】なお、ファイル「A」の如く、1つのファ
イルが同じセクタ内で完結している場合には、上記のS
RAMへの転送、フラッシュメモリへの書き込みを1回
行えば良いが、複数のセクタに別れている場合には、別
れているセクタ数分繰り返すことになる。
【0027】図3はフラッシュメモリにおける小ブロッ
ク(256バイト)の構造を示している。
【0028】同図において、14はファイル番号を記憶
するエリアであり、実施形態では2バイトが割り当てら
れれいる。このファイル番号エリアは、0001から1
つずつカウントアップする形で管理している。従って2
バイトをバイナリーでカウントすることにより最大65
536個のファイルを記憶可能である。後述する第4図
のファイル管理用インデックスを参照することにより、
ユーザーが指定したファイル名(ファイル番号)の装置
で管理しているフラッシュメモリ10内の位置が特定で
きるようになる。因に、先に説明した図2(A)におけ
るファイル「A」を構成している2つの小ブロックの先
頭の2バイトには同じ番号が記憶されていることにな
る。
【0029】15は、注目小ブロックに接続される後続
する小ブロックが格納されているセクタ番号を記憶する
領域である。これは、異なるセクタにまたがって記憶さ
れる場合に対処するために設けられている(2バイ
ト)。
【0030】16は後続小ブロックの番号(何番目の小
ブロックかを示すアドレス情報)を記憶している領域で
ある(2バイト)。17で示される250バイトは、実
際のデータを記憶する領域である。
【0031】17で示される250バイト分の領域に
は、実際のデータが格納されることになる。
【0032】なお、領域15、16でもって、1個のフ
ァイルが複数ブロックで構成されるだけの容量を有する
場合、それら複数の小ブロックが上記の領域15、16
でもって数珠繋ぎに管理されることになる。この場合の
最後の小ブロックの領域15は、その小ブロックに後続
する小ブロックがないこと示すため、あり得ない情報
(例えば“0”)を書き込んでおく。
【0033】例えばデータサイズが900バイトのファ
イルの場合には、900/250=3.6であるので4
つの小ブロックで構成されることになる。この場合、先
頭の小ブロックをファイル管理用インデックスを参照し
て探し出し、その先頭の小ブロックのデータ領域17の
250バイトを読み込む。そして、先頭の小ブロックの
領域15、16に格納されている情報から2番目の小ブ
ロックを探し出し、そのデータ(250バイト)を読み
出していく。以下、3番目、4番目の小ブロックの順に
データを読み出す。4番目の小ブロックでは残りの15
0バイトを読み込むことになる。そして、4番目の小ブ
ロックの領域15、16にはそれに後続する小ブロック
がないことが分かるので、そこで読み込みを終了する。
【0034】なお、1セクタ64Kバイトを256個に
細分化させたことで、1小ブロックが256バイトと比
較的小さいサイズにしたのは、実施形態の装置は所謂、
携帯電子機器であって、メモ帳やスケジュール機能等で
利用するにしても手入力する情報(文字等)が、パーソ
ナルコンピュータ等のアプリケーションとは違ってごく
小さいためである。つまり、1小ブロックサイズを例え
ば数Kバイト程度までに大きくすると、無駄な領域が発
生し易いためである。ただし、余り小さいと、インデッ
クス管理用のデータ(上記例では6バイト)と実際のデ
ータとの関係で、前者の示す比率が大きくなってデータ
格納効率が悪くなる。本実施形態の1ブロックが256
バイトでそのうちデータ領域250バイト、管理用に6
バイトを採用したのは、この比率が最も適していること
が確かめられたからである。ただし、用途や使用するア
プリケーションの種類等によって、この小ブロックサイ
ズを適宜調整しても良いのは勿論である。
【0035】図4は、実施形態における1個のファイル
のファイル管理用インデックスの構造を示している。
【0036】図中、18はファイル名を記憶する部分で
ありユーザーがファイル名として入力手段より入力した
名前を記憶する領域である。19はファイルの属性を記
憶する部分でありファイルの登録日、ファイルの形態
(文章ファイル、作表ファイル等の区別)、カテゴリー
の分類などを記憶する領域である。20はファイル番号
を記憶するエリアであり、新規登録のファイル毎に1つ
づつカウントアップしたバイナリー値を記憶する。21
は指定ファイルのデータの先頭の小ブロックが記憶され
ているフラッシュメモリ10のセクター番号を記憶して
いる記憶領域である。22は指定ファイルのデータが記
憶されている最初の小ブロックの位置(アドレス)を記
憶している領域である。
【0037】このファイル管理用インデックスは、フラ
ッシュメモリ10に記憶されているファイルの数だけ存
在し、ユーザにより指定されたファイルを呼び出して表
示・編集したり、或るいあ消去時する場合等に、該当す
るファイルに対してアクセスするときに使用される。
【0038】図5及ぶ図6は前記した構成のフラッシュ
メモリを内蔵する装置でのファイル消去時の処理流れを
示す流れ図である。
【0039】なお、以下では下記の点を前提として処理
の流れを説明する。
【0040】 FILEA: 入力手段より指定し消去するファイル X: セクタ番号を格納する変数 mm: FILEAのデータの小ブロックのセクタ内で
のアドレス情報を格納する変数領域 nn: 異なるセクタにある場合にそのセクタ番号を格
納する変数領域 ステップF1で、入力手段(実施形態ではタッチパネル
であることは既に説明した)を用いてFILEAの名前
を入力することでFILEAが指定されると、次のステ
ップF2で、入力したFILEAの名前をINDEX上
で探し一致した名前のファイルが書いてあるINDEX
のセクター番号小ブロックアドレスを元にFILEAの
フラッシュメモリ上のアドレスを指定しそのデータをS
RAMに転送し、次のステップF3でデータ内容に基づ
きフォント情報を呼び出して文字データを表示用イメー
ジデータに変換し、ステップF4で表示する。
【0041】次いで、ステップF5で入力手段を用いて
ファイル消去命令が入力された場合には、この命令入力
を元に流れステップF6以降でFILEA消去処理を行
う。
【0042】先ず、ステップF6でFILEAの名称に
基づいて、FILEAのシステム内でのファイル番号を
取得し、FILEAの先頭ブロックが格納されているセ
クタをXに設定する。
【0043】次いで、ステップF7に進み、該当セクタ
の先頭の小ブロックから順に、その小ブロックの先頭の
領域(管理情報)を読み込み、その小ブロックが同じフ
ァイル番号であるかどうか、更には、その小ブロックが
有効であるかどうかを判断する。
【0044】異なるファイル番号であり、尚且つ、有効
なブロックであると判断した場合には、ステップF8に
進み、その注目セクタにおける注目小ブロックのデータ
をSRAM9内のフラッシュ整理用記憶領域9aの相対
的に同じ位置に転送する。
【0045】また、消去対象と名時ファイル番号の小ブ
ロックであるか、或いは、無効(未使用の)小ブロック
であると判断した場合には、ステップF9に進み、その
小ブロックの番号を変数mmに格納し、尚且つ、後続す
る小ブロックが他のセクタに存在する場合にはそのセク
タ番号を変数nnに格納する。
【0046】ステップF8、F9いずれかの処理が終了
すると、ステップF10に進み、注目セクタの最後の小
ブロックに到達したか否かを判断し、否の場合にはステ
ップF7に戻って上記の処理の処理を繰り返す。
【0047】こうして、注目セクタに対する最後の小ブ
ロックまでの処理が終わると、処理はステップF11に
進む。
【0048】この場合、フラッシュメモリ10における
変数Xで示されるセクタ内の保持しておくべきデータの
全てSRAM9内のフラッシュ整理用記憶領域9aに、
そのままの格納位置で保持されていることになるから、
フラッシュメモリ10の変数Xで示されるセクタを消去
する。
【0049】次いで、ステップF12に進み、フラッシ
ュ整理用記憶領域9aに保存されている各小ブロックの
うちで、無意味な小ブロックか有効な小ブロックかを判
断し、有効な小ブロックについてはステップF13でフ
ラッシュメモリの変数Xで示されるセクタ内の相対的に
同じ位置にその小ブロックのデータを書き込む。また、
無意味な小ブロックであると判断した場合にはその小ブ
ロックのデータの書き込みは行わない。
【0050】なお、有効な小ブロックかどうかは、変数
nnを参照すれば良い。つまり、変数nnには削除対象
のファイルの小ブロックのブロック番号(アドレス情
報)、或いは未使用の小ブロックのアドレスが格納され
ているわけであるから、これ以外の小ブロックは全て有
効な小ブロックとして判断できる。
【0051】こうして、ステップF14で、最後の小ブ
ロックに対しての処理を終えたと判断するまで、上記の
処理を繰り返す(256回繰り返す)。なお、i番目の
小ブロックが書き込むべきデータを有していると判断し
た場合、そのi番目のデータは(i−1)×256〜i
−1)×256−1番地で特定できる。さて、削除対象
のFILEAの小ブロックの消去処理が終了すると、ス
テップ15に進み、変数nn(複数のセクタ番号を格納
できる)を調べて、別のセクタについてFILEAを構
成する小ブロックがあるかどうかを判断する。もし、変
数nnに別セクタ番号が格納されているのであれば、ス
テップF16に進み、そのセクタ番号を変数Xに設定
し、ステップF7以降の処理を行う。
【0052】そして、FILEAを構成している小ブロ
ックを格納していた全セクタについての処理を終える
と、ステップF17に進み、FILEAが削除された旨
を表示し、本処理を終える。
【0053】以上説明したように本実施形態に従えば、
フラッシュメモリのハード的なブロックである1セクタ
ー(64Kバイト)を図3に示したような構成の小さな
小ブロック(256バイト)に分割し、フラッシュメモ
リを図4に示したような構成のINDEXにより管理す
る。
【0054】これにより図5、図6で示したような処理
の流れにより簡単な処理ルーチンでデータファイルの消
去処理を実行でき、消去後の書き込み処理に置いても有
効ファイルの小ブロックのみの書き込みで良くなるた
め、書き込み時間を短縮できる。
【0055】また図2で示したようにフラッシュメモリ
消去後の有効ファイルの書き込みで同一アドレスに書き
込むためINDEXの修正を行うことなくファイルの消
去処理を実行でき従って処理時間を短縮できる。
【0056】なお本実施例ではデータファイルの消去命
令発生時の処理について述べたがファイルのデータ修整
時/追加時/外部装置からの修整データファイル受け取
り時等の処理では古いデータファイルを消去する時に本
実施例で述べたような処理を行った後、修整済のファイ
ルを書き込む処理を行うものであるから、消去指示を受
けた場合にのみ限定されるものではない。
【0057】<第2の実施形態>図7は第2の実施例に
おけるフラッシュメモリを管理しているファイル管理用
インデックスの構成を示す構成図を示している。なお、
装置構成について図1と実質的に同じであるので、その
説明は省略する。
【0058】図中、23はファイル名を記憶する部分で
ありユーザーがファイル名として入力手段より入力した
名前(文字コード列)が格納される。
【0059】24はファイルの属性を記憶する部分であ
りファイルの登録日ファイルの形態(文章ファイルと作
表ファイルの区別)カテゴリーの分類などを記憶する。
【0060】25はファイル番号を記憶するエリアであ
り新規登録のファイル毎に1つづつカウントアップした
バイナリー値を記憶する。
【0061】26は本第2の実施形態の特徴となす記憶
エリアであり、指定ファイルがユーザーからの消去する
時や指定ファイルのデータを編集して内容が変更された
時、消去するファイルあるいは編集する前のファイルを
古いファイルとして無効コードを与え、有効なファイル
と区別する情報を格納する。そのうえで後述する図9、
図10の流れ図で示すファイル整理処理により無効コー
ドを検出してファイル毎の消去を実行する。
【0062】この有効無効コード格納エリア26は、フ
ァイル消去時ファイルのデータ編集時にセットされファ
イル整理時に古いファイルのデータ消去に使用する。
【0063】27は指定ファイルのデータが記憶されて
いる先頭の小ブロックのフラッシュメモリのセクタ番号
を記憶している記憶部であり、28は先頭の小ブロック
のアドレスを記憶している記憶部である。
【0064】ファイルを呼び出して表示したり編集ある
いは消去時に指定ファイルをこれら記憶部27、28の
セクター番号と小ブロックアドレスを参照することにな
る。
【0065】図8は第2の実施形態におけるFILEA
を消去する時の処理手順を示している。
【0066】先ず、ステップF18において、入力手段
を用いてFILEAの名前を入力することでFILEA
が指定されると、ステップF19で、入力したFILE
Aの名前と一致するファイル名をファイル管理用インデ
ックス参照して検索する。そして、一致したものがあっ
たら、そのファイルの先頭小ブロックのセクタ番号及び
セクタ内での小ブロックアドレス情報を取得し、ファイ
ルのデータをSRAM9に転送する。
【0067】次いで、ステップF20で、FILEAの
内容に基きフォント情報を呼び出して文字データを表示
用イメージデータに変換し、ステップF21で表示す
る。
【0068】ステップF22において、入力手段を用い
てファイル消去命令が入力されると、ステップF23に
進み、FILEAの有効無効コード格納エリア26に無
効であるデータをセットし、ステップF24で消去が完
了した旨のメッセージを表示する。
【0069】本第2の実施例では上記の簡単な処理、す
なわち無効であることを示すデータを格納するのみで消
去処理を実行しており、ユーザにしてみれば瞬時に消去
処理が完了することになる。また、これ以降、FILE
Aは検索対象外(無効扱いに設定したので)とすること
ができると共に、図9、図10に示すファイル整理機能
が起動したとき、実際にファイルの実態の消去を行うこ
とができるようになる。
【0070】このファイル整理機能は、例えばユーザが
設定じた時刻になった場合に起動するようにしておけば
よい。
【0071】図9、図10のフローチャートはこの一例
を示している。
【0072】先ず、ステップF25において、タイマに
よるファイル整理命令が発行される。この時刻は、ユー
ザが設定するものであり、例えば午前2時等のように、
不使用時刻を設定しておけばよい。なお、毎日ではな
く、例えば週毎の設定時間に発行するようにしてもよ
い。
【0073】ただし他の例として考えられるのは、設定
時刻になって、装置の主電源がオフになっているときに
行うようにしてもよいし、更に、そのとき、電池容量が
一定以上である場合を条件に加えてもよい。要はユーザ
ーが気が付かない時に自動的にファイルの整理を行って
処理中にユーザーを待たせることの無いように配慮する
ことが望ましい。
【0074】さて、ステップF26では、ファイル管理
用インデックスを検索し、その中に無効扱いに設定され
たファイルがあるかどうかを、セクタ毎にチェックす
る。そして、ステップ27で、例えば、注目セクタがセ
クタ番号“1”である場合には、そのセクタ内に無効扱
いとなっているファイルの番号と同じ番号を持つ小ブロ
ックが存在するかを判断する。
【0075】例えば、無効扱いのファイルとして、ファ
イルA、ファイルBの2つがあって、ファイルAを構成
する小ブロックがセクタ番号1、2の2つのセクタ内に
存在し、ファイルBを構成する小ブロックがセクタ番号
2、5のセクタ内に存在する場合、ファイルAについて
整理処理し、その後でファイルBについて整理してしま
うと、延べ4つセクタについての整理処理が行われてし
まう。しかし、セクタ単位に無効扱いのファイルのチェ
ックを行うことで、この整理処理回数、すなわち、フラ
ッシュメモリの書き換え回数を減らすことができる。理
由は、セクタ2については2つのファイルの小ブロック
が含まれいることがわかれば、これを1回の処理で済ま
せることができるからである。周知の通り、フラッシュ
メモリは書き換え回数に限度があるので、このようにす
ることでフラッシュメモリの延命を図ることができ、し
かも、整理処理回数が減るわけであるから短時間で、し
かも、それに費やす消費電力も少なくて済むことにな
る。
【0076】さて、ステップF27において、着目して
いるセクタ内に無効扱いのファイルの小ブロックが存在
することが判明したら、ステップF28に進んでそのセ
クタについてのファイル整理サブルーチンをコールし、
ステップF29に進む。
【0077】ステップF29では未チェックのセクタが
あるかどうかを判断し、もしあればステップ26に戻
り、次のセクタを注目セクタとし、上記の処理を繰り返
す。
【0078】実施形態におけるフラッシュメモリは1M
バイト、つまり、16個のセクタ(1セクタ=64Kバ
イト)を有するものであるので、無効扱いされているフ
ァイル数に関係なく、16回ループすればファイル整理
処理が完了することになる。
【0079】次に、ステップF28でコールされるサブ
ルーチンの処理手順を、図10のフローチャートに従っ
て説明する。
【0080】なお、以下の説明で使用する変数名は第1
の実施形態と同じであるのでその説明は省略する。
【0081】先ず、ステップF30で、注目セクタの先
頭の小ブロックから順に、その小ブロックの先頭の領域
(管理情報)を読み込み、その小ブロックが整理対象の
ファイル番号(複数あり得る)と同じかどうか、更に
は、その小ブロックが有効であるかどうかを判断する。
【0082】整理対象外で有効なブロックであると判断
した場合には、ステップF32で、その小ブロックのデ
ータ(256バイト)をSRAM9内のフラッシュ整理
用記憶領域9aの相対的に同じ位置に転送する。
【0083】また、消去対象のファイル中のいずれかに
一致するファイル番号を有する場合、或いは、未使用の
ブロックである場合には、ステップF33で、その小ブ
ロックの番号を変数mmに格納する。
【0084】ステップF32、33のいずれかの処理が
終了すると、ステップF34に進み、注目セクタの最後
の小ブロックに到達したか否かを判断し、否の場合には
ステップF31に戻って上記の処理の処理を繰り返す。
【0085】こうして、注目セクタに対する最後の小ブ
ロックまでの処理が終わると、処理はステップF35に
進み、フラッシュメモリ10の注目セクタを消去する。
そして、ステップF36に進み、フラッシュ整理用記憶
領域9aに保存されている各小ブロックのうちで、無意
味な小ブロックか有効な小ブロックかを順番に判断す
る。
【0086】有効な小ブロック(変数mmを参照するこ
とで確認できる)については、ステップF37の処理に
よって、フラッシュメモリの注目セクタ内の相対的に同
じ位置にその小ブロックのデータを書き込む。また、無
意味な小ブロックであると判断した場合にはその小ブロ
ックのデータの書き込みは行わない。
【0087】こうして、ステップF14で、最後の小ブ
ロックに対しての処理を終えたと判断するまで、上記の
処理を繰り返す(256回繰り返す)。また、最後の小
ブロックについての処理が完了すると、本処理を終了す
る。
【0088】以上の処理の結果、先の第1の実施形態と
同様に、消去前の有効ブロックは同じ位置に書き込まれ
ることになり、その格納アドレス等は変わらず、ファイ
ル管理用インデックスの変更も不要になる。
【0089】以上述べたごとく本第2の実施形態によれ
ば、フラッシュメモリのハード的なブロックである1セ
クター(64Kバイト)を小ブロック(256バイト)
に分割してフラッシュメモリを図7に示すようなファイ
ル管理用インデックスの構造で管理することで、第1の
実施形態と比較してユーザから見たファイルの消去処理
は瞬時になり、高速なレスポンスが得られる。
【0090】なお本第2の実施例ではデータファイルの
消去命令発生時およびファイル整理時の処理についての
べたが、ファイルのデータ修整時/追加時/外部装置か
らの修整データファイル受け取り時等の処理では古いデ
ータファイルを消去する時に本実施例で述べたような処
理を行った後修整済のファイルを書き込む処理を行うよ
うにしてもよい。
【0091】また、削除するファイルは入力手段でファ
イル名を入力するものとして説明したが、ファイル一覧
を表示させ、GUIによって指定(タッチ)したファイ
ルを削除対象としてもよいし、入力機構をタッチパネル
の手段を用いてもよい。すなわち、本願発明は削除する
ファイルを指定、選択、或いは入力等の如何なる形態に
も適用できるから、この指定方法によって本願発明が限
定されるものではない。
【0092】また、実施形態では携帯可能な電子機器を
例にして説明したが、これによっても本発明が限定され
るものではない。ただし、本願発明は電子手帳、電子ス
ケジューラ、表計算等、或いはそれらを統合化した携帯
型電子機器に適用することで、そのより大きな効果が期
待できる。
【0093】更にまた、実施形態で説明した各種フロー
チャートに係るプログラムは、ROM内に格納されてい
るものとして説明したが、プログラムを外部より供給す
るようにしてもよいので、上記実施形態で本願発明が限
定されるものではない。
【0094】従って本発明の目的は、前述した実施形態
の機能を実現するソフトウェアのプログラムコードを記
録した記憶媒体を、システムあるいは装置に供給し、そ
のシステムあるいは装置のコンピュータ(またはCPU
やMPU)が記憶媒体に格納されたプログラムコードを
読出し実行することによっても、達成されることにな
る。
【0095】この場合、記憶媒体から読出されたプログ
ラムコード自体が前述した実施形態の機能を実現するこ
とになり、そのプログラムコードを記憶した記憶媒体は
本発明を構成することになる。
【0096】プログラムコードを供給するための記憶媒
体としては、例えば、フロッピディスク,ハードディス
ク,光ディスク,光磁気ディスク,CD−ROM,CD
−R,磁気テープ,不揮発性のメモリカード,ROMな
どを用いることができる。
【0097】また、コンピュータが読出したプログラム
コードを実行することにより、前述した実施形態の機能
が実現されるだけでなく、そのプログラムコードの指示
に基づき、コンピュータ上で稼働しているOS(オペレ
ーティングシステム)などが実際の処理の一部または全
部を行い、その処理によって前述した実施形態の機能が
実現される場合も含まれることは言うまでもない。
【0098】さらに、記憶媒体から読出されたプログラ
ムコードが、コンピュータに挿入された機能拡張ボード
やコンピュータに接続された機能拡張ユニットに備わる
メモリに書込まれた後、そのプログラムコードの指示に
基づき、その機能拡張ボードや機能拡張ユニットに備わ
るCPUなどが実際の処理の一部または全部を行い、そ
の処理によって前述した実施形態の機能が実現される場
合も含まれることは言うまでもない。
【0099】以上説明したように、本実施形態によれ
ば、フラッシュメモリに書かれているデータの消去時の
処理を簡略化しその処理時間を短縮化することが可能と
なり、比較的低速な処理手段であるCPUでも実用レベ
ルを維持することができる。
【0100】したがって高速処理を行うCPUを使った
システムに比べて安価なシステムを用いることが可能と
なる。
【0101】またフラッシュメモリに書かれているデー
タ消去時の処理をファイル消去命令実行時とは別のファ
イル整理処理時に行うことでファイル消去命令実行時の
処理時間を大幅に短縮することが可能となる。
【0102】
【発明の効果】以上説明したように本発明によれば、フ
ラッシュメモリに格納されたデータの削除を、簡単な処
理で、しかも、高速に行え、操作環境を向上させること
が可能になる。
【0103】
【図面の簡単な説明】
【図1】実施形態における電子機器の主要ブロック構成
図である。
【図2】第1の実施形態におけるフラッシュメモリの消
去処理における動作を説明するための図である。
【図3】実施形態におけるラッシュメモリの各小ブロッ
クの内部構成を示す図である。
【図4】実施形態におけるファイル管理用インデックス
の構造を示す図である。
【図5】第1の実施形態における消去処理の手順を示す
フローチャートである。
【図6】第1の実施形態における消去処理の手順を示す
フローチャートである。
【図7】第2の実施形態におけるファイル管理用インデ
ックスの構造を示す図である。
【図8】第2の実施形態におけるファイル消去時の処理
を示すフローチャートである。
【図9】第2の実施例に係るファイル整理処理を示すフ
ローチャートである。
【図10】図9におけるファイル整理サブルーチンの内
容を示すフローチャートである。

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】 フラッシュメモリを有する電気機器であ
    って、 フラッシュメモリの消去単位のセクタを、更に複数のブ
    ロックに分割し、当該ブロックを1つ或いは複数個で1
    つのファイルを管理するため、前記ファイルの管理情報
    を有する管理手段と、 前記フラッシュメモリに格納されているファイルを削除
    するとき、当該削除対象のファイルを構成するブロック
    を有するセクタ中の、前記削除対象のファイルを構成す
    るブロックを除く有効ブロック群を、当該有効ブロック
    の格納アドレスの相対位置を保持したまま所定の揮発性
    メモリに転送する転送手段と、 該転送手段による転送を行った後、前記フラッシュメモ
    リにおける注目セクタを消去する消去手段と、 消去したセクタ内に、前記不揮発性メモリに転送した有
    効ブロック群を、当該有効ブロックの格納アドレスの相
    対位置を保持したまま書き込む書き込み手段とを有する
    ことを特徴とする電子機器。
  2. 【請求項2】 前記管理情報には、ファイルを構成する
    先頭ブロックが格納されているセクタを特定する情報、
    該セクタ内の前記先頭ブロックの格納位置を示すアドレ
    ス情報が含まれ、 前記ブロックには、後続するブロックの存在の有無及び
    その存在するセクタを特定する情報とセクタ内の格納位
    置を示すアドレス情報、及び、実データが含まれること
    を特徴とする請求項第1項に記載の電子機器。
  3. 【請求項3】 前記管理情報には、ファイルの有効・無
    効を示す情報が含まれ、前記転送手段、前記消去手段及
    び前記書き込み手段は、該当するファイルが無効として
    設定され、尚且つ、所定のタイミングになったときに付
    勢されることを特徴とする請求項第1項に記載の電子機
    器。
  4. 【請求項4】 前記ファイルの有効・無効を示す情報は
    外部からの指示によって設定されることを特徴とする請
    求項第3項に記載の電子機器。
  5. 【請求項5】 前記所定のタイミングは、予め設定した
    時刻であることを特徴とする請求項第3項に記載の電子
    機器。
  6. 【請求項6】 前記管理情報には、ファイルの有効・無
    効を示す情報が含まれ、前記転送手段、前記消去手段及
    び前記書き込み手段は、該当するファイルが無効として
    設定され、尚且つ、所定のタイミングになったときに付
    勢されることを特徴とする請求項第2項に記載の電子機
    器。
  7. 【請求項7】 前記所定のタイミングになったとき、セ
    クタ毎に無効のファイルを構成しているブロックがある
    か否かを判断し、セクタ単位に前記転送手段、前記消去
    手段及び前記書き込み手段が行われることを特徴とする
    請求項第6項に記載の電子機器。
  8. 【請求項8】 フラッシュメモリを有する電気機器の制
    御方法であって、 フラッシュメモリの消去単位のセクタを、更に複数のブ
    ロックに分割し、当該ブロックを1つ或いは複数個で1
    つのファイルを管理するため、前記ファイルの管理情報
    を有する管理工程と、 前記フラッシュメモリに格納されているファイルを削除
    するとき、当該削除対象のファイルを構成するブロック
    を有するセクタ中の、前記削除対象のファイルを構成す
    るブロックを除くブロック群を所定の揮発性メモリに転
    送する転送工程と、 該転送工程による転送を行った後、前記フラッシュメモ
    リにおける注目セクタを消去する消去工程と、 消去したセクタ内に、前記不揮発性メモリに転送したブ
    ロックを書き込む書き込み工程とを有することを特徴と
    する電子機器の制御方法。
  9. 【請求項9】 コンピュータが読み込み実行すること
    で、フラッシュメモリを有する電気機器として機能する
    プログラムコードを格納した記憶媒体であって、 フラッシュメモリの消去単位のセクタを、更に複数のブ
    ロックに分割し、当該ブロックを1つ或いは複数個で1
    つのファイルを管理するため、前記ファイルの管理情報
    を有する管理手段と、 前記フラッシュメモリに格納されているファイルを削除
    するとき、当該削除対象のファイルを構成するブロック
    を有するセクタ中の、前記削除対象のファイルを構成す
    るブロックを除くブロック群を所定の揮発性メモリに転
    送する転送手段と、 該転送手段による転送を行った後、前記フラッシュメモ
    リにおける注目セクタを消去する消去手段と、 消去したセクタ内に、前記不揮発性メモリに転送したブ
    ロックを書き込む書き込み手段として機能するプログラ
    ムコードを格納した記憶媒体。
JP24626698A 1998-08-31 1998-08-31 電子機器及びその制御方法及び記憶媒体 Withdrawn JP2000076116A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP24626698A JP2000076116A (ja) 1998-08-31 1998-08-31 電子機器及びその制御方法及び記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP24626698A JP2000076116A (ja) 1998-08-31 1998-08-31 電子機器及びその制御方法及び記憶媒体

Publications (1)

Publication Number Publication Date
JP2000076116A true JP2000076116A (ja) 2000-03-14

Family

ID=17145978

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24626698A Withdrawn JP2000076116A (ja) 1998-08-31 1998-08-31 電子機器及びその制御方法及び記憶媒体

Country Status (1)

Country Link
JP (1) JP2000076116A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005338897A (ja) * 2004-05-24 2005-12-08 Matsushita Electric Ind Co Ltd 不揮発性記憶装置および不揮発性メモリの消去方法と書込み方法
WO2007026393A1 (ja) * 2005-08-30 2007-03-08 Spansion Llc 半導体装置およびその制御方法
JP2015507798A (ja) * 2011-12-29 2015-03-12 メモリー テクノロジーズ リミティド ライアビリティ カンパニー メモリ・モジュールにおいてデータ・エンティティを消去するための方法
CN115798550A (zh) * 2023-02-08 2023-03-14 合肥智芯半导体有限公司 一种闪存烧写方法、烧写电路、闪存及设备

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005338897A (ja) * 2004-05-24 2005-12-08 Matsushita Electric Ind Co Ltd 不揮発性記憶装置および不揮発性メモリの消去方法と書込み方法
JP4661086B2 (ja) * 2004-05-24 2011-03-30 パナソニック株式会社 不揮発性記憶装置および不揮発性メモリの消去方法と書込み方法
WO2007026393A1 (ja) * 2005-08-30 2007-03-08 Spansion Llc 半導体装置およびその制御方法
US7573743B2 (en) 2005-08-30 2009-08-11 Spansion Llc Semiconductor device and control method of the same
US7889577B2 (en) 2005-08-30 2011-02-15 Spansion Llc Semiconductor device and control method of the same
US7903473B2 (en) 2005-08-30 2011-03-08 Spansion Llc Semiconductor device and control method of the same
JP4980914B2 (ja) * 2005-08-30 2012-07-18 スパンション エルエルシー 半導体装置およびその制御方法
JP2015507798A (ja) * 2011-12-29 2015-03-12 メモリー テクノロジーズ リミティド ライアビリティ カンパニー メモリ・モジュールにおいてデータ・エンティティを消去するための方法
US10048884B2 (en) 2011-12-29 2018-08-14 Memory Technologies Llc Method for erasing data entity in memory module
CN115798550A (zh) * 2023-02-08 2023-03-14 合肥智芯半导体有限公司 一种闪存烧写方法、烧写电路、闪存及设备

Similar Documents

Publication Publication Date Title
JP2000076117A (ja) 電子機器及びその制御方法及び記憶媒体
US5832493A (en) Flash file management system
US5029125A (en) Method of reading and writing files on nonerasable storage media
JPWO2005029311A1 (ja) 半導体メモリカード、半導体メモリ制御装置及び半導体メモリ制御方法
JP2008198208A (ja) ホストデータ処理装置の動作方法、ホストデータ処理装置並びにデータ格納装置
JP2008523468A (ja) 不揮発記録媒体消去システム及び方法
KR20090026941A (ko) 복수개의 비휘발성 데이터 저장매체를 구비한 저장장치의가상 파일 시스템에서 어드레스 맵핑을 수행하는 방법 및그 장치
TWI344085B (en) Storage system for improving efficiency in accessing flash memory and method for the same
US20070162707A1 (en) Information recording medium data processing apparatus and data recording method
JP2003058417A (ja) 記憶装置
JP2000076116A (ja) 電子機器及びその制御方法及び記憶媒体
JPH09161491A (ja) フラッシュメモリ制御方法及びフラッシュメモリ制御ユニット
JPH07210468A (ja) 半導体補助記憶装置
JP3818130B2 (ja) データ管理方法及び装置及びデータ管理プログラム及びデータ管理プログラムを格納した記憶媒体
KR100479170B1 (ko) 메모리 억세스 제어장치 및 방법
JPS62264329A (ja) 画面テキストエデイタ処理方式
JPH05258585A (ja) ファイル装置
TWI232466B (en) Method for updating data of non-volatile memory
JPH08272654A (ja) ファイル管理装置
JPH0764831A (ja) データ記憶装置
JP4403338B2 (ja) 情報処理装置、情報処理方法
JP2000112836A (ja) 情報処理装置、情報格納方法および記憶媒体
JPH1139210A (ja) フラッシュメモリのメモリ制御装置
JPH04165543A (ja) 電子フアイリング装置
JP3471838B2 (ja) 循環順編成ファイルの管理方法

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20051101