JP4966404B2 - メモリ制御装置、記憶装置、及びメモリ制御方法 - Google Patents
メモリ制御装置、記憶装置、及びメモリ制御方法 Download PDFInfo
- Publication number
- JP4966404B2 JP4966404B2 JP2010236549A JP2010236549A JP4966404B2 JP 4966404 B2 JP4966404 B2 JP 4966404B2 JP 2010236549 A JP2010236549 A JP 2010236549A JP 2010236549 A JP2010236549 A JP 2010236549A JP 4966404 B2 JP4966404 B2 JP 4966404B2
- Authority
- JP
- Japan
- Prior art keywords
- channels
- command
- write
- queue
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- 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/1642—Handling requests for interconnection or transfer for access to memory bus based on arbitration with request queuing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
図1は、第1の実施形態にかかるデータ記憶装置1の構成を示すブロック図である。データ記憶装置1は、NAND型フラッシュメモリ20(以下、フラッシュメモリと称す)を記憶媒体として使用するSSD(Solid State Drive)とする。図1に示すように、データ記憶装置1は、メモリコントローラチップ(以下、コントローラと称す)100と、複数のフラッシュメモリ20と、ブート用ROM(Read Only Memory)150と、を有する。そして、データ記憶装置1は、ホストデバイス160から入力されるコマンドに従ってデータの読み出し、書き込み等を行う。
第1の実施の形態では、図7に示すように、各チャネルにシングル・リードコマンドが逐次投入された場合、シングル・リード・キュー252_(i)(i=1〜n)の優先順位の高い状態が継続し、ユーザ・マルチ・キュー253_(i)の優先順位を高くするタイミングが遅延する。そこで、第2の実施の形態では、ユーザ・マルチ・キュー253_(i)の優先順位を高くするタイミングを異ならせた例について説明する。
Claims (7)
- 複数のチャネルで記憶媒体に対する命令処理を行うメモリ制御装置において、
前記記憶媒体に対するデータの書込命令を保持する、前記チャネル毎のキューと、
前記複数のチャネルの前記キューに前記書込命令が保持され、前記複数のチャネルを同期させた上で前記書込命令の処理が可能になるまでの間に、前記記憶媒体に対するデータの読出命令を受け付けた場合に、当該読出命令によるデータの読み出し処理を、前記書込命令より優先して行わせ、前記複数のチャネルで前記書込命令の処理が可能になった場合に、前記複数のチャネルを同期させた上で前記書込命令によるデータの書き込み処理を行わせる第1の制御手段と、
前記複数のチャネルで同期させて前記書込命令による処理を行う際、前記複数のチャネルで書き込まれる前記データに基づいて、前記複数のチャネルで書き込まれた前記データの誤りを検出および訂正するためのエラー訂正符号を生成する生成手段と、
前記エラー訂正符号を、前記記憶媒体に書き込む処理を行う第2の制御手段と、
前記複数のチャネルの各々の前記キューに前記書込命令が保持され、前記複数のチャネルを同期させた上で前記書込命令の処理が可能になると共に、任意のチャネルで前記記憶媒体に対するデータの読出命令を受け付けた場合に、前記書込命令と前記読出命令とのうちどちらを優先して処理するのかをラウンドロビンで決定する決定手段と、
を備えることを特徴とするメモリ制御装置。 - 前記決定手段は、前記ラウンドロビンによる決定として、各チャネルで前記書込命令による処理を行った時、次に行う命令として読出命令を優先するよう設定し、各チャネルで前記読出命令による処理を行った時、次に行う命令として書込命令を優先するよう設定すること、
を特徴とする請求項1に記載のメモリ制御装置。 - 前記決定手段は、さらに、前記複数のチャネルのうちの任意の1つのチャネルで前記読出命令による処理を行った時、前記複数のチャネルの全てで前記書込命令による処理が可能な場合、前記複数のチャネルに対して前記書込命令を優先するよう設定すること、
を特徴とする請求項2に記載のメモリ制御装置。 - 複数のチャネル分の前記記憶媒体と、
前記記憶媒体に対するデータの書込命令を保持する、前記チャネル毎のキューと、
前記複数のチャネルの前記キューに前記書込命令が保持され、前記複数のチャネルを同期させた上で前記書込命令の処理が可能になるまでの間に、前記記憶媒体に対するデータの読出命令を受け付けた場合に、当該読出命令によるデータの読み出し処理を、前記書込命令より優先して行わせ、前記複数のチャネルで前記書込命令の処理が可能になった場合に、前記複数のチャネルを同期させた上で前記書込命令によるデータの書き込み処理を行わせる第1の制御手段と、
前記複数のチャネルで同期させて前記書込命令による処理を行う際、前記複数のチャネルで書き込まれるデータに基づいて、前記複数のチャネルで書き込まれたデータの誤りを検出および訂正するためのエラー訂正符号を生成する生成手段と、
前記エラー訂正符号を、前記記憶媒体に書き込む処理を行う第2の制御手段と、
前記複数のチャネルの各々の前記キューに前記書込命令が保持され、前記複数のチャネルを同期させた上で前記書込命令の処理が可能になると共に、任意のチャネルで前記記憶媒体に対するデータの読出命令を受け付けた場合に、前記書込命令と前記読出命令とのうちどちらを優先して処理するのかをラウンドロビンで決定する決定手段と、
を備えることを特徴とする記憶装置。 - 前記決定手段は、前記ラウンドロビンによる決定として、各チャネルで前記書込命令による処理を行った時、次に行う命令として読出命令を優先するよう設定し、各チャネルで前記読出命令による処理を行った時、次に行う命令として書込命令を優先するよう設定すること、
を特徴とする請求項4に記載の記憶装置。 - 前記決定手段は、さらに、前記複数のチャネルのうちの任意の1つのチャネルで前記読出命令による処理を行った時、前記複数のチャネルの全てで前記書込命令による処理が可能な場合、前記複数のチャネルに対して前記書込命令を優先するよう設定すること、
を特徴とする請求項5に記載の記憶装置。 - 複数のチャネルで前記記憶媒体に対する命令処理を行うメモリ制御装置で実行されるメモリ制御方法であって、
前記複数のチャネルの各々のキューが、前記記憶媒体に対するデータの書込命令を保持する保持ステップと、
第1の制御手段が、前記複数のチャネルの前記キューに前記書込命令が保持され、前記複数のチャネルを同期させた上で前記書込命令の処理が可能になるまでの間に、前記記憶媒体に対するデータの読出命令を受け付けた場合に、当該読出命令によるデータの読み出し処理を、前記書込命令より優先して行わせ、前記複数のチャネルで前記書込命令の処理が可能になった場合に、前記複数のチャネルを同期させた上で前記書込命令によるデータの書き込み処理を行わせる制御ステップと、
生成手段が、前記複数のチャネルで同期させて前記書込命令による処理を行う際、前記複数のチャネルで書き込まれるデータに基づいて、前記複数のチャネルで書き込まれたデータの誤りを検出および訂正するためのエラー訂正符号を生成する生成ステップと、
第2の制御手段が、前記エラー訂正符号を、前記記憶媒体に書き込む処理を行う書込ステップと、
決定手段が、前記複数のチャネルの各々の前記キューに前記書込命令が保持され、前記複数のチャネルを同期させた上で前記書込命令の処理が可能になると共に、任意のチャネルで前記記憶媒体に対するデータの読出命令を受け付けた場合に、前記書込命令と前記読出命令とのうちどちらを優先して処理するのかをラウンドロビンで決定する決定ステップと、
を含むことを特徴とするメモリ制御方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010236549A JP4966404B2 (ja) | 2010-10-21 | 2010-10-21 | メモリ制御装置、記憶装置、及びメモリ制御方法 |
US13/205,193 US9304952B2 (en) | 2010-10-21 | 2011-08-08 | Memory control device, storage device, and memory control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010236549A JP4966404B2 (ja) | 2010-10-21 | 2010-10-21 | メモリ制御装置、記憶装置、及びメモリ制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012089010A JP2012089010A (ja) | 2012-05-10 |
JP4966404B2 true JP4966404B2 (ja) | 2012-07-04 |
Family
ID=45973954
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010236549A Expired - Fee Related JP4966404B2 (ja) | 2010-10-21 | 2010-10-21 | メモリ制御装置、記憶装置、及びメモリ制御方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9304952B2 (ja) |
JP (1) | JP4966404B2 (ja) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5318076B2 (ja) * | 2010-11-30 | 2013-10-16 | 株式会社東芝 | 複数のアクセスコマンドを並行して実行するメモリ装置及び同装置におけるメモリアクセス方法 |
KR20130084902A (ko) * | 2012-01-18 | 2013-07-26 | 삼성전자주식회사 | 저장 장치, 저장 시스템 및 저장 장치에 대한 입출력 제어 방법 |
KR101919903B1 (ko) | 2012-09-14 | 2018-11-19 | 삼성전자 주식회사 | 임베디드 멀티미디어 카드, 이를 제어하는 호스트, 및 이들의 동작 방법 |
US9076558B2 (en) * | 2012-11-01 | 2015-07-07 | Nanya Technology Corporation | Memory test system and memory test method |
KR102101304B1 (ko) * | 2013-03-15 | 2020-04-16 | 삼성전자주식회사 | 메모리 컨트롤러 및 메모리 컨트롤러의 동작 방법 |
US9235504B2 (en) | 2013-07-16 | 2016-01-12 | Kabushiki Kaisha Toshiba | Prioritizing read-command issuance in a data storage apparatus |
CN108173892B (zh) * | 2016-12-07 | 2020-11-13 | 腾讯科技(深圳)有限公司 | 云端镜像操作方法和装置 |
US10275352B1 (en) * | 2017-12-28 | 2019-04-30 | Advanced Micro Devices, Inc. | Supporting responses for memory types with non-uniform latencies on same channel |
JP7417455B2 (ja) * | 2020-03-27 | 2024-01-18 | キヤノン株式会社 | 電子機器及びその制御方法、プログラム |
US11765306B2 (en) * | 2021-08-05 | 2023-09-19 | Nant Holdings Ip, Llc | Distributed command execution in multi-location studio environments |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2317721B (en) | 1996-09-30 | 2001-09-12 | Nokia Mobile Phones Ltd | Memory device |
JP3440032B2 (ja) | 1999-07-15 | 2003-08-25 | パナソニック コミュニケーションズ株式会社 | メモリ制御装置,ファクシミリ装置および画像形成装置 |
JP4059473B2 (ja) * | 2001-08-09 | 2008-03-12 | 株式会社ルネサステクノロジ | メモリカード及びメモリコントローラ |
US6938133B2 (en) * | 2001-09-28 | 2005-08-30 | Hewlett-Packard Development Company, L.P. | Memory latency and bandwidth optimizations |
US7155568B2 (en) * | 2001-09-29 | 2006-12-26 | Hewlett-Packard Development Company, L.P. | Transaction generator for initialization, rebuild, and verify of memory |
US20070011396A1 (en) * | 2005-06-30 | 2007-01-11 | Utstarcom, Inc. | Method and apparatus for bandwidth efficient and bounded latency packet buffering |
US7661002B2 (en) | 2005-08-04 | 2010-02-09 | Dot Hill Systems Corporation | Storage controller super capacitor dynamic voltage throttling |
JP4932427B2 (ja) * | 2006-10-20 | 2012-05-16 | 株式会社日立製作所 | 記憶装置及び記憶方法 |
KR20110010770A (ko) * | 2008-05-13 | 2011-02-07 | 램버스 인코포레이티드 | 메모리 디바이스를 위한 단편화 프로그램 명령 |
JP5216463B2 (ja) | 2008-07-30 | 2013-06-19 | 株式会社日立製作所 | ストレージ装置、その記憶領域管理方法及びフラッシュメモリパッケージ |
JP2010108385A (ja) | 2008-10-31 | 2010-05-13 | Hitachi Ulsi Systems Co Ltd | 記憶装置 |
US8055816B2 (en) * | 2009-04-09 | 2011-11-08 | Micron Technology, Inc. | Memory controllers, memory systems, solid state drives and methods for processing a number of commands |
-
2010
- 2010-10-21 JP JP2010236549A patent/JP4966404B2/ja not_active Expired - Fee Related
-
2011
- 2011-08-08 US US13/205,193 patent/US9304952B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US9304952B2 (en) | 2016-04-05 |
US20120102262A1 (en) | 2012-04-26 |
JP2012089010A (ja) | 2012-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4966404B2 (ja) | メモリ制御装置、記憶装置、及びメモリ制御方法 | |
JP6983313B2 (ja) | 不揮発性メモリの書込みクレジットの管理 | |
JP6163532B2 (ja) | メモリシステムコントローラを含む装置 | |
US8386699B2 (en) | Method for giving program commands to flash memory for writing data according to a sequence, and controller and storage system using the same | |
US9043541B2 (en) | Storage control device, storage device, and control method for controlling storage control device | |
JP2021168203A (ja) | 不揮発性メモリの複数区画の同時アクセスのための装置及び方法 | |
TWI454906B (zh) | 資料讀取方法、快閃記憶體控制器與儲存系統 | |
US20240264760A1 (en) | Data Migration Method, Host, and Solid State Disk | |
US20110296084A1 (en) | Data storage apparatus and method of writing data | |
US10540096B2 (en) | Method and design for dynamic management of descriptors for SGL operation | |
JP5464528B2 (ja) | 同時読み出し及び書き込みメモリ動作を実行する方法及び装置 | |
US10108565B2 (en) | Method for on-demand fetching of SGL pointers based buffer, traffic and command requirements | |
KR20100116396A (ko) | 컨트롤러, 이를 포함하는 데이터 저장 장치 및 데이터 저장 시스템, 및 그 방법 | |
JP2012128815A (ja) | メモリシステム | |
TW201923573A (zh) | 記憶體控制器、系統及包括記憶體控制器的應用處理器 | |
US10896131B2 (en) | System and method for configuring a storage device based on prediction of host source | |
US10503438B1 (en) | Memory sub-system supporting non-deterministic commands | |
TWI698744B (zh) | 資料儲存裝置及邏輯至物理位址映射表之更新方法 | |
WO2021035761A1 (zh) | 一种固态硬盘混合读写的实现方法以及装置 | |
JP4922442B2 (ja) | バッファ管理装置、同装置を備えた記憶装置、及びバッファ管理方法 | |
JP2019204463A (ja) | ストレージシステム及びその制御方法 | |
KR20120110450A (ko) | 에러 정정 디코더 및 그것의 에러 정정 방법 | |
CN109542336B (zh) | 存储设备及其操作方法 | |
JP5982148B2 (ja) | 半導体記憶装置 | |
US11354063B2 (en) | Memory system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120213 |
|
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: 20120306 |
|
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: 20120330 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150406 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150406 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |