JP5631938B2 - 半導体記憶装置 - Google Patents
半導体記憶装置 Download PDFInfo
- Publication number
- JP5631938B2 JP5631938B2 JP2012160309A JP2012160309A JP5631938B2 JP 5631938 B2 JP5631938 B2 JP 5631938B2 JP 2012160309 A JP2012160309 A JP 2012160309A JP 2012160309 A JP2012160309 A JP 2012160309A JP 5631938 B2 JP5631938 B2 JP 5631938B2
- Authority
- JP
- Japan
- Prior art keywords
- storage unit
- data
- unit
- memory
- control unit
- 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
- 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
- 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/10—Address translation
- G06F12/1009—Address translation using page tables, e.g. page table structures
-
- 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/0613—Improving I/O performance in relation to throughput
-
- 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage 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/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
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)
- Techniques For Improving Reliability Of Storages (AREA)
Description
図1は、第1実施形態にかかる半導体記憶装置であるデバイス100およびホスト装置200のハードウェア構成の一例を示すブロック図である。図1に示すように、ホスト装置200は、CPU201と、メインメモリ202と、CPU201およびメインメモリ202を接続するバス211と、を備えている。
上述の第1実施形態では、論物変換テーブルは、第1記憶部130に格納されているが、これに限らず、論物変換テーブルの格納先は任意である。例えば論物変換テーブルが、第2記憶部150に格納されてもよい。この場合、例えば論物変換テーブルが全て第3記憶部151に記憶される形態であってもよい。この形態では、例えば読み出し要求に含まれる論理アドレスに対応する物理アドレスを特定する場合(論物変換を行う場合)、第4記憶部153にアクセスする必要はない。
以上の形態では、メモリ制御部120が論物変換を行い、論物変換テーブルの更新を行っているが、これに限らず、例えばデバイス制御部110が論物変換を行い、論物変換テーブルの更新を行う形態であってもよい。以下、この形態において、デバイス制御部110が、ホスト装置200からの読み出し要求を受け付けた場合を想定して説明する。この場合、デバイス制御部110は、論物変換テーブルを参照して、読み出し要求に含まれる論理アドレスに対応する物理アドレスを特定する。そして、デバイス制御部110は、メモリ制御部120へ伝達すべき伝達情報として、特定した物理アドレスと、その物理アドレスが示す場所に格納されたデータの読み出しを命令するコマンドとを、メモリ制御部120へ送信する。なお、論物変換テーブルの格納先は任意であり、例えばデバイス制御部110が論物変換テーブルを保持する形態であってもよい。
次に、第2実施形態について説明する。上述の第1実施形態と共通する部分については、同一の符号を付して適宜に説明を省略する。第2実施形態の半導体記憶装置は、第1実施形態で説明した書き込み/読み出しの機能に加えて、検索機能を有する。検索機能強化のために、デバイス制御部は、ホスト装置から供給されるデータに対して、付加的な情報、例えばメタデータであるタグ(「キー」の一例)を付け加えて書き込みを行うことを前提とする。以下、第2実施形態の半導体記憶装置の説明の前に、検索方式と方法を説明する。
(1)キーをHash関数などにより固定長データへ変換し、その固定長データを使用可能なメモリのアドレスに変換して固定長アドレスを得る。変換した固定長アドレスをキーアドレスとする。
(2)NANDフラッシュメモリ内に保存されているK2Pテーブルを参照し、物理アドレスを得る。
(3)物理アドレスのデータを読み、メモリシステム外へ出力する。
このような実データアドレスとKVSデータの関係、および、キーとバリューの関係は、要素と集合の関係となっている。すなわち、通常のファイルでは、例えば「a−file.txt」というファイル名のファイルが集合であり、そのファイルの中身に「This is a book」というテキストデータがあれば、そのそれぞれの単語が要素である。
101 ホストインタフェース
102 バス
110 デバイス制御部
120 メモリ制御部
121 受付部
122 訂正部
123 更新部
124 管理部
125 一致判定部
126 集合演算部
130 第1記憶部
140 アクセス制御部
141 書き込み制御部
143 読み出し制御部
145 検索制御部
150 第2記憶部
151 第3記憶部
153 第4記憶部
200 ホスト装置
202 メインメモリ
211 バス
1000 デバイス
2000 ホスト装置
Claims (9)
- ホスト装置からの要求に応じて、前記ホスト装置から供給されるデータが格納される第1記憶部に対する前記データの書き込みを行う書き込み処理、または、前記第1記憶部に格納された前記データの読み出しを行う読み出し処理を制御する制御部と、
前記書き込み処理または前記読み出し処理が行われる際に一時的に使用される第2記憶部と、を備え、
前記第2記憶部は、
前記書き込み処理の対象となる前記データの複製を記憶する領域を有する不揮発性の第3記憶部と、
前記書き込み処理または前記読み出し処理の作業領域を有し、前記第3記憶部よりも読み出し/書き込み速度が速い不揮発性の第4記憶部と、を含み、
前記第4記憶部および前記第3記憶部のそれぞれはメモリセルを有し、
前記第4記憶部の前記メモリセルがビットデータを保持可能な時間を示す第1記憶保持時間は、前記第3記憶部の前記メモリセルがビットデータを保持可能な時間を示す第2記憶保持時間よりも短い、
半導体記憶装置。 - 前記第4記憶部は、前記書き込み処理または前記読み出し処理が行われた前記データを示す保存データを記憶する領域を更に有し、
前記第3記憶部は、前記第4記憶部に記憶された前記保存データのうちの少なくとも1つの前記保存データの複製を記憶する領域を更に有する、
請求項1の半導体記憶装置。 - 前記読み出し処理により前記第1記憶部から読み出された前記データの誤り訂正処理を行う訂正部をさらに備え、
前記第4記憶部は、前記誤り訂正処理の作業領域を更に有する、
請求項1の半導体記憶装置。 - 前記訂正部は、前記書き込み処理の対象となる前記データの符号化処理を行い、
前記制御部は、前記符号化処理により符号化された前記データを、前記第1記憶部に書き込む制御を行い、
前記第4記憶部は、前記符号化処理の作業領域を更に有する、
請求項3の半導体記憶装置。 - 前記第4記憶部の前記メモリセルと前記第3記憶部の前記メモリセルは同種である、
請求項1の半導体記憶装置。 - 前記第3記憶部と前記第4記憶部は、同一の基板上に設けられる、
請求項5の半導体記憶装置。 - 前記ホスト装置からの要求の対象となる前記データに対応付けられ、前記ホスト装置により指定される論理アドレスと、前記第1記憶部のうち前記データが記憶される場所を示す物理アドレスとの対応関係を示す論物変換情報を更新する更新部をさらに備え、
前記更新部は、前記書き込み処理が完了するたびに、前記書き込み処理により前記第1記憶部に書き込まれた前記データの前記物理アドレスと、前記論理アドレスとを対応付けて前記論物変換情報に追加する、
請求項1の半導体記憶装置。 - 前記制御部は、
前記ホスト装置からの、前記データに対応付けられるキーを含む検索要求に応じて、前記キーに対応する前記データを検索する検索処理を制御する検索制御部をさらに備え、
前記第4記憶部は、前記検索処理の作業領域を更に有する、
請求項1の半導体記憶装置。 - 前記第4記憶部は、前記検索処理により検索された前記データを示す第2保存データを記憶する領域を更に有し、
前記第3記憶部は、前記第4記憶部に記憶された前記第2保存データの少なくとも1つの前記第2保存データの複製を記憶する領域を更に有する、
請求項8の半導体記憶装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012160309A JP5631938B2 (ja) | 2012-07-19 | 2012-07-19 | 半導体記憶装置 |
US13/913,708 US9152350B2 (en) | 2012-07-19 | 2013-06-10 | Semiconductor memory device controlling write or read process |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012160309A JP5631938B2 (ja) | 2012-07-19 | 2012-07-19 | 半導体記憶装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014021752A JP2014021752A (ja) | 2014-02-03 |
JP5631938B2 true JP5631938B2 (ja) | 2014-11-26 |
Family
ID=49947537
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012160309A Expired - Fee Related JP5631938B2 (ja) | 2012-07-19 | 2012-07-19 | 半導体記憶装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9152350B2 (ja) |
JP (1) | JP5631938B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10056150B2 (en) | 2016-09-20 | 2018-08-21 | Toshiba Memory Corporation | Non-volatile semiconductor memory device |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9158678B2 (en) * | 2013-03-13 | 2015-10-13 | Kabushiki Kaisha Toshiba | Memory address management system and method |
US9299126B2 (en) * | 2013-09-12 | 2016-03-29 | Arm Limited | Image processing apparatus and a method of storing encoded data blocks generated by such an image processing apparatus |
EP3229140B1 (en) * | 2013-12-02 | 2019-02-20 | Huawei Technologies Co., Ltd. | Data processing device and data processing method |
JP6166476B2 (ja) | 2014-07-09 | 2017-07-19 | 株式会社日立製作所 | メモリモジュールおよび情報処理システム |
US9690652B2 (en) | 2015-01-16 | 2017-06-27 | Kabushiki Kaisha Toshiba | Search device and search method searching data based on key |
JP2016219070A (ja) | 2015-05-14 | 2016-12-22 | 株式会社東芝 | 磁気記録ヘッド、およびこれを備えたディスク装置 |
US10719236B2 (en) * | 2015-11-20 | 2020-07-21 | Arm Ltd. | Memory controller with non-volatile buffer for persistent memory operations |
JP2017162095A (ja) * | 2016-03-08 | 2017-09-14 | 株式会社リコー | 情報処理装置、情報処理方法、情報処理プログラム |
US11562792B2 (en) | 2020-03-18 | 2023-01-24 | Kioxia Corporation | Memory system having a non-volatile memory and a controller configured to switch a mode for controlling an access operation to the non-volatile memory |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005301591A (ja) * | 2004-04-09 | 2005-10-27 | Toshiba Corp | 不揮発性メモリを備えた装置及びメモリコントロ−ラ |
JP4956922B2 (ja) * | 2004-10-27 | 2012-06-20 | ソニー株式会社 | 記憶装置 |
US7406560B2 (en) * | 2006-06-21 | 2008-07-29 | Intel Corporation | Using multiple non-volatile memory devices to store data in a computer system |
JP2009087509A (ja) | 2007-10-03 | 2009-04-23 | Toshiba Corp | 半導体記憶装置 |
US8688894B2 (en) * | 2009-09-03 | 2014-04-01 | Pioneer Chip Technology Ltd. | Page based management of flash storage |
JP5520747B2 (ja) * | 2010-08-25 | 2014-06-11 | 株式会社日立製作所 | キャッシュを搭載した情報装置及びコンピュータ読み取り可能な記憶媒体 |
JP5762878B2 (ja) | 2011-08-08 | 2015-08-12 | 株式会社東芝 | key−valueストアを有するメモリシステム |
JP5524144B2 (ja) | 2011-08-08 | 2014-06-18 | 株式会社東芝 | key−valueストア方式を有するメモリシステム |
JP5906966B2 (ja) | 2012-06-29 | 2016-04-20 | 富士通株式会社 | 制御装置、電力供給装置及び電力制御方法 |
-
2012
- 2012-07-19 JP JP2012160309A patent/JP5631938B2/ja not_active Expired - Fee Related
-
2013
- 2013-06-10 US US13/913,708 patent/US9152350B2/en not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10056150B2 (en) | 2016-09-20 | 2018-08-21 | Toshiba Memory Corporation | Non-volatile semiconductor memory device |
Also Published As
Publication number | Publication date |
---|---|
US20140025865A1 (en) | 2014-01-23 |
US9152350B2 (en) | 2015-10-06 |
JP2014021752A (ja) | 2014-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5631938B2 (ja) | 半導体記憶装置 | |
JP5405513B2 (ja) | メモリシステム、不揮発性記憶装置、不揮発性記憶装置の制御方法、及びプログラム | |
JP6034183B2 (ja) | 半導体記憶装置 | |
US8812816B2 (en) | Garbage collection schemes for index block | |
TWI457756B (zh) | 記憶體系統及其操作方法 | |
TW201917580A (zh) | 計算機系統及儲存裝置之控制方法 | |
US20130151759A1 (en) | Storage device and operating method eliminating duplicate data storage | |
US10628303B2 (en) | Storage device that maintains a plurality of layers of address mapping | |
US20130250686A1 (en) | Semiconductor memory device, information processing system and control method | |
US20110231598A1 (en) | Memory system and controller | |
US10120606B2 (en) | Data storage devices including storage controller circuits to select data streams based on application tags and computing systems including the same | |
US10990536B2 (en) | Memory controller, operating method of the memory controller, and storage device including the memory controller | |
US20140219041A1 (en) | Storage device and data processing method thereof | |
US10949090B2 (en) | Memory system that stores data designated by a deletion request in nonvolatile memory | |
KR20200016076A (ko) | 메모리 시스템 및 메모리 시스템의 동작방법 | |
CN111459400B (zh) | 在存储服务器中进行基于管线的存取管理的方法及设备 | |
JP2015053075A (ja) | メモリシステム、情報処理装置および記憶装置 | |
KR20190009580A (ko) | 컨트롤러 및 컨트롤러의 동작방법 | |
US20110264848A1 (en) | Data recording device | |
JP5649709B2 (ja) | メモリシステム、不揮発性記憶装置、不揮発性記憶装置の制御方法およびプログラム | |
KR20200119059A (ko) | 메모리 시스템 및 그것의 동작방법 | |
US11392310B2 (en) | Memory system and controller | |
US11960411B2 (en) | Apparatus for transmitting map information in memory system | |
JP2012037971A (ja) | メモリコントローラ及びメモリコントローラを備える不揮発性メモリシステム、並びに不揮発性メモリの制御方法 | |
US20150212884A1 (en) | Memory controller, storage device, and memory control method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140206 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140613 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20140617 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20140723 |
|
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: 20140909 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20141008 |
|
LAPS | Cancellation because of no payment of annual fees |