JP5137002B2 - メモリコントローラ - Google Patents
メモリコントローラ Download PDFInfo
- Publication number
- JP5137002B2 JP5137002B2 JP2007015096A JP2007015096A JP5137002B2 JP 5137002 B2 JP5137002 B2 JP 5137002B2 JP 2007015096 A JP2007015096 A JP 2007015096A JP 2007015096 A JP2007015096 A JP 2007015096A JP 5137002 B2 JP5137002 B2 JP 5137002B2
- Authority
- JP
- Japan
- Prior art keywords
- address
- read
- host system
- data
- 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.)
- 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/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- 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/12—Replacement control
- G06F12/121—Replacement control using replacement algorithms
- G06F12/122—Replacement control using replacement algorithms of the least frequently used [LFU] type, e.g. with individual count value
-
- 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/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/161—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
- G06F13/1626—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement by reordering requests
- G06F13/1631—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement by reordering requests through address comparison
-
- 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/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
- G06F2212/1024—Latency reduction
-
- 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/72—Details relating to flash memory management
- G06F2212/7203—Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
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)
- Techniques For Improving Reliability Of Storages (AREA)
Description
以下、図面を参照しつつ第1の実施の形態について説明する。図1は、第1の実施の形態に係るメモリモジュールのブロック図である。ホストシステム1とメモリモジュール2は、メモリモジュール2内部のインターフェース部31を介して接続されている。ホストシステム1は、メモリモジュール2に読み出しコマンドを出力する。また、メモリモジュール2内部のメモリ4から読み出すプログラムなどのデータを処理する。ホストシステム1としてゲーム機本体、メモリモジュール2としてゲームカートリッジなどが挙げられる。
第1の実施の形態において、ホストシステム1が前回読み出したデータを今回も読み出す際には、メモリ4にアクセスすることなく、バッファ部37にアクセスすることにより、“Read Disturb”現象を回避または低減することができる。ここで、ホストシステム1が、ページP1およびページP2を読み出しアドレスとする読み出しコマンドを、たとえば交互に出力するような場合であっても、“Read Disturb”現象を回避または低減することができる手段について、第2ないし第4の実施の形態において、それぞれ、図4ないし図6を用いて説明する。ここで、第2ないし第4の実施の形態におけるメモリモジュール2の構成と機能などは、図1で示した第1の実施の形態におけるものと同様である。
図5は、第3の実施の形態に係る初期値または現在値が示すアドレスおよび読み出しアクセス対象の時系列変化を示す図である。初期値または現在値が示すアドレスは、ホストシステム1が最近5回出力した読み出しコマンドに係る読み出しアドレスのうち、読み出し回数が多い上位2位の読み出しアドレスであり、アドレス比較部33に格納されている。ホストシステム1は、ページ単位でデータを読み出している。また、バッファ部37は、アドレス比較部33が読み出し回数が多い上位2位のアドレスを格納することに対応して、2ページ分のデータを格納することができる。
図6は、第4の実施の形態に係る初期値または現在値が示すアドレスおよび読み出しアクセス対象の時系列変化を示す図である。初期値または現在値が示すアドレスは、ある特定の初期値が示す3個のアドレスであり、ホストシステム1が次々に読み出しコマンドを出力する際にも、アドレス比較部33によって更新されないアドレスである。ホストシステム1は、ページ単位でデータを読み出している。また、バッファ部37は、アドレス比較部33が3個のアドレスを格納することに対応して、3ページ分のデータを格納することができる。
第1ないし第4の実施の形態において、ホストシステム1が繰り返し読み出すデータについて、“Read Disturb”現象を回避または低減することができる。ここで、ホストシステム1が繰り返し読み出すデータについて、実際にエラーが発生した場合にも、本発明を実施することができる。
2 メモリモジュール
3 メモリコントローラ
4 メモリ
31 インターフェース部
32 アドレスデコーダ部
33 アドレス比較部
34 データセレクタ部
35 RDY/BSYセレクタ部
36 アクセスコントローラ部
37 バッファ部
41 ビット線
42、43、44 ワード線
52 選択セル
53 非選択セル
54 選択トランジスタ
Claims (5)
- 記憶装置に対するアクセスを制御するメモリコントローラであって、
前記記憶装置が格納するデータを処理するホストシステムが出力する読み出しアドレス(第1アドレス)と、前記ホストシステムが前記第1アドレスを出力する前に出力した読み出しアドレス(第2アドレス)と、を比較するアドレス比較部と、
前記第2アドレスのデータを格納するバッファ部と、
前記第1アドレスが前記第2アドレスに含まれている場合には、前記ホストシステムに対して、前記バッファ部から前記第1アドレスのデータを出力し、前記第1アドレスが前記第2アドレスに含まれていない場合には、前記ホストシステムに対して、前記記憶装置から読み出した前記第1アドレスのデータを出力する手段と、
を備え、
前記第2アドレスは、
前記ホストシステムが前記第1アドレスを出力する直前の所定回の出力に係る読み出しアドレスのうち、読み出し回数が上位の読み出しアドレス、
を含むことを特徴とするメモリコントローラ。 - 請求項1に記載のメモリコントローラにおいて、
前記第2アドレスは、
前記ホストシステムの電源がオンにされる際に、前記ホストシステムが前記第1アドレスを出力する前に出力したものとして処理される固定アドレス、
を含むことを特徴とするメモリコントローラ。 - 請求項1に記載のメモリコントローラにおいて、
前記第2アドレスは、
前記ホストシステムの電源がオンにされる際に、前記ホストシステムが前記第1アドレスを出力する前に出力したものとして処理されるみなし読み出しアドレス、
を含み、
前記みなし読み出しアドレスは、
前記ホストシステムの電源がオンにされる直前にオフにされた際における前記第2アドレス、
を含むことを特徴とするメモリコントローラ。 - 請求項1ないし請求項3のいずれかに記載のメモリコントローラにおいて、さらに、
前記バッファ部からデータを出力する場合には、前記バッファ部と前記ホストシステム間のアクセスを設定し、前記記憶装置から読み出したデータを出力する場合には、前記記憶装置と前記ホストシステム間のアクセスを設定するデータセレクタ部、
を備えることを特徴とするメモリコントローラ。 - 請求項1ないし請求項4のいずれかに記載のメモリコントローラにおいて、さらに、
前記バッファ部からデータを出力する場合には、前記ホストシステムに対して通知する前記バッファ部の動作状態をアクセス可能状態に固定する手段と、
前記記憶装置から読み出したデータを出力する場合には、前記ホストシステムに対して、前記記憶装置の動作状態を通知する手段と、
を備えることを特徴とするメモリコントローラ。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007015096A JP5137002B2 (ja) | 2007-01-25 | 2007-01-25 | メモリコントローラ |
US11/968,427 US8375169B2 (en) | 2007-01-25 | 2008-01-02 | Memory controller |
US13/618,921 US8725952B2 (en) | 2007-01-25 | 2012-09-14 | Memory controller for suppressing read disturb when data is repeatedly read out |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007015096A JP5137002B2 (ja) | 2007-01-25 | 2007-01-25 | メモリコントローラ |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2008181399A JP2008181399A (ja) | 2008-08-07 |
JP2008181399A5 JP2008181399A5 (ja) | 2010-05-13 |
JP5137002B2 true JP5137002B2 (ja) | 2013-02-06 |
Family
ID=39669268
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007015096A Expired - Fee Related JP5137002B2 (ja) | 2007-01-25 | 2007-01-25 | メモリコントローラ |
Country Status (2)
Country | Link |
---|---|
US (2) | US8375169B2 (ja) |
JP (1) | JP5137002B2 (ja) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101050339B1 (ko) * | 2008-08-19 | 2011-07-19 | 재단법인서울대학교산학협력재단 | 플래시 메모리 장치 및 데이터 읽기 방법 |
US8826042B2 (en) | 2009-04-14 | 2014-09-02 | Megachips Corporation | Memory controller, memory control apparatus, memory device, memory information protection system, control method for memory control apparatus, and control method for memory device |
JP5564197B2 (ja) | 2009-04-23 | 2014-07-30 | 株式会社メガチップス | メモリ制御装置、半導体メモリ装置、メモリシステム及びメモリ制御方法 |
US8688893B2 (en) * | 2009-06-23 | 2014-04-01 | Intel Mobile Communications GmbH | Memory device and memory interface |
JP5764392B2 (ja) | 2011-06-13 | 2015-08-19 | 株式会社メガチップス | メモリコントローラ |
US10114750B2 (en) * | 2012-01-23 | 2018-10-30 | Qualcomm Incorporated | Preventing the displacement of high temporal locality of reference data fill buffers |
US9672887B2 (en) | 2015-09-09 | 2017-06-06 | Kabushiki Kaisha Toshiba | Semiconductor memory capable of reading data without accessing memory cell |
US20170075812A1 (en) * | 2015-09-16 | 2017-03-16 | Intel Corporation | Technologies for managing a dynamic read cache of a solid state drive |
KR20180019791A (ko) * | 2016-08-16 | 2018-02-27 | 에스케이하이닉스 주식회사 | 반도체장치 및 반도체시스템 |
CN107403643B (zh) * | 2017-07-17 | 2019-12-24 | 华中科技大学 | 一种通过重定向提高3d fg nand闪存可靠性的方法 |
GB2566729B (en) | 2017-09-22 | 2020-01-22 | Imagination Tech Ltd | Sorting memory address requests for parallel memory access |
US10579517B2 (en) | 2018-03-19 | 2020-03-03 | Dell Products, Lp | System and method for providing per channel frequency optimization in a double data rate memory system |
US11816043B2 (en) | 2018-06-25 | 2023-11-14 | Alibaba Group Holding Limited | System and method for managing resources of a storage device and quantifying the cost of I/O requests |
US11061735B2 (en) | 2019-01-02 | 2021-07-13 | Alibaba Group Holding Limited | System and method for offloading computation to storage nodes in distributed system |
US11617282B2 (en) | 2019-10-01 | 2023-03-28 | Alibaba Group Holding Limited | System and method for reshaping power budget of cabinet to facilitate improved deployment density of servers |
US11507499B2 (en) | 2020-05-19 | 2022-11-22 | Alibaba Group Holding Limited | System and method for facilitating mitigation of read/write amplification in data compression |
US11556277B2 (en) | 2020-05-19 | 2023-01-17 | Alibaba Group Holding Limited | System and method for facilitating improved performance in ordering key-value storage with input/output stack simplification |
US11487465B2 (en) | 2020-12-11 | 2022-11-01 | Alibaba Group Holding Limited | Method and system for a local storage engine collaborating with a solid state drive controller |
US11734115B2 (en) | 2020-12-28 | 2023-08-22 | Alibaba Group Holding Limited | Method and system for facilitating write latency reduction in a queue depth of one scenario |
US11726699B2 (en) | 2021-03-30 | 2023-08-15 | Alibaba Singapore Holding Private Limited | Method and system for facilitating multi-stream sequential read performance improvement with reduced read amplification |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61253564A (ja) | 1985-05-02 | 1986-11-11 | Mitsubishi Electric Corp | 記憶装置 |
JPS62130443A (ja) | 1985-12-03 | 1987-06-12 | Nec Corp | メモリアクセス制御装置 |
JPS63276648A (ja) * | 1987-05-08 | 1988-11-14 | Mitsubishi Electric Corp | デ−タ読出方式 |
JPH01100799A (ja) | 1987-10-14 | 1989-04-19 | Mitsubishi Electric Corp | 読出し専用メモリ制御回路 |
JPH01134798A (ja) | 1987-11-20 | 1989-05-26 | Nec Corp | メモリ制御装置 |
JPH0359741A (ja) | 1989-07-28 | 1991-03-14 | Mitsubishi Electric Corp | キャッシュメモリ |
JPH0594367A (ja) * | 1991-10-02 | 1993-04-16 | Shikoku Nippon Denki Software Kk | バツフア記憶装置 |
JP2654603B2 (ja) * | 1993-03-31 | 1997-09-17 | 日本電気株式会社 | バッファ記憶装置におけるブロック置き換え制御方式 |
JPH0795307A (ja) | 1993-09-21 | 1995-04-07 | Omron Corp | 自動通報装置の送信機 |
JP3130796B2 (ja) * | 1996-06-26 | 2001-01-31 | 甲府日本電気株式会社 | 制御記憶装置 |
JPH10161939A (ja) * | 1996-11-27 | 1998-06-19 | Omron Corp | メモリ制御装置 |
JP3474474B2 (ja) | 1998-12-21 | 2003-12-08 | モトローラ株式会社 | 半導体メモリ装置 |
US6715039B1 (en) * | 2001-09-12 | 2004-03-30 | Emc Corporation | Cache slot promotion in a replacement queue cache using determinations of probabilities and costs |
US20030206442A1 (en) * | 2002-05-02 | 2003-11-06 | Jerry Tang | Flash memory bridiging device, method and application system |
US6918020B2 (en) * | 2002-08-30 | 2005-07-12 | Intel Corporation | Cache management |
US6961821B2 (en) * | 2002-10-16 | 2005-11-01 | International Business Machines Corporation | Reconfigurable cache controller for nonuniform memory access computer systems |
US7117306B2 (en) * | 2002-12-19 | 2006-10-03 | Intel Corporation | Mitigating access penalty of a semiconductor nonvolatile memory |
TW200417850A (en) * | 2003-03-06 | 2004-09-16 | Macronix Int Co Ltd | Device for reading sequential memory and method thereof |
US7028156B1 (en) * | 2003-07-01 | 2006-04-11 | Veritas Operating Corporation | Use of read data tracking and caching to recover from data corruption |
KR100562906B1 (ko) * | 2003-10-08 | 2006-03-21 | 삼성전자주식회사 | 시리얼 플래시 메모리에서의 xip를 위한 우선순위기반의 플래시 메모리 제어 장치 및 이를 이용한 메모리관리 방법, 이에 따른 플래시 메모리 칩 |
KR101085406B1 (ko) * | 2004-02-16 | 2011-11-21 | 삼성전자주식회사 | 불 휘발성 메모리를 제어하기 위한 컨트롤러 |
US7177977B2 (en) | 2004-03-19 | 2007-02-13 | Sandisk Corporation | Operating non-volatile memory without read disturb limitations |
US7337277B2 (en) * | 2004-11-18 | 2008-02-26 | International Business Machines Corporation | Apparatus, system, and method for flushing cache data |
JP2006209415A (ja) * | 2005-01-27 | 2006-08-10 | Matsushita Electric Ind Co Ltd | マイクロコンピュータ |
JP2006323739A (ja) * | 2005-05-20 | 2006-11-30 | Renesas Technology Corp | メモリモジュール、メモリシステム、及び情報機器 |
US7711902B2 (en) * | 2006-04-07 | 2010-05-04 | Broadcom Corporation | Area effective cache with pseudo associative memory |
-
2007
- 2007-01-25 JP JP2007015096A patent/JP5137002B2/ja not_active Expired - Fee Related
-
2008
- 2008-01-02 US US11/968,427 patent/US8375169B2/en not_active Expired - Fee Related
-
2012
- 2012-09-14 US US13/618,921 patent/US8725952B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US8375169B2 (en) | 2013-02-12 |
JP2008181399A (ja) | 2008-08-07 |
US8725952B2 (en) | 2014-05-13 |
US20130013887A1 (en) | 2013-01-10 |
US20080183982A1 (en) | 2008-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5137002B2 (ja) | メモリコントローラ | |
US10303370B2 (en) | Flash memory system | |
JP4925301B2 (ja) | 半導体メモリシステム | |
US7663933B2 (en) | Memory controller | |
US7679965B2 (en) | Flash memory with improved programming precision | |
JP5002201B2 (ja) | メモリシステム | |
US20170103815A1 (en) | Data Storage Device and Data Maintenance Method | |
US20170285953A1 (en) | Data Storage Device and Data Maintenance Method thereof | |
JP4177360B2 (ja) | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 | |
US11409470B2 (en) | Memory system, memory controller, and method of operating memory system | |
US8275934B2 (en) | Nonvolatile memory device and cache read method using the same | |
KR100953062B1 (ko) | 불휘발성 메모리 소자의 어드레스 입력 방법 및 동작 방법 | |
JP5207434B2 (ja) | メモリシステム | |
US11237767B2 (en) | Memory system, memory controller and method for operating memory controller | |
JP4697146B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
JP2005292925A (ja) | メモリコントローラ、フラッシュメモリシステム、並びに、フラッシュメモリの制御方法 | |
US20110228605A1 (en) | Nonvolatile memory | |
US11544204B2 (en) | Memory system, memory controller and method for operating memory controller | |
JP4304167B2 (ja) | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 | |
JP2008077468A (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
JP4366283B2 (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム | |
KR20240015986A (ko) | 메모리 컨트롤러, 메모리 컨트롤러를 포함하는 메모리 시스템 및 그것의 동작 방법 | |
JP2013205944A (ja) | コントローラ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100119 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20100119 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100331 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101101 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120405 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120417 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120607 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20120710 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120919 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20120926 |
|
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: 20121016 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121106 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5137002 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: 20151122 Year of fee payment: 3 |
|
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 |
|
LAPS | Cancellation because of no payment of annual fees |