JP2002278781A - 記憶装置、記憶装置制御方法及びプログラム - Google Patents

記憶装置、記憶装置制御方法及びプログラム

Info

Publication number
JP2002278781A
JP2002278781A JP2001076945A JP2001076945A JP2002278781A JP 2002278781 A JP2002278781 A JP 2002278781A JP 2001076945 A JP2001076945 A JP 2001076945A JP 2001076945 A JP2001076945 A JP 2001076945A JP 2002278781 A JP2002278781 A JP 2002278781A
Authority
JP
Japan
Prior art keywords
program
data
storage
storage area
read
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
Application number
JP2001076945A
Other languages
English (en)
Other versions
JP3574078B2 (ja
Inventor
Takeo Yoshii
武男 吉井
Masahiko Shimizu
政彦 志水
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.)
Tokyo Electron Device Ltd
Original Assignee
Tokyo Electron Device 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 Tokyo Electron Device Ltd filed Critical Tokyo Electron Device Ltd
Priority to JP2001076945A priority Critical patent/JP3574078B2/ja
Priority to PCT/JP2002/002442 priority patent/WO2002075745A1/en
Priority to TW091104923A priority patent/TW583687B/zh
Publication of JP2002278781A publication Critical patent/JP2002278781A/ja
Priority to US10/663,078 priority patent/US7007140B2/en
Application granted granted Critical
Publication of JP3574078B2 publication Critical patent/JP3574078B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • G11C7/1018Serial bit line access mode, e.g. using bit line address shift registers, bit line address counters, bit line burst counters
    • G11C7/1021Page serial bit line access mode, i.e. using an enabled row address stroke pulse with its associated word line address and a sequence of enabled column address stroke pulses each with its associated bit line address
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • G11C7/1045Read-write mode select circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Security & Cryptography (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)
  • Stored Programmes (AREA)

Abstract

