JP6666813B2 - 記憶装置及びその制御方法 - Google Patents
記憶装置及びその制御方法 Download PDFInfo
- Publication number
- JP6666813B2 JP6666813B2 JP2016164016A JP2016164016A JP6666813B2 JP 6666813 B2 JP6666813 B2 JP 6666813B2 JP 2016164016 A JP2016164016 A JP 2016164016A JP 2016164016 A JP2016164016 A JP 2016164016A JP 6666813 B2 JP6666813 B2 JP 6666813B2
- Authority
- JP
- Japan
- Prior art keywords
- storage device
- priority
- log
- activation
- host
- 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.)
- Active
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
- 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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0608—Saving storage space on storage systems
-
- 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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- 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/0629—Configuration or reconfiguration of storage systems
- G06F3/0632—Configuration or reconfiguration of storage systems by initialisation or re-initialisation of storage systems
-
- 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/0629—Configuration or reconfiguration of storage systems
- G06F3/0634—Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
-
- 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/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- 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/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- 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/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- 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/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
-
- 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/10—Providing a specific technical effect
- G06F2212/1048—Scalability
-
- 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/7201—Logical to physical mapping or translation of blocks or pages
-
- 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/7207—Details relating to flash memory management management of metadata or control data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
Claims (10)
- ホスト装置と通信可能な記憶装置であって、
前記ホスト装置から送信されるユーザデータを記憶する不揮発性半導体メモリと、
前記ホスト装置との通信を制御し、前記不揮発性半導体メモリへの前記ユーザデータの書き込み動作及び読み出し動作を制御するコントローラと、
を具備し、
前記コントローラは、
前記ユーザデータに対応付けられる論理アドレスの空間を複数の部分空間に分けて管理し、
前記記憶装置の起動に際して必要となる起動情報であって、前記論理アドレスと前記不揮発性半導体メモリの物理アドレスとの変換に必要な情報を、前記部分空間ごとの起動優先順位が識別可能となるように管理する
記憶装置。 - 前記コントローラは、
前記ホスト装置が前記部分空間のいずれかを指定して送信する第1のコマンドの指定に応じて前記起動優先順位を設定する
請求項1に記載の記憶装置。 - 前記コントローラは、
前記部分空間のうちの第1の部分空間に対する前記第1のコマンドで指定された前記起動優先順位が、
前記部分空間のうちのいずれかの前記起動優先順位と重複している場合に、
前記第1の部分空間には、前記指定された起動優先順位を設定し、
前記第1の部分空間以外の前記部分空間のうち、前記指定された起動優先順位以下の起動優先順位を有する前記部分空間の前記起動優先順位をそれぞれ1つずつ低く設定する
請求項2に記載の記憶装置。 - 前記コントローラは、前記起動情報を前記不揮発性半導体メモリに記憶させるように制御する
請求項1に記載の記憶装置。 - 前記コントローラは、
前記記憶装置の起動に応じて、
前記起動情報を前記起動優先順位の高い順に読み出す
請求項1に記載の記憶装置。 - 前記コントローラは、
前記部分空間の起動が完了したことを前記部分空間ごとに前記ホスト装置に報告する
請求項5に記載の記憶装置。 - 前記コントローラは、
前記ホスト装置が前記部分空間のいずれかを指定して送信する第2のコマンドに応じて
前記部分空間の起動が完了したことを前記部分空間ごとに前記ホスト装置に報告する
請求項6に記載の記憶装置。 - 前記コントローラは、
前記ホスト装置が前記部分空間のいずれかを指定して送信する第3のコマンドに応じて
前記部分空間ごとの前記起動優先順位を前記ホスト装置に報告する
請求項1に記載の記憶装置。 - 前記コントローラは、
前記ホスト装置が前記起動優先順位を指定して送信する第4のコマンドに応じて
前記起動優先順位に対応する前記部分空間を識別する情報を前記ホスト装置に報告する
請求項1に記載の記憶装置。 - ホスト装置と通信可能であり不揮発性半導体メモリを備える記憶装置を制御する方法であって、
ユーザデータに対応付けられる論理アドレスの空間を複数の部分空間に分けて管理することと、
前記記憶装置の起動に際して必要となる起動情報であって、前記論理アドレスと前記不揮発性半導体メモリの物理アドレスとの変換に必要な情報を、前記部分空間ごとの起動優先順位が識別可能となるように管理することと、
を含む方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016164016A JP6666813B2 (ja) | 2016-08-24 | 2016-08-24 | 記憶装置及びその制御方法 |
US15/685,269 US10649891B2 (en) | 2016-08-24 | 2017-08-24 | Storage device that maintains mapping data therein |
JP2020027984A JP6895551B2 (ja) | 2016-08-24 | 2020-02-21 | 情報処理システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2016164016A JP6666813B2 (ja) | 2016-08-24 | 2016-08-24 | 記憶装置及びその制御方法 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020027984A Division JP6895551B2 (ja) | 2016-08-24 | 2020-02-21 | 情報処理システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018032220A JP2018032220A (ja) | 2018-03-01 |
JP6666813B2 true JP6666813B2 (ja) | 2020-03-18 |
Family
ID=61242741
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016164016A Active JP6666813B2 (ja) | 2016-08-24 | 2016-08-24 | 記憶装置及びその制御方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US10649891B2 (ja) |
JP (1) | JP6666813B2 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10564858B2 (en) * | 2018-05-02 | 2020-02-18 | Nyquist Semiconductor Limited | Data storage device with selective connection to non-volatile memories |
US10606516B2 (en) * | 2018-08-01 | 2020-03-31 | Hewlett Packard Enterprise Development Lp | Systems and methods for I/O prioritization in NVMe-compliant storage devices |
US11269780B2 (en) | 2019-09-17 | 2022-03-08 | Micron Technology, Inc. | Mapping non-typed memory access to typed memory access |
US11494311B2 (en) | 2019-09-17 | 2022-11-08 | Micron Technology, Inc. | Page table hooks to memory types |
US10963396B1 (en) | 2019-09-17 | 2021-03-30 | Micron Technology, Inc. | Memory system for binding data to a memory namespace |
US11650742B2 (en) | 2019-09-17 | 2023-05-16 | Micron Technology, Inc. | Accessing stored metadata to identify memory devices in which data is stored |
US11061770B1 (en) * | 2020-06-30 | 2021-07-13 | EMC IP Holding Company LLC | Reconstruction of logical pages in a storage system |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6098119A (en) * | 1998-01-21 | 2000-08-01 | Mylex Corporation | Apparatus and method that automatically scans for and configures previously non-configured disk drives in accordance with a particular raid level based on the needed raid level |
US7249218B2 (en) * | 2002-08-29 | 2007-07-24 | International Business Machines Corporation | Method, system, and program for managing an out of available space condition |
US7769945B2 (en) * | 2007-01-18 | 2010-08-03 | Sandisk Il Ltd. | Method and system for facilitating fast wake-up of a flash memory system |
JP5300276B2 (ja) * | 2008-01-28 | 2013-09-25 | アルパイン株式会社 | データ処理装置及び論理ドライブのマウント方法 |
JP4809413B2 (ja) | 2008-10-08 | 2011-11-09 | 株式会社日立製作所 | ストレージシステム |
JP5353732B2 (ja) | 2010-01-27 | 2013-11-27 | 富士通株式会社 | ストレージ管理装置、ストレージシステム、ストレージ管理プログラム、ストレージ管理方法 |
US9218279B2 (en) * | 2013-03-15 | 2015-12-22 | Western Digital Technologies, Inc. | Atomic write command support in a solid state drive |
US9513815B2 (en) | 2013-12-19 | 2016-12-06 | Macronix International Co., Ltd. | Memory management based on usage specifications |
US10019326B2 (en) | 2015-07-15 | 2018-07-10 | Toshiba Memory Corporation | Memory system |
-
2016
- 2016-08-24 JP JP2016164016A patent/JP6666813B2/ja active Active
-
2017
- 2017-08-24 US US15/685,269 patent/US10649891B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2018032220A (ja) | 2018-03-01 |
US10649891B2 (en) | 2020-05-12 |
US20180060228A1 (en) | 2018-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6666813B2 (ja) | 記憶装置及びその制御方法 | |
TWI765289B (zh) | 儲存系統 | |
US10635310B2 (en) | Storage device that compresses data received from a host before writing therein | |
JP5646633B2 (ja) | ストレージ装置 | |
JP5075761B2 (ja) | フラッシュメモリを用いたストレージ装置 | |
US9454317B2 (en) | Tiered storage system, storage controller and method of substituting data transfer between tiers | |
US9990277B2 (en) | System and method for efficient address translation of flash memory device | |
CN107908571B (zh) | 一种数据写入方法、闪存装置及存储设备 | |
WO2015076354A1 (ja) | ストレージ装置と方法並びにプログラム | |
KR20150105323A (ko) | 데이터 스토리지 방법 및 시스템 | |
US10049042B2 (en) | Storage device, semiconductor memory device, and method for controlling same | |
WO2016056104A1 (ja) | ストレージ装置、及び、記憶制御方法 | |
US20190243758A1 (en) | Storage control device and storage control method | |
US20090157940A1 (en) | Techniques For Storing Data In Multiple Different Data Storage Media | |
JP5730446B1 (ja) | トライアル領域を備えた階層化ストレージシステム、ストレージコントローラ及びプログラム | |
JP2006252137A (ja) | 不揮発性記憶装置の最適化方法 | |
JP6895551B2 (ja) | 情報処理システム | |
JPWO2021218038A5 (ja) | ||
CN107562639B (zh) | 擦除块读请求处理方法与装置 | |
US9218131B2 (en) | Method and apparatus to change tiers | |
JP6022116B1 (ja) | 階層化ストレージシステム、ストレージコントローラ及びレプリケーション初期化方法 | |
KR102546740B1 (ko) | 스토리지 장치, 스토리지 장치의 동작 방법, 및 스토리지 장치를 포함하는 스토리지 시스템 | |
KR20120011634A (ko) | 플래시 메모리장치 | |
KR20240112601A (ko) | 스토리지 장치 및 그의 동작 방법 | |
JP5648918B2 (ja) | ストレージシステム、ストレージ装置及びスナップショット処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20170531 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20170821 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20180907 |
|
RD07 | Notification of extinguishment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7427 Effective date: 20180907 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20181017 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190718 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190802 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190830 |
|
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: 20200124 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200221 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6666813 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |