JP7074519B2 - メモリシステム、および、メモリ制御方法 - Google Patents

メモリシステム、および、メモリ制御方法 Download PDF

Info

Publication number
JP7074519B2
JP7074519B2 JP2018051605A JP2018051605A JP7074519B2 JP 7074519 B2 JP7074519 B2 JP 7074519B2 JP 2018051605 A JP2018051605 A JP 2018051605A JP 2018051605 A JP2018051605 A JP 2018051605A JP 7074519 B2 JP7074519 B2 JP 7074519B2
Authority
JP
Japan
Prior art keywords
group
value
memory
unit
read
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.)
Active
Application number
JP2018051605A
Other languages
English (en)
Other versions
JP2019164859A (ja
Inventor
滋博 浅野
バクストン ネイル
マーゲッツ ジュリアン
俊一 井川原
健彦 天木
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.)
Kioxia Corp
Original Assignee
Kioxia 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 Kioxia Corp filed Critical Kioxia Corp
Priority to JP2018051605A priority Critical patent/JP7074519B2/ja
Priority to US16/159,410 priority patent/US10854302B2/en
Publication of JP2019164859A publication Critical patent/JP2019164859A/ja
Priority to US17/060,767 priority patent/US11189353B2/en
Priority to US17/512,394 priority patent/US11727998B2/en
Application granted granted Critical
Publication of JP7074519B2 publication Critical patent/JP7074519B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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
    • 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
    • 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/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • G11C16/3495Circuits or methods to detect or delay wearout of nonvolatile EPROM or EEPROM memory devices, e.g. by counting numbers of erase or reprogram cycles, by using multiple memory areas serially or cyclically
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/12Group selection circuits, e.g. for memory block selection, chip selection, array selection
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series

Description

本発明の実施形態は、メモリシステム、および、メモリ制御方法に関する。
従来、複数のメモリセルを備える不揮発性のメモリ(例えばNAND型フラッシュメモリ(以下、NANDメモリ))とそのメモリを制御するメモリコントローラを備えるメモリシステムが広く知られている。
米国特許第7818525号明細書 米国特許出願公開第2016/0118132号明細書 特許第6108949号明細書 特許第6163540号明細書 米国特許第9653176号明細書
上述の不揮発性のメモリでは、リード・ディスターブ(Read Disturb)と呼ばれる信頼性低下現象が起きる場合がある。
そこで、本発明の実施形態の課題は、リード・ディスターブによる信頼性低下現象を抑制することが可能なメモリシステム、および、メモリ制御方法を提供することである。
実施形態のメモリシステムは、データを記憶する複数のメモリセルを備える不揮発性のメモリと、前記メモリを制御するメモリコントローラと、を備える。複数の前記メモリセルについて複数のグループが設定されている。所定範囲内のいずれかの数がグループごとにリード回数の閾値として対応付けられている。前記メモリコントローラは、グループごとにリード回数を計数する計数部と、グループごとに、前記計数部によって計数されたリード回数が当該グループに対応付けられた前記閾値に達したか否かを判定する判定部と、前記判定部によって前記閾値に達したと判定されたグループがあった場合、当該グループに含まれる1以上のデータを読み出す読み出し部と、前記読み出し部によって読み出された前記1以上のデータを前記複数のメモリセルのいずれかに書き込む処理であるリフレッシュを実行するリフレッシュ実行部と、を備える。前記リフレッシュ実行部は、前記読み出し部によって読み出された前記1以上のデータについて所定基準に基づいて信頼性が低下しているか否かを判定し、低下していないと判定したとき、リフレッシュを実行せず、前記グループに対応付けられている前記閾値を元の値より小さい値に設定する。
図1は、第1実施形態のメモリシステム等の構成図である。 図2は、第1実施形態のNANDメモリのメモリセルアレイにおけるブロックの構造を示す模式図である。 図3は、第1実施形態のメモリセルアレイのデータ格納構造を示す図である。 図4は、第1実施形態におけるカウンタの初期値の例を示す図である。 図5は、第1実施形態のメモリシステムにおけるリフレッシュ等の処理を示すフローチャートである。 図6は、第5実施形態におけるカウンタの初期値の例を示す図である。 図7は、第1実施形態のメモリセルアレイの構造の模式図である。 図8は、第1実施形態のNANDメモリの構造の模式図である。 図9は、第1実施形態のNANDメモリの構造の模式図である。 図10は、第1実施形態のリフレッシュ対象の範囲の説明図である。 図11は、第1実施形態のリフレッシュ対象の範囲の説明図である。 図12は、第1実施形態のメモリシステムにおけるカウンタの初期値の設定の処理を示すフローチャートである。
以下、添付図面を参照しながら、実施形態のメモリシステム、および、メモリ制御方法について詳細に説明する。なお、以下の実施形態により本発明が限定されるものではない。また、第2実施形態以降について、それまでの実施形態で説明した事項と同様の事項については、説明を適宜省略する。
本実施形態の理解を容易にするために、まず、比較例(従来技術)について説明する。比較例では、不揮発性のメモリにおけるリード・ディスターブ対策として、例えば、一定のメモリ領域ごとにリード回数を計数するためのカウンタを設け、カウンタの値が閾値に達するとそのメモリ領域のデータをリフレッシュする。リフレッシュとは、データを読み出し、所定基準(例えばエラー数)に基いて信頼性が低下しているか否かを判定し、低下していると判定したときは、データをメモリ領域のうちのいずれかの領域(例えば他のメモリ領域)に書き込む処理である。
しかしながら、この手法では、例えば、シーケンシャルリード時等に、多くのカウンタの値が近いタイミングで閾値に達し、それによるリフレッシュ等の処理が連発するために、割り込み処理イベントの喪失や、応答性の低下等が起きる場合がある。そこで、本実施形態では、このような点を改善する手法を開示する。なお、シーケンシャルリードとは、アドレス空間内でアドレスの順番にリードアクセスすることであり、また、あるアドレス範囲内でアドレスの順番にリードアクセスを繰り返すことも含む。また、シーケンシャルリードにおけるアドレス空間とは、論理アドレス空間を指すことが一般的であるが、本実施形態では物理アドレス空間を指す場合も含む。
(第1実施形態)
以下、第1実施形態について説明する。図1は、第1実施形態のメモリシステム1等の構成図である。図1に示すメモリシステム1は、主な構成要素としてメモリコントローラ2とNANDメモリ3とDRAM(Dynamic Random Access Memory)4とを備え、ホスト機器10からの命令に基いて動作する。
NANDメモリ3は、データを記憶する複数のメモリセルを備える不揮発性のメモリである。NANDメモリ3において、複数のメモリセルはアレイ状に配置されており、そのアレイ状に配置された複数のメモリセルをメモリセルアレイ31と呼ぶ。
ここで、図2は、第1実施形態のNANDメモリ3のメモリセルアレイ31におけるブロック32の構造を示す模式図である。図2に示すように、メモリセルアレイ31は、複数のメモリセル(トランジスタ)を直列に並べたNANDストリングと呼ばれる回路が複数集まって構成される。各ブロックの1個のNANDストリングは、1個のビットライン(BL)に接続される。1個のブロック内では、1個のNANDストリングが1個のビットラインに対応する。1個のビットラインは、多数のブロックのNANDストリングに接続される。また、複数のNANDストリング内の互いに対応する位置にあるメモリセルのゲート電極は、ワードライン(WL)と呼ばれる線で互いに接続されている。
図2では、下から順に、横方向のラインとして、ソースラインSL、セレクトゲートラインSGS、ワードラインWL1~WL4、セレクトゲートラインSGDが配置されている。また、左から順に、縦方向のラインとして、ビットラインBL1~BL4が配置されている。なお、図2では、ビットラインについては4つのビットラインBL1~BL4のみを図示し、ワードラインについてはワードラインWL1~WL4のみを図示しているが、実際にはビットラインおよびワードラインはより多く存在し、多数のメモリセルがアレイ状に配置された構成となっている。NANDメモリ3では、1つのメモリセルに対し1ビット~4ビット程度の情報が書き込まれる。
データの書き込みは、アドレス情報により指定されたメモリセル群の個々のメモリセルの閾値電圧を、そのデータに対応した電圧レベルに設定することにより行われる。すなわち、書き込みデータは、メモリセル群の個々のメモリセルの閾値電圧として書き込まれる。データを読み出す際には読み出し対象となるデータが書き込まれたメモリセル群に対応するワードラインに適切な電圧(読み出し電圧)を印加し、残りのワードラインの電圧をハイレベルに設定することで、読み出し対象となるデータを保持するメモリセル群の個々のメモリセルの閾値電圧が、印加された電圧よりも高いか低いかを調べる。これを1回以上繰り返すことで、当該ワードライン上のすべてのメモリセルの閾値電圧の状態を検知して、当該ワードラインに保持されたデータを、読み出す。
このようなNANDメモリ3では、同じメモリセルに対するデータの読み出しが繰り返されると、読み出し対象のメモリセル以外の近くのメモリセルにビット化けが起きてしまう場合がある。これが、リード・ディスターブである。
次に、図3を参照して、第1実施形態のメモリセルアレイ31のデータ格納構造について説明する。図3は、第1実施形態のメモリセルアレイ31のデータ格納構造を示す図である。NANDメモリ3のメモリセルアレイ31には、一般に、複数のブロック32が含まれており、さらにブロック32の中には複数のページ33が含まれている。NANDメモリ3への書き込みは、ページ単位で行われる。一般的には、1つのページ33の中には、データとECC(Error Correction Code)(エラー訂正符号)36が書き込まれ、データにはユーザデータ(書き込みデータ)35と管理データ34が含まれる。
図1に戻って、ホスト機器10からメモリシステム1への書き込み命令や読み出し命令は、すべてメモリコントローラ2に送られる。メモリコントローラ2は、ホスト機器10からの命令に基いてNANDメモリ3を制御し、NANDメモリ3にデータを書き込んだり、NANDメモリ3からデータを読み出したりする。なお、図1ではNANDメモリ3とメモリコントローラ2とが1対1に対応している例を示しているが、1つのメモリコントローラ2が複数のNANDメモリ3を制御する構成であってもよい。
メモリコントローラ2は、ホストインタフェース制御部21と、カウンタ制御部22と、NAND制御部23と、を備える。メモリコントローラ2は、例えば、SoC(System On a Chip)として構成される半導体集積回路であり、CPU(Central Processing Unit)、RAM(Random Access Memory)、ROM(Read Only Memory)等を含む。
ホストインタフェース制御部21は、ホスト機器10から発行される命令に基いてデータの送受信を行う。具体的には、ホストインタフェース制御部21は、ホスト機器10が指し示すアドレス(論理アドレス、例えばLBA(Logical Block Address))の情報をNANDメモリ3の物理アドレス空間に変換する処理等を行う。論理アドレスと物理アドレスの変換には、アドレス変換テーブル(図示せず)を用いる。
NAND制御部23は、ホストインタフェース制御部21から送られる信号に基いて、NANDメモリ3を制御する。具体的には、NAND制御部23は、NANDメモリ3に対し、コマンドおよびアドレスを送出して、データの書き込みや読み出しを行う。
NAND制御部23は、書き込み部231と、読み出し部232と、ECC処理部233と、を備える。
書き込み部231は、NANDメモリ3に対してコマンドやアドレス情報を送出したり、書き込むべきデータを送出したりすることにより、NANDメモリ3に対してデータを書き込む。ホスト機器10から書き込みデータとして送られてきたデータは、ECC処理部233にてエラー訂正符号が付加され、NANDメモリ3へ書き込むべきデータに変換される。なお、エラー訂正符号を付加した後にデータを乱数化するような処理が付加されてもよい。また、ユーザデータ35のNANDメモリ3への書き込みに伴い、当該ユーザデータ35の論理アドレスが、NANDメモリ3の書き込み先である物理アドレスに対応づけられるよう、アドレス変換テーブルを更新する。
読み出し部232は、NANDメモリ3に対してコマンドやアドレス情報を送出することにより、NANDメモリ3からデータを読み出す。このとき、NANDメモリ3からの読み出しが、ホスト機器10からのリード命令に基く場合は、当該リード命令に含まれる論理アドレスを、アドレス変換テーブルを参照して、対応する物理アドレスへと変換する。NANDメモリ3から読み出したデータは(書込み時に乱数化を行う場合は、乱数化の逆変換を施し)、ECC処理部233にてエラー訂正が行われる。
NANDメモリ3における複数のメモリセルについて、リード回数をカウントするためのグループが設定されている。グループは、例えば、ブロック単位やページ単位で設定される。また、グループは、例えば物理アドレスによって特定されるが、論理アドレスによって特定されてもよい。DRAM4には、グループごとにリード回数を計数するためのカウンタ値が記憶される。なお、電源が切れるとDRAM4に書き込まれている情報は消えるが、この対応情報は電源が切れる前に不揮発性の他のメモリに退避させておき、電源再投入時に各カウンタ値をDRAM4に復帰できるようにしておく。
ここで、グループの定義方法の例について説明する。まず、図7~図9を参照して、メモリセルアレイ31やNANDメモリ3の構造について説明する。図7は、メモリセルアレイ31の構造の模式図である。1つのチップ(chip)は複数のプレーン(plane)を有している。1つのプレーン(plane)は複数のブロック(block)を有している。1つのブロック(block)は複数のワードライン(wordline)を有している。1つのワードライン(wordline)は複数のページ(Upper page, Middle page, Lower page)を有している。上述のページ、ワードライン、ブロックについて、それぞれ、以下において、物理ページ、物理ワードライン、物理ブロックと呼ぶ場合がある。
図8は、NANDメモリ3の構造の模式図である。図8に示すように、各チップ(chip)は、各チップが接続されたチャネル(channel)の番号とバンク(bank)の番号の組み合わせによって表すことができる。また、プレーン(plane)は、チャネル(channel)の番号とバンク(bank)の番号とプレーン(plane)の番号の組み合わせによって表すことができる。
ここで、各チップ(chip)、各プレーン(plane)について物理ブロック(block)を1個ずつ選択して、1以上のチャネル(channel)・1以上のバンク(bank)分の1以上のチップ(chip)のそれぞれに対応する各物理ブロックを組にしたものが論理ブロックである。論理ブロックは、メモリシステム1におけるブロックの管理単位であり、状態遷移や消去は論理ブロック単位で行う。
また、1つの論理ブロック内において、1個のチップ(chip)内の複数プレーン(plane)間の物理ブロック(block)の組を物理ブロック組と呼ぶ。
図9は、NANDメモリ3の構造の模式図である。論理ブロックを構成する各物理ブロックの1物理ページの集合を論理ページと呼ぶ。同様に、論理ブロックを構成する各物理ブロックの1ワードラインの集合を論理ワードラインと呼ぶ。
そして、グループは、例えば、1物理ブロック内の要素として、物理ページ、物理ワードライン、物理ブロックを単位として定義できる。
ほかに、グループは、物理ページ、物理ワードライン、物理ブロックをそれぞれ論理ブロック内でプレーン方向に束ねた(マルチプレーン化した)ものとして、物理ページ組、物理ワードライン組、物理ブロック組を単位として定義できる。なお、束ねる数は必ずしも均一でなくてよい。
また、ほかに、グループは、ブロック内で、近接する複数の要素を(ページ、ワードライン方向に)束ねたものとして、物理ページ群、物理ワードライン群を単位として定義できる。なお、束ねる数は必ずしも均一でなくてよい。
また、ほかに、グループは、物理ページ群、物理ワードライン群をマルチプレーン化したものとして、物理ページ組群、物理ワードライン組群を単位として定義できる。
また、ほかに、グループは、論理ブロックを単位として定義できる。
図1に戻って、カウンタ制御部22は、初期値設定部221と、カウンタ更新部222と、ゼロ検出部223と、を備える。ここで、例えば、シーケンシャルリード時等に、多くのカウンタの値が近いタイミングで閾値に達する事態を回避するために、グループごとに、リード回数の閾値回数として、リード回数の所定の閾値範囲内(所定範囲内の一例)のいずれかの数を対応付ける。閾値回数として本来、10万回を想定しているなら、所定の閾値範囲は、例えば、9万回~10万回であればよい。
以下において、ダウンカウンタとは、リード回数を計数するためのものであって、1つずつ数値を減らすカウンタを指す。また、アップカウンタとは、リード回数を計数するためのものであって、1つずつ数値を増やすカウンタを指す。なお、カウンタ初期値とカウンタ判定値を組み合わせることで、リード回数の閾値を実現できる。
例えば、グループごとに、ダウンカウンタの初期値として9万回~10万回のいずれかの数を設定しておき、また、ダウンカウンタ判定値をゼロとしておいて、当該グループへのリードがあるたびに当該グループに対応するダウンカウンタをデクリメントすればよい。
ここで、図12は、第1実施形態のメモリシステム1におけるカウンタの初期値の設定の処理を示すフローチャートである。初期値設定部221は、ブロック内のデータを消去したか否かを判定し(ステップS11)、Yesの場合はステップS12に進み、Noの場合はステップS11に戻る。
ステップS12において、初期値設定部221は、グループごとに、ゼロよりも大きい所定の初期値範囲内のいずれかの数を例えばランダムに選択してダウンカウンタの初期値として設定する。
このように、ダウンカウンタの初期化(初期値設定)は、一例として、ダウンカウンタに対応するグループを含むブロック内のデータを消去した際に行えばよい。図4は、第1実施形態におけるダウンカウンタの初期値の例を示す図である。図4に示すように、グループごとに、ダウンカウンタの初期値として9万回~10万回のいずれかの数が設定されている。例えば、すべてのグループのダウンカウンタの初期値を異ならせてもよいが、これに限定されない(詳細は後述)。
なお、ダウンカウンタをデクリメントする場合、ダウンカウンタの初期値をばらばらにしておいてダウンカウンタ判定値を共通にすることと、ダウンカウンタの初期値を共通にしてダウンカウンタ判定値をばらばらにすることは、ふるまいとして実質的に等価である。この第1実施形態では前者を採用するが、後者を採用してもよい。
図1に戻って、初期値設定部221(閾値設定部の一例)は、グループごとに、ゼロよりも大きい所定の初期値範囲(9万回~10万回)内のいずれかの数を例えばランダムに選択(例えば乱数により選択)してダウンカウンタの初期値として設定する。
また、カウンタ更新部222(計数部の一例)は、グループごとに、リードがあるたびにDRAM4におけるダウンカウンタをデクリメントすることでリード回数を計数する。なお、カウンタ更新部222は、ダウンカウンタの値がダウンカウンタ判定値に達したグループに対してさらにリードがあったときはダウンカウンタの値をダウンカウンタ判定値のままとする。例えば、ダウンカウンタ判定値がゼロの場合、ダウンカウンタの値をゼロのままとする。
また、ゼロ検出部223(判定部の一例)は、各グループについて、DRAM4におけるダウンカウンタの値がゼロに達したか否かを判定する。
また、判定部によってカウンタの値が判定値に達したと判定されたグループがあった場合、例えば、ゼロ検出部223によってダウンカウンタの値がゼロに達したと判定されたグループがあった場合、NAND制御部23(リフレッシュ実行部の一例)は、所定の箇所について、データを読み出し、ECC処理部233によりリフレッシュが必要かどうか判定する。なお、このECC処理部233による判定の処理は省略してもよい。
ECC処理部233によって規定値以上のエラー数が検出された場合には、データの信頼性が低下していると判断し、読み出し部232によってデータを読み出して、ECC処理部233によってエラー訂正を行い、書き込み部231によってその訂正したデータを複数のメモリセルのいずれかに書き込む処理であるリフレッシュを実行する。なお、リフレッシュで、訂正したデータを書き込む箇所は、他のメモリセルであってもよいし、同一のメモリセルであってもよい。
なお、データの読み出し元である上述の「所定の箇所」とは、ダウンカウンタの値がゼロに達したと判定された箇所と回路的に距離が近いメモリセルの範囲のことを指す。ここで、図10、図11を参照して、リフレッシュ対象(リフレッシュするメモリセル領域)の範囲について説明する。図10は、リフレッシュ対象の範囲の説明図である。
図10では、グループはワードライン単位とし、ダウンカウンタの値がダウンカウンタ判定値に達したグループがWL(n)であるものとする。その場合、リフレッシュ対象は、例えば、(a)に示すように、ワードラインWL(n)の1個隣のワードライン(WL(n-1)、WL(n+1))である。
また、リフレッシュ対象は、(b)に示すように、ワードラインWL(n)の2個隣のワードラインまで(WL(n-2)、WL(n-1)、WL(n+1)、WL(n+2))であってもよい。
また、リフレッシュ対象は、(c)に示すように、ブロック内の既定のワードライン(例えば特にリード・ディスターブに弱いと想定されるもの。一例としてWL(0))であってもよい。
また、リフレッシュ対象は、(d)に示すように、WL(n)を含むブロック全体であってもよい。
図11は、リフレッシュ対象の範囲の説明図である。図11では、グループは複数ワードライン単位とし、ダウンカウンタの値がダウンカウンタ判定値に達したグループがWL(m)~(n)(ただしm<n)であるものとする。その場合、リフレッシュ対象は、例えば、(a)に示すように、ワードラインWL(m)~(n)の1個隣のワードラインまで(WL(m-1)~WL(n+1))である。
また、リフレッシュ対象は、(b)に示すように、ワードラインWL(m)~(n)の2個隣のワードラインまで(WL(m-2)~WL(n+2))であってもよい。
また、リフレッシュ対象は、(c)に示すように、ブロック内の既定のワードライン(例えば特にリード・ディスターブに弱いと想定されるもの。一例としてWL(0))であってもよい。
また、リフレッシュ対象は、(d)に示すように、WL(m)~(n)を含むブロック全体であってもよい。
次に、図5を参照して、第1実施形態のメモリシステム1における処理について説明する。図5は、第1実施形態のメモリシステム1におけるリフレッシュ等の処理を示すフローチャートである。なお、図4に示すように、グループごとに、ダウンカウンタの初期値として9万回~10万回のいずれかの数が設定されているものとする。なお、ダウンカウンタの初期化(初期値設定)は、例えば、図12を用いて説明したように、ブロック内のデータを消去した際に行えばよい。
まず、カウンタ更新部222は、NANDメモリ3から読み出し部232によるデータの読み出しがあったか否かを判定し(ステップS1)、Yesの場合はステップS2に進み、Noの場合はステップS1に戻る。
ステップS2において、カウンタ更新部222は、対応するグループ(読み出しがあったグループ)のダウンカウンタ(図1のDRAM4参照)をデクリメントする。
次に、ステップS3において、判定部(例えばゼロ検出部223)は、DRAM4におけるダウンカウンタの値がダウンカウンタ判定値(例えばゼロ)に達したか否かを判定し、Yesの場合はステップS4に進み、Noの場合はステップS1に戻る。
ステップS4において、NAND制御部23は、当該グループについて、読み出し部232によってデータを読み出し、ECC処理部233によってエラー数(例えば、ページ内に含まれるエラービット数やエラー訂正で訂正失敗した回数)が規定値以上か否かを判定し、Yesの場合はステップS5に進み、Noの場合はステップS6に進む。
ステップS5において、NAND制御部23は、ダウンカウンタの値がダウンカウンタ判定値(例えばゼロ)に達して(ステップS3でYes)、かつ、エラー数が規定値以上だった(ステップS4でYes)グループについてリフレッシュを実行する。なお、「エラー数が既定値以上(ステップS4)」の条件を省略し、カウンタの値のみを、リフレッシュを実行するか否かの判定条件としてもよい。ステップS5の後、ステップS1に戻る。
ステップS6において、カウンタ制御部22の初期値設定部221は、ダウンカウンタの初期値を再設定する。再設定するダウンカウンタの初期値は、例えば、元の値より小さい値として、1万回が考えられる。つまり、ダウンカウンタの値がゼロに達したグループでも、エラー数が規定値未満であれば信頼性がまだ高いと考えられるので、リフレッシュを行うことなく、元の値より小さい値をダウンカウンタの初期値として設定する。
このようにして、第1実施形態のメモリシステム1によれば、リード・ディスターブによる信頼性低下現象を抑制することができる。具体的には、グループごとにリード回数の閾値回数を異ならせておくことで、シーケンシャルリード時等に、多くのカウンタの値が近いタイミングで閾値に達する可能性を大幅に低減させることができる。
また、グループごとのダウンカウンタ初期値、すなわちリード回数の閾値をランダムに選択することで、処理が簡潔に済む。
また、ダウンカウンタのデクリメントによってリード回数を計数し、ダウンカウンタ判定値をゼロとすることで、当該機能をハードウェア等で容易に実現できる。ゼロとの比較はハードウェアとして容易に実装できるからである。
また、ダウンカウンタの値がゼロに達したグループに対してさらにリードがあったときはダウンカウンタの値をゼロのままとすることで、ダウンカウンタの値がゼロに達してからただちにゼロ検出することに失敗した場合でも、ダウンカウンタの値がゼロのままなので、後で確実にゼロ検出をすることができる。
(第2実施形態)
次に、第2実施形態について説明する。第2実施形態では、第1実施形態の内容に加えて、ゼロ検出部223が、所定時間ごとに、各グループについて、ダウンカウンタの値がダウンカウンタ判定値(例えばゼロ)に達したか否かを判定する。
例えば、メモリコントローラ2内のCPUの稼働率が高い場合、ダウンカウンタの値がゼロに達したことをゼロ検出部223によって検出できずに時間経過してしまう事象(以下、検出漏れ)が考えられる。この第2実施形態によれば、ゼロ検出部223が、所定時間ごとに各グループについてダウンカウンタの値がゼロに達したか否かを判定するようにすることで、そのような検出漏れが起きた場合でも、その後にカウンタのゼロを検出してリフレッシュ等を実行することができる。つまり、例えば、メモリコントローラ2の割り込みキューがあふれた場合でも、その後に、ゼロに達しているダウンカウンタをもれなく検出し、リード・ディスターブ対策としてのリフレッシュ等を実行することができる。
(第3実施形態)
次に、第3実施形態について説明する。第1実施形態では、グループごとのメモリセルの数が同一であることを前提としたが、第3実施形態では、グループごとのメモリセルの数が同一ではないようにする。例えば、リード・ディスターブに強いメモリセル部分に関しては2,3ページで1グループとして、弱いメモリセル部分は100ページで1グループとして設定する。そうすると、100ページ分をまとめたグループでは、カウンタが判定値に早く達して、リフレッシュ等を頻繁に行うことになる。逆に、2,3ページ分をまとめたグループでは、カウンタが判定値に達するのが遅く、リフレッシュの頻度が低くなる。
このようにして、第3実施形態によれば、複数のメモリセルにおけるリード・ディスターブへの強さ等に応じてグループごとにサイズを異ならせることで、実効性を大きく落とすことなくグループ数を減らし、処理を軽くすることができる。
(第4実施形態)
次に、第4実施形態について説明する。第1実施形態では、ダウンカウンタをデクリメントすることによりリード回数を計数した。第4実施形態では、アップカウンタをインクリメントすることによりリード回数を計数する。そのために、例えば、まず、すべてのグループに関するアップカウンタ判定値としてゼロよりも大きい所定値(例えば10万回)が設定される。また、初期値設定部221は、グループごとに、所定値よりも小さい所定の初期値範囲(例えば0回~1万回)内のいずれかの数をアップカウンタの初期値として設定する。なお、アップカウンタの初期化(初期値の設定)は、例えば、ダウンカウンタの初期化のとき(図12)と同様に、アップカウンタに対応するグループを含むブロック内のデータを消去した際に行えばよい。
そして、カウンタ更新部222は、グループごとに、リードがあるたびにアップカウンタをインクリメントすることでリード回数を計数する。また、ゼロ検出部223に代わる判定部が、各グループについて、アップカウントの値がアップカウンタの判定値、すなわち所定値に達したか否かを判定する。
なお、アップカウンタをインクリメントする場合、初期値をばらばらにしておいて判定値を共通にすることと、初期値を共通にして判定値をばらばらにすることは、ふるまいとして実質的に等価であり、いずれを採用してもよい。
このようにして、第4実施形態によれば、ダウンカウンタをデクリメントすることによってではなく、アップカウンタをインクリメントすることによってリード回数を計数することができる。
(第5実施形態)
次に、第5実施形態について説明する。第1実施形態では、グループごとのダウンカウンタの初期値を所定の初期値範囲内でランダムに決定していた。この第5実施形態では、グループごとのカウンタの初期値を所定の初期値範囲内で数式等の条件により決定する。例えば、ダウンカウンタの場合ではなくアップカウンタの場合を例にとると、初期値設定部221が、次の2つの条件を元にアップカウンタの初期値を決定する。
(条件1)初期値が同じ数(または所定範囲内の数)であるグループ数が所定数以下になるようにする。
(条件2)初期値が同じ数(または所定範囲内の数)であるグループのグループ間距離が所定距離以上になるようにする。
なお、グループ間距離とは、あるアクセス方法にしたがってグループを並べた時に隣り合う任意の2つのグループの間に存在するグループの数である。アクセス方法の一例としては、シーケンシャルリードが考えられる。
次に、図6を参照して、第5実施形態におけるカウンタの初期値の例について説明する。図6は、第5実施形態におけるカウンタの初期値の例を示す図である。ここでは、初期値が同じ数であるグループ数が3個以下(条件1)で、グループ間距離を30以上(条件2)とし、以下の式(1)で計算すると、グループ番号に対応するカウンタの初期値の分布は図6に示す通りとなる。なお、%は剰余演算、*は乗算、kは1000を表す。
(グループ番号+(グループ番号%4)*8)%32*1.5k ・・・式(1)
このようにして、第5実施形態によれば、カウンタの初期値を上述のような条件によって決定することで、ランダムに決定する場合に比べて、初期値が同じ数(または所定範囲内の数)であるグループ数を確実に少なく抑えたり、グループ間距離を確実に大きくとったりすることができる。したがって、リード・ディスターブが招く信頼性低下現象を検出したときの性能劣化の度合いを抑制することができる。
以上、本発明の実施形態を説明したが、ここで説明した実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。ここで説明した新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。ここで説明した実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
例えば、上述のホストインタフェース制御部21や、カウンタ制御部22に含まれる初期値設定部221、カウンタ更新部222、ゼロ検出部223や、NAND制御部23に含まれる書き込み部231、読み出し部232、およびECC処理部233は、1または複数のプロセッサが実行するソフトウェアにより実現されてもよいし、専用のIC(Integrated Circuit)などのハードウェアにより実現されてもよいし、ソフトウェアおよびハードウェアの併用により実現されてもよい。
1…メモリシステム、2…メモリコントローラ、3…NANDメモリ、4…DRAM、10…ホスト機器、21…ホストインタフェース制御部、22…カウンタ制御部、23…NAND制御部、31…メモリセルアレイ、32…ブロック、33…ページ、34…管理データ、35…ユーザデータ、36…ECC、221…初期値設定部、222…カウンタ更新部、223…ゼロ検出部、231…書き込み部、232…読み出し部、233…ECC処理部。

Claims (13)

  1. データを記憶する複数のメモリセルを備える不揮発性のメモリと、
    前記メモリを制御するメモリコントローラと、を備えるメモリシステムであって、
    複数の前記メモリセルについて複数のグループが設定されていて、
    所定範囲内のいずれかの数がグループごとにリード回数の閾値として対応付けられてい
    て、
    前記メモリコントローラは、
    グループごとにリード回数を計数する計数部と、
    グループごとに、前記計数部によって計数されたリード回数が当該グループに対応付け
    られた前記閾値に達したか否かを判定する判定部と、
    前記判定部によって前記閾値に達したと判定されたグループがあった場合、当該グルー
    プに含まれる1以上のデータを読み出す読み出し部と、
    前記読み出し部によって読み出された前記1以上のデータを前記複数のメモリセルのい
    ずれかに書き込む処理であるリフレッシュを実行するリフレッシュ実行部と、
    を備え、
    前記リフレッシュ実行部は、
    前記読み出し部によって読み出された前記1以上のデータについて所定基準に基づいて
    信頼性が低下しているか否かを判定し、低下していないと判定したとき、リフレッシュを
    実行せず、前記グループに対応付けられている前記閾値を元の値より小さい値に設定する

    メモリシステム。
  2. 前記リフレッシュ実行部は、
    前記読み出し部によって読み出された前記1以上のデータについて前記所定基準に基づ
    いて信頼性が低下しているか否かを判定し、低下していると判定したときは、当該1以上
    のデータを前記複数のメモリセルのいずれかに書き込む処理であるリフレッシュを実行す
    る、
    請求項1に記載のメモリシステム。
  3. グループごとに、前記所定範囲内の異なる数がリード回数の閾値として対応付けられて
    いる、
    請求項1に記載のメモリシステム。
  4. 前記判定部は、所定時間ごとに、グループごとに、前記リード回数が当該グループに対
    応付けられた前記閾値に達したか否かを判定する、
    請求項1に記載のメモリシステム。
  5. グループごとに、前記所定範囲内のいずれかの数をランダムに選択することで前記閾値
    を設定する閾値設定部をさらに備える、
    請求項1に記載のメモリシステム。
  6. グループごとに、前記閾値が同じ数または所定範囲の数であるグループ数が所定数以下
    になるように前記所定範囲内のいずれかの数を選択することで前記閾値を設定する閾値設
    定部をさらに備える、
    請求項1に記載のメモリシステム。
  7. 前記閾値設定部は、
    前記閾値が同じ数または所定範囲の数であるグループの所定のアクセス方法でのリード
    時のグループ間距離が所定距離以上になるように、グループごとの前記閾値を設定する、
    請求項6に記載のメモリシステム。
  8. 前記所定のアクセス方法は、シーケンシャルリードである、
    請求項7に記載のメモリシステム。
  9. グループごとの前記メモリセルの数が同一ではない、
    請求項1に記載のメモリシステム。
  10. すべての前記グループに関するダウンカウンタ判定値としてゼロが設定されており、
    前記メモリコントローラは、グループごとに、ゼロよりも大きい所定の初期値範囲内の
    いずれかの数をダウンカウンタ初期値として設定する初期値設定部をさらに備え、
    前記計数部は、前記グループごとに、リードがあるたびにダウンカウンタをデクリメン
    トすることで前記リード回数を計数し、
    前記判定部は、それぞれの前記グループについて、前記ダウンカウンタの値が前記ダウ
    ンカウンタ判定値に達したか否かを判定する、
    請求項1に記載のメモリシステム。
  11. 前記計数部は、前記ダウンカウンタの値が前記ダウンカウンタ判定値に達した前記グル
    ープに対してさらにリードがあったときは前記ダウンカウンタを前記ダウンカウンタ判定
    値のままとする、
    請求項10に記載のメモリシステム。
  12. すべての前記グループに関するゼロよりも大きいアップカウンタ判定値が設定されてお
    り、
    前記メモリコントローラは、前記グループごとに、前記アップカウンタ判定値よりも小
    さい所定の初期値範囲内のいずれかの数をアップカウンタ初期値として設定する初期値設
    定部をさらに備え、
    前記計数部は、前記グループごとに、リードがあるたびにアップカウンタをインクリメ
    ントすることで前記リード回数を計数し、
    前記判定部は、それぞれの前記グループについて、前記アップカウンタの値が前記アッ
    プカウンタ判定値に達したか否かを判定する、
    請求項1に記載のメモリシステム。
  13. データを記憶する複数のメモリセルを備える不揮発性のメモリを制御するメモリ制御方
    法であって、
    複数の前記メモリセルについて複数のグループが設定されていて、
    所定範囲内のいずれかの数がグループごとにリード回数の閾値として対応付けられてい
    て、
    グループごとにリード回数を計数する計数ステップと、
    グループごとに、前記計数ステップによって計数されたリード回数が当該グループに対
    応付けられた前記閾値に達したか否かを判定する判定ステップと、
    前記判定ステップによって前記閾値に達したと判定されたグループがあった場合、当該
    グループに含まれる1以上のデータを読み出す読み出しステップと、
    前記読み出しステップによって読み出された前記1以上のデータを前記複数のメモリセ
    ルのいずれかに書き込む処理であるリフレッシュを実行するリフレッシュ実行ステップと
    、を含み、
    前記リフレッシュ実行ステップは、
    前記読み出しステップによって読み出された前記1以上のデータについて所定基準に基
    づいて信頼性が低下しているか否かを判定し、低下していないと判定したとき、リフレッ
    シュを実行せず、前記グループに対応付けられている前記閾値を元の値より小さい値に設
    定する、
    メモリ制御方法。
JP2018051605A 2018-03-19 2018-03-19 メモリシステム、および、メモリ制御方法 Active JP7074519B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2018051605A JP7074519B2 (ja) 2018-03-19 2018-03-19 メモリシステム、および、メモリ制御方法
US16/159,410 US10854302B2 (en) 2018-03-19 2018-10-12 Memory system and memory control method
US17/060,767 US11189353B2 (en) 2018-03-19 2020-10-01 Memory system and memory control method
US17/512,394 US11727998B2 (en) 2018-03-19 2021-10-27 Memory system and memory control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018051605A JP7074519B2 (ja) 2018-03-19 2018-03-19 メモリシステム、および、メモリ制御方法

Publications (2)

Publication Number Publication Date
JP2019164859A JP2019164859A (ja) 2019-09-26
JP7074519B2 true JP7074519B2 (ja) 2022-05-24

Family

ID=67906033

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018051605A Active JP7074519B2 (ja) 2018-03-19 2018-03-19 メモリシステム、および、メモリ制御方法

Country Status (2)

Country Link
US (3) US10854302B2 (ja)
JP (1) JP7074519B2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7074519B2 (ja) * 2018-03-19 2022-05-24 キオクシア株式会社 メモリシステム、および、メモリ制御方法
US11263124B2 (en) 2018-08-03 2022-03-01 Micron Technology, Inc. Host-resident translation layer validity check
US10923202B2 (en) * 2018-08-03 2021-02-16 Micron Technology, Inc. Host-resident translation layer triggered host refresh
US11226907B2 (en) 2018-12-19 2022-01-18 Micron Technology, Inc. Host-resident translation layer validity check techniques
US11226894B2 (en) 2018-12-21 2022-01-18 Micron Technology, Inc. Host-based flash memory maintenance techniques
KR20200140074A (ko) * 2019-06-05 2020-12-15 에스케이하이닉스 주식회사 휘발성 메모리 장치 및 이의 동작 방법
KR20210051644A (ko) * 2019-10-31 2021-05-10 에스케이하이닉스 주식회사 메모리 시스템, 메모리 컨트롤러 및 동작 방법
US11594273B2 (en) 2020-10-14 2023-02-28 Hewlett Packard Enterprise Development Lp Row hammer detection and avoidance
US11468942B2 (en) * 2021-03-02 2022-10-11 Hewlett Packard Enterprise Development Lp System and method for detecting memory cell disturbance by monitoring canary cells

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009224012A (ja) 2007-12-27 2009-10-01 Hagiwara Sys-Com:Kk メモリの管理方法
US20140173180A1 (en) 2012-12-14 2014-06-19 Sandisk Technologies Inc. Tracking read accesses to regions of non-volatile memory
US20140223246A1 (en) 2013-02-06 2014-08-07 Kyungryun Kim Memory, memory controller, memory system, method of memory, memory controller and memory system
US20160055917A1 (en) 2014-08-19 2016-02-25 Samsung Electronics Co., Ltd. Storage devices and methods of operating storage devices

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4489127B2 (ja) * 2008-02-29 2010-06-23 株式会社東芝 半導体記憶装置
US7818525B1 (en) 2009-08-12 2010-10-19 Texas Memory Systems, Inc. Efficient reduction of read disturb errors in NAND FLASH memory
US8839073B2 (en) 2012-05-04 2014-09-16 Lsi Corporation Zero-one balance management in a solid-state disk controller
US9257169B2 (en) 2012-05-14 2016-02-09 Samsung Electronics Co., Ltd. Memory device, memory system, and operating methods thereof
JP5483378B1 (ja) 2012-11-01 2014-05-07 東芝情報システム株式会社 フラッシュメモリの劣化検査装置、劣化検査方法及劣化検査用プログラム
KR20150016867A (ko) * 2013-08-05 2015-02-13 삼성에스디아이 주식회사 정션 박스 및 이를 구비하는 태양광 모듈
KR102151183B1 (ko) * 2014-06-30 2020-09-02 삼성전자주식회사 저항성 메모리 장치 및 저항성 메모리 장치의 동작방법
US20160070643A1 (en) * 2014-09-08 2016-03-10 Sandisk Technologies Inc. System and method of counting program/erase cycles
US20160118132A1 (en) 2014-10-27 2016-04-28 Sandisk Enterprise Ip Llc Low Impact Read Disturb Handling
US10014060B2 (en) 2015-01-30 2018-07-03 Sandisk Technologies Llc Memory system and method for reducing read disturb errors
CN106257594B (zh) 2015-06-16 2021-01-05 爱思开海力士有限公司 读取干扰收回策略
JP2017055870A (ja) 2015-09-15 2017-03-23 株式会社平和 遊技機
JP6523114B2 (ja) 2015-09-15 2019-05-29 ラピスセミコンダクタ株式会社 メモリ制御装置及びメモリ制御方法
US10354714B2 (en) * 2016-08-23 2019-07-16 Micron Technology, Inc. Temperature-dependent refresh circuit configured to increase or decrease a count value of a refresh timer according to a self-refresh signal
JP7074519B2 (ja) * 2018-03-19 2022-05-24 キオクシア株式会社 メモリシステム、および、メモリ制御方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009224012A (ja) 2007-12-27 2009-10-01 Hagiwara Sys-Com:Kk メモリの管理方法
JP2009224013A (ja) 2007-12-27 2009-10-01 Hagiwara Sys-Com:Kk 記憶装置、システム、該システムを搭載した遊技機
JP2009223876A (ja) 2007-12-27 2009-10-01 Hagiwara Sys-Com:Kk メモリの管理方法
US20140173180A1 (en) 2012-12-14 2014-06-19 Sandisk Technologies Inc. Tracking read accesses to regions of non-volatile memory
US20140223246A1 (en) 2013-02-06 2014-08-07 Kyungryun Kim Memory, memory controller, memory system, method of memory, memory controller and memory system
US20160055917A1 (en) 2014-08-19 2016-02-25 Samsung Electronics Co., Ltd. Storage devices and methods of operating storage devices

Also Published As

Publication number Publication date
JP2019164859A (ja) 2019-09-26
US20210020253A1 (en) 2021-01-21
US10854302B2 (en) 2020-12-01
US11727998B2 (en) 2023-08-15
US20220051736A1 (en) 2022-02-17
US11189353B2 (en) 2021-11-30
US20190287632A1 (en) 2019-09-19

Similar Documents

Publication Publication Date Title
JP7074519B2 (ja) メモリシステム、および、メモリ制御方法
CN106251903B (zh) 存储系统及其操作方法
KR102546229B1 (ko) 리드 리클레임 동작 시에 버퍼 메모리를 이용하는 스토리지 장치
US9230670B2 (en) Semiconductor device, memory system and operating method thereof
KR20200022213A (ko) 상 변화 메모리 장치를 포함하는 반도체 메모리 장치 및 상 변화 메모리 장치를 액세스하는 방법
US11010289B2 (en) Data storage device and operating method thereof
US10957406B2 (en) Memory system that determines a type of stress of a memory device
US20180211707A1 (en) Semiconductor memory device and method of controlling semiconductor memory device
US20200142606A1 (en) Memory device and method of operating the same
KR20220058224A (ko) 메모리 시스템 및 이에 포함된 메모리 컨트롤러의 동작 방법
KR20180110708A (ko) 스토리지 장치 및 배드 블록 지정 방법
CN114489466A (zh) 存储器系统及其操作方法
US10216570B2 (en) Memory device and control method thereof
US10714193B2 (en) Data storage apparatus and method for preventing data error using the same
KR102306853B1 (ko) 호스트 장치가 스토리지 장치를 제어하는 방법 및 호스트 장치와 스토리지 장치를 포함하는 메모리 시스템
JP2017111503A (ja) 半導体記憶装置及びその制御方法
US11776611B2 (en) Managing write disturb for units of a memory device using weighted write disturb counts
US20220317877A1 (en) Memory system and method of operating the same
US11507323B2 (en) Memory device and operating method thereof
US11348642B2 (en) Memory system and control method thereof
US11594289B2 (en) Semiconductor device, memory system and semiconductor memory device
US20240036730A1 (en) Memory controller, memory system including the memory controller, and method of operating the same
KR102661936B1 (ko) 저장 장치
KR20240033792A (ko) 읽기 정보 및 디코딩 정보에 기초하여 연판정 디코딩을 위한 읽기 레벨을 생성하는 스토리지 컨트롤러, 이를 포함하는 스토리지 장치, 및 이의 동작 방법
JP2022046887A (ja) 半導体記憶装置

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20180905

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200915

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210714

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210803

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210930

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20220208

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220307

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20220307

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20220323

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20220329

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220512

R151 Written notification of patent or utility model registration

Ref document number: 7074519

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151