JP2016184398A - 不揮発性記憶装置、不揮発性記憶システム、及びメモリ制御方法 - Google Patents

不揮発性記憶装置、不揮発性記憶システム、及びメモリ制御方法 Download PDF

Info

Publication number
JP2016184398A
JP2016184398A JP2016027496A JP2016027496A JP2016184398A JP 2016184398 A JP2016184398 A JP 2016184398A JP 2016027496 A JP2016027496 A JP 2016027496A JP 2016027496 A JP2016027496 A JP 2016027496A JP 2016184398 A JP2016184398 A JP 2016184398A
Authority
JP
Japan
Prior art keywords
data
nonvolatile memory
memory
refresh
nonvolatile
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
Application number
JP2016027496A
Other languages
English (en)
Inventor
重一 小来田
Shigekazu Kokita
重一 小来田
宗 広和
Hirokazu So
広和 宗
本多 利行
Toshiyuki Honda
利行 本多
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Intellectual Property Management Co Ltd
Original Assignee
Panasonic Intellectual Property Management Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Panasonic Intellectual Property Management Co Ltd filed Critical Panasonic Intellectual Property Management Co Ltd
Publication of JP2016184398A publication Critical patent/JP2016184398A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0619Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • G11C16/3431Circuits or methods to detect disturbed nonvolatile memory cells, e.g. which still read as programmed but with threshold less than the program verify threshold or read as erased but with threshold greater than the erase verify threshold, and to reverse the disturbance via a refreshing programming or erasing step
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • G06F11/106Correcting systematically all correctable errors, i.e. scrubbing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits

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)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Dram (AREA)

Abstract

【課題】不揮発性記憶装置の長時間保管時における、より確実なデータの保持を実現する不揮発性記憶装置、不揮発性記憶システム、及びメモリ制御方法を提供する。【解決手段】不揮発性記憶装置101は、複数の領域を有し、領域にデータを記憶する不揮発性メモリ105と、不揮発性メモリ105に対しデータの書き込み及び読み出しを行うメモリコントローラ102と、を備える。メモリコントローラ102は、不揮発性メモリ105と接続するメモリI/F(interface)126と、不揮発性メモリ105を電源オフの状態で保管する場合の保存条件に基づいてデータの誤りビット数に対する閾値を算出する閾値計算部202と、閾値とデータの誤りビット数とに基づいて、データのリフレッシュ処理の要否を判定し、データのリフレッシュ処理が必要な場合はデータのリフレッシュ処理を実行するリフレッシュ制御部201と、を備える。【選択図】図2

Description

本開示は、フラッシュメモリ等の書き換え可能な不揮発性メモリをデータ記憶媒体として有するSolid State Drive(SSD)、半導体メモリカード等の不揮発性記憶装置、それを含む不揮発性記憶システム、及び不揮発性メモリのメモリ制御方法に関する。
フラッシュメモリ等の書き換え可能な不揮発性メモリを備える不揮発性記憶装置は、例えば、SSD、半導体メモリカードとして広く用いられている。また、かかる不揮発性記憶装置は、パーソナルコンピュータやデジタルカメラ等のAV機器と組み合わせた不揮発性記憶システムとして、その需要が広まっている。
SSDや半導体メモリカードは、データを記憶するフラッシュメモリと、それを制御するメモリコントローラから構成されている。メモリコントローラは、パーソナルコンピュータやデジタルカメラ等のアクセス装置からのデータの読み書き指示に従って、フラッシュメモリへのデータの読み書きを制御するデバイスである。通常、フラッシュメモリに対して、ディフェクトマネージメント(defect management:欠陥制御)、ウェアレベリング(wear levelling:書き換え回数の平準化)や、ECC(Error Correcting Code:誤り訂正符号)による誤り訂正処理等の制御が必要である。メモリコントローラは、これらの制御を担っている。フラッシュメモリの種別の代表的なものにNAND型がある。
近年、フラッシュメモリは、半導体製造プロセスの微細化やメモリセルの多値化により、データ保持期間が短くなる傾向にある。この課題に対し、例えば特許文献1に開示された方法がある。これは、不揮発性記憶装置がリフレッシュ処理の緊急度とデータ変化状態のレベルとの比較結果に応じたリフレッシュを行う、という方法である。この方法により、不揮発性記憶装置は、処理速度の低下を防ぎ、状況に応じた的確なリフレッシュを実現することができる。
特開2012−133642号
しかし、不揮発性記憶装置の不揮発性メモリの電源をオフした状態で長期間保管すると、その間にデータの保存状態が変化し、データの保持が困難になるおそれがある。
本開示は、不揮発性記憶装置の長時間保管時における、より確実なデータの保持を実現する不揮発性記憶装置、不揮発性記憶システム、及びメモリ制御方法を提供する。
本開示における不揮発性記憶装置は、複数の領域を有し、領域にデータを記憶する不揮発性メモリと、不揮発性メモリに対しデータの書き込み及び読み出しを行うメモリコントローラと、を備える。メモリコントローラは、不揮発性メモリと接続するメモリI/F(interface)と、不揮発性メモリを電源オフの状態で保管する場合の保存条件に基づいてデータの誤りビット数に対する閾値を算出する閾値計算部と、閾値とデータの誤りビット数とに基づいて、データのリフレッシュ処理の要否を判定し、データのリフレッシュ処理が必要な場合はデータのリフレッシュ処理を実行するリフレッシュ制御部と、を備える。
本開示における不揮発性記憶装置、不揮発性記憶システム、及びメモリ制御方法は、不揮発性記憶装置の長期間保管時における、より確実なデータの保持が実現できる。
図1は、実施の形態1における不揮発性記憶システムのブロック図である。 図2は、実施の形態1における不揮発性記憶装置の機能ブロック図である。 図3は、実施の形態1におけるアクセス装置のハードウェア構成を示すブロック図である。 図4は、実施の形態1における不揮発性記憶装置の不揮発性メモリの構成図である。 図5は、不揮発性メモリの誤りビット数の経時変化を説明する図である。 図6Aは、実施の形態1における閾値計算部の入出力情報の詳細を説明する図である。 図6Bは、実施の形態1における閾値計算部の保存条件の設定とメモリ書き換え回数の設定に対する閾値の関係を説明する図である。 図7は、実施の形態1におけるリフレッシュ判定部のリフレッシュ判定処理を説明するフローチャートである。 図8は、実施の形態1におけるリフレッシュ実行部のリフレッシュ実行処理を説明するフローチャートである。 図9は、実施の形態2における不揮発性記憶システムのブロック図である。
以下、適宜図面を参照しながら、実施の形態を詳細に説明する。但し、必要以上に詳細な説明は省略する場合がある。例えば、既によく知られた事項の詳細説明や実質的に同一の構成に対する重複説明を省略する場合がある。これは、以下の説明が不必要に冗長になるのを避け、当業者の理解を容易にするためである。
なお、添付図面および以下の説明は、当業者が本開示を十分に理解するために、提供されるのであって、これらにより特許請求の範囲に記載の主題を限定することは意図されていない。
(実施の形態1)
以下、図1〜図8を用いて、実施の形態1を説明する。
[1−1.構成]
[1−1−1.不揮発性記憶装置の構成]
図1は、実施の形態1における不揮発性記憶システム100のブロック図である。不揮発性記憶システム100は、不揮発性記憶装置101とアクセス装置110で構成される。図1において、不揮発性記憶装置101は、ハードウェア構成を示している。不揮発性記憶装置101は、メモリコントローラ102と不揮発性メモリ105とで構成される。不揮発性メモリ105は、半導体メモリであり、データを記憶する。メモリコントローラ102は、不揮発性メモリ105に対するデータの書き込み及び読み出しを制御する。
不揮発性記憶装置101は、アクセス装置110と接続する。不揮発性記憶装置101は、アクセス装置110からのコマンドに応じて、不揮発性メモリ105に対するデータの書き込み及び読み出しを実行する。
また、不揮発性記憶装置101は、後述するようにリフレッシュ処理の際には、アクセス装置110からリフレッシュ開始コマンドを受け取る。
ここで、リフレッシュ処理とは、不揮発性メモリ105に記憶されたデータが、メモリセルに蓄えられた電荷の時間経過による減少によって失わないように、不揮発性メモリ105内の別の領域にデータを書き換える処理である。
メモリコントローラ102は、CPU(Central Processing Unit)121と、RAM(Random Access Memory)122と、ROM(Read Only Memory)123と、外部I/F(interface)124と、ECC(Error Correcting Code:誤り訂正符号)回路125と、メモリI/F126とから構成され、これらはバス127を介して接続されている。
CPU121は、RAM122やROM123に記憶されたプログラムを実行する。RAM122は、CPU121が実行するプログラムの格納領域として、さらにプログラム実行中の適宜変化するパラメータのワーク領域として使用される。ROM123は、CPU121が実行するプログラムの格納領域として、さらにプログラム実行時の演算パラメータ等の固定データの格納領域として使用される。
外部I/F124は、アクセス装置110と接続し、データ等の送受信を行うインタフェースである。
ECC回路125は、不揮発性メモリ105で記憶するデータに対して誤り検出及び誤り訂正を行う。
メモリI/F126は、不揮発性メモリ105と接続し、データの書き込み及び読み出しを行うインタフェースである。
CPU121は、バス127を介して、RAM122、ROM123、外部I/F124、ECC回路125、メモリI/F126を制御する。
図2は、本実施の形態における不揮発性記憶装置101の機能ブロック図である。
メモリコントローラ102は、リフレッシュ制御部201と、閾値計算部202と、データ制御部203と、ECC処理部204と、外部I/F124と、メモリI/F126とから構成される。リフレッシュ制御部201は、リフレッシュ実行部205とリフレッシュ判定部206を含む。ECC処理部204は、ECC回路125である。
不揮発性メモリ105は、データ記憶領域207とメモリ書き換え回数領域208を含む。
アクセス装置110は、不揮発性記憶装置101に対して、データやデータの書き込みコマンド及び読み出しコマンド、後述するリフレッシュ開始コマンドと保存条件を送信する。不揮発性記憶装置101は、これらをメモリコントローラ102の外部I/F124を介して受信する。データ制御部203は、メモリI/F126を介して、不揮発性メモリ105のデータ記憶領域207のデータの書き込み及び読み出しを行い、不揮発性メモリ105の制御を行う。さらに、データ制御部203は、不揮発性メモリ105のデータの書き換え回数を計数し、メモリI/F126を介して、メモリ書き換え回数領域208に記憶するように、不揮発性メモリ105を制御する。
閾値計算部202は、アクセス装置110から通知される保存条件を、外部I/F124を介して受け取る。保存条件は、不揮発性記憶装置101の不揮発性メモリ105を電源オフの状態で長期間保管する時の条件であり、時間情報と、温度情報と、データユニットの重要度情報とを含む。保存条件の詳細については後述する。
ここでデータユニットは、メモリコントローラ102が不揮発性メモリ105を制御する単位である。このデータユニットは、不揮発性メモリ105のデータ記憶領域207に対応付けられる。この対応付けられるデータ記憶領域207を対象領域と呼ぶ。対象領域は、複数の物理ブロックで構成される。以下の説明において、データユニットの代わりに対象領域を用いて説明する。
閾値計算部202はさらに、不揮発性メモリ105のメモリ書き換え回数領域208から対象領域毎のメモリ書き換え回数を受け取る。
閾値計算部202は、保存条件と対象領域毎のメモリ書き換え回数とから、対象領域毎の閾値を計算し、リフレッシュ判定部206へ出力する。
リフレッシュ判定部206は、外部I/F124を介して、リフレッシュ開始コマンドを受け取る。リフレッシュ判定部206は、データ制御部203へ、不揮発性メモリ105のデータ記憶領域207の対象領域のデータの読み出しを指示する。データ制御部203は、リフレッシュ判定部206の指示に基づき、メモリI/F126を介して、不揮発性メモリ105のデータ記憶領域207の対象領域のデータを読み出し、読み出したデータをリフレッシュ判定部206に送付する。リフレッシュ判定部206は、対象領域のデータと対象領域毎の閾値からデータのリフレッシュが必要か否かを判定する。対象領域のデータのリフレッシュが必要である場合、リフレッシュ実行部205へ対象領域のリフレッシュを指示する。
リフレッシュ実行部205は、対象領域のリフレッシュ処理を行う。
[1−1−2.アクセス装置の構成]
図3は、本実施の形態におけるアクセス装置のハードウェア構成を示すブロック図である。
アクセス装置110は、不揮発性記憶装置101と接続可能な装置であり、例えばパーソナルコンピュータ、デジタルカメラ、テレビ等の電子機器である。
アクセス装置110は、CPU111と、RAM112と、ROM113と、外部I/F114と、入力部115と、表示部116と、記憶部117とで構成され、これらはバス118を介して接続されている。
CPU111は、RAM112やROM113に記憶されたアプリケーションプログラム等を実行する。RAM112は、CPU111が実行するプログラムの格納領域として、さらにプログラム実行中の適宜変化するパラメータのワーク領域として使用される。ROM113は、CPU111が実行するプログラムの格納領域として、さらにプログラム実行時の演算パラメータ等の固定データの格納領域として使用される。
外部I/F114は、不揮発性記憶装置101と接続し、データの送受信を行うインタフェースである。さらに、外部I/F114は、後述する保存条件を不揮発性記憶装置101に送信する。
入力部115は、CPU111に各種の指令を入力するためにユーザにより操作されるキー、ボタン、タッチパネル、マウス、キーボード等である。入力部115は、ユーザの操作により後述する保存条件の入力を受け付ける。
表示部116は、例えば液晶ディスプレイや有機EL(Electroluminescence)ディスプレイ等であり、各種情報をテキスト又はイメージ等により表示する。表示部116は、入力部115から入力される保存条件を表示する。
記憶部117は、情報記憶媒体としての例えばフラッシュメモリ、ハードディスクを有し、プログラムやデータを記憶する。記憶部117は、入力部115を介して入力された保存条件を記憶する。
[1−1−3.不揮発性メモリの構成]
図4は、本実施の形態における不揮発性記憶装置101の不揮発性メモリ105の構成図である。
不揮発性メモリ105は、複数の物理ブロック302から構成される。具体的には不揮発性メモリ105は、ブロック1、ブロック2、・・・、ブロックM(Mは、1以上の整数)で構成される。物理ブロック302は、不揮発性メモリ105におけるデータの消去単位であり、この単位でメモリコントローラ102の制御によりデータの消去が行われる。
物理ブロック302は、複数のページ303で構成される。具体的には、ブロックMは、ページ1、ページ2、・・・、ページN(Nは、1以上の整数)で構成される。ページ303は、不揮発性メモリ105におけるデータの書き込み及び読み出しの単位である。メモリコントローラ102の制御により不揮発性メモリ105にデータの書き込みを行う場合、ブロック単位でデータの消去を行った後、データを消去したブロック302において、ページ303の番号の小さい順にデータの書き込みを行う。
ページ303は、データ部304とECC部305とから構成される。データ部304は、アクセス装置110から送信されたデータを格納する領域である。ECC部305は、データ部304に格納するデータに対する誤り訂正符号を格納する領域である。メモリコントローラ102は、ECC部305に格納された誤り訂正符号に基づいて、データ部304に格納されたデータの誤りビット数と、誤りビット位置とを算出する。これにより、メモリコントローラ102のECC処理部204は、データ部304に格納されたデータの誤りビットを訂正する。
[1−2.リフレッシュ処理]
次に、本実施の形態における不揮発性記憶装置101のリフレッシュ処理について説明する。
[1−2−1.長期保管に対する可変閾値]
図5は、不揮発性メモリ105の誤りビット数の経時変化を説明する図である。横軸は時間を示し、縦軸は不揮発性メモリ105の誤りビット数を示している。
誤りビット数がECC訂正限界401を超えると、ECC処理部204は、誤り訂正が不可能になる。そのため、従来の不揮発性記憶装置は、自動リフレッシュの機能を有していた。自動リフレッシュは、従来の不揮発性記憶装置の不揮発性メモリの電源をオフからオンに変化した時に、不揮発性メモリに対して誤り検出し、誤りビット数が自動リフレッシュの閾値402以上ならばリフレッシュ処理を実行する、という機能である。従来の不揮発性記憶装置の不揮発性メモリの自動リフレッシュ後の誤りビット数404は、自動リフレッシュの閾値から時間経過とともに増えていく。そして、自動リフレッシュ後、時間経過を経て、ECC訂正限界401を超えるまでの期間が、自動リフレッシュ後のデータの保持可能期間405となる。しかし、従来の不揮発性記憶装置の不揮発性メモリを電源オフの状態で保管する期間が、自動リフレッシュ後のデータの保持可能期間405を超えてしまうと、データが保持できなくなる。
そこで、保持可能期間405を長くするために、自動リフレッシュの閾値402を低く設定する。自動リフレッシュの閾値402を低く設定すると、不揮発性記憶装置の不揮発性メモリの電源がオフからオンに変化した時には、低い設定の自動リフレッシュの閾値402でリフレッシュが行われる。そのため、リフレッシュ処理のために、不揮発性記憶装置の不揮発性メモリのデータ書き換え頻度が増え、その結果、不揮発性メモリが早期に劣化してしまう。
さらに、自動リフレッシュの閾値402をゼロに設定する。不揮発性記憶装置の不揮発性メモリの電源がオフからオンに変化した時には、不揮発性メモリの全領域をリフレッシュすることになり、保持可能期間405が最も長期間になる。しかし、データの書き換え回数が不揮発性メモリの全領域で1回増加し、その結果、不揮発性メモリが早期に劣化してしまう。
これに対し、本実施の形態では、不揮発性記憶装置101の不揮発性メモリ105を電源オフの状態で保管する前に、予定保管期間407に合わせて閾値403を可変に設定する。このように閾値403を設定し、不揮発性記憶装置101の不揮発性メモリ105のリフレッシュ処理を行った後で、不揮発性記憶装置101の不揮発性メモリ105の電源をオフ状態にする。つまり、不揮発性メモリ105のリフレッシュ処理は、対象領域のページの誤りビット数が閾値403以上であれば、リフレッシュ処理を実行する。
不揮発性記憶装置101の不揮発性メモリ105のリフレッシュ処理後の誤りビット数406は、リフレッシュ処理後の閾値403から時間経過とともに増えていく。そして、リフレッシュ後、時間経過を経て、ECC訂正限界401を超えるまでの期間が、予定保管期間407となる。
このように不揮発性記憶装置101の不揮発性メモリ105の電源をオフの状態の予定保管期間に対応して閾値403を設けることで、不揮発性記憶装置101の不揮発性メモリ105の電源オフの状態で保管期間中に対象領域のページの誤りビット数がECC訂正限界401を超えず、データが保持できる。
[1−2−2.閾値の算出]
次に、本実施の形態における閾値403の算出方法について説明する。図6Aは、本実施の形態における閾値計算部202の入出力情報の詳細を説明する図である。
閾値計算部202は、アクセス装置110から送信される保存条件を受け取る。閾値計算部202はまた、不揮発性メモリ105の対象領域毎の書き換え回数をメモリ書き換え回数領域208より受け取り、不揮発性メモリ105の対象領域毎の閾値403を算出する。
保存条件として、時間情報と、温度情報と、対象領域の重要度情報とを含む。ユーザは、アクセス装置110の入力部115から保存条件を設定する。
時間情報には、不揮発性記憶装置101の不揮発性メモリ105を電源オフの状態で保管する予定保管期間を設定する。例えば、不揮発性記憶装置101の不揮発性メモリ105を1年間電源オフの状態のまま倉庫で保存する場合は、「1年」を設定する。
温度情報には、不揮発性記憶装置101の不揮発性メモリ105を電源オフの状態で保管する時の予定保管温度を設定する。例えば、不揮発性記憶装置101を保管する倉庫の所在地の最高気温が35℃の場合は、「35℃」を設定する。
対象領域の重要度情報には、対象領域に含まれるデータの重要度を設定する。対象領域に重要度の高いデータが存在する場合、その対象領域の重要度を他の対象領域よりも高く設定する。例えば、重要度として重要度の高い順からランク1、ランク2、・・、ランク5とした場合、最も重要度の高いデータを含む対象領域の重要度を「ランク1」に設定する。
また、例えば、不揮発性記憶装置101が複数のパーティションに区切られてアクセス装置110に管理されている場合、特定のパーティションの重要度が高いとき、特定のパーティションのデータに対応する対象領域の重要度を高く設定する。
保存条件は、時間情報としての予定保管期間だけでなく、温度情報と対象領域の重要度を追加することで、不揮発性記憶装置101の不揮発性メモリ105の電源をオフの状態の条件に対して、閾値の算出の精度が向上できる。
メモリ書き換え回数は、不揮発性メモリ105の対象領域毎に、メモリ書き換え回数領域208に記憶されている。メモリコントローラ102がメモリ書き換え回数を管理している。メモリコントローラ102がウェアレベリングの機能を有する場合、書き換え回数を使用する。
なお、閾値403は、対象領域毎に算出してもよいし、全て又は複数の対象領域をまとめて算出してもよい。
なお、データユニットと対象領域は、これらを対応付けるテーブルに動的に対応付けてもよい。この場合、データユニットに含まれるデータの重要度は、このテーブルを用いて対象領域の重要度に対応付けられる。
図6Bは、本実施の形態の閾値計算部202における保存条件の設定とメモリ書き換え回数に対する閾値の関係を説明する図である。
時間情報の設定が相対的に長い場合、例えば、所定の基準時間よりも長い場合、閾値計算部202は、閾値403を相対的に小さく計算する。これは、誤りビット数がECC訂正限界401を超えるまでの時間を相対的に長くしなければならないからである。
温度情報の設定が相対的に高い場合、例えば、所定の基準温度よりも高い場合、閾値計算部202は、閾値403を相対的に小さく計算する。これは、温度が高いほど、不揮発性メモリ105のデータ保持時間が短くなり、誤りビット数の増加が加速するため、ECC訂正限界401を超えるまでの時間を相対的に長くしなければならないからである。
対象領域の重要度情報の設定が相対的に高い場合、例えば、所定の基準重要度や全領域の代表値、例えば、平均値や中央値よりも重要度が高い場合、閾値計算部202は、閾値403を相対的に小さく計算する。これは、重要なデータをより安全に保存するためである。
メモリの書き換え回数が相対的に多い場合、例えば、所定の基準回数や全領域の代表値、例えば、平均値、中央値よりも多い場合、閾値計算部202は、閾値403を相対的に小さく計算する。これは、不揮発性メモリ105は、書き換え回数が多いほど、誤りビット数の増加が加速し、データ保持期間が短くなるため、ECC訂正限界401を超えるまでの時間を相対的に長くしなければならないからである。
[1−2−3.リフレッシュ判定処理]
次に、リフレッシュ判定部206におけるリフレッシュ判定処理について説明する。図7は、本実施の形態におけるリフレッシュ判定部206のリフレッシュ判定処理を説明するフローチャートである。リフレッシュ判定部206は、不揮発性メモリ105の対象領域毎にその対象領域のリフレッシュが必要であるかを判定する。リフレッシュ判定処理は、不揮発性メモリ105の全ての対象領域に対して実施する。以下のリフレッシュ判定処理の説明は、1つの対象領域に対して実施する処理である。
(S701)リフレッシュ判定部206は、不揮発性メモリ105の一つの対象領域について、データの読み出し単位であるページ303を読み出し、読み出したページ303を判定対象のページ303とする。
(S702)リフレッシュ判定部206は、判定対象のページ303に対して、ECC処理部204に判定対象のページ303のECC部305の誤り訂正符号用いて、判定対象のページ303のデータ部304のデータの誤りビット数を算出するように制御する。
(S703)リフレッシュ判定部206は、算出した誤りビット数を閾値403と比較し、閾値403以上であるか否かを判定する。算出した誤りビット数が閾値403以上の場合(YESの場合)、S704へ進む。算出した誤りビット数が閾値403未満の場合(NOの場合)、S705へ進む。
(S704)リフレッシュ判定部206は、対象領域はリフレッシュ必要、と判定する。
(S705)リフレッシュ判定部206は、判定対象のページ303が対象領域内で最終ページであるかを判定する。判定対象のページ303が対象領域内で最終ページである場合(YESの場合)、S706へ進む。判定対象のページ303が対象領域内で最終ページでない場合(NOの場合)、S701へ戻る。
(S706)リフレッシュ判定部206は、対象領域はリフレッシュ不要、と判定する。
全ての対象領域に対して、上記のリフレッシュ判定処理を行う。
[1−2−4.リフレッシュ実行処理]
次に、リフレッシュ判定部206においてリフレッシュ必要と判定された対象領域に対するリフレッシュ実行処理について説明する。図8は、本実施の形態におけるリフレッシュ実行部205のリフレッシュ実行処理を説明するフローチャートである。リフレッシュ実行部205は、リフレッシュ判定部206でリフレッシュ必要と判定した対象領域のリフレッシュを実行する。リフレッシュ実行処理は、リフレッシュ判定部206でリフレッシュ必要と判定した全ての対象領域に対して実施する。以下のリフレッシュ実行処理の説明は、1つの対象領域に対して実行する処理である。
(S801)リフレッシュ実行部205は、一つの対象領域について、データの読み出し単位であるページ303を読み出し、実行対象のページ303とする。
(S802)リフレッシュ実行部205は、ECC処理部204に実行対象のページ303に対して、実行対象のページ303のECC部305の誤り訂正符号を用いて、実行対象のページ303のデータ部304のデータの誤りビットを訂正するように制御する。
(S803)次に、リフレッシュ実行部205は、データ制御部203へ誤り訂正されたデータを不揮発性メモリ105の新たな領域のページ303に書き込むように制御する。さらに、リフレッシュ実行部205は、データ制御部203へ新たな領域に対して、データが消去された空きブロックを割り当てるように制御する。
(S804)リフレッシュ実行部205は、実行対象のページ303が対象領域内で最終ページであるか否かを判定する。実行対象のページ303が対象領域内で最終ページである場合(YESの場合)、S805へ進む。実行対象のページ303が対象領域内で最終ページでない場合(NOの場合)、S801へ戻る。
(S805)リフレッシュ実行部205は、新たな領域を有効にする。つまり、S803で新たな領域に対して物理ブロックを割り当てられたので、これらの新たな領域を対象領域とする。これにより、メモリコントローラ102は新たな対象領域を制御可能にする。
リフレッシュ判定部206でリフレッシュ必要と判定した全ての対象領域に対して、上述のリフレッシュ実行処理を行う。
なお、リフレッシュ判定処理とリフレッシュ実行処理は、リフレッシュ判定部206で全ての領域に対してリフレッシュ判定処理を行った後に、リフレッシュ実行部205でリフレッシュ実行処理を行ってもよいし、リフレッシュ判定部206のリフレッシュ判定処理で一つの対象領域がリフレッシュ必要と判定される毎にリフレッシュ実行部205でリフレッシュ実行処理を行ってもよい。
なお、閾値計算部202とリフレッシュ制御部201はハードウェアとソフトウェアの何れで構成してもよい。
[1−3.効果等]
本実施の形態の不揮発性記憶装置は、複数の領域を有し、領域にデータを記憶する不揮発性メモリと、不揮発性メモリに対しデータの書き込み及び読み出しを行うメモリコントローラと、を備える。メモリコントローラは、不揮発性メモリと接続するメモリI/F(interface)と、不揮発性メモリを電源オフの状態で保管する場合の保存条件に基づいてデータの誤りビット数に対する閾値を算出する閾値計算部と、閾値とデータの誤りビット数とに基づいて、データのリフレッシュ処理の要否を判定し、データのリフレッシュ処理が必要な場合はデータのリフレッシュ処理を実行するリフレッシュ制御部と、を備える。
さらに、本実施の形態のメモリ制御方法は、データが記憶される不揮発性メモリのメモリ制御方法であって、不揮発性メモリを電源オフの状態で保管する場合の保存条件に基づいてデータの誤りビット数に対する閾値を算出し、閾値とデータの誤りビット数に基づいてリフレッシュ処理の要否を判定し、データのリフレッシュ処理が必要な場合はデータのリフレッシュ処理を実行する。
これにより、不揮発性メモリを電源オフの状態で保管する場合の保存条件に応じて、不揮発性メモリのデータのリフレッシュ処理を実施することできる。不揮発性メモリを電源オフの状態で長期間保管する前に、このリフレッシュ処理を実施すれば、保管期間中に誤りビット数がECC訂正限界を超えず、不揮発性メモリのデータが保持できる。
また、本実施の形態の不揮発性記憶装置は、閾値計算部は、不揮発性メモリの領域毎に閾値を算出する。
また、本実施の形態の不揮発性記憶装置は、保存条件は、領域に含まれるデータの重要度情報を含む。
さらに、本実施の形態の不揮発性記憶装置は、不揮発性メモリは、領域毎の書き換え回数が記憶され、閾値計算部は、書き換え回数に基づいて閾値を算出する。
これにより、不揮発性記憶装置の不揮発性メモリの領域毎に閾値を算出し、不揮発性メモリの領域毎にリフレッシュ処理の要否を判定できるため、不揮発性メモリの領域毎にデータの劣化を防ぐことができる。
また、保存条件としてデータの重要度情報から閾値を算出することで、データの重要度情報に応じてデータの劣化を防ぐことができる。
さらに、対象領域毎の書き換え回数から閾値を算出することで、対象領域毎の書き換え回数に応じてデータの劣化を防ぐことができる。
また、本実施の形態の不揮発性記憶装置は、保存条件は、不揮発性メモリを電源オフの状態で保管する予定保管期間及び不揮発性メモリを電源オフの状態で保管する予定保管温度のうち少なくとも一つを含む。
これにより、不揮発性メモリを電源オフの状態で保管する予定保管期間及び不揮発性メモリを電源オフの状態で保管する予定保管温度から閾値を計算することで、不揮発性メモリの保管状況に応じてデータのリフレッシュ処理を実行でき、不揮発性メモリのデータの劣化を防ぐことができる。
さらに、本実施の形態の不揮発性記憶装置は、アクセス装置と接続する外部I/Fをさらに備え、外部I/Fは、アクセス装置から保存条件を受け取り、閾値計算部に保存条件を送付する。
これにより、保存条件を外部装置であるアクセス装置から設定できる。
(実施の形態2)
以下、図9を用いて、実施の形態2を説明する。
[2−1.構成]
図9は、実施の形態2における不揮発性記憶システム900のブロック図である。不揮発性記憶システム900は、不揮発性記憶装置901とアクセス装置910で構成される。不揮発性記憶装置901のハードウェア構成とアクセス装置910のハードウェア構成は、実施の形態1の構成と同じである。以下の説明は、不揮発性記憶装置901における機能とアクセス装置910の機能のうち、実施の形態1と異なる機能について詳細に説明し、実施の形態1と同じ機能については実施の形態1と同じ符号を付し、その説明を省略する。
本実施の形態の不揮発性記憶システム900の実施の形態1の不揮発性記憶システム100と異なる点は、アクセス装置910で閾値の算出を行う点である。
アクセス装置910は、入力部911と、制御部912と、閾値計算部913と外部I/F114とで構成される。アクセス装置910のこれらの機能構成は、リフレッシュ処理に関する機能構成であり、他の機能に関する構成は省略している。アクセス装置910は、不揮発性記憶装置901に対し、データやデータの書き込み及び読み出しコマンド等を送信する。
入力部911により、ユーザはアクセス装置910に各種の指令を入力する。入力部911へ、データやデータの書き込み及び読み出しコマンド等を入力する。リフレッシュ処理に関しては、入力部911へリフレッシュ開始コマンドと後述する保存条件を入力する。
制御部912は、入力部911に入力された指令を制御する。具体的には、指令がデータやデータの書き込み及び読み出しコマンドやリフレッシュ開始コマンドであれば、これらの指令を外部I/F114を介して、不揮発性記憶装置901へ送付する。指令が保管条件であれば、閾値計算部913へ送付する。
閾値計算部913は、保存条件に基づいて、対象領域毎の閾値を算出する。保存条件は、不揮発性記憶装置901の不揮発性メモリ905の電源をオフの状態で長期間保管する時の条件であり、時間情報と、温度情報と、対象領域の重要度情報とを含む。
不揮発性記憶装置901は、メモリコントローラ902と不揮発性メモリ905とで構成される。不揮発性メモリ905は、半導体メモリであり、データを記憶する。メモリコントローラ902は、不揮発性メモリ905に対するデータの書き込み及び読み出しを制御する。
メモリコントローラ902は、リフレッシュ制御部1001と、データ制御部1003と、ECC処理部204と、外部I/F124と、メモリI/F126とから構成される。リフレッシュ制御部1001は、リフレッシュ実行部205とリフレッシュ判定部1006を含む。
アクセス装置910から不揮発性記憶装置901に送信された、データやデータの書き込みコマンド及び読み出しコマンド、リフレッシュ開始コマンドと対象領域毎の閾値を、不揮発性記憶装置901は、これらをメモリコントローラ902の外部I/F124を介して受信する。
データ制御部1003は、メモリI/F126を介して、不揮発性メモリ905のデータの書き込み及び読み出しを行い、不揮発性メモリ905の制御を行う。
リフレッシュ判定部1006は、外部I/F124を介して、リフレッシュ開始コマンド及び対象領域毎の閾値を受け取る。リフレッシュ判定部1006は、データ制御部1003へ、不揮発性メモリ905の対象領域のデータの読み出しを指示する。データ制御部1003は、リフレッシュ判定部1006の指示に基づき、メモリI/F126を介して、不揮発性メモリ105の対象領域のデータの読み出し、読み出したデータをリフレッシュ判定部1006に送付する。リフレッシュ判定部1006は、対象領域のデータと対象領域毎の閾値からデータのリフレッシュが必要か否かを判定する。対象領域のデータのリフレッシュが必要である場合、リフレッシュ実行部205へ対象領域のリフレッシュを指示する。
リフレッシュ実行部205は、対象領域のリフレッシュを実行する。
[2−2.リフレッシュ処理]
次に、本実施の形態における不揮発性記憶システム900のリフレッシュ処理について説明する。
[2−2−1.閾値の算出]
次に、本実施の形態における閾値の算出方法について説明する。
アクセス装置910の閾値計算部913は、保存条件を受け取る。閾値計算部913は、保存条件に基づき不揮発性メモリ905の対象領域毎の閾値を算出する。
保存条件として、時間情報と、温度情報と、対象領域の重要度情報とを含む。ユーザは、アクセス装置910の入力部911から保存条件を設定する。
時間情報には、不揮発性記憶装置901の不揮発性メモリ905を電源オフの状態で保管する予定保管期間を設定する。例えば、不揮発性記憶装置901の不揮発性メモリ905を1年間電源オフの状態のまま倉庫で保存する場合は、「1年」を設定する。
温度情報には、不揮発性記憶装置901の不揮発性メモリ905を電源オフの状態で保管する時の予定保管温度を設定する。例えば、不揮発性記憶装置901を保管する倉庫の所在地の最高気温が35℃の場合は、「35℃」を設定する。
対象領域の重要度情報には、対象領域に含まれるデータの重要度を設定する。対象領域に重要度の高いデータが存在する場合、その対象領域の重要度を他の対象領域よりも高く設定する。例えば、重要度として重要度の高い順からランク1、ランク2、・・、ランク5とした場合、最も重要度の高いデータを含む対象領域の重要度を「ランク1」に設定する。
また、例えば、不揮発性記憶装置901が複数のパーティションに区切られてアクセス装置910に管理されている場合、特定のパーティションの重要度が高いとき、特定のパーティションのデータに対応する対象領域の重要度を高く設定する。
なお、閾値は、対象領域毎に算出してもよいし、全て又は複数の対象領域をまとめて算出してもよい。
なお、データユニットと対象領域は、これらを対応付けるテーブルに動的に対応付けられる場合がある。この場合、データユニットに含まれるデータの重要度は、このテーブルを用いて対象領域の重要度に対応付けられる。
[2−2−2.リフレッシュ判定処理]
次に、リフレッシュ判定部1006におけるリフレッシュ判定処理について説明する。リフレッシュ判定部1006の実施の形態1のリフレッシュ判定部206と異なる点は、受け取る対象領域毎の閾値がアクセス装置910の閾値計算部913で算出されている点である。リフレッシュ判定部1006は、不揮発性メモリ905の対象領域毎にその対象領域のリフレッシュが必要であるかを判定する。リフレッシュ判定処理は、不揮発性メモリ905の全ての対象領域に対して実施する。
[2−2−3.リフレッシュ実行処理]
次に、リフレッシュ判定部1006においてリフレッシュ必要と判定された対象領域に対するリフレッシュ実行処理について説明する。リフレッシュ実行部205は、リフレッシュ判定部1006でリフレッシュ必要と判定した対象領域のリフレッシュを実行する。リフレッシュ実行処理は、リフレッシュ判定部1006でリフレッシュ必要と判定した全ての対象領域に対して実施する。リフレッシュ実行部205におけるリフレッシュ実行処理は、実施の形態1と同じ処理である。
なお、リフレッシュ判定処理とリフレッシュ実行処理は、リフレッシュ判定部1006で全ての領域に対してリフレッシュ判定処理を行った後に、リフレッシュ実行部205でリフレッシュ実行処理を行ってもよいし、リフレッシュ判定部1006のリフレッシュ判定処理で一つの対象領域がリフレッシュ必要と判定される毎にリフレッシュ実行部205でリフレッシュ実行処理を行ってもよい。
なお、アクセス装置910の閾値計算部913と不揮発性記憶装置901のメモリコントローラ902のリフレッシュ制御部1001はハードウェアとソフトウェアの何れでも構成することが可能である。
[2−3.効果等]
本実施の形態における不揮発性記憶システムは、アクセス装置と、アクセス装置と接続する不揮発性記憶装置と、を備える。不揮発性記憶装置は、複数の領域を有し、領域にデータを記憶する不揮発性メモリと、不揮発性メモリに対しデータの書き込み及び読み出しを行うメモリコントローラと、を含む。アクセス装置は、不揮発性メモリを電源オフの状態で保管する場合の保存条件に基づいてデータの誤りビット数に対する閾値を算出し、閾値を不揮発性記憶装置に送付する。メモリコントローラは、閾値とデータの誤りビット数とに基づいてデータのリフレッシュ処理の要否を判定し、データのリフレッシュ処理が必要な場合はデータのリフレッシュ処理を実行するリフレッシュ制御部を含む。
これにより、実施の形態1における効果と同様に、不揮発性メモリを電源オフの状態で保管する場合の保存条件に応じて、不揮発性メモリのデータのリフレッシュ処理を実施することできる。不揮発性メモリを電源オフの状態で長期間保管する前に、このリフレッシュ処理を実施すれば、保管期間中に誤りビット数がECC訂正限界を超えず、データが保持できる。
さらに、本実施の形態におけるアクセス装置は閾値計算部を含む構成であるので、閾値計算部が不揮発性記憶装置に含まれる構成の場合と比較すると、閾値計算部の設定変更が容易である。
(他の実施の形態)
以上のように、本開示の例示として、実施の形態1及び2を説明した。しかしながら、本開示における技術は、これに限定されず、適宜、変更、置き換え、付加、省略等を行った実施の形態にも適用可能である。また、上記実施の形態1及び2で説明した各構成要素を組み合わせて、新たな実施の形態とすることも可能である。
そこで、以下、他の実施の形態を例示する。
実施の形態1において、メモリコントローラ102は、時間情報と、温度情報と、対象領域の重要度情報と、不揮発性メモリ105の対象領域毎の書き換え回数とを用いて閾値403を計算したが、これに限定されない。これらのうち一つ又は一部のみを用いて閾値403を計算してもよい。
実施の形態2において、アクセス装置910は、時間情報と、温度情報と、対象領域毎の重要度情報とを用いて閾値を計算したが、これに限定されない。これらのうち一つ又は一部のみを用いて閾値を計算してもよい。
実施の形態1及び2で説明したメモリコントローラ102、902及びアクセス装置110、910におけるハードウェア構成は、LSI(Large−Scale Integration)などの半導体装置により個別に1チップ化されても良いし、一部又は全部を含むように1チップ化されても良い。なお、ここでは、LSIとしたが、集積度の違い等により、IC(Integrated Circuit)、VLSI(Very Large Scale Integration)、ULSI(Ultra−Large Scale Integration)、システムLSIと呼称されることもある。また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後に、プログラム可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用しても良い。
実施の形態1及び2で説明したメモリコントローラ102、902及びアクセス装置110、910における機能ブロックの一部又は全部は、プログラムにより実現されるものであってもよい。
実施の形態1及び2におけるリフレッシュ処理の実行順序は、上記実施形態の実行順序に制限されるものではなく、本開示の要旨を逸脱しない範囲で、実行順序を入れ替えることができる。
実施の形態1におけるメモリコントローラ102、メモリコントローラ102と不揮発性メモリ105とを含む不揮発性記憶装置101、実施の形態2における不揮発性記憶装置901とアクセス装置910とを含む不揮発性記憶システム900、実施の形態1及び2において実行される不揮発性メモリ105、905のリフレッシュ処理を含むメモリ制御方法、メモリ制御方法をコンピュータに実行させるコンピュータプログラム、及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体は、本開示の範囲に含まれる。ここで、コンピュータ読み取り可能な記録媒体としては、例えば、フレキシブルディスク、ハードディスク、CD−ROM(Compact Disk Read Only Memory)、MO(Magneto−Optical disk)、DVD(Digital Versatile Disk)、DVD−ROM(DVD Read Only Memory)、DVD−RAM(DVD Random Access Memory)、BD(Blu−ray(登録商標) Disc)、半導体メモリを挙げることができる。
上記コンピュータプログラムは、上記記録媒体に記録されたものに限られず、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク等を経由して伝送されるものであってもよい。
本開示は、フラッシュメモリ等の書き換え可能な不揮発性メモリをデータ記憶媒体として有するSSD、半導体メモリカード等の不揮発性記憶装置、それを含む不揮発性記憶システム、及び不揮発性メモリのメモリ制御方法に適用可能である。
100,900 不揮発性記憶システム
101,901 不揮発性記憶装置
102,902 メモリコントローラ
105,905 不揮発性メモリ
110,910 アクセス装置
111 CPU
112 RAM
113 ROM
114 外部I/F
115,911 入力部
116 表示部
117 記憶部
118 バス
121 CPU
122 RAM
123 ROM
124 外部I/F
125 ECC回路
126 メモリI/F
127 バス
201,1001 リフレッシュ制御部
202,913 閾値計算部
203,1003 データ制御部
204 ECC処理部
205 リフレッシュ実行部
206,1006 リフレッシュ判定部
207 データ記憶領域
208 メモリ書き換え回数領域
912 制御部

Claims (12)

  1. 複数の領域を有し、前記領域にデータを記憶する不揮発性メモリと、
    前記不揮発性メモリに対し前記データの書き込み及び読み出しを行うメモリコントローラと、を備え、
    前記メモリコントローラは、
    前記不揮発性メモリと接続するメモリI/F(interface)と、
    前記不揮発性メモリを電源オフの状態で保管する場合の保存条件に基づいて前記データの誤りビット数に対する閾値を算出する閾値計算部と、
    前記閾値と前記データの誤りビット数とに基づいて、前記データのリフレッシュ処理の要否を判定し、前記データのリフレッシュ処理が必要な場合は前記データのリフレッシュ処理を実行するリフレッシュ制御部と、を備える、
    不揮発性記憶装置。
  2. 前記閾値計算部は、前記不揮発性メモリの前記領域毎に閾値を算出する、
    請求項1記載の不揮発性記憶装置。
  3. 前記保存条件は、前記領域に含まれるデータの重要度情報を含む、
    請求項2記載の不揮発性記憶装置。
  4. 前記保存条件は、前記不揮発性メモリを電源オフの状態で保管する予定保管期間及び前記不揮発性メモリを電源オフの状態で保管する予定保管温度のうち少なくとも一つを含む、
    請求項1記載の不揮発性記憶装置。
  5. 前記不揮発性メモリは、前記領域毎の書き換え回数が記憶され、
    前記閾値計算部は、前記書き換え回数に基づいて前記閾値を算出する、
    請求項2記載の不揮発性記憶装置。
  6. アクセス装置と接続する外部I/Fをさらに備え、
    前記外部I/Fは、前記アクセス装置から前記保存条件を受け取り、前記閾値計算部に前記保存条件を送付する、
    請求項1に記載の不揮発性記憶装置。
  7. アクセス装置と、
    前記アクセス装置と接続する不揮発性記憶装置と、を備える不揮発性記憶システムであって、
    前記不揮発性記憶装置は、
    複数の領域を有し、前記領域にデータを記憶する不揮発性メモリと、
    前記不揮発性メモリに対しデータの書き込み及び読み出しを行うメモリコントローラと、を含み、
    前記アクセス装置は、
    前記不揮発性メモリを電源オフの状態で保管する場合の保存条件に基づいて前記データの誤りビット数に対する閾値を算出し、前記閾値を前記不揮発性記憶装置に送付し、
    前記メモリコントローラは、前記閾値と前記データの誤りビット数とに基づいて前記データのリフレッシュ処理の要否を判定し、前記データのリフレッシュ処理が必要な場合は前記データのリフレッシュ処理を実行するリフレッシュ制御部を含む、
    不揮発性記憶システム。
  8. 前記アクセス装置は、前記不揮発性メモリの前記領域毎に閾値を算出する、
    請求項7記載の不揮発性記憶システム。
  9. 前記保存条件は、前記領域に含まれるデータの重要度情報を含む、
    請求項8記載の不揮発性記憶システム。
  10. 前記保存条件は、前記不揮発性メモリを電源オフの状態で保管する予定保管期間及び前記不揮発性メモリを電源オフの状態で保管する予定保管温度のうち少なくとも一つを含む、
    請求項7記載の不揮発性記憶システム。
  11. 前記アクセス装置は、前記保存条件を入力し、前記保存条件を前記不揮発性記憶装置へ送付する、
    請求項7記載の不揮発性記憶システム。
  12. データが記憶される不揮発性メモリのメモリ制御方法であって、
    前記不揮発性メモリを電源オフの状態で保管する場合の保存条件に基づいて前記データの誤りビット数に対する閾値を算出し、
    前記閾値と前記データの誤りビット数に基づいてリフレッシュ処理の要否を判定し、
    前記データのリフレッシュ処理が必要な場合は前記データのリフレッシュ処理を実行する、
    メモリ制御方法。
JP2016027496A 2015-03-26 2016-02-17 不揮発性記憶装置、不揮発性記憶システム、及びメモリ制御方法 Pending JP2016184398A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015064590 2015-03-26
JP2015064590 2015-03-26

Publications (1)

Publication Number Publication Date
JP2016184398A true JP2016184398A (ja) 2016-10-20

Family

ID=56975391

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016027496A Pending JP2016184398A (ja) 2015-03-26 2016-02-17 不揮発性記憶装置、不揮発性記憶システム、及びメモリ制御方法

Country Status (2)

Country Link
US (1) US9965202B2 (ja)
JP (1) JP2016184398A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018220714A1 (ja) * 2017-05-30 2018-12-06 株式会社日立製作所 ストレージ装置およびメモリデバイス制御方法
KR20200124324A (ko) * 2018-03-23 2020-11-02 마이크론 테크놀로지, 인크 메모리 미디어 저하 검출 및 완화 방법 및 이를 이용하는 메모리 디바이스
CN113496728A (zh) * 2020-03-19 2021-10-12 爱思开海力士有限公司 存储器系统及其操作方法

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI639920B (zh) * 2017-11-17 2018-11-01 財團法人工業技術研究院 記憶體控制器及其控制方法以及記憶體及其控制方法
KR102417696B1 (ko) * 2018-03-20 2022-07-07 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작방법
TWI671632B (zh) * 2018-10-24 2019-09-11 財團法人工業技術研究院 記憶體裝置及其復新資訊同步方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7173852B2 (en) 2003-10-03 2007-02-06 Sandisk Corporation Corrected data storage and handling methods
JP2012133642A (ja) 2010-12-22 2012-07-12 Sony Corp メモリ装置、メモリ制御方法、およびプログラム
US8645770B2 (en) * 2012-01-18 2014-02-04 Apple Inc. Systems and methods for proactively refreshing nonvolatile memory
KR102244618B1 (ko) * 2014-02-21 2021-04-26 삼성전자 주식회사 플래시 메모리 시스템 및 플래시 메모리 시스템의 제어 방법
US9583177B2 (en) * 2014-12-10 2017-02-28 Semiconductor Energy Laboratory Co., Ltd. Memory device and semiconductor device including memory device

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018220714A1 (ja) * 2017-05-30 2018-12-06 株式会社日立製作所 ストレージ装置およびメモリデバイス制御方法
KR20200124324A (ko) * 2018-03-23 2020-11-02 마이크론 테크놀로지, 인크 메모리 미디어 저하 검출 및 완화 방법 및 이를 이용하는 메모리 디바이스
KR102282889B1 (ko) 2018-03-23 2021-07-29 마이크론 테크놀로지, 인크 메모리 미디어 저하 검출 및 완화 방법 및 이를 이용하는 메모리 디바이스
CN113496728A (zh) * 2020-03-19 2021-10-12 爱思开海力士有限公司 存储器系统及其操作方法
CN113496728B (zh) * 2020-03-19 2024-05-17 爱思开海力士有限公司 存储器系统及其操作方法

Also Published As

Publication number Publication date
US9965202B2 (en) 2018-05-08
US20160283150A1 (en) 2016-09-29

Similar Documents

Publication Publication Date Title
JP2016184398A (ja) 不揮発性記憶装置、不揮発性記憶システム、及びメモリ制御方法
US10599345B2 (en) Memory device that writes data into a block based on time passage since erasure of data from the block
US9778878B2 (en) Method and system for limiting write command execution
US9880605B2 (en) Method and system for throttling power consumption
US9946478B2 (en) Memory managing method, memory control circuit unit and memory storage apparatus
US20160117105A1 (en) Method and System for Throttling Bandwidth Based on Temperature
US20190012228A1 (en) Data reading method and storage controller
US10241678B2 (en) Data storage device and data writing method capable of avoiding repeated write operation of a TLC block when interrupted
US9721669B2 (en) Data protection method, memory control circuit unit and memory storage apparatus
US10620874B2 (en) Memory management method, memory control circuit unit and memory storage apparatus
US10628082B2 (en) Data reading method and storage controller
US10141071B2 (en) Predictive count fail byte (CFBYTE) for non-volatile memory
US11010289B2 (en) Data storage device and operating method thereof
JP6961759B2 (ja) メモリデバイスにおけるリフレッシュ管理を実行するための方法、関連するメモリデバイス及びそのコントローラ
US20110238897A1 (en) Memory system, personal computer, and method of controlling the memory system
KR20140134497A (ko) 메모리 시스템 및 그것의 캐시 관리 방법
JP2016184402A (ja) メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム、及びメモリ制御方法
TW202026883A (zh) 快閃記憶體控制器、管理快閃記憶體模組的方法及相關的電子裝置
JP5858081B2 (ja) メモリコントローラ、メモリシステム及びメモリ制御方法
TWI550625B (zh) 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元
US11733911B2 (en) Storage device and storage device management method
JP6972243B1 (ja) メモリドライブ装置、情報処理装置、及び制御方法
US11086546B1 (en) Preserve write for solid-state drives
CN117636967A (zh) 存储器控制方法、存储器存储装置及存储器控制电路单元
CN116126210A (zh) 数据存取方法、存储器存储装置及存储器控制器

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20160526

RD01 Notification of change of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7421

Effective date: 20190116

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190206

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190710

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190820

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20200317