JP2013117840A - メモリアクセス制御装置および方法 - Google Patents

メモリアクセス制御装置および方法 Download PDF

Info

Publication number
JP2013117840A
JP2013117840A JP2011264723A JP2011264723A JP2013117840A JP 2013117840 A JP2013117840 A JP 2013117840A JP 2011264723 A JP2011264723 A JP 2011264723A JP 2011264723 A JP2011264723 A JP 2011264723A JP 2013117840 A JP2013117840 A JP 2013117840A
Authority
JP
Japan
Prior art keywords
block
page
access control
read
inspection target
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
Application number
JP2011264723A
Other languages
English (en)
Other versions
JP5815388B2 (ja
Inventor
Yuko Tamagawa
裕子 玉川
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.)
MegaChips Corp
Original Assignee
MegaChips Corp
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 MegaChips Corp filed Critical MegaChips Corp
Priority to JP2011264723A priority Critical patent/JP5815388B2/ja
Priority to US13/684,823 priority patent/US9323660B2/en
Publication of JP2013117840A publication Critical patent/JP2013117840A/ja
Application granted granted Critical
Publication of JP5815388B2 publication Critical patent/JP5815388B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • 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
    • 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/0604Improving or facilitating administration, e.g. storage management
    • 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/3427Circuits or methods to prevent or reduce disturbance of the state of a memory cell when neighbouring cells are read or written

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)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Read Only Memory (AREA)

Abstract

【課題】本発明は、リードディスターブ現象に対する効率的な対処技術を提供することを課題とする。
【解決手段】メモリ4は、ページ単位での読み出しが可能であり、かつ、複数のページを含むブロック単位で消去可能である。メモリコントローラ3は、メモリ4に対する読み出し要求が発生した後、読み出し命令で指定されたアドレスからアクセスされる可能性のある全てのブロックを候補ブロックとして特定し、候補ブロックに含まれるページの中から所定のルールに基づいて検査対象ページを特定する。メモリコントローラ3は、検査対象ページにエラーが存在するか否かを検査する。
【選択図】図3

Description

本発明は、フラッシュメモリからデータが繰り返し読み出されることにより、データが意図せず書き換えられるリードディスターブ現象に対処する技術に関する。
NANDフラッシュメモリは、再書き込み可能な不揮発性半導体メモリである。NANDフラッシュメモリは、高集積化を実現しながら、低コスト化が図られているため、SDメモリカードなどの形態で広く普及している。
NANDフラッシュメモリにおいては、特定のセルが繰り返し読み出されることにより、記憶データが意図せず書き換えられる現象が生じることが分かっている。この現象は、リードディスターブ(Read Disturb)現象と呼ばれている現象であり、NANDフラッシュメモリを利用する上での課題となっている。
特定のセルに対する読み出し処理が繰り返し行われた場合であっても、一旦、そのセルを含む領域に対してデータの更新が行われれば、セルの状態が修復されるため、リードディスターブの発生が情報処理に影響を与えることを回避できる。しかし、特定のセルに対して書き込み処理が行われず、読み出し処理だけが繰り返し行われる場合、リードディスターブの発生する可能性が高くなり、情報処理に影響を与える可能性もある。
最近では、NANDフラッシュメモリは、情報処理装置のプログラムメモリとしてROMのような役割で利用されるケースが多くなっている。NANDフラッシュメモリがそのように利用された場合、連続的な読み出し処理のみが行われるため、リードディスターブの発生可能性が高くなる。
特開2011−107851号公報
リードディスターブの発生を回避あるいはリードディスターブにより発生したエラーを修復するために、いくつかの方策がとられている。たとえば、所定のアルゴリズムでNANDフラッシュメモリの各ページのデータを読み込み、エラー検出訂正回路を利用してエラー検出を行う方法がある。エラー検出訂正回路によって、エラーが発生しているデータが検出された場合、データを訂正した上で、メモリにデータを再書き込みする。これにより、リードディスターブの発生していたセルが修復される。
エラーを検出するアルゴリズムとしては、様々なアルゴリズムが考えられる。たとえばNANDフラッシュメモリの全ページを順番に検査するという方法がある。全ページを順番に検査する方法を採用した場合、エラー発生の可能性の低いページについて不必要な検査処理が発生する。その一方でエラー発生の可能性の高いページに対する検査処理の頻度が低下する。これは結果的にエラー検出の信頼性を低下させる要因となる。
NANDフラッシュメモリのページをランダムに検査するという方法も用いられているが、やはりエラー発生の可能性の高いページに対する効率的な検査が行われない。
読み出し回数が多いブロックに対してエラー検出を行う方法も用いられている。この方法をとる場合、全てのブロックについて読み出し回数を記憶するための記憶容量が必要となる。NANDフラッシュメモリの容量が増大化している中で、ブロックごとの読み出し回数を記憶するためには、非常に多くの記憶容量が必要となるという問題がある。
上記特許文献1においては、リードディスターブ現象を防止する技術が開示されている。特許文献1では、ブロックごとに読み出し回数を保持することなく、検査対象のページを特定するようにしている。しかし、全てのページを満遍なく検査する方法をとっているため、やはり、エラー発生の可能性の高いページを効率的に検査することができない。
そこで、本発明は前記問題点に鑑み、リードディスターブ現象に対する効率的な対処技術を提供することを目的とする。
上記課題を解決するため、請求項1記載の発明は、再書き込み可能な不揮発性半導体メモリに対するアクセスを制御するメモリアクセス制御装置であって、前記不揮発性半導体メモリは、ページ単位での読み出しが可能であり、かつ、複数のページを含むブロック単位で消去可能であり、前記不揮発性半導体メモリに対する読み出し要求が発生した後、検査対象ページを特定する特定部と、検査対象ページにエラーが存在するか否かを検査する検査部と、を備え、前記特定部は、読み出し命令で指定されたアドレスからアクセスされる可能性のある全てのブロックを候補ブロックとして特定する候補特定部と、候補ブロックに含まれるページの中から所定のルールに基づいて検査対象ページを特定するページ特定部と、を含む。
請求項2記載の発明は、請求項1に記載のメモリアクセス制御装置であって、さらに、前記不揮発性半導体メモリに対する読み出し回数をブロック単位で記憶する読み出し回数記憶部、を備え、前記特定部は、前記読み出し回数記憶部を参照し、候補ブロックの中で読み出し回数が最も多いブロックを検査対象ブロックとして特定するブロック特定部、を含み、前記ページ特定部は、検査対象ブロックの中から検査対象ページを特定する。
請求項3記載の発明は、請求項2に記載のメモリアクセス制御装置であって、さらに、各ブロックの検査対象ページを特定するためのポインタを記憶するポインタ記憶部、を備え、前記ページ特定部は、前記ポインタ記憶部を参照し、検査対象ブロックに対応するポインタから検査対象ブロック内の検査対象ページを特定する。
請求項4記載の発明は、請求項1ないし請求項3のいずれかに記載のメモリアクセス制御装置であって、前記特定部は、前記不揮発性半導体メモリに対する読み出し処理を実行する前に検査対象ページを特定する。
請求項5記載の発明は、請求項1ないし請求項3のいずれかに記載のメモリアクセス制御装置であって、前記特定部は、前記不揮発性半導体メモリに対する読み出し処理が完了した後、次の読み出し処理が発生するまでの間に検査対象ページを特定する。
請求項6記載の発明は、請求項1ないし請求項5のいずれかに記載のメモリアクセス制御装置であって、前記不揮発性半導体メモリは、1回の読み出し処理において読み出すことのできる最大ページ数が予め定められており、前記候補特定部は、読み出し処理で指定されたアドレスと前記最大ページ数に基づいてアクセスされる可能性のある全てのブロックを特定する。
請求項7記載の発明は、請求項3に記載のメモリアクセス制御装置であって、前記特定部により検査対象ページが特定された後、対応するブロックのポインタが1ページ分インクリメントされる。
請求項8記載の発明は、請求項7に記載のメモリアクセス制御装置であって、ブロック内の最終ページが検査対象として指定された後は次にブロック内の先頭ページが検査対象として指定されるようポインタが更新される。
請求項9記載の発明は、請求項8に記載のメモリアクセス制御装置であって、前記特定部によりブロック内の全てのページが検査対象ページとして特定された後、ブロックのポインタが初期位置を指し示すようリセットされる。
請求項10記載の発明は、請求項8に記載のメモリアクセス制御装置であって、前記特定部によりブロック内の全てのページが検査対象ページとして特定された後、検査対象ブロックの読み出し回数が0にリセットされる。
請求項11記載の発明は、請求項2に記載のメモリアクセス制御装置であって、前記読み出し回数記憶部は、前記メモリアクセス制御装置の電源がONされたときから読み出し回数をカウントする。
請求項12記載の発明は、再書き込み可能な不揮発性半導体メモリに対するアクセスを制御するメモリアクセス制御方法であって、前記不揮発性半導体メモリは、ページ単位での読み出しが可能であり、かつ、複数のページを含むブロック単位で消去可能であり、前記不揮発性半導体メモリに対する読み出し要求が発生した後、検査対象ページを特定する特定ステップと、検査対象ページにエラーが存在するか否かを検査する検査ステップと、を備え、前記特定ステップは、読み出し命令で指定されたアドレスからアクセスされる可能性のある全てのブロックを候補ブロックとして特定する候補特定ステップと、候補ブロックに含まれるページの中から所定のルールに基づいて検査対象ページを特定するページ特定ステップと、を含む。
請求項13記載の発明は、請求項12に記載のメモリアクセス制御方法であって、さらに、前記不揮発性半導体メモリに対する読み出し回数をブロック単位で記憶する読み出し回数記憶ステップ、を備え、前記特定ステップは、前記読み出し回数記憶ステップにより記憶された読み出し回数を参照し、候補ブロックの中で読み出し回数が最も多いブロックを検査対象ブロックとして特定するブロック特定ステップ、を含み、前記ページ特定ステップは、検査対象ブロックの中から検査対象ページを特定する。
請求項14記載の発明は、請求項13に記載のメモリアクセス制御方法であって、さらに、各ブロックの検査対象ページを特定するためのポインタを記憶するポインタ記憶ステップ、を備え、前記ページ特定ステップは、前記ポインタ記憶ステップで記憶されたポインタを参照し、検査対象ブロックに対応するポインタから検査対象ブロック内の検査対象ページを特定する。
本発明のメモリアクセス制御装置によれば、再書き込み可能な半導体メモリにおけるリードディスターブの発生を効率的に検出し、情報処理に影響を与えることを未然に防止することができる。
本実施の形態に係る情報処理システムのブロック図である。 NANDフラッシュメモリのメモリ構成図である。 本実施の形態に係る制御処理のフローチャートである。 検査対象ページの特定方法を示す図である。
以下、図面を参照しつつ本発明の実施の形態について説明する。図1は、本実施の形態に係る情報処理システム10の機能ブロック図である。この情報処理システム10は、ホストシステム1およびメモリモジュール2を備えて構成される。メモリモジュール2は、メモリコントローラ3、メモリ4、リードカウンタ5、ポインタ記憶部6およびエラー検出訂正回路(ECC回路:Error Checking and Correction回路)7を備えている。
メモリ4は、再書き込み可能な不揮発性半導体メモリである。本実施の形態において、メモリ4は、NANDフラッシュメモリである。メモリコントローラ3は、メモリ4に対するデータの読み出しや書き込みを制御する。例えば、この情報処理システム10は、携帯電話装置として機能する。この場合、ホストシステム1は、携帯電話装置本体を構成し、メモリモジュール2がメモリカードを構成する。メモリモジュール2は、ホストシステム1に対して着脱自在なタイプであってもよいし、ホストシステム1を構成する装置に内蔵されるタイプであってもよい。
本実施の形態においては、メモリコントローラ3が、メモリモジュール2に搭載される構成となっているが、ホストシステム1がメモリコントローラ3を備える構成であってもよい。また、エラー検出回路7は、メモリ4内に設けられてもよいし、メモリコントローラ3内に設けられてもよい。
図2は、メモリ4の構成を示す図である。メモリ4は、1枚のダイ(Die)で構成されている。ダイは、複数のバンク(Bank)を含んでいる。図2の例では、ダイは、J個のバンクを含んでいる。バンクは、複数のブロック(Block)を含んでいる。図2の例では、バンクは、M個のブロックを含んでいる。さらに、ブロックは、複数のページ(Page)を含んでいる。図2の例では、ブロックは、Z個のページを含んでいる。
ページは、メモリ4の読み出し単位である。メモリコントローラ3は、メモリ4に格納されているデータをページ単位で読み出すことが可能である。ブロックは、メモリ4の消去単位である。メモリコントローラ3は、メモリ4に格納されているデータをブロック単位で消去することが可能である。
メモリ4のブロックは、物理的に隣り合って配置された複数のページで構成されている。たとえば、ブロックは、メモリアドレスの順番で隣り合って配列された複数のページで構成される。したがって、あるブロック内の特定のページに対して繰り返し読み出し処理が行われた場合、当該ブロック内の周辺のページに対して負荷が掛かり、周辺のページについてリードディスターブが発生する可能性がある。メモリ4のバンクは、論理的に隣り合って配置された複数のブロックで構成されている。バンクを構成するブロックは物理的に隣り合っている場合もある。
再び、図1を参照する。リードカウンタ5は、メモリ4に対する読み出しアクセスの回数をカウントする。上述したように、メモリコントローラ3は、メモリ4に対してページ単位での読み出し処理を実行する。メモリコントローラ3は、メモリ4に対して読み出し処理を実行したとき、リードカウンタ5に対して、読み出し処理を実行したページを特定する情報を通知する。具体的には、メモリコントローラ3は、リードカウンタ5に対して、読み出し処理を実行したページのバンク番号、ブロック番号およびページアドレスを通知する。
リードカウンタ5は、メモリコントローラ3から、読み出し対象のページのバンク番号、ブロック番号およびページアドレスを取得するが、ページ単位で読み出しアクセスの回数をカウントするのではなく、ブロック単位で読み出しアクセスの回数をカウントする。つまり、リードカウンタ5は、ブロック内に含まれるいずれのページに読み出しアクセスが行われたかを区別することなく、各ブロックに対する読み出しアクセスをカウントする。リードカウンタ5は、ブロック数に対応した複数の読み出し回数RCを保持している。
ポインタ記憶部6は、ページごとのポインタSPを記憶している。ポインタSPは検査対象となるページを特定するためのデータである。ポインタ記憶部6は、ブロックごとにポインタSPを管理している。つまり、ポインタ記憶部6は、ブロック数に対応した複数のポインタSPを保持している。
リードカウンタ5およびポインタ記憶部6は、情報処理システム10の電源がONされている間だけ読み出し回数RCおよびポインタSPを記憶しておけばよい。したがって本実施の形態においては、リードカウンタ5およびポインタ記憶部6として揮発性のメモリを利用することができる。
リードカウンタ5は、情報処理システム10の電源がONされたときから、各ブロックの読み出し回数をカウントする。つまり、情報処理システム10の電源がOFFされたとき、それまでの読み出し回数は保持されない。情報処理システム10の電源がOFFされた時点で全てのブロックの読み出し回数RCは無効になる。リードカウント5には、電源がONされた時点から読み出し回数RCがカウントされる。
ポインタ記憶部6は、情報処理システム10の電源がONされたとき、ポインタSPを初期位置にセットする。初期位置は予め決められたルールによって決定される。たとえば、初期位置としてブロック内の先頭ページが設定される。ポインタ記憶部6は、情報処理システム10の電源がOFFされたとき、その時点で保持しているポインタSPを保持する必要はない。情報処理システム10の電源がONされるたびにポインタSPは初期位置に設定される。
エラー検出訂正回路7(以下、ECC回路7と呼ぶ。)は、メモリ4に誤ったデータが記録されていることを検出するとともに、誤ったデータを訂正する回路である。
次に、本実施の形態に係る制御内容について説明する。図3は、メモリコントローラ3あるいはECC回路7において実行される制御内容を示すフローチャートである。
図3のフローチャートを参照して説明するように、本実施の形態においては、ホストシステム1からメモリ4に対する読み出し命令が与えられたとき、メモリ4に対する読み出し処理を実行する前に検査対象ページを特定するための処理を実行する。さらに、本実施の形態においては、メモリ4に対する読み出し処理を実行する前に検査対象ページに対するエラー検出処理を実行する。
メモリコントローラ3は、まず、アクセスされる可能性のあるブロック候補を特定する(ステップS1)。ブロック候補を特定するために、メモリコントローラ3は、ホストシステム1から与えられた読み出し命令から読み出しアドレスを取得する。メモリコントローラ3は、取得した読み出しアドレスからNANDフラッシュであるメモリ4の読み出しページアドレスを生成する。
本実施の形態のメモリコントローラ3およびメモリ4は、1つの読み出し命令に対して複数のページを連続的に読み出すことが可能である。ホストシステム1は、読み出しアドレスをメモリコントローラ3に与えるとともに読み出し有効信号(イネーブル信号)を送出する。メモリコントローラ3は、読み出し有効信号を入力している間は、読み出しページのアドレスを1ページ分インクリメントすることにより、連続的に複数のページの読み出し処理を実行する。たとえば、メモリコントローラ3は、読み出しページのアドレスを1バイトずつインクリメントすることにより、連続的に複数のページを読み出す。
ただし、メモリコントローラ3には、連続的に読み出すことのできる最大ページ数が予め設定されている。したがって、メモリコントローラ3は、ホストシステム1から与えられた読み出し命令に含まれる読み出しアドレスと、予め保持している最大ページ数とから、この読み出し処理によってアクセスされる可能性のあるブロックを特定することができる。メモリコントローラ3は、アクセスされる可能性のある全てのブロックを候補ブロックとして特定する。
次に、メモリコントローラ3は、リードカウンタ5にアクセスし、各候補ブロックの読み出し回数RCを取得する。メモリコントローラ3は、候補ブロックの中で最も読み出し回数RCの多いブロックを検査対象ブロックとして特定する(ステップS2)。ただし、本実施の形態においては、読み出し回数の閾値RCthが設定されている。候補ブロックの中で最も読み出し回数RCの多いブロックを特定するが、その読み出し回数RCがRCthに満たないときは、検査対象ブロックとして選択されない。この場合には図3のフローチャートを終了する。
次に、メモリコントローラ3は、ポインタ記憶部6にアクセスし、検査対象ブロックとして特定されたブロックのポインタSPを取得する。メモリコントローラ3は、検査対象ブロックに含まれるページの中でポインタSPによって指し示されたページを検査対象ページとして特定する(ステップS3)。
図4は、候補ブロック、検査対象ブロックおよび検査対象ページの特定方法を示す図である。図において、ホストシステム1によって指定された読み出しアドレスはブロックBL#5内のPA#15に対応しているものとする。読み出し最大ページ数に基づいてアクセスされる可能性のあるブロックはBL#5〜#7と特定されたものとする。つまり、ブロックBL#5〜#7が候補ブロックである。ブロックBL#5、#6および#7の読み出し回数RCは図に示すように、それぞれ50、70および100である。したがって、検査対象ブロックはBL#7と特定される。読み出し回数100は、閾値RCthを超えているものとする。そして、ブロックBL#7について現在保持されているポインタSPは、図に示すようにSP=23である。そこで、検査対象ページとしてブロックBL#7内のページPA#23が特定される。
メモリコントローラ3は、検査対象ページを読み出し、検査対象ページのデータとシンドロームをECC回路7に与える。ECC回路7において、検査対象ページに対するエラー検出処理が実行される(ステップS4)。このとき、検査対象ページに対する読み出し処理が行われるため、検査対象ブロックの読み出し回数RCが1インクリメントされる(ステップS5)。
ECC回路7においてエラー検出処理が行われた結果、検査対象ページにエラーが発生していた場合(ステップS6でYES)、メモリコントローラ3は、検査対象ページとして特定されたページが属するブロックのアドレスをメモリコントローラ3が備える一時記憶部31に格納する(ステップS7)。メモリコントローラ3は、後で説明するが、別のタイミングで一時記憶部31に格納されているアドレスを読み出し、当該アドレスに対応するブロックのデータに対するエラー訂正処理を行う。メモリコントローラ3は、エラー訂正したデータを、物理的に異なるブロックに書きこむことによりメモリ4に対するリフレッシュ処理を実行する。なお、一時記憶部31に検査対象ページのアドレスを格納しておき、エラー訂正処理するときにブロックアドレスに置き換えてもよい。
ステップS7において一時記憶部31にアドレスを格納した後、あるいは、ステップS6でNOと判定された場合、ステップS8に移行する。ステップS8において、メモリコントローラ3は、検査対象ページのポインタSPが検査最終アドレスを示しているか否かを判定する。
検査最終アドレスについて説明する。前述したように、ポインタ記憶部6は、情報処理システム10の電源がONになったとき、各ブロックのポインタSPを初期位置に設定する。もし、初期位置がブロック内の先頭ページアドレスであれば、検査最終アドレスは、ブロック内の最終ページアドレスである。もし、初期位置がブロック内の先頭ページアドレスではない他の位置のアドレスである場合、検査最終アドレスは、初期位置のページアドレスよりも1つ前のページのアドレスである。いずれにしても、ポインタSPが初期位置からスタートしてブロック内の全てのページを網羅したとき、最後に指定されたアドレスが検査最終アドレスである。
検査対象ページのポインタSPが検査最終アドレスを示していないとき(ステップS8でNO)、メモリコントローラ3は、ポインタSPを1ページ分インクリメントする(ステップS9)。このように、ポインタSPをインクリメントすることにより、次々と異なるページが検査対象ページとして特定されることになる。ここで、ポインタSPがブロック内の最終ページアドレスである場合には、ステップS9においてポインタSPはブロック内の先頭ページアドレスに戻される。
検査対象ページのポインタSPが検査最終アドレスを示しているとき(ステップS8でYES)、メモリコントローラ3は、検査対象ブロックの読み出し回数RCを0にリセットする(ステップS10)。
検査対象ページのポインタSPが検査最終アドレスに到達したということは、検査対象ブロック内の全てのページが検査対象ページに指定されたことになる。これにより、検査対象ブロックについては全てのページのエラー検査が完了したことになる。したがって、読み出し回数RCを0にリセットすることで、次に検査対象ブロックとして特定されるための優先度を低下させるのである。上述したステップS2において、検査対象ブロックを特定するときには、読み出し回数RCと閾値RCthとを比較した。ステップS10において読み出し回数RCが0にリセットされることにより、読み出し回数RCが次に閾値RCthを超えるまでは検査対象ブロックとして特定されない。これにより、読み出し回数の多いブロックが過剰に検査対象として特定されることを防止している。なお、電源ONがされた後は、全ブロックの読み出し回数RCを閾値RCthにセットするようにしてもよい。これにより、電源ONがされた直後は、全てのブロックが検査対象となり得る状態とし、電源ONの後、長い時間検査対象から除外されることを回避することができる。
続いて、メモリコントローラ3は、検査対象ブロックのポインタSPを初期位置にリセットする(ステップS11)。もし、初期位置がブロック内の先頭ページアドレスであれば、ポインタSPは再びブロック内の先頭ページアドレスに設定される。もし、初期位置がブロック内の先頭ページアドレスではない他の位置のアドレスである場合、ポインタSPは再び当該アドレスに設定される。
ステップS9あるいはステップS11を終了した後、メモリコントローラ3は、ホストシステム1からの読み出し要求に対する読み出し処理を実行する(ステップS12)。
以上の処理により、一時記憶部31にはエラーが検出されたページが属するブロックのアドレスが格納される。メモリコントローラ3は、別のタイミングで当該ブロックに対するエラー訂正処理を実行する。本実施の形態においては、メモリコントローラ3は、当該ブロック内の全てのページを読み出し、エラー検出および訂正処理を実行し、エラーを含まない全てのページを物理的に異なる別のブロックに書きこむ。このとき、検査対象ブロックに対する全ページの読み出し処理が行われるため、検査対象ブロックの読み出し回数RCが全ページ分インクリメントされる。別の方法として、メモリコントローラ3は、当該ブロック内の全てのページを読み出し、エラー検出および訂正処理を実行し、エラーを含まない全てのページを一旦、仮ブロックに書きこむ。さらにメモリコントローラ3は、仮ブロック内の全てのページを読み出し、エラー検出および訂正処理を実行し、エラーを含まない全てのページを再び、元のブロックに書きこむ。このとき、検査対象ブロックに対する全ページの読み出し処理が2回行われるため、検査対象ブロックの読み出し回数RCが全ページ2回分インクリメントされる。また、ステップS12においては、ページデータの通常の読み出しが行われるが、この場合にも読み出しページを含むブロックの読み出し回数RCが1インクリメントされる。
このように、本実施の形態の情報処理システム10においては、ホストシステム1から読み出し要求が発生したときに、アクセスされる可能性のあるブロックの中で読み出し回数RCの最も多いブロックが検査対象ブロックとして特定される。これにより、アクセスされる頻度の高いブロックに検査対象を絞り込むことができ、無駄な検査処理を排除することができる。たとえば、メモリ4にアプリケーションプログラムが格納され、メモリ4がROMのように使用されている場合、アプリケーションの実行により同じ領域がアクセスされる可能性が高い。このような場合に本実施の形態においては、アクセスされる領域に関連して、エラーが発生する可能性が高い領域に重点をおいてエラーチェックを行うことができる。
従来、メモリ内のページをランダムにエラーチェックすることや、メモリ内の全てのページをエラーチェックする方法などが採用されていた。これらの方法では、不必要な領域に対してエラー検出を実行する一方、エラー発生確率の高い領域に対するエラー検査が不十分であった。これに対して本実施の形態においては、まずアクセスされる可能性のあるブロックに検査対象を絞る込むことでアクセスされる可能性の高い領域に重点をおいた検査が行われるとともに、さらに、読み出し回数の多いブロックが重点的に検査対象となるので、効率のよいエラー検出が行われる。
また、本実施の形態においては、読み出しアクセスの可能性のあるブロックの中から1ページだけが検査対象として特定され、1ページだけがエラー検出の対象となる。したがって、エラー検出処理によりメモリ4に与える負荷が大きくなることはない。
また、本実施の形態においては、ブロックごとの読み出し回数RCおよびブロックごとのポインタSPは、情報処理システム10の電源がONされている間だけ保持される。つまり、情報処理システム10の電源がOFFされている間、読み出し回数RCおよびポインタSPの情報を保持しておく必要はない。これにより、読み出し回数RCおよびポインタSPの情報を保持しておくための不揮発性メモリを用意する必要はない。情報処理システム10が意図せず電源OFFされた場合など、障害が発生した場合にも、検査対象を特定するための処理に影響がない。また、読み出し回数RCやポインタSPを不揮発性メモリに格納した場合、意図しない電源OFFなどが発生した場合の対応回路が必要となる。本実施の形態においてはこのような対障害用の回路も不要であり、回路規模を小さくすることができる。
本実施の形態において、読み出し回数RCを不揮発性メモリに格納する必要がない理由は以下のとおりである。本実施の形態において、読み出し回数RCが検査対象ブロックを特定するために利用されるが、ブロック間で、どのブロックの読み出し回数RCが多いかを相対的に比較できればよい。読み出し回数RCの値そのものを厳密に管理する必要はない。電源がONされた後、読み出し回数RCが他のブロックよりも相対的に多いブロックを特定すれば十分だからである。
本実施の形態において、ポインタSPを不揮発性メモリに格納する必要がない理由は以下のとおりである。メモリ4内の同じ領域が繰り返し読み出されたような場合を考える。この場合、電源がONされた後、電源がOFFされるまでの間に、繰り返し読み出される領域については、ブロック内の全ページが検査対象となる可能性が高い。したがって、再び電源がONされたときには、検査対象は初期位置に戻すことで問題はない。また、リードディスターブ現象は、ブロック内の全ページに万遍なく負荷のかかるストレスである。たとえば、電源がONされるごとにポインタSPの初期位置を前回の初期位置から移動させることで、同じページだけが繰り返し検査対象となることを防ぐことができる。
{その他の実施の形態}
上記の実施の形態においては、ホストシステム1からメモリ4に対する読み出し命令が与えられたとき、メモリ4に対する読み出し処理を実行する前に検査対象ページを特定し、検査対象ページに対するエラー検出処理を実行した。別の実施の形態として、メモリ4に対する読み出し処理を実行した後、所定のタイミングで検査対象ページを特定する処理および検査対象ページに対するエラー検出処理を実行してもよい。たとえば、メモリ4に対する読み出し処理を実行した後、ホストシステム1がメモリ4にアクセスしていないタイミングで検査対象ページの特定およびエラー検出を行ってもよい。この場合、検査対象を特定する処理を行うときには、既にアクセスされた領域が確定しているので、アクセスされたブロックの中で読み出し回数RCの最も多いブロックが検査対象ブロックとして特定される。これにより、アクセスされる頻度の高いブロックに検査対象を絞り込むことができ、無駄な検査処理を排除することができる。また、アクセスされたブロック内に関して、エラーが発生する可能性が高い領域に重点をおいてエラーチェックを行うことができる。
メモリコントローラ3は、上述したように、別のタイミングで一時記憶部31に格納されているアドレスに対するリフレッシュ処理を行う。つまり、メモリコントローラ3は、一時記憶部31に格納されているアドレスに基づき検査対象ブロック内の全ページを読み出し、エラー訂正処理を行う。メモリコントローラ3は、検査対象ブロックに対するエラー訂正処理を実行した後、訂正後のデータをメモリ4に書き戻す処理を実行する。ここで、NANDフラッシュメモリはブロック単位でのみ消去可能であるため、検査対象ページのデータを書き戻すときには、検査対象ブロックのデータが一旦消去され、ブロック内の全ページのデータが再書き込みされる。したがって、検査対象ページのみならず、検査対象ページを含むブロック全体がリフレッシュされる。したがって、検査対象ブロックに対するエラー訂正が行われた後は、検査対象ページを含むブロックの読み出し回数RCは0にリセットされる。また、検査対象ブロックに対するエラー訂正が行われた後は、検査対象ブロックのポインタSPを初期位置にリセットしてもよい。
上記の実施の形態においては、ブロック内のページに対する読み出しが行われたときには、ブロックに対する読み出し回数RCを1インクリメントした。ブロック内の先頭あるいは最終ページが読み出されたときには、読み出し回数RCを2あるいは2以上インクリメントするようにしてもよい。NANDフラッシュメモリの構造上、ブロック内の両端のページにはリードディスターブの発生可能性が高いことが分かっているからである。
上記実施の形態においては、アクセスされる可能性のあるメモリ領域が複数のブロックに跨るとき、読み出し回数RCの最も多いブロックを検査対象として特定した。つまり、候補ブロックの中で最も読み出し回数RCの多いブロックを検査対象とした。別の実施の形態として、候補ブロック全てを検査対象としてもよい。この場合、各検査対象ブロックのポインタを参照し、各検査対象ブロックに対して検査対象ページが特定される。
上記実施の形態においては、アクセスされる可能性のあるメモリ領域を候補ブロックとして特定し、候補ブロックの中から検査対象ページを特定した。別の実施の形態として、メモリ4に対する通常の読み出し処理を完了した後に検査対象を特定する場合には、実際に読み出し対象となったブロックの中から検査対象ブロックを特定してもよい。実際に読み出された領域が複数のブロックに跨る場合には、両端のブロックのうち読み出し回数RCの大きい方のブロックを検査対象として特定してもよいし、両端のブロックをいずれも検査対象として特定してもよい。両端のブロックに挟まれたブロックは必ず通常の読み出し処理が実行されるので、必ずエラー検査が行われるからである。
上記実施の形態においては、アクセスされる可能性のあるメモリ領域が複数のブロックに跨るとき、候補ブロックの中で読み出し回数RCの最も多いブロックを検査対象として特定した。別の実施の形態として、候補ブロックの中でポインタの値が最も小さいブロックを検査対象としてもよい。ここでポインタの値が小さいとは、初期位置からのポインタの移動が最も少ないことを示す。この方法によれば、検査対象が一部のブロックに偏りすぎることを防止できる。
上記実施の形態においては、ブロックごとに読み出し回数RCおよびポインタSPを管理した。別の実施の形態として、複数のブロックに対して1つの読み出し回数RCおよびポインタSPを管理するようにしてもよい。この場合、ポインタSPは複数のブロックに跨って移動するよう管理される。
上記実施の形態においては、ページ単位でアドレスをインクリメントさせてポインタSPを移動させた。別の実施の形態として、ページ単位でアドレスをデクリメントさせてポインタSPを移動させてもよい。
上記実施の形態においては、検査対象ブロックの中のポインタSPが指し示すページを検査対象として特定した。別の実施の形態として、検査対象ページが、実際にアクセスされるブロックに含まれる場合、特定された検査対象ページを検査対象から除外してもよい。検査対象ページについては検査対象としなくても、読み出しデータとして通常に読み出されるからである。通常の読み出し処理においてもエラーチェックが行われ、エラーが発生している場合には、アドレスを一時記憶部31に格納すればよい。ただし、この方法を採用できるのは、実際にアクセスされたブロックが特定できる場合である。つまり、データの読み出し処理の後に検査対象ページを特定する場合のみこの方法を採用することができる。また、検査対象ページを検査対象から除外した場合、ポインタはインクリメントすればよい。
上記実施の形態においては、検査対象ブロックの中のポインタが指し示すページを検査対象として特定した。別の実施の形態として、検査対象ページが、アクセスされるブロックに含まれる場合には、アクセスされないブロックから検査対象ページを選択してもよい。検査対象ページについては検査対象としなくても、読み出しデータとして通常に読み出されるからである。ただし、この方法を採用できるのは、実際にアクセスされたブロックが特定できる場合である。つまり、データの読み出し処理の後に検査対象ページを特定する場合のみこの方法を採用することができる。
上記実施の形態においては、ホストシステム1からの読み出し要求が発生するたびに検査対象ブロックを特定した。別の実施の形態として、ホストシステム1からの1つの読み出し要求に対して検査対象ブロックを特定した後は、その検査対象ブロックの全てのページが検査されるまでは検査対象ブロックを固定してもよい。この場合、ホストシステム1からの読み出し要求が発生するたびにポインタSPのみを移動させればよい。
上記実施の形態においては、情報処理システム10の電源がONされたとき、各ブロックのポインタは初期位置にリセットされることを説明した。初期位置として各ブロック内の先頭ページアドレスを利用してもよい。あるいは、初期位置としてブロック内のページアドレスをランダムに選択してもよい。
上記実施の形態においては、ホストシステム1からの読み出し要求が発生したとき、検査対象ブロックの中から単一の検査対象ページを特定した。別の実施の形態として、検査対象ブロック内の全てのページを検査対象としてもよい。
上記実施の形態においては、検査対象ページにエラーが検出された場合、検査対象ページが属するブロックのアドレスが一時記憶部31に格納された。これは検査対象ページを含むブロックがリフレッシュ対象となることを示している。この場合、検査対象ページを含むブロックは、リフレッシュが完了するまでは検査対象から除外してもよい。このブロックについては、既にリフレッシュされることが確定しているからである。
上記実施の形態においては、リードカウンタ5およびポインタ記憶部6として、揮発性の記憶手段を利用した。別の実施の形態として、リードカウンタ5およびポインタ記憶部6として不揮発性のメモリを使用してもよい。
1 ホストシステム
2 メモリモジュール
3 メモリコントローラ
4 メモリ
5 リードカウンタ
6 ポインタ記憶部
7 ECC回路

Claims (14)

  1. 再書き込み可能な不揮発性半導体メモリに対するアクセスを制御するメモリアクセス制御装置であって、
    前記不揮発性半導体メモリは、ページ単位での読み出しが可能であり、かつ、複数のページを含むブロック単位で消去可能であり、
    前記不揮発性半導体メモリに対する読み出し要求が発生した後、検査対象ページを特定する特定部と、
    検査対象ページにエラーが存在するか否かを検査する検査部と、
    を備え、
    前記特定部は、
    読み出し命令で指定されたアドレスからアクセスされる可能性のある全てのブロックを候補ブロックとして特定する候補特定部と、
    候補ブロックに含まれるページの中から所定のルールに基づいて検査対象ページを特定するページ特定部と、
    を含むメモリアクセス制御装置。
  2. 請求項1に記載のメモリアクセス制御装置であって、さらに、
    前記不揮発性半導体メモリに対する読み出し回数をブロック単位で記憶する読み出し回数記憶部、
    を備え、
    前記特定部は、
    前記読み出し回数記憶部を参照し、候補ブロックの中で読み出し回数が最も多いブロックを検査対象ブロックとして特定するブロック特定部、
    を含み、
    前記ページ特定部は、検査対象ブロックの中から検査対象ページを特定するメモリアクセス制御装置。
  3. 請求項2に記載のメモリアクセス制御装置であって、さらに、
    各ブロックの検査対象ページを特定するためのポインタを記憶するポインタ記憶部、
    を備え、
    前記ページ特定部は、前記ポインタ記憶部を参照し、検査対象ブロックに対応するポインタから検査対象ブロック内の検査対象ページを特定するメモリアクセス制御装置。
  4. 請求項1ないし請求項3のいずれかに記載のメモリアクセス制御装置であって、
    前記特定部は、前記不揮発性半導体メモリに対する読み出し処理を実行する前に検査対象ページを特定するメモリアクセス制御装置。
  5. 請求項1ないし請求項3のいずれかに記載のメモリアクセス制御装置であって、
    前記特定部は、前記不揮発性半導体メモリに対する読み出し処理が完了した後、次の読み出し処理が発生するまでの間に検査対象ページを特定するメモリアクセス制御装置。
  6. 請求項1ないし請求項5のいずれかに記載のメモリアクセス制御装置であって、
    前記不揮発性半導体メモリは、1回の読み出し処理において読み出すことのできる最大ページ数が予め定められており、
    前記候補特定部は、読み出し処理で指定されたアドレスと前記最大ページ数に基づいてアクセスされる可能性のある全てのブロックを特定するメモリアクセス制御装置。
  7. 請求項3に記載のメモリアクセス制御装置であって、
    前記特定部により検査対象ページが特定された後、対応するブロックのポインタが1ページ分インクリメントされるメモリアクセス制御装置。
  8. 請求項7に記載のメモリアクセス制御装置であって、
    ブロック内の最終ページが検査対象として指定された後は次にブロック内の先頭ページが検査対象として指定されるようポインタが更新されるメモリアクセス制御装置。
  9. 請求項8に記載のメモリアクセス制御装置であって、
    前記特定部によりブロック内の全てのページが検査対象ページとして特定された後、ブロックのポインタが初期位置を指し示すようリセットされるメモリアクセス制御装置。
  10. 請求項8に記載のメモリアクセス制御装置であって、
    前記特定部によりブロック内の全てのページが検査対象ページとして特定された後、検査対象ブロックの読み出し回数が0にリセットされるメモリアクセス制御装置。
  11. 請求項2に記載のメモリアクセス制御装置であって、
    前記読み出し回数記憶部は、前記メモリアクセス制御装置の電源がONされたときから読み出し回数をカウントするメモリアクセス制御装置。
  12. 再書き込み可能な不揮発性半導体メモリに対するアクセスを制御するメモリアクセス制御方法であって、
    前記不揮発性半導体メモリは、ページ単位での読み出しが可能であり、かつ、複数のページを含むブロック単位で消去可能であり、
    前記不揮発性半導体メモリに対する読み出し要求が発生した後、検査対象ページを特定する特定ステップと、
    検査対象ページにエラーが存在するか否かを検査する検査ステップと、
    を備え、
    前記特定ステップは、
    読み出し命令で指定されたアドレスからアクセスされる可能性のある全てのブロックを候補ブロックとして特定する候補特定ステップと、
    候補ブロックに含まれるページの中から所定のルールに基づいて検査対象ページを特定するページ特定ステップと、
    を含むメモリアクセス制御方法。
  13. 請求項12に記載のメモリアクセス制御方法であって、さらに、
    前記不揮発性半導体メモリに対する読み出し回数をブロック単位で記憶する読み出し回数記憶ステップ、
    を備え、
    前記特定ステップは、
    前記読み出し回数記憶ステップにより記憶された読み出し回数を参照し、候補ブロックの中で読み出し回数が最も多いブロックを検査対象ブロックとして特定するブロック特定ステップ、
    を含み、
    前記ページ特定ステップは、検査対象ブロックの中から検査対象ページを特定するメモリアクセス制御方法。
  14. 請求項13に記載のメモリアクセス制御方法であって、さらに、
    各ブロックの検査対象ページを特定するためのポインタを記憶するポインタ記憶ステップ、
    を備え、
    前記ページ特定ステップは、前記ポインタ記憶ステップで記憶されたポインタを参照し、検査対象ブロックに対応するポインタから検査対象ブロック内の検査対象ページを特定するメモリアクセス制御方法。
JP2011264723A 2011-12-02 2011-12-02 メモリアクセス制御装置および方法 Active JP5815388B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2011264723A JP5815388B2 (ja) 2011-12-02 2011-12-02 メモリアクセス制御装置および方法
US13/684,823 US9323660B2 (en) 2011-12-02 2012-11-26 Memory access control apparatus and memory access control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011264723A JP5815388B2 (ja) 2011-12-02 2011-12-02 メモリアクセス制御装置および方法

Publications (2)

Publication Number Publication Date
JP2013117840A true JP2013117840A (ja) 2013-06-13
JP5815388B2 JP5815388B2 (ja) 2015-11-17

Family

ID=48524845

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011264723A Active JP5815388B2 (ja) 2011-12-02 2011-12-02 メモリアクセス制御装置および方法

Country Status (2)

Country Link
US (1) US9323660B2 (ja)
JP (1) JP5815388B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017058870A (ja) * 2015-09-15 2017-03-23 ラピスセミコンダクタ株式会社 メモリ制御装置及びメモリ制御方法

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9325321B2 (en) * 2013-03-13 2016-04-26 Microsemi SoC Corporation Background auto-refresh apparatus and method for non-volatile memory array
US10417090B2 (en) * 2013-12-23 2019-09-17 Cnex Labs, Inc. Computing system with data protection mechanism and method of operation thereof
WO2017139973A1 (zh) * 2016-02-19 2017-08-24 华为技术有限公司 一种闪存设备的访问方法和装置
CN107203476B (zh) 2016-03-18 2021-08-31 慧荣科技股份有限公司 数据储存装置、存储器控制器及其数据管理方法
US10446243B2 (en) * 2017-12-18 2019-10-15 Macronix International Co., Ltd. Storage device and associated control method to determine target memory blocks for probe operation
KR20200113387A (ko) * 2019-03-25 2020-10-07 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작방법
US11640373B2 (en) * 2020-12-10 2023-05-02 International Business Machines Corporation Reordering files
US20220391102A1 (en) * 2021-06-08 2022-12-08 Micron Technology, Inc. Scan fragmentation in memory devices

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008090778A (ja) 2006-10-05 2008-04-17 Matsushita Electric Ind Co Ltd 不揮発性メモリ用メモリコントローラ、不揮発性記憶装置、不揮発性記憶システム、不揮発性メモリのメモリ制御方法
JP5265883B2 (ja) 2007-05-24 2013-08-14 株式会社メガチップス メモリアクセスシステム
JP5602984B2 (ja) 2007-06-21 2014-10-08 株式会社メガチップス メモリコントローラ
JP2011107851A (ja) 2009-11-13 2011-06-02 Toshiba Corp メモリシステム
US9053808B2 (en) * 2012-06-21 2015-06-09 Sandisk Technologies Inc. Flash memory with targeted read scrub algorithm

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017058870A (ja) * 2015-09-15 2017-03-23 ラピスセミコンダクタ株式会社 メモリ制御装置及びメモリ制御方法

Also Published As

Publication number Publication date
JP5815388B2 (ja) 2015-11-17
US20130145082A1 (en) 2013-06-06
US9323660B2 (en) 2016-04-26

Similar Documents

Publication Publication Date Title
JP5815388B2 (ja) メモリアクセス制御装置および方法
US10373693B2 (en) Storage device and method of operating the storage device
JP4489127B2 (ja) 半導体記憶装置
TWI569273B (zh) 非揮發性記憶體裝置讀取干擾管理方法
JP4901987B1 (ja) 記憶装置、電子機器及び誤りデータの訂正方法
US8271515B2 (en) System and method for providing copyback data integrity in a non-volatile memory system
TWI515742B (zh) 偵測不穩定記憶胞之分佈的記憶體系統與方法
US8495281B2 (en) Intra-block memory wear leveling
US9189313B2 (en) Memory system having NAND-type flash memory and memory controller with shift read controller and threshold voltage comparison module
US9465537B2 (en) Memory system and method of controlling memory system
WO2019174205A1 (zh) 一种垃圾回收的方法、装置及存储设备
US20140223231A1 (en) Solid state drive management in power loss recovery
JP2010160816A (ja) 半導体記憶装置の制御方法
US10474530B2 (en) Data storage method for detecting data storage device and its data storage device
TW201730892A (zh) 邏輯性移除非揮發性記憶體儲存裝置缺陷頁之裝置及方法
KR101652936B1 (ko) 전력 손실 복원에 있어서의 솔리드 스테이트 드라이브 관리
CN105489242B (zh) 数据储存器件及其操作方法
JP5604313B2 (ja) メモリアクセス制御装置
US10811070B2 (en) Memory system and control method to perform patrol read operation
US9081710B2 (en) Restoring ECC syndrome in non-volatile memory devices
US7657795B2 (en) Method and apparatus for writing to a target memory page of a memory
US10528289B2 (en) Data storage method for optimizing data storage device and its data storage device
US9275745B2 (en) Semiconductor device and method of operating the same
JP6306548B2 (ja) メモリー管理回路、記憶装置、メモリー管理方法、及びメモリー管理プログラム
JP2017058870A (ja) メモリ制御装置及びメモリ制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141112

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150625

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150707

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150827

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: 20150915

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150924

R150 Certificate of patent or registration of utility model

Ref document number: 5815388

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250