JP2017157214A - インモジュール機能を遂行するメモリモジュール - Google Patents

インモジュール機能を遂行するメモリモジュール Download PDF

Info

Publication number
JP2017157214A
JP2017157214A JP2017033466A JP2017033466A JP2017157214A JP 2017157214 A JP2017157214 A JP 2017157214A JP 2017033466 A JP2017033466 A JP 2017033466A JP 2017033466 A JP2017033466 A JP 2017033466A JP 2017157214 A JP2017157214 A JP 2017157214A
Authority
JP
Japan
Prior art keywords
memory
memory array
memory module
host device
interface
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
JP2017033466A
Other languages
English (en)
Other versions
JP7022511B2 (ja
JP2017157214A5 (ja
Inventor
牧 天 張
Mu-Tien Chang
牧 天 張
迪 民 牛
Dimin Niu
迪 民 牛
宏 忠 チェン
Hongzhong Zheng
宏 忠 チェン
スン ヨン 林
Sun Young Lim
スン ヨン 林
寅 東 金
In Dong Kim
寅 東 金
璋 石 崔
Jang Seok Choi
璋 石 崔
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2017157214A publication Critical patent/JP2017157214A/ja
Publication of JP2017157214A5 publication Critical patent/JP2017157214A5/ja
Application granted granted Critical
Publication of JP7022511B2 publication Critical patent/JP7022511B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • G06F11/106Correcting systematically all correctable errors, i.e. scrubbing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • 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
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • 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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/406Management or control of the refreshing or charge-regeneration cycles
    • 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/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • 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
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7211Wear leveling
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/406Management or control of the refreshing or charge-regeneration cycles
    • G11C11/40611External triggering or timing of internal or partially internal refresh operations, e.g. auto-refresh or CAS-before-RAS triggered refresh
    • 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/0409Online test
    • 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
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/02Disposition of storage elements, e.g. in the form of a matrix array
    • G11C5/04Supports for storage elements, e.g. memory modules; Mounting or fixing of storage elements on such supports

Abstract

【課題】リフレッシュ機能、ECC機能、スクラビング、及びウェアレベリング管理機能を含むインモジュール機能を遂行する。【解決手段】メモリモジュール101は、メモリチップ105からなるメモリアレイ、インターフェイス及びコントローラ104を備え、メモリアレイのフィードバック状態情報をホスト装置102にインターフェイスするために標準DIMMピンアウト構成から用途変更された複数のコネクションを含み、リフレッシュ動作、エラー訂正動作、メモリスクラビング動作、及びウェアレベリングコントロール動作を制御し、インターフェイスを通じてホスト装置からコマンドを受信し、受信されたコマンドに応答して、コマンドが受信される時にコントローラによって制御される動作に関連するインターフェイスを通じてホスト装置にフィードバック状態情報を提供する。【選択図】図1

Description

本発明は、メモリシステムに関し、より詳しくはインモジュール機能を遂行するメモリモジュールに関する。
メモリのRAS(Reliability Availability Serviceability)機能は、従来、CPU(Central Processing Unit)及び/又はメモリコントローラ(MC:Memory Controller)によってシステムレベルで遂行されるか又は管理されてきた。一部の構成では、CPUとメモリコントローラとはホストシステムの分離された要素で構成される。他の構成では、CPUとメモリコントローラとは一体に集積された形態で構成される。本明細書で使用する略語「CPU/MC」は、CPU及び/又はメモリコントローラ(MC)を意味する。例えば、CPU/MCは、従来、DRAM(Dynamic Random Access Memory)のリフレッシュ動作を遂行するために、システムメモリのDRAMにリフレッシュコマンドを伝送してきた。また、ECC(Error Correcting Code)を使用するエラー訂正は、従来、個別のメモリ位置を読み出し、ECCを使用してデータを訂正し、そして訂正されたデータを再書込みするCPU/MCによって遂行されてきた。
従来、CPU/MCによって遂行されるメモリの他のRAS機能は、システムメモリの「スクラビング(scrubbing)」である。CPU/MCは、システムメモリ内で周期的にシステムメモリの領域を読み出し、(ECCを使用して)エラーを訂正し、そして訂正されたデータを再びシステムメモリの該当領域に書き込む。従来、CPU/MCによって遂行されるさらに他のRAS機能は、ウェアレベリング(wear−leveling)管理である。例えば、不揮発性メモリ内のウェア(wear)水準を均等に調節するために、CPU/MCは書込み及び読出しコマンドを利用してメモリページを交換(swap)するように書込みカウント(write−count)テーブル及びリマップ(remap)テーブルを利用して不揮発性メモリのメモリページをリマッピング(remapping)する。
本発明は、上記従来の問題点に鑑みてなされたものであって、本発明の目的は、インモジュールリフレッシュ機能、インモジュールECC機能、インモジュールスクラビング、及びインモジュールウェアレベリング管理機能を含むインモジュール機能を遂行するメモリモジュールを提供することにある。
上記目的を達成するためになされた本発明の一態様によるメモリモジュールは、メモリアレイと、前記メモリアレイをホスト装置にインターフェイス(interface)するためにメモリアレイに連結されたインターフェイスと、前記メモリアレイ及び前記インターフェイスに連結されたコントローラと、を備え、前記インターフェイスは、前記メモリアレイのフィードバック状態情報を前記ホスト装置にインターフェイスするために標準のDIMM(Dual In−Line Memory Module)ピンアウト(pin out)構成から用途変更された複数のコネクション(connection)を含み、前記コントローラは、前記メモリアレイの少なくとも1つのリフレッシュ動作を制御し、前記メモリアレイのエラー訂正動作を制御し、前記メモリアレイのメモリスクラビング(scrubbing)動作を制御し、前記メモリアレイのウェアレベリング(wear−leveling)コントロール動作を制御し、前記インターフェイスを通じて前記ホスト装置からコマンド(command)を受信し、前記受信されたコマンドに応答してコマンドが受信される時に前記コントローラによって制御される動作に関連する前記インターフェイスを通じて前記ホスト装置にフィードバック状態情報を提供することを特徴とする。
上記目的を達成するためになされた本発明の他の態様によるメモリモジュールは、DRAM(Dynamic Random Access Memroy)及びNVRAM(Non−Volatile Random Access Memory)を含むメモリセルのアレイを含み、DIMM(Dual In−Line Memory Module)で構成されたメモリアレイと、前記メモリアレイに連結されたコントローラと、を備え、前記コントローラは、前記メモリアレイの少なくとも1つのリフレッシュ動作を制御し、前記メモリアレイのエラー訂正動作を制御し、前記メモリアレイのメモリスクラビング(scrubbing)動作を制御し、前記メモリアレイのウェアレベリング(wear−leveling)コントロール動作を制御し、前記コントローラによって制御される動作と関連されたホスト装置にインターフェイスを通じてフィードバック状態情報を提供し、前記インターフェイスは、標準のDIMMピンアウト構成で用途変更された複数のコネクションを含むことを特徴とする。
上記目的を達成するためになされた本発明のさらに他の態様によるメモリモジュールは、メモリセルのアレイを含むメモリアレイと、インターフェイスと、前記メモリアレイ及び前記インターフェイスに連結されたコントローラと、を備え、前記メモリアレイは、前記メモリアレイの動作状態をホスト装置にインターフェイスするように標準のDIMMピンアウト構成で用途変更された複数のコネクションを含むDIMMで構成され、前記インターフェイスは、前記メモリアレイを前記ホスト装置にインターフェイス(interface)するために前記DIMMの複数のコネクションを含んで前記メモリアレイに連結され、前記コントローラは、前記メモリアレイの少なくとも1つのリフレッシュ動作を制御し、前記メモリアレイのエラー訂正動作を制御し、前記メモリアレイのメモリスクラビング(scrubbing)動作を制御し、前記メモリアレイのウェアレベリング(wear−leveling)コントロール動作を制御することを特徴とする。
本発明によれば、メモリモジュールは、インモジュールリフレッシュ機能、インモジュールECC機能、インモジュールスクラビング、及びインモジュールウェアレベリング管理機能を支援することができる。また、インモジュールRAS機能を使用してシステムの安定性及び性能を向上させ、電力消耗を減少させる効果を奏する。
本発明の一実施形態によるメモリモジュールを含むシステムの機能ブロック図である。 本発明の一実施形態による選択されたピンがRASフィードバック状態情報を伝送するように用途変更されたメモリチャンネル内のメモリモジュールコネクターのピンアウト(pinout)を示す図である。 本発明の一実施形態によるメモリモジュールがインモジュール(in−module)リフレッシュ動作を遂行するように動作調整(coordination)を提供するためのメモリコントローラとメモリモジュールとの間の信号シーケンス(sequence)を示す図である。 本発明の他の実施形態によるメモリモジュールがインモジュールリフレッシュ機能を遂行するように動作調整を提供するためのメモリコントローラとメモリモジュールとの間の信号シーケンスを示す図である。 本発明の一実施形態によるメモリモジュールがインモジュールECC動作を遂行するように動作調整を提供するためのメモリコントローラとメモリモジュールとの間の信号シーケンスを示す図である。 本発明の他の実施形態によるメモリがインモジュールECC動作を遂行し、その結果、エラー訂正失敗が発生するように動作調整を提供するためのメモリコントローラとメモリモジュールとの間の信号シーケンスを示す図である。 本発明の一実施形態によるメモリモジュールがインモジュールスクラビング(scrubbing)動作を遂行するように動作調整を提供するためのメモリモジュールとメモリコントローラとの間の信号シーケンスを示す図である。 本発明の他の実施形態によるメモリモジュールがインモジュールスクラビングを遂行するように動作調整を提供するためのメモリモジュールとメモリコントローラとの間の信号シーケンスを示す図である。 本発明のその他の実施形態によるメモリモジュールがインモジュールスクラビングを遂行するように動作調整を提供するためのメモリモジュールとメモリコントローラとの間の信号シーケンスを示す図である。 本発明の一実施形態によるメモリモジュールがインモジュールウェアレベリング(wear−leveling)を遂行するように動作調整を提供するためのメモリモジュールとメモリコントローラとの間の信号シーケンスを示す図である。 本発明の他の実施形態によるメモリモジュールがインモジュールウェアレベリングを遂行するように動作調整を提供するためのメモリモジュールとメモリコントローラとの間の信号シーケンスを示す図である。 本発明の一実施形態によるDQ(データ)バスを通じてRASフィードバック状態メッセージが伝送されるCPU/MCとメモリモジュールとの間のインターフェイスを示す図である。 本発明の一実施形態によるDQバスを通じてRASフィードバック状態メッセージが伝送される方法を示すフローチャートである。 本発明の一実施形態によるRASフィードバック状態メッセージを読み出すようにMRSコマンドを利用してメモリモジュールを構成する方法を示すフローチャートである。 本発明の一実施形態によるDQバスがフィードバック状態情報を伝送するために使用される場合のRASフィードバック状態メッセージの配列を示す図である。 本発明の一実施形態によるD_RDY信号として使用されるALERT_nピンを示す信号図である。 本発明の他の実施形態による選択されたピンがD_RDY信号と関連された状態情報(例えば、キャッシュ情報等)を伝送するように用途が変更されたメモリチャンネル内のメモリモジュールコネクターのピンアウトを示す図である。 本発明の一実施形態によるTB(Transaction Burst)命令を示す信号フローチャートである。 本発明の一実施形態によるTS(Transaction Status)メッセージを示す信号フローチャートである。 本発明の一実施形態によるRS(Read Status)リターンメッセージの配列を示す図である。 本発明の一実施形態によるインモジュールリフレッシュ機能、インモジュールECC機能、インモジュールスクラビング、及び/又はインモジュールウェアレベリング管理を制御するか、又は支援し、動作調整をホスト装置に提供するメモリモジュールを含む電子装置を示すブロック図である。 本発明の一実施形態によるインモジュールリフレッシュ機能、インモジュールECC機能、インモジュールスクラビング、及び/又はインモジュールウェアレベリング管理を制御するか、又は支援し、動作調整をホスト装置に提供するメモリモジュールを含むメモリシステムを示すブロック図である。
本明細書に記載の発明は、インモジュールリフレッシュ機能、インモジュールECC機能、インモジュールスクラビング、及び/又はインモジュールウェアレベリング管理を制御するか又は支援し、動作調整をホスト装置に提供するメモリモジュールに関する。
以下、本発明を実施するための形態の具体例を、図面を参照しながら詳細に説明する。但し、当業者には本明細書に開示された様相(aspect)をこのような特定の細部事項が無くても実施可能である。なお、広く公知された方法、手続、構成要素、及び回路は、本明細書に開示された発明を曖昧にしないよう詳細には説明しない。
本明細書に記載された「一実施形態」又は「1つの実施形態」を参照することは、特定の特徴、構造、又は機能が本明細書に記載された少なくとも1つの実施形態に含まれた実施形態に関連して説明されることを意味する。したがって、本明細書にわたって多様な部分に記載された「一実施形態内の」、「1つの実施形態内の」、又は「一実施形態を参照して」等の句節(又は、類似の意味を内包する他の句節)は、必ず全て同一の実施形態を指すものではない。
本明細書で使用される「例示的な」という単語は、「例(example、instance)又は図示(illustration)として提供される」ということを意味する。また、特定の特徴、構造、又は機能は、1つ又は1つ以上の実施形態で任意の適切な方式に組み合せることができる。明細書上の文脈にしたがって、単数用語は対応する複数形態を含み、複数用語は該当する単数形態を含む。さらに、本明細書に図示され記載される構成要素ダイヤグラムを含む多様な図面は単なる例示的な目的のものであり、スケールに合うように図示されたものではない。同様に、多様な波形(waveform)とタイミング図とは単なる例示的な目的で図示される。
本明細書で使用される「第1」、「第2」等の用語は、先行する名詞に対するラベル(label)として使用され、順序が明示的に定義されない限り、何らかの形態(即ち、空間的、時間的、論理的等)の順序を暗示するものではない。その上で、同一の参照番号は、同一又は類似する機能を有する部品、構成要素、ブロック、回路、ユニット、又はモジュールに関連する2つ以上の図面にわたって使用される。但し、このような使用は、単に図示の単純化と説明の簡易化のためである。該当する構成、その構成要素、又はユニットの構造的な細部事項が、全ての実施形態で同一ではない。また、このような使用は、共通に参照されるパーツ/モジュールが本明細書に開示された特定の実施形態を具現する唯一の方法を意味するものではない。
本明細書で使用される「モジュール(module)」という用語は、個別的又は集合的により大きいシステムの一部として具現される回路を意味する。例えば、より大きいシステムの一部は、IC(Integrated Circuit)、1つ以上の集積回路として具現された回路を含むアセンブリ(assembly)、SOC(System On Chip)等を含む。但し、より大きいシステムの例は、これに制限されるものではない。本明細書で使用される「中央処理ユニット」、「CPU」、「メモリコントローラ」、「MC」、及び「CPU/MC」の用語及び略語(acronyms)は、CPU及び/又はMCのホストシステム機能を提供する1つ以上の装置を意味する。また、「中央処理ユニット」、「CPU」、「メモリコントローラ」、「MC」、及び「CPU/MC」の用語及び略語は、文脈にしたがって交替されて使用される。
本明細書に記載された発明は、インモジュールリフレッシュ機能、インモジュールECC機能、インモジュールスクラビング、及び/又はインモジュールウェアレベリング管理を制御するか又は支援し、動作調整をホスト装置に提供するメモリモジュールに関する。一実施形態として、インモジュールRAS機能を使用してシステムの信頼性、性能、電力消耗、システムヘルス(system health)を向上させ、又は維持するために、本明細書に開示されたメモリモジュールは、メモリモジュールとCPU/MCとの間の調整を提供する。他の実施形態として、インモジュールRAS機能を提供するメモリモジュールは、DIMM(Dual In−Line Memory)で具現される。さらに他の実施形態として、本明細書に開示された発明によるメモリモジュールは、初期化(initialization)の時に選択的に構成可能な調整オプションを提供する。また、例えば、システム性能及び/又はシステム電力消耗を最適化するために、本明細書に開示された発明によるメモリモジュールは、ホストCPU/MCによって使用され、選択可能な報告(report)メカニズムのコンテンツ(content)を提供する。
図1は、本発明の一実施形態によるメモリモジュールを含むシステムの機能ブロック図である。システム100は、メモリモジュール101以外に、ホストシステムのCPU102を含む。ホストシステムのCPU102は、CPU102と一体のメモリコントローラ103を含む。なお、メモリコントローラ(以下、MCと略記)103はCPU102から分離されてもよい。
メモリモジュール101は、SDDR(Synchronous Double Data Rate)と互換性のあるNVDIMM(Non−Volatile Dual In−Line Memory Module)で具現される。他の実施形態として、メモリモジュール101は、SDDR4(Synchronous DDR4)と互換性のあるNVDIMMで具現される。さらに他の実施形態として、メモリモジュール101は、DIMMとは異なる構成で具現される。
メモリモジュール101とCPU102/MC103とは、インターフェイスによって動作中に互いに通信可能に連結される。当該インターフェイスを通じて、CPU102/MC103は、コマンド及びアドレス(CMD/ADDR)とデータ(Data)とをメモリモジュール101に伝送し、メモリモジュール101は、データとRASフィードバック状態情報(又はメッセージ)とをCPU102/MC103に伝送する。RASフィードバック状態情報は、CPU102/MC103の動作と共にメモリモジュール101によって提供されるRAS機能を調整するために使用される。
メモリモジュール101は、インモジュールコントローラ104と複数のメモリチップ105とを含む。一実施形態として、複数のメモリチップ105は、不揮発性メモリチップで構成される。本実施形態で、複数のメモリチップ105の各々は、不揮発性メモリセルのアレイを含むように構成される。他の実施形態として、複数のメモリチップ105は、DRAMメモリチップで構成され、複数のメモリチップ105の各々は、DRAMメモリセルのアレイを含むように構成される。さらに他の実施形態では、複数のメモリチップ105は、1つ以上の不揮発性メモリセルアレイ(例えば、NVRAM(Non−volatile Random Access Memory))及び1つ以上のDRAMメモリセルアレイの組み合せで構成される。その他の実施形態として、1つ以上の複数のメモリチップ105は、1つ以上のDRAM−FPGAs(Dynamic Random Access Memory Field Programmable Gate Arrays)を含むように構成される。
インモジュールコントローラ104は、CPU102/MC103からコマンド及びアドレス情報を受信して処理し、コマンド及びアドレス情報を複数のメモリチップ105に提供する。データはCPU102/MC103及び複数のメモリチップ105の間で両方向(bi−directionally)に提供される。一実施形態では、データパス(data path)は、インモジュールコントローラ104を通過する。他の実施形態では、データはインモジュールコントローラ104を含まないパスを通過する。
インモジュールコントローラ104は、1つ以上のインモジュールRAS機能(例えば、インモジュールリフレッシュ機能、インモジュールECC機能、インモジュールスクラビング機能、及び/又はインモジュールウェアレベリング機能等)を提供するように構成される。インモジュールコントローラ104は、リフレッシュロジック(RL:Refresh Logic)106、1つ以上のタイマー107、1つ以上のカウンター108、1つ以上のレジスター109、及び/又は他の機能的構成要素110を含む。例えば、他の機能的構成要素110は、インモジュールコントローラ104が1つ以上のインモジュールRAS機能を提供するためのテーブル、ドライバー、メモリアレイ、及びロジック等を含む。但し、他の機能的構成要素110の例はこれに制限されない。一実施形態として、インモジュールコントローラ104は、インモジュールRAS機能に関するRASフィードバック状態情報をCPU102/MC103に提供するように構成される。RASフィードバック状態情報は、メモリモジュール101とCPU102/MC103との動作を調整する。他の実施形態として、メモリモジュール101は、図12〜図15を参照して説明するデータパスにしたがってRASフィードバック状態情報を提供するように構成される。
メモリモジュール101がNVDIMMで構成された実施形態において、メモリモジュール101は、メモリモジュール101によって提供されたインモジュールRAS機能に関連するRASフィードバック状態情報を伝送するように用途が変更されたコネクター上のピン(又は、コネクション(connection))を含む。例えば、一実施形態として、メモリモジュールコネクターの5個のピンは、RASフィードバック状態情報を伝送するように用途が変更される。他の実施形態として、メモリモジュールコネクターの8個のピンは、RASフィードバック状態情報を伝送するように用途が変更される。さらに他の実施形態では、用途が変更されたコネクターピンの数は、上述の実施形態によるメモリモジュールコネクターの5個又は8個のピンとは異なる。本明細書で使用される「用途を変更する」及び「用途変更された」の用語は、コネクターピンの信号方向及び機能が該当ピンに対して従前に設定された機能及び信号方向から変更されたことを意味する。
図2は、本発明の一実施形態による選択されたピンがRASフィードバック状態情報を伝送するように用途変更されたメモリチャンネル内のメモリモジュールコネクターのピンアウト(pinout)を示す図である。より具体的に、図2は、メモリチャンネル200の2つのメモリモジュール(201、202)の例示的なピンアウトを示す。図2に示す実施形態で、2つのメモリモジュール(201、202)のメモリモジュールコネクターの5個のピンは、メモリコントローラ203にRASフィードバック状態情報を伝送するように用途変更されている。図2ではメモリコントローラ203を図示したが、メモリコントローラ203は、CPU及び/又は内装メモリコントローラを含むCPUによって代替されることは容易に理解される。
図2に点線で示したように、5個の例示的なコネクターピン(ODT[1]、CKE[1]、CS_n[1]、CK_N[1]、及びCK_P[1])は、メモリコントローラ203にRASフィードバック状態情報を伝送するように用途変更された。8個のコネクターピンがRASフィードバック状態情報をメモリコントローラに伝送するように用途変更された実施形態では、例示的なコネクターピンは(ODT[1]、CKE[1]、CS_n[1]、CK_N[1]、CK_P[1]、RFU[144](図示せず)、RFU[205](図示せず)、及びRFU[207](図示せず))を含む。本発明の実施形態において、メモリモジュールの他のコネクターピンがメモリコントローラにRASフィードバック状態情報を伝送するように用途変更されることは容易に理解される。用途変更されたコネクターピンに対する追加的な細部事項は全体的に本明細書の参考に引用された米国仮出願(出願番号:US62/303,349)を参照して提供される。
RASフィードバック状態情報が伝送されるサイクルの数は、特定メモリモジュールによって決定され、及び/又はメモリモジュールの初期化時点でCPU/MCによって選択的に構成される。伝送されるRASフィードバック状態情報の具体的な構成は、RASフィードバック状態情報が伝送されるサイクルの数にしたがって変更される。例えば、一実施形態で、図2に示すように5個のコネクターピンが用途変更された場合、RASフィードバック状態情報は3サイクルを通じて伝送される。この場合、RASフィードバック状態情報は、15ビットの情報を含む。8個のコネクターピンが用途変更された他の実施形態で、RASフィードバック状態情報は、16ビットの情報を含み、RASフィードバック状態情報を伝送するために2サイクルを使用する。サイクル数及び/又はRASフィードバック状態情報を伝達するビット数は、本明細書に記載された実施形態に制限されない。
RASフィードバック状態情報は、CPU/MCに無効(invalid)アクセスにを通知してメモリモジュールとCPU/MCとの間の動作を調整するために使用され、及び/又は記録された(logged)統計を報告するために使用される。さらに、RASフィードバック状態情報は、原因(reason)のカテゴリー、アドレス、及びヒントに関連した情報を含む。これは表2、表4〜表7を参照して詳細に説明される。
表1は、用途変更された5個のコネクターピンを含む第1実施例に対する一部の情報と、用途変更された8個のコネクターピンを含む第2実施例に対する対照的な情報を示す。用途変更されたコネクターピンに対する追加的な細部事項は、本明細書の参考に引用された上述の米国仮出願(出願番号:US62/303,349)を参照して提供される。
Figure 2017157214
図3は、本発明の一実施形態によるメモリモジュールがインモジュール(in−module)リフレッシュ動作を遂行するように動作調整(coordination)を提供するためのメモリコントローラとメモリモジュールとの間の信号シーケンス(sequence)を示す図である。
図4は、本発明の他の実施形態によるメモリモジュールがインモジュールリフレッシュ動作を遂行するように動作調整を提供するためのメモリコントローラとメモリモジュールとの間の信号シーケンスを示す図である。
本実施形態で、図3及び図4の各々の信号シーケンスは、メモリモジュールの初期化時点で選択可能である。図3の信号シーケンス300において、インモジュールリフレッシュ動作はメモリコントローラに対して透過的である。これはメモリモジュールがリフレッシュ動作を完了するために活性化(activate)命令を無視するためである。メモリコントローラの観点で、活性化命令を完了し、メモリコントローラが読出し又は書込み命令を発行(issue)するのにより長い時間が掛かるだけである。
図4の信号シーケンス310で、インモジュールリフレッシュ動作は、メモリコントローラから受信した活性化命令に応答してリフレッシュ動作が進行中であることを示すフィードバック状態メッセージを提供する。応答において、メモリコントローラは、活性化命令が完了されるのを待つ間に、他の要請及び/又は動作及び/又はコンテキスト(context)のスイッチをスケジュールする。一実施形態として、メモリコントローラは、セットアップ命令を伝送する。インモジュールリフレッシュ動作中に活性化命令に応答してセットアップ命令はインモジュールコントローラを選択的に信号シーケンス300及び信号シーケンス310の中の1つが選択されるモードに配置する。一実施形態で、インモジュールリフレッシュ動作に関連したフィードバック状態メッセージの特定コンテンツはメモリモジュールの初期化時点で選択可能である。
図3で、同図の上の部分には、メモリコントローラMCからメモリモジュールMMに伝送される信号又はメッセージを示す。一方、下の部分には、メモリモジュールからメモリコントローラに伝送される信号又はメッセージを示す。図3の301時点で、メモリモジュールがインモジュールリフレッシュ動作を遂行することを示した。302時点で、メモリコントローラは活性化命令ACTをメモリモジュールに提供する。メモリモジュールがインモジュールリフレッシュ動作を遂行する間、活性化命令は無視され、リフレッシュ動作は中断されない。303時点で、メモリモジュールはインモジュールリフレッシュ動作を完了する。304時点で、メモリモジュールはメモリモジュールが読出し命令RDに対して準備されたことのRASフィードバック状態メッセージを伝送する。305時点で、メモリコントローラは読出し命令をメモリモジュールに伝送する。306時点で、メモリモジュールはこれに応答して受信された読出し命令に対応されるデータを出力する。
図4で、同図の上の部分には、メモリコントローラMCからメモリモジュールMMに伝送される信号又はメッセージを示す。一方、下の部分にはメモリモジュールからメモリコントローラに伝送される信号又はメッセージを示す。図4の311時点で、メモリモジュールはインモジュールリフレッシュ動作を遂行する。312時点で、メモリコントローラは活性化命令ACTをメモリモジュールに伝送する。313時点で、メモリモジュールはメモリモジュールがリフレッシュ動作を遂行し、メモリコントローラに対してリフレッシュ動作が完了された後に再試行することを表示するRASフィードバック状態メッセージを伝送する。メモリモジュールの動作を調整するために、メモリコントローラはリフレッシュ動作が完了する時まで他の要請及び/又は動作及び/又はコンテキスト(context)のスイッチをスケジュールすることができる。RASフィードバック状態メッセージはリフレッシュ動作が進行されるメモリのランク/バンクの識別(identification)と関連された情報を含む。314時点で、メモリモジュールはインモジュールリフレッシュ動作を完了する。315時点で、メモリモジュールはリフレッシュ動作が完了したことのRASフィードバック状態メッセージを伝送する。RASフィードバック状態メッセージはリフレッシュ動作が完了されたメモリのランク/バンクの識別と関連された情報を含むことができる。316時点で、メモリコントローラは活性化命令ACTをメモリモジュールに伝送する。317時点で、メモリモジュールはメモリモジュールが読出し命令に対して準備されたことのRASフィードバック状態メッセージを伝送する。318時点で、メモリコントローラは読出し命令RDをメモリモジュールに伝送する。319時点で、メモリモジュールはこれに応答して受信された読出し命令に対応されるデータを出力する。
図5は、本発明の一実施形態によるメモリモジュールがインモジュールECC動作を遂行するように動作調整を提供するためのメモリコントローラとメモリモジュールとの間の信号シーケンスを示す図である。
図6は、本発明の他の実施形態によるメモリがインモジュールECC動作を遂行し、その結果、エラー訂正失敗が発生するように動作調整を提供するためのメモリコントローラとメモリモジュールとの間の信号シーケンスを示す図である。
図5の信号シーケンス400で、インモジュールエラー訂正動作がメモリモジュールによって遂行される。図6の信号シーケンス410で、インモジュールエラー訂正動作がメモリモジュールによって再び遂行される。但し、図6の信号シーケンス410では、エラー訂正失敗が発生し、フィードバック状態メッセージはエラーが感知されたが、訂正されなかったことを示す。一実施形態で、インモジュールエラー訂正動作に関連されたフィードバック状態メッセージの特定コンテンツはメモリモジュールの初期化時点で選択可能である。
図5で、同図の上の部分には、メモリコントローラMCからメモリモジュールMMに伝送される信号又はメッセージを示す。一方、下の部分には、メモリモジュールからメモリコントローラに伝送される信号又はメッセージを示す。図5の401時点で、メモリコントローラは活性化命令ACTをメモリモジュールに提供する。402時点で、メモリモジュールはこれに応答してECC動作が遂行され、読出し命令RDに対して準備されたことを示すRASフィードバック状態メッセージを伝送する。RASフィードバック状態メッセージはエラーが訂正されたメモリ位置に対する住所情報を含むことができる。メモリコントローラはエラー訂正イベントを記録することができる。403時点で、メモリコントローラは読出し命令を伝送する。404時点で、メモリモジュールは読出し命令に対応するデータを出力する。このような信号シーケンスで、ECCがメモリモジュールによって遂行される間に、CPU/MCは一般的な方法に読出し及び書込み命令を発行する。
図6で、同図の上の部分には、メモリコントローラMCからメモリモジュールMMに伝送される信号又はメッセージを示す。一方、下の部分には、メモリモジュールからメモリコントローラに伝送される信号又はメッセージを示す。図6の411時点で、メモリコントローラはメモリモジュールに活性化命令ACTを伝送する。412時点で、メモリモジュールはこれに応答してECC動作が失敗し、エラーが訂正されなかったことを表示するRASフィードバック状態メッセージを伝送する。追加的に、RASフィードバック状態メッセージはエラーが発生したが、訂正されない位置を識別するアドレス情報を含む。413時点で、メモリコントローラ(又は、CPU)はエラーを記録し、及び/又は適切な措置を遂行することができる。このような信号シーケンスで、ECCがメモリモジュールによって遂行される間に、CPU/MCは一般的な方法に読出し及び書込み命令を発行する。メモリモジュールの試行は、エラーを訂正するのに失敗したが、エラーが感知されたことと感知されたエラーのアドレスとを示し、CPU/MCが適切な措置を遂行することを示す。
図7は、本発明の一実施形態によるメモリモジュールがインモジュールスクラビング(scrubbing)動作を遂行するように動作調整を提供するためのメモリモジュールとメモリコントローラとの間の信号シーケンスを示す図である。
図8は、本発明の他の実施形態によるメモリモジュールがインモジュールスクラビング動作を遂行するように動作調整を提供するためのメモリモジュールとメモリコントローラとの間の信号シーケンスを示す図である。
図9は、本発明のその他の実施形態によるメモリモジュールがインモジュールスクラビング動作を遂行するように動作調整を提供するためのメモリモジュールとメモリコントローラとの間の信号シーケンスを示す図である。
本実施形態で、図7〜図9の信号シーケンスの各々は、メモリモジュールの初期化時点で選択可能である。図7の信号シーケンス500で、図示されたインモジュールスクラビング動作はメモリモジュールがスクラビング動作が進行中であり、そしてスクラビング動作が完了される時を示すフィードバック状態メッセージを提供する基本動作を示す。図8の信号シーケンス510で、インモジュールスクラビング動作はスクラビング動作が進行中であることを示すフィードバック状態メッセージを含む。スクラビング動作は一般アクセスによって中断される。スクラビング動作はスクラビング動作が中断された位置で再開され、スクラビング動作が進行中であることを示すRASフィードバック状態メッセージが伝送される。
図9の信号シーケンス520で、インモジュールスクラビング動作は一般アクセスより高い優先順位を有する。スクラビング動作が進行中であることを示すフィードバック状態メッセージに応答して、活性化命令が完了されるのを待つ間にメモリコントローラは他の要請及び/又は動作及び/又はコンテキストのスイッチをスケジュールする。一実施形態として、インモジュールスクラビング動作に関連されたフィードバック状態ッセージの特定コンテンツもまたメモリモジュールの初期化時点で選択可能である。
図7で、同図の上の部分には、メモリコントローラMCからメモリモジュールMMに伝送される信号又はメッセージを示す。一方、下の部分には、メモリモジュールからメモリコントローラに伝送される信号又はメッセージを示す。図7の501時点で、メモリモジュールはスクラビング動作が遂行されていることを示すRASフィードバックメッセージをメモリコントローラに伝送する。スクラビング動作中に、メモリモジュールは周期的にメモリの領域からデータを読み出し、ECCを利用して何らかのエラーを訂正し、訂正されたデータをメモリの該当領域に再書込みする。
このような信号シーケンスの実施形態に対して、スクラビング動作は優先順位を有し、スクラビング動作が遂行される間にメモリコントローラはスクラビングイベントを記録する。メモリコントローラは、スクラビング動作の中で他の要請及び/又は動作及び/又はコンテキストのスイッチをスケジュールする。502時点で、メモリモジュールは、スクラビング動作が完了したことのRASフィードバックメッセージをメモリコントローラに伝送する。仮にRASフィードバックメッセージがスクラビング動作が完了し、1つ以上のエラーが検出されたが、訂正されなかったことをまた表示し、RASフィードバックメッセージがエラーが検出された各々の住所を示す場合、メモリコントローラは適切な措置を遂行する。
図8で、同図の上の部分には、メモリコントローラMCからメモリモジュールMMに伝送される信号又はメッセージを示す。一方、下の部分には、メモリモジュールからメモリコントローラに伝送される信号又はメッセージを示す。図8の511時点で、メモリモジュールはスクラビング動作が遂行されていることを示すRASフィードバックメッセージをメモリコントローラに伝送する。512時点で、メモリコントローラはスクラビング動作を中断する活性化命令をメモリモジュールに伝送する。513時点で、メモリモジュールはメモリモジュールが読出し命令RDに対して準備されたことのRASフィードバック状態メッセージを伝送する。514時点で、メモリコントローラは読出し命令をメモリモジュールに伝送する。515時点で、メモリモジュールはこれに応答して受信された読出し命令に対応するデータを出力する。516時点で、メモリモジュールはスクラビング動作が中断された位置でスクラビング動作を再開し、スクラビング動作が進行中であることを示すRASフィードバック状態メッセージをメモリコントローラに伝送する。512時点及び513時点に示すように、メモリコントローラはスクラビング動作を再び中断することができる。517時点で、メモリモジュールはスクラビング動作が完了したことのRASフィードバックメッセージをメモリコントローラに伝送する。仮にRASフィードバックメッセージがスクラビング動作が完了され、1つ以上のエラーが検出されたが、訂正されなかったことを表示し、RASフィードバックメッセージがエラーが検出された各々の住所を示す場合、メモリコントローラは適切な措置を遂行する。
図9で、同図の上の部分には、メモリコントローラMCからメモリモジュールMMに伝送される信号又はメッセージを示す。一方、下の部分には、メモリモジュールからメモリコントローラに伝送される信号又はメッセージを示す。図9の521時点で、メモリモジュールはスクラビング動作が遂行中であることを示すRASフィードバックメッセージをメモリコントローラに伝送する。
このような信号シーケンスの実施形態で、スクラビング動作は優先順位を有し、スクラビング動作が遂行される間にメモリコントローラはスクラビングイベントを記録することができ、他の要請及び/又は動作及び/又はコンテキストのスイッチをスケジュールする。522時点で、メモリコントローラは活性化命令ACTをメモリモジュールに伝送する。523時点で、メモリモジュールはスクラビング動作が遂行中であるRASフィードバック状態メッセージをメモリコントローラに伝送する。RASフィードバック状態メッセージはスクラビング動作が完了される前の時間長さ(Latency)を示す情報を含む。メモリコントローラは表示されたレイテンシに基づいて待つか、又はコンテキストスイッチをする。524時点で、メモリモジュールは、スクラビング動作が完了したことのRASフィードバックメッセージをメモリコントローラに伝送する。仮にRASフィードバックメッセージがスクラビング動作が完了され、1つ以上のエラーが検出されたが、訂正されなかったことを表示し、RASフィードバックメッセージがエラーが検出された各々の住所を示す場合、メモリコントローラは適切な措置を遂行する。525時点で、メモリコントローラは、活性化命令ACTをメモリモジュールに伝送する。526時点で、メモリモジュールは、メモリモジュールが読出し命令に対して準備されたことのRASフィードバック状態メッセージを伝送する。527時点で、メモリコントローラは読出し命令RDをメモリモジュールに伝送する。528時点で、メモリモジュールはこれに応答して受信された読出し命令に対応するデータを出力する。
図10は、本発明の一実施形態によるメモリモジュールがインモジュールウェアレベリング(wear−leveling)を遂行するように動作調整を提供するためのメモリモジュールとメモリコントローラとの間の信号シーケンスを示す図である。
図11は、本発明の他の実施形態によるメモリモジュールがインモジュールウェアレベリングを遂行するように動作調整を提供するためのメモリモジュールとメモリコントローラとの間の信号シーケンスを示す図である。
本実施形態で、図10及び図11の信号シーケンスの各々は、メモリモジュールの初期化時点で選択可能である。図10の信号シーケンス600で、図示されたインモジュールウェアレベリング動作は一般アクセスより高い優先順位を有する。メモリモジュールは、ウェアレベリング動作が進行中であることを示すフィードバック状態メッセージを伝送し、メモリコントローラは活性化命令が完了されることを待つ間に他の要請及び/又は動作及び/又はコンテキストのスイッチをスケジュールする。
図11の信号シーケンス610で、インモジュールウェアレベリング動作は、活性化命令に応答してウェアレベリング動作が進行中にあることを示すフィードバック状態メッセージを提供する。しかし、ウェアレベリング動作は優先順位を有し、ウェアレベリング動作は中断されない。フィードバック状態に応答して、メモリコントローラは活性化命令が完了されることを待つ間に他の要請及び/又は動作及び/又はコンテキストのスイッチをスケジュールする。フィードバック状態メッセージは、ウェアレベリング動作が完了される時にメモリモジュールによって伝送され、メモリコントローラは正常アクセスを開始する。一実施形態として、インモジュールウェアレベリング動作に関連されたフィードバック状態ッセージの特定コンテンツはメモリモジュールの初期化時点で選択可能である。
図10で、同図の上の部分には、メモリコントローラMCからメモリモジュールMMに伝送される信号又はメッセージを示す。一方、下の部分には、メモリモジュールからメモリコントローラに伝送される信号又はメッセージを示す。図10の601時点で、メモリモジュールはウェアレベリング動作が遂行中であることを示すRASフィードバックメッセージをメモリコントローラに伝送する。ウェアレベリング動作中に、例えばメモリモジュールは不揮発性メモリ内のウェア(wear)水準を均等に調節するためにメモリページを交換するように書込みカウント(write−count)テーブル及びリマップ(remap)テーブルを利用して不揮発性メモリのメモリページをリマッピング(remapping)する。このような信号シーケンスの実施形態に対して、ウェアレベリング動作は優先順位を有する。ウェアレベリング動作が遂行中に、メモリコントローラはウェアレベリングイベントを記録する。追加的に、メモリコントローラは他の要請及び/又は動作をスケジュールする。602時点で、メモリモジュールはウェアレベリング動作が完了したことのRASフィードバックメッセージをメモリコントローラに伝送する。
図11で、同図の上の部分には、メモリコントローラMCからメモリモジュールMMに伝送される信号又はメッセージを示す。一方、下の部分には、メモリモジュールからメモリコントローラに伝送される信号又はメッセージを示す。図11の611時点で、メモリモジュールはウェアレベリング動作が遂行中であることを示すRASフィードバック状態メッセージをメモリコントローラに伝送する。このような信号シーケンスの実施形態に対して、ウェアレベリング動作は優先順位を有し、ウェアレベリング動作が遂行される間にメモリコントローラはウェアレベリングイベントを記録することができ、他の要請及び/又は動作及び/又はコンテキストのスイッチをスケジュールすることができる。612時点で、メモリコントローラは活性化命令をメモリモジュールに伝送する。
613時点で、メモリモジュールはウェアレベリング動作が遂行中であり、ウェアレベリング動作が完了された後に再試行することを示すRASフィードバック状態メッセージをメモリコントローラに伝送する。RASフィードバック状態メッセージはウェアレベリング動作が完了される前の時間長さ(Latency)を示す情報を含む。メモリコントローラは表示されたレイテンシに基づいて待つか、又はコンテキストスイッチをする。このような信号シーケンスの614時点で、メモリモジュールはウェアレベリング動作が完了したことのRASフィードバックメッセージをメモリコントローラに伝送する。615時点で、メモリコントローラは活性化命令をメモリモジュールに伝送する。616時点で、メモリモジュールはメモリモジュールが読出し命令に対して準備されたことのRASフィードバック状態メッセージを伝送する。617時点で、メモリコントローラは読出し命令RDをメモリモジュールに伝送する。618時点で、メモリモジュールはこれに応答して受信された読出し命令に対応するデータを出力する。
表2は、CPU/MC(例えば、ホスト)によって遂行される潜在的な対応動作と共にRASフィードバック状態メッセージ内に含まれる例示的な情報を示す。
Figure 2017157214
5個のコネクターピンが用途変更された実施形態を再び参照すると、5個の用途変更されたコネクターピンによって伝達され、4サイクルを使用する例示的なRASフィードバック状態メッセージが表3に示すように整理される。
Figure 2017157214
表3に示すRASフィードバック状態メッセージの例で、「Sync」は、RAS状態メッセージが新しいフィードバックパケット(packet)であることを示す。「TID」は、アドレスと同様であるトランザクション(transaction)ID(identification)を示す。パリティー(parity)は、RASフィードバック状態メッセージを保護するのに使用される情報を示す。表3のRASフィードバック状態メッセージに対して用途変更された5個のピンのID(Identification)は便宜的に定義される。
表4〜表7は、RASフィードバック状態メッセージに含まれる情報の追加的な例を示す。
Figure 2017157214
Figure 2017157214
Figure 2017157214
Figure 2017157214
図12は、本発明の一実施形態によるDQ(データ)バスを通じてRASフィードバック状態メッセージが伝送されるCPU/MCとメモリモジュールとの間のインターフェイスを示す図である。図13は、本発明の実施形態によるDQバスを通じてRASフィードバック状態メッセージが伝送される方法を示すフローチャートである。
この代替的な(alternative)実施形態では、図13に示すフローチャート800のS801段階で、用途変更された第1のコネクターピンは、フィードバック信号D_RDYを伝送するように使用される。図12に示すインターフェイス700において、フィードバック信号D_RDYは、CPU/MC701から注意(attention)を要請するためにメモリモジュール702によって使用される。CPU/MC701がフィードバック信号D_RDYを受信した後、S802段階でCPU/MC701は、用途変更された第2のコネクターピン上で信号D_SENDを伝送して、S803段階でメモリモジュール702からRASフィードバック状態情報を引き出す。3つの用途変更されたピンがTIDを伝送するために使用される。この代替的な(alternative)実施形態で、RASフィードバック状態メッセージは、DQバスを通じて伝送される。DQバスの相対的な(relative)サイズは、多数の情報ビットがメモリモジュールからCPU/MCに伝送されるようにする。
他の実施形態で、ホスト(例えば、システムCPU/MC)は、特別なMRS(Mode Register Set)命令を送信して事前にメモリモジュールのRASフィードバック状態情報を要請する。
図14は、本発明の一実施形態によるRASフィードバック状態メッセージを読み出すようにMRSコマンドを利用してメモリモジュールを構成する方法を示すフローチャートである。
MRS命令は、一般的にDDR4 DIMMに対して定義されている。但し、本発明の実施形態によれば、MRS命令内の使用されないビットは、メモリモジュールが特別なモードに進入するように信号を送るか、又はトリガー(trigger)する。ここで、特別なモードはMPR読出しモードと呼称され、MPR読出しモードはまた一般的にDDR4 DIMMに対して定義される。図14に示すフローチャート900のS901段階で、ホストはMRS(MR3)命令をメモリモジュールに伝送する。S902段階で、ホストは読出し命令RDをメモリモジュールに伝送する。S903段階で、メモリモジュールは一般データの代わりに無効(Invalid)+ログ(Log)メッセージを返還(return)する。S904段階で、CPU/MCホストはメモリモジュールが特別なMPRモードを終了するように信号を送るか、又はトリガー(trigger)するように構成された他のMRS命令を発行する。
図15は、本発明の一実施形態によるDQバスがフィードバック状態情報を伝送するために使用される場合のRASフィードバック状態メッセージの配列を示す図である。図15のフィードバック状態情報1000に示すように、8個の64ビットのワード(WD0〜WD7)は、DQバス上でメモリモジュールからの出力であり、これは1001で表示される。4つの3ビットワードは、メモリモジュールから出力されたTID+無効(Invalid)メッセージであり、これは1002で表示される。3ビットワードは、用途変更されたコネクターピンを通じて伝送される。
最初の2つの64ビットワード(WD0、WD1)のビット[6:0]は、各々無効理由(Invalid Reason)コード及び再試行時間(Retry Time)コードを含む。無効理由コードのビット[5]は、エラーが発生したか否かを示す。無効理由コードのビット[4]は、移動(migration)が発生したか否かを示す。無効理由コードのビット[3]は、ガーベッジコレクションGC動作が発生したか否かを示す。無効理由コードのビット[2]は、ウェアレベリングWL動作が発生したか否かを示す。無効理由コードのビット[1]は、リフレッシュ動作が発生したか否かを示す。無効理由コードのビット[0]は、ミス(miss)が発生したか否かを示す。
再試行時間のビット[5:2]は、二進(binary)基本(base)乗数(multiplier)を示し、再試行時間のビット[1:0]は、基本乗数によって乗じる時間の単位を示す。本実施形態で、二進「00」の単位コードが100nsの基本時間を示す。二進「01」の単位コードが1usの基本時間を示す。二進「10」の単位コードが10usの基本時間を示す。二進「11」の単位コードが100usの基本時間を示す。例えば、再試図時間コードのビット[5:2]が、二進「0100」(即ち、十進数4)であり、単位コードを二進「00」である場合、再試行時間コードが400nsの再試行時間を示す。
他の実施形態で、既存のコネクターピンALERT_nにタイミング定義を追加してメモリモジュールがNVDIMM−Pモードにある場合、コネクターピンALERT_nは、信号D_RDYとして使用される。従来のDDR4仕様(specification)で、信号ALERT_nは2つタイプのエラー(書込みCRC(Cyclic Redundancy Check)エラー、CA(Command Address)パリティーエラー)の発生をシグナリング(signaling)するために使用される。このような2つのエラーは、信号ALERT_nのパルス幅によって区別される。例えば、書込みCRCエラーが発生した場合、DDR4−2400仕様のメモリモジュールは、信号ALERT_nを大略6〜10クロックサイクルの間にロジックローに出力する。CAパリティーエラーが発生した場合、DDR4−2400仕様のメモリモジュールは、信号ALERT_nを大略72〜144クロックサイクルの間にロジックローに出力する。本発明の実施形態によれば、信号ALERT_nの大略2サイクルと3サイクルとの間の短いパルス幅は、信号D_RDYを示すように使用される。したがって、信号ALERT_nは、書込みCRC及びCAパリティー発生に対するDDR4−2400仕様にしたがう機能を遂行する。一実施形態として、信号ALERT_nが信号D_RDYに対して使用される場合、信号D_RDYは、常に最も低い優先順位を有し、したがって書込みCRC又はCAパリティーの発生の検出が保障される。
表8は、本発明の一実施形態によるDRAM DIMMモード及びNVDIMM−Pモードのメモリモジュールに対するコネクターピンを示す。表8に示すように、メモリモジュールがDRAM DIMMモードである場合、ALERT_nピン(ピン208)はメモリコントローラの観点で伝送(Tx)及び受信(Rx)機能を提供するように広く公知された方法に動作する。また、信号CS_n[1](ピン89)、信号ODT[1](ピン91)、信号CKE[1](ピン203)は、メモリコントローラの観点で伝送機能を提供するように広く公知された方法に動作する。メモリモジュールがNVDIMM−Pモードである場合、ピン208は、信号ALERT_n/D_RDYとして定義され、メモリコントローラの観点で伝送(Tx)及び受信(Rx)機能の全てを提供する。ピン89、91、203は、MSC[2:0]として定義される。ピン89、91、203は、メモリコントローラの観点で受信機能を提供する。一実施形態として、信号ALERT_n/D_RDY及びMSG[2:0]は、SDR(Single Data Rate)方式に動作する。他の実施形態で、信号ALERT_n/D_RDY及びMSG[2:0]は、DDR(Double Data Rate)方式に動作する。
Figure 2017157214
表9は、本発明の一実施形態によるNVDIMM−PモードでALERT_nコネクターピンがD_RDY信号に使用される場合、コネクターピンALERT_nに対するタイミング及びメッセージ定義を示す。NVDIMM−Pモードで、コネクターピンALERT_nのパルス幅は、信号D_RDYに対して約2サイクル及び3サイクルの間に定義される。約6サイクル及び約10サイクルの間のパルス幅に対して、コネクターピンALERT_nは、書込みCRCエラーの発生に定義される。また、約72サイクル及び約144サイクルの間のパルス幅に対してコネクターピンALERT_nは、CAパリティーエラーの発生として定義される。
Figure 2017157214
本実施形態で、信号D_RDYとして使用される前にコネクターピンALERT_nは、最小限1つのサイクルの間にロジックハイを出力しなければならない。追加的に、各々の信号D_RDYの後にコネクターピンALERT_nは、最小限1つのサイクルの間にロジックハイを出力してホストシステムによって認識されるようにしなければならない。
図16は、本発明の一実施形態によるD_RDY信号として使用されるALERT_nピンのための信号図である。図16の信号図で、信号流れはメモリモジュール1102からメモリコントローラ1101に向かうことを示す。
図17は、本発明の他の実施形態による選択されたピンがD_RDY信号と関連された状態情報(例えば、キャッシュ情報等)を伝送するように用途が変更されたメモリチャンネル内のメモリモジュールコネクターのピンアウトを示す図である。但し、状態情報の例はこれに制限されない。特に、図17は、メモリチャンネル1200の1つのメモリモジュール1201の例示的なピンアウトの実施形態を示す。メモリチャンネル1200のメモリモジュールの3つのピンは、状態情報(例えば、キャッシュ情報等)をメモリコントローラ(図示せず)又はMC(図示せず)又は一体形のメモリコントローラ(図示せず)を含むCPU(図示せず)に伝送するように用途が変更された。
図17に示すように、3つの例示的なコネクターピン(ODT[1]、CKE[1]、CS_n[1])は、キャッシュ状態情報をメモリコントローラに伝送するように用途変更された。本発明の一実施形態によるメモリモジュールの他のコネクターピンがキャッシュ状態情報をメモリコントローラに伝送するように用途変更されることは容易に理解される。他の実施形態で、例示的なコネクターピン(ODT[1]、CKE[1])は、各々MSG[0]及びMSG[1]としてキャッシュ状態情報を伝送するのに使用され、これによりメッセージは2ビットの幅になる。但し、メッセージはDDR(Double Data Rate)を可能にするメッセージストロボ信号MSG_Sを含む。
本実施形態で、専用ピンは、D_SENDに対して使用されない。代わりに、D_SENDに対する定義されないDDR4命令が使用され、これはTB(Transaction Burst)命令と称される。TB(Transaction Burst)命令は、既存のコマンド及びアドレスピンを使用して同一の機能を提供するためにトランザクションデータバースト(transaction data burst)を開始する。TB命令は、NVMダイレクト(direct)モード及びDRAM+NVMキャッシュモードで動作する。表10は、TB命令の定義を示す。
Figure 2017157214
図18は、本発明の一実施形態によるTB(Transaction Burst)命令を示す信号フローチャートである。図18のフローチャート1300に示すように、1303時点で、ホスト1301はCAバス上で2つのTRDコマンドをメモリモジュール1302に伝送する。1304時点で、メモリモジュール1302はこれに応答して2つの読出しがパッチ(fetch)される準備になったことを表示する。以後、1305時点で、ホスト1301は、2つのデータを出力する2つのバースト(burst)1306を形成するようにメモリモジュール1302に指示するTBコマンドを伝送する。添付される各々のデータは、有効(V:Valid)ビットと該当ID(RID)とを含む。仮にホストが信号D_RDYを受信しない場合、ホストはTBコマンドを発行しない。TBコマンドとデータの返還との間の時間は固定され、一実施形態でこの時間は「tSND」と同一である。
図19は、本発明の一実施形態による読出し状態(RS:Read Status)メッセージを示す信号フローチャートである。図12〜図14に示した実施形態と同様に、図19の信号フローチャート1400に示すように、ホスト1401は事前にメモリモジュールから読出し状態情報を読み出し、又はメモリモジュール1402は事前にtSNDメッセージを利用してホスト1401から注意(attention)を要請し、状態情報をホスト1401に伝送する。1403時点で、ホスト1401がメモリモジュール1402の状態を読出しを望む場合、ホスト1401はRS命令を伝送する。メモリモジュール1402がホスト1401からの注意を望む場合、メモリモジュール1402は信号D_RDY(図14で図示せず)を伝送する。そして、1404時点で、ホスト1401は状態情報を読出すためにTBコマンドをメモリモジュール1402に伝送する。
本実施形態で、RASフィードバック状態情報の定義は、図12〜図14を参照して説明したことと同一である。RASフィードバック状態情報に加えて、状態情報メッセージはまたWC(WriteCredit)及び書込みID(Write ID)情報を含む。これにより、メモリモジュールは書込み状態に対する情報を返還する。例えば、書込み状態に対する情報は、WIDチェックによって書込み(write)が成功したか否か、又WCをチェックして追加的な書込みデータを収容できる程度の充分な空間があるか否か等を含む。一実施形態として、CRCはパケット無欠性(integrity)保護のために使用される。
ホスト1401は、「MSG[0]、cycle1」を読み出して一般データパケットと状態パケットとを区分する。即ち、「MSG[0]」ビットがロジック「0」である場合、ホスト1401はパケットを一般データにデコーディング(decoding)する。仮に「MSG[0]」ビットがロジック「1」である場合、ホスト1401はパケットを状態パケットにデコーディングする。
本実施形態で、読出し状態(RS:Read Status)メッセージは、表11に示すように定義される。
Figure 2017157214
表12は、本発明の一実施形態による例示的な読出し状態パケットの定義を示す。
Figure 2017157214
本実施形態で、読出し状態(RS)コマンドは、メモリモジュールの状態を読出しために使用される。メモリモジュールの状態は、WC(Write Credit)とメモリモジュール応答情報とを含む。読出し状態コマンドは、NVMダイレクトモードとDRAM+NVMキャッシュモードで使用可能である。図20は、本発明の一実施形態によるRS(Read Status)リターンメッセージの配列を示す図である。
図21は、本発明の一実施形態によるインモジュールリフレッシュ機能、インモジュールECC機能、インモジュールスクラビング、及び/又はインモジュールウェアレベリング管理を制御するか、又は支援し、動作調整をホスト装置に提供するメモリモジュールを含む電子装置を示すブロック図である。
電子装置1600は、コンピューティング装置、PDA(Personal Digital Assistant)、ラップトップ(laptop)コンピュータ、モバイルコンピュータ、ウェブタブレット(tablet)、無線フォン、スマートフォン、デジタルミュージックプレーヤー、又は有線や無線電子装置で使用される。但し、これに制限されるものではない。電子装置1600は、バス1650を通じてそれぞれ連結されたコントローラ1610、入出力装置1620、メモリ装置1630、及び無線インターフェイス1640を含む。例えば、入出力装置1620は、キーパッド、キーボード、ディスプレイ、又はタッチスクリーンディスプレーを含む。但し、入出力装置1620の例はこれに制限されない。例えば、コントローラ1610は、少なくとも1つのマイクロプロセッサ(microprocessor)、少なくとも1つのデジタルシグナルプロセッサ(digital signal processor)、少なくとも1つのマイクロコントローラ(microcontroller)等を含む。メモリ装置1630は、コントローラ1610によって使用されるコマンドコードやユーザーデータを格納するように構成される。本実施形態で、メモリ装置1630は、本発明の一実施形態によるインモジュールリフレッシュ機能、インモジュールECC機能、インモジュールスクラビング、及び/又はインモジュールウェアレベリング管理を制御するか、又は支援し、動作調整をホスト装置に提供するメモリモジュールを含む。
電子装置1600は、RF信号を利用して無線通信ネットワークからデータを受信するか、又は無線通信ネットワークにデータを伝送するように構成された無線インターフェイス1640を利用する。例えば、無線インターフェイス1640は、アンテナ、無線送受信機等を含む。電子装置1600は、通信システムの通信インターフェイスプロトコルとして使用される。例えば、通信インターフェイスプロトコルは、CDMA(Code Division Multiple Access)、GSM(登録商標)(Global System for Mobile Communications)、NADC(North American Digital Communications)、E−TDMA(Extended Time Division Multiple Access)、WCDMA(登録商標)(Wideband CDMA)、CDMA2000(登録商標)、Wi−Fi(登録商標)、Muni Wi−Fi(Municipal Wi−Fi)、ブルートゥース(登録商標)(Bluetooth(登録商標))、DECT(登録商標)(Digital Enhanced Cordless Telecommunications)、Wireless USB(登録商標)(Wireless Universal Serial Bus)、Flash OFDM(Fast low−latency access with seamless handoff Orthogonal Frequency Division Multiplexing)、IEEE 802.20、GPRS(General Packet Radio Service)、iBurst(登録商標)、WiBro(登録商標)(Wireless Broadband)、WiMAX(登録商標)、WiMAX−Advanced、UMTS TDD(Universal Mobile Telecommunication Service−Time Division Duplex)、HSPA(High Speed Packet Access)、EVDO(Evolution Data Optimized)、LTE−Advanced(Long Term Evolution−Advanced)、MMDS(Multichannel Multipoint Distribution Service)等を含む。但し、通信インターフェイスプロトコルの例はこれに制限されない。
図22は、本発明の一実施形態によるインモジュールリフレッシュ機能、インモジュールECC機能、インモジュールスクラビング、及び/又はインモジュールウェアレベリング管理を制御するか、或いは支援し、動作調整をホスト装置に提供するメモリモジュールを含むメモリシステムを示すブロック図である。
メモリシステム1700は、大量のデータを格納するためのメモリ装置1710及びメモリコントローラ1720を含む。ホスト1730の読出し/書込み要請に応答して、メモリコントローラ1720は、メモリ装置1710に格納されたデータを読み出すか、又はメモリ装置1710にデータを書き込むようにメモリ装置1710を制御する。メモリコントローラ1720は、ホスト1730(例えば、モバイル装置又はコンピュータシステム)から提供されたアドレスをメモリ装置1710の物理アドレスにマッピングするためのアドレスマッピングテーブルを含む。メモリ装置1710は、本発明の一実施形態によるインモジュールリフレッシュ機能、インモジュールECC機能、インモジュールスクラビング、及び/又はインモジュールウェアレベリング管理を制御するか、又は支援し、動作調整をホスト装置に提供するメモリモジュールを含む。
以上、本発明の実施形態について図面を参照しながら詳細に説明したが、本発明は、上述の実施形態に限定されるものではなく、本発明の技術的範囲から逸脱しない範囲内で多様に変更実施することが可能である。
100 システム
101、201、202、702、1102、1201、1302、1402 メモリモジュール(MM)
102 CPU
103、203、1101、1720 メモリコントローラ(MC)
104 インモジュールコントローラ
105 メモリチップ
106 リフレッシュロジック(RL)
107 タイマー
108 カウンター
109 レジスター
110 機能的構成要素
200、1200 メモリチャンネル
700 インターフェイス
701 CPU/MC
1000 フィードバック状態情報
1301、1401、1730 ホスト
1600 電子装置
1610 コントローラ
1620 入出力装置
1630 メモリ装置
1640 無線インターフェイス
1650 バス
1700 メモリシステム
1710 メモリ装置

Claims (20)

  1. メモリアレイと、
    前記メモリアレイをホスト装置にインターフェイス(interface)するために前記メモリアレイに連結されたインターフェイスと、
    前記メモリアレイ及び前記インターフェイスに連結されたコントローラと、を備え、
    前記インターフェイスは、前記メモリアレイのフィードバック状態情報を前記ホスト装置にインターフェイスするために標準のDIMM(Dual In−Line Memory Module)ピンアウト(pin out)構成から用途変更された複数のコネクション(connection)を含み、
    前記コントローラは、前記メモリアレイの少なくとも1つのリフレッシュ動作を制御し、前記メモリアレイのエラー訂正動作を制御し、前記メモリアレイのメモリスクラビング(scrubbing)動作を制御し、前記メモリアレイのウェアレベリング(wear−leveling)コントロール動作を制御し、そして前記インターフェイスを通じて前記ホスト装置からコマンド(command)を受信し、前記受信されたコマンドに応答して、前記コマンドが受信される時に前記コントローラによって制御される動作に関連する前記インターフェイスを通じて前記ホスト装置にフィードバック状態情報を提供することを特徴とするメモリモジュール。
  2. 前記コントローラは、前記メモリアレイの前記リフレッシュ動作を制御し、前記メモリアレイの前記リフレッシュ動作の間、前記リフレッシュ動作が遂行中であることを示すフィードバック状態情報を前記ホスト装置に提供するように前記インターフェイスを制御することを特徴とする請求項1に記載のメモリモジュール。
  3. 前記コントローラは、前記メモリアレイの前記リフレッシュ動作を制御し、前記メモリアレイの前記リフレッシュ動作の間、フィードバック状態情報を前記ホスト装置に提供するように前記インターフェイスを制御し、
    前記フィードバック状態情報は、ランク識別(Rank Identification)及びバンク識別(Bank Identification)が現在リフレッシュ動作中であることを示し、前記リフレッシュ動作が完了すると、前記ホスト装置に完了したことを知らせることを特徴とする請求項1に記載のメモリモジュール。
  4. 前記コントローラは、前記メモリアレイの前記エラー訂正動作を制御し、前記エラー訂正動作の結果に関連するフィードバック状態情報を前記ホスト装置に提供するように前記インターフェイスを制御することを特徴とする請求項1に記載のメモリモジュール。
  5. 前記コントローラは、前記エラー訂正動作の結果が失敗(failure)である場合に措置を遂行するように、前記ホスト装置に指示するフィードバック状態情報を前記ホスト装置に提供するように前記インターフェイスを制御することを特徴とする請求項4に記載のメモリモジュール。
  6. 前記コントローラは、前記メモリアレイの前記スクラビング動作を制御し、前記スクラビング動作が遂行中であることを示すフィードバック状態情報を前記ホスト装置に提供するように前記インターフェイスを制御することを特徴とする請求項1に記載のメモリモジュール。
  7. 前記メモリアレイは、複数の不揮発性メモリセルを含み、
    前記コントローラは、前記メモリアレイの前記ウェアレベリング動作を制御し、前記ウェアレベリング動作が遂行中であることを示すフィードバック状態情報を前記ホスト装置に提供するように前記インターフェイスを制御することを特徴とする請求項1に記載のメモリモジュール。
  8. 前記メモリアレイは、複数の不揮発性メモリセルを含み、
    前記コントローラは、前記メモリアレイの前記ウェアレベリング動作を制御し、フィードバック状態情報を前記ホスト装置に提供するように前記インターフェイスを制御し、
    前記フィードバック状態情報は、前記ウェアレベリング動作が遂行中であることを示し、前記ウェアレベリング動作のレイテンシ(Latency)等級を前記ホスト装置に示すことを特徴とする請求項1に記載のメモリモジュール。
  9. DRAM(Dynamic Random Access Memroy)及びNVRAM(Non−Volatile Random Access Memory)を含むメモリセルのアレイを含み、DIMM(Dual In−Line Memory Module)で構成されたメモリアレイと、
    前記メモリアレイに連結されたコントローラと、を備え、
    前記コントローラは、前記メモリアレイの少なくとも1つのリフレッシュ動作を制御し、前記メモリアレイのエラー訂正動作を制御し、前記メモリアレイのメモリスクラビング(scrubbing)動作を制御し、前記メモリアレイのウェアレベリング(wear−leveling)コントロール動作を制御し、前記コントローラによって制御される動作に関連する前記ホスト装置にインターフェイスを通じてフィードバック状態情報を提供し、
    前記インターフェイスは、標準のDIMMピンアウト構成で用途変更された複数のコネクションを含むことを特徴とするメモリモジュール。
  10. 前記コントローラは、前記メモリアレイの前記リフレッシュ動作を制御し、前記リフレッシュ動作が発生したことのフィードバック状態情報を前記ホスト装置に提供することを特徴とする請求項9に記載のメモリモジュール。
  11. 前記コントローラは、前記メモリアレイの前記エラー訂正動作を制御し、前記エラー訂正動作が完了したこと及び前記エラー訂正動作の結果を示すフィードバック状態情報を前記ホスト装置に提供することを特徴とする請求項9に記載のメモリモジュール。
  12. 前記コントローラは、前記メモリアレイの前記スクラビング動作を制御し、前記スクラビング動作が発生したことを示すフィードバック状態情報を前記ホスト装置に提供することを特徴とする請求項9に記載のメモリモジュール。
  13. 前記メモリアレイは、複数の不揮発性メモリセルを含み、
    前記コントローラは、前記メモリアレイの前記ウェアレベリング動作を制御し、フィードバック状態情報を前記ホスト装置に提供し、
    前記フィードバック状態情報は、前記ウェアレベリング動作が遂行中であることを示し、前記ウェアレベリング動作のレイテンシ(Latency)等級を前記ホスト装置に示すことを特徴とする請求項9に記載のメモリモジュール。
  14. 前記DIMMは、前記メモリアレイの動作状態を前記ホスト装置にインターフェイスするように標準のDIMMピンアウト構成で用途変更された複数のコネクションを含むことを特徴とする請求項9に記載のメモリモジュール。
  15. メモリセルのアレイを含むメモリアレイと、
    インターフェイスと、
    前記メモリアレイ及び前記インターフェイスに連結されたコントローラと、を備え、
    前記メモリアレイは、前記メモリアレイの動作状態をホスト装置にインターフェイスするように標準のDIMMピンアウト構成で用途変更された複数のコネクションを含むDIMMで構成され、
    前記インターフェイスは、前記メモリアレイを前記ホスト装置にインターフェイス(interface)するために前記DIMMの複数のコネクションを含んで前記メモリアレイに連結され、
    前記コントローラは、前記メモリアレイの少なくとも1つのリフレッシュ動作を制御し、前記メモリアレイのエラー訂正動作を制御し、前記メモリアレイのメモリスクラビング(scrubbing)動作を制御し、前記メモリアレイのウェアレベリング(wear−leveling)コントロール動作を制御することを特徴とするメモリモジュール。
  16. 前記コントローラは、前記メモリアレイの前記リフレッシュ動作を制御し、前記メモリアレイの前記リフレッシュ動作の間、前記リフレッシュ動作が遂行中であることを示すフィードバック状態情報を前記ホスト装置に提供するように前記インターフェイスを制御することを特徴とする請求項15に記載のメモリモジュール。
  17. 前記コントローラは、前記メモリアレイの前記エラー訂正動作を制御し、前記エラー訂正動作の結果を示すフィードバック状態情報を前記ホスト装置に提供するように前記インターフェイスを制御することを特徴とする請求項15に記載のメモリモジュール。
  18. 前記コントローラは、前記エラー訂正動作の結果が失敗(failure)である場合に措置を遂行するように、前記ホスト装置に指示するフィードバック状態情報を前記ホスト装置に提供するように前記インターフェイスを制御することを特徴とする請求項17に記載のメモリモジュール。
  19. 前記コントローラは、前記メモリアレイの前記スクラビング動作を制御し、前記スクラビング動作が遂行中であることを示すフィードバック状態情報を前記ホスト装置に提供するように前記インターフェイスを制御することを特徴とする請求項15に記載のメモリモジュール。
  20. 前記メモリアレイは、複数の不揮発性メモリセルを含み、
    前記コントローラは、前記メモリアレイの前記ウェアレベリング動作を制御し、フィードバック状態情報を前記ホスト装置に提供するように前記インターフェイスを制御し、
    前記フィードバック状態情報は、前記ウェアレベリング動作が遂行中であることを示し、前記ウェアレベリング動作のレイテンシ(Latency)等級を前記ホスト装置に示すことを特徴とする請求項15に記載のメモリモジュール。
JP2017033466A 2016-03-03 2017-02-24 インモジュール機能を遂行するメモリモジュール Active JP7022511B2 (ja)

Applications Claiming Priority (12)

Application Number Priority Date Filing Date Title
US201662303347P 2016-03-03 2016-03-03
US201662303349P 2016-03-03 2016-03-03
US201662303352P 2016-03-03 2016-03-03
US201662303343P 2016-03-03 2016-03-03
US62/303,349 2016-03-03
US62/303,343 2016-03-03
US62/303,347 2016-03-03
US62/303,352 2016-03-03
US201662347569P 2016-06-08 2016-06-08
US62/347,569 2016-06-08
US15/213,386 US10592114B2 (en) 2016-03-03 2016-07-18 Coordinated in-module RAS features for synchronous DDR compatible memory
US15/213,386 2016-07-18

Publications (3)

Publication Number Publication Date
JP2017157214A true JP2017157214A (ja) 2017-09-07
JP2017157214A5 JP2017157214A5 (ja) 2020-03-05
JP7022511B2 JP7022511B2 (ja) 2022-02-18

Family

ID=59792120

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017033466A Active JP7022511B2 (ja) 2016-03-03 2017-02-24 インモジュール機能を遂行するメモリモジュール

Country Status (5)

Country Link
US (4) US10592114B2 (ja)
JP (1) JP7022511B2 (ja)
KR (1) KR20170104115A (ja)
CN (1) CN107153616B (ja)
TW (2) TWI756767B (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107507637A (zh) * 2017-09-18 2017-12-22 深圳市江波龙电子有限公司 一种低功耗双列直插式存储器及其增强驱动方法
CN111108488A (zh) * 2017-11-07 2020-05-05 华为技术有限公司 内存块回收方法和装置
JP2021517692A (ja) * 2018-03-19 2021-07-26 マイクロン テクノロジー,インク. キャッシュ及び複数の独立したアレイを有するメモリのためのインタフェース

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102336666B1 (ko) 2017-09-15 2021-12-07 삼성전자 주식회사 메모리 장치 및 이를 포함하는 메모리 시스템
KR102410022B1 (ko) * 2017-11-24 2022-06-21 에스케이하이닉스 주식회사 에러스크럽방법 및 이를 이용한 반도체모듈
WO2019109299A1 (zh) 2017-12-07 2019-06-13 华为技术有限公司 内存访问技术及计算机系统
US10782908B2 (en) 2018-02-05 2020-09-22 Micron Technology, Inc. Predictive data orchestration in multi-tier memory systems
US20190243787A1 (en) * 2018-02-05 2019-08-08 Micron Technology, Inc. Memory Systems having Controllers Embedded in Packages of Integrated Circuit Memory
US11416395B2 (en) 2018-02-05 2022-08-16 Micron Technology, Inc. Memory virtualization for accessing heterogeneous memory components
US11099789B2 (en) 2018-02-05 2021-08-24 Micron Technology, Inc. Remote direct memory access in multi-tier memory systems
US10880401B2 (en) 2018-02-12 2020-12-29 Micron Technology, Inc. Optimization of data access and communication in memory systems
KR102658230B1 (ko) 2018-06-01 2024-04-17 삼성전자주식회사 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 반도체 메모리 장치의 동작 방법
US10877892B2 (en) 2018-07-11 2020-12-29 Micron Technology, Inc. Predictive paging to accelerate memory access
TWI686697B (zh) 2018-07-26 2020-03-01 大陸商深圳大心電子科技有限公司 記憶體管理方法以及儲存控制器
TWI671632B (zh) * 2018-10-24 2019-09-11 財團法人工業技術研究院 記憶體裝置及其復新資訊同步方法
KR102649315B1 (ko) * 2018-12-03 2024-03-20 삼성전자주식회사 휘발성 메모리 장치를 포함하는 메모리 모듈 및 이를 포함하는 메모리 시스템
US11403035B2 (en) 2018-12-19 2022-08-02 Micron Technology, Inc. Memory module including a controller and interfaces for communicating with a host and another memory module
US10996890B2 (en) 2018-12-19 2021-05-04 Micron Technology, Inc. Memory module interfaces
US10789015B2 (en) * 2019-03-01 2020-09-29 Micron Technology, Inc. Background operations in memory
US10852949B2 (en) 2019-04-15 2020-12-01 Micron Technology, Inc. Predictive data pre-fetching in a data storage device
CN111143109B (zh) * 2019-12-16 2021-08-13 浙江大学 一种ecc内存管理器、方法及电子设备
US11663124B2 (en) * 2020-02-25 2023-05-30 Micron Technology, Inc. Apparatuses and methods for interfacing on-memory pattern matching
KR20220059729A (ko) * 2020-11-03 2022-05-10 삼성전자주식회사 메모리 모듈 및 메모리 모듈의 동작방법
TWI771926B (zh) * 2021-02-25 2022-07-21 慧榮科技股份有限公司 資料儲存裝置以及非揮發式記憶體控制方法
US11625343B2 (en) 2021-05-12 2023-04-11 Micron Technology, Inc. Memory with a communications bus for device-to-controller communication, and associated systems, devices, and methods
US20220374168A1 (en) * 2021-05-21 2022-11-24 Micron Technology, Inc. Memory with memory-initiated command insertion, and associated systems, devices, and methods

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080082750A1 (en) * 2006-09-28 2008-04-03 Okin Kenneth A Methods of communicating to, memory modules in a memory channel
US20080172523A1 (en) * 2007-01-11 2008-07-17 Hitachi, Ltd. Flash memory module, storage apparatus using flash memory module as storage medium, and address translation table verification method for flash memory module
JP2009054116A (ja) * 2007-08-29 2009-03-12 Buffalo Inc メモリシステムおよび情報処理装置
US20120099389A1 (en) * 2010-10-20 2012-04-26 Samsung Electronics Co., Ltd. Memory circuits, systems, and modules for performing dram refresh operations and methods of operating the same
US20140229761A1 (en) * 2013-02-14 2014-08-14 Sony Corporation Storage controller, storage device, information processing system, and storage control method
WO2014143056A1 (en) * 2013-03-15 2014-09-18 Intel Corporation A memory system

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR960039006A (ko) 1995-04-26 1996-11-21 김광호 디램버스에 접속가능한 불휘발성 반도체 메모리장치
US6154821A (en) 1998-03-10 2000-11-28 Rambus Inc. Method and apparatus for initializing dynamic random access memory (DRAM) devices by levelizing a read domain
JP2001010865A (ja) 1999-06-23 2001-01-16 Ngk Insulators Ltd 窒化珪素焼結体及びその製造方法
JP3872922B2 (ja) 1999-06-28 2007-01-24 株式会社東芝 半導体記憶装置及びメモリ混載ロジックlsi
TW451193B (en) 1999-11-30 2001-08-21 Via Tech Inc A method to determine the timing setting value of dynamic random access memory
JP4078010B2 (ja) 2000-03-03 2008-04-23 株式会社日立グローバルストレージテクノロジーズ 磁気ディスク装置及び情報記録方法
US6445624B1 (en) 2001-02-23 2002-09-03 Micron Technology, Inc. Method of synchronizing read timing in a high speed memory system
TWI240864B (en) 2001-06-13 2005-10-01 Hitachi Ltd Memory device
JP4059002B2 (ja) 2001-06-13 2008-03-12 株式会社日立製作所 メモリ装置
US7269709B2 (en) 2002-05-15 2007-09-11 Broadcom Corporation Memory controller configurable to allow bandwidth/latency tradeoff
US6820181B2 (en) 2002-08-29 2004-11-16 Micron Technology, Inc. Method and system for controlling memory accesses to memory modules having a memory hub architecture
US7386768B2 (en) 2003-06-05 2008-06-10 Intel Corporation Memory channel with bit lane fail-over
KR100564635B1 (ko) 2004-10-25 2006-03-28 삼성전자주식회사 메모리 모듈 내에서의 인터페이스 타이밍을 제어하는메모리 시스템 및 그 방법
US7620783B2 (en) 2005-02-14 2009-11-17 Qualcomm Incorporated Method and apparatus for obtaining memory status information cross-reference to related applications
US9171585B2 (en) 2005-06-24 2015-10-27 Google Inc. Configurable memory circuit system and method
US8041881B2 (en) 2006-07-31 2011-10-18 Google Inc. Memory device with emulated characteristics
US7716411B2 (en) 2006-06-07 2010-05-11 Microsoft Corporation Hybrid memory device with single interface
US7894289B2 (en) * 2006-10-11 2011-02-22 Micron Technology, Inc. Memory system and method using partial ECC to achieve low power refresh and fast access to data
WO2008131058A2 (en) 2007-04-17 2008-10-30 Rambus Inc. Hybrid volatile and non-volatile memory device
US8085586B2 (en) * 2007-12-27 2011-12-27 Anobit Technologies Ltd. Wear level estimation in analog memory cells
US8359521B2 (en) 2008-01-22 2013-01-22 International Business Machines Corporation Providing a memory device having a shared error feedback pin
US20100005214A1 (en) 2008-07-01 2010-01-07 International Business Machines Corporation Enhancing bus efficiency in a memory system
EP2313890B1 (en) 2008-08-08 2016-05-04 Hewlett-Packard Development Company, L.P. Independently controllable and reconfigurable virtual memory devices in memory modules that are pin-compatible with standard memory modules
CN101751226A (zh) 2008-12-08 2010-06-23 忆正存储技术(深圳)有限公司 非易失存储介质控制器以及非易失存储设备
US8064250B2 (en) 2008-12-16 2011-11-22 Micron Technology, Inc. Providing a ready-busy signal from a non-volatile memory device to a memory controller
US8261136B2 (en) * 2009-06-29 2012-09-04 Sandisk Technologies Inc. Method and device for selectively refreshing a region of a memory of a data storage device
US8411519B2 (en) 2010-06-04 2013-04-02 Apple Inc. Selective retirement of blocks
JP2012146360A (ja) 2011-01-12 2012-08-02 Renesas Electronics Corp 半導体集積回路及び書込処理方法
US9779020B2 (en) 2011-02-08 2017-10-03 Diablo Technologies Inc. System and method for providing an address cache for memory map learning
US9104547B2 (en) * 2011-08-03 2015-08-11 Micron Technology, Inc. Wear leveling for a memory device
US8850155B2 (en) 2011-12-19 2014-09-30 Advanced Micro Devices, Inc. DDR 2D Vref training
KR102039537B1 (ko) 2013-03-15 2019-11-01 삼성전자주식회사 불휘발성 저장 장치 및 그것의 운영체제 이미지 프로그램 방법
CN105027092B (zh) 2013-03-27 2018-01-30 株式会社日立制作所 具有sdram接口的dram、混合闪存存储器模块
CN104216837A (zh) 2013-05-31 2014-12-17 华为技术有限公司 一种内存系统、内存访问请求的处理方法和计算机系统
KR102226367B1 (ko) 2014-01-02 2021-03-12 삼성전자주식회사 불휘발성 메모리 장치 및 그것을 포함하는 불휘발성 메모리 시스템
US20150268959A1 (en) 2014-03-21 2015-09-24 Qualcomm Incorporated Physical register scrubbing in a computer microprocessor
US9354872B2 (en) 2014-04-24 2016-05-31 Xitore, Inc. Apparatus, system, and method for non-volatile data storage and retrieval
CN204332379U (zh) * 2014-07-17 2015-05-13 威盛电子股份有限公司 非易失性存储器的存储器控制器和固态驱动器
US10379926B2 (en) * 2014-08-05 2019-08-13 Macronix International Co., Ltd. Method and device for monitoring data error status in a memory
US9460791B1 (en) 2015-12-08 2016-10-04 Inphi Corporation Data clock synchronization in hybrid memory modules
US9830086B2 (en) 2016-03-03 2017-11-28 Samsung Electronics Co., Ltd. Hybrid memory controller for arbitrating access to volatile and non-volatile memories in a hybrid memory group
US10621119B2 (en) 2016-03-03 2020-04-14 Samsung Electronics Co., Ltd. Asynchronous communication protocol compatible with synchronous DDR protocol

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080082750A1 (en) * 2006-09-28 2008-04-03 Okin Kenneth A Methods of communicating to, memory modules in a memory channel
US20080172523A1 (en) * 2007-01-11 2008-07-17 Hitachi, Ltd. Flash memory module, storage apparatus using flash memory module as storage medium, and address translation table verification method for flash memory module
JP2008171163A (ja) * 2007-01-11 2008-07-24 Hitachi Ltd フラッシュメモリモジュール、そのフラッシュメモリモジュールを記録媒体として用いたストレージ装置及びそのフラッシュメモリモジュールのアドレス変換テーブル検証方法
JP2009054116A (ja) * 2007-08-29 2009-03-12 Buffalo Inc メモリシステムおよび情報処理装置
US20120099389A1 (en) * 2010-10-20 2012-04-26 Samsung Electronics Co., Ltd. Memory circuits, systems, and modules for performing dram refresh operations and methods of operating the same
KR20120040974A (ko) * 2010-10-20 2012-04-30 삼성전자주식회사 반도체 장치, 이를 포함하는 메모리 모듈, 메모리 시스템 및 그 동작방법
JP2012089137A (ja) * 2010-10-20 2012-05-10 Samsung Electronics Co Ltd 半導体装置、これを含むメモリモジュール、メモリシステム及びその動作方法
US20140229761A1 (en) * 2013-02-14 2014-08-14 Sony Corporation Storage controller, storage device, information processing system, and storage control method
JP2014157391A (ja) * 2013-02-14 2014-08-28 Sony Corp 記憶制御装置、記憶装置、情報処理システムおよび記憶制御方法
WO2014143056A1 (en) * 2013-03-15 2014-09-18 Intel Corporation A memory system
US20150149735A1 (en) * 2013-03-15 2015-05-28 Intel Corporation Memory system
JP2016514320A (ja) * 2013-03-15 2016-05-19 インテル・コーポレーション メモリシステム

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107507637A (zh) * 2017-09-18 2017-12-22 深圳市江波龙电子有限公司 一种低功耗双列直插式存储器及其增强驱动方法
CN107507637B (zh) * 2017-09-18 2024-02-27 深圳市江波龙电子股份有限公司 一种低功耗双列直插式存储器及其增强驱动方法
CN111108488A (zh) * 2017-11-07 2020-05-05 华为技术有限公司 内存块回收方法和装置
KR20200078592A (ko) * 2017-11-07 2020-07-01 후아웨이 테크놀러지 컴퍼니 리미티드 메모리 블록 복구 방법 및 디바이스
JP2021501941A (ja) * 2017-11-07 2021-01-21 ホアウェイ・テクノロジーズ・カンパニー・リミテッド メモリブロックリクレーム方法およびメモリブロックリクレーム装置
CN111108488B (zh) * 2017-11-07 2022-05-10 华为技术有限公司 内存块回收方法和装置
KR102517685B1 (ko) * 2017-11-07 2023-04-05 후아웨이 테크놀러지 컴퍼니 리미티드 메모리 블록 복구 방법 및 디바이스
JP7279889B2 (ja) 2017-11-07 2023-05-23 ホアウェイ・テクノロジーズ・カンパニー・リミテッド メモリブロックリクレーム方法およびメモリブロックリクレーム装置
US11886333B2 (en) 2017-11-07 2024-01-30 Huawei Technologies Co., Ltd. Memory block reclamation method and apparatus
JP2021517692A (ja) * 2018-03-19 2021-07-26 マイクロン テクノロジー,インク. キャッシュ及び複数の独立したアレイを有するメモリのためのインタフェース

Also Published As

Publication number Publication date
KR20170104115A (ko) 2017-09-14
US20200218447A1 (en) 2020-07-09
TWI703444B (zh) 2020-09-01
TW201732617A (zh) 2017-09-16
US10592114B2 (en) 2020-03-17
CN107153616B (zh) 2023-09-08
US20220229551A1 (en) 2022-07-21
JP7022511B2 (ja) 2022-02-18
TWI756767B (zh) 2022-03-01
TW202046333A (zh) 2020-12-16
CN107153616A (zh) 2017-09-12
US11294571B2 (en) 2022-04-05
US20170255383A1 (en) 2017-09-07
US20240143173A1 (en) 2024-05-02

Similar Documents

Publication Publication Date Title
JP7022511B2 (ja) インモジュール機能を遂行するメモリモジュール
US11397698B2 (en) Asynchronous communication protocol compatible with synchronous DDR protocol
US11789880B2 (en) Load reduced nonvolatile memory interface
EP3341941B1 (en) Memory device error check and scrub mode and error transparency
EP3198440B1 (en) Exchanging ecc metadata between memory and host system
US9978430B2 (en) Memory devices providing a refresh request and memory controllers responsive to a refresh request
US20150378814A1 (en) Extensible memory hub
CN101236524A (zh) 混合硬盘驱动器、计算机系统、闪存直接存储器存取电路
JP2011227948A (ja) 半導体記憶装置、及びその制御方法
EP3874507A1 (en) Shared error check and correct logic for multiple data banks
CN112540867A (zh) 存储模块以及存储控制器的纠错方法
KR20200055805A (ko) 다수의 레이턴시 집합을 이용하는 메모리 디바이스 및 이의 작동 방법
US11853608B2 (en) Information writing method and apparatus
US20220019382A1 (en) NAND Dropped Command Detection and Recovery
KR102608909B1 (ko) 반도체장치
US10318208B2 (en) Memory apparatus for executing multiple memory operations by one command and operating method thereof
US9384820B1 (en) Aligning calibration segments for increased availability of memory subsystem

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200123

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200123

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200123

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20200129

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200416

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200728

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201028

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20210119

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210514

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

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20210514

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

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20210525

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

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20210601

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20210806

C211 Notice of termination of reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C211

Effective date: 20210817

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20210928

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20211005

C23 Notice of termination of proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C23

Effective date: 20211214

C03 Trial/appeal decision taken

Free format text: JAPANESE INTERMEDIATE CODE: C03

Effective date: 20220125

C30A Notification sent

Free format text: JAPANESE INTERMEDIATE CODE: C3012

Effective date: 20220125

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220207

R150 Certificate of patent or registration of utility model

Ref document number: 7022511

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150