JP2016224708A - メモリシステム - Google Patents
メモリシステム Download PDFInfo
- Publication number
- JP2016224708A JP2016224708A JP2015110461A JP2015110461A JP2016224708A JP 2016224708 A JP2016224708 A JP 2016224708A JP 2015110461 A JP2015110461 A JP 2015110461A JP 2015110461 A JP2015110461 A JP 2015110461A JP 2016224708 A JP2016224708 A JP 2016224708A
- Authority
- JP
- Japan
- Prior art keywords
- data
- management unit
- translation information
- write
- information
- 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
Links
Images
Classifications
-
- 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
- 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
- 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/1694—Configuration of memory controller to different memory types
-
- 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/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- 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/064—Management of blocks
-
- 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
- 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/1008—Correctness of operation, e.g. memory ordering
-
- 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/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)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Memory System (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
【解決手段】メモリシステムはホストに接続可能である。前記メモリシステムは、不揮発性のメモリと、データ処理部と、管理部と、を備える。前記データ処理部は、前記ホストからのコマンドに応じて前記ホストと前記メモリとの間のデータ転送を実行する。前記管理部は、論理位置情報と前記メモリの物理位置情報との対応関係を示す第1翻訳情報を管理する。前記管理部は、前記データ処理部が第1データを前記メモリに格納する場合に第2翻訳情報を更新する。前記第1データは第1ライトモードで前記ホストから受信するデータ群に含まれる。前記第2翻訳情報は前記第1翻訳情報の複製である。前記管理部は、前記第1ライトモードが終了する場合に前記第2翻訳情報を前記第1翻訳情報に反映する。
【選択図】図12
Description
図1は、第1の実施形態によるメモリシステムの構成の一例を示す図である。このメモリシステム1は、例えば、SSD(Solid State Drive)である。以下では、不揮発性メモリとしてNAND型のフラッシュメモリ(以下、NANDメモリという)を用いる場合を例に挙げる。
図9は、第2の実施形態によるメモリシステムの構成の一例を示す図である。なお、第1の実施形態と同じ機能を有する構成要素には第1の実施形態と同じ名称および符号を付す。第1の実施形態と同じ機能を有する構成要素について、説明を省略する。
図13は、メモリシステム1の実装例を示す図である。メモリシステム1は、例えばサーバシステム1000に実装される。サーバシステム1000は、ディスクアレイ2000とラックマウントサーバ3000とが通信インタフェース4000によって接続されて構成される。通信インタフェース4000の規格としては任意の規格が採用可能である。ラックマウントサーバ3000は、サーバラックに1以上のホスト2がマウントされて構成される。複数のホスト2は、通信インタフェース4000を介してディスクアレイ2000にアクセスすることができる。
Claims (10)
- ホストに接続可能なメモリシステムであって、
不揮発性のメモリと、
前記ホストからのコマンドに応じて前記ホストと前記メモリとの間のデータ転送を実行するデータ処理部と、
論理位置情報と物理位置情報との対応関係を示す第1翻訳情報を管理し、前記論理位置情報は前記ホストから指定される位置情報であり、前記物理位置情報は前記メモリ内の位置を物理的に示す位置情報である、管理部と、
を備え、
前記管理部は、
前記データ処理部が第1データを前記メモリに格納する場合に第2翻訳情報を更新し、前記第1データは第1ライトモードで前記ホストから受信するデータ群に含まれ、前記第2翻訳情報は前記第1翻訳情報の複製であり、
前記第1ライトモードが終了する場合に前記第2翻訳情報を前記第1翻訳情報に反映する、
ことを特徴とするメモリシステム。 - 前記管理部は、前記データ処理部が前記メモリから前記ホストへのデータ転送を実行する場合に、前記第1翻訳情報を参照することによって前記メモリ内のデータ転送先の物理位置情報を取得する、
ことを特徴とする請求項1に記載のメモリシステム。 - 前記管理部は、前記データ処理部が第2データを前記メモリに格納する場合に前記第1翻訳情報を更新し、前記第2データは前記第1ライトモードと異なる第2ライトモードで前記ホストから受信したデータである、
ことを特徴とする請求項2に記載のメモリシステム。 - 前記データ処理部は、エンドコマンドを受信し、
前記管理部は、前記エンドコマンドの受信に応じて前記第2翻訳情報を前記第1翻訳情報に反映する、
ことを特徴とする請求項1に記載のメモリシステム。 - 前記管理部は、前記エンドコマンドの受信の後、かつ、前記データ群のうちの最後の第1データに応じて前記第2翻訳情報を更新した後、前記第2翻訳情報を前記第1翻訳情報に反映する、
ことを特徴とする請求項4に記載のメモリシステム。 - 前記データ処理部は、前記データ群を複数、並行して受信し、
前記管理部は、データ群毎に前記第2翻訳情報を生成する、
ことを特徴とする請求項1に記載のメモリシステム。 - 前記データ処理部は、エンドコマンドをデータ群毎に受信し、
前記管理部は、前記受信されたエンドコマンドに対応するデータ群にかかる第2翻訳情報を前記第1翻訳情報に反映する、
ことを特徴とする請求項6に記載のメモリシステム。 - 前記管理部は、前記受信されたエンドコマンドに対応するデータ群にかかる第2翻訳情報を、前記受信されたエンドコマンドに対応する前記データ群のうちの最後の第1データに応じて更新した後に、前記受信されたエンドコマンドに対応するデータ群にかかる第2翻訳情報を前記第1翻訳情報に反映する、
ことを特徴とする請求項7に記載のメモリシステム。 - 前記エンドコマンドは、対応するデータ群を識別する識別情報を備える、
ことを特徴とする請求項8に記載のメモリシステム。 - 前記データ処理部が前記データ群の最後の第1データまでに受信可能な前記データ群の最初の第1データからの合計のサイズは、前記メモリシステムの余裕容量以下である、
ことを特徴とする請求項1に記載のメモリシステム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015110461A JP6398102B2 (ja) | 2015-05-29 | 2015-05-29 | メモリシステム |
CN201510651436.1A CN106201335B (zh) | 2015-05-29 | 2015-10-10 | 存储系统 |
US15/018,097 US20160350003A1 (en) | 2015-05-29 | 2016-02-08 | Memory system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015110461A JP6398102B2 (ja) | 2015-05-29 | 2015-05-29 | メモリシステム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018149521A Division JP6640940B2 (ja) | 2018-08-08 | 2018-08-08 | メモリシステムの制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2016224708A true JP2016224708A (ja) | 2016-12-28 |
JP6398102B2 JP6398102B2 (ja) | 2018-10-03 |
Family
ID=57398435
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015110461A Active JP6398102B2 (ja) | 2015-05-29 | 2015-05-29 | メモリシステム |
Country Status (3)
Country | Link |
---|---|
US (1) | US20160350003A1 (ja) |
JP (1) | JP6398102B2 (ja) |
CN (1) | CN106201335B (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200025822A (ko) * | 2018-08-31 | 2020-03-10 | 에스케이하이닉스 주식회사 | 컨트롤러 및 컨트롤러의 동작방법 |
JP2021149768A (ja) * | 2020-03-23 | 2021-09-27 | キオクシア株式会社 | 記憶装置及び記憶方法 |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108228483B (zh) * | 2016-12-15 | 2021-09-14 | 北京忆恒创源科技股份有限公司 | 处理原子写命令的方法和设备 |
CN108959108B (zh) | 2017-05-26 | 2021-08-24 | 上海宝存信息科技有限公司 | 固态硬盘访问方法以及使用该方法的装置 |
KR20200025821A (ko) * | 2018-08-31 | 2020-03-10 | 에스케이하이닉스 주식회사 | 컨트롤러 및 컨트롤러의 동작방법 |
US11294807B2 (en) * | 2019-06-25 | 2022-04-05 | Western Digital Technologies, Inc. | Delayed write failure logging |
TWI734220B (zh) | 2019-07-10 | 2021-07-21 | 慧榮科技股份有限公司 | 主機輸出入命令的執行裝置及方法及電腦程式產品 |
TWI766764B (zh) * | 2021-07-20 | 2022-06-01 | 群聯電子股份有限公司 | 記憶體緩衝區管理方法、記憶體控制電路單元與記憶體儲存裝置 |
US11934303B2 (en) * | 2022-05-12 | 2024-03-19 | Micron Technology, Inc. | Atomic write operations |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004127185A (ja) * | 2002-10-07 | 2004-04-22 | Renesas Technology Corp | メモリカード |
JP2013061814A (ja) * | 2011-09-13 | 2013-04-04 | Toshiba Corp | データ記憶装置、メモリ制御装置及び方法 |
US20140281145A1 (en) * | 2013-03-15 | 2014-09-18 | Western Digital Technologies, Inc. | Atomic write command support in a solid state drive |
US20150074336A1 (en) * | 2013-09-10 | 2015-03-12 | Kabushiki Kaisha Toshiba | Memory system, controller and method of controlling memory system |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8578127B2 (en) * | 2009-09-09 | 2013-11-05 | Fusion-Io, Inc. | Apparatus, system, and method for allocating storage |
US20090313420A1 (en) * | 2008-06-13 | 2009-12-17 | Nimrod Wiesz | Method for saving an address map in a memory device |
FR2937755B1 (fr) * | 2008-10-24 | 2010-12-31 | Commissariat Energie Atomique | Dispositif pour gerer des tampons de donnees dans un espace memoire reparti sur une pluralite d'elements de memoire |
US8856438B1 (en) * | 2011-12-09 | 2014-10-07 | Western Digital Technologies, Inc. | Disk drive with reduced-size translation table |
US9075708B1 (en) * | 2011-06-30 | 2015-07-07 | Western Digital Technologies, Inc. | System and method for improving data integrity and power-on performance in storage devices |
US9323659B2 (en) * | 2011-08-12 | 2016-04-26 | Sandisk Enterprise Ip Llc | Cache management including solid state device virtualization |
US8862858B1 (en) * | 2012-09-28 | 2014-10-14 | Emc Corporation | Method and system for fast block storage recovery |
WO2014110095A1 (en) * | 2013-01-08 | 2014-07-17 | Violin Memory Inc. | Method and system for data storage |
GB2527529B (en) * | 2014-06-24 | 2021-07-14 | Advanced Risc Mach Ltd | A device controller and method for performing a plurality of write transactions atomically within a non-volatile data storage device |
-
2015
- 2015-05-29 JP JP2015110461A patent/JP6398102B2/ja active Active
- 2015-10-10 CN CN201510651436.1A patent/CN106201335B/zh active Active
-
2016
- 2016-02-08 US US15/018,097 patent/US20160350003A1/en not_active Abandoned
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004127185A (ja) * | 2002-10-07 | 2004-04-22 | Renesas Technology Corp | メモリカード |
JP2013061814A (ja) * | 2011-09-13 | 2013-04-04 | Toshiba Corp | データ記憶装置、メモリ制御装置及び方法 |
US20140281145A1 (en) * | 2013-03-15 | 2014-09-18 | Western Digital Technologies, Inc. | Atomic write command support in a solid state drive |
US20150074336A1 (en) * | 2013-09-10 | 2015-03-12 | Kabushiki Kaisha Toshiba | Memory system, controller and method of controlling memory system |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200025822A (ko) * | 2018-08-31 | 2020-03-10 | 에스케이하이닉스 주식회사 | 컨트롤러 및 컨트롤러의 동작방법 |
KR102612911B1 (ko) * | 2018-08-31 | 2023-12-13 | 에스케이하이닉스 주식회사 | 컨트롤러 및 컨트롤러의 동작방법 |
JP2021149768A (ja) * | 2020-03-23 | 2021-09-27 | キオクシア株式会社 | 記憶装置及び記憶方法 |
JP7408449B2 (ja) | 2020-03-23 | 2024-01-05 | キオクシア株式会社 | 記憶装置及び記憶方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106201335B (zh) | 2019-07-05 |
US20160350003A1 (en) | 2016-12-01 |
JP6398102B2 (ja) | 2018-10-03 |
CN106201335A (zh) | 2016-12-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6398102B2 (ja) | メモリシステム | |
US10248322B2 (en) | Memory system | |
US10126964B2 (en) | Hardware based map acceleration using forward and reverse cache tables | |
US9910602B2 (en) | Device and memory system for storing and recovering page table data upon power loss | |
US9891825B2 (en) | Memory system of increasing and decreasing first user capacity that is smaller than a second physical capacity | |
US20110231598A1 (en) | Memory system and controller | |
US10628303B2 (en) | Storage device that maintains a plurality of layers of address mapping | |
US20130151759A1 (en) | Storage device and operating method eliminating duplicate data storage | |
US20060136676A1 (en) | Apparatus and methods using invalidity indicators for buffered memory | |
JP2017151982A (ja) | データストレージサブシステムにおけるキャッシングのための方法およびシステム | |
US8825946B2 (en) | Memory system and data writing method | |
US10223001B2 (en) | Memory system | |
US20150339058A1 (en) | Storage system and control method | |
JP2016503927A (ja) | ストレージシステム及びキャッシュコントロール方法 | |
CN113360082B (zh) | 存储系统及其控制方法 | |
JP2013222435A (ja) | 半導体記憶装置及びその制御方法 | |
JP4242245B2 (ja) | フラッシュrom制御装置 | |
US20170199687A1 (en) | Memory system and control method | |
JP6640940B2 (ja) | メモリシステムの制御方法 | |
US9798470B2 (en) | Memory system for storing and processing translation information | |
KR101153688B1 (ko) | 데이터 페이지들에 대해 무효화 기회를 부여하는 방법 및 이를 위한 낸드 플래시 메모리 시스템 | |
US20080059706A1 (en) | Storage apparatus, storage system and control method for storage apparatus | |
US11461225B2 (en) | Storage device, control method of storage device, and storage medium | |
JP2013196155A (ja) | メモリシステム | |
US20140281157A1 (en) | Memory system, memory controller and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20170605 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20170804 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180516 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180529 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180702 |
|
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: 20180717 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180809 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20180822 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20180823 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6398102 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |