JP2018101301A5 - - Google Patents

Download PDF

Info

Publication number
JP2018101301A5
JP2018101301A5 JP2016247049A JP2016247049A JP2018101301A5 JP 2018101301 A5 JP2018101301 A5 JP 2018101301A5 JP 2016247049 A JP2016247049 A JP 2016247049A JP 2016247049 A JP2016247049 A JP 2016247049A JP 2018101301 A5 JP2018101301 A5 JP 2018101301A5
Authority
JP
Japan
Prior art keywords
request
queue
queues
information processing
command
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
JP2016247049A
Other languages
English (en)
Other versions
JP6677627B2 (ja
JP2018101301A (ja
Filing date
Publication date
Application filed filed Critical
Priority claimed from JP2016247049A external-priority patent/JP6677627B2/ja
Priority to JP2016247049A priority Critical patent/JP6677627B2/ja
Priority to TW106136823A priority patent/TWI662418B/zh
Priority to US16/346,717 priority patent/US11281572B2/en
Priority to PCT/JP2017/044777 priority patent/WO2018116937A1/ja
Priority to EP17883337.2A priority patent/EP3561678B1/en
Priority to CN201780077153.8A priority patent/CN110073337B/zh
Priority to KR1020197016557A priority patent/KR102246840B1/ko
Publication of JP2018101301A publication Critical patent/JP2018101301A/ja
Publication of JP2018101301A5 publication Critical patent/JP2018101301A5/ja
Publication of JP6677627B2 publication Critical patent/JP6677627B2/ja
Application granted granted Critical
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Claims (17)

  1. ホストプロセッサからメモリへのアクセス要求を受け付けるコマンド受付部と、
    前記アクセス要求が分類して格納された複数のキューのいずれかから前記アクセス要求を読み出し、実行するコマンド処理部と、
    を含むメモリコントローラを備え、
    前記コマンド処理部は、前記複数のキューを分類してなるグループ内で、前記キューごとに設定された規則に応じたタイミングで、前記複数のキューのうち要求読み出し先のキューを次へ切り替えるとともに、前記グループごとに設定された処理の制限に基づくタイミングで、前記要求読み出し先のキューを次のグループへ切り替えることを特徴とする情報処理装置。
  2. 前記複数のキューは、アクセスの内容および優先度によって分類された前記アクセス要求をそれぞれ格納するとともに、当該アクセスの内容によって前記グループに分けられ、
    前記コマンド処理部は、前記グループごとに独立して設定された処理上限数または制限時間に到達した時点で、前記要求読み出し先のキューを次のグループへ切り替えることを特徴とする請求項1に記載の情報処理装置。
  3. 前記コマンド処理部は、前記優先度によって設定された規則に応じたタイミングで、読み出し先のキューを前記グループ内で切り替えることを特徴とする請求項に記載の情報処理装置。
  4. 前記メモリコントローラは、前記メモリの管理に必要な処理の要求を発行する管理コマンド生成部をさらに備え、
    前記複数のキューはさらに、前記管理コマンド生成部が発行した管理用処理の要求を格納するキューを含み、
    前記コマンド処理部は、前記キューから、前記管理用処理の要求を読み出してさらに実行することを特徴とする請求項1から3のいずれかに記載の情報処理装置。
  5. 前記コマンド処理部は、前記管理用処理の要求を格納するキューを読み出し先としている際、設定された制限時間を経過したタイミングで、要求読み出し先を次のキューへ切り替えることを特徴とする請求項に記載の情報処理装置。
  6. 前記コマンド処理部は、前記管理用処理の要求を格納するキューを読み出し先としている際、別のキューに所定の優先度を有するアクセス要求が格納されたタイミングで、要求読み出し先を当該別のキューへ切り替えることを特徴とする請求項またはに記載の情報処理装置。
  7. 前記コマンド処理部は、前記ホストプロセッサが通知したタイミングで、前記管理用処理の要求を格納するキューを要求読み出し先とすることを特徴とする請求項からのいずれかに記載の情報処理装置。
  8. 前記コマンド処理部は、前記管理用処理のうち読み出し処理の要求を読み出す期間と、書き込み処理の要求を読み出す期間を分離することを特徴とする請求項からのいずれかに記載の情報処理装置。
  9. 前記管理用処理は、あるブロックに格納されたデータを別のブロックに待避させたうえで元のブロックのデータを消去する処理を含むことを特徴とする請求項からのいずれかに記載の情報処理装置。
  10. 前記管理用処理は、1メモリセル当たり1ビットを記録するSLC(Single Level Cell)領域に書き込まれたデータを、1メモリセル当たり3ビットを記録するTLC(Triple Level Cell)領域にコピーする処理を含むことを特徴とする請求項からのいずれかに記載の情報処理装置。
  11. 前記メモリコントローラは、前記キューに格納済みの前記管理用処理の要求量および、前記管理用処理の要求が発行されるタイミングの予測結果の少なくともいずれかに基づき、前記キューごとに設定された規則および前記グループごとに設定された処理の制限の少なくともいずれかを変更するコマンド調整部をさらに備えたことを特徴とする請求項から10のいずれかに記載の情報処理装置。
  12. 前記メモリコントローラは、前記キューに格納済みの前記管理用処理の要求量および、前記管理用処理の要求が発行されるタイミングの予測結果の少なくともいずれかに基づき、前記ホストプロセッサへアクセス要求の発行制御を依頼するコマンド調整部をさらに備えたことを特徴とする請求項から10のいずれかに記載の情報処理装置。
  13. 前記コマンド処理部は、所定の基準以上の優先度を有する読み出し要求をまとめて格納するキューから、当該読み出し要求を順次読み出し、実行することを特徴とする請求項1から12のいずれかに記載の情報処理装置。
  14. 前記ホストプロセッサからのアクセス要求の対象となるデータを格納するNAND型フラッシュメモリをさらに備えたことを特徴とする請求項1から13のいずれかに記載の情報処理装置。
  15. 情報処理を実施し、前記メモリコントローラに前記メモリへのアクセス要求を発行するホストプロセッサをさらに備えたことを特徴とする請求項1から14のいずれかに記載の情報処理装置。
  16. ホストプロセッサからメモリへのアクセス要求を受け付けるステップと、
    前記アクセス要求を分類して格納する複数のキューのいずれかから前記アクセス要求を読み出すステップと、
    読み出したアクセス要求を実行するステップと、
    を含み、
    前記読み出すステップは、前記複数のキューを分類してなるグループ内で、前記キューごとに設定された規則に応じたタイミングで、前記複数のキューのうち要求読み出し先のキューを次へ切り替えるとともに、前記グループごとに設定された処理の制限に基づくタイミングで、前記要求読み出し先のキューを次のグループへ切り替えることを特徴とするメモリコントローラによるメモリアクセス方法。
  17. ホストプロセッサからメモリへのアクセス要求を受け付ける機能と、
    前記アクセス要求が分類して格納された複数のキューのいずれかから前記アクセス要求を読み出し、実行する機能と、
    をメモリコントローラに実現させるコンピュータプログラムであって、
    前記実行する機能は、前記複数のキューを分類してなるグループ内で、前記キューごとに設定された規則に応じたタイミングで、前記複数のキューのうち要求読み出し先のキューを次へ切り替えるとともに前記グループごとに設定された処理の制限に基づくタイミングで、前記要求読み出し先のキューを次のグループへ切り替えることを特徴とするコンピュータプログラム。
JP2016247049A 2016-12-20 2016-12-20 情報処理装置およびメモリアクセス方法 Active JP6677627B2 (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP2016247049A JP6677627B2 (ja) 2016-12-20 2016-12-20 情報処理装置およびメモリアクセス方法
TW106136823A TWI662418B (zh) 2016-12-20 2017-10-26 Information processing device and memory access method
EP17883337.2A EP3561678B1 (en) 2016-12-20 2017-12-13 Information processing device and memory access method
PCT/JP2017/044777 WO2018116937A1 (ja) 2016-12-20 2017-12-13 情報処理装置およびメモリアクセス方法
US16/346,717 US11281572B2 (en) 2016-12-20 2017-12-13 Information processing apparatus and memory access method
CN201780077153.8A CN110073337B (zh) 2016-12-20 2017-12-13 信息处理装置和存储器访问方法
KR1020197016557A KR102246840B1 (ko) 2016-12-20 2017-12-13 정보 처리 장치, 메모리 액세스 방법 및 컴퓨터 프로그램

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016247049A JP6677627B2 (ja) 2016-12-20 2016-12-20 情報処理装置およびメモリアクセス方法

Publications (3)

Publication Number Publication Date
JP2018101301A JP2018101301A (ja) 2018-06-28
JP2018101301A5 true JP2018101301A5 (ja) 2019-02-21
JP6677627B2 JP6677627B2 (ja) 2020-04-08

Family

ID=62626406

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016247049A Active JP6677627B2 (ja) 2016-12-20 2016-12-20 情報処理装置およびメモリアクセス方法

Country Status (7)

Country Link
US (1) US11281572B2 (ja)
EP (1) EP3561678B1 (ja)
JP (1) JP6677627B2 (ja)
KR (1) KR102246840B1 (ja)
CN (1) CN110073337B (ja)
TW (1) TWI662418B (ja)
WO (1) WO2018116937A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11061822B2 (en) * 2018-08-27 2021-07-13 Qualcomm Incorporated Method, apparatus, and system for reducing pipeline stalls due to address translation misses
CN111124254B (zh) * 2018-10-30 2023-09-29 伊姆西Ip控股有限责任公司 调度存储空间回收请求的方法、电子设备和程序产品
KR20210001414A (ko) * 2019-06-28 2021-01-06 에스케이하이닉스 주식회사 메모리 시스템, 메모리 컨트롤러 및 그 저장 방법
CN110362275B (zh) * 2019-07-10 2021-09-07 深圳大普微电子科技有限公司 提升固态硬盘服务质量的方法及固态硬盘
US11029874B2 (en) * 2019-07-30 2021-06-08 Western Digital Technologies, Inc. Rolling XOR protection in efficient pipeline
JP2021086583A (ja) * 2019-11-29 2021-06-03 キヤノン株式会社 情報処理装置、制御装置および制御装置の制御方法
US20220004337A1 (en) * 2020-07-06 2022-01-06 Micron Technology, Inc. Command prioritization in a command queue
CN114168495A (zh) * 2020-09-10 2022-03-11 西部数据技术公司 存储设备的增强的预读能力

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6570876B1 (en) * 1998-04-01 2003-05-27 Hitachi, Ltd. Packet switch and switching method for switching variable length packets
JP2000285082A (ja) * 1999-03-31 2000-10-13 Toshiba Corp 中央演算装置及びコンパイル方法
JP4327081B2 (ja) * 2004-12-28 2009-09-09 京セラミタ株式会社 メモリアクセス制御回路
US20060184718A1 (en) * 2005-02-16 2006-08-17 Sinclair Alan W Direct file data programming and deletion in flash memories
JP4419868B2 (ja) 2005-02-25 2010-02-24 ソニー株式会社 情報処理装置および方法、メモリ制御装置および方法、記録媒体、並びにプログラム
JP4142068B2 (ja) * 2006-06-16 2008-08-27 株式会社ソニー・コンピュータエンタテインメント 情報処理装置およびアクセス制御方法
US8208406B1 (en) * 2008-03-25 2012-06-26 Juniper Networks, Inc. Packet forwarding using feedback controlled weighted queues dynamically adjusted based on processor utilization
JP5147584B2 (ja) * 2008-07-23 2013-02-20 株式会社日立製作所 ストレージサブシステム及びコントローラによるコマンド実行方法
JP2010176646A (ja) * 2009-02-02 2010-08-12 Toshiba Information Systems (Japan) Corp メモリシステムおよびメモリシステムのインターリーブ制御方法
CN101498994B (zh) * 2009-02-16 2011-04-20 华中科技大学 一种固态硬盘控制器
US8688894B2 (en) * 2009-09-03 2014-04-01 Pioneer Chip Technology Ltd. Page based management of flash storage
US8595411B2 (en) * 2009-12-30 2013-11-26 Sandisk Technologies Inc. Method and controller for performing a sequence of commands
US8838853B2 (en) * 2010-01-18 2014-09-16 Marvell International Ltd. Access buffer
US8468318B2 (en) 2010-09-15 2013-06-18 Pure Storage Inc. Scheduling of I/O writes in a storage environment
US8271692B1 (en) * 2010-10-01 2012-09-18 Western Digital Technologies, Inc. Throttled command completion time
US20120246385A1 (en) * 2011-03-22 2012-09-27 American Megatrends, Inc. Emulating spi or 12c prom/eprom/eeprom using flash memory of microcontroller
US8700834B2 (en) * 2011-09-06 2014-04-15 Western Digital Technologies, Inc. Systems and methods for an enhanced controller architecture in data storage systems
JP2013200692A (ja) * 2012-03-23 2013-10-03 Toshiba Corp メモリシステム
US8996782B2 (en) * 2012-03-23 2015-03-31 Kabushiki Kaisha Toshiba Memory system and bank interleaving method
US9058208B2 (en) 2012-11-12 2015-06-16 Skymedi Corporation Method of scheduling tasks for memories and memory system thereof
CN103488578B (zh) * 2012-12-28 2016-05-25 晶天电子(深圳)有限公司 虚拟存储设备(vmd)应用/驱动器
US8959263B2 (en) * 2013-01-08 2015-02-17 Apple Inc. Maintaining I/O priority and I/O sorting
JP6018696B2 (ja) 2013-02-27 2016-11-02 株式会社日立製作所 半導体ストレージ
US9268495B2 (en) * 2013-03-15 2016-02-23 Apple Inc. Managing I/O priorities
WO2015145552A1 (ja) * 2014-03-24 2015-10-01 株式会社日立製作所 不揮発メモリデバイス、及び、不揮発メモリデバイスを有するストレージ装置
US9965323B2 (en) * 2015-03-11 2018-05-08 Western Digital Technologies, Inc. Task queues
TWI588652B (zh) * 2015-09-01 2017-06-21 慧榮科技股份有限公司 讀取及寫入命令排程方法以及使用該方法的裝置
US10866910B2 (en) * 2015-09-28 2020-12-15 Sandisk Technologies Llc Systems, methods, and computer-readable media for managing instruction fetch in virtual computing environments
US9910772B2 (en) * 2016-04-27 2018-03-06 Silicon Motion Inc. Flash memory apparatus and storage management method for flash memory
JP6783645B2 (ja) * 2016-12-21 2020-11-11 キオクシア株式会社 メモリシステムおよび制御方法
US10831403B2 (en) * 2017-05-19 2020-11-10 Seagate Technology Llc Probabalistic command aging and selection

Similar Documents

Publication Publication Date Title
JP2018101301A5 (ja)
CN108628777B (zh) 动态和自适应中断合并的系统和方法
CN110088723B (zh) 用于对提交队列和完成队列进行处理并且做出仲裁的系统和方法
US9058208B2 (en) Method of scheduling tasks for memories and memory system thereof
US10379903B2 (en) Task queues
CN110088725B (zh) 用于对提交队列和完成队列进行处理并做出仲裁的系统和方法
CN111149096B (zh) 借助于主机内存缓冲区范围的自适应装置服务质量
CN107885456B (zh) 减少io命令访问nvm的冲突
US20160162186A1 (en) Re-Ordering NAND Flash Commands for Optimal Throughput and Providing a Specified Quality-of-Service
US10466908B2 (en) Memory system that buffers data before writing to nonvolatile memory
US11669272B2 (en) Predictive data transfer based on availability of media units in memory sub-systems
US10909031B2 (en) Memory system and operating method thereof
US20160179402A1 (en) Memory system
US20160328179A1 (en) Multiple virtually over-provisioned, virtual storage devices created from a single physical storage device
JP2011524063A5 (ja)
US20100250826A1 (en) Memory systems with a plurality of structures and methods for operating the same
US10896131B2 (en) System and method for configuring a storage device based on prediction of host source
JP2016212580A (ja) 半導体記憶装置、半導体記憶装置の制御方法および制御プログラム
US9213498B2 (en) Memory system and controller
TWI786288B (zh) 儲存裝置、儲存裝置的控制方法及記錄媒體
CN107885667A (zh) 降低读命令处理延迟的方法与装置
US20230101626A1 (en) Data Storage Device and Method for File-Based Interrupt Coalescing
US11720280B2 (en) Storage system and method for improving utilization of a communication channel between a host and the storage system
Arpith et al. Need for a Deeper {Cross-Layer} Optimization for Dense {NAND}{SSD} to Improve Read Performance of Big Data Applications: A Case for Melded Pages
US20230393877A1 (en) Apparatus with dynamic arbitration mechanism and methods for operating the same