JP2000276402A - フラッシュメモリ駆動方法及びフラッシュメモリ装置 - Google Patents

フラッシュメモリ駆動方法及びフラッシュメモリ装置

Info

Publication number
JP2000276402A
JP2000276402A JP11079309A JP7930999A JP2000276402A JP 2000276402 A JP2000276402 A JP 2000276402A JP 11079309 A JP11079309 A JP 11079309A JP 7930999 A JP7930999 A JP 7930999A JP 2000276402 A JP2000276402 A JP 2000276402A
Authority
JP
Japan
Prior art keywords
sector
flash memory
cache memory
writing
memory
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
Application number
JP11079309A
Other languages
English (en)
Inventor
Kazuhiro Yamamoto
和弘 山本
Junpei Ikegawa
淳平 池川
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.)
Kokusai Electric Corp
Original Assignee
Kokusai Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Kokusai Electric Corp filed Critical Kokusai Electric Corp
Priority to JP11079309A priority Critical patent/JP2000276402A/ja
Publication of JP2000276402A publication Critical patent/JP2000276402A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【課題】 フラッシュメモリの実質書き込み回数の低減
をはかりたい。 【解決手段】 フラッシュメモリ2の前段にキャッシュ
メモリ1を設けた。キャッシュメモリ1は、1セクタ分
の容量を持ち、セクタをエントリできる。そして、エン
トリしたセクタに書き込み/読み出しを行う場合は、こ
のキャッシュメモリ1に対してアクセスを行う。これに
よってフラッシュメモリ2への書き込み回数を低減す
る。セクタがエントリされていなければ、読み出しはフ
ラッシュメモリ2に対して直接に行い、書き込みは、こ
のセクタをキャッシュメモリ1にエントリした上で、該
キャッシュメモリ1上に行う。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、フラッシュメモリ
装置及び駆動方法、特に書き込み及び読み出しの効率化
をはかるフラッシュメモリ装置及び駆動方法に関する。
【0002】
【従来の技術】フラッシュメモリは、一括消去を可能に
した半導体メモリである。このメモリは、セクタ分割さ
れており、例えばセクタ内のデータの部分的修正や部分
的書き込みは、別に設けたメモリ、例えばバッファメモ
リ上で一連の書き込みを行い、この一連の書き込み後の
バッファメモリ上の内容を、フラッシュメモリ上の該当
セクタに書き込むやり方をとる。一方、読み出しは、フ
ラッシュメモリを直接アクセスすることで行う。書き込
みの際に、フラッシュメモリに直接書き込みをせずに、
バッファメモリを介して間接的にフラッシュメモリに書
き込むようにしたのは、フラッシュメモリでは、上書き
ができないこと、フラッシュメモリそのものがデバイス
上、書き込み回数に限界があること(例えば10万回を
限界値とする例)、SRAM等のデバイスに比べ書き込
みに時間がかかること、のためによる。
【0003】図3に、かかる従来例のバッファメモリを
利用しての、間接的なフラッシュメモリに書き込むため
の処理フローを示す。バッファメモリの容量は例えば、
セクタである。先ず書き込み対象のセクタを一旦、バッ
ファメモリ上に読み出し(ステップS10)、フラッシ
ュメモリ上の当該セクタデータの消去を行う(ステップ
S11)。バッファメモリに読み出したセクタデータ
に、書き込みデータを上書きする(ステップS12)。
最後に、バッファメモリの内容をフラッシュメモリに書
き込む(通常、これを書き戻しと云う)(ステップS1
3)。
【0004】
【発明が解決しようとする課題】フラッシュメモリは書
き込み回数に制限があり、SRAM等のメモリデバイス
に比べ書き込みに時間がかかる。また、フラッシュメモ
リへの書き込みは図3に示したようにセクタ単位で行わ
なければならず、書き込みたいセクタが既に消去済みで
あれば書き込みのみを行えばよいのだが、書き込みたい
セクタが未消去であれば、そのセクタを一旦バッファメ
モリに読み出しセクタを消去し、このバッファメモリ上
で書き込みたいデータを上書きし、このバッファメモリ
の内容をフラッシュメモリに書き戻さなければならな
い。よって、フラッシュメモリに頻繁に書き込みが発生
するようなシステム・装置の場合、セクタの読み出し、
セクタの消去、セクタの書き戻しという処理が入り、そ
のためシステム・装置の稼働時間の大半をフラッシュメ
モリへの書き込みに費やすことになってしまい、非常に
効率の悪いシステムとなってしまう。
【0005】本発明の目的は、従来技術のフラッシュメ
モリへの書き込みに時間がかかることや書き込みが発生
する度に書き込み回数が減っていってしまうという問題
を解決できるフラッシュメモリ駆動方法及び装置を提供
することにある。
【0006】
【課題を解決するための手段】本発明は、セクタ区分さ
れたフラッシュメモリと、セクタをエントリ可能なキャ
ッシュメモリと、を備えて、セクタを特定しての書き込
み/読み出しを行う際に、このセクタがエントリされて
いれば、書き込み/読み出しはキャッシュメモリに対し
て行い、エントリされていなければ、読み出しに対して
はフラッシュメモリをアクセスすることで行い、書き込
みに対してはこのセクタをキャッシュメモリに新エント
リした上で、キャッシュメモリに対して行うものとした
フラッシュメモリ駆動方法を開示する。
【0007】更に本発明は、セクタの新エントリの前の
段階で、旧エントリのセクタがあればそのセクタデータ
をキャッシュメモリからフラッシュメモリに書き戻し、
その後で上記セクタの新エントリを行うものとしたフラ
ッシュメモリ駆動方法を開示する。
【0008】更に本発明は、エントリされたキャッシュ
メモリ上のセクタデータは、システム終了時又は電源断
時に、フラッシュメモリに書き戻すものとしたフラッシ
ュメモリ駆動方法を開示する。
【0009】更に本発明は、セクタ区分されたフラッシ
ュメモリと、セクタ単位の容量を持つキャッシュメモリ
部と、キャッシュメモリ部にエントリするセクタを記憶
しキャッシュメモリ部の書き込み読み出しの制御、フラ
ッシュメモリの書き込み/読み出しの制御を行う制御手
段とを備えると共に、この制御手段は、セクタを特定し
ての書き込み/読み出しを行う際に、このセクタがエン
トリされていれば、書き込み/読み出しはキャッシュメ
モリ部に対して行い、エントリされていなければ、読み
出しに対してはフラッシュメモリをアクセスすることで
行い、書き込みに対してはこのセクタをキャッシュメモ
リに新エントリした上で、キャッシュメモリ部に対して
行うものとしたフラッシュメモリ装置を開示する。
【0010】更に本発明は、制御手段は、セクタの新エ
ントリの前の段階で、旧エントリのセクタがあればその
セクタデータをキャッシュメモリ部からフラッシュメモ
リに書き戻し、その後で上記セクタの新エントリを行う
ものとしたフラッシュメモリ装置を開示する。
【0011】更に本発明は、制御手段は、システム終了
時又は電源断時に、フラッシュメモリにエントリされた
キャッシュメモリ上のセクタデータを書き戻すものとし
たフラッシュメモリ装置を開示する。
【0012】更に本発明は、キャッシュメモリ部は、フ
ラッシュメモリのセクタ区分の中の最大容量を持つもの
としたフラッシュメモリ装置を開示する。
【0013】
【発明の実施の形態】本発明の構成例を図1に示す。本
発明では、従来のバッファメモリに代わって、キャッシ
ュメモリ1を設けた。フラッシュメモリ2は、セクタ分
割されており、図では不均等なセクタ分割例(セクタ1
〜セクタ3が64KB、セクタ4、5が32KBの容量
とした。勿論、均等なセクタ分割例もありうる)を示し
た。キャッシュメモリ1の容量は、セクタの中の最大容
量とした。従って、64KBの容量である。
【0014】キャッシュメモリ1の構成例を含む図1の
更に詳細例を図2に示す。キャッシュメモリ1は、制御
部10とメモリ本体(メモリ部)11とより成る。制御
部10は、キャッシュメモリ1にエントリされているセ
クタを記憶し、書き込み/読み出し(W/R)があった
時にその時のアドレスAがエントリセクタに含まれてい
るか否かをチェックし、その他の所定の制御を行う。こ
こで所定の制御とは、図4、図5の如き処理を行わせる
制御を云う。制御部20はフラッシュメモリ2の書き込
み/読み出し(W/R)の制御を行うものである。この
制御部20は、制御部10内に設けてもよい(即ち、制
御部10がキャッシュメモリ本体11の制御及びフラッ
シュメモリ2の制御を行わせるように、制御部10自体
を構成する)。
【0015】図4は、書き込みの処理フローを示す。書
き込みアドレスのセクタがキャッシュメモリにエントリ
済みか否かをチェックする(ステップS1)。これは、
制御部10が、書き込み/読み出し(W/R信号)から
書き込みであることを検知し且つアドレスAからそのセ
クタがエントリとして記憶されているか否かをチェック
することで行う。アドレスは、セクタ番号とそのセクタ
内の細部アドレスとより成り、制御部10は、このセク
タ番号と記憶しているエントリセクタとを比較する。一
致すればステップS2に移り、不一致であればステップ
S3に移る。ステップS2では、エントリ済みであるこ
とから、その書き込みデータWDをキャッシュメモリ本
体11の該当アドレスに書き込む。以下、次々に書き込
みデータがあり、それがエントリセクタに一致すれば、
ステップS1→S2の処理を続ける。
【0016】一方、エントリしているセクタと異なるセ
クタであれば、記憶しているそのセクタ番号を消去する
(ステップS3)と共に、キャッシュメモリ本体11に
記憶されているセクタデータをフラッシュメモリ2に送
り、そのセクタ上に書き込む(書き戻す)(ステップS
4)。そして、この最新の要求セクタを新たに制御部1
0内に記憶しエントリする(ステップS5)。このエン
トリしたことにより、最新の要求セクタに対しては、ス
テップS1が働き、ステップS1→S2への処理を行
う。そして、その後で、この新エントリしたセクタと一
致するセクタへの書き込みであれば、キャッシュメモリ
に次々に書き込みがなされる(ステップS1、S2)。
【0017】かかる図4によれば、書き込み対象のセク
タがエントリされているか否かをチェックし、エントリ
されていれば次々にキャッシュメモリ本体11に書き込
みを行う。一方、エントリされていなければ(これは、
この書き込み中に別セクタが指定されて、エントリから
はずれた場合を含む)、エントリ中のセクタのデータを
フラッシュメモリ本体11に書き戻した上で新たにセク
タのエントリを行い、キャッシュメモリ本体11への新
たな書き込みを行う。
【0018】図5は、読み出しの処理フローを示す。先
ず、制御部10で、R/W信号から読み出し(R)であ
ることを検知し、読み出しアドレスAがキャッシュメモ
リにエントリされているか否かをチェックする(ステッ
プS6)。エントリされていれば、キャッシュメモリ本
体11をアクセスして、そのアドレスのデータを読み出
す(ステップS8)。エントリされていなければ、フラ
ッシュメモリ2を直接アクセスして、そのアドレスのデ
ータを読み出す(ステップS7)。これは、図2で、制
御部10が制御部20へ信号10aを通じてその旨を伝
え、制御部20がW/RのR(読み出し指令)であるこ
とを確認した上でフラッシュメモリ2の該当セクタのア
ドレスAをアクセスすることで読み出す。また、制御部
20を設けないで制御部10がフラッシュメモリ2を直
接アクセスするような構成であれば、制御部10がW/
RのRを確認した上でフラッシュメモリ2のアドレスA
をアクセスしてデータを読み出す。
【0019】図2で、RD1が図5のステップS8での
キャッシュメモリからの読み出しデータ、RD2が図5
のステップS7でのフラッシュメモリからの読み出しデ
ータである。
【0020】キャッシュメモリから実際にフラッシュメ
モリへ書き込む(書き戻し)際、書き込み時間を短縮す
るため、書き込みの最小単位(ワード単位であれば16
ビット、バイト単位であれば8ビット)で書き込むデー
タをチェックし、すべてのビットが1の場合は書き込み
をスキップすることが好ましい。上記チェックを入れる
理由としては、フラッシュメモリは消去状態で全てのビ
ットに1がセットされており、フラッシュメモリに書き
込む時はその前にセクタを消去し、セクタ内全てのビッ
トが1の状態になっているため、書き込むデータのビッ
トが全て1の場合、書き込み時間が無駄になるからであ
る。
【0021】本方式では、別セクタが新エントリされる
時には、旧エントリのセクタデータをフラッシュメモリ
に書き込む(書き戻し)ことにしたが、こうした別セク
タのエントリの要求がなければ、最新のキャッシュメモ
リの内容が実際のフラッシュメモリへ反映されるタイミ
ングがない。そのためには、強制的に書き戻すタイミン
グを設定するやり方をとってもよい。更にシステムの終
了時、または装置の電源断時にキャッシュメモリの内容
を実際のフラッシュメモリへ書き戻す処理を行うように
することが好ましい。
【0022】尚、フラッシュメモリ2の独自のW/Rの
例もあるため(例えば、一括消去での書き込み指令とそ
の時のリセットデータ、例えばオール“1”)、制御部
20は、制御部10に独立して持たせておくことが好ま
しい。更にキャッシュメモリはセクタの中の最大容量と
したが、2セクタ分等の容量の例や逆に、1セクタ分よ
りも小さい容量の例もある。
【0023】
【発明の効果】本発明によれば、実質書き込み回数の低
減をはかることができた。
【図面の簡単な説明】
【図1】本発明の全体構成例図である。
【図2】本発明のキャッシュメモリ及びフラッシュメモ
リの詳細構成例図である。
【図3】従来の書き込みの処理フローである。
【図4】本発明の書き込みの処理フローである。
【図5】本発明の読み出しの処理フローである。
【符号の説明】
1 キャッシュメモリ 2 フラッシュメモリ 10、20 制御回路 11 キャッシュメモリ本体(キャッシュメモリ部)

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 セクタ区分されたフラッシュメモリと、
    セクタをエントリ可能なキャッシュメモリと、を備え
    て、セクタを特定しての書き込み/読み出しを行う際
    に、このセクタがエントリされていれば、書き込み/読
    み出しはキャッシュメモリに対して行い、エントリされ
    ていなければ、読み出しに対してはフラッシュメモリを
    アクセスすることで行い、書き込みに対してはこのセク
    タをキャッシュメモリに新エントリした上で、キャッシ
    ュメモリに対して行うものとしたフラッシュメモリ駆動
    方法。
  2. 【請求項2】 セクタの新エントリの前の段階で、旧エ
    ントリのセクタがあればそのセクタデータをキャッシュ
    メモリからフラッシュメモリに書き戻し、その後で上記
    セクタの新エントリを行うものとしたフラッシュメモリ
    駆動方法。
  3. 【請求項3】 エントリされたキャッシュメモリ上のセ
    クタデータは、システム終了時又は電源断時に、フラッ
    シュメモリに書き戻すものとした請求項1のフラッシュ
    メモリ駆動方法。
  4. 【請求項4】 セクタ区分されたフラッシュメモリと、
    セクタ単位の容量を持つキャッシュメモリ部と、キャッ
    シュメモリ部にエントリするセクタを記憶しキャッシュ
    メモリ部の書き込み読み出しの制御、フラッシュメモリ
    の書き込み/読み出しの制御を行う制御手段とを備える
    と共に、この制御手段は、 セクタを特定しての書き込み/読み出しを行う際に、こ
    のセクタがエントリされていれば、書き込み/読み出し
    はキャッシュメモリ部に対して行い、エントリされてい
    なければ、読み出しに対してはフラッシュメモリをアク
    セスすることで行い、書き込みに対してはこのセクタを
    キャッシュメモリに新エントリした上で、キャッシュメ
    モリ部に対して行うものとしたフラッシュメモリ装置。
  5. 【請求項5】 上記制御手段は、セクタの新エントリの
    前の段階で、旧エントリのセクタがあればそのセクタデ
    ータをキャッシュメモリ部からフラッシュメモリに書き
    戻し、その後で上記セクタの新エントリを行うものとし
    たフラッシュメモリ装置。
  6. 【請求項6】 上記制御手段は、システム終了時又は電
    源断時に、フラッシュメモリにエントリされたキャッシ
    ュメモリ上のセクタデータを書き戻すものとしたフラッ
    シュメモリ装置。
  7. 【請求項7】 キャッシュメモリ部は、フラッシュメモ
    リのセクタ区分の中の最大容量を持つものとした請求項
    3、4、5のいずれかのフラッシュメモリ装置。
JP11079309A 1999-03-24 1999-03-24 フラッシュメモリ駆動方法及びフラッシュメモリ装置 Pending JP2000276402A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11079309A JP2000276402A (ja) 1999-03-24 1999-03-24 フラッシュメモリ駆動方法及びフラッシュメモリ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11079309A JP2000276402A (ja) 1999-03-24 1999-03-24 フラッシュメモリ駆動方法及びフラッシュメモリ装置

Publications (1)

Publication Number Publication Date
JP2000276402A true JP2000276402A (ja) 2000-10-06

Family

ID=13686265

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11079309A Pending JP2000276402A (ja) 1999-03-24 1999-03-24 フラッシュメモリ駆動方法及びフラッシュメモリ装置

Country Status (1)

Country Link
JP (1) JP2000276402A (ja)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003036201A (ja) * 2001-07-24 2003-02-07 Sony Corp メモリアクセス管理装置
US6735661B2 (en) * 2000-06-27 2004-05-11 Koninklijke Philips Electronics N.V. Integrated circuit with flash memory including dedicated flash bus and flash bridge
JP2005235182A (ja) * 2004-02-16 2005-09-02 Samsung Electronics Co Ltd 不揮発性メモリを制御するためのコントローラ
JP2007066129A (ja) * 2005-09-01 2007-03-15 Hitachi Ltd ストレージシステムとストレージ装置及びその制御方法
JP2011086181A (ja) * 2009-10-16 2011-04-28 Fanuc Ltd 不揮発性メモリ保護機能を備えた情報処理装置
JP4834676B2 (ja) * 2004-12-21 2011-12-14 サンディスク コーポレイション オンチップ不揮発性メモリ書き込みキャッシュを使用するシステムおよび方法
US9864522B2 (en) 2014-08-28 2018-01-09 Panasonic Intellectual Property Management Co., Ltd. Memory card
US10120791B2 (en) 2014-09-18 2018-11-06 Casio Computer Co., Ltd. Data read apparatus, data read method, and storage medium storing data read program

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6735661B2 (en) * 2000-06-27 2004-05-11 Koninklijke Philips Electronics N.V. Integrated circuit with flash memory including dedicated flash bus and flash bridge
JP2003036201A (ja) * 2001-07-24 2003-02-07 Sony Corp メモリアクセス管理装置
JP2005235182A (ja) * 2004-02-16 2005-09-02 Samsung Electronics Co Ltd 不揮発性メモリを制御するためのコントローラ
JP4834676B2 (ja) * 2004-12-21 2011-12-14 サンディスク コーポレイション オンチップ不揮発性メモリ書き込みキャッシュを使用するシステムおよび方法
JP2007066129A (ja) * 2005-09-01 2007-03-15 Hitachi Ltd ストレージシステムとストレージ装置及びその制御方法
US8332582B2 (en) 2005-09-01 2012-12-11 Hitachi, Ltd. Storage system, storage device, and control method thereof
US8631199B2 (en) 2005-09-01 2014-01-14 Hitachi, Ltd. Storage system, storage device, and control method thereof
US9251063B2 (en) 2005-09-01 2016-02-02 Hitachi, Ltd. Storage system including a plurality of flash memory devices
US9495105B2 (en) 2005-09-01 2016-11-15 Hitachi, Ltd. System managing a plurality of flash memory devices
JP2011086181A (ja) * 2009-10-16 2011-04-28 Fanuc Ltd 不揮発性メモリ保護機能を備えた情報処理装置
US9864522B2 (en) 2014-08-28 2018-01-09 Panasonic Intellectual Property Management Co., Ltd. Memory card
US10120791B2 (en) 2014-09-18 2018-11-06 Casio Computer Co., Ltd. Data read apparatus, data read method, and storage medium storing data read program

Similar Documents

Publication Publication Date Title
US5987563A (en) Flash memory accessed using only the logical address
JP3171901B2 (ja) 不揮発性メモリカードの書換え方法
KR101146059B1 (ko) 비휘발성 메모리 시스템 및 비휘발성 메모리 시스템을 위한데이터 판독/기입 방법
JPH11134875A (ja) 半導体記憶装置、半導体記憶装置の制御装置及び制御方法
JP3421581B2 (ja) 不揮発性半導体メモリを用いた記憶装置
JP2000182381A (ja) 一括消去型不揮発性メモリ
JP2000276402A (ja) フラッシュメモリ駆動方法及びフラッシュメモリ装置
JPH11282765A (ja) フラッシュメモリを使用した外部記憶装置
JPH10124403A (ja) ブロック消去型フラッシュメモリの書込み方法
US6898680B2 (en) Minimization of overhead of non-volatile memory operation
JPH103434A (ja) 半導体ディスク装置及びその書き込み方式
JPH11305954A (ja) 半導体記憶装置及び半導体記憶装置の書き換え制御方法
JP3166659B2 (ja) 記憶装置
JPH07281962A (ja) 電気的書換可能な不揮発性メモリのアクセス方法
JP2000276461A (ja) マイクロコンピュータ
JPH10240633A (ja) メモリシステム及びメモリカード
JPH07129333A (ja) 半導体ディスク装置
JP2000035916A (ja) メモリ動作管理方法
JPH04111030A (ja) 情報記録装置
JP2856623B2 (ja) バッファ制御装置
JPH0934782A (ja) 情報記憶装置
JP2022040856A (ja) メモリ制御装置及びメモリ制御方法
JP2000090643A (ja) 記憶装置
JPH06230904A (ja) 半導体ディスク装置
JPH1083345A (ja) フラッシュ・メモリのデータ更新装置