JP4768504B2 - 不揮発性フラッシュメモリを用いる記憶装置 - Google Patents
不揮発性フラッシュメモリを用いる記憶装置 Download PDFInfo
- Publication number
- JP4768504B2 JP4768504B2 JP2006126855A JP2006126855A JP4768504B2 JP 4768504 B2 JP4768504 B2 JP 4768504B2 JP 2006126855 A JP2006126855 A JP 2006126855A JP 2006126855 A JP2006126855 A JP 2006126855A JP 4768504 B2 JP4768504 B2 JP 4768504B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- flash memory
- sdram
- write
- interface
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1689—Synchronisation and timing concerns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/21—Employing a record carrier using a specific recording technology
- G06F2212/217—Hybrid disk, e.g. using both magnetic and solid state storage devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/22—Employing cache memory using specific memory technology
- G06F2212/225—Hybrid cache memory, e.g. having both volatile and non-volatile portions
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Description
前記状態判定部は、書き込みデータのデータサイズ(SZ)より前記空き容量が小さいが、前記キャッシュメモリが読み出し中であるときは前記キャッシュメモリに前記書き込みデータサイズ(SZ)の空き容量ができるまで待ち、かつ前記フラッシュメモリに前記書き込みデータを書き込む時間(T1)と、前記書き込みデータを前記キャッシュメモリに書き込む時間(T2)と、前記空き容量が生じるまでの待ち時間(t1)と、の関係が(T1)>(T2+t1)のとき前記キャッシュメモリへのデータ書き込みを指示するように構成されていることを特徴とする。
まず図1において、実施形態の全体ブロックの例を説明する。100は、ホスト装置であり、例えば、パーソナルコンピュータに於けるコントロール部である。200は、不揮発性キャッシュメモリを用いる記憶装置である。この記憶装置200は、バッファとして機能するSDRAM(キャッシュメモリと称してもよい)201、後述するコントローラなどが搭載された例えば1チップのLSI(大規模集積化回路)202、フラッシュメモリ203、ハードディスク(HD)204を有する。
(1)ディスクインターフェース314→コントローラ311→SDRAMインターフェース313→SDRAM201→SDRAMインターフェース313→コントローラ311→ホストインターフェース312→ホスト装置の系路。
(5)ディスク→SDRAM→フラッシュメモリ→SDRAM→ホスト装置の系路がある。
図2は、フラッシュメモリ203を取り扱う上で特有の制御が行われることを説明する図である。フラッシュメモリ203は、不揮発性メモリでありながら、データの電気的消去が可能である。したがって、データの書き換えが可能な不揮発性メモリである。
図2に示すように、フラッシュメモリ203にデータが書き込まれた場合、その書き込み領域を、Pinned(ピンド)領域203Aと、UnPinned(アンピンド)領域203Bという名称で分類することができる。Pinned領域203Aは、ホスト装置100が送ってきたデータ書き込み先のコマンドが、あえてフラッシュメモリ203を指定した場合に形成された領域である。コマンドは、フラッシュメモリ203とその論理ブロックアドレス(LBA)を含む。UnPinned(アンピンド)領域203Bは、ホスト装置100によるデータ書き込み先がコマンドにより指定されていない場合で、かつ、コントローラ311が独自に判断して、データを転送し、格納した領域である。
装置の電源が投入された直後であり、HD204のハードディスクが所定回転数に達していない場合、あるいは、HD204が停止状態にある場合である。このときは、フラッシュメモリ315又はSDRAM201に書き込む方が便利である。また、早くデータ転送を行ないたい場合には、ホスト装置100から一旦フラッシュメモリ315に書き込みを行い、その後、時間的に余裕があるときにHD204に書き写す(ライトバックと称する)と便利である。
この場合は、HD204のデータを読出し、フラッシュメモリ315に保存しておくと便利である。フラッシュメモリ315に利用データを保存しておくほうが、高速でアクセスできるからである。
図3には、コントローラ311、フラッシュメモリインターフェース315の構成を機能別に分類して示している。フラッシュメモリインターフェース315には、累積カウンタが設けられていてもよい。累積カウンタのカウント数は、例えばインターフェース内に設けられたレジスタに書き込まれ、後にフラッシュメモリ203に書き込まれる、あるいは直接フラッシュメモリ203が利用されてもよい。
上記の記憶装置では、ホスト装置100からライトコマンドを伴うデータが送られてきたとき、データを書き込むための論理ブロックアドレス(LBA)が指定されていない場合、いずれの媒体に書き込むかは、コントローラ311の判断(ソフトウエア)に委ねられている。
(1)SDRAM201のアドレスは、アドレス管理部420により、書き込みデータサイズ単位、読出しデータサイズ単位で管理されている。したがって、ライトコマンドがきたときに、アドレス管理部420がSDRAM201の空き容量があることを示し、かつ書き込みデータサイズよりも大きい空き容量があることを示しているときは、メディア選択部415は、SDRAM201をデータ書き込み先として選択する。書き込みデータサイズは、ライトコマンドとともに転送されてくる。
(2−1)フラッシュメモリのクロック周波数と、書き込みデータサイズSZが分かれば、フラッシュメモリ203へ当該データを書き込む時間(T1)が分かる、
(2−2)SDRAMのクロック周波数と、書き込みデータサイズSZが分かれば、SDRAM202へ当該データを書き込む時間(T2)が分かる、
(2−3)SDRAM202にデータサイズSZ分の空き容量を作る時間(t1)は、現在のSDRAM空き容量をsz1として、(SZ−sz1)分のデータを読み出す時間に相当する。空き容量sz1は常にアドレス管理部420で把握されている。
(3−1)SDRAM201において、書き込みアドレスと、読出しアドレスが十分離れており、SDRAM201の空き領域が書き込みデータサイズに近いような場合である。或いは、書き込みデータサイズが小さい場合である。このような場合は、SDRAM201の読出し書き込みが時分割で行なわれたとしても、書き込みアドレスが読出しアドレスに追いつくまでにデータ書き込みが完了することもある。このときの書き込み先の決定も、(2−1)〜(2−7)で説明したように、予め計算されたSZ,sz1の組のテーブルを参照して行なわれる。
Claims (1)
- ホストインターフェースと、
キャッシュメモリへのキャッシュメモリインターフェースと、
ハードディスクへのハードディスクインターフェースと、
フラッシュメモリへのフラッシュメモリインターフェースと、
前記ホストインターフェースから入力されたコマンドの内容を解析するコマンド解析部と、
前記コマンド解析部で解析されたコマンドが、ライトコマンドであったとき、書き込みデータサイズと、前記キャッシュメモリの空き容量の関係に基づいて、前記キャッシュメモリとフラッシュメモリのいずれにデータを書き込む方が速いかを判定する状態判定部と、
状態判定部の判定結果に応じてデータ書き込み先を決定するメディア選択部を有し、
前記状態判定部は、
書き込みデータのデータサイズ(SZ)より前記空き容量が小さいが、前記キャッシュメモリが読み出し中であるときは前記キャッシュメモリに前記書き込みデータサイズ(SZ)の空き容量ができるまで待ち、かつ
前記フラッシュメモリに前記書き込みデータを書き込む時間(T1)と、前記書き込みデータを前記キャッシュメモリに書き込む時間(T2)と、前記空き容量が生じるまでの待ち時間(t1)と、の関係が(T1)>(T2+t1)のとき前記キャッシュメモリへのデータ書き込みを指示するように構成されていることを特徴とする不揮発性フラッシュメモリを用いる記憶装置。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006126855A JP4768504B2 (ja) | 2006-04-28 | 2006-04-28 | 不揮発性フラッシュメモリを用いる記憶装置 |
US11/783,828 US7631142B2 (en) | 2006-04-28 | 2007-04-12 | Method and apparatus for selectively storing data into cache or nonvolatile memory |
CNA2007100964153A CN101063929A (zh) | 2006-04-28 | 2007-04-13 | 使用非易失性闪存的存储装置及其控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006126855A JP4768504B2 (ja) | 2006-04-28 | 2006-04-28 | 不揮発性フラッシュメモリを用いる記憶装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007299216A JP2007299216A (ja) | 2007-11-15 |
JP4768504B2 true JP4768504B2 (ja) | 2011-09-07 |
Family
ID=38649658
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006126855A Expired - Fee Related JP4768504B2 (ja) | 2006-04-28 | 2006-04-28 | 不揮発性フラッシュメモリを用いる記憶装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7631142B2 (ja) |
JP (1) | JP4768504B2 (ja) |
CN (1) | CN101063929A (ja) |
Families Citing this family (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8904098B2 (en) | 2007-06-01 | 2014-12-02 | Netlist, Inc. | Redundant backup using non-volatile memory |
US8874831B2 (en) | 2007-06-01 | 2014-10-28 | Netlist, Inc. | Flash-DRAM hybrid memory module |
US8301833B1 (en) | 2007-06-01 | 2012-10-30 | Netlist, Inc. | Non-volatile memory module |
JP2010512559A (ja) * | 2008-02-29 | 2010-04-22 | 株式会社東芝 | 情報処理装置及び不揮発性半導体メモリドライブ |
JP4729062B2 (ja) * | 2008-03-07 | 2011-07-20 | 株式会社東芝 | メモリシステム |
US20100030963A1 (en) * | 2008-08-04 | 2010-02-04 | Sandisk Il Ltd. | Managing storage of cached content |
CN101751225B (zh) * | 2008-12-04 | 2011-12-14 | 上海华虹Nec电子有限公司 | 一种混合硬盘的数据存取方法 |
JP5221332B2 (ja) * | 2008-12-27 | 2013-06-26 | 株式会社東芝 | メモリシステム |
WO2010150283A2 (en) * | 2009-06-23 | 2010-12-29 | Indra Networks Pvt. Ltd. | Disk storage performance using digital memory and data compression |
US9785561B2 (en) | 2010-02-17 | 2017-10-10 | International Business Machines Corporation | Integrating a flash cache into large storage systems |
US8977804B1 (en) | 2011-11-21 | 2015-03-10 | Western Digital Technologies, Inc. | Varying data redundancy in storage systems |
US9268701B1 (en) | 2011-11-21 | 2016-02-23 | Western Digital Technologies, Inc. | Caching of data in data storage systems by managing the size of read and write cache based on a measurement of cache reliability |
US8977803B2 (en) | 2011-11-21 | 2015-03-10 | Western Digital Technologies, Inc. | Disk drive data caching using a multi-tiered memory |
US8904091B1 (en) | 2011-12-22 | 2014-12-02 | Western Digital Technologies, Inc. | High performance media transport manager architecture for data storage systems |
JP2013142947A (ja) * | 2012-01-10 | 2013-07-22 | Sony Corp | 記憶制御装置、記憶装置および記憶制御装置の制御方法 |
US10318171B1 (en) * | 2012-06-29 | 2019-06-11 | EMC IP Holding Company LLC | Accessing fast memory in a data storage array |
JP6465806B2 (ja) * | 2012-11-20 | 2019-02-06 | アイ. ペドル,チャールズ | ソリッドステートドライブアーキテクチャ |
US11037625B2 (en) * | 2012-11-20 | 2021-06-15 | Thstyme Bermuda Limited | Solid state drive architectures |
CN103984653B (zh) * | 2013-02-08 | 2017-08-18 | 群联电子股份有限公司 | 控制方法、存储器控制器与数据传输系统 |
US9436600B2 (en) | 2013-06-11 | 2016-09-06 | Svic No. 28 New Technology Business Investment L.L.P. | Non-volatile memory storage for multi-channel memory system |
US9857995B1 (en) * | 2015-03-09 | 2018-01-02 | Western Digital Technologies, Inc. | Data storage device and method providing non-volatile memory buffer for real-time primary non-volatile memory protection |
JP6877134B2 (ja) * | 2016-12-15 | 2021-05-26 | 株式会社東芝 | 電子装置、通信装置及びプログラム |
CN108572790B (zh) * | 2017-04-20 | 2021-11-26 | 深圳市得一微电子有限责任公司 | 一种固态硬盘写入指令排序方法、固态硬盘 |
CN108228478A (zh) * | 2018-01-05 | 2018-06-29 | 湖南国科微电子股份有限公司 | 一种ssd写性能的提高方法及装置 |
CN112463018B (zh) * | 2019-09-06 | 2022-11-08 | 群联电子股份有限公司 | 指令传送方法、存储器控制电路单元及存储器存储装置 |
CN114840149B (zh) * | 2022-07-06 | 2022-09-23 | 江苏华存电子科技有限公司 | 一种超级闪存的时序稳定分析方法及系统 |
Family Cites Families (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4574346A (en) | 1982-09-29 | 1986-03-04 | International Business Machines Corporation | Method and apparatus for peripheral data handling hierarchies |
US4638425A (en) | 1982-09-29 | 1987-01-20 | International Business Machines Corporation | Peripheral data storage having access controls with error recovery |
JPH0776896B2 (ja) * | 1987-09-14 | 1995-08-16 | 株式会社日立製作所 | 集積回路 |
JPH0816886B2 (ja) | 1990-12-21 | 1996-02-21 | 富士通株式会社 | 高速書き込み方法 |
JP3407317B2 (ja) | 1991-11-28 | 2003-05-19 | 株式会社日立製作所 | フラッシュメモリを使用した記憶装置 |
JPH07121444A (ja) | 1993-10-21 | 1995-05-12 | Fuji Xerox Co Ltd | 補助記憶装置 |
JPH08171515A (ja) | 1994-12-19 | 1996-07-02 | Nec Corp | ディスクキャッシュにおけるメモリ管理方式 |
US5956268A (en) * | 1997-02-12 | 1999-09-21 | Hyundai Electronics America | Nonvolatile memory structure |
JP3456443B2 (ja) * | 1999-04-21 | 2003-10-14 | 日本電気株式会社 | 並列ソート装置及び該装置のプログラムを記録した記録媒体 |
US6418510B1 (en) | 2000-09-14 | 2002-07-09 | International Business Machines Corporation | Cooperative cache and rotational positioning optimization (RPO) scheme for a direct access storage device (DASD) |
TWI289798B (en) | 2002-07-18 | 2007-11-11 | Carry Computer Eng Co Ltd | Large storage apparatus with interface adapting to storage cards |
JP4081814B2 (ja) * | 2003-01-27 | 2008-04-30 | 富士フイルム株式会社 | 電子カメラ |
US20040193782A1 (en) * | 2003-03-26 | 2004-09-30 | David Bordui | Nonvolatile intelligent flash cache memory |
US20050050261A1 (en) | 2003-08-27 | 2005-03-03 | Thomas Roehr | High density flash memory with high speed cache data interface |
JP2005108304A (ja) * | 2003-09-29 | 2005-04-21 | Toshiba Corp | 半導体記憶装置及びその制御方法 |
JP2006108742A (ja) * | 2004-09-30 | 2006-04-20 | Toshiba Corp | 画像撮像装置 |
US7472222B2 (en) | 2004-10-12 | 2008-12-30 | Hitachi Global Storage Technologies Netherlands B.V. | HDD having both DRAM and flash memory |
US7568068B2 (en) * | 2006-11-13 | 2009-07-28 | Hitachi Global Storage Technologies Netherlands B. V. | Disk drive with cache having volatile and nonvolatile memory |
-
2006
- 2006-04-28 JP JP2006126855A patent/JP4768504B2/ja not_active Expired - Fee Related
-
2007
- 2007-04-12 US US11/783,828 patent/US7631142B2/en active Active
- 2007-04-13 CN CNA2007100964153A patent/CN101063929A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
JP2007299216A (ja) | 2007-11-15 |
US7631142B2 (en) | 2009-12-08 |
CN101063929A (zh) | 2007-10-31 |
US20070255898A1 (en) | 2007-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4768504B2 (ja) | 不揮発性フラッシュメモリを用いる記憶装置 | |
JP4836647B2 (ja) | 不揮発性キャッシュメモリを用いる記憶装置とその制御方法 | |
JP2007193440A (ja) | 不揮発性キャッシュメモリを用いる記憶装置とその制御方法 | |
JP5612514B2 (ja) | 不揮発性メモリコントローラ及び不揮発性記憶装置 | |
US8606987B2 (en) | Data writing method for flash memory and controller using the same | |
US8055873B2 (en) | Data writing method for flash memory, and controller and system using the same | |
US20070168607A1 (en) | Storage device using nonvolatile cache memory and control method thereof | |
US20100011154A1 (en) | Data accessing method for flash memory and storage system and controller using the same | |
US9195579B2 (en) | Page replacement method and memory system using the same | |
US20080025706A1 (en) | Information recording apparatus and control method thereof | |
US20080046660A1 (en) | Information recording apparatus and control method thereof | |
JP5073402B2 (ja) | メモリーコントローラ、及びこれを用いた不揮発性記憶装置並びに不揮発性記憶システム | |
US20070168605A1 (en) | Information storage device and its control method | |
US20070168602A1 (en) | Information storage device and its control method | |
US7913029B2 (en) | Information recording apparatus and control method thereof | |
US20070168603A1 (en) | Information recording apparatus and control method thereof | |
US7941601B2 (en) | Storage device using nonvolatile cache memory and control method thereof | |
JP2008250718A (ja) | 不揮発性キャッシュメモリを用いた記憶装置とその制御方法 | |
JP2017068634A (ja) | 記憶装置及び方法 | |
JP2007193866A (ja) | 情報記録装置及びその制御方法 | |
JPWO2007105688A1 (ja) | メモリコントローラ、不揮発性記憶装置、及び不揮発性記憶システム | |
JP2010237907A (ja) | ストレージ装置および記録方法 | |
JP2012521032A (ja) | Ssdコントローラおよびssdコントローラの動作方法 | |
US20070250661A1 (en) | Data recording apparatus and method of controlling the same | |
WO2015083225A1 (ja) | 情報処理装置、ストレージ、及びアクセス制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20081001 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110208 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110406 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110524 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110616 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140624 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |