JP7161583B1 - 半導体装置 - Google Patents

半導体装置 Download PDF

Info

Publication number
JP7161583B1
JP7161583B1 JP2021107309A JP2021107309A JP7161583B1 JP 7161583 B1 JP7161583 B1 JP 7161583B1 JP 2021107309 A JP2021107309 A JP 2021107309A JP 2021107309 A JP2021107309 A JP 2021107309A JP 7161583 B1 JP7161583 B1 JP 7161583B1
Authority
JP
Japan
Prior art keywords
code
error
safe mode
rom
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
JP2021107309A
Other languages
English (en)
Other versions
JP2023005422A (ja
Inventor
真言 妹尾
克年 水藤
Original Assignee
ウィンボンド エレクトロニクス コーポレーション
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 ウィンボンド エレクトロニクス コーポレーション filed Critical ウィンボンド エレクトロニクス コーポレーション
Priority to JP2021107309A priority Critical patent/JP7161583B1/ja
Priority to TW111120818A priority patent/TWI816418B/zh
Priority to KR1020220070850A priority patent/KR20230002052A/ko
Priority to CN202210709955.9A priority patent/CN115547399A/zh
Priority to US17/851,041 priority patent/US12067283B2/en
Application granted granted Critical
Publication of JP7161583B1 publication Critical patent/JP7161583B1/ja
Publication of JP2023005422A publication Critical patent/JP2023005422A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check
    • 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/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • 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
    • G11C16/20Initialising; Data preset; Chip identification
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/0757Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
    • 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/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • 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/1012Adding 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 codes or arrangements adapted for a specific type of error
    • 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/1068Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
    • 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
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • 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/22Safety or protection circuits preventing unauthorised or accidental access to memory cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C17/00Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards
    • G11C17/14Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards in which contents are determined by selectively establishing, breaking or modifying connecting links by permanently altering the state of coupling elements, e.g. PROM
    • G11C17/16Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards in which contents are determined by selectively establishing, breaking or modifying connecting links by permanently altering the state of coupling elements, e.g. PROM using electrically-fusible links
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C17/00Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards
    • G11C17/14Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards in which contents are determined by selectively establishing, breaking or modifying connecting links by permanently altering the state of coupling elements, e.g. PROM
    • G11C17/18Auxiliary circuits, e.g. for writing into memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/027Detection or location of defective auxiliary circuits, e.g. defective refresh counters in fuses
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0411Online error correction
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/20Memory cell initialisation circuits, e.g. when powering up or down, memory clear, latent image memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Read Only Memory (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)
  • Bipolar Transistors (AREA)

Abstract

【課題】 誤動作等を抑制し安全な動作を行うことができる半導体記憶装置および動作方法を提供する。【解決手段】 本発明のフラッシュメモリは、CPUがROMから読み出したコードに基づき動作を制御するものであって、CPU200は、ROM210から読み出したコードの誤りをCRCを用いて検出するステップと(S120)、コードの誤りが検出されたとき、セーフモードに移行するか否かを判定するステップと(S160)、セーフモードに移行すると判定した場合、コードの誤りを検出し検出した誤りを訂正するステップ(S170)とを有する。【選択図】 図4

Description

本発明は、フラッシュメモリ等の半導体装置に関し、特に、中央処理演算装置(CPU)またはマイクロコントローラ等がROMから読み出したコードに基づき動作を制御する半導体装置に関する。
NAND型フラッシュメモリ等では、電源投入時、フューズセルから動作仕様に関する設定情報をレジスタにロードし、当該設定情報に基づき読出し、プログラム、消去等の動作電圧等を調整している。例えば、特許文献1の不揮発性メモリは、プリチェック用フューズセルから読み出したデータがプリチェック用データに一致するか否か判定し、メインフューズセルから読み出したコンフィギュレーション情報を不揮発性メモリ領域に格納し、ポストチェック用フューズセルから読み出したデータがポストチェック用データに一致するか否か判定し、プリチェックおよびポストチェックが一致する場合には、コンフィギュレーション情報の読出しを終了する、パワーオン動作を開示している。
米国特許第7,433,247号公報
一般にNAND型フラッシュメモリでは、CPU(中央処理演算装置)がROMに格納されたコードを読み出すことで種々の動作シーケンスを制御している。しかしながら、電源供給電圧がノイズやピーク電流により一時的に降下したり、繰り返しの読出しによるストレスなどが原因でROMそのものに欠陥や故障が生じると、ROMの読出しにエラーが生じることがある。もし、ROMの読出しエラーが発生すると、つまり読み出したコードに誤りがあると、チップの動作不良(例えば、ビジー状態がレディ状態に戻らないビジースタック)や誤動作(フューズセルのような間違ったアドレスのセルに誤ってデータをプログラムしたり、フューズセルのような間違ったアドレスのセルのデータを消去)を引き起こしてしまう。
こうしたROMの読出しエラーの対策として、CRC(巡回冗長検査:Cyclic Redundancy Check)がある。CRCは、送信側が予め定められた生成多項式で除算した余りを検査データ(パリティデータ)として付加して送信し、受信側で同じ生成多項式を使用してデータを除算し、その余りを比較照合することによって受信データの誤りの検出を可能にする。
図1は、CRCを利用したフラッシュメモリのパワーオンシーケンスの動作フローである。電源が投入されると、CPUは、ROMからコードを読出すと(S10)、そのコードのCRCによる誤りの有無の検出が行われる(S20)。誤りが検出されなければ(S30)、フューズセルから設定情報の読出しが行われ(S40)、読み出した設定情報がレジスタにロードされる(S50)。誤りが検出された場合には、ROMコードの読出しが繰り返される。この場合、ROMコードの読出しのリトライ回数が保持され、リトライ回数が規定値N以下であれば、動作環境の改善を待ってから(S70)、ROMコードの読出しが繰り返される(S10)。リトライ回数が規定値Nを超える場合には、パワーオンシーケンスが失敗で終了する。
このようなCRCのチェックは、ある偶発的な誤りの発生を検出し、これを通知することができるが、これによって種々の動作不良や誤動作を防止することはできない。また、フラッシュメモリの不良解析等において、CRCのチェックだけでは、誤りの発生原因をピンポイントで特定することは困難である。
本発明は、このような従来の課題を解決するものであり、誤動作等を抑制し安全な動作を行うことができる半導体装置および動作方法を提供することを目的とする。
本発明の半導体装置の動作方法は、ROMから読み出したコードに基づき動作を制御するコントローラを含むものであって、前記コントローラは、ROMから読み出したコードの誤りを第1のアルゴリズムを用いて検出するステップと、コードの誤りが検出されたとき、セーフモードに移行するか否かを判定するステップと、前記セーフモードに移行すると判定した場合、コードの誤りを検出し、検出した誤りを訂正するステップとを有する。
ある態様では、前記コントローラは、コードの誤りの検出回数が規定値に到達したときセーフモードに移行すると判定する。ある態様では、前記コントローラはさらに、実行中の動作シーケンスの経過時間を計測するステップを含み、前記コントローラは、計測された経過時間が一定時間を超えたとき、コードの誤りの検出回数と無関係にセーフモードに移行すると判定する。ある態様では、前記コントローラはさらに、読み出したコードまたは訂正されたコードに基づき第1の動作を実行するステップを含む。ある態様では、前記コントローラはさらに、前記第1の動作に続く第2の動作を制御するため、当該第2の動作に対応するコードをROMから読み出すステップと、読み出したコードの誤りを前記第1のアルゴリズムと異なる第2のアルゴリズムを用いて検出するステップと、第2のアルゴリズムによるコードの誤りが検出されたとき、セーフモードに移行するか否かを判定するステップと、前記セーフモードに移行すると判定した場合、コードの誤りを検出し、検出した誤りを訂正するステップとを含む。ある態様では、前記コントローラはさらに、コードの誤り検出・訂正回数が規定値を超えた場合、動作を終了するステップを含む。ある態様では、前記コントローラはさらに、誤り検出に関する誤り情報および誤りの検出・訂正に関する訂正情報を保持するステップを含む。ある態様では、前記コントローラはさらに、前記誤り情報および前記訂正情報を出力するステップを含む。ある態様では、前記誤り情報は、誤りの検出の有無、誤りの検出回数、経過時間の少なくとも1つを含み、前記訂正情報は、訂正の可否、誤りの検出・訂正回数、訂正ビット情報の少なくとも1つを含む。ある態様では、動作方法はさらに、前記セーフモードがイネーブルかディスエーブルかを設定するステップを含み、前記コントローラは、イネーブルが設定された場合にのみ、前記セーフモードに移行するか否かを判定する。ある態様では、前記第1の動作は、フューズセルからの設定情報の読出しであり、前記第2の動作は、フューズセルから読み出した設定情報のレジスタへのロードである。
本発明に係る半導体装置は、ROMから読み出したコードに基づき動作を制御するコントローラを含むものであって、前記コントローラは、ROMからコードを読み出す読出し手段と、ROMから読み出されたコードの誤りを第1のアルゴリズムを用いて検出する検出手段と、コードの誤りが検出されたとき、セーフモードに移行するか否かを判定する判定手段と、前記セーフモードに移行すると判定した場合、コードの誤りを検出し、検出した誤りを訂正する訂正手段とを含む。
ある態様では、前記判定手段は、コードの誤りの検出回数が規定値に到達したときセーフモードに移行すると判定する。ある態様では、半導体装置はさらに、実行中の動作シーケンスの経過時間を計測する計測手段を含み、前記判定手段は、前記計測手段により計測された時間が一定時間に達したとき、コードの誤り検出回数と無関係にセーフモードに移行すると判定する。ある態様では、前記コントローラはさらに、読み出したコードまたは訂正されたコードに基づき第1の動作を実行する実行手段を含む。ある態様では、前記読出し手段は、前記第1の動作に続く第2の動作を制御するため、当該第2の動作に対応するコードをROMから読み出し、前記検出手段は、読み出したコードの誤りを前記第1のアルゴリズムと異なる第2のアルゴリズムを用いて検出し、前記判定手段は、第2のアルゴリズムによるコードの誤りが検出されたとき、セーフモードに移行するか否かを判定し、前記訂正手段は、前記セーフモードに移行すると判定した場合、コードの誤りを検出し、検出した誤りを訂正する。ある態様では、前記コントローラはさらに、前記訂正手段による誤り検出・訂正回数が規定値を超えた場合、ROMからのコードの読出しを終了する。ある態様では、前記コントローラはさらに、前記検出手段の検出に関する検出情報および前記訂正手段の訂正に関する訂正情報を保持する保持手段と、当該保持手段に保持された検出情報および訂正情報を出力する出力手段とを含む。ある態様では、前記コントローラはさらに、前記セーフモードがイネーブルかディスエーブルかを設定する設定手段とを含み、前記判定手段は、前記設定手段によりイネーブルが設定された場合にのみ前記セーフモードに移行するか否かを判定する。
本発明によれば、ROMから読み出したコードの誤りを検出し、セーフモードに移行した場合には、コードの誤りを検出し、検出した誤りを訂正するようにしたので、ROMのコードに基づく誤動作を抑制することができる。また、動作シーケンスに含まれる複数の動作に関して異なるアルゴリズムを用いて複数の誤りを検出することで、誤動作または動作不良の抑制をより効果的に行うことができる。さらに、誤り検出に関する検出情報および誤り検出・訂正に関する訂正情報を保持しこれを出力可能にすることで、誤動作または動作不良の原因となる箇所の特定ないし解析を容易に行うことができる。
従来のフラッシュメモリのパワーオンシーケンス時の動作フローを示す図である。 本発明の実施例に係るNAND型フラッシュメモリの構成を示す図である。 本発明の実施例に係るコントローラに含まれる機能を説明する図である。 本発明の第1の実施例に係るコントローラの動作を説明するフローである。 本発明の第2の実施例に係るコントローラの動作を説明するフローである。 本発明の第2の実施例によるパワーオンシーケンスの動作フローである。 本発明の第2の実施例によるプログラムシーケンスの動作フローである。 本発明の実施例による状態レジスタの一例を示す図である。 本発明の実施例による状態レジスタの出力例を示すフローである。 本発明の第3の実施例による動作モードを設定する設定レジスタの一例を示す図である。 本発明の第3の実施例による動作モードの設定を示すフローである。
次に、本発明の実施の形態について詳細に説明する。本発明に係る半導体装置は、NAND型フラッシュメモリ、あるいはこのようなフラッシュメモリを埋め込むマイクロプロセッサ、マイクロコントローラ、ロジック、ASIC、画像や音声を処理するプロセッサ、無線信号等の信号を処理するプロセッサなどを含む。以下の説明では、NAND型フラッシュメモリを例示する。
次に、本発明の実施例について図面を参照して説明する。図2は、本発明の実施例に係るNAND型フラッシュメモリの構成を示すブロック図である。同図に示すように、本実施例に係るフラッシュメモリ100は、複数のメモリセルが行列状に配列されたメモリアレイ110と、読出しデータを外部に出力したり、外部から入力されるデータを取り込む入出力回路120と、プログラムすべきデータの符号生成や読み出されたデータの誤り検出・訂正を行うECC回路130と、入出力回路120を介してアドレスデータを受け取るアドレスレジスタ140と、入出力回路120を介して受け取ったコマンドデータや端子に印加された制御信号に基づき各部を制御するコントローラ150と、アドレスレジスタ140から行アドレス情報Axを受け取り、行アドレス情報Axをデコードし、デコード結果に基づきブロックの選択やワード線の選択等を行うワード線選択回路160と、ワード線選択回路160によって選択されたページから読み出されたデータを保持したり、選択されたページへプログラムするデータを保持するページバッファ/センス回路170と、アドレスレジスタ140から列アドレス情報Ayを受け取り、列アドレス情報Ayをデコードし、当該デコード結果に基づきページバッファ/センス回路170内の列の選択等を行う列選択回路180と、データの読出し、プログラムおよび消去等のために必要な種々の電圧(書込み電圧Vpgm、パス電圧Vpass、読出しパス電圧Vread、消去電圧Vers、内部供給電圧VDDなど)を生成する内部電圧発生回路190とを含んで構成される。
メモリアレイ110は、列方向に複数のブロックを含み、各ブロックには、複数のメモリセルを直列に接続したNANDストリングが形成される。メモリセルアレイ110は、ユーザーによって利用されるメモリ領域の他に、ユーザーによって利用されない(またはユーザーによってアクセスされない)メモリ領域としてフューズセルを含む。フューズセルには、フラッシュメモリの動作に関する設定情報(例えば、プログラムや消去等の電圧の設定やユーザーのオプションの設定など)が格納され、この設定情報は、パワーオンシーケンスのときに読み出され、読み出された設定情報がレジスタにロードされる。
図3に、本実施例のコントローラ150の構成を示す。コントローラ150は、CPU200、ROM210、RAM220、CRC処理部230、ECC処理部240、タイマー250および状態レジスタ260を含んで構成される。
CPU200は、プログラムカウンタにセットされるアドレスに従いROM210からコードを読出し、読出したコードをデコードし、その結果に基づきワード線選択回路160、ページバッファ/センス回路170、列選択回路180、内部電圧発生回路190等の動作を制御する。プログラムカウンタPCは、クロック信号に同期してインクリメントされ、CPU200は、ROM210から次のコードを読み出し、次の動作を制御する。
ROM210は、種々の動作シーケンスを実行するためのコードを格納する。例えば、パワーオンシーケンス、読出し、プログラム、消去等の動作を制御するためのコード(命令コードやアドレスを含む)が格納される。CPU200がROM210から1度に読み出すコードのビット数またはバイト数は特に限定されない。
CRC処理部230は、CPU200がROM210から読み出したコードに誤りが含まれているか否かをチェックする。ROMコードのCRCを可能にするため、ROM220には、予め定められた生成多項式で除算した余りとしてのパリティビット(検査データ)が格納されている。一方、CRC処理部220は、ROM210で使用した生成多項式と同じ生成多項式を使用してROMから読み出されたコードを除算し、そのパリティビットが一致するか否かを照合する。CRC処理部220が使用するパリティビットは、ハードワイワードロジックにより生成してもよいし、あるいは不揮発性メモリに格納するようにしてもよい。
ECC処理部240は、ROMコードの誤りを検出し、検出した誤りを訂正する。ROMコードの誤り検出・訂正を可能にするため、ROM220には、コードをECCで符号化したときに生成される誤り検出・訂正用のパリティビットが格納されている。ECC処理部240は、ROM210から読み出されたコード(データと当該データの誤り検出・訂正用のパリティビット)をデコードし、ROMから読み出されたコードの誤りビットを検出し、これを訂正する。誤り検出・訂正できるビット数は特に限定されない。ECC処理部240による誤り検出・訂正は、CPU200の動作モードがセーフモードに移行したときに実施され、誤り訂正されたデータはRAM220に保持される。なお、フラッシュメモリ100がECC回路130を搭載している場合には、ECC回路130をECC処理部240として共有するようにしてもよい。
タイマー250は、CPU200によるROM210のコードに基づいて実行中の動作シーケンスの経過時間を計測する。タイマー250は、CPU200とは別のハードウエアによって構成されるが、CPU200は、ROM210からコードを読み出すとき、タイマー250にカウントの指示を与えてもよい。ある態様では、タイマー250は、計測時間が予め決められた値に到達すると、CPU200に割り込み信号を出力し、CPU200は、この割り込み信号に応答してセーフモードに移行する。
状態レジスタ260は、CPU200がROM210からコードを読出している期間中において、CRC処理部230の誤り検出の回数、誤り検出ビット数、誤り検出されたROM領域などを保持し、またECC処理部240の誤り訂正の回数、誤り訂正ビット数、誤り訂正位置などを保持する。状態レジスタ260によって保持されたデータは、ユーザーからコマンドにより読出し可能である。
次に、本発明の第1の実施例のコントローラ150の動作について図4のフローを参照して説明する。なお、コントローラ150が実行する動作シーケンスは任意であり、特定の動作シーケンスに限定されない。先ず、CPU200は、プログラムカウンタに設定されたアドレスに従いROM210からコードを読出す(S100)。動作シーケンスが開始されるタイミングでCPU200は、タイマー250を起動させる(S110)。タイマー250は、実行中の動作シーケンスの経過時間を計測し、計測時間が規定時間Tnに到達したとき、CPU200に割り込み信号を出力する。
CPU200は、ROM210から読み出されたコードをCRC処理部230に提供し、CRC処理部230は、読み出したコードの誤りの有無を検出する(S120)。CPU200は、誤りが検出されなかった場合には(S130)、ROM210から読み出したコードをデコードし、コードに規定された動作を実行する(S140)。
一方、誤りが検出された場合には(S130)、CPU200は、状態レジスタ260に保持されたCRCの誤り情報を更新し(S150)、次いで、セーフモードに移行するか否かを判定する(S160)。セーフモードに移行するための条件は、CRCによる誤りの検出回数が規定値N1に到達したとき、あるいはタイマー250からの割り込み信号を受け取ったときである。つまり、規定値NまたはROM210の読出し時間が規定時間Tnに到達したとき、CPU200は、セーフモードに移行すると判断する。
CPU200は、セーフモードに移行した場合には、ECC処理部240に誤り検出・訂正を開始させる(S170)。この際、ECC処理部240は、ROM210から読み出したコードを全てRAM220に格納してもよいし、誤り訂正のための位置情報のみをRAN220に格納しても良い。CPU200は、さらに状態レジスタ260に保持された誤り検出・訂正情報を更新する(S180)。
CPU200は、ECC処理部240による誤り検出・訂正の回数が規定値N2に到達したか否かを判定し(S200)、規定値N2に到達していなければ、誤り訂正されたコードが信頼できるものと判断し、RAM220に保持された訂正されたコードあるいは、ROM210から読み出されたコードをRAM220に保持された誤り位置情報を使って訂正したものをデコードし、動作を実行する(S140)。一方、誤り検出・訂正の回数が規定値N2に到達した場合には、安全な動作を期待することができないと判断して動作シーケンスを終了する。
このように本実施例によれば、ROMから読み出されたコードに誤りがある場合には、さらに一定の条件下で誤り検出・訂正を行うようにしたので、動作不良や誤動作を回避した安全な動作を行うことができる。また、誤り検出情報および誤り検出・訂正情報を状態レジスタ260に保持し、保持した情報を出力できるようにしたので、ユーザーは、フラッシュメモリの動作不良等の詳細な解析を容易に行うことが可能になる。
次に、本発明の第2の実施例について説明する。上記実施例は、動作シーケンスにおけるある時点でのCRCのチェックを行ったが、第2の実施例は、動作シーケンスの複数の
時点でのCRCのチェックを異なるアルゴリズムで実行するものである。図5は、第2の実施例の動作フローを示す図である。
同図において、ステップS100~S190までの動作は、第1の実施例のときと同様であるが、第2の実施例では、動作1を実行後(S140)、動作1の後の動作2を実行するために、CPU200は、ROM210からコードを読出す(ステップS200)。読み出されたコードは、CRC処理部230によりチェックされる。ここで留意すべきは、動作1のときのコードのCRCのチェック1と動作2のときのコードのCRCのチェック2とのアルゴリズムが異なる。例えば、チェック1のときの生成多項式とチェック2のときの生成多項式とが異なる。この場合、ROM210には、動作2に対応するコードとチェック2の生成多項式で除した値がパリティビットとが格納され、CRC処理部230には、動作2に対応するパリティビットが用意される。
CPU200は、CRC処理部230により誤りの検出の有無を判定し(S220)、誤りが検出されなければ、コードをデコードし、動作2を実行する(SS230)。一方、コードに誤りが検出された場合には(S220)、第1の実施例のときと同様にステップS150~S190の処理が実施される。仮に、セーフモードに移行し、誤り検出・訂正のリトライ回数が規定値N2未満であれば、CPU2は、訂正されたコードをデコードし、動作2を実行し、リトライ回数が規定値N2であれば、動作シーケンスが終了される。また、状態レジスタ260には、動作1、動作2に関連する誤り情報および訂正情報が保持される。
このように本実施例によれば、動作シーケンスを検査能力の異なる複数のCRCによるチェックを行うことで、動作不良または誤動作を引き起こす種々の要因に対応した処理を実施することができ、かつそのような要因の解析を容易にすることができる。なお、上記実施例は、動作シーケンスが動作1、動作2を含む例を示したが、これは一例であり、動作シーケンスは、動作1、動作2、・・・、動作nを含むことができ、この場合、CRC処理部230は、検査能力またはアルゴリズムの異なるチェック1、チェック2、・・・、チェックnを行い、そのチェック結果に応じてセーフモードに移行する。
次に、第2の実施例の動作シーケンスの具体例について説明する。図6は、パワーオンシーケンスを実行するときのROMコードの読出し動作を示すフローである。基本的な動作は、図5に示すフローと同様であり、パワーオンシーケンスでは、フューズセルからの設定情報の読出し(S140A)が動作1に対応し、読み出した設定情報のレジスタへのロード(S230A)が動作2に対応する。
図7は、プログラムシーケンスを実行するときのROMコードの読出し動作を示すフローである。基本的な動作は、図5に示すフローと同様であり、プログラムシーケンスでは、選択ページへのプログラム電圧の印加(S130B)が動作1に対応し、プログラムされたページのベリファイ読出し(S230B)が動作2に対応する。第2の実施例の動作シーケンスは、パワーオンシーケンスやプログラムシーケンスの他の読出し動作シーケンスや消去動作シーケンスにも適用することができる。
次に、本実施例の状態レジスタ260について説明する。状態レジスタ260は、図8に示すように、CRC処理部230による誤り情報としてCRCのパス/フェイル、リトライ回数、タイマーの時間超過などを保持し、ECC処理部240による訂正情報としてECC訂正の可否、リトライ回数、訂正ビット数やその位置などを保持する。CPU200は、ROMコードの読出し動作中に誤り情報や訂正情報を更新する。
図9は、状態レジスタの出力例を示すフローである。ユーザーが状態レジスタの読出しコマンドをフラッシュメモリ100に入力すると(S300)、コントローラ150は、当該コマンドの解読結果に応じて状態レジスタ260をアクセスし(S310)、状態レジスタ260に保持された誤り情報や訂正情報を入出力回路120を介して出力する(S320)。ユーザーは、誤り情報および訂正情報を参照することで、どのような動作状況においてROMコードに誤りが発生したのか、あるいはROM等の欠陥の有無などを解析することができる。
次に、本発明の第3の実施例について説明する。第1および第2の実施例は、セーフモードでの動作を可能にする一方で、動作に要する時間が設計仕様の時間を超えるおそれがある。そこで、第3の実施例では、フラッシュメモリ100がセーフモードで動作が可能か否かをユーザーが設定することを可能にする。
コントローラ150は、図10に示すような設定レジスタを用いてセーフモードの動作が可能か否かを設定する。例えば、フラグ「1」は、セーフモードがイネーブルを設定し、フラグ「0」は、セーフモードがディスエーブルを設定する。もし、フラグ「0」が設定された場合には、CPU200は、図4、図5等においてセーフモードに移行せず、図1に示すようなCRCのみのチェックを行う。
図11は、設定レジスタへの設定例を示すフローである。ユーザーがセーフモード設定用コマンドをフラッシュメモリ100に入力すると(S400)、コントローラ150は、当該コマンドの解読結果に応じて設定レジスタをアクセスし(S410)、設定レジスタのフラグを「1」にする。この場合、設定レジスタのデフォルト状態は、フラグ「0」である。セーフモードを解除する場合には、例えば、ユーザーがセーフモード解除用コマンドをフラッシュメモリ100に入力する。
このように本実施例によれば、セーフモードの動作が可能か否かをユーザー設定することで、例えば、フラッシュメモリ100の解析を行うときのみセーフモードを動作させることができる。
上記実施例では、NAND型のフラッシュメモリを例示したが、本発明は、CPUがROMから読み出したコードに基づき動作シーケンスを制御するような半導体装置や半導体記憶装置に適用することができる。
本発明の好ましい実施の形態について詳述したが、本発明は、特定の実施形態に限定されるものではなく、特許請求の範囲に記載された発明の要旨の範囲内において、種々の変形・変更が可能である。
100:フラッシュメモリ 110:メモリセルアレイ
120:入出力回路 130:ECC回路
140:アドレスレジスタ 150:コントローラ
160:ワード線選択回路 170:ページバッファ/センス回路
180:列選択回路 190:内部電圧発生回路
200:CPU 210:ROM
220:RAM 230:CRC処理部
240:ECC処理部 250:タイマー
260:状態レジスタ

Claims (19)

  1. ROMから読み出したコードに基づき動作を制御するコントローラを含む半導体装置の動作方法であって、
    前記コントローラは、
    ROMから読み出したコードの誤りを第1のアルゴリズムを用いて検出するステップと、
    コードの誤りが検出されたとき、セーフモードに移行するか否かを判定するステップと、
    前記セーフモードに移行すると判定した場合、コードの誤りを検出し、検出した誤りを訂正するステップと、
    を有する動作方法。
  2. 前記コントローラは、コードの誤りの検出回数が規定値に到達したときセーフモードに移行すると判定する、請求項1に記載の動作方法。
  3. 前記コントローラはさらに、実行中の動作シーケンスの経過時間を計測するステップを含み、
    前記コントローラは、計測された経過時間が一定時間を超えたとき、コードの誤りの検出回数と無関係にセーフモードに移行すると判定する、請求項1に記載の動作方法。
  4. 前記コントローラはさらに、読み出したコードまたは訂正されたコードに基づき第1の動作を実行するステップを含む、請求項1に記載の動作方法。
  5. 前記コントローラはさらに、前記第1の動作に続く第2の動作を制御するため、当該第2の動作に対応するコードをROMから読み出すステップと、
    読み出したコードの誤りを前記第1のアルゴリズムと異なる第2のアルゴリズムを用いて検出するステップと、
    第2のアルゴリズムによるコードの誤りが検出されたとき、セーフモードに移行するか否かを判定するステップと、
    前記セーフモードに移行すると判定した場合、コードの誤りを検出し、検出した誤りを訂正するステップと、
    を含む請求項に記載の動作方法。
  6. 前記コントローラはさらに、コードの誤り検出・訂正回数が規定値を超えた場合、動作を終了するステップを含む、請求項1または5に記載の動作方法。
  7. 前記コントローラはさらに、誤り検出に関する誤り情報および誤りの検出・訂正に関する訂正情報を保持するステップを含む、請求項1または5に記載の動作方法。
  8. 前記コントローラはさらに、前記誤り情報および前記訂正情報を出力するステップを含む、請求項7に記載の動作方法。
  9. 前記誤り情報は、誤りの検出の有無、誤りの検出回数、経過時間の少なくとも1つを含み、前記訂正情報は、訂正の可否、誤りの検出・訂正回数、訂正ビット情報の少なくとも1つを含む、請求項8に記載の動作方法。
  10. 動作方法はさらに、前記セーフモードがイネーブルかディスエーブルかを設定するステップを含み、
    前記コントローラは、イネーブルが設定された場合にのみ、前記セーフモードに移行するか否かを判定する、請求項1または5に記載の動作方法。
  11. 前記第1の動作は、フューズセルからの設定情報の読出しであり、前記第2の動作は、フューズセルから読み出した設定情報のレジスタへのロードである、請求項5に記載の動作方法。
  12. ROMから読み出したコードに基づき動作を制御するコントローラを含む半導体装置であって、
    前記コントローラは、
    ROMからコードを読み出す読出し手段と、
    ROMから読み出されたコードの誤りを第1のアルゴリズムを用いて検出する検出手段と、
    コードの誤りが検出されたとき、セーフモードに移行するか否かを判定する判定手段と、
    前記セーフモードに移行すると判定した場合、コードの誤りを検出し、検出した誤りを訂正する訂正手段とを含む、半導体装置。
  13. 前記判定手段は、コードの誤りの検出回数が規定値に到達したときセーフモードに移行すると判定する、請求項12に記載の半導体装置。
  14. 半導体装置はさらに、実行中の動作シーケンスの経過時間を計測する計測手段を含み、
    前記判定手段は、前記計測手段により計測された時間が一定時間に達したとき、コードの誤り検出回数と無関係にセーフモードに移行すると判定する、請求項12に記載の半導体装置。
  15. 前記コントローラはさらに、読み出したコードまたは訂正されたコードに基づき第1の動作を実行する実行手段を含む、請求項12に記載の半導体装置。
  16. 前記読出し手段は、前記第1の動作に続く第2の動作を制御するため、当該第2の動作に対応するコードをROMから読み出し、
    前記検出手段は、読み出したコードの誤りを前記第1のアルゴリズムと異なる第2のアルゴリズムを用いて検出し、
    前記判定手段は、第2のアルゴリズムによるコードの誤りが検出されたとき、セーフモードに移行するか否かを判定し、
    前記訂正手段は、前記セーフモードに移行すると判定した場合、コードの誤りを検出し、検出した誤りを訂正する、請求項15に記載の半導体装置。
  17. 前記コントローラはさらに、前記訂正手段による誤り検出・訂正回数が規定値を超えた場合、ROMからのコードの読出しを終了する、請求項12または16に記載の半導体装置。
  18. 前記コントローラはさらに、前記検出手段の検出に関する検出情報および前記訂正手段の訂正に関する訂正情報を保持する保持手段と、当該保持手段に保持された検出情報および訂正情報を出力する出力手段とを含む、請求項12または16に記載の半導体装置。
  19. 前記コントローラはさらに、前記セーフモードがイネーブルかディスエーブルかを設定する設定手段とを含み、前記判定手段は、前記設定手段によりイネーブルが設定された場合にのみ前記セーフモードに移行するか否かを判定する、請求項12または16に記載の半導体装置。
JP2021107309A 2021-06-29 2021-06-29 半導体装置 Active JP7161583B1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2021107309A JP7161583B1 (ja) 2021-06-29 2021-06-29 半導体装置
TW111120818A TWI816418B (zh) 2021-06-29 2022-06-06 半導體儲存裝置及其操作方法
KR1020220070850A KR20230002052A (ko) 2021-06-29 2022-06-10 반도체 장치 및 동작 방법
CN202210709955.9A CN115547399A (zh) 2021-06-29 2022-06-22 半导体存储装置及其操作方法
US17/851,041 US12067283B2 (en) 2021-06-29 2022-06-28 Memory apparatus and memory testing method thereof for correcting ROM code having error by ECC processing unit after determined to transition to safe mode

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021107309A JP7161583B1 (ja) 2021-06-29 2021-06-29 半導体装置

Publications (2)

Publication Number Publication Date
JP7161583B1 true JP7161583B1 (ja) 2022-10-26
JP2023005422A JP2023005422A (ja) 2023-01-18

Family

ID=83782304

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021107309A Active JP7161583B1 (ja) 2021-06-29 2021-06-29 半導体装置

Country Status (5)

Country Link
US (1) US12067283B2 (ja)
JP (1) JP7161583B1 (ja)
KR (1) KR20230002052A (ja)
CN (1) CN115547399A (ja)
TW (1) TWI816418B (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230393763A1 (en) * 2022-06-01 2023-12-07 Micron Technology, Inc. Protection against invalid memory commands

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070081377A1 (en) 2005-09-26 2007-04-12 Macronix International Co., Ltd. Method and circuit for reading fuse cells in a nonvolatile memory during power-up
JP2008198202A (ja) 2007-02-08 2008-08-28 Samsung Electronics Co Ltd メモリシステム及びそのシステムの命令の取扱方法
JP2008293555A (ja) 2007-05-22 2008-12-04 Nec Electronics Corp 半導体集積回路装置およびメモリ制御方法
US20090193315A1 (en) 2008-01-24 2009-07-30 Gower Kevin C System for a Combined Error Correction Code and Cyclic Redundancy Check Code for a Memory Channel

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5349256B2 (ja) 2009-11-06 2013-11-20 株式会社東芝 メモリシステム
KR20130034522A (ko) * 2011-09-28 2013-04-05 삼성전자주식회사 비휘발성 메모리 장치의 데이터 리드 방법, 및 이를 수행하는 장치
US9063851B2 (en) * 2012-11-07 2015-06-23 Infineon Technologies Ag Fail safe code functionality
KR102108386B1 (ko) 2013-12-23 2020-05-08 삼성전자주식회사 저장 장치 및 그것의 데이터 엔코딩 및 디코딩 방법들
CN109428670A (zh) 2017-08-23 2019-03-05 深圳市中兴微电子技术有限公司 一种数据差错校验方法及装置、计算机存储介质
TWI658364B (zh) * 2018-03-20 2019-05-01 慧榮科技股份有限公司 存取快閃記憶體模組的方法及相關的快閃記憶體控制器與電子裝置
CN110430014B (zh) * 2019-07-19 2022-02-01 河海大学 一种用于现场总线信道加密的硬件加密网关及加密方法
US20220237079A1 (en) * 2021-01-22 2022-07-28 Micron Technology, Inc. Error detection event mechanism
KR20220139199A (ko) * 2021-04-07 2022-10-14 삼성전자주식회사 반도체 메모리 장치 및 이를 포함하는 메모리 시스템

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070081377A1 (en) 2005-09-26 2007-04-12 Macronix International Co., Ltd. Method and circuit for reading fuse cells in a nonvolatile memory during power-up
JP2008198202A (ja) 2007-02-08 2008-08-28 Samsung Electronics Co Ltd メモリシステム及びそのシステムの命令の取扱方法
JP2008293555A (ja) 2007-05-22 2008-12-04 Nec Electronics Corp 半導体集積回路装置およびメモリ制御方法
US20090193315A1 (en) 2008-01-24 2009-07-30 Gower Kevin C System for a Combined Error Correction Code and Cyclic Redundancy Check Code for a Memory Channel

Also Published As

Publication number Publication date
TWI816418B (zh) 2023-09-21
US12067283B2 (en) 2024-08-20
TW202301364A (zh) 2023-01-01
US20220413748A1 (en) 2022-12-29
KR20230002052A (ko) 2023-01-05
CN115547399A (zh) 2022-12-30
JP2023005422A (ja) 2023-01-18

Similar Documents

Publication Publication Date Title
US9239758B2 (en) Semiconductor storage device, method for controlling the same and control program
KR101750662B1 (ko) 데이터 에러 교정용 회로, 장치, 및 방법
CN109388518A (zh) 数据写入方法
JP2007035244A (ja) プログラム速度を向上させる不揮発性メモリ装置及びそのプログラム方法
US20010052090A1 (en) Storage device having an error correction function
US8347183B2 (en) Flash memory device using ECC algorithm and method of operating the same
JP2007035245A (ja) メモリ装置、欠陥セル救済方法及び内部電圧トリミング方法
JP4834721B2 (ja) メモリ制御装置およびメモリ制御方法
JP2006294143A (ja) 不揮発性半導体記憶装置
CN111176884B (zh) 用于fpga配置存储器的sec校验方法和装置
JP7161583B1 (ja) 半導体装置
US20220051740A1 (en) Semiconductor memory device and operation method thereof
JP6288812B2 (ja) 誤り訂正符号を有する不揮発性メモリシステムの消去
JP2010067098A (ja) 情報処理装置、情報処理方法および情報処理プログラム
US9721665B2 (en) Data writing method and system
KR20120109848A (ko) 반도체 메모리 시스템 및 그의 데이터 리드 방법
KR20030023762A (ko) 에러 보정 방법 및 에러 보정 회로 장치
KR20080114208A (ko) 에러 정정 기능을 갖는 불휘발성 메모리 장치의 카피투프로그램방법
US20060090105A1 (en) Built-in self test for read-only memory including a diagnostic mode
US20220246223A1 (en) Non-volatile storage device
KR100634432B1 (ko) 카피백 프로그램 동작 중에 에러를 검출하는 낸드 플래시메모리 장치 및 에러 검출 방법
CN113707208B (zh) 用于非易失性存储装置的错误纠正的控制验证操作的方法及非易失性存储装置
US11088711B2 (en) Memory apparatus and data accessing method thereof
TWI737262B (zh) 用於非揮發性記憶體裝置的錯誤更正的控制驗證操作的方法及非揮發性記憶體裝置
JP7382151B2 (ja) 半導体装置及びそのテスト方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210629

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220727

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220902

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221014

R150 Certificate of patent or registration of utility model

Ref document number: 7161583

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150