[go: up one dir, main page]

JPH10124381A - 半導体記憶装置 - Google Patents

半導体記憶装置

Info

Publication number
JPH10124381A
JPH10124381A JP27779796A JP27779796A JPH10124381A JP H10124381 A JPH10124381 A JP H10124381A JP 27779796 A JP27779796 A JP 27779796A JP 27779796 A JP27779796 A JP 27779796A JP H10124381 A JPH10124381 A JP H10124381A
Authority
JP
Japan
Prior art keywords
cluster
data
physical
management table
logical
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
JP27779796A
Other languages
English (en)
Inventor
Shigenori Miyauchi
成典 宮内
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP27779796A priority Critical patent/JPH10124381A/ja
Priority to US08/843,712 priority patent/US5946714A/en
Publication of JPH10124381A publication Critical patent/JPH10124381A/ja
Pending legal-status Critical Current

Links

Classifications

    • 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/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7201Logical to physical mapping or translation of blocks or pages
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)
  • Memory System (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【課題】 起動時の立ち上がり時間を短縮し、また起動
時の消費電力を抑さえた半導体記憶装置を提供する。 【解決手段】 接続されるホストコンピュータ12に対
してデータの入出力を行うインターフェース回路13
と、データを格納するフラッシュメモリ33と、半導体
記憶装置31の制御を行うCPU15と、CPU15か
らの命令に基づきフラッシュメモリ33を制御するフラ
ッシュメモリ制御回路21と、データを一時的に格納す
るバッファ17とを有する半導体記憶装置31におい
て、ホストコンピュータ12から送信される論理クラス
タ番号とフラッシュメモリ33内での物理クラスタ番号
とを関連づけたクラスタ管理テーブル35と、クラスタ
管理テーブル35が管理するデータのフラッシュメモリ
33内の格納位置を管理するクラスタ管理テーブル状態
マップ37とをフラッシュメモリ33内に備える。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、所定の単位毎にデ
ータの消去が可能なフラッシュメモリ等のブロック消去
型不揮発メモリを搭載した半導体記憶装置に関するもの
である。
【0002】
【従来の技術】携帯型コンピュータやデジタルスチルカ
メラ等の携帯型の情報処理機器の普及に伴い、駆動系を
持たないフラッシュメモリ(電気的に書き込みおよび消
去が可能な不揮発性メモリ)を用いた小型の半導体記憶
装置が普及しつつある。通常、フラッシュメモリを用い
た半導体記憶装置と情報処理機器(以下、「ホストコン
ピュータ」と称す。)とは512バイト単位でデータ転
送が行われる。また、半導体記憶装置に搭載されるフラ
ッシュメモリにおいては、データの消去は所定のデータ
単位である消去ブロック単位で行われる。この消去ブロ
ックの大きさは数Kバイトから数十Kバイトであり、前
述のデータ転送の単位(512バイト)に比べるとかな
り大きい値となる。
【0003】フラッシュメモリ内のデータを書き換える
時は、そのデータが含まれる消去ブロック全体を書き換
える必要がある。例えば、512バイトのデータを書き
換える場合では、その512バイトのデータが含まれる
数Kバイトから数十Kバイトの消去ブロック内のデータ
を一旦別の領域に退避させ、そのブロックを消去した
後、そのブロックに退避させたデータとともに新しいデ
ータを書き込む必要がある。このため、書き込み効率が
悪いという問題があった。また、フラッシュメモリにお
いては、消去回数に上限があるため、各ブロックの消去
回数をある程度均一にしながらデータの消去・書き込み
を行う必要があった。
【0004】このような問題を解決するために、例え
ば、特開平5−27924号公報に開示されたアドレス
変換テーブルを備えた半導体記憶装置がある。図8に、
このアドレス変換テーブルを備えた半導体記憶装置のブ
ロック図を示す。図に示すように、半導体記憶装置11
は、ホストコンピュータ12との間でデータのやりとり
を行うインターフェース回路13と、半導体記憶装置1
1全体を制御するCPU15と、ホストコンピュータ1
2から要求されたデータを処理する間、データを一時的
に格納するバッファ17と、ホストコンピュータ12か
ら送信される論理セクタアドレス(論理セクタ番号)と
フラッシュメモリ内部の物理セクタアドレス(物理セク
タ番号)とを対応づけるアドレス変換テーブルを格納す
るアドレス変換テーブルRAM19と、データを記憶す
るフラッシュメモリ23と、フラッシュメモリ23を制
御するフラッシュメモリ制御回路21とからなる。アド
レス変換テーブルRAM19はSRAM(スタティック
RAM)やDRAM(ダイナミックRAM)から構成さ
れている。
【0005】このような半導体記憶装置11において、
CPU15が半導体記憶装置11内のデータを書き換え
る場合は、書き換えるデータを含む元の消去ブロックに
ついては処理を行わず、フラッシュメモリ23内の空き
領域に元の消去ブロックのデータとともに新しいデータ
を書き込むとともに、新しい消去ブロックに対応させて
アドレス変換テーブルを書き換える。以降、CPU15
はこのアドレス変換テーブルを参照することにより、ホ
ストコンピュータ12からの論理セクタアドレスとフラ
ッシュメモリ23内の物理セクタアドレスとを対応づけ
ることができ、フラッシュメモリ23内のデータをアク
セスすることができる。
【0006】
【発明が解決しようとする課題】しかし、このようなア
ドレス変換テーブルRAM19を用いた半導体記憶装置
では、半導体記憶装置を起動時にフラッシュメモリ内の
データを全て検索することによりアドレス変換テーブル
RAM19においてアドレス変換テーブルの構築処理を
行う必要がある。このため、アドレス変換テーブルの構
築処理のための処理時間が必要となり、立ち上がりに時
間がかかるという問題がある。また、このアドレス変換
テーブル構築処理時の電力消費のため、電力供給能力の
低いホストコンピュータ12の場合、ホストコンピュー
タ12がダウンするという問題がある。さらに、アドレ
ス変換テーブルはセクタ単位で論理アドレスと物理アド
レスを対応づけているため、半導体記憶装置の容量の増
加に伴い、アドレス変換テーブルが大きくなり、アドレ
ス変換テーブルを格納するアドレス変換テーブルRAM
19の容量も大きくする必要があり、半導体記憶装置全
体のコストの増加につながる。
【0007】本発明は、上記問題を解決すべくなされた
ものであり、その目的とするところは、起動時の立ち上
がり時間を短縮し、また起動時の消費電力を抑さえた半
導体記憶装置を提供することにある。
【0008】
【課題を解決するための手段】本発明に係る第1半導体
記憶装置は、情報処理機器に接続され、フラッシュメモ
リからなりデータをセクタ単位で格納するメモリ部と、
前記メモリ部に対してデータの書き込みまたは読み出し
処理の制御を行う制御手段とを有する半導体記憶装置に
おいて、前記情報処理機器がデータを管理するためのア
ドレスである論理セクタ番号と前記メモリ部内でデータ
を管理するためのアドレスである物理セクタ番号とを関
連づけた情報を格納するアドレス管理テーブルと、前記
アドレス管理テーブル内の前記情報が格納される前記メ
モリ部内の物理的位置情報を格納するテーブル状態マッ
プとを前記メモリ部内に設ける。前記制御手段は、前記
情報処理機器からデータの読み出しまたは書き込みの要
求があったときに、前記情報処理機器からの論理セクタ
番号に基づいて、前記テーブル状態マップを参照して、
前記論理セクタ番号の関連情報が格納される物理的位置
を特定し、該特定された位置に格納される前記アドレス
管理テーブルの値に基づき、前記論理セクタ番号を前記
物理セクタ番号に変換する。
【0009】本発明に係る第2半導体記憶装置は、情報
処理機器に接続され、フラッシュメモリからなりデータ
をセクタ単位で格納するメモリ部と、前記メモリ部に対
してデータの書き込みまたは読み出し処理の制御を行う
制御手段とを有し、データを複数のセクタからなるクラ
スタ単位で管理する半導体記憶装置において、前記情報
処理機器がデータを管理するためのアドレスである論理
セクタ番号に対応した論理クラスタ番号と前記メモリ部
内でデータを管理するためのアドレスである物理セクタ
番号に対応した物理クラスタ番号とを関連づけた情報を
格納するアドレス管理テーブルと、前記アドレス管理テ
ーブル内の前記情報が格納される前記メモリ部内の物理
的位置情報を格納するテーブル状態マップとを前記メモ
リ手段内に設ける。前記制御手段は前記情報処理機器か
らデータの読み出しまたは書き込みの要求があったとき
に、前記情報処理機器からの論理セクタ番号に基づいて
論理クラスタ番号とオフセットとを計算し、前記論理ク
ラスタ番号に基づいて、前記テーブル状態マップを参照
して、前記論理クラスタ番号の関連情報が格納される物
理的位置を特定し、該特定された位置に格納される前記
アドレス管理テーブルの値に基づき、前記論理クラスタ
タ番号を前記物理クラスタ番号に変換し、該変換された
物理クラスタ番号と前記オフセットとから物理セクタ番
号を求める。
【0010】本発明に係る第3半導体記憶装置は、上記
第2半導体記憶装置において、前記アドレス管理テーブ
ルが1セクタの大きさを持つ少なくとも1つのテーブル
から構成される。また、前記テーブル状態マップが前記
アドレス管理テーブルを構成する前記テーブルを特定す
るためのテーブル番号と前記テーブルが格納される前記
メモリ部内の物理セクタ番号とを関連づけた情報を格納
する。
【0011】本発明に係る第4半導体記憶装置は、上記
半導体記憶装置において、前記セクタの大きさを前記メ
モリ部内のデータの消去または書き込み単位である消去
ブロックの大きさと等しくする。
【0012】
【発明の実施の形態】以下、添付の図面を参照して本発
明に係る半導体記憶装置の実施の形態を説明する。図1
は、本実施の形態の半導体記憶装置のブロック図を示
す。尚、図1において、図8で示される従来の半導体記
憶装置を構成する構成要素と同じものは同じ符号で示し
ている。図1に示すように半導体記憶装置31は、イン
ターフェース回路13と、CPU15と、バッファ17
と、フラッシュメモリ制御回路21と、フラッシュメモ
リ33とから構成される。フラッシュメモリ33はクラ
スタ管理テーブル35とクラスタ管理テーブル状態マッ
プ37とをさらに備える。また、半導体記憶装置31は
情報処理機器であるホストコンピュータ12と接続さ
れ、ホストコンピュータ12に対してデータの入出力を
行う。
【0013】半導体記憶装置31において、インターフ
ェース回路13は半導体記憶装置31とホストコンピュ
ータ12との間でデータの受け渡しを行う。フラッシュ
メモリ33はデータを記憶するものであり、電気的に消
去可能な不揮発メモリから構成される。CPU15は半
導体記憶装置31内部の制御を行う。フラッシュメモリ
制御回路21はCPU15からの制御に基づいて、フラ
ッシュメモリ33に対してデータの読み出しや書き込み
を行う。この際、フラッシュメモリ制御回路21はバッ
ファ17に一時的にデータを格納しながらフラッシュメ
モリ33に対するデータ処理を行う。このようにCPU
15とフラッシュメモリ制御回路21とはフラッシュメ
モリ33を制御するための制御手段をなす。
【0014】ホストコンピュータ12は半導体記憶装置
31に対してデータの読み出しまたは書き込みを行うと
きは、半導体記憶装置31に対してインターフェース回
路13を介して、読み出しまたは書き込み等の処理を要
求するデータのセクタアドレスである論理セクタ番号を
送信する。半導体記憶装置31において、CPU15は
インターフェース回路13を介して入力された論理セク
タ番号をフラッシュメモリ33内のクラスタ管理テーブ
ル35およびクラスタ管理テーブル状態マップ37を用
いてフラッシュメモリ33内のセクタアドレスである物
理セクタ番号に変換し、この物理セクタ番号で指定され
るフラッシュメモリ33内の領域に対してデータの読み
出しまたは書き込みを行う。
【0015】フラッシュメモリ33内のデータ領域は図
2の(a)に示すように複数のセクタから構成される。
本実施の形態においては、このセクタの大きさとフラッ
シュメモリ33内の書き込みまたは消去の単位である消
去ブロックの大きさとを同じにしており、これによりデ
ータの書き込みまたは消去をセクタ単位で行うことがで
きる。図3に本実施の形態における消去ブロック(セク
タ)の構成を示す。消去ブロックはデータ記憶領域41
(512バイト)と消去ブロック状態記憶領域43と予
備領域45とECC領域47とから構成される。そのサ
イズは512+αバイト(αは例えば16バイト)とす
る。データ記憶領域41にはデータが格納され、消去ブ
ロック状態記憶領域43にはその消去ブロックの消去回
数や、消去や書き込みに要した時間等の消去ブロックの
状態を示す情報が格納される。消去に要した時間はCP
U15が内部タイマで測定し、データ書き込み時に記録
する。CPU15はこれらの情報を参照して個々の消去
ブロックの特性を確認することができる。例えばCPU
15は個々の消去ブロックの消去や書き込みに要した時
間を確認し、所定時間以上の時間を要しているものに関
しては、不良と見なして、ブロックの代替等の処理を行
うことができる。予備領域45は予備のために確保され
ている領域であり通常データは書き込まれていない。E
CC領域47には消去ブロック毎にフラッシュメモリ制
御回路21においてECC領域47を除く消去ブロック
の領域に対して計算されたエラー訂正符号(ECC)が
格納されている。
【0016】また、本実施の形態の半導体記憶装置31
は図2の(b)に示すように4セクタを1クラスタと
し、クラスタ単位でデータを管理する。すなわち、ホス
トコンピュータ12から送信される論理セクタ番号およ
び、フラッシュメモリ33内の物理セクタ番号をそれぞ
れクラスタ単位で管理する。このようなクラスタ管理に
おいては、セクタの位置はクラスタを指定するクラスタ
番号とクラスタ内のオフセットとにより特定される。例
えば、セクタ番号が6のセクタである「セクタ6」はク
ラスタ番号1のクラスタである「クラスタ1」と「オフ
セット2」によりその位置が特定される。そこで、本実
施の形態では、クラスタ単位でのデータ管理を行うた
め、図1に示すようにクラスタ管理テーブル35および
クラスタ管理テーブル状態マップ37をフラッシュメモ
リ33内に設けている。以下、クラスタ管理テーブル3
5およびクラスタ管理テーブル状態マップ37について
説明する。
【0017】クラスタ管理テーブル35は、ホストコン
ピュータ12から送信される論理クラスタ番号と、それ
に対応するフラッシュメモリ33内の物理クラスタ番号
とを関連づけており、本実施の形態においてアドレス管
理テーブル手段をなしている。CPU15はホストコン
ピュータ12から送信される論理セクタ番号をこのクラ
スタ管理テーブル35を用いて最終的にフラッシュメモ
リ33内の物理セクタ番号に変換する。このようにクラ
スタ管理テーブル35により物理セクタ番号と論理セク
タ番号とが対応づけられることにより、フラッシュメモ
リ33内の不良セクタを含むクラスタの使用を回避する
ことができる。
【0018】図4はクラスタ管理テーブル35の概念を
示した図である。図4の(a)に示すように本実施の形
態においては、クラスタ管理テーブル35は「テーブル
0」〜「テーブル255」の256個のテーブルから構
成される。1つのテーブルは1セクタすなわち512バ
イトの領域を有し、256個の論理クラスタ番号に対応
した物理クラスタ番号を管理する。クラスタ管理テーブ
ル35全体としては、512バイト×256=128K
バイトの領域を有する。各テーブル間で管理する論理ク
ラスタ番号は連続しており、例えば、「テーブル0」は
論理クラスタ番号が0〜255の物理クラスタ番号を管
理し、「テーブル1」は論理クラスタ番号が256〜5
11の物理クラスタ番号を管理する。「テーブル0」〜
「テーブル255」の各テーブルは図4の(b)に示す
ように2バイトの領域に、論理クラスタ番号に対応した
物理クラスタ番号を順次格納している。したがって、ク
ラスタ管理テーブル35を構成するテーブルのテーブル
番号とテーブル内のオフセットにより論理クラスタ番号
に対応した物理クラスタ番号が特定できる。クラスタ管
理テーブル35もデータと同様、4セクタ(4テーブ
ル)を1クラスタとしてクラスタ単位で管理される。
【0019】次にクラスタ管理テーブル状態マップ37
について説明する。クラスタ管理テーブル状態マップ3
7はクラスタ管理テーブル35を構成するテーブルのフ
ラッシュメモリ33内の格納位置である物理クラスタ番
号を管理するためのものである。すなわち、クラスタ管
理テーブル35を構成する各テーブルがフラッシュメモ
リ33内のどこに存在するかを示すために用いられる。
これにより、フラッシュメモリ33内においてクラスタ
管理テーブル35を連続した領域に確保できない場合
に、クラスタ管理テーブル35を不連続な領域に割り当
てることができる。図5にクラスタ管理テーブル状態マ
ップ37の構成を示す。
【0020】図5の(b)に示すように、クラスタ管理
テーブル状態マップ37は1セクタの領域からなり、ク
ラスタ管理テーブル35を構成するテーブルのテーブル
番号とその番号のテーブルが格納されるクラスタの物理
クラスタ番号とを対応づけて管理している。すなわち、
クラスタ管理テーブル状態マップ37の512バイトの
領域において、先頭から2バイト毎にテーブルの領域を
順次割当て、該当する領域にそのテーブルを格納するク
ラスタの物理クラスタ番号を格納している。CPU15
はクラスタ管理テーブル状態マップ37を参照すること
により、クラスタ管理テーブル35を構成する各テーブ
ルが格納されているフラッシュメモリ33内の物理クラ
スタを特定できる。すなわち、クラスタ管理テーブル3
5を構成するテーブルのテーブル番号をオフセットとし
てクラスタ管理テーブル状態マップ37を検索すること
により、そのテーブルを格納するクラスタの物理クラス
タ番号を取得することができる。例えば、「テーブル
4」が格納されているクラスタのクラスタ番号は、クラ
スタ管理テーブル状態マップ37内の「オフセット4」
の位置に格納されている。
【0021】このクラスタ管理テーブル状態マップ37
はフラッシュメモリ33内の所定の領域に格納され、電
源投入時にCPU15内のRAMへロードされる。クラ
スタ管理テーブル状態マップ37は、データの読み出し
または書き込み時に必ずCPU15により参照されるた
め、このように電源投入時にCPU15内のRAMへロ
ードされることによりデータの読み出しまたは書き込み
処理を円滑に行うことができる。
【0022】前述したように、本実施の形態の半導体記
憶装置31においてCPU15はデータ処理の際にクラ
スタ管理テーブル35およびクラスタ管理テーブル状態
マップ37を用いて、ホストコンピュータ12から送信
された論理セクタ番号をフラッシュメモリ33内の物理
セクタ番号に変換する。以下に本半導体記憶装置31に
おけるデータ読み出し手順を説明する。
【0023】図6はホストコンピュータ12からデータ
読み出し要求があったときの半導体記憶装置31におけ
るデータ読み出し手順を示す。この図において、最初に
ホストコンピュータ12からCHS(Cylinder/Head/Se
ctor)形式のセクタ番号情報を取得する(S1)と、C
PU15はこのCHS形式のセクタ番号情報を論理セク
タ番号に変換する(S2)。ここで、ホストコンピュー
タ12からのアドレス情報は前述のようにCHS形式の
セクタ番号情報が送信される場合以外に、論理セクタ番
号が直接送信される場合もあり、この場合は上記ステッ
プS1、S2は不要となる。次にCPU15は、論理セ
クタ番号から論理クラスタ番号と、論理クラスタ内のオ
フセットとを計算する(S3)。この計算は次式で行わ
れる。 論理クラスタ番号=integer(論理セクタ番号/クラスタ当りのセクタ数) …(1) クラスタ内のオフセット=論理セクタ番号− 論理クラスタ番号×クラスタ当りのセクタ数 …(2) ここで、integer()は()内の数の整数部のみを取り
出す関数である。
【0024】ここで、論理セクタと物理セクタは同様に
クラスタ管理されているため、それぞれのオフセットは
等しくなるため物理クラスタ内のオフセットは式(2)
で求められる。次に、算出された論理クラスタ番号のク
ラスタがどのクラスタ管理テーブル35に属するかを求
める。すなわち、クラスタ管理テーブル35のテーブル
番号およびテーブル内のオフセットを計算する(S
4)。ここで、前述のようにクラスタ管理テーブル35
を構成する1つのテーブルは256個のクラスタを管理
するため、これらの計算は次式で行われる。 テーブル番号=integer(論理クラスタ番号/256)…(3) テーブル内のオフセット=論理クラスタ番号−テーブル番号×256…(4)
【0025】ホストコンピュータ12から送信された論
理セクタ番号に対する物理クラスタ番号は、式(3)で
求められるテーブル番号のテーブル内の式(4)で求め
られるオフセットの位置に格納されている。
【0026】上記のようにテーブル番号が算出される
と、このテーブルが格納されているフラッシュメモリ3
3内の物理クラスタを求める。すなわち、クラスタ管理
状態マップ37を用いて、このテーブルが格納されるク
ラスタの物理クラスタ番号を取得する(S5)。テーブ
ルが格納されるクラスタの物理クラスタ番号は、前述の
ようにクラスタ管理テーブル状態マップ37が2バイト
毎にクラスタ管理テーブル35の各テーブルに対応する
物理クラスタ番号を格納しているため、クラスタ管理テ
ーブル状態マップ37において、上記テーブル番号をオ
フセットとする位置に格納されているデータを読み出す
ことにより求められる。
【0027】このようにして上記テーブルが格納される
クラスタの物理クラスタ番号が算出できるが、1クラス
タは4セクタから構成されるため、さらに、該当するセ
クタを特定する必要がある。このため、上記テーブルが
格納されるクラスタ内におけるテーブルのオフセットを
次式により求める(S6)。 クラスタ内におけるテーブルのオフセット=テーブル番号− integer(テーブル番号/クラスタ当りのセクタ数)×クラスタ当りのセクタ数 …(5)
【0028】すなわち、クラスタ管理テーブル状態マッ
プ37から求められた物理クラスタ番号および式(5)
により求められたオフセットにより、上記テーブルが格
納される物理セクタが特定できる。このセクタの値をバ
ッファ17に読み出し、クラスタ管理テーブル35にお
いて、式(4)で求められたオフセットの位置に格納さ
れるデータを読み出すことにより、論理クラスタ番号に
対応する物理クラスタ番号を取得できる(S7)。
【0029】この物理クラスタ番号と式(2)で求めら
れたオフセットとから物理セクタ番号を次式により求め
る(S8)。 物理セクタ番号=物理クラスタ番号×クラスタ当りのセクタ数 +オフセット …(6)
【0030】このようにして、ホストコンピュータ12
から送信される論理セクタ番号に対応した物理セクタ番
号が特定されると、このセクタに格納されるデータが読
み出される(S9)。以上のようにして、本実施の形態
の半導体記憶装置31においては、クラスタ管理テーブ
ル35およびクラスタ管理テーブル状態マップ37を用
いて、ホストコンピュータ12により指定される論理セ
クタ番号をフラッシュメモリ33内の物理セクタ番号へ
変換することによりデータの読み出しができる。
【0031】以下に、具体的な数値を用いて図6の手順
について図7を参照して説明する。すなわち、クラスタ
当りのセクタ数を「4」、ホストコンピュータ12から
のCHS形式のセクタ情報から得られた論理セクタ番号
を「9227」とした場合のデータ読み出し手順につい
て説明する。
【0032】ホストコンピュータ12からCHS形式の
セクタ番号情報を取得し(S1)、CPUはこのCHS
形式のセクタ番号情報を論理セクタ番号に変換した結
果、論理セクタ番号「9227」を得ると(S2)、C
PUは、式(1)により論理クラスタ番号と、論理クラ
スタ内のオフセットとを計算する(S3)。 論理クラスタ番号=integer(9227/4)=230
6 クラスタ内のオフセット=9227−2306×4=3
【0033】これにより、物理クラスタ内のオフセット
が「3」であることがわかる。次に、論理クラスタ番号
が「2306」のクラスタがどのクラスタ管理テーブル
35内のどのテーブルに属するかを求める。すなわち、
クラスタ管理テーブル35内のテーブルのテーブル番号
およびテーブル内のオフセットを計算する(S4)。 テーブル番号=integer(2306/256)=9 テーブル内のオフセット=2306−9×256=2
【0034】これにより、論理クラスタ番号が「230
6」のクラスタの物理クラスタ番号は、「テーブル9」
中の「オフセット2」の位置に格納されていることがわ
かる。
【0035】次に、「テーブル9」を格納するクラスタ
の物理クラスタ番号をクラスタ管理テーブル状態マップ
37を用いて求める。すなわち、「テーブル9」の値は
クラスタ管理テーブル状態マップ37内の「オフセット
9」にあり、図7の(a)に示すように「03」とな
る。この「03」は「クラスタ3」を示し、したがっ
て、「テーブル9」は「クラスタ3」に格納されている
ことを示している。さらに、「クラスタ3」内のセクタ
を特定するため、式(5)を用いて「テーブル9」が格
納されるクラスタ内の「テーブル9」のオフセットを求
める(S6)。 クラスタ内のテーブル9のオフセット=9−integer
(9/4)×4=1
【0036】したがって、図7の(b)に示すように
「テーブル9」の値は、「クラスタ3」の「オフセット
1」に存在する物理セクタに格納されていることがわか
る。このセクタの値をバッファ17に読み出し、テーブ
ル内のオフセットである「オフセット2」に格納される
データを読み出すことにより、物理クラスタ番号が特定
される(S7)。図7の(c)に示すようにこの物理ク
ラスタ番号は「01」となる。この物理クラスタ番号と
オフセットとから物理セクタ番号を求める(S8)。 物理セクタ番号=1×4+3=7 このようにして、フラッシュメモリ33内の物理セクタ
番号として「7」が特定され、図7(b)に示すよう
に、フラッシュメモリ33内の「セクタ7」に格納され
るデータが読み出される(S9)。
【0037】以上、本半導体記憶装置31におけるデー
タの読み出し手順について説明したが、データの書き込
み時の場合も同様にして行うことができる。すなわち、
ホストコンピュータから送信される論理セクタ番号から
上記手順にしたがいクラスタ管理テーブル35およびク
ラスタ管理テーブル状態マップ37を用いて物理セクタ
番号に変換する。物理セクタ番号が特定されると、その
セクタに対して消去コマンドを実行することにより、そ
のセクタのデータを消去し、その後、そのセクタに対し
てホストコンピュータ12から送信されたデータを書き
込む。
【0038】以上のようにして、本実施の形態の半導体
記憶装置において、クラスタ管理テーブル35およびク
ラスタ管理テーブル状態マップ37を用いて、ホストコ
ンピュータ12により指定される論理セクタ番号をフラ
ッシュメモリ33内の物理セクタ番号へ変換することに
よりセクタを特定することができ、データの読み出しま
たは書き込みができる。
【0039】尚、上記説明においては、4セクタを1ク
ラスタとしてクラスタ管理を行ったが、例えば、容量が
32メガバイトより小さい時はクラスタ当りのセクタ数
を1に(このときはセクタ管理になる。)、容量が32
メガバイト以上64メガバイトより小さい時はクラスタ
当りのセクタ数を2に、容量が64メガバイト以上12
8メガバイトより小さい時はクラスタ当りのセクタ数を
4に、容量が128メガバイト以上256メガバイトよ
り小さい時はクラスタ当りのセクタ数を8にというよう
に、半導体記憶装置の容量の大きさに応じて変化させて
もよい。このようにクラスタ当りのセクタ数を変化させ
ることにより、記憶容量の大容量化に伴い管理すべきセ
クタ数が増加しても、クラスタサイズを大きくすること
でクラスタ管理テーブル等に使用されるデータ領域の大
きさを増加させることなくデータを管理することができ
る。
【0040】以上のようにして、本実施の形態の半導体
記憶装置31においては、消去ブロックサイズが小さい
フラッシュメモリ33において、消去ブロックとセクタ
の大きさを同じにし、所定数のセクタを1クラスタとし
てクラスタ単位で管理するために、クラスタ管理テーブ
ル35およびクラスタ管理テーブル35内に格納される
情報の位置情報を管理するクラスタ管理テーブル状態マ
ップ37をフラッシュメモリ33内に設け、これらを用
いてホストコンピュータ12からの論理セクタ番号をフ
ラッシュメモリ33内の物理セクタ番号に変換すること
により、従来フラッシュメモリ33とは別にRAMで構
成されていたアドレス変換テーブルを必要としなくな
り、ハード構成が簡単になる。また、起動時におけるア
ドレス変換テーブル構築のための処理時間がなくなり、
またそれに伴う消費電流も減少する。
【0041】
【発明の効果】本発明に係る第1半導体記憶装置によれ
ば、情報処理機器から送信される論理セクタ番号とメモ
リ手段内の物理セクタタ番号とを関連づけた情報を有す
るアドレス管理テーブルと、アドレス管理テーブルにお
ける前記情報が格納されるメモリ部内の物理的位置情報
を格納するテーブル状態マップとをメモリ部内に設けた
ことにより、メモリ部内において、論理セクタ番号から
物理セクタ番号への変換が可能となるため、メモリ部の
外部に別途アドレス変換用のテーブルを格納するメモリ
部を設ける必要がない。また、メモリ部内にアドレス管
理テーブルを設けているため、半導体記憶装置の起動時
においてアドレス変換用のテーブルの構築処理を要せ
ず、起動時の立ち上げ時間が短縮され、同時に起動時の
消費電力も低減できる。
【0042】本発明に係る第2半導体記憶装置によれ
ば、データが複数のセクタからなるクラスタ単位で管理
され、論理クラスタ番号と物理クラスタ番号とを関連づ
けたアドレス管理テーブルと、アドレス管理テーブルが
格納する情報の位置情報を管理するテーブル状態マップ
とをメモリ部内に設けたことにより、第1半導体記憶装
置と同様の効果が得られるとともに、第1半導体記憶装
置と比較して前記アドレス管理テーブルの容量が少なく
なり、またクラスタ当たりのセクタ数を変えることによ
り、前記メモリ部の容量が増加しても前記セクタ管理テ
ーブルの容量を大きくすることなく対応できる。
【0043】本発明に係る第3半導体記憶装置におい
て、前記アドレス管理テーブルが1セクタの大きさの少
なくとも1つのテーブルから構成され、前記テーブル状
態マップにより、前記アドレス管理テーブルを構成する
前記テーブルのテーブル番号と前記テーブルが格納され
る前記メモリ部内の物理セクタ番号とが関連づけられる
ことにより、前記メモリ部内の不連続なデータ領域にお
いても前記アドレス管理テーブルを設けることができ
る。
【0044】本発明に係る第4半導体記憶装置におい
て、前記セクタの大きさを前記メモリの消去単位である
消去ブロックの大きさと等しくすることにより、セクタ
単位でのデータの消去や書き込みが可能となる。
【図面の簡単な説明】
【図1】 本発明に係る半導体記憶装置の実施形態のブ
ロック図。
【図2】 クラスタ管理を説明した図
【図3】 消去ブロックの構成図。
【図4】 クラスタ管理テーブルを説明した図。
【図5】 クラスタ管理テーブル状態マップを説明した
図。
【図6】 本実施形態の半導体記憶装置のデータ読み出
し手順を示すフローチャート。
【図7】 本実施形態の半導体記憶装置におけるクラス
タ管理状態マップ、クラスタ管理テーブルおよびフラッ
シュメモリ空間の格納値の具体例を示す図。
【図8】 従来の半導体記憶装置のブロック図。
【符号の説明】
11 半導体記憶装置(従来技術)、12 ホストコン
ピュータ、13 インターフェース回路、15 CP
U、17 バッファ、19 アドレス変換テーブルRA
M、21 フラッシュメモリ制御回路、23 フラッシ
ュメモリ(従来技術)、31 半導体記憶装置(本発
明)、33 フラッシュメモリ(本発明)、35 クラ
スタ管理テーブル、37 クラスタ管理テーブル状態マ
ップ、41データ記憶領域、43 消去ブロック領域、
45 予備領域、47 ECC領域。
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成8年11月7日
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】0003
【補正方法】変更
【補正内容】
【0003】フラッシュメモリ内のデータを書き換える
時は、そのデータが含まれる消去ブロック全体を書き換
える必要がある。例えば、512バイトのデータを書き
換える場合では、その512バイトのデータが含まれる
数Kバイトから数十Kバイトの消去ブロック内のデータ
を一旦別の領域に退避させ、そのブロックを消去した
後、そのブロックに退避させたデータとともに新しいデ
ータを書き込む必要がある。このため、書き込み効率が
悪いという問題があった。また、フラッシュメモリにお
いては、消去回数に上限があるため、特定の消去ブロッ
クに書き込みが集中した際、短期間で消去回数の限界値
を超えてしまい使用不可能になるという問題があった。

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 情報処理機器に接続され、フラッシュメ
    モリからなりデータをセクタ単位で格納するメモリ部
    と、前記メモリ部に対してデータの書き込みまたは読み
    出し処理の制御を行う制御手段とを有する半導体記憶装
    置において、 前記情報処理機器がデータを管理するためのアドレスで
    ある論理セクタ番号と前記メモリ部内でデータを管理す
    るためのアドレスである物理セクタ番号とを関連づけた
    情報を格納するアドレス管理テーブルと、 前記アドレス管理テーブル内の前記情報が格納される前
    記メモリ部内の物理的位置情報を格納するテーブル状態
    マップとを前記メモリ部内に設け、 前記制御手段は、前記情報処理機器からデータの読み出
    しまたは書き込みの要求があったときに、前記情報処理
    機器からの論理セクタ番号に基づいて、前記テーブル状
    態マップを参照して、前記論理セクタ番号の関連情報が
    格納される物理的位置を特定し、該特定された位置に格
    納される前記アドレス管理テーブルの値に基づき、前記
    論理セクタ番号を前記物理セクタ番号に変換することを
    特徴とする半導体記憶装置。
  2. 【請求項2】 情報処理機器に接続され、フラッシュメ
    モリからなりデータをセクタ単位で格納するメモリ部
    と、前記メモリ部に対してデータの書き込みまたは読み
    出し処理の制御を行う制御手段とを有し、データを複数
    のセクタからなるクラスタ単位で管理する半導体記憶装
    置において、 前記情報処理機器がデータを管理するためのアドレスで
    ある論理セクタ番号に対応した論理クラスタ番号と前記
    メモリ手段内でデータを管理するためのアドレスである
    物理セクタ番号に対応した物理クラスタ番号とを関連づ
    けた情報を格納するアドレス管理テーブルと、 前記アドレス管理テーブル内の前記情報が格納される前
    記メモリ部内の物理的位置情報を格納するテーブル状態
    マップとを前記メモリ部内に設け、 前記制御手段は、前記情報処理機器からデータの読み出
    しまたは書き込みの要求があったときに、前記情報処理
    機器からの論理セクタ番号に基づいて論理クラスタ番号
    とオフセットとを計算し、前記論理クラスタ番号に基づ
    いて、前記テーブル状態マップを参照して、前記論理ク
    ラスタ番号の関連情報が格納される物理的位置を特定
    し、該特定された位置に格納される前記アドレス管理テ
    ーブルの値に基づき、前記論理クラスタタ番号を前記物
    理クラスタ番号に変換し、該変換された物理クラスタ番
    号と前記オフセットとから物理セクタ番号を求めること
    を特徴とする半導体記憶装置。
  3. 【請求項3】 請求項1または請求項2に記載の半導体
    記憶装置において、前記アドレス管理テーブルは1セク
    タの大きさを持つ少なくとも1つのテーブルから構成さ
    れ、前記テーブル状態マップは前記アドレス管理テーブ
    ルを構成する前記テーブルを特定するためのテーブル番
    号と前記テーブルが格納される前記メモリ部内の物理セ
    クタ番号とを関連づけた情報を格納することを特徴とす
    る半導体記憶装置。
  4. 【請求項4】 請求項1または請求項2に記載の半導体
    記憶装置において、前記セクタの大きさは前記フラッシ
    ュメモリ内のデータの消去または書き込み単位である消
    去ブロックの大きさと等しいことを特徴とする半導体記
    憶装置。
JP27779796A 1996-10-21 1996-10-21 半導体記憶装置 Pending JPH10124381A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP27779796A JPH10124381A (ja) 1996-10-21 1996-10-21 半導体記憶装置
US08/843,712 US5946714A (en) 1996-10-21 1997-04-16 Semiconductor storage device utilizing address management tables and table state maps for managing data storage and retrieval

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP27779796A JPH10124381A (ja) 1996-10-21 1996-10-21 半導体記憶装置

Publications (1)

Publication Number Publication Date
JPH10124381A true JPH10124381A (ja) 1998-05-15

Family

ID=17588424

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27779796A Pending JPH10124381A (ja) 1996-10-21 1996-10-21 半導体記憶装置

Country Status (2)

Country Link
US (1) US5946714A (ja)
JP (1) JPH10124381A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6639843B2 (en) 2001-08-31 2003-10-28 Mitsubishi Denki Kabushiki Kaisha Semiconductor memory device with block-unit erase type nonvolatile memory
JP2008047155A (ja) * 2007-10-26 2008-02-28 Renesas Technology Corp 一括消去型不揮発性メモリおよび携帯電話
JP2008507756A (ja) * 2004-07-21 2008-03-13 サンディスク コーポレイション 最適化されたシーケンシャルなクラスタの管理のためのfat分析
US7479992B2 (en) 2003-01-07 2009-01-20 Sanyo Electric Co., Ltd. Image recording apparatus
JP2011510427A (ja) * 2008-01-17 2011-03-31 モーセッド・テクノロジーズ・インコーポレイテッド 不揮発性半導体記憶装置

Families Citing this family (92)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1185609A (ja) * 1997-09-09 1999-03-30 Mitsubishi Electric Corp 半導体記憶装置及びそのデータ管理方法
US6182162B1 (en) * 1998-03-02 2001-01-30 Lexar Media, Inc. Externally coupled compact flash memory card that configures itself one of a plurality of appropriate operating protocol modes of a host computer
WO1999045460A2 (en) 1998-03-02 1999-09-10 Lexar Media, Inc. Flash memory card with enhanced operating mode detection and user-friendly interfacing system
US6460111B1 (en) * 1998-03-09 2002-10-01 Mitsubishi Denki Kabushiki Kaisha Semiconductor disk drive and method of creating an address conversion table based on address information about defective sectors stored in at least one sector indicated by a management code
JP2000067574A (ja) * 1998-08-21 2000-03-03 Mitsubishi Electric Corp 半導体記憶装置
US6488352B1 (en) * 1998-09-03 2002-12-03 Hewlett-Packard Company Method and apparatus for checking compatibility of a replaceable printing component
TW527604B (en) * 1998-10-05 2003-04-11 Toshiba Corp A memory systems
US6901457B1 (en) 1998-11-04 2005-05-31 Sandisk Corporation Multiple mode communications system
US6427186B1 (en) * 1999-03-30 2002-07-30 Frank (Fong-Long) Lin Memory, interface system and method for mapping logical block numbers to physical sector numbers in a flash memory, using a master index table and a table of physical sector numbers
US7243185B2 (en) * 2004-04-05 2007-07-10 Super Talent Electronics, Inc. Flash memory system with a high-speed flash controller
US7576990B2 (en) * 2000-01-06 2009-08-18 Super Talent Electronics, Inc. Thin hard drive with 2-piece-casing and ground pin standoff to reduce ESD damage to stacked PCBA's
US7649742B2 (en) * 2000-01-06 2010-01-19 Super Talent Electronics, Inc. Thin flash-hard-drive with two-piece casing
KR100577380B1 (ko) * 1999-09-29 2006-05-09 삼성전자주식회사 플래시 메모리와 그 제어 방법
JP3249959B2 (ja) * 1999-10-12 2002-01-28 株式会社ソニー・コンピュータエンタテインメント 可搬型記憶装置及びメモリカード
US20080195798A1 (en) * 2000-01-06 2008-08-14 Super Talent Electronics, Inc. Non-Volatile Memory Based Computer Systems and Methods Thereof
US6426893B1 (en) 2000-02-17 2002-07-30 Sandisk Corporation Flash eeprom system with simultaneous multiple data sector programming and storage of physical block characteristics in other designated blocks
US6662263B1 (en) 2000-03-03 2003-12-09 Multi Level Memory Technology Sectorless flash memory architecture
US6721843B1 (en) 2000-07-07 2004-04-13 Lexar Media, Inc. Flash memory architecture implementing simultaneously programmable multiple flash memory banks that are host compatible
US7155559B1 (en) 2000-08-25 2006-12-26 Lexar Media, Inc. Flash memory architecture with separate storage of overhead and user data
US6772274B1 (en) * 2000-09-13 2004-08-03 Lexar Media, Inc. Flash memory system and method implementing LBA to PBA correlation within flash memory array
JP4534336B2 (ja) * 2000-10-13 2010-09-01 ソニー株式会社 メモリ装置におけるデータ管理方法
US6684289B1 (en) 2000-11-22 2004-01-27 Sandisk Corporation Techniques for operating non-volatile memory systems with data sectors having different sizes than the sizes of the pages and/or blocks of the memory
FR2818770A1 (fr) * 2000-12-21 2002-06-28 Bull Cp8 Procede de gestion optimisee de l'allocation de memoire d'un systeme embarque et systeme embarque correspondant
JP4017177B2 (ja) * 2001-02-28 2007-12-05 スパンション エルエルシー メモリ装置
TW539946B (en) * 2001-08-07 2003-07-01 Solid State System Company Ltd Window-based flash memory storage system, and the management method and the access method thereof
US6823417B2 (en) * 2001-10-01 2004-11-23 Hewlett-Packard Development Company, L.P. Memory controller for memory card manages file allocation table
US6711663B2 (en) * 2001-11-15 2004-03-23 Key Technology Corporation Algorithm of flash memory capable of quickly building table and preventing improper operation and control system thereof
US6704852B2 (en) * 2001-11-16 2004-03-09 Key Technology Corporation Control device applicable to flash memory card and method for building partial lookup table
TWI240861B (en) * 2002-01-11 2005-10-01 Integrated Circuit Solution In Data access method and architecture of flash memory
US6839826B2 (en) * 2002-02-06 2005-01-04 Sandisk Corporation Memory device with pointer structure to map logical to physical addresses
JP2005202893A (ja) * 2004-01-19 2005-07-28 Hitachi Ltd 記憶デバイス制御装置、ストレージシステム、プログラムを記録した記録媒体、情報処理装置、及びストレージシステムの制御方法
CN100392757C (zh) * 2004-05-17 2008-06-04 万国电脑股份有限公司 硅储存媒体及其控制器、控制方法
JP4653747B2 (ja) * 2004-07-23 2011-03-16 スパンション エルエルシー コントローラ、データ記憶システム、データ書き換え方法及びコンピュータプログラムプロダクト
US7240242B2 (en) * 2004-08-05 2007-07-03 International Business Machines Corporation Apparatus and method to convert data payloads from a first sector format to a second sector format
US7231545B2 (en) * 2004-08-05 2007-06-12 International Business Machines Corporation Apparatus and method to convert data from a first sector format to a second sector format
US7231546B2 (en) * 2004-08-05 2007-06-12 International Business Machines Corporation Apparatus and method to overlay (N) first sectors onto (M) second sectors using a data queue
US7219259B2 (en) * 2004-08-05 2007-05-15 International Business Machines Corporation Apparatus and method to preserve data integrity during a power loss
US20110029723A1 (en) * 2004-08-06 2011-02-03 Super Talent Electronics, Inc. Non-Volatile Memory Based Computer Systems
JP3942612B2 (ja) * 2004-09-10 2007-07-11 東京エレクトロンデバイス株式会社 記憶装置、メモリ管理方法及びプログラム
KR100706242B1 (ko) * 2005-02-07 2007-04-11 삼성전자주식회사 메모리 시스템 및 그것의 런 단위 어드레스 매핑 테이블 구성 방법
US7509474B2 (en) 2005-06-08 2009-03-24 Micron Technology, Inc. Robust index storage for non-volatile memory
US7911834B2 (en) * 2006-05-15 2011-03-22 Apple Inc. Analog interface for a flash memory die
US7639542B2 (en) * 2006-05-15 2009-12-29 Apple Inc. Maintenance operations for multi-level data storage cells
US7701797B2 (en) * 2006-05-15 2010-04-20 Apple Inc. Two levels of voltage regulation supplied for logic and data programming voltage of a memory device
US7511646B2 (en) * 2006-05-15 2009-03-31 Apple Inc. Use of 8-bit or higher A/D for NAND cell value
US7639531B2 (en) * 2006-05-15 2009-12-29 Apple Inc. Dynamic cell bit resolution
US7551486B2 (en) 2006-05-15 2009-06-23 Apple Inc. Iterative memory cell charging based on reference cell value
US8000134B2 (en) 2006-05-15 2011-08-16 Apple Inc. Off-die charge pump that supplies multiple flash devices
US7852690B2 (en) * 2006-05-15 2010-12-14 Apple Inc. Multi-chip package for a flash memory
US7613043B2 (en) * 2006-05-15 2009-11-03 Apple Inc. Shifting reference values to account for voltage sag
US7568135B2 (en) * 2006-05-15 2009-07-28 Apple Inc. Use of alternative value in cell detection
US8086791B2 (en) * 2006-08-08 2011-12-27 Dataram, Inc. Solid state memory device with PCI controller
KR100877609B1 (ko) * 2007-01-29 2009-01-09 삼성전자주식회사 버퍼 메모리의 플래그 셀 어레이를 이용하여 데이터 오류 정정을 수행하는 반도체 메모리 시스템 및 그 구동 방법
US7934052B2 (en) * 2007-12-27 2011-04-26 Pliant Technology, Inc. System and method for performing host initiated mass storage commands using a hierarchy of data structures
US8209463B2 (en) * 2008-02-05 2012-06-26 Spansion Llc Expansion slots for flash memory based random access memory subsystem
US8332572B2 (en) * 2008-02-05 2012-12-11 Spansion Llc Wear leveling mechanism using a DRAM buffer
US8275945B2 (en) * 2008-02-05 2012-09-25 Spansion Llc Mitigation of flash memory latency and bandwidth limitations via a write activity log and buffer
US8352671B2 (en) * 2008-02-05 2013-01-08 Spansion Llc Partial allocate paging mechanism using a controller and a buffer
US9104327B2 (en) 2011-05-17 2015-08-11 Sandisk Technologies Inc. Fast translation indicator to reduce secondary address table checks in a memory device
US9699263B1 (en) 2012-08-17 2017-07-04 Sandisk Technologies Llc. Automatic read and write acceleration of data accessed by virtual machines
US9501398B2 (en) 2012-12-26 2016-11-22 Sandisk Technologies Llc Persistent storage device with NVRAM for staging writes
US9612948B2 (en) 2012-12-27 2017-04-04 Sandisk Technologies Llc Reads and writes between a contiguous data block and noncontiguous sets of logical address blocks in a persistent storage device
US9454420B1 (en) 2012-12-31 2016-09-27 Sandisk Technologies Llc Method and system of reading threshold voltage equalization
US9870830B1 (en) 2013-03-14 2018-01-16 Sandisk Technologies Llc Optimal multilevel sensing for reading data from a storage medium
US9367246B2 (en) 2013-03-15 2016-06-14 Sandisk Technologies Inc. Performance optimization of data transfer for soft information generation
US9524235B1 (en) 2013-07-25 2016-12-20 Sandisk Technologies Llc Local hash value generation in non-volatile data storage systems
US9639463B1 (en) 2013-08-26 2017-05-02 Sandisk Technologies Llc Heuristic aware garbage collection scheme in storage systems
US9361221B1 (en) 2013-08-26 2016-06-07 Sandisk Technologies Inc. Write amplification reduction through reliable writes during garbage collection
US9442662B2 (en) 2013-10-18 2016-09-13 Sandisk Technologies Llc Device and method for managing die groups
US9436831B2 (en) 2013-10-30 2016-09-06 Sandisk Technologies Llc Secure erase in a memory device
US9703816B2 (en) 2013-11-19 2017-07-11 Sandisk Technologies Llc Method and system for forward reference logging in a persistent datastore
US9520197B2 (en) 2013-11-22 2016-12-13 Sandisk Technologies Llc Adaptive erase of a storage device
US9520162B2 (en) 2013-11-27 2016-12-13 Sandisk Technologies Llc DIMM device controller supervisor
US9582058B2 (en) 2013-11-29 2017-02-28 Sandisk Technologies Llc Power inrush management of storage devices
US9703636B2 (en) 2014-03-01 2017-07-11 Sandisk Technologies Llc Firmware reversion trigger and control
US9454448B2 (en) 2014-03-19 2016-09-27 Sandisk Technologies Llc Fault testing in storage devices
US9448876B2 (en) 2014-03-19 2016-09-20 Sandisk Technologies Llc Fault detection and prediction in storage devices
US9390021B2 (en) 2014-03-31 2016-07-12 Sandisk Technologies Llc Efficient cache utilization in a tiered data structure
US9626400B2 (en) 2014-03-31 2017-04-18 Sandisk Technologies Llc Compaction of information in tiered data structure
US9626399B2 (en) 2014-03-31 2017-04-18 Sandisk Technologies Llc Conditional updates for reducing frequency of data modification operations
US9697267B2 (en) 2014-04-03 2017-07-04 Sandisk Technologies Llc Methods and systems for performing efficient snapshots in tiered data structures
US10146448B2 (en) 2014-05-30 2018-12-04 Sandisk Technologies Llc Using history of I/O sequences to trigger cached read ahead in a non-volatile storage device
US10114557B2 (en) 2014-05-30 2018-10-30 Sandisk Technologies Llc Identification of hot regions to enhance performance and endurance of a non-volatile storage device
US9703491B2 (en) 2014-05-30 2017-07-11 Sandisk Technologies Llc Using history of unaligned writes to cache data and avoid read-modify-writes in a non-volatile storage device
US10372613B2 (en) 2014-05-30 2019-08-06 Sandisk Technologies Llc Using sub-region I/O history to cache repeatedly accessed sub-regions in a non-volatile storage device
US10656842B2 (en) 2014-05-30 2020-05-19 Sandisk Technologies Llc Using history of I/O sizes and I/O sequences to trigger coalesced writes in a non-volatile storage device
US10162748B2 (en) 2014-05-30 2018-12-25 Sandisk Technologies Llc Prioritizing garbage collection and block allocation based on I/O history for logical address regions
US10656840B2 (en) 2014-05-30 2020-05-19 Sandisk Technologies Llc Real-time I/O pattern recognition to enhance performance and endurance of a storage device
US9652381B2 (en) 2014-06-19 2017-05-16 Sandisk Technologies Llc Sub-block garbage collection
US9443601B2 (en) 2014-09-08 2016-09-13 Sandisk Technologies Llc Holdup capacitor energy harvesting
KR102344834B1 (ko) * 2014-09-24 2021-12-29 삼성전자주식회사 솔리드 스테이트 드라이브 및 이를 포함하는 컴퓨팅 시스템
TWI647566B (zh) * 2018-01-19 2019-01-11 慧榮科技股份有限公司 資料儲存裝置與資料處理方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05282880A (ja) * 1992-01-10 1993-10-29 Toshiba Corp 半導体ディスク装置
JPH06124596A (ja) * 1991-11-28 1994-05-06 Hitachi Ltd フラッシュメモリを使用した記憶装置
JPH07302176A (ja) * 1994-05-09 1995-11-14 Toshiba Corp 半導体ディスク装置
JPH08137634A (ja) * 1994-11-09 1996-05-31 Mitsubishi Electric Corp フラッシュディスクカード

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2582487B2 (ja) * 1991-07-12 1997-02-19 インターナショナル・ビジネス・マシーンズ・コーポレイション 半導体メモリを用いた外部記憶システム及びその制御方法
JPH05233426A (ja) * 1992-02-20 1993-09-10 Fujitsu Ltd フラッシュ・メモリ使用方法
EP0613151A3 (en) * 1993-02-26 1995-03-22 Tokyo Shibaura Electric Co Semiconductor memory system with flash EEPROM.
US5404485A (en) * 1993-03-08 1995-04-04 M-Systems Flash Disk Pioneers Ltd. Flash file system
JP3078946B2 (ja) * 1993-03-11 2000-08-21 インターナショナル・ビジネス・マシーンズ・コーポレ−ション 一括消去型不揮発性メモリの管理方法及び半導体ディスク装置
JPH08212019A (ja) * 1995-01-31 1996-08-20 Mitsubishi Electric Corp 半導体ディスク装置
JP3706167B2 (ja) * 1995-02-16 2005-10-12 株式会社ルネサステクノロジ 半導体ディスク装置
JPH08328762A (ja) * 1995-06-06 1996-12-13 Mitsubishi Electric Corp 半導体ディスク装置及びそのメモリ管理方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06124596A (ja) * 1991-11-28 1994-05-06 Hitachi Ltd フラッシュメモリを使用した記憶装置
JPH05282880A (ja) * 1992-01-10 1993-10-29 Toshiba Corp 半導体ディスク装置
JPH07302176A (ja) * 1994-05-09 1995-11-14 Toshiba Corp 半導体ディスク装置
JPH08137634A (ja) * 1994-11-09 1996-05-31 Mitsubishi Electric Corp フラッシュディスクカード

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6639843B2 (en) 2001-08-31 2003-10-28 Mitsubishi Denki Kabushiki Kaisha Semiconductor memory device with block-unit erase type nonvolatile memory
US7479992B2 (en) 2003-01-07 2009-01-20 Sanyo Electric Co., Ltd. Image recording apparatus
JP2008507756A (ja) * 2004-07-21 2008-03-13 サンディスク コーポレイション 最適化されたシーケンシャルなクラスタの管理のためのfat分析
JP4931810B2 (ja) * 2004-07-21 2012-05-16 サンディスク コーポレイション 最適化されたシーケンシャルなクラスタの管理のためのfat分析
JP2008047155A (ja) * 2007-10-26 2008-02-28 Renesas Technology Corp 一括消去型不揮発性メモリおよび携帯電話
JP2011510427A (ja) * 2008-01-17 2011-03-31 モーセッド・テクノロジーズ・インコーポレイテッド 不揮発性半導体記憶装置
US8533405B2 (en) 2008-01-17 2013-09-10 Mosaid Technologies Incorporated Nonvolatile semiconductor memory device

Also Published As

Publication number Publication date
US5946714A (en) 1999-08-31

Similar Documents

Publication Publication Date Title
JPH10124381A (ja) 半導体記憶装置
US6925012B2 (en) Storage device employing a flash memory
US5966720A (en) Flash memory accessed using only the logical address
US6130837A (en) Storage device employing a flash memory
US8386698B2 (en) Data accessing method for flash memory and storage system and controller using the same
US20050021904A1 (en) Mass memory device based on a flash memory with multiple buffers
JPH08137634A (ja) フラッシュディスクカード
JPWO2002052416A1 (ja) フラッシュメモリシステム
JP3421581B2 (ja) 不揮発性半導体メモリを用いた記憶装置
JP2003076605A (ja) ブロック消去型不揮発メモリを搭載した半導体記憶装置とそのデータの書込み・読出し方法
JP2012058770A (ja) メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法
JP2021068129A (ja) メモリコントローラ及びフラッシュメモリシステム
JP4218406B2 (ja) 情報記録再生方法
JP2003122630A (ja) メモリコントローラ、メモリコントローラを備えるフラッシュメモリシステム及びフラッシュメモリの制御方法
JPH10312693A (ja) 記憶装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050207

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050215

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050418

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050621