JP2018014050A - メモリシステム - Google Patents
メモリシステム Download PDFInfo
- Publication number
- JP2018014050A JP2018014050A JP2016144747A JP2016144747A JP2018014050A JP 2018014050 A JP2018014050 A JP 2018014050A JP 2016144747 A JP2016144747 A JP 2016144747A JP 2016144747 A JP2016144747 A JP 2016144747A JP 2018014050 A JP2018014050 A JP 2018014050A
- Authority
- JP
- Japan
- Prior art keywords
- command
- host device
- block
- data
- controller
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/062—Securing storage systems
- G06F3/0622—Securing storage systems in relation to access
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1416—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
- G06F12/1425—Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0637—Permissions
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; 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 OR CALCULATING; 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
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/24—Memory cell safety or protection circuits, e.g. arrangements for preventing inadvertent reading or writing; Status cells; Test cells
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/1052—Security improvement
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/21—Employing a record carrier using a specific recording technology
- G06F2212/214—Solid state disk
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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)
- Computer Security & Cryptography (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
- Storage Device Security (AREA)
Abstract
Description
第1実施形態に係るメモリシステムについて説明する。
1.1.1 メモリシステムの全体構成について
まず、本実施形態に係るメモリシステムの大まかな全体構成について、図1及び図2を用いて説明する。図1は、本実施形態に係るメモリシステムの外観図であり、特に上面から見た様子を示し、図2は図1における2−2線に沿った断面図である。
この場合でも、ピン構成はSPIに準拠している。
次に、コントローラ200の構成の詳細につき、引き続き図6を用いて説明する。図示するようにコントローラ200は、ホスト入出力回路210、ホストインターフェース回路220、NANDインターフェース回路230、NAND入出力回路240、シーケンサ(ステートマシン)250、データバッファ260、270、ステータスレジスタ280、アドレスレジスタ290、ブロックプロテクションレジスタ700、及び周辺回路600を備えている。
次に、NAND型フラッシュメモリ100の構成について、図7を用いて説明する。図7は、NAND型フラッシュメモリ100のブロック図である。
120、及びセンスアンプ130に供給する。
次に、本実施形態に係るメモリシステムにおけるデータの読み出し動作、書き込み動作、及び消去動作につき、SPIバス及びNANDバスで送受信される信号に着目して、以下簡単に説明する。
まず、読み出し動作について説明する。読み出し動作は、大まかには以下の3ステップを含む。すなわち、
(1) NAND型フラッシュメモリからのデータ読み出し:本動作により、NAND型
フラッシュメモリ100からコントローラ200にデータが読み出される。
(2) 特徴テーブル読み出し(Get featureと呼ぶことがある):本動作により、メモリシステム1がビジー状態であるかレディ状態であるか、すなわち上記(1)の動作が完了したか否かが判定される。
(3) コントローラ200からのデータ読み出し:本動作により、(1)でコントローラ200に読み出されたデータがホスト機器500に読み出される。
次に書き込み動作について説明する。書き込み動作は、大まかには以下の3ステップを含む。すなわち、
(1) ホスト機器500からコントローラ200へのデータ転送。
(2) 転送したデータのNAND型フラッシュメモリ100への書き込み。
(3) 特徴テーブル読み出し(Get feature):本動作により、NAND型フラッシュメモリ100への書き込みがパスしたかフェイルしたかが判定される。
次に消去動作について説明する。消去動作は、大まかには以下の2ステップを含む。すなわち、
(1) ホスト機器500からコントローラ200への消去命令。
(2) 特徴テーブル読み出し(Get feature):本動作により、NAND型フラッシュメモリ100への消去動作がパスしたかフェイルしたかが判定される。
次に、本実施形態に係るブロック保護について説明する。
本実施形態に係るメモリシステム1は、ホスト機器500からNAND型フラッシュメモリ100内のあるユーザブロックの保護を要求する特定コマンドを受けた場合に、当該ブロックを保護するための制御機能を有する。上記特定コマンドをブロック保護コマンドと呼ぶ。また、この場合の保護とは、ホスト機器500が保護対象として指定したユーザブロックに対するデータの消去もしくは書き込みを禁止することである。上記制御機能は、例えばコントローラ200内のシーケンサ250とブロックプロテクションレジスタ7
00により実現される。この場合、シーケンサ250は、ホストインターフェース回路220により認識されるコマンドがブロック保護コマンドである場合に、当該ブロックを保護するための処理を実行する。
コントローラ200には、当該NAND型フラッシュメモリ100上の保護対象のブロックを示す情報を記憶するための記憶領域(ブロックプロテクションレジスタ700)が設けられる。この記憶領域は、例えばホスト機器500側からアクセスすることができない領域である。保護対象のブロックを示す情報は、例えば図17に示すようにブロックプロテクションレジスタ700に記憶される。この場合、保護対象のブロックであるか否かを示す情報として、保護対象のブロックのアドレスに対応したエントリに、フラグが書き込まれる。保護対象となるブロックに対応したエントリには例えば“1”を記憶させ、保護対象でないブロックに対応したエントリには例えば“0”を記憶させるようにしてもよい。
本実施形態では、ブロック保護コマンドとして、Protect Execute コマンド“11h” が用意されている。
次にブロック保護動作について説明する。ブロック保護動作は、大まかには以下の2ステップを含む。すなわち、
(1) コントローラ200によるブロック保護動作。
(2) 特徴テーブル読み出し(Get feature):本動作により、ブロック保護動作がパスしたかフェイルしたかが判定される。
次に、ブロック保護動作の流れの詳細について、図19及び図20を用いて説明する。図19は、ブロック保護動作時におけるホスト機器500、コントローラ200、及びNAND型フラッシュメモリ100の動作を示すフローチャートであり、図20はコマンドシーケンスである。
“1”又は“0”を含む。
次に、ブロック保護動作完了後の動作について、図22を用いて説明する。図22は、ブロック保護動作完了後におけるホスト機器500、コントローラ200、及びNAND型フラッシュメモリ100の動作を示すフローチャートである。
次に、ブロックが保護されているかをホスト機器500が確認する際のホスト機器500、及びコントローラ200の動作について、図23を用いて説明する。図23は、ブロックの保護の有無を確認する際のホスト機器500の動作を示すフローチャートである。
本実施形態によれば、ブロックの保護の有無をホスト機器500が確認することができる。本効果につき、以下説明する。
実施形態では、書き込みコマンドに対して保護されれば消去コマンドに対しても保護されるというように、書き込みコマンドと消去コマンドとに対して、保護の有無が共通していた。しかし、この例に限定されず、書き込みコマンドと消去コマンドとで保護の有無を別にしてもよい。図27は、特徴テーブルの変形例を示す。図27の特徴テーブルでは、図24に比較して、Block Protection StatusビットであるBPS1が1ビット目に追加されている。図28は、BPS1とBPS0の定義を示す。図28では、BPS1が“1”のとき、書き込みコマンドに対して保護されていることを示し、BPS1が“0”のとき、書き込みコマンドに対して保護されていないことを示している。また、BPS0が“1”のとき、消去コマンドに対して保護されていることを示し、BPS0が“0”のとき、消去コマンドに対して保護されていないことを示している。このように、Block Protection Statusビットを複数ビット設け、ビットごとに異なる処理に対する保護の有無を示してもよい。
Claims (5)
- ホスト機器からのチップセレクト信号の受信直後に受信される信号をコマンドとして認識するコントローラと、
複数のブロックを含み、前記複数のブロックの夫々を単位としてデータの消去動作が可能なメモリとを具備し、
前記コントローラは、前記コントローラにより認識されたコマンドが第1コマンドである場合に、前記複数のブロックのうちの少なくとも一の特定のブロックに対する前記メモリの書き込み動作、及び消去動作の少なくとも一方が禁止されているかを示す第1情報を前記ホスト機器に出力する
ことを特徴とするメモリシステム。 - 前記コントローラは、前記ホスト機器から第2コマンドを受信し、
前記特定のブロックは、前記第2コマンドによって前記ホスト機器に指定される
ことを特徴とする請求項1に記載のメモリシステム。 - 前記コントローラは、前記ホスト機器から第3コマンドを受信し、前記第3コマンドに応答して、前記第3コマンドによって前記ホスト機器に指定されたブロックに対する書き込み動作、及び消去動作の少なくとも一方を禁止する
ことを特徴とする請求項1または2に記載のメモリシステム。 - 前記コントローラは、前記第1コマンドに応答して、前記第2コマンドによって指定されたブロックのアドレスにアドレスが連続する複数のブロックに関する前記第1情報を前記アドレスの順番で順次出力する
ことを特徴とする請求項2に記載のメモリシステム。 - 前記第1情報は、前記書き込み動作が禁止されているかを示す第2情報と、前記消去動作が禁止されているかを示す第3情報とを含む
ことを特徴とする請求項1乃至4のいずれか1項に記載のメモリシステム。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2016144747A JP2018014050A (ja) | 2016-07-22 | 2016-07-22 | メモリシステム |
| US15/439,712 US10732863B2 (en) | 2016-07-22 | 2017-02-22 | Memory system storing block protection information |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2016144747A JP2018014050A (ja) | 2016-07-22 | 2016-07-22 | メモリシステム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2018014050A true JP2018014050A (ja) | 2018-01-25 |
Family
ID=60988043
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2016144747A Pending JP2018014050A (ja) | 2016-07-22 | 2016-07-22 | メモリシステム |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US10732863B2 (ja) |
| JP (1) | JP2018014050A (ja) |
Families Citing this family (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10838637B2 (en) | 2018-02-08 | 2020-11-17 | Micron Technology, Inc. | Status management in storage backed memory package |
| US10522201B2 (en) * | 2018-05-31 | 2019-12-31 | Qualcomm Incorporated | Methods and systems for serial memory device control |
| CN109192237B (zh) * | 2018-09-14 | 2021-06-04 | 惠科股份有限公司 | 存储器写保护电路及显示装置 |
| JP7401215B2 (ja) * | 2019-07-19 | 2023-12-19 | キヤノン株式会社 | 情報処理装置、その制御方法およびプログラム |
| TWI722852B (zh) * | 2020-03-30 | 2021-03-21 | 技嘉科技股份有限公司 | 固態硬碟以及啟動方法 |
| JP7589087B2 (ja) * | 2021-03-30 | 2024-11-25 | キオクシア株式会社 | 半導体記憶装置 |
| CN113704836B (zh) * | 2021-08-17 | 2022-06-10 | 深圳市安信达存储技术有限公司 | 基于龙芯处理器的智能销毁方法 |
| US20250165140A1 (en) * | 2023-11-20 | 2025-05-22 | International Business Machines Corporation | Performing select input/output requests while in protected memory states |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20050071592A1 (en) * | 2003-09-26 | 2005-03-31 | Decaro Richard V. | Selectable block protection for non-volatile memory |
| JP2005108273A (ja) * | 2003-09-26 | 2005-04-21 | Toshiba Corp | 不揮発性半導体記憶装置 |
| WO2005109444A1 (ja) * | 2004-05-11 | 2005-11-17 | Spansion Llc | 半導体装置および半導体装置に対する制御方法 |
| JP2010066818A (ja) * | 2008-09-08 | 2010-03-25 | Seiko Epson Corp | 半導体装置 |
| US20120124446A1 (en) * | 2007-10-17 | 2012-05-17 | Micron Technology, Inc. | System and method for data read of a synchronous serial interface nand |
| JP2014038593A (ja) * | 2012-06-22 | 2014-02-27 | Huabang Electronic Co Ltd | オンチップのnand型フラッシュメモリおよびその不良ブロック管理方法 |
Family Cites Families (14)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3487690B2 (ja) | 1995-06-20 | 2004-01-19 | シャープ株式会社 | 不揮発性半導体記憶装置 |
| WO2001061503A1 (en) * | 2000-02-16 | 2001-08-23 | Fujitsu Limited | Nonvolatile memory |
| KR100402391B1 (ko) * | 2000-10-26 | 2003-10-22 | 삼성전자주식회사 | 메모리 카드 시스템 |
| JP2003233534A (ja) * | 2002-02-07 | 2003-08-22 | Hitachi Ltd | メモリシステム |
| DE60229649D1 (de) * | 2002-11-28 | 2008-12-11 | St Microelectronics Srl | Nichtflüchtige Speicheranordnungsarchitektur, zum Beispiel vom Flash-Typ mit einer seriellen Übertragungsschnittstelle |
| JP2005317127A (ja) | 2004-04-28 | 2005-11-10 | Matsushita Electric Ind Co Ltd | 不揮発性半導体記憶装置 |
| JP4623669B2 (ja) | 2004-05-12 | 2011-02-02 | スパンション エルエルシー | 半導体装置および半導体装置の制御方法 |
| JP2006127648A (ja) | 2004-10-29 | 2006-05-18 | Sharp Corp | 不揮発性記憶装置及び電子機器 |
| TWI351606B (en) * | 2007-10-26 | 2011-11-01 | Sunplus Technology Co Ltd | Memory module and control method of serial periphe |
| KR20110102734A (ko) * | 2010-03-11 | 2011-09-19 | 삼성전자주식회사 | 오티피 록 비트 레지스터를 구비한 불휘발성 반도체 메모리 장치 |
| JP5801244B2 (ja) * | 2012-04-06 | 2015-10-28 | 株式会社東芝 | メモリシステム |
| US9229639B2 (en) * | 2013-03-11 | 2016-01-05 | Sandisk Technologies Inc. | Method and non-volatile memory device for improving latency together with write protection |
| JP2017045415A (ja) | 2015-08-28 | 2017-03-02 | 株式会社東芝 | メモリシステム |
| KR102669909B1 (ko) * | 2016-12-20 | 2024-05-29 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작 방법 |
-
2016
- 2016-07-22 JP JP2016144747A patent/JP2018014050A/ja active Pending
-
2017
- 2017-02-22 US US15/439,712 patent/US10732863B2/en active Active
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20050071592A1 (en) * | 2003-09-26 | 2005-03-31 | Decaro Richard V. | Selectable block protection for non-volatile memory |
| JP2005108273A (ja) * | 2003-09-26 | 2005-04-21 | Toshiba Corp | 不揮発性半導体記憶装置 |
| WO2005109444A1 (ja) * | 2004-05-11 | 2005-11-17 | Spansion Llc | 半導体装置および半導体装置に対する制御方法 |
| US20120124446A1 (en) * | 2007-10-17 | 2012-05-17 | Micron Technology, Inc. | System and method for data read of a synchronous serial interface nand |
| JP2010066818A (ja) * | 2008-09-08 | 2010-03-25 | Seiko Epson Corp | 半導体装置 |
| JP2014038593A (ja) * | 2012-06-22 | 2014-02-27 | Huabang Electronic Co Ltd | オンチップのnand型フラッシュメモリおよびその不良ブロック管理方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| US10732863B2 (en) | 2020-08-04 |
| US20180024763A1 (en) | 2018-01-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6527054B2 (ja) | メモリシステム | |
| JP2018014050A (ja) | メモリシステム | |
| JP6577302B2 (ja) | メモリシステム | |
| JP6542076B2 (ja) | メモリシステム | |
| US10235070B2 (en) | Memory system having a semiconductor memory device with protected blocks | |
| JP6542075B2 (ja) | メモリシステム | |
| US10353852B2 (en) | Memory system that stores data redundantly | |
| US9728275B2 (en) | Memory system that handles access to bad blocks | |
| TWI780348B (zh) | 記憶體系統 | |
| US9747994B2 (en) | Memory system | |
| US9620230B2 (en) | Memory device that performs an advance reading operation |
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: 20190820 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190823 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20200306 |