(57)【要約】 【課題】 シーケンシャルにデータを読み出す記憶装置
に格納されたランダムアクセスを要するプログラムの処
理を、簡単な構成で実行することができる記憶装置及び
記憶装置制御方法を提供することである。 【解決手段】 ブート用ROM21は、NAND型のフ
ラッシュメモリ5に格納されているデバイスドライバを
命令格納用領域31に転送するための制御コードを格納
し、制御部1は、当該制御コードを読み出して実行する
ことにより、デバイスドライバをフラッシュメモリ5か
ら読み出して命令格納用領域31に格納する。ついで、
制御部1は、命令格納用領域31にランダムアクセスし
てデバイスドライバを実行し、フラッシュメモリ5への
1バイト単位のランダムアクセスを実質的に実現する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、記憶装置及び記
憶装置制御方法に関し、特に、一定の記憶容量毎にシー
ケンシャルにアクセスすることを要する記憶装置とその
制御方法に関する。
【0002】
【従来の技術】小型の記憶装置として、フラッシュメモ
リが用いられている。フラッシュメモリには、大別して
NOR型とNAND型とがある。
【0003】NOR型のフラッシュメモリは、1バイト
単位でのランダムアクセスが可能である。しかし、NA
ND型のフラッシュメモリに比べると、高価であり、集
積度が低い。
【0004】NAND型のフラッシュメモリは、NOR
型のフラッシュメモリに比べると、安価で集積度が高
い。しかし、ランダムアクセスを実行できる最小単位が
NOR型のフラッシュメモリより大きく、典型的には、
例えば最小単位が512バイトとなる。このため、記憶
領域に格納された状態から読み出して実行する場合に当
該記憶領域にランダムアクセスする必要が生じるような
プログラムは、NAND型のフラッシュメモリの記憶領
域に格納された状態から直接実行することができない。
このようなプログラムの例としては、NAND型のフラ
ッシュメモリへの擬似的なランダムアクセスを実現する
ためのデバイスドライバがある。
【0005】
【発明が解決しようとする課題】NAND型のフラッシ
ュメモリの記憶領域に格納されたデバイスドライバを実
行できるようにするための手法としては、実行する対象
のデバイスドライバを予めNOR型のフラッシュメモリ
やプログラマブルROM(Read Only Memory)の記憶領
域に格納しておき、NAND型フラッシュメモリにアク
セスするCPU(Central Processing Unit)等が起動
した直後に、このデバイスドライバをRAM(Ramdom A
ccess Memory)の記憶領域へと転送する、という手法が
考えられる。
【0006】しかし、この手法によった場合、デバイス
ドライバを格納するための不揮発性記憶媒体をNAND
型フラッシュメモリとは別に備える必要が生じ、フラッ
シュメモリにアクセスする装置の構成が複雑になり、大
型にもなる。
【0007】この発明は上記実状に鑑みてなされたもの
で、簡単な構成で、シーケンシャルにデータを読み出す
記憶装置に格納されたランダムアクセスを要するプログ
ラムの処理を実行することができる記憶装置及び記憶装
置制御方法を提供することを目的とする。
【0008】
【課題を解決するための手段】上記目的を達成するた
め、この発明の第1の観点にかかる記憶装置は、複数の
メモリページを含み、各々の前記メモリページを構成す
る順序づけられた第1の記憶領域にデータを格納し、当
該第1の記憶領域からシーケンシャルに当該データを出
力する第1の記憶手段と、前記メモリページの記憶容量
より小さな単位でのランダムアクセスが可能な第2の記
憶領域を有する第2の記憶手段と、初期読み出しプログ
ラムを格納する第3の記憶手段と、前記第1乃至第3の
記憶領域へのアクセスを行う制御手段と、より構成され
ており、一部の前記メモリページには、実行のため前記
制御手段に前記メモリページの記憶容量より小さな単位
でのランダムアクセスを行わせることを要するプログラ
ムを構成するプログラム構成データが格納されており、
前記初期読み出しプログラムは、前記制御手段に、前記
第1の記憶領域からシーケンシャルにデータを読み出さ
せ、読み出したデータに含まれる前記プログラム構成デ
ータを特定させ、特定した前記プログラム構成データを
前記第2の記憶領域に格納させるためのプログラムを含
む、ことを特徴とする。
【0009】このような記憶装置によれば、ランダムア
クセスを要するプログラム自体は、シーケンシャルにデ
ータを読み出す第1の記憶手段に記憶されるので、この
プログラムを記憶するための記憶装置を別個に用意する
必要がなく、簡単な構成で、このプログラムの処理が実
行される。
【0010】前記第1の記憶手段は、NAND型フラッ
シュメモリより構成されているものとすれば、安価で集
積度が高い記憶装置が構成される。
【0011】前記制御手段は、例えば、前記第3の記憶
手段が格納する前記初期読み出しプログラムを読み出
し、当該初期読み出しプログラムに従い、前記第1の記
憶領域から前記プログラム構成データを読み出して前記
第2の記憶領域に格納する手段と、前記第2の記憶領域
に格納された前記プログラム構成データより構成される
プログラムを読み出して実行する手段と、を備えること
により、ランダムアクセスを要するプログラムを実行す
る。
【0012】前記プログラム構成データが格納されてい
るメモリページには、当該プログラム構成データが当該
メモリページに格納されていることを示すプログラム識
別データが格納されていてもよい。この場合、前記初期
読み出しプログラムは、例えば、前記制御手段に、前記
第1の記憶領域からシーケンシャルに読み出した前記デ
ータに含まれる前記プログラム識別データを検出させ、
検出された当該プログラム識別データが格納されている
メモリページから読み出した前記プログラム構成データ
を特定させるためのプログラムを含むものであればよ
い。
【0013】前記プログラム構成データが構成するプロ
グラムが、前記制御手段に前記メモリページより小さな
単位で他の前記メモリページへのランダムアクセスを擬
似的に行わせるためのデバイスドライバプログラムであ
れば、シーケンシャルにデータを読み出す記憶装置への
擬似的なランダムアクセスが簡単な構成で行われる。前
記デバイスドライバプログラムは、例えば、前記制御手
段に、前記メモリページに割り当てられた論理アドレス
を取得させ、取得した論理アドレスを割り当てられてい
るメモリページへのアクセスを行わせるためのプログラ
ムを含むものであれば、論理アドレスを引数としたメモ
リページへのアクセスが実現される。
【0014】前記第3の記憶手段は、外部より前記初期
読み出しプログラムを取得して自己の記憶領域に格納す
る手段を備えていれば、第3の記憶手段は、初期読み出
しプログラムを不揮発的に記憶している必要がない。
【0015】また、この発明の第2の観点に係る記憶装
置制御方法は、複数のメモリページを含み、各々の前記
メモリページが順序づけられた第1の記憶領域より構成
されていて当該第1の記憶領域からシーケンシャルに当
該データを出力する記憶装置の一部の前記メモリページ
に、前記メモリページにアクセスする情報処理装置に実
行のため前記メモリページの記憶容量より小さな単位で
のランダムアクセスを行わせることを要するプログラム
を構成するプログラム構成データを格納し、前記情報処
理装置に、前記第1の記憶領域からシーケンシャルにデ
ータを読み出させ、読み出したデータに含まれる前記プ
ログラム構成データを特定させ、特定した前記プログラ
ム構成データを、前記メモリページの記憶容量より小さ
な単位でのランダムアクセスが可能な第2の記憶領域に
格納させるための初期読み出しプログラムを第3の記憶
領域に格納し、前記情報処理装置に、前記第3の記憶領
域から前記初期読み出しプログラムを読み出させ、当該
初期読み出しプログラムに従い、前記第1の記憶領域か
ら前記プログラム構成データを読み出して前記第2の記
憶領域に格納させ、前記情報処理装置に、前記第2の記
憶領域に格納された前記プログラム構成データより構成
されるプログラムを読み出させて実行させる、ことを特
徴とする。
【0016】このような記憶装置制御方法によれば、ラ
ンダムアクセスを要するプログラム自体は、シーケンシ
ャルにデータを読み出す記憶装置に記憶されるので、こ
のプログラムを記憶するための記憶装置を別個に用意す
る必要がなく、簡単な構成で、このプログラムの処理が
実行される。
【0017】また、この発明の第3の観点に係るプログ
ラムは、複数のメモリページを含み、各々の前記メモリ
ページを構成する順序づけられた第1の記憶領域にデー
タを格納し、当該第1の記憶領域からシーケンシャルに
当該データを出力する第1の記憶手段と、前記メモリペ
ージの記憶容量より小さな単位でのランダムアクセスが
可能な第2の記憶領域を有する第2の記憶手段と、を備
えるコンピュータであって、一部の前記メモリページ
に、実行のため当該コンピュータに前記メモリページの
記憶容量より小さな単位でのランダムアクセスを行わせ
ることを要するプログラムを構成するプログラム構成デ
ータが格納されているコンピュータを、前記第1及び第
2の記憶領域へのアクセスを行う制御手段として機能さ
せるためのプログラムであって、前記制御手段に、前記
第1の記憶領域からシーケンシャルにデータを読み出さ
せ、読み出したデータに含まれる前記プログラム構成デ
ータを特定させ、特定した前記プログラム構成データを
前記第2の記憶領域に格納させる、ためのものであるこ
とを特徴とする。
【0018】このようなプログラムを実行するコンピュ
ータによれば、ランダムアクセスを要するプログラム自
体は、シーケンシャルにデータを読み出す第1の記憶手
段に記憶されるので、このプログラムを記憶するための
記憶装置を別個に用意する必要がなく、簡単な構成で、
このプログラムの処理が実行される。
【0019】
【発明の実施の形態】以下、この発明の実施の形態に係
る記憶装置及び記憶装置制御方法を、フラッシュメモリ
ドライブ装置を例として説明する。図1に示すように、
このフラッシュメモリドライブ装置は、制御部1と、ユ
ーザロジック部2と、主記憶部3と、フラッシュメモリ
I/F(InterFace)4と、フラッシュメモリ5と、入
出力部6とより構成されている。
【0020】制御部1、ユーザロジック部2、主記憶部
3、フラッシュメモリI/F4及び入出力部6は、内部
バスBUSを介して互いに接続されている。フラッシュ
メモリ5は、フラッシュメモリI/F4に固定的に接続
され、あるいは、図示しないPC(Personal Compute
r)カードATA(AT Attachment)インターフェース等
を介して着脱可能に接続されている。あるいは、フラッ
シュメモリ5は、例えばスマートメディア(商標)やコ
ンパクトフラッシュ(商標)等のメモリカードを構成す
るものとし、このメモリカードが、図示しないアダプタ
を介してフラッシュメモリI/F4に着脱可能に接続さ
れてもよい。
【0021】制御部1は、CPU(Central Processing
Unit)等より構成されている。制御部1は、ユーザロ
ジック部2の後述するブート用ROM(Read Only Memo
ry)21から後述する制御コードを読み出し、読み出し
た制御コードに従い、後述する制御コードの処理を行
う。制御コードの処理では、後述するように、ラッシュ
メモリ5が記憶する後述のデバイスドライバが主記憶部
3の後述する命令格納用領域31へと転送される。そし
て、制御部1は、転送されたデバイスドライバを命令格
納用領域31より読み出し、読み出したデバイスドライ
バに従い、フラッシュメモリ5へのアクセスを行う。フ
ラッシュメモリ5へのアクセスは、フラッシュメモリI
/F4を制御コードやデバイスドライバに従って制御す
ることにより行う。なお、デバイスドライバは、実行に
あたって、1バイト単位でのランダムアクセスが可能な
記憶領域に格納されていることを要するプログラムから
なる。
【0022】ユーザロジック部2は、PLA(Programm
able Logic Array)、FPGA(Field Programmable G
ate Array))等からなるロジック回路や、ブート用R
OM21を備えている。ブート用ROM21は、PRO
M(Programmable ROM)やFPGA等より構成されてお
り、自己が記憶している制御コードを制御部1の制御に
従って読み出し、制御部1へと供給する。制御コード
は、制御部1が実行する後述のステップS101〜S1
14の処理を制御するためのプログラムを含むデータで
ある。
【0023】主記憶部3は、RAM(Random Access Me
mory)等、1バイト単位でのランダムアクセスが可能で
あってフラッシュメモリ5よりもデータを高速に読み書
き可能な記憶装置より構成されている。主記憶部3は、
制御部1の制御に従って、自己に供給されたデータを自
己の記憶領域に記憶したり、自己が記憶しているデータ
を制御部1の制御に従って読み出したりする。
【0024】図1に示すように、主記憶部3が備える記
憶領域には、命令格納用領域31と、データ格納用領域
32とが含まれている。
【0025】命令格納用領域31は、後述のデバイスド
ライバを格納するための記憶領域である。データ格納用
領域32は、制御部1がデバイスドライバの制御に従っ
てデータを格納するための記憶領域である。データ格納
用領域32に属する記憶領域は、各々の記憶容量が所定
の単位量(例えば、1バイト)である区画に区切られ、
各々の区画には、この区画を識別するためのデータ番地
が割り当てられている。
【0026】データ格納用領域32は、制御部1のワー
クエリアとして用いられ、また、デバイスドライバの制
御に従って制御部1が行う処理に従い、空きブロックテ
ーブル及びアドレス変換テーブルを格納する。空きブロ
ックテーブルは、フラッシュメモリ5の各ブロックのい
ずれが空きブロック(すなわち、リセットされた状態に
あり、データ「0」を記憶したメモリセルを含んでいな
いブロック)であるかを表す情報を含むデータである。
アドレス変換テーブルは、フラッシュメモリ5の各ブロ
ックのうち、後述するユーザ領域を含むブロックに割り
当てられる論理ブロックアドレスを表す情報を含むデー
タである。
【0027】論理ブロックアドレスは、フラッシュメモ
リ5がデバイスドライバの処理に従って読み書きされる
ときに、制御部1により、データ読み書きの単位として
認識される単位である。論理ブロックアドレスが割り当
てられているブロックの総量は、フラッシュメモリ5が
物理的に備えるブロックの総量より小さく、フラッシュ
メモリ5のユーザが後述のユーザデータを記憶させるた
めに確保したいブロックの量より大きい量とする。例え
ば、ユーザデータを記憶させるために確保したいブロッ
クの量が1000個であれば、論理ブロックアドレスが
割り当てられるブロックの総量は、1001個であれば
よい。
【0028】フラッシュメモリI/F4は、制御部1に
よるフラッシュメモリ5へのアクセスを媒介する。具体
的には、フラッシュメモリI/F4は、例えば、制御部
1が制御コードやデバイスドライバの制御に従って発す
る指示に従い、制御部1が供給するデータをフラッシュ
メモリ5の記憶領域に格納する。また、例えば、制御部
1が制御コードやデバイスドライバの制御に従って発す
る指示に従い、制御部1が供給するデータをフラッシュ
メモリ5から読み出して制御部1に供給する。
【0029】フラッシュメモリ5は、NAND型のフラ
ッシュメモリより構成され、複数のメモリセルを備えて
いる。各メモリセルは、1バイトの記憶容量を有する。
これらのメモリセルは、論理的には、図2に示すよう
に、縦131072行、横528列のマトリクス状に配
置されている。従って、フラッシュメモリ5は全体とし
てはほぼ66メガバイトの記憶容量を有する。
【0030】フラッシュメモリ5は、フラッシュメモリ
I/F4を介して制御部1よりデータの読み出しを指示
されると、読み出しを指示された行のデータを、先頭か
らメモリセル1個分(すなわち、1バイト)ずつ528
回に分けて読み出し、フラッシュメモリI/F4を介し
制御部1へと順次供給する。一方、フラッシュメモリI
/F4を介して制御部1よりデータの書き込みを指示さ
れると、書き込みを指示された行に、制御部1からフラ
ッシュメモリI/F4を介して供給された書き込み対象
のデータを、先頭の1バイトから1バイトずつ528回
に分けて記憶する。
【0031】また、フラッシュメモリ5は、フラッシュ
メモリI/F4を介して制御部1より、特定のブロック
の記憶内容を消去するよう指示されると、当該ブロック
に含まれるすべてのメモリセルの記憶内容をリセットす
る(具体的には、各メモリセルの記憶値を「1」とす
る)。
【0032】図2に示すように、メモリセルのマトリク
スの各行は528バイトの記憶容量を有するページを構
成する。各ページに含まれるメモリセルには、連続的に
1から528までの番地が与えられている。また、各ペ
ージは、先頭から32ページ単位で1つのブロックを構
成する。各ブロックは8キロバイトの記憶容量を有し、
記憶領域全体は、4096個のブロックから構成されて
いる。各々のブロックに属するページには、連続的に1
から32までのページアドレスが与えられている。
【0033】そして、フラッシュメモリ5の各ブロック
は、各々が1024個のブロックを含む4個のゾーン
(ゾーン1〜ゾーン4)へと更に分類されている。各々
のゾーンに属するブロックには、連続的に1から102
4までの物理ブロックアドレスが与えられている。ゾー
ン1、ゾーン2、ゾーン3、及びゾーン4には、順に、
1、2、3及び4のゾーンアドレスが与えられている。
【0034】また、各ページは、図2に示すように、先
頭から512バイトの領域を占めるデータ領域と、末尾
16バイトを占める冗長部とから構成される。データ領
域には、このフラッシュメモリドライブ装置のユーザが
利用するユーザデータ、又は、デバイスドライバが格納
される。
【0035】一方、各々のページの冗長部には、当該ペ
ージのデータ領域に格納されているデータ(ユーザデー
タ又はデバイスドライバ)の内容が破壊されていないこ
とを確認するためのエラーチェックコードが格納され、
更に、このページが属するブロックに割り当てられてい
る論理ブロックアドレスと、エラーフラグと、システム
フラグとが、予め格納される。
【0036】エラーフラグは、このエラーフラグが格納
されているブロックが、データを正常に格納可能なブロ
ック(良品ブロック)であるか、良品ブロックでないブ
ロックすなわち不良ブロックであって、フラッシュメモ
リ5の製造者等によって出荷前に不良と判断されたブロ
ック(初期不良ブロック)であるか、不良ブロックであ
って、フラッシュメモリ5の使用中にデータの正常な格
納ができないと判断された(又は、デバイスドライバを
格納するために用いるものとされた)ブロック(後発不
良ブロック)であるか、を示すデータである。
【0037】システムフラグは、このシステムフラグが
格納されているページのデータ領域が、デバイスドライ
バを構成するデータを格納するデータ領域(ファームウ
ェア領域)であるか、ユーザデータを格納するデータ領
域(ユーザ領域)であるかを示すデータである。ファー
ムウェア領域は、本願発明におけるプログラム構成デー
タを格納する記憶領域に相当する。なお、ファームウェ
ア領域は、上述の通り、後発不良ブロックの記憶領域内
に確保されている。
【0038】入出力部6は、キーボード、マウス、記録
媒体からのデータの読み出しを行う記録媒体ドライバ
(例えば、フロッピー(登録商標)ディスクドライブ装
置やMO(MagnetoOptical disk)ドライブ装置)等を
備える入力部と、液晶ディスプレイや、記録媒体へのデ
ータの書き込みを行う記録媒体ドライバ等を備える出力
部とを含んでいる。なお、単一の記録媒体ドライバが入
力部及び出力部の両方を構成していても差し支えない。
また、双方向のデータ伝送が可能なバスを介してデータ
伝送を行うインタフェース回路(例えばUSB(Univer
sal Serial Bus)のインターフェース回路や、IEEE
(Institute of Electrical and Electronics Engineer
s)1394バスのインターフェース回路)が、入力部
及び出力部の両方の機能を行うようにしてもよい。ま
た、入力部は、音声を集音しあるいは音声を表すデータ
を外部から取得して、これらの音声を表すMP3(MPEG
1 audio layer 3)形式のデータを作成するMP3エン
コーダを備えていてもよい。また、出力部は、MP3形
式のデータを内部バスBUSを介して制御部1より取得
して、このMP3形式のデータが表す音声を再生しある
いはこの音声を表す他の形式のデータを作成するMP3
デコーダを備えていてもよい。
【0039】入出力部6は、操作者の操作に従ったデー
タを制御部1に供給し、あるいは、自己に装着された記
録媒体からデータを読み取って、読み取ったデータを制
御部1に供給する。また、入出力部6は、制御部1が供
給する指示に従ったデータを出力する。(具体的には、
当該データを表示したり、あるいは記録媒体に書き込ん
だりする)。
【0040】(動作)次に、このフラッシュメモリドラ
イブ装置の処理を、図3を参照して説明する。図3は、
制御コードの処理を示すフローチャートである。
【0041】このフラッシュメモリドライブ装置に電源
電力が投入されると、制御部1はまず、ユーザロジック
部2のブート用ROM21にアクセスし、ブート用RO
M21の記憶領域に格納されている制御コードを読み出
して、図3に示す制御コードの処理を実行する。
【0042】制御コードの処理を開始すると、制御部1
は、ステップS101で、カウンタ用の変数Z、変数B
及び変数Pの使用を宣言し(すなわち、変数Z、変数B
及び変数Pの値を格納するための記憶領域を主記憶部3
のデータ格納用領域32内に確保し)、変数Z、変数B
及び変数Pに初期値「0」を代入する(すなわち、変数
Zの値を格納する記憶領域に値0を格納し、変数Bの値
を格納する記憶領域と、変数Pの値を格納する記憶領域
とにも、それぞれ、値0を格納する)。
【0043】次に、制御部1は、ステップS102で変
数Zをインクリメントし(すなわち、変数Zの値を格納
する記憶領域に格納されている値を1だけ増加させ)、
次いで変数Bもインクリメントし(ステップS10
3)、次いで変数Pもインクリメントする(ステップS
104)。
【0044】次に、制御部1は、変数Zの現在の値に相
当するゾーンに含まれるページのうち、変数Bの現在の
値に相当する物理ブロックアドレスを与えられたブロッ
クに含まれ、且つ、変数Pの現在の値に相当するページ
アドレスを与えられたページに格納されている528バ
イトのデータを、シーケンシャルに(すなわち、番地が
大きい順に、又は、番地が小さい順に)読み出して、主
記憶部3のデータ格納用領域32に一時記憶する(ステ
ップS105)。
【0045】次に、制御部1は、ステップS105でも
っとも新しく読み出したデータに含まれるエラーフラグ
の値に基づき、データを読み出したページが初期不良ペ
ージ(初期不良ブロック内のページ)であるか否かを判
別する(ステップS106)。そして、このページが初
期不良ページであると判別すると、制御部1は、後述の
ステップS110に処理を進める。一方、初期不良ペー
ジでないとステップS106で判別すると、制御部1
は、ステップS105でもっとも新しく読み出したデー
タに含まれるエラーフラグの値に基づき、データを読み
出したページが後発不良ページ(後発不良ブロック内の
ページ)であるか否かを判別する(ステップS10
7)。そして、このページが後発不良のページでないと
判別すると、制御部1は、ステップS110に処理を進
める。
【0046】一方、後発不良のページであるとステップ
S107で判別すると、制御部1は、ステップS105
でもっとも新しく読み出したデータに含まれるシステム
フラグの値に基づき、データを読み出したページがファ
ームウェア領域であるかユーザ領域であるかを判別する
(ステップS108)。そして、このページがユーザ領
域であると判別すると、制御部1はステップS110に
処理を進める。
【0047】一方、ファームウェア領域であるとステッ
プS108で判別すると、制御部1は主記憶部3の命令
格納用領域31にアクセスし、ステップS105でもっ
とも新しく読み出したページのデータのうち、先頭の5
12バイトを命令格納用領域31に格納する(ステップ
S109)。ステップS109で命令格納用領域31に
格納されるデータは、上述のデバイスドライバを構成す
るデータである。
【0048】次に、制御部1は、ステップS105でも
っとも新しくデータを読み出したページが、このページ
が属するブロックの最終ページであるか否かを、例えば
変数Pの現在の値に基づいて判別する(ステップS11
0)。そして、最終ページでないと判別すると、処理を
ステップS104に戻す。
【0049】一方、最終ページであると判別すると、制
御部1は、変数Pの値を「0」へと書き換える(ステッ
プS111)。次いで、制御部1は、ステップS105
でもっとも新しくデータを読み出したページが属するブ
ロックが、このブロックが属するゾーンの最終ブロック
であるか否かを、例えば変数Bの現在の値に基づいて判
別する(ステップS112)。そして、最終ブロックで
ないと判別すると、処理をステップS103に戻す。
【0050】一方、最終ブロックであると判別すると、
制御部1は、変数Bの値を「0」へと書き換える(ステ
ップS113)。次いで、制御部1は、ステップS10
5でもっとも新しくデータを読み出したブロックが属す
るゾーンが、フラッシュメモリ5の記憶領域が備えるゾ
ーンのうちの最終ゾーンであるか否かを、例えば変数Z
の現在の値に基づいて判別する(ステップS114)。
そして、最終ゾーンでないと判別すると、処理をステッ
プS102に戻す。
【0051】一方、最終ゾーンであると判別すると、制
御部1は制御コードの処理を終了する。そして、命令格
納用領域31にアクセスし、ステップS109で格納し
たデータより構成されるデバイスドライバを読み出して
実行する。
【0052】デバイスドライバの処理を開始した制御部
1は、例えば特開2000−305839や特開200
0−011677に開示されているような手法で、フラ
ッシュメモリ5の各ブロックの冗長部に格納されている
論理ブロックアドレスの内容に基づいて空きブロックテ
ーブル及びアドレス変換テーブルを作成し、主記憶部3
のデータ格納用領域32に格納する。空きブロックテー
ブル及びアドレス変換テーブルを作成すると、制御部1
は、フラッシュメモリ5へアクセスしてデータの読み書
きを行ったり、ブロックの記憶内容の消去を行ったり、
読み出したデータをデータ格納用領域32に格納したり
することにより、フラッシュメモリ5への1バイト単位
のランダムアクセスを擬似的に実現する。デバイスドラ
イバの処理に従ったフラッシュメモリ5へのデータの書
き込みあるいは書き換えや、フラッシュメモリ5が記憶
するデータの読み出しを行う場合、書き込み、書き換え
あるいは読み出しの対象となるデータのある記憶領域
は、論理ブロックアドレスに基づいて特定される。
【0053】具体的には、例えば、入出力部6から論理
ブロックアドレス、ページアドレス、データ番地、及び
データ読み出しの指示が供給されたとき、制御部1は、
この指示に応答してアドレス変換テーブルを検索し、入
出力部6から供給された論理ブロックアドレスに対応付
けられている物理ブロックアドレスを特定する。次に、
特定した物理ブロックアドレス及び入出力部6から供給
されたページアドレスにより特定されるページにアクセ
スして、このページの記憶内容の先頭512バイトを読
み出し、主記憶部3のデータ格納用領域32に一時記憶
する。次に、制御部1は、データ格納用領域32に一時
記憶した512バイトのデータのうち、入出力部6から
供給されたデータ番地により特定される記憶領域に格納
されたデータを特定し、入出力部6に、特定したデータ
の出力を指示する。入出力部6は、特定されたこのデー
タを出力する。
【0054】一方、例えば、入出力部6から、データ書
き換えの指示と、書き換える対象のデータの論理ブロッ
クアドレス、ページアドレス、データ番地、及び、書き
換え後の内容が供給されたとき、デバイスドライバの処
理を行う制御部1は、データ書き換えの指示に応答して
空きブロックテーブルを検索して、空きブロックを特定
する。次に、制御部1は、入出力部6から供給された論
理ブロックアドレスに対応付けられている物理ブロック
アドレスを特定し、特定した物理ブロックアドレス及び
入出力部6から供給されたページアドレスにより特定さ
れるページの記憶内容を読み出してデータ格納用領域3
2に一時記憶する。次に、データ格納用領域32に一時
記憶されているデータのうち、入出力部6から供給され
たデータ番地により特定されるデータを、入出力部6か
ら供給された書き換え後の内容と同じになるように書き
換える。
【0055】次に、制御部1は、書き換える対象のデー
タを含むブロック内のデータを、自ら特定した空きブロ
ックにシーケンシャルに書き込む。ただし、書き換える
対象のデータを含むページ内のデータは書き込まず、こ
のページ内のデータに代えて、データ格納用領域32に
一時記憶して書き換えたデータを書き込む。そして、書
き換え前のデータが記憶されているブロックの記憶内容
を一括して消去し、消去したブロック内の各ページの冗
長部に、このブロックがユーザ領域であることを表すシ
ステムフラグを書き込む。なお、消去時に消去エラーが
発生した場合、又は、書き込み時に書き込みエラーが発
生した場合は、これらのエラーを発生させたブロック内
の各ページの冗長部に、このブロックが後発不良ブロッ
クであることを表すエラーフラグを書き込むものとす
る。そして、空きブロックテーブルを再度検索して更に
空きブロックを特定し、書き換える対象のデータを含む
ブロック内のデータを、再度の検索により特定された空
きブロックに書き込むものとする。
【0056】次に、制御部1は、空きブロックテーブル
の内容を、記憶内容を新たに消去されたブロックが空き
ブロックであることを表し書き換え後のデータが空きブ
ロックでないことを表すように変更する。また、アドレ
ス変換テーブルの内容を、書き換え後のデータが記憶さ
れているブロックの物理ブロックアドレスが、入出力部
6から供給された論理ブロックアドレスに対応付けられ
るように変更する。
【0057】なお、このフラッシュメモリドライブ装置
の構成は上述のものに限られない。例えば、フラッシュ
メモリ5の各ブロックの大きさは上述の大きさに限られ
ない。例えば、各ブロックは32ページから構成される
必要はなく、例えば、各ページの大きさの整数倍であれ
ばよい。また、フラッシュメモリ5が備えるブロックの
数や、ゾーンの数や、1ページあたりのメモリセルの数
も任意である。
【0058】また、このフラッシュメモリドライブ装置
は、ブート用ROM21に代えて、RAM等からなり外
部から制御コードをシリアルに入力して記憶する一時記
憶装置を備えるようにしてもよい。この場合、制御コー
ドを記憶した一時記憶装置が、ブート用ROM21の機
能を行えばよい。
【0059】また、制御部1がフラッシュメモリI/F
4の機能を行ってもよい。また、上述のステップS10
1で変数Zや変数Bや変数Pに代入する初期値は、必ず
しも「0」である必要はなく、例えば、フラッシュメモ
リ5の末尾のゾーンのゾーンアドレスを変数Zの初期値
としてもよいし、末尾のブロックのブロックアドレスを
変数Bの初期値としてもよい。また、変数Zや変数Bや
変数Pをインクリメントする代わりにデクリメントする
(すなわち、変数Zや変数Bや変数Pの値を格納する記
憶領域に格納されている値を1だけ減少させる)ことも
差し支えない。例えばデバイスドライバが、制御部1
に、プログラム等のデータを先頭のゾーンの先頭のブロ
ックから順に格納させるようなプログラムである場合、
フラッシュメモリ5がこのデバイスドライバを末尾のゾ
ーンの末尾付近のブロックに予め格納し、末尾のゾーン
のゾーンアドレスを変数Zの初期値とし、末尾のブロッ
クのブロックアドレスを変数Bの初期値とし、末尾のペ
ージのページアドレスを変数Pの初期値として、制御コ
ードの処理において変数Zや変数Bや変数Pをインクリ
メントする代わりにデクリメントするようにすれば、変
数Zや変数Bや変数Pの初期値を「0」として制御コー
ドの処理で変数Zや変数Bや変数Pをインクリメントす
る場合に比べ、主記憶部2へのデバイスドライバの転送
が迅速になる。また、上記実施の形態では、フラッシュ
メモリ5は、NAND型のものによって構成されていた
が、AND型のものによっても構成することはできる。
【0060】また、ステップS105で、制御部1は、
変数Z、変数B及び変数Pの現在の値に相当するページ
に格納されているデータすべてを読み出す必要はなく、
末尾16バイトのデータだけを読み出してデータ格納用
領域32に一時記憶するようにしてもよい。この場合、
制御部1は、ステップS109で、命令格納用領域31
に代えて、ステップS105でもっとも新しくデータを
読み出したフラッシュメモリ5のページに再びアクセス
し、このページのデータのうち先頭の512バイトを読
み出して、命令格納用領域31に格納するようにすれば
よい。
【0061】以上、この発明の実施の形態を説明した
が、この発明の記憶装置は、専用のシステムによらず、
通常のコンピュータシステムを用いて実現可能である。
フラッシュメモリが接続されたコンピュータに上述の制
御部1、ユーザロジック部2、主記憶部3、フラッシュ
メモリI/F4及び入出力部6の動作を実行するための
プログラムを格納した媒体(フロッピーディスク、CD
−ROM等)から当該プログラムをインストールするこ
とにより、上述の処理を実行するフラッシュメモリドラ
イブ装置を構成することができる。
【0062】また、例えば、通信ネットワークの掲示板
(BBS)に当該プログラムを掲示し、これを通信回線
を介して配信してもよく、また、当該プログラムを表す
信号により搬送波を変調し、得られた変調波を伝送し、
この変調波を受信した装置が変調波を復調して当該プロ
グラムを復元するようにしてもよい。そして、当該プロ
グラムを起動し、OSの制御下に、他のアプリケーショ
ンプログラムと同様に実行することにより、上述の処理
を実行することができる。
【0063】なお、OSが処理の一部を分担する場合、
あるいは、OSが本願発明の1つの構成要素の一部を構
成するような場合には、記録媒体には、その部分を除い
たプログラムを格納してもよい。この場合も、この発明
では、その記録媒体には、コンピュータが実行する各機
能又はステップを実行するためのプログラムが格納され
ているものとする。
【0064】
【発明の効果】以上説明したように、この発明によれ
ば、簡単な構成で、シーケンシャルにデータを読み出す
記憶装置に格納されたランダムアクセスを要するプログ
ラムの処理を実行することができる記憶装置及び記憶装
置制御方法が実現される。
【図面の簡単な説明】
【図1】この発明の実施の形態にかかるフラッシュメモ
リドライブ装置の基本構成を示すブロック図である。
【図2】フラッシュメモリの記憶領域の論理的構造を示
す図である。
【図3】制御コードの処理を示すフローチャートであ
る。
【符号の説明】
1 制御部 2 ユーザロジック部 21 ブート用ROM 3 主記憶部 31 命令格納用領域 32 データ格納用領域 4 フラッシュメモリI/F 5 フラッシュメモリ 6 入出力部

Claims (9)

    【特許請求の範囲】
  1. 【請求項1】複数のメモリページを含み、各々の前記メ
    モリページを構成する順序づけられた第1の記憶領域に
    データを格納し、当該第1の記憶領域からシーケンシャ
    ルに当該データを出力する第1の記憶手段と、 前記メモリページの記憶容量より小さな単位でのランダ
    ムアクセスが可能な第2の記憶領域を有する第2の記憶
    手段と、 初期読み出しプログラムを格納する第3の記憶手段と、 前記第1乃至第3の記憶領域へのアクセスを行う制御手
    段と、より構成されており、 一部の前記メモリページには、実行のため前記制御手段
    に前記メモリページの記憶容量より小さな単位でのラン
    ダムアクセスを行わせることを要するプログラムを構成
    するプログラム構成データが格納されており、 前記初期読み出しプログラムは、前記制御手段に、前記
    第1の記憶領域からシーケンシャルにデータを読み出さ
    せ、読み出したデータに含まれる前記プログラム構成デ
    ータを特定させ、特定した前記プログラム構成データを
    前記第2の記憶領域に格納させるためのプログラムを含
    む、 ことを特徴とする記憶装置。
  2. 【請求項2】前記第1の記憶手段は、NAND型フラッ
    シュメモリより構成されている、 ことを特徴とする請求項1に記載の記憶装置。
  3. 【請求項3】前記制御手段は、 前記第3の記憶手段が格納する前記初期読み出しプログ
    ラムを読み出し、当該初期読み出しプログラムに従い、
    前記第1の記憶領域から前記プログラム構成データを読
    み出して前記第2の記憶領域に格納する手段と、 前記第2の記憶領域に格納された前記プログラム構成デ
    ータより構成されるプログラムを読み出して実行する手
    段と、を備える、 ことを特徴とする請求項1又は2に記載の記憶装置。
  4. 【請求項4】前記プログラム構成データが格納されてい
    るメモリページには、当該プログラム構成データが当該
    メモリページに格納されていることを示すプログラム識
    別データが格納されており、 前記初期読み出しプログラムは、前記制御手段に、前記
    第1の記憶領域からシーケンシャルに読み出した前記デ
    ータに含まれる前記プログラム識別データを検出させ、
    検出された当該プログラム識別データが格納されている
    メモリページから読み出した前記プログラム構成データ
    を特定させるためのプログラムを含む、 ことを特徴とする請求項1、2又は3に記載の記憶装
    置。
  5. 【請求項5】前記プログラム構成データが構成するプロ
    グラムは、前記制御手段に前記メモリページより小さな
    単位で他の前記メモリページへのランダムアクセスを擬
    似的に行わせるためのデバイスドライバプログラムを含
    む、 ことを特徴とする請求項1乃至4のいずれか1項に記載
    の記憶装置。
  6. 【請求項6】前記デバイスドライバプログラムは、前記
    制御手段に、前記メモリページに割り当てられた論理ア
    ドレスを取得させ、取得した論理アドレスを割り当てら
    れているメモリページへのアクセスを行わせるためのプ
    ログラムを含む、 ことを特徴とする請求項5に記載の記憶装置。
  7. 【請求項7】前記第3の記憶手段は、外部より前記初期
    読み出しプログラムを取得して自己の記憶領域に格納す
    る手段を備える、 ことを特徴とする請求項1乃至6のいずれか1項に記載
    の記憶装置。
  8. 【請求項8】複数のメモリページを含み、各々の前記メ
    モリページが順序づけられた第1の記憶領域より構成さ
    れていて当該第1の記憶領域からシーケンシャルに当該
    データを出力する記憶装置の一部の前記メモリページ
    に、前記メモリページにアクセスする情報処理装置に実
    行のため前記メモリページの記憶容量より小さな単位で
    のランダムアクセスを行わせることを要するプログラム
    を構成するプログラム構成データを格納し、 前記情報処理装置に、前記第1の記憶領域からシーケン
    シャルにデータを読み出させ、読み出したデータに含ま
    れる前記プログラム構成データを特定させ、特定した前
    記プログラム構成データを、前記メモリページの記憶容
    量より小さな単位でのランダムアクセスが可能な第2の
    記憶領域に格納させるための初期読み出しプログラムを
    第3の記憶領域に格納し、 前記情報処理装置に、前記第3の記憶領域から前記初期
    読み出しプログラムを読み出させ、当該初期読み出しプ
    ログラムに従い、前記第1の記憶領域から前記プログラ
    ム構成データを読み出して前記第2の記憶領域に格納さ
    せ、 前記情報処理装置に、前記第2の記憶領域に格納された
    前記プログラム構成データより構成されるプログラムを
    読み出させて実行させる、 ことを特徴とする記憶装置制御方法。
  9. 【請求項9】複数のメモリページを含み、各々の前記メ
    モリページを構成する順序づけられた第1の記憶領域に
    データを格納し、当該第1の記憶領域からシーケンシャ
    ルに当該データを出力する第1の記憶手段と、前記メモ
    リページの記憶容量より小さな単位でのランダムアクセ
    スが可能な第2の記憶領域を有する第2の記憶手段と、
    を備えるコンピュータであって、一部の前記メモリペー
    ジに、実行のため当該コンピュータに前記メモリページ
    の記憶容量より小さな単位でのランダムアクセスを行わ
    せることを要するプログラムを構成するプログラム構成
    データが格納されているコンピュータを、前記第1及び
    第2の記憶領域へのアクセスを行う制御手段として機能
    させるためのプログラムであって、 前記制御手段に、前記第1の記憶領域からシーケンシャ
    ルにデータを読み出させ、読み出したデータに含まれる
    前記プログラム構成データを特定させ、特定した前記プ
    ログラム構成データを前記第2の記憶領域に格納させる
    ためのプログラム。
JP2001076945A 2001-03-16 2001-03-16 記憶装置と記憶装置制御方法 Expired - Lifetime JP3574078B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2001076945A JP3574078B2 (ja) 2001-03-16 2001-03-16 記憶装置と記憶装置制御方法
PCT/JP2002/002442 WO2002075745A1 (en) 2001-03-16 2002-03-14 Storage device, storage device controlling method, and program
TW091104923A TW583687B (en) 2001-03-16 2002-03-15 Storage device, storage device controlling method, and storage medium
US10/663,078 US7007140B2 (en) 2001-03-16 2003-09-15 Storage device, storage device controlling method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001076945A JP3574078B2 (ja) 2001-03-16 2001-03-16 記憶装置と記憶装置制御方法

Publications (2)

Publication Number Publication Date
JP2002278781A true JP2002278781A (ja) 2002-09-27
JP3574078B2 JP3574078B2 (ja) 2004-10-06

Family

ID=18933787

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001076945A Expired - Lifetime JP3574078B2 (ja) 2001-03-16 2001-03-16 記憶装置と記憶装置制御方法

Country Status (4)

Country Link
US (1) US7007140B2 (ja)
JP (1) JP3574078B2 (ja)
TW (1) TW583687B (ja)
WO (1) WO2002075745A1 (ja)

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006209489A (ja) * 2005-01-28 2006-08-10 Tdk Corp メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
WO2006107095A1 (ja) * 2005-03-31 2006-10-12 Nec Corporation 計算機システム、メモリ管理方法、およびそのプログラム
KR100746036B1 (ko) 2006-02-23 2007-08-06 삼성전자주식회사 플래시 메모리를 제어하는 장치 및 방법
KR20070095136A (ko) * 2006-03-20 2007-09-28 엘지전자 주식회사 프로그램이 가능한 부팅 지원 장치 및 방법
KR100799687B1 (ko) 2006-09-19 2008-02-01 삼성전자주식회사 비휘발성 메모리를 공유하는 두 개 이상의 콘트롤러를내장한 시스템
JP2008033648A (ja) * 2006-07-28 2008-02-14 Toshiba Corp 記憶装置およびその接続方法
JP2008065434A (ja) * 2006-09-05 2008-03-21 Matsushita Electric Ind Co Ltd プログラム起動制御装置
US7373452B2 (en) 2004-02-16 2008-05-13 Samsung Electronics Co., Ltd. Controller for controlling nonvolatile memory
US7376822B2 (en) 2003-12-23 2008-05-20 Samsung Electronics Co., Ltd. Method of initializing multiple devices using job scheduler
JP2008530683A (ja) * 2005-02-11 2008-08-07 サンディスク アイエル リミテッド Nandフラッシュメモリ・システム・アーキテクチャ
WO2008117520A1 (ja) * 2007-03-28 2008-10-02 Panasonic Corporation メモリコントローラ、不揮発性メモリシステムおよびホスト装置
JP2008250992A (ja) * 2007-03-07 2008-10-16 Sanyo Electric Co Ltd 音データ処理装置
JP2009169485A (ja) * 2008-01-11 2009-07-30 Fujitsu Microelectronics Ltd 情報処理装置、半導体集積回路装置及びブート方法
JP2014089497A (ja) * 2012-10-29 2014-05-15 Mitsubishi Electric Corp 情報処理装置
JP2015056171A (ja) * 2013-09-13 2015-03-23 株式会社東芝 メモリシステムおよび情報処理装置
US10303084B2 (en) 2014-05-22 2019-05-28 Canon Kabushiki Kaisha Developing apparatus

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7210002B2 (en) * 2003-11-19 2007-04-24 Qualcomm Incorporated System and method for operating dual bank read-while-write flash
KR100608592B1 (ko) * 2004-01-27 2006-08-03 삼성전자주식회사 플래시 메모리의 데이터 관리 장치 및 방법
US20070022242A1 (en) * 2005-07-20 2007-01-25 Phison Electronics Corp. [structure of access of nand flash memory]
US8429326B2 (en) 2005-09-12 2013-04-23 Mediatek Inc. Method and system for NAND-flash identification without reading device ID table
JP2008009527A (ja) * 2006-06-27 2008-01-17 Toshiba Corp メモリシステム
JP2008134736A (ja) * 2006-11-27 2008-06-12 Fujifilm Corp 電子機器
US9141538B2 (en) 2010-07-07 2015-09-22 Marvell World Trade Ltd. Apparatus and method for generating descriptors to transfer data to and from non-volatile semiconductor memory of a storage drive
US9135168B2 (en) 2010-07-07 2015-09-15 Marvell World Trade Ltd. Apparatus and method for generating descriptors to reaccess a non-volatile semiconductor memory of a storage drive due to an error
US8868852B2 (en) 2010-07-07 2014-10-21 Marvell World Trade Ltd. Interface management control systems and methods for non-volatile semiconductor memory
TWI533316B (zh) 2013-03-18 2016-05-11 慧榮科技股份有限公司 錯誤修正方法以及記憶體裝置
CN112540882A (zh) * 2019-09-23 2021-03-23 深圳宏芯宇电子股份有限公司 闪存设备检测系统及闪存设备检测方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2251324B (en) 1990-12-31 1995-05-10 Intel Corp File structure for a non-volatile semiconductor memory
EP0613151A3 (en) * 1993-02-26 1995-03-22 Tokyo Shibaura Electric Co Semiconductor memory system with flash EEPROM.
US5960445A (en) * 1996-04-24 1999-09-28 Sony Corporation Information processor, method of updating a program and information processing system
JP3904099B2 (ja) 1996-04-24 2007-04-11 ソニー株式会社 情報処理装置、プログラム更新方法、および、情報処理システム
JP3589033B2 (ja) 1998-06-25 2004-11-17 東京エレクトロンデバイス株式会社 フラッシュメモリシステム
JP3524428B2 (ja) 1999-04-20 2004-05-10 東京エレクトロンデバイス株式会社 記憶装置、記憶システム、メモリ管理方法及び記録媒体

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7376822B2 (en) 2003-12-23 2008-05-20 Samsung Electronics Co., Ltd. Method of initializing multiple devices using job scheduler
US7373452B2 (en) 2004-02-16 2008-05-13 Samsung Electronics Co., Ltd. Controller for controlling nonvolatile memory
JP2006209489A (ja) * 2005-01-28 2006-08-10 Tdk Corp メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
JP4670370B2 (ja) * 2005-01-28 2011-04-13 Tdk株式会社 メモリコントローラ及びフラッシュメモリシステム
JP2008530683A (ja) * 2005-02-11 2008-08-07 サンディスク アイエル リミテッド Nandフラッシュメモリ・システム・アーキテクチャ
US9678862B2 (en) 2005-03-31 2017-06-13 Nec Corporation Computer system, memory management method and program thereof
US8930659B2 (en) 2005-03-31 2015-01-06 Nec Corporation Computer system, memory management method and program thereof
WO2006107095A1 (ja) * 2005-03-31 2006-10-12 Nec Corporation 計算機システム、メモリ管理方法、およびそのプログラム
KR100746036B1 (ko) 2006-02-23 2007-08-06 삼성전자주식회사 플래시 메모리를 제어하는 장치 및 방법
US7809878B2 (en) 2006-02-23 2010-10-05 Samsung Electronics Co., Ltd. Apparatus and method for controlling flash memory
KR20070095136A (ko) * 2006-03-20 2007-09-28 엘지전자 주식회사 프로그램이 가능한 부팅 지원 장치 및 방법
JP2008033648A (ja) * 2006-07-28 2008-02-14 Toshiba Corp 記憶装置およびその接続方法
US8386694B2 (en) 2006-07-28 2013-02-26 Kabushiki Kaisha Toshiba Memory device, its access method, and memory system
JP2008065434A (ja) * 2006-09-05 2008-03-21 Matsushita Electric Ind Co Ltd プログラム起動制御装置
US7890671B2 (en) 2006-09-05 2011-02-15 Panasonic Corporation Program initiation control apparatus
US7913073B2 (en) 2006-09-19 2011-03-22 Samsung Electronics Co., Ltd. System embedding plural controller sharing nonvolatile memory
KR100799687B1 (ko) 2006-09-19 2008-02-01 삼성전자주식회사 비휘발성 메모리를 공유하는 두 개 이상의 콘트롤러를내장한 시스템
JP2008250992A (ja) * 2007-03-07 2008-10-16 Sanyo Electric Co Ltd 音データ処理装置
US8694138B2 (en) 2007-03-07 2014-04-08 Semiconductor Components Industries, Llc Sound data processing appartus
JPWO2008117520A1 (ja) * 2007-03-28 2010-07-15 パナソニック株式会社 メモリコントローラ、不揮発性メモリシステムおよびホスト装置
WO2008117520A1 (ja) * 2007-03-28 2008-10-02 Panasonic Corporation メモリコントローラ、不揮発性メモリシステムおよびホスト装置
JP2009169485A (ja) * 2008-01-11 2009-07-30 Fujitsu Microelectronics Ltd 情報処理装置、半導体集積回路装置及びブート方法
JP2014089497A (ja) * 2012-10-29 2014-05-15 Mitsubishi Electric Corp 情報処理装置
JP2015056171A (ja) * 2013-09-13 2015-03-23 株式会社東芝 メモリシステムおよび情報処理装置
US10303084B2 (en) 2014-05-22 2019-05-28 Canon Kabushiki Kaisha Developing apparatus

Also Published As

Publication number Publication date
US7007140B2 (en) 2006-02-28
TW583687B (en) 2004-04-11
JP3574078B2 (ja) 2004-10-06
US20040064636A1 (en) 2004-04-01
WO2002075745A1 (en) 2002-09-26

Similar Documents

Publication Publication Date Title
JP3574078B2 (ja) 記憶装置と記憶装置制御方法
JP3792259B2 (ja) 複数のデバイスへ同時書き込み操作を行うことにより高まるフラッシュメモリデバイスにおけるメモリ性能
US5946714A (en) Semiconductor storage device utilizing address management tables and table state maps for managing data storage and retrieval
US5953737A (en) Method and apparatus for performing erase operations transparent to a solid state storage system
US8300465B2 (en) Semiconductor and flash memory systems
JP3822081B2 (ja) データ書込装置、データ書込制御方法及びプログラム
JPWO2002052416A1 (ja) フラッシュメモリシステム
JPH11126488A (ja) フラッシュメモリを複数使用した外部記憶装置のデータ記憶制御方法及び装置
JPH08137634A (ja) フラッシュディスクカード
JP2001243122A (ja) メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリへのデータの書き込み方法
US20040111583A1 (en) Apparatus and method for controlling flash memories
JP2001243110A (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリへのアクセス方法
US8677100B2 (en) Serial memory interface for extended address space
JP3122201B2 (ja) メモリカード装置
JP4460967B2 (ja) メモリカード、不揮発性半導体メモリ、及び半導体メモリの制御方法
JPH09282862A (ja) メモリカード
JPH03252993A (ja) E↑2promの情報書込み装置
JP4233213B2 (ja) メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム及びフラッシュメモリの制御方法
JP4316824B2 (ja) メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム及びフラッシュメモリの制御方法
JPH05150913A (ja) フラツシユメモリを記憶媒体としたシリコンデイスク
KR100479170B1 (ko) 메모리 억세스 제어장치 및 방법
EP1804166B1 (en) Memory device and information processing apparatus
JP2006178909A (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
JP2007310927A (ja) 不揮発性メモリ、メモリコントローラ、不揮発性記憶装置、及び不揮発性記憶システム
JPH09198201A (ja) 半導体ディスク装置およびその書換回数管理方法

Legal Events

Date Code Title Description
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: 20040608

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040630

R150 Certificate of patent or registration of utility model

Ref document number: 3574078

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080709

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090709

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090709

Year of fee payment: 5

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090709

Year of fee payment: 5

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100709

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110709

Year of fee payment: 7

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110709

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120709

Year of fee payment: 8

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130709

Year of fee payment: 9

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term