TW201944425A - 用於儲存裝置的模組控制器和包括該模組控制器的儲存模組 - Google Patents

用於儲存裝置的模組控制器和包括該模組控制器的儲存模組 Download PDF

Info

Publication number
TW201944425A
TW201944425A TW107142290A TW107142290A TW201944425A TW 201944425 A TW201944425 A TW 201944425A TW 107142290 A TW107142290 A TW 107142290A TW 107142290 A TW107142290 A TW 107142290A TW 201944425 A TW201944425 A TW 201944425A
Authority
TW
Taiwan
Prior art keywords
storage
package
circuit
repair
packages
Prior art date
Application number
TW107142290A
Other languages
English (en)
Other versions
TWI787404B (zh
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 韓商愛思開海力士有限公司
Publication of TW201944425A publication Critical patent/TW201944425A/zh
Application granted granted Critical
Publication of TWI787404B publication Critical patent/TWI787404B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/27Built-in tests
    • 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/44Indication or identification of errors, e.g. for repair
    • G11C29/4401Indication or identification of errors, e.g. for repair for self repair
    • 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
    • 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
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

一種測試電路包括內建自測(BIST)電路和內建修復分析(BIRA)電路。所述內建自測(BIST)電路對多個儲存器封裝件執行測試操作,以生成故障訊息。所述內建修復分析(BIRA)電路從BIST電路接收故障訊息,以將所述多個儲存器封裝件中的至少一個選擇作為修復目標儲存器封裝件。透過考慮錯誤校正碼(ECC)電路的錯誤校正能力以及被包括在所述多個儲存器封裝件中每一個中的冗餘區的可用性來選擇修復目標儲存器封裝件。

Description

用於儲存裝置的模組控制器和包括該模組控制器的儲存模組
本公開內容的各種實施例涉及儲存裝置,並且更具體地涉及用於儲存裝置的模組控制器以及包括該模組控制器的儲存模組。
隨著半導體儲存裝置變得更高度集成,半導體儲存裝置的儲存容量已經隨著半導體技術的發展而迅速增大。半導體儲存裝置的儲存容量的增大可導致在每一個半導體儲存裝置中所包括的儲存單元的數目中的增加。如果半導體儲存裝置中的儲存單元的數目增加,則形成故障儲存單元的概率也可能增大。因而,考慮到故障儲存單元的形成,每個儲存裝置的單元陣列區可以被設計成包括冗餘單元區。如果在單元陣列區中形成了故障儲存單元,則可以透過使用關於故障儲存單元的訊息用冗餘單元區中所包括的冗餘儲存單元來替換故障儲存單元。
近來,許多努力已經被聚焦於利用三維集成技術來改善具有低功率消耗的半導體儲存裝置的性能。三維集成技術可以對應於用於垂直地堆疊儲存晶片或儲存單元來增大半導體儲存裝置的集成密度的製造技術儲存晶片。因而,在三維集成技術被用於實現高度集成的儲存器封裝件的情況中,儲存晶片中儲存單元的可靠性可能變得更重要。
相關申請的交叉引用:本申請對2018年4月18日提交的申請號為10-2018-0045080的韓國申請要求優先權,所述韓國申請透過引用以其全部被併入本文中。
根據實施例,可以提供測試電路。測試電路可以包括內建自測(BIST,built-in self-test)電路和內建修復分析(BIRA,built-in repair analysis)電路。內建自測(BIST)電路可以對多個儲存器封裝件執行測試操作,以生成故障訊息。內建修復分析(BIRA)電路可以從BIST電路接收故障訊息,以便將所述多個儲存器封裝件中的至少一個選擇作為修復目標儲存器封裝件。可以透過考慮錯誤校正碼(ECC)電路的錯誤校正能力以及被包括在所述多個儲存器封裝件中每一個中的冗餘區的可用性來選擇修復目標儲存器封裝件。
根據實施例,可以提供儲存模組。所述儲存模組可以包括多個儲存器封裝件和模組控制器,所述模組控制器被配置成控制所述多個儲存器封裝件的操作。模組控制器可以包括錯誤校正碼(ECC)電路和測試電路。測試電路可以包括內建自測(BIST)電路和內建修復分析(BIRA)電路。內建自測(BIST)電路可以對所述多個儲存器封裝件執行測試操作,以生成故障訊息。內建修復分析(BIRA)電路可以從BIST電路接收故障訊息,以便將所述多個儲存器封裝件中的至少一個選擇作為修復目標儲存器封裝件。透過考慮錯誤校正碼(ECC)電路的錯誤校正能力以及被包括在所述多個儲存器封裝件中每一個中的冗餘區的可用性,可以選擇修復目標儲存器封裝件。
根據實施例,可以提供一種方法。所述方法可以包括利用內建自測(BIST)電路來對所述多個儲存器封裝件執行測試操作,以生成故障訊息。所述方法可以包括利用內建修復分析(BIRA)電路,基於故障訊息來將所述多個儲存器封裝件中的至少一個選擇作為修復目標儲存器封裝件。透過考慮錯誤校正碼(ECC)電路的錯誤校正能力以及被包括在所述多個儲存器封裝件中每一個中的冗餘區的可用性,可以選擇修復目標儲存器封裝件。
在實施例的以下描述中,將理解的是,術語「第一」和「第二」意圖標識元件,但不被用於僅僅限定元件本身或意指特定的序列。另外,當一元件被稱為位於另一元件「上」、「上方」、「以上」、「下方」或「以下」的時候,意圖意指相對位置關係,而不是被用於限制如下某些情況:即該元件直接接觸該另一元件,或至少一個居間元件存在於其之間。因此,在本文中所使用的諸如「之上」、「上方」、「以上」、「下方」、「以下」、「下面」等等之類的術語僅僅用於描述特定實施例的目的,並且不意圖限制本公開內容的範圍。此外,當元件被稱為「被連接」或「被耦接」到另一元件的時候,元件可以直接地被電氣或機械連接或耦接到另一元件,或可以透過替換其之間的另一元件而形成連接關係或耦接關係。
各種實施例可以針對用於儲存裝置的測試電路以及包括測試電路的儲存模組。
圖1是一方塊圖,其圖示了根據本公開內容的實施例的儲存模組10的示例。參考圖1,儲存模組10可以被配置成包括多個儲存器封裝件100、多個數據緩衝器200、接頭片(tab)300和模組控制器(DIMM CTRL)400。儘管圖1圖示了其中儲存模組10包括十八個儲存器封裝件100(即第一到第十八儲存器封裝件PKG01~PKG18)的示例,但是本公開內容不限於此。例如,在一些其它實施例中,儲存器封裝件100的數目可小於或大於十八。根據儲存模組10的配置(例如儲存模組10的輸入/輸出(I/O)配置),可以將儲存模組10中所包括的儲存器封裝件100的數目設置成不同的。所述多個儲存器封裝件100、所述多個數據緩衝器200和模組控制器(DIMM CTRL) 400可以被裝配在諸如印刷電路板(PCB)的基底上。被附接到基底端部的接頭片300可以具有多個連接端子(也被稱為「接頭片引腳」)。接頭片300可以包括命令/位址輸入引腳、時脈輸入引腳和數據I/O引腳。
圖2是一方塊圖,其圖示了在圖1的儲存模組10中所包括的儲存器封裝件100中任一個的配置。儲存器封裝件100可以包括多個儲存晶片(或多個儲存裸片),例如第一到第N儲存晶片110-1、110-2、……、以及110-N。在實施例中,所述第一到第N儲存晶片110-1、110-2、……、以及110-N可以垂直地被堆疊在封裝基底的表面上。所述第一到第N儲存晶片110-1、110-2、……、以及110-N可以具有相同的配置。在這樣的情況中,第一儲存晶片110-1可以具有例如四個儲存體組(即,第一到第四儲存體組BG-0、BG-1、BG-2和 BG-3)。所述第一到第四儲存體組BG-0、BG-1、BG-2 和BG-3可以具有相同的配置。所述第一到第四儲存體組BG-0、BG-1、BG-2 和BG-3中的一個可以由儲存體組位址來指明。所述第一到第四儲存體組BG-0、BG-1、BG-2 和BG-3中的每一個可以具有例如四個儲存體(即第一到第四儲存體BANK-0、BANK-1、BANK-2和BANK-3)。因而,第一儲存晶片110-1可以包括十六個儲存體。所述第一到第四儲存體BANK-0、BANK-1、BANK-2和BANK-3可以具有相同的配置。所述第一到第四儲存體BANK-0、BANK-1、BANK-2和BANK-3中的一個可以由儲存體位址來指明。
圖3是一示意性視圖,其圖示了在圖2的儲存器封裝件100中所包括的第一儲存晶片110-1的第一儲存體BANK-0的配置。參考圖3,第一儲存體BANK-0可以包括例如四個單元陣列區(即,第一到第四單元陣列區cell_array_0、cell_array_1、 cell_array_2和cell_array_3)。所述第一到第四單元陣列區cell_array_0、cell_array_1、 cell_array_2和cell_array_3可以具有相同的配置。所述第一到第四單元陣列區cell_array_0、cell_array_1、 cell_array_2和cell_array_3中的一個可以由單元陣列位址來指明。第一單元陣列區cell_array_0可以具有「00」的單元陣列位址。第二單元陣列區cell_array_1可以具有「01」的單元陣列位址。第三單元陣列區cell_array_2可以具有「10」的單元陣列位址。第四單元陣列區cell_array_3可以具有「11」的單元陣列位址。
圖4是一示意性視圖,其圖示了在圖3的第一儲存體BANK-0中所包括的第一單元陣列區cell_array_0的配置。參考圖4,第一單元陣列區cell_array_0可以包括多個儲存單元,所述多個儲存單元沿著多個列和多個行以矩陣形式而成陣列。第一單元陣列區cell_array_0可以包括數據儲存區和冗餘區。數據儲存區可以對應於包括主儲存單元的單元區,並且冗餘區可以是包括用於替換主儲存單元之中的故障儲存單元的冗餘儲存單元的單元區。在實施例中,每一列可以具有其自己的位址列位址,並且每一行可以具有其自己的行位址位址。因而,各列中的一個可以由位址列位址指明,並且各行中的一個可以由行位址位址指明。雖然數據儲存區中的主儲存單元不與冗餘區中的冗餘儲存單元共享任何位址列位址,但是數據儲存區中的主儲存單元可以與冗餘區中的冗餘儲存單元共享行位址位址。在實施例中,用於選擇主儲存單元中任一個的位址列位址可以被配置成具有十三位元二進制數形式,並且用於選擇主儲存單元中任一個的行位址位址可以被配置成具有十位元二進制數形式。在這樣的情況中,第一單元陣列區cell_array_0的數據儲存區可以具有一兆位元組儲存容量。根據實施例可以將第一單元陣列區cell_array_0中的數據儲存區和冗餘區的配置設置成不同的。
圖5是一方塊圖,其圖示了在圖1的儲存模組10中所包括的模組控制器400的配置。參考圖5,模組控制器400可以包括:充當模組控制器400與主機20之間的接口的前物理層401-1,以及充當模組控制器400與儲存介質30之間的接口的後物理層401-2。在實施例中,儲存介質30可以包括被設置在儲存模組(圖1的10)中的所述多個儲存器封裝件(圖1的100)。模組控制器400可以還包括命令處理電路402、測試電路403以及錯誤校正碼(ECC)電路404。此外,模組控制器400可以還包括單向多工器405與雙向多工器406。
命令處理電路402可以透過前物理層401-1而從主機20接收命令,並且可以透過單向多工器405與後物理層401-2而將命令輸出到儲存介質30。測試電路403可以測試所有儲存器封裝件100,並且可以根據測試結果而在所測試的儲存器封裝件100之中選擇一個或多個修復目標儲存器封裝件。測試電路403還可以執行根據測試結果所選擇的修復目標儲存器封裝件的修復操作。另外,測試電路403可以將冗餘區的狀態儲存在儲存介質30中並且將修復目標區的位址儲存在儲存介質30中。測試電路403可以透過單向多工器405和雙向多工器406而被耦接到後物理層401-2。如果從主機20輸出的寫數據透過前物理層401-1被輸入到ECC電路404,則ECC電路404可以執行寫數據的ECC編碼操作以生成ECC編碼的數據,並且可以透過雙向多工器406和後物理層401-2而將ECC編碼的數據輸出到儲存介質30。如果從儲存介質30輸出的讀數據透過後物理層401-2和雙向多工器406而被輸入到ECC電路404,則ECC電路404可以執行讀數據的ECC解碼操作以校正讀數據的錯誤位元,並且可以透過前物理層401-1而將經校正的讀數據輸出到主機20。當ECC電路404執行讀數據的ECC解碼操作的時候,ECC電路404可以在ECC電路404的錯誤校正能力內校正讀數據的錯誤位元。ECC電路404的錯誤校正能力可以被定義為能夠透過ECC編碼操作和ECC解碼操作被校正的最大錯誤位元(或最大錯誤符號)的數目。
圖6是一方塊圖,其圖示了根據本公開內容的實施例的測試電路403的示例。參考圖6,測試電路403可以被配置成包括內建自測(BIST)電路410、內建修復分析(BIRA)電路420、測試模式(TM)電路430、內建自修復(BISR,built-in self-repair)電路440和修復位址寄存器檔案(RARF,repair address register file)450。測試電路403可以執行所述多個儲存器封裝件(圖1的100)的測試操作以獲得故障訊息,並且可以透過使用所述故障訊息而在所測試的儲存器封裝件之中選擇一個或多個修復目標儲存器封裝件。可以透過考慮ECC電路404的錯誤校正能力以及在儲存器封裝件100的每一個中所包括的冗餘區的可用性來選擇修復目標儲存器封裝件。
BIST電路410可以執行所述多個儲存器封裝件100的測試操作以生成和輸出故障訊息。可以使用測試演算法來對儲存器封裝件100的每一個中所包括的儲存單元執行測試操作。為了使用測試演算法來執行測試操作,BIST電路410可以被配置成包括命令生成器411、位址生成器412、數據生成器413和數據比較器414。命令生成器411可以為測試操作生成寫命令和讀命令。位址生成器412可以生成要透過讀操作和寫操作而被測試的儲存單元的位址。數據生成器413可以生成測試型樣,所述測試型樣被應用到要被測試的儲存單元。數據比較器414可以比較從儲存單元中讀出的數據與被寫入到儲存單元中的測試模式,以判別儲存單元中的每一個是否是故障儲存單元,並且可以生成關於故障儲存單元的故障訊息以將故障訊息輸出到BIRA電路420。
如果從BIST電路410的數據比較器414所輸出的故障訊息被輸入到BIRA電路420,則BIRA電路420可以分析故障訊息以在所測試的儲存器封裝件100之中選擇要被修復的儲存器封裝件。在這樣的情況中,BIRA電路420可以在考慮單元陣列區中的冗餘區的狀態以及ECC電路404的錯誤校正能力的情況下進行操作,以最小化修復目標儲存器封裝件的數目。BIRA電路420可以包括未修復控制(URC)電路421、修復分析(RA)電路422以及修復位址寄存器檔案控制(RARFC)電路423。
URC電路421可以分析故障訊息以獲得故障分佈數據,並且可以接收關於儲存器封裝件100的每一個中所包括的單元陣列的冗餘區的狀態的訊息以確定內建修復分析(BIRA)操作的執行/不執行。由URC電路421所獲得的故障分佈數據可以由儲存器封裝件100以故障儲存單元的數目的形式儲存到URC電路421的第一寄存器中。也就是說,與儲存器封裝件100的每一個中的所有故障儲存單元的數目相對應的二進制數可以被儲存到URC電路421的第一寄存器中。URC電路421可以設置被限制在ECC電路404的錯誤校正能力的範圍內的失效基準(FC,failure criterion),以便在URC電路421的操作期間考慮ECC電路404的錯誤校正能力。在實施例中,如果ECC電路404的錯誤校正能力是「M」個位元(或「M」個符號),則失效基準(FC)可以被設置為大於零並且等於或小於「M」的自然數。針對失效基準(FC)的設置值在本文中也被稱為失效基準值。
URC電路421可以由儲存器封裝件100透過TM電路430從儲存介質30接收關於單元陣列區中的冗餘區的狀態的訊息(還被稱為「冗餘區訊息」)。被輸入到URC電路421的冗餘區訊息可以被儲存到URC電路421的第二寄存器中。URC電路421可以比較具有在儲存器封裝件100的每一個中的修復過程中不再可用的不可用冗餘區的單元陣列區中所包括的所有故障儲存單元的數目與失效基準(FC)以確定內建修復分析(BIRA)操作的執行或不執行。所述不可用冗餘區可以對應於已經在先前的修復過程中被使用的不具有可用冗餘儲存單元的冗餘區。在實施例中,如果每個儲存器封裝件中具有不可用冗餘區的單元陣列區中所包括的所有故障儲存單元的數目等於或大於失效基準(FC),則內建修復分析(BIRA)操作可以終止,因為不能利用不可用冗餘區來修復儲存器封裝件。相反,如果不存在沒有不可用冗餘區的儲存器封裝件或每個儲存器封裝件中具有不可用冗餘區的單元陣列區中所包括的所有故障儲存單元的數目小於失效基準(FC),則可以繼續執行內建修復分析(BIRA)操作。
RA電路422在某個條件下可以終止內建修復分析(BIRA)操作,或可以在由URC電路421執行內建修復分析(BIRA)操作的時候執行用於選擇修復目標儲存器封裝件的操作。例如,如果故障儲存單元的數目被更新成具有在從故障儲存單元的總數目中減去修復目標儲存器封裝件中的故障儲存單元的數目之後剩餘的值並且經更新的故障儲存單元數目小於失效基準(FC),則RA電路422可以終止內建修復分析(BIRA)操作。相反,RA電路422可以選擇修復目標儲存器封裝件,使得如果經更新的故障儲存單元的數目等於或大於失效基準(FC),則除了修復目標儲存器封裝件之外的儲存器封裝件的數目被最大化。為了使RA電路422終止內建修復分析(BIRA)操作或選擇修復目標儲存器封裝件,RA電路422可以透過RARFC電路423從RARF 450接收要被修復的儲存器封裝件的冗餘區的位址訊息。
在內建修復分析(BIRA)操作期間,RARFC電路423可以將RARF 450中所儲存的關於修復目標儲存器封裝件與修復目標位址的訊息傳輸到RA電路422。RARFC電路423還可以從RA電路422接收關於在內建修復分析(BIRA)操作期間所選擇的修復目標儲存器封裝件與修復目標位址的訊息,並且可以將關於修復目標儲存器封裝件和修復目標位址的訊息輸出到RARF 450,以便將關於修復目標儲存器封裝件和修復目標位址的訊息儲存到RARF 450,儲存到RARF 450中。另外,RARFC電路423可以在選擇了修復目標儲存器封裝件之後判別修復目標儲存器封裝件中的冗餘區是否在修復過程中可用,並且根據判別結果,可以終止內建修復分析(BIRA)操作,可以將關於修復目標儲存器封裝件和修復目標位址的訊息儲存到RARF 450中,或可以設置BIST重試標誌信號以再次執行內建自修復(BISR)操作。
TM電路430可以從儲存介質300獲得關於冗餘區狀態的訊息(還被稱為「冗餘區訊息」),並且可以將冗餘區訊息傳輸到URC電路421。BISR電路440可以接收被儲存在RARF 450中的關於修復目標儲存器封裝件和修復目標位址的訊息,並且可以執行修復目標儲存器封裝件的修復過程。
圖7至9是流程圖,其圖示了根據本公開內容的實施例的測試方法,並且圖10至22圖示了在圖7和9中所示的測試方法中所包括的各種步驟。在下文中,將參考圖7至22來描述根據實施例的測試方法。首先,參考圖7,BIST電路(圖6的410)可以執行在儲存模組(圖1的10)中所包括的儲存器封裝件(圖1的100)的測試操作(參見步驟511)。作為在步驟511處執行的測試操作的結果,BIST電路410可以將關於儲存器封裝件100的故障訊息傳輸到BIRA電路420的URC電路421。在下文中將結合儲存模組50來描述本實施例,所述儲存模組50包括五個儲存器封裝件(即第一到第五儲存器封裝件PKG0~PKG4)(參見圖10)。在圖10中,省略了模組控制器。另外,將結合如下示例來描述本實施例:在所述示例中,在由內建自測(BIST)電路410執行了內建自測(BIST)操作之後,第一儲存器封裝件PKG0中具有不可用冗餘區的單元陣列區中所包括的故障儲存單元的數目(fcn)是四個位元(或四個符號),第二儲存器封裝件PKG1中具有不可用冗餘區的單元陣列區中所包括的故障儲存單元的數目(fcn)是兩個位元(或兩個符號),第三儲存器封裝件PKG2中具有不可用冗餘區的單元陣列區中所包括的故障儲存單元的數目(fcn)是一個位元(或一個符號),第四儲存器封裝件PKG3中具有不可用冗餘區的單元陣列區中所包括的故障儲存單元的數目(fcn)是一個位元(或一個符號),以及第五儲存器封裝件PKG4中具有不可用冗餘區的單元陣列區中所包括的故障儲存單元的數目(fcn)是零個位元(或零個符號)。
如圖11中所圖示的,從BIST電路410傳輸到BIRA電路420的URC電路421的故障訊息可以包括晶片選擇信號CS、晶片標識CID、儲存體組位址、儲存體位址、位址列位址和針對每個儲存器封裝件的故障訊息(還被稱為「針對每個封裝件的故障訊息」)。在實施例中,晶片選擇信號CS可以是兩位元數據,例如「01」的二進制流。在實施例中,晶片標識CID可以是三位元數據,例如「000」的二進制流。在第一到第五儲存器封裝件PKG0~PKG4中任一個中所包括的儲存晶片之一可以由晶片選擇信號CS和晶片標識CID來選擇。在實施例中,儲存體組位址可以是兩位元數據,例如「01」的二進制流。在所選儲存晶片中所包括的儲存體組之一可以由儲存體組位址來選擇。在實施例中,儲存體位址可以是兩位元數據,例如「10」的二進制流。在所選儲存體組中所包括的儲存體之一可以由儲存體位址來選擇。在實施例中,位址列位址可以是十八位元數據,例如「000101010101010101」的二進制流。在實施例中,針對每個封裝件的故障訊息可以是十五位元數據,例如「000001001010100」的二進制流。
如圖12中所圖示的,十八位元位址列位址可以包括由十三個最低有效位元(LSB)組成的十三位元位址列位址、由三個最高有效位元(MSB)組成的三位元行組位址、以及在所述十三位元位址列位址與三位元行組位址之間由兩個位元組成的兩位元單元陣列位址。在本實施例的情況中,在所選儲存體中所包括的單元陣列區之中具有「10」的單元陣列位址的單元陣列區可以被選擇,以及在所選單元陣列區中所包括的多個列之中具有「1010101010101」位址列位址的列可以被選擇,以及位於所選列中的八個行處的八個儲存單元可以由「000」的行組位址選擇和測試。在針對每個封裝件的故障訊息中所包括的位元的數目可以由每個儲存器封裝件中的故障儲存單元的最大數目確定。在本實施例中,每個儲存器封裝件中的故障儲存單元的最大數目可以是四個位元。因而,可以透過使用三個位元來表述每個儲存器封裝件中的故障儲存單元的數目。在本實施例中,由於儲存器封裝件的數目是五,所以針對每個封裝件的故障訊息可以由具有十五個位元的二進制流來表述。在圖12中所圖示的針對每個封裝件的故障訊息中,包括LSB的「100」的三位元低階數據可以指示第一儲存器封裝件PKG0中的故障儲存單元的數目,在緊挨著「100」的三位元低階數據的「010」的三位元低階數據可以指示第二儲存器封裝件PKG1中的故障儲存單元的數目,在緊挨著「010」的三位元低階數據的「001」的三位元低階數據可以指示第三儲存器封裝件PKG2中的故障儲存單元的數目,在緊挨著「001」的三位元低階數據的「001」的三位元低階數據可以指示第四儲存器封裝件PKG3中的故障儲存單元的數目,以及包括MSB的「000」的三位元高階數據可以指示第五儲存器封裝件PKG4中的故障儲存單元的數目。
如圖13中所圖示的,URC電路421可以分析故障訊息以生成故障分佈數據,並且將所述故障分佈數據儲存到URC電路421中所包括的第一寄存器601中(參見圖7的步驟512)。第一寄存器601可以包括多個儲存區601-1、601-2、601-3和601-4,其數目等於每個儲存器封裝件中故障儲存單元的最大數目。如果每個儲存器封裝件中故障儲存單元的最大數目是四,如同本實施例,則第一寄存器601可以包括四個儲存區(即,第一到第四儲存區601-1、601-2、601-3和601-4)。第一到第四儲存區601-1、601-2、601-3和601-4中的每一個可以具有多個儲存元件,其數目等於在儲存模組50中所包括的儲存器封裝件PKG0~PKG4的數目。因此,第一到第四儲存區601-1、601-2、601-3和601-4中的每一個可以具有五個儲存元件。每個儲存區中的五個儲存元件可以相應地對應於第一到第五儲存器封裝件PKG0~PKG4。例如,第一儲存器封裝件PKG0的故障分佈數據可以被儲存到與第一到第四儲存區601-1、 601-2、601-3和601-4的第一LSB相對應的第一儲存元件中,第二儲存器封裝件PKG1的故障分佈數據可以被儲存到與第一到第四儲存區601-1、 601-2、601-3和601-4的第二LSB相對應的第二儲存元件中,第三儲存器封裝件PKG2的故障分佈數據可以被儲存到與第一到第四儲存區601-1、 601-2、601-3和601-4的第三LSB相對應的第三儲存元件中,第四儲存器封裝件PKG3的故障分佈數據可以被儲存到與第一到第四儲存區601-1、 601-2、601-3和601-4的第二MSB相對應的第四儲存元件中,以及第五儲存器封裝件PKG4的故障分佈數據可以被儲存到與第一到第四儲存區601-1、 601-2、601-3和601-4的第一MSB相對應的第五儲存元件中。
為「1」的數據可以被儲存到在第一儲存區601-1中所包括的五個儲存元件之中的與具有一個故障儲存單元(fcn=1)的儲存器封裝件相對應的儲存元件中,以及為「0」的數據可以被儲存到在第一儲存區601-1中所包括的五個儲存元件之中的其它儲存元件中。因而,由於第三儲存器封裝件PKG2的故障儲存單元的數目(fcn)和第四儲存器封裝件PKG3的故障儲存單元的數目(fcn)是一,所以為「1」的數據可以被儲存到與第一儲存區601-1的第三和第四LSB相對應的儲存元件中,並且為「0」的數據可以被儲存到第一儲存區601-1的剩餘儲存元件中。為「1」的數據可以被儲存到在第二儲存區601-2中所包括的五個儲存元件之中的與具有兩個故障儲存單元(fcn=2)的儲存器封裝件相對應的儲存元件中,以及為「0」的數據可以被儲存到在第二儲存區601-2中所包括的五個儲存元件之中的其它儲存元件中。因而,由於第二儲存器封裝件PKG1的故障儲存單元的數目(fcn)是二,所以為「1」的數據可以被儲存到與第二儲存區601-2的第二LSB相對應的儲存元件中,並且為「0」的數據可以被儲存到第二儲存區601-2的剩餘儲存元件中。由於儲存模組50中不存在具有三個故障儲存單元(fcn=3)的儲存器封裝件,所以為「0」的數據可以被儲存到第三儲存區601-3中所包括的所有儲存元件中。另外,由於第一儲存器封裝件PKG0具有四個故障儲存單元(fcn=4),所以為「1」的數據可以被儲存到與第四儲存區601-4的第一LSB相對應的儲存元件中,並且為「0」的數據可以被儲存到第四儲存區601-4的剩餘儲存元件中。
如圖14中所圖示的,在關於儲存器封裝件PKG0~PKG4中的每一個的冗餘區訊息被儲存到URC電路421的第二寄存器602中之後,判別儲存器封裝件PKG0~PKG4中的每一個是否具有不可用的冗餘區(參見圖7的步驟513)。特別地,URC電路421可以透過TM電路430而從儲存器封裝件PKG0~PKG4接收關於儲存器封裝件PKG0~PKG4中的每一個的冗餘區訊息。冗餘區訊息可以包括關於以下的訊息:儲存器封裝件PKG0~PKG4中的每一個是否具有可用冗餘區。例如,可以使用為「1」的數據來表述包括已經在先前的修復過程中被使用的不可用冗餘區的儲存器封裝件不具有可用冗餘儲存單元。相反,可以使用為「0」的數據來表述包括可用冗餘區的儲存器封裝件具有可用冗餘儲存單元。
儲存冗餘區訊息的第二寄存器602可以具有26 個儲存區(即第一到第六十四儲存區602-1、……和602-64)。因而,可以由六位元位址來選擇第一到第六十四儲存區602-1、……和602-64中的每一個。在實施例中,第二寄存器602的第一儲存區602-1可以具有「000000」的位址。第二寄存器602的第六十四儲存區602-64可以具有「111111」的位址。第一到第六十四儲存區602-1、……和602-64中任一個的六位元位址中的第一和第二LSB可以與如下兩個位元相同:所述兩個位元指示在構成參考圖12所描述的位址列位址的十八個位元之中的單元陣列位址。第一到第六十四儲存區602-1、……、和602-64中任一個的六位元位址中的第三和第四LSB可以與構成儲存體位址的兩個位元相同。第一到第六十四儲存區602-1、……和602-64中任一個的六位元位址中的第五和第六個(即第一和第二MSB)可以與構成儲存體組位址的兩個位元相同。因此,具有位址「000000」的第一儲存區602-1可以對應於具有儲存體組位址「00」、儲存體位址「00」以及單元陣列位址「00」的單元陣列區。類似地,具有位址「111111」的第六十四儲存區602-64可以對應於具有儲存體組位址「11」、儲存體位址「11」以及單元陣列位址「11」的單元陣列區。
第一到第六十四儲存區602-1、……和602-64中的每一個可以具有多個儲存元件,其數目與在儲存模組50中所包括的儲存器封裝件的數目相同。如果儲存模組50包括五個儲存器封裝件PKG0~PKG4,如同本實施例,則第一到第六十四儲存區602-1、……和602-64中的每一個可以具有五個儲存元件。所述五個儲存元件可以相應地對應於五個儲存器封裝件PKG0~PKG4。例如,關於第一儲存器封裝件PKG0的冗餘區訊息可以被儲存到與第一到第六十四儲存區602-1、……和602-64的第一LSB相對應的第一儲存元件中,關於第二儲存器封裝件PKG1的冗餘區訊息可以被儲存到與第一到第六十四儲存區602-1、……和602-64的第二LSB相對應的第二儲存元件中,關於第三儲存器封裝件PKG2的冗餘區訊息可以被儲存到與第一到第六十四儲存區602-1、……和602-64的第三LSB相對應的第三儲存元件中,關於第四儲存器封裝件PKG3的冗餘區訊息可以被儲存到與第一到第六十四儲存區602-1、……和602-64的第四LSB(即第二MSB)相對應的第四儲存元件中,並且關於第五儲存器封裝件PKG4的冗餘區訊息可以被儲存到與第一到第六十四儲存區602-1、……和602-64的第一MSB相對應的第五儲存元件中。如圖14中所圖示的,如果「0」、「0」、「1」、「1」和「0」的二進制數據相應地被儲存在第一儲存區602-1的儲存元件中,則在第二和第三儲存器封裝件PKG1和PKG2的單元陣列區之中的透過儲存體組位址「00」、儲存體位址「00」和單元陣列位址「00」所選擇的單元陣列區的冗餘區可以意指在修復過程中不再可用的不可用冗餘區,並且剩餘儲存器封裝件(即第一、第四和第五儲存器封裝件PKG0、PKG3和PKG4)的冗餘區可以意指具有在修復過程中可獲得的冗餘儲存單元的可用冗餘區。另外,如果「0」、「0」、「1」、「0」和「0」的二進制數據相應地被儲存在第六十四儲存區602-64的儲存元件中,則在第三儲存器封裝件PKG2的單元陣列區之中的透過儲存體組位址「11」、儲存體位址「11」和單元陣列位址「11」所選擇的單元陣列區的冗餘區可以意指在修復過程中不再可用的不可用冗餘區,並且剩餘儲存器封裝件(即第一、第二、第四和第五儲存器封裝件PKG0、PKG1、PKG3和PKG4)的冗餘區可以意指具有在修復過程中可獲得的冗餘儲存單元的可用冗餘區。
如果在步驟513處不存在具有不可用冗餘區的儲存器封裝件,則可以執行圖8的步驟517。如果在步驟513處存在具有不可用冗餘區的儲存器封裝件,則在儲存器封裝件中具有不可用冗餘區的單元陣列區中所包括的故障儲存單元的數目(fcn)可以被計算,並且該數目(fcn)可以與失效基準(FC)相比較(參見圖7的步驟514)。如果在步驟514處該數目(fcn)等於或大於失效基準(FC),則可以執行圖7的步驟515。如果在步驟514處該數目(fcn)小於失效基準(FC),則可以執行圖7的步驟516。可以使用被儲存在URC電路421的第一寄存器601中的故障分佈數據以及被儲存在URC電路421的第二寄存器602中的冗餘區訊息來執行步驟514,如圖15和16中所圖示的。被儲存在第一寄存器601中的故障分佈數據可以對應於關於儲存器封裝件PKG0~PKG4的每一個中具有不可用冗餘區的單元陣列區中所包括的故障儲存單元的數目(fcn)的訊息。被儲存在第二寄存器602中的冗餘區訊息可以對應於關於以下的訊息:儲存器封裝件PKG0~PKG4的每一個中的冗餘區是否在修復過程中可用。因而,可以首先判別在儲存器封裝件PKG0~PKG4中所包括的冗餘區中的每一個是否在修復過程中可用以執行步驟514。
圖15圖示了當透過內建修復分析(BIRA)操作來測試具有儲存體組位址「01」、儲存體位址「10」和單元陣列位址「10」的測試目標單元陣列區的時候的步驟514。在這樣的情況中,在由被儲存在第二寄存器602的第二十五儲存區602-25中的數據「1」所指示的第一和第二儲存器封裝件PKG0和PKG1中沒有可用冗餘區。相反,被包括在第三到第五儲存器封裝件PKG2、PKG3和PKG4中的冗餘區可以在修復過程中可用。接下來,具有不可用冗餘區的儲存器封裝件(即第一和第二儲存器封裝件PKG0和PKG1)中的所有故障儲存單元的總數目可以被計算。根據第一寄存器601,第一儲存器封裝件PKG0具有四個故障儲存單元(fcn=4),並且第二儲存器封裝件PKG1具有兩個故障儲存單元(fcn=2)。因而,第一和第二儲存器封裝件PKG0和PKG1中的故障儲存單元的總數目可以是六。在這樣的情況中,由於在第一和第二儲存器封裝件PKG0和PKG1中的故障儲存單元的總數目大於為四的失效基準(FC),所以可以執行圖7的步驟515。
因而,如果第一和第二儲存器封裝件PKG0和PKG1中的故障儲存單元的總數目大於為四的失效基準(FC),則可以執行步驟515以設置內建修復分析(BIRA)故障標誌(參見圖7的步驟515)。內建修復分析(BIRA)故障標誌可以具有邏輯「高」位準或邏輯「低」位準。具有不可用冗餘區的儲存器封裝件中的故障儲存單元的總數目大於失效基準(FC)的這一情況可以意指在測試目標單元陣列區中的故障儲存單元不能使用冗餘區來修復,並且也不能使用ECC電路404所執行的ECC操作來校正。在這樣的情況中,可能沒有必要繼續執行內建修復分析(BIRA)操作。因而,可以設置內建修復分析(BIRA)故障標誌來停止內建修復分析(BIRA)操作。在實施例中,如果具有不可用冗餘區的儲存器封裝件中的故障儲存單元的總數目大於失效基準(FC),則內建修復分析(BIRA)故障標誌可以被設置成具有邏輯「高」位準。也就是說,如果內建修復分析(BIRA)故障標誌被設置成具有邏輯「高」位準,則內建修復分析(BIRA)操作可以終止。
圖16圖示了當透過內建修復分析(BIRA)操作來測試具有儲存體組位址「00」、儲存體位址「00」和單元陣列位址「00」的測試目標單元陣列區的時候的步驟514。在這樣的情況中,在由被儲存在第二寄存器602的第一儲存區602-1中的數據「1」所指示的第二和第三儲存器封裝件PKG1和PKG2中沒有可用冗餘區。相反,被包括在第一、第四和第五儲存器封裝件PKG0、PKG3和PKG4中的冗餘區可以在修復過程中可用。接下來,具有不可用冗餘區的儲存器封裝件(即第二和第三儲存器封裝件PKG1和PKG2)中的所有故障儲存單元的總數目可以被計算。根據第一寄存器601,第二儲存器封裝件PKG1具有兩個故障儲存單元(fcn=2),並且第三儲存器封裝件PKG2具有一個故障儲存單元(fcn=1)。因而,第二和第三儲存器封裝件PKG1和PKG2中的故障儲存單元的總數目可以是三。在這樣的情況中,由於在第二和第三儲存器封裝件PKG1和PKG2中的故障儲存單元的總數目小於為四的失效基準(FC),所以可以執行圖7的步驟516。
如果在步驟514處在具有不可用冗餘區的儲存器封裝件中的故障儲存單元的總數目小於失效基準(FC),則經更新的失效基準(uFC)可以被計算(參見步驟516)。經更新的失效基準(uFC)可以透過如下來被計算:從失效基準(FC)中減去在具有不可用冗餘區的儲存器封裝件中的故障儲存單元的總數目。如圖16中所圖示的,由於具有不可用冗餘區的第二和第三儲存器封裝件PKG1和PKG2中的故障儲存單元的總數目是三,所以經更新的失效基準(uFC)可以透過如下來被計算:從四中減去三以得到一。這意味著在具有不可用冗餘區的第二和第三儲存器封裝件PKG1和PKG2中的三個故障儲存單元需要使用ECC電路404來被校正,因為所述三個故障儲存單元不能透過不可用冗餘區來被修復。因而,在這樣的情況中,在與失效基準「四」對應的四個位元之中的三個位元可以被指派給在具有不可用冗餘區的儲存器封裝件中的故障儲存單元(即三個故障儲存單元)的校正,並且僅僅剩餘的一個位元可以在後續步驟中被用作失效基準(FC)。
如果在步驟513處不存在具有不可用冗餘區的儲存器封裝件,或者由於在步驟514處在具有不可用冗餘區的儲存器封裝件中的故障儲存單元的總數目小於失效基準(FC)而在步驟516處計算經更新的失效基準(uFC),則RARFC電路423可以判別故障位址列位址是否存在於RARF 450中(參見圖8的步驟517)。故障位址列位址可以被定義為當前被測試的(包括故障儲存單元的)單元陣列區的位址列位址。因而,如果故障位址列位址被儲存在RARF 450中,則它意味著當前被測試的單元陣列區對應於修復目標單元陣列區。RARFC電路423可以驗證故障位址列位址是否存在於RARF 450中,並且可以將驗證結果傳輸到RA電路422。在實施例中,如果故障位址列位址存在於RARF 450中,則RARFC電路423可以將為「1」的數據傳輸到RA電路422,並且如果沒有故障位址列位址存在於RARF 450中,則RARFC電路423可以將為「0」的數據傳輸到RA電路422。
如圖17中所圖示的,RA電路422可以將從RARFC電路423輸出的驗證結果儲存到被包括在RA電路422中的第三寄存器603中。第三寄存器603可以具有多個儲存元件。在第三寄存器603中所包括的儲存元件的數目可以與儲存器封裝件PKG0~PKG4的數目相同。關於故障位址列位址是否存在於第一到第五儲存器封裝件PKG0~PKG4中的五個數據可以相應地被儲存在第三寄存器603的第一到第五儲存元件中。如圖17中所圖示的,如果「0」、「0」、「0」、「0」和「1」的數據相應地被儲存在第三寄存器603的儲存元件中,則它意味著僅第一儲存器封裝件PKG0的故障位址列位址存在於RARF 450中,並且第二到第五儲存器封裝件PKG1~PKG4的故障位址列位址不存在於RARF 450中。
如果在步驟517處故障位址列位址存在於RARF 450中,則在儲存器封裝件中具有不可用冗餘區的單元陣列區中所包括的故障儲存單元的數目(fcn)的總和(∑fcn)可以被計算,並且被儲存在URC電路421的第一寄存器601中的關於故障分佈數據的訊息可以被改變(參見圖8的步驟518)。因而,在被儲存在URC電路421的第一寄存器601中的故障分佈數據之中與存在於RARF 450中的故障位址列位址有關的儲存器封裝件(即第一儲存器封裝件PKG0)的故障分佈數據可以被重置為零。由於為「1」的數據被儲存在RA電路422的第三寄存器603的儲存元件之中與第一儲存器封裝件PKG0相對應的儲存元件中,所以被儲存在第一寄存器601的儲存元件之中的第四儲存區601-4(其被提供用來儲存第一儲存器封裝件PKG0中的故障儲存單元的數目(fcn=4))的LSB中的數據「1」可以被重置為零,如圖18中所圖示的。另外,被儲存在第一寄存器601中的數目(fcn)的總和(∑fcn)可以被更新。在本實施例中,由於被儲存在第一寄存器601中的數目(fcn)的總和(∑fcn)是八,並且第一儲存器封裝件PKG0中故障儲存單元的數目(fcn=4)被重置為零,所以故障儲存單元的數目(fcn)的經更新的總和(∑fcn)可以是四。因而,故障儲存單元的數目(fcn)的經更新的總和(∑fcn)可以透過如下來被計算:從所有儲存器封裝件PKG0~PKG4中的故障儲存單元的數目(fcn)的總和(∑fcn)中減去具有存在於RARF 450中的故障位址列位址的儲存器封裝件中的故障儲存單元的數目。
在計算了故障儲存單元的數目(fcn)的經更新的總和(∑fcn)之後,將故障儲存單元的數目(fcn)的經更新的總和(∑fcn)與經更新的失效基準(uFC)相比較(參見步驟519)。可以由RA電路422來執行步驟519。在步驟519處,根據在圖7的步驟513處是否存在具有不可用冗餘區的儲存器封裝件,故障儲存單元的數目(fcn)的經更新的總和(∑fcn)的比較目標可以不同。例如,如果在圖7的步驟513處不存在具有不可用冗餘區的儲存器封裝件,則在圖8的步驟519處可以將故障儲存單元的數目(fcn)的經更新的總和(∑fcn)與失效基準(FC)進行比較。相反,如果在圖7的步驟513處存在具有不可用冗餘區的儲存器封裝件,則在圖8的步驟519處可以將故障儲存單元的數目(fcn)的經更新的總和(∑fcn)與經更新的失效基準(uFC)進行比較。如果在步驟519處故障儲存單元的數目(fcn)的經更新的總和(∑fcn)等於或大於失效基準(FC)或經更新的失效基準(uFC),則可以執行圖8的步驟520。在步驟519處故障儲存單元的數目(fcn)的經更新的總和(∑fcn)小於失效基準(FC)或經更新的失效基準(uFC)的這一情況意指能夠使用ECC電路404所執行的ECC操作而被校正的故障儲存單元的數目大於要被修復的故障儲存單元的數目。因此,如果在步驟519處故障儲存單元的數目(fcn)的經更新的總和(∑fcn)小於失效基準(FC)或經更新的失效基準(uFC),則內建修復分析(BIRA)操作可以終止,因為沒有必要執行具有故障儲存單元的儲存器封裝件的修復過程。
如果在步驟517處沒有故障位址列位址存在於RARF 450中,或者在步驟519處故障儲存單元的數目(fcn)的經更新的總和(∑fcn)等於或大於失效基準(FC)或經更新的失效基準(uFC),則可以選擇修復目標儲存器封裝件(參見步驟520)。選擇修復目標儲存器封裝件的該步驟520可以在某個規則下被執行:所述規則用於最大化要使用ECC電路404所執行的ECC操作來被校正的儲存器封裝件的數目以及最小化要被修復的儲存器封裝件的數目。可以在某個規則下透過使用各種方法之一來選擇修復目標儲存器封裝件。將在下文中參考圖19中所圖示的流程圖來描述用於選擇修復目標儲存器封裝件的各種方法之一。根據用於選擇修復目標儲存器封裝件的以下描述,具有最大數目(fcn)的故障儲存單元(或最大經更新的數目(ufcn)的故障儲存單元)的儲存器封裝件可以被選為修復目標儲存器封裝件,並且於是可以從具有最小數目(fcn)的故障儲存單元的儲存器封裝件按故障儲存單元的數目(fcn)(或故障儲存單元的經更新的數目(ufcn))的次序來選擇具有故障儲存單元的其它儲存器封裝件以作為修復目標儲存器封裝件。
在用於選擇修復目標儲存器封裝件的步驟520的示例中,如果步驟517的比較結果是「N(否)」,則故障儲存單元的數目(fcn)可能不被改變,但是如果步驟517的比較結果是「Y(是)」,則所述數目(fcn)透過步驟518來改變。另外,失效基準(FC)可以由步驟516更新以提供經更新的失效基準(uFC),或者可能不被更新。如果在圖7的步驟513處不存在具有不可用冗餘區的儲存器封裝件(對應於步驟513的「N」),則在步驟520處,故障儲存單元的數目(fcn)與失效基準(FC)可以具有未經更新的值。相反,如果在步驟514處具有不可用冗餘區的單元陣列區中的故障儲存單元的數目(fcn)小於失效基準(FC)(對應於步驟514的「N」),並且在圖8的步驟517處沒有故障位址列位址存在於RARF 450中(對應於步驟517的「N」),則僅僅可以更新失效基準(FC)。因此,在這樣的情況中,經更新的失效基準(uFC)可以被應用於以下步驟,而不是失效基準(FC)。如果在步驟514處具有不可用冗餘區的單元陣列區中的故障儲存單元的數目(fcn)小於失效基準(FC)(對應於步驟514的「N」),並且在圖8的步驟517處故障位址列位址存在於RARF 450中(對應於步驟517的「Y」),則可以更新故障儲存單元的數目(fcn)與失效基準(FC)二者。因而,在這樣的情況中,故障儲存單元的經更新的數目(ufcn)和經更新的失效基準(uFC)可以被應用於以下步驟,而不是故障儲存單元的數目(fcn)和失效基準(FC)。可以結合在其中故障儲存單元的數目(fcn)和失效基準(FC)沒有被更新的示例來展開以下描述。
可以由RA電路422來執行用於選擇修復目標儲存器封裝件的步驟520。RA電路422可以存取到URC電路421的第一寄存器601。將在下文中參考結合圖20、21和22中所圖示的三個示例的圖19來描述用於選擇修復目標儲存器封裝件的方法。圖20圖示了與如下示例對應的第一寄存器601A,在所述示例中,第一儲存器封裝件PKG0具有四個故障儲存單元(fcn=4),第二和第三儲存器封裝件PKG1和PKG2中的每一個具有兩個故障儲存單元(fcn=2),第四儲存器封裝件PKG3具有一個故障儲存單元(fcn=1),並且第五儲存器封裝件PKG4具有三個故障儲存單元(fcn=3)。圖21圖示了與如下另一示例對應的第一寄存器601B,在所述另一示例中,第一儲存器封裝件PKG0具有四個故障儲存單元(fcn=4),第二儲存器封裝件PKG1具有兩個故障儲存單元(fcn=2),第三和第四儲存器封裝件PKG2和PKG3中的每一個具有一個故障儲存單元(fcn=1),並且第五儲存器封裝件PKG4沒有故障儲存單元(fcn=0)。圖22圖示了與又一示例對應的第一寄存器601C,在所述又一示例中,第一儲存器封裝件PKG0具有四個故障儲存單元(fcn=4),並且第二到第五儲存器封裝件PKG1~PKG4中的每一個具有一個故障儲存單元(fcn=1)。
如圖19中所圖示的,針對故障儲存單元的數目(fcn)中的每一個的邏輯「或」運算可以被執行以獲得修復目標儲存器封裝件的故障分佈數據(參見步驟520-1)。步驟520-1可以透過RA電路422存取到URC電路421的第一寄存器601來被實現。可以假定儲存器封裝件PKG0~PKG4的每一個中的故障儲存單元的最大可允許數目是「K」(其中「K」是自然數)。在這樣的情況中,修復目標儲存器封裝件的故障分佈數據可以透過如下來被表示:按從「K」到1的故障儲存單元的數目(fcn)的次序,將具有對應數目的故障儲存單元的儲存器封裝件的存在/不存在表述為「1」或「0」的邏輯位準。如果儲存器封裝件PKG0~PKG4的每一個中的故障儲存單元的最大可允許數目是四,如本實施例中所描述的,則可以用如下形式來提供修復目標儲存器封裝件的故障分佈數據:{具有四個故障儲存單元(fcn=4)的儲存器封裝件的存在/不存在,具有三個故障儲存單元(fcn=3)的儲存器封裝件的存在/不存在,具有兩個故障儲存單元(fcn=2)的儲存器封裝件的存在/不存在,具有一個故障儲存單元(fcn=1)的儲存器封裝件的存在/不存在}。
具有四個故障儲存單元(fcn=4)的儲存器封裝件的存在/不存在可以透過如下來被確定:執行邏輯「或」運算以用於將第一寄存器601的第四儲存區601-4的儲存元件中所儲存的所有值相加。具有三個故障儲存單元(fcn=3)的儲存器封裝件的存在/不存在可以透過如下來被確定:執行邏輯「或」運算以用於將第一寄存器601的第三儲存區601-3的儲存元件中所儲存的所有值相加。具有兩個故障儲存單元(fcn=2)的儲存器封裝件的存在/不存在可以透過如下來被確定:執行邏輯「或」運算以用於將第一寄存器601的第二儲存區601-2的儲存元件中所儲存的所有值相加。具有一個故障儲存單元(fcn=1)的儲存器封裝件的存在/不存在可以透過如下來被確定:執行邏輯「或」運算以用於將第一寄存器601的第一儲存區601-1的儲存元件中所儲存的所有值相加。因此,在圖20中所圖示的示例的情況中,修復目標儲存器封裝件的故障分佈數據可以被表示為{1,1,1,1}。這意味著具有四個故障儲存單元(fcn=4)、三個故障儲存單元(fcn=3)、兩個故障儲存單元(fcn=2)以及一個故障儲存單元(fcn=1)的所有儲存器封裝件都存在於儲存模組50中。在圖21中所圖示的示例的情況中,修復目標儲存器封裝件的故障分佈數據可以被表示為{1,0,1,1}。這意味著具有四個故障儲存單元(fcn=4)、兩個故障儲存單元(fcn=2)以及一個故障儲存單元(fcn=1)的所有儲存器封裝件都存在於儲存模組50中,並且沒有具有三個故障儲存單元(fcn=3)的儲存器封裝件存在於儲存模組50中。在圖22中所圖示的示例的情況中,修復目標儲存器封裝件的故障分佈數據可以被表示為{1,0,0,1}。這意味著具有四個故障儲存單元(fcn=4)以及一個故障儲存單元(fcn=1)的儲存器封裝件存在於儲存模組50中,並且沒有具有兩個故障儲存單元(fcn=2)和三個故障儲存單元(fcn=3)的儲存器封裝件存在於儲存模組50中。
接下來,故障儲存單元的最大數目(fcn_max)可以與失效基準(FC)相比較以判別故障儲存單元的最大數目(fcn_max)是否小於失效基準(FC)(參見步驟520-2)。這是因為具有最大數目(fcn_max)的故障儲存單元的儲存器封裝件被選為修復目標儲存器封裝件的可能性最高。如果在步驟520-2處故障儲存單元的最大數目(fcn_max)等於或大於失效基準(FC)(對應於步驟520-2的「Y」),則具有最大數目(fcn_max)的故障儲存單元的所有儲存器封裝件可以被選為修復目標儲存器封裝件,因為具有最大數目(fcn_max)的故障儲存單元的儲存器封裝件不能透過ECC電路404所執行的ECC操作來被校正(參見步驟520-3)。在圖20、21和22中所圖示的示例中,故障儲存單元的最大數目(fcn_max)是四,並且值四等於失效基準(FC)。因而,具有四個故障儲存單元(fcn=4)的第一儲存器封裝件PKG0可以被選為修復目標儲存器封裝件。
如果在步驟520-2處故障儲存單元的最大數目(fcn_max)小於失效基準(FC)(對應於步驟520-2的「N」),或在執行了步驟520-3之後,參數「X」可以被設置成一(參見步驟520-4)。參數「X」表示故障儲存單元的數目。因而,如果參數「X」是一,則它意味著故障儲存單元的數目是一。也就是說,在考慮到故障儲存單元的最大數目(fcn_max)而選擇了修復目標儲存器封裝件之後,另外可以在考慮故障儲存單元的最小數據(fcn_min)(即fcn=1)的情況下選擇另一修復目標儲存器封裝件。接下來,可以判別是否存在具有與參數「fcn_x」對應的故障儲存單元的數目的儲存器封裝件(參見步驟520-5)。由於在步驟520-4處將參數「x」設置成一,所以可以在步驟520-5處判別是否存在具有一個故障儲存單元(即「fcn_1」)的儲存器封裝件。如果不存在具有一個故障儲存單元(即「fcn_1」)的儲存器封裝件(對應於步驟520-5的「N」),則可以執行步驟520-9。如果存在具有一個故障儲存單元(即「fcn_1」)的儲存器封裝件(對應於步驟520-5的「Y」),則將故障儲存單元的數目(fcn_1)的總和(∑fcn_1)與失效基準(FC)相比較,以判別故障儲存單元的數目(fcn_1)的總和(∑fcn_1)是否小於失效基準(FC)(參見步驟520-6)。
如果在步驟520-6處故障儲存單元的數目(fcn_1)的總和(∑fcn_1)小於失效基準(FC)(對應於步驟520-6的「N」),則可以從修復目標儲存器封裝件中排除具有一個故障儲存單元(fcn_1)的儲存器封裝件(參見步驟520-7)。因而,具有一個故障儲存單元(fcn_1)的儲存器封裝件可能不使用冗餘區來被修復,而是使用ECC電路404所執行的ECC操作來被校正。在圖20的示例中,由於故障儲存單元的數目(fcn_1)的總和(∑fcn_1)是一,所以故障儲存單元的數目(fcn_1)的總和(∑fcn_1)可以小於為四的失效基準(FC)。因而,具有一個故障儲存單元(fcn_1)的第四儲存器封裝件PKG3可以從修復目標儲存器封裝件中被排除。類似地,在圖21的示例中,由於故障儲存單元的數目(fcn_1)的總和(∑fcn_1)是二,所以故障儲存單元的數目(fcn_1)的總和(∑fcn_1)可以小於為四的失效基準(FC)。因而,具有一個故障儲存單元(fcn=1)的第三儲存器封裝件PKG2和第四儲存器封裝件PKG3可以從修復目標儲存器封裝件中被排除。
如果在步驟520-6處故障儲存單元的數目(fcn_1)的總和(∑fcn_1)等於或大於失效基準(FC)(對應於步驟520-6的「Y」),則可以從修復目標儲存器封裝件中排除在具有一個故障儲存單元(fcn_1)的儲存器封裝件之中的與小於失效基準(FC)的值相同的數目的儲存器封裝件,並且具有一個故障儲存單元(fcn_1)的剩餘儲存器封裝件可以被選為修復目標儲存器封裝件(參見步驟520-8)。因而,從修復目標儲存器封裝件中被排除的具有一個故障儲存單元(fcn_1)的儲存器封裝件可以在不使用冗餘區的情況下透過使用ECC電路404所執行的ECC操作來被校正。在圖22的示例中,由於故障儲存單元的數目(fcn_1)的總和(∑fcn_1)是四,所以故障儲存單元的數目(fcn_1)的總和(∑fcn_1)可以等於為四的失效基準(FC)。因而,在這樣的情況中,可以從修復目標儲存器封裝件中排除第二到第五儲存器封裝件PKG1~PKG4中的三個,並且第二到第五儲存器封裝件PKG1~PKG4中剩餘的一個儲存器封裝件可以被選為修復目標儲存器封裝件。在具有相同數目的故障儲存單元的儲存器封裝件中的至少一個被選為修復目標儲存器封裝件的情況中,所述至少一個儲存器封裝件可以在某個規則下被選為修復目標儲存器封裝件。例如,根據某個規則,可以首先從修復目標儲存器封裝件中排除與具有最低權重的儲存元件相對應的儲存器封裝件。在圖22的示例中,可以從修復目標儲存器封裝件中排除在具有一個故障儲存單元(fcn_1)的儲存器封裝件之中的第二到第四儲存器封裝件PKG1、PKG2和PKG3,並且第五儲存器封裝件PKG4可以被選為修復目標儲存器封裝件。
在執行了步驟520-7或步驟520-8之後,失效基準(FC)可以被設置為具有在從當前失效基準(FC)中減去從修復目標儲存器封裝件中所排除的儲存器封裝件的故障儲存單元的數目(fcn_1)的總和(∑fcn_1)之後剩餘的值(參見步驟520-9)。在圖20的示例中,在步驟520-7之後,從修復目標儲存器封裝件中排除的儲存器封裝件的故障儲存單元的數目(fcn_1)的總和(∑fcn_1)可以是一。因而,失效基準(FC)可以被設置為三,其透過從為四的當前失效基準(FC)中減去一而獲得。類似地,在圖21的示例中,在步驟520-7之後,從修復目標儲存器封裝件中排除的儲存器封裝件的故障儲存單元的數目(fcn_1)的總和(∑fcn_1)可以是二。因而,失效基準(FC)可以被設置為二,其透過從為四的當前失效基準(FC)中減去二而獲得。在圖22的示例中,在步驟520-8之後,從修復目標儲存器封裝件中排除的儲存器封裝件的故障儲存單元的數目(fcn_1)的總和(∑fcn_1)可以是三。因而,失效基準(FC)可以被設置為一,其透過從為四的當前失效基準(FC)中減去三而獲得。在執行了步驟520-9之後,參數「X」可以被設置為「(X+1)」(參見步驟520-10)。因而,於是可以驗證具有兩個故障儲存單元(fcn_2)的儲存器封裝件以選擇修復目標儲存器封裝件。接下來,判別參數「X」是否具有最大值(參見步驟520-11)。參數「X」的最大值意指每個儲存器封裝件中的故障儲存單元的最大可允許數目(fcn_max)。如果在步驟520-11處參數「X」具有小於最大值的二,則可以再次迭代地執行步驟520-5到520-10。如果在步驟520-11處參數「X」具有最大值(即最大可允許數(fcn_max)),則用於選擇修復目標儲存器封裝件的操作可以終止,因為首先執行針對最大可允許數目(fcn_max)的情況的用於選擇修復目標儲存器封裝件的操作。
在圖20的示例中,如果參數「X」具有二,則儲存器封裝件的故障儲存單元的數目(fcn_2)的總和(∑fcn_2)可以是四,其大於新設置的為二的失效基準(FC)(參見步驟520-5和520-6)。因而,可以執行步驟520-8。由於在步驟520-8處不存在其故障儲存單元的數目小於為二的失效基準(FC)的儲存器封裝件,所以第二儲存器封裝件PKG1可以被選為修復目標儲存器封裝件。在圖21的示例中,如果參數「X」具有二,則儲存器封裝件的故障儲存單元的數目(fcn_2)的總和(∑fcn_2)可以是二,其等於新設置的為二的失效基準(FC)(參見步驟520-5和520-6)。因而,可以執行步驟520-8。在步驟520-8處,與具有等於為2的失效基準(FC)的兩個故障儲存單元(fcn_2)的儲存元件相對應的第二儲存器封裝件PKG1可以被選為修復目標儲存器封裝件。在這樣的情況中,從修復目標儲存器封裝件中排除的儲存器封裝件的故障儲存單元的數目的總和(∑fcn_2)可以是零。因此,在步驟520-9處,失效基準(FC)仍可以維持為二的值。
在執行了上述圖8的步驟520之後,可以判別修復目標儲存器封裝件中的冗餘區是否是可用冗餘區(參見圖9的步驟521)。可以由RARFC電路423來執行步驟521。步驟521的結果可以取決於RARF 450是否具有能夠儲存修復目標儲存器封裝件中冗餘區的位址的儲存空間。例如,RARFC電路423可以從RA電路422接收關於被選為修復目標儲存器封裝件的儲存器封裝件的訊息。另外,可以驗證RARF 450是否具有能夠儲存修復目標儲存器封裝件中冗餘區的位址的儲存空間。如果在步驟521處在RARF 450中沒有能夠儲存修復目標儲存器封裝件中的任一個中的冗餘區的位址的儲存空間(對應於步驟521的「N」),則BIST重試標誌信號可以被設置以再次執行內建自測(BIST)操作(參見圖9的步驟523)。可替換地,如果在後續步驟中透過預確定的時程而執行了內建自測(BIST)操作,則可以省略圖9的步驟523。如果在步驟521處能夠儲存修復目標儲存器封裝件中的冗餘區的位址的儲存空間在RARF 450中(對應於步驟521的「Y」),則RARFC電路423可以將修復目標儲存器封裝件中的冗餘區的位址儲存到RARF 450中(參見步驟522)。
如在本文中關於參數所使用的詞語「預確定的」(諸如預確定的時程)意指在過程或演算法中使用參數之前確定針對參數的值。對於一些實施例,在過程或演算法開始之前確定針對參數的值。在其它實施例中,在過程或演算法期間、但是在過程或演算法中使用參數之前確定針對參數的值。
在圖20的示例中,如果上述測試操作終止,則可以透過使用被設置在第一、第五和第三儲存器封裝件PKG0、PKG4和PKG2中的冗餘區來執行針對以下各項的修復過程:具有四個故障儲存單元(fcn4)的第一儲存器封裝件PKG0、具有三個故障儲存單元(fcn3)的第五儲存器封裝件PKG4、以及具有兩個故障儲存單元(fcn2)的第三儲存器封裝件PKG2。可以從修復目標儲存器封裝件中排除具有兩個故障儲存單元(fcn2)的第二儲存器封裝件PKG1和具有一個故障儲存單元(fcn1)的第四儲存器封裝件PKG3。也就是說,具有兩個故障儲存單元(fcn2)的第二儲存器封裝件PKG1和具有一個故障儲存單元(fcn1)的第四儲存器封裝件PKG3的錯誤數據可以透過使用ECC操作來被校正。在圖21的示例中,如果上述測試操作終止,則可以透過使用被設置在第一和第二儲存器封裝件PKG0和PKG1中的冗餘區來執行針對以下各項的修復過程:具有四個故障儲存單元(fcn4)的第一儲存器封裝件PKG0、以及具有兩個故障儲存單元(fcn2)的第二儲存器封裝件PKG1。可以從修復目標儲存器封裝件中排除具有一個故障儲存單元(fcn1)的第三和第四儲存器封裝件PKG2和PKG3。也就是說,具有一個故障儲存單元(fcn1)的第三和第四儲存器封裝件PKG2和PKG3的錯誤數據可以透過使用ECC操作來被校正。在圖22的示例中,如果上述測試操作終止,則可以透過使用被設置在第一儲存器封裝件PKG0中的冗餘區來執行針對以下的修復過程:具有四個故障儲存單元(fcn4)的第一儲存器封裝件PKG0。另外,還可以透過使用被設置在第五儲存器封裝件PKG4中的冗餘區來修復具有一個故障儲存單元(fcn1)的第五儲存器封裝件PKG4。可以從修復目標儲存器封裝件中排除具有一個故障儲存單元(fcn1)的第二、第三和第四儲存器封裝件PKG1、PKG2和PKG3。也就是說,具有一個故障儲存單元(fcn1)的第二、第三和第四儲存器封裝件PKG1、PKG2和PKG3的錯誤數據可以透過使用ECC操作來被校正。
已經在以上為了說明性目的而公開了本公開內容的實施例。本領域普通技術人員將領會到在不偏離如在所附申請專利範圍中所公開的本公開內容的範圍和精神的情況下,各種修改、添加和置換是可能的。
10‧‧‧儲存模組
20‧‧‧主機
30‧‧‧儲存介質
50‧‧‧儲存模組
100‧‧‧儲存器封裝件
110-1~110-N‧‧‧第一到第N儲存晶片
200‧‧‧數據緩衝器
300‧‧‧接頭片
400‧‧‧模組控制器
401-1‧‧‧前物理層
401-2‧‧‧後物理層
402‧‧‧命令處理電路
403‧‧‧測試電路
404‧‧‧錯誤校正碼(ECC)電路
405‧‧‧單向多工器
406‧‧‧雙向多工器
410‧‧‧內建自測(BIST)電路
411‧‧‧命令生成器
412‧‧‧位址生成器
413‧‧‧數據生成器
414‧‧‧數據比較器
420‧‧‧內建修復分析(BIRA)電路
421‧‧‧未修復控制(URC)電路
422‧‧‧修復分析(RA)電路
423‧‧‧修復位址寄存器檔案控制(RARFC)電路
430‧‧‧測試模式(TM)電路
440‧‧‧內建自修復(BISR)電路
450‧‧‧修復位址寄存器檔案(RARF)
601‧‧‧第一寄存器
602‧‧‧第二寄存器
602-1~602-64‧‧‧第一到第六十四儲存區
603‧‧‧第三寄存器
BANK-0~BANK-3‧‧‧第一到第四儲存體
BG-0~BG-3‧‧‧第一到第四儲存體組
圖1是一方塊圖,其圖示了根據本公開內容的實施例的儲存模組的示例。
圖2是一方塊圖,其圖示了在圖1的儲存模組中所包括的儲存器封裝件的配置。
圖3是一示意性視圖,其圖示了在圖2的儲存器封裝件中所包括的儲存體的配置。
圖4是一示意性視圖,其圖示了在圖3的儲存體中所包括的單元陣列區的配置。
圖5是一方塊圖,其圖示了在圖1的儲存模組中所包括的模組控制器的配置。
圖6是一方塊圖,其圖示了根據本公開內容的實施例的測試電路的示例。
圖7至9是流程圖,其圖示了根據本公開內容的實施例的用於儲存裝置的測試電路的操作。
圖10是一方塊圖,其圖示了根據本公開內容的實施例的在對用於儲存裝置的測試電路的操作進行描述中所使用的儲存模組。
圖11是一表格,其圖示了根據本公開內容的實施例的在用於儲存裝置的測試電路的操作期間從內建自測(BIST)電路被傳輸到內建修復分析(BIRA)電路的故障訊息。
圖12圖示了在圖11中所圖示的故障訊息之中的位址列位址和封裝故障訊息的二進制數據的配置。
圖13圖示了根據本公開內容的實施例的在用於儲存裝置的測試電路的操作期間被儲存在內建修復分析(BIRA)電路的第一寄存器中的故障分佈數據的示例。
圖14圖示了根據本公開內容的實施例的在用於儲存裝置的測試電路的操作期間被儲存在內建修復分析(BIRA)電路的第二寄存器中的冗餘區訊息的示例。
圖15圖示了根據本公開內容的實施例的在用於儲存裝置的測試電路的操作期間用於比較第一寄存器中的訊息與第二寄存器中的訊息以便在對修復目標儲存器封裝件進行選擇的過程中反映冗餘區訊息的步驟的示例。
圖16圖示了根據本公開內容的實施例的在用於儲存裝置的測試電路的操作期間用於比較第一寄存器中的訊息與第二寄存器中的訊息以便在對修復目標儲存器封裝件進行選擇的過程中反映冗餘區訊息的步驟的另一示例。
圖17圖示了根據本公開內容的實施例的內建修復分析(BIRA)電路的第三寄存器,在其中在用於儲存裝置的測試電路的操作期間儲存了要被修復的冗餘區的位址。
圖18圖示了根據本公開內容的實施例的在用於儲存裝置的測試電路的操作期間用於比較第一寄存器中的訊息與第三寄存器中的訊息以便在對修復目標儲存器封裝件進行選擇的過程中反映冗餘區訊息的步驟的示例。
圖19是一流程圖,其圖示了根據本公開內容的實施例的在用於儲存裝置的測試電路的操作期間用於選擇修復目標儲存器封裝件的步驟的示例。
圖20圖示了在根據實施例的測試電路的操作被執行的時候在選擇了修復目標儲存器封裝件之後被包括在內建修復分析(BIRA)電路中的第一寄存器的示例。
圖21圖示了在根據實施例的測試電路的操作被執行的時候在選擇了修復目標儲存器封裝件之後被包括在內建修復分析(BIRA)電路中的第一寄存器的另一示例。
圖22圖示了在根據實施例的測試電路的操作被執行的時候在選擇了修復目標儲存器封裝件之後被包括在內建修復分析(BIRA)電路中的第一寄存器的又一示例。

Claims (29)

  1. 一種測試電路,包括: 內建自測BIST電路,其被配置成對多個儲存器封裝件執行測試操作,以生成故障訊息;以及 內建修復分析BIRA電路,其被配置成從所述BIST電路接收所述故障訊息,以將所述多個儲存器封裝件中的至少一個選擇作為修復目標儲存器封裝件, 其中,所述修復目標儲存器封裝件是透過考慮錯誤校正碼ECC電路的錯誤校正能力以及被包括在所述多個儲存器封裝件中的每一個中的冗餘區的可用性來選擇的。
  2. 如請求項1所述的測試電路,其中,如果在具有故障儲存單元的儲存器封裝件之中沒有可用冗餘區的儲存器封裝件中的所述故障儲存單元的數目的總和等於或大於失效基準值,則所述內建修復分析BIRA電路終止所述測試操作。
  3. 如請求項2所述的測試電路,其中,所述失效基準值被設置為等於或小於所述錯誤校正能力的自然數。
  4. 如請求項3所述的測試電路,其中,如果在具有所述故障儲存單元的儲存器封裝件中不存在沒有可用冗餘區的儲存器封裝件,並且在具有所述故障儲存單元的儲存器封裝件中不存在要被修復的儲存器封裝件,則所述內建修復分析BIRA電路執行選擇所述修復目標儲存器封裝件的操作。
  5. 如請求項4所述的測試電路,其中,所述內建修復分析BIRA電路將具有比所述失效基準值更大的數目的所述故障儲存單元的所有儲存器封裝件,選擇作為所述修復目標儲存器封裝件。
  6. 如請求項5所述的測試電路, 其中,所述內建修復分析BIRA電路從所述修復目標儲存器封裝件中排除一些儲存器封裝件; 其中,所排除的儲存器封裝件是從具有所述故障儲存單元的儲存器封裝件中的具有的所述故障儲存單元的數目等於或小於所述失效基準值的儲存器封裝件之中的具有最少故障儲存單元的儲存器封裝件中,按所述故障儲存單元的數目的次序選擇的; 以及 其中,從所述修復目標儲存器封裝件中排除的儲存器封裝件中的所述故障儲存單元的數目的總和等於或小於所述失效基準值。
  7. 如請求項3所述的測試電路, 其中,如果在具有所述故障儲存單元的儲存器封裝件中不存在沒有可用冗餘區的儲存器封裝件,並且在具有所述故障儲存單元的儲存器封裝件中存在要被修復的儲存器封裝件,則所述內建修復分析BIRA電路透過如下操作來計算所述故障儲存單元的數目的經更新的總和:從具有所述故障儲存單元的儲存器封裝件中的所述故障儲存單元的數目的總和中,減去所述要被修復的儲存器封裝件中的所述故障儲存單元的數目的總和; 其中,如果所述故障儲存單元的數目的所述經更新的總和小於所述失效基準值,則所述內建修復分析BIRA電路終止所述測試操作;以及 其中,如果所述故障儲存單元的數目的所述經更新的總和等於或大於所述失效基準值,則所述內建修復分析BIRA電路執行選擇所述修復目標儲存器封裝件的操作。
  8. 如請求項7所述的測試電路,其中,所述內建修復分析BIRA電路在從具有所述故障儲存單元的儲存器封裝件中排除了要被修復的儲存器封裝件之後剩餘的儲存器封裝件之中,選擇具有比所述失效基準值更大的數目的所述故障儲存單元的所有儲存器封裝件,來作為所述修復目標儲存器封裝件。
  9. 如請求項8所述的測試電路, 其中,所述內建修復分析BIRA電路從所述修復目標儲存器封裝件中排除一些儲存器封裝件; 其中,所排除的儲存器封裝件是從在從具有所述故障儲存單元的儲存器封裝件中排除了要被修復的儲存器封裝件之後剩餘的儲存器封裝件之中的具有最少故障儲存單元的儲存器封裝件中,按所述故障儲存單元的數目的次序選擇的;以及 其中,從所述修復目標儲存器封裝件中排除的儲存器封裝件中的所述故障儲存單元的數目的總和等於或小於所述失效基準值。
  10. 如請求項3所述的測試電路,其中,如果在具有所述故障儲存單元的儲存器封裝件之中沒有可用冗餘區的儲存器封裝件中的所述故障儲存單元的數目的總和小於所述失效基準值,則所述內建修復分析BIRA電路計算經更新的失效基準值,所述經更新的失效基準值是透過從所述失效基準值中減去沒有可用冗餘區的儲存器封裝件中的所述故障儲存單元的數目的所述總和而獲得的。
  11. 如請求項10所述的測試電路,其中,如果在具有所述故障儲存單元的儲存器封裝件中不存在要被修復的儲存器封裝件,則所述內建修復分析BIRA電路執行選擇所述修復目標儲存器封裝件的操作。
  12. 如請求項11所述的測試電路,其中,所述內建修復分析BIRA電路將具有比所述經更新的失效基準值更大的數目的所述故障儲存單元的所有儲存器封裝件,選擇作為所述修復目標儲存器封裝件。
  13. 如請求項12所述的測試電路, 其中,所述內建修復分析BIRA電路從所述修復目標儲存器封裝件中排除一些儲存器封裝件; 其中,所排除的儲存器封裝件是從具有所述故障儲存單元的儲存器封裝件中的具有的所述故障儲存單元的數目等於或小於所述經更新的失效基準值的儲存器封裝件之中的具有最少故障儲存單元的儲存器封裝件中,按所述故障儲存單元的數目的次序選擇的;以及 其中,從所述修復目標儲存器封裝件中排除的儲存器封裝件中的所述故障儲存單元的數目的總和等於或小於所述經更新的失效基準值。
  14. 如請求項10所述的測試電路, 其中,如果在具有所述故障儲存單元的儲存器封裝件中存在要被修復的儲存器封裝件,則所述內建修復分析BIRA電路透過如下操作來計算所述故障儲存單元的數目的經更新的總和:從具有所述故障儲存單元的儲存器封裝件中的所述故障儲存單元的數目的總和中,減去所述要被修復的儲存器封裝件中的所述故障儲存單元的數目的總和; 其中,如果所述故障儲存單元的數目的所述經更新的總和小於所述經更新的失效基準值,則所述內建修復分析BIRA電路終止所述測試操作; 以及 其中,如果所述故障儲存單元的數目的所述經更新的總和等於或大於所述經更新的失效基準值,則所述內建修復分析BIRA電路執行選擇所述修復目標儲存器封裝件的操作。
  15. 如請求項14所述的測試電路,其中,所述內建修復分析BIRA電路從在具有所述故障儲存單元的儲存器封裝件中排除了要被修復的儲存器封裝件之後剩餘的儲存器封裝件之中,選擇具有比所述經更新的失效基準值更大的數目的所述故障儲存單元的所有儲存器封裝件,來作為所述修復目標儲存器封裝件。
  16. 如請求項15所述的測試電路, 其中,所述內建修復分析BIRA電路從所述修復目標儲存器封裝件中排除一些儲存器封裝件; 其中,所排除的儲存器封裝件是從在從具有所述故障儲存單元的儲存器封裝件中排除了要被修復的儲存器封裝件之後剩餘的儲存器封裝件中的具有的所述故障儲存單元的數目等於或小於所述經更新的失效基準值的儲存器封裝件之中的具有最少故障儲存單元的儲存器封裝件中,按所述故障儲存單元的數目的次序選擇的;以及 其中,從所述修復目標儲存器封裝件中排除的儲存器封裝件中的所述故障儲存單元的數目的總和等於或小於所述經更新的失效基準值。
  17. 一種儲存模組,包括: 多個儲存器封裝件;以及 模組控制器,其被配置成控制所述多個儲存器封裝件的操作, 其中,所述模組控制器包括錯誤校正碼ECC電路和測試電路, 以及 其中,所述測試電路包括: 內建自測BIST電路,其被配置成對所述多個儲存器封裝件執行測試操作,以生成故障訊息;以及 內建修復分析BIRA電路,其被配置成從所述BIST電路接收所述故障訊息,以將所述多個儲存器封裝件中的至少一個選擇作為修復目標儲存器封裝件, 其中,所述修復目標儲存器封裝件是透過考慮所述錯誤校正碼ECC電路的錯誤校正能力以及被包括在所述多個儲存器封裝件中每一個中的冗餘區的可用性來選擇的。
  18. 如請求項17所述的儲存模組,其中,所述內建修復分析BIRA電路包括: 未修復控制URC電路,其被配置成分析所述故障訊息以根據在具有故障儲存單元的儲存器封裝件中是否存在沒有可用冗餘區的儲存器封裝件,來確定內建修復分析BIRA操作的執行或不執行; 修復位址寄存器檔案RARF,其被配置成儲存所述儲存器封裝件中的每一個的故障位址列位址; 修復分析RA電路,其被配置成根據具有所述故障儲存單元的儲存器封裝件之中的要被修復的儲存器封裝件的冗餘區的位址是否被儲存在所述修復位址寄存器檔案RARF中,而終止所述內建修復分析BIRA操作或選擇所述修復目標儲存器封裝件;以及 修復位址寄存器檔案控制RARFC電路,其被配置成將被儲存在所述修復位址寄存器檔案RARF中的位址傳輸到所述修復分析RA電路。
  19. 如請求項18所述的儲存模組,其中所述未修復控制URC電路包括: 第一寄存器,其被配置成儲存關於具有所述故障儲存單元的儲存器封裝件中的每一個中的所述故障儲存單元的數目的訊息;以及 第二寄存器,其被配置成儲存關於具有所述故障儲存單元的儲存器封裝件中的每一個中的所述冗餘區的可用性的訊息。
  20. 如請求項19所述的儲存模組,還包括測試模式TM電路,其被配置成將關於所述冗餘區的可用性的訊息傳輸到所述未修復控制URC電路。
  21. 如請求項19所述的儲存模組,其中,所述未修復控制URC電路比較被儲存在所述第一寄存器中的訊息與被儲存在所述第二寄存器中的訊息,以透過如下操作來計算經更新的失效基準值:如果在具有所述故障儲存單元的儲存器封裝件中不存在沒有可用冗餘區的儲存器封裝件或沒有可用冗餘區的儲存器封裝件中的所述故障儲存單元的數目的總和小於失效基準值,則從所述失效基準值中減去沒有可用冗餘區的儲存器封裝件中的所述故障儲存單元的數目的總和。
  22. 如請求項21所述的儲存模組,其中,所述失效基準值被設置為等於或小於所述錯誤校正能力的自然數。
  23. 如請求項22所述的儲存模組,其中,所述未修復控制URC電路比較被儲存在所述第一寄存器中的訊息與被儲存在所述第二寄存器中的訊息,如果沒有可用冗餘區的儲存器封裝件中的故障儲存單元的數目的總和等於或大於所述失效基準值,則終止所述測試操作。
  24. 如請求項22所述的儲存模組,其中,所述修復位址寄存器檔案控制RARFC電路將被儲存在所述修復位址寄存器檔案RARF中的關於具有所述故障儲存單元的儲存器封裝件的故障位址列位址的訊息,傳輸到所述修復分析RA電路。
  25. 如請求項24所述的儲存模組,其中,所述修復分析RA電路包括第三寄存器,所述第三寄存器儲存關於從所述修復位址寄存器檔案控制RARFC電路所輸出的所述故障位址列位址的訊息。
  26. 如請求項25所述的儲存模組, 其中,所述修復分析RA電路比較被儲存在所述第一寄存器中的訊息與被儲存在所述第三寄存器中的訊息中的訊息以透過如下操作來計算所述故障儲存單元的數目的經更新的總和:從具有所述故障儲存單元的儲存器封裝件中的所述故障儲存單元的數目的總和中,減去要被修復的儲存器封裝件中的所述故障儲存單元的數目的總和; 其中,如果所述故障儲存單元的數目的所述經更新的總和小於所述失效基準值或所述經更新的失效基準值,則所述修復分析RA電路終止所述測試操作;以及 其中,如果所述故障儲存單元的數目的所述經更新的總和等於或大於所述失效基準值或所述經更新的失效基準值,則所述修復分析RA電路執行選擇所述修復目標儲存器封裝件的操作。
  27. 如請求項26所述的儲存模組,其中,所述修復分析RA電路在從具有所述故障儲存單元的儲存器封裝件中排除了要被修復的儲存器封裝件之後剩餘的儲存器封裝件之中,選擇具有比所述失效基準值或所述經更新的失效基準值更大的數目的所述故障儲存單元的所有儲存器封裝件,來作為所述修復目標儲存器封裝件。
  28. 如請求項27所述的儲存模組, 其中,所述修復分析RA電路從所述修復目標儲存器封裝件中排除一些儲存器封裝件; 其中,所排除的儲存器封裝件是從在從具有所述故障儲存單元的儲存器封裝件中排除了要被修復的儲存器封裝件之後剩餘的儲存器封裝件中的具有的所述故障儲存單元的數目等於或小於所述經更新的失效基準值的儲存器封裝件之中的具有最少故障儲存單元的儲存器封裝件中,按所述故障儲存單元的數目的次序選擇的; 以及 其中,從所述修復目標儲存器封裝件中排除的儲存器封裝件中的所述故障儲存單元的數目的總和等於或小於所述經更新的失效基準值。
  29. 如請求項28所述的儲存模組,其中,所述修復位址寄存器檔案控制RARFC電路被配置成如果在所述修復位址寄存器檔案RARF中存在能夠儲存所述修復目標儲存器封裝件的冗餘區的位址的儲存空間則將所述修復目標儲存器封裝件中的所述冗餘區的位址儲存到所述修復位址寄存器檔案RARF中,並且被配置成如果在所述修復位址寄存器檔案RARF中沒有能夠儲存所述修復目標儲存器封裝件的冗餘區的位址的儲存空間則終止所述測試操作。
TW107142290A 2018-04-18 2018-11-27 用於儲存裝置的模組控制器和包括該模組控制器的儲存模組 TWI787404B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2018-0045080 2018-04-18
KR1020180045080A KR102573833B1 (ko) 2018-04-18 2018-04-18 메모리에 대한 테스트 회로 및 이를 포함하는 메모리 모듈

Publications (2)

Publication Number Publication Date
TW201944425A true TW201944425A (zh) 2019-11-16
TWI787404B TWI787404B (zh) 2022-12-21

Family

ID=68238220

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107142290A TWI787404B (zh) 2018-04-18 2018-11-27 用於儲存裝置的模組控制器和包括該模組控制器的儲存模組

Country Status (4)

Country Link
US (1) US10861577B2 (zh)
KR (1) KR102573833B1 (zh)
CN (1) CN110390993B (zh)
TW (1) TWI787404B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102020134945A1 (de) * 2020-02-27 2021-09-02 Taiwan Semiconductor Manufacturing Co., Ltd. Dynamische fehlerüberwachung und -reparatur
KR20210147523A (ko) 2020-05-29 2021-12-07 에스케이하이닉스 주식회사 리던던시 분석 회로 및 이를 포함하는 메모리 시스템
US11783884B2 (en) 2020-12-10 2023-10-10 SK Hynix Inc. Semiconductor memory device and memory system including the same
US11749371B2 (en) 2020-12-14 2023-09-05 SK Hynix Inc. Memory system including memory device performing target refresh
EP4084005B1 (en) * 2021-03-19 2023-06-07 Changxin Memory Technologies, Inc. Memory device repair method and system
TWI794967B (zh) 2021-09-10 2023-03-01 臺灣發展軟體科技股份有限公司 資料處理電路及故障修補方法
US12026050B2 (en) * 2022-05-16 2024-07-02 Innosilicon Microelectronics (Wuhan) Co., Ltd. DDR DIMM, memory system and operation method thereof

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5655113A (en) * 1994-07-05 1997-08-05 Monolithic System Technology, Inc. Resynchronization circuit for a memory system and method of operating same
US6304989B1 (en) * 1999-07-21 2001-10-16 Credence Systems Corporation Built-in spare row and column replacement analysis system for embedded memories
KR100374636B1 (ko) * 2000-10-18 2003-03-04 삼성전자주식회사 결함 테스트 및 분석 회로를 구비하는 반도체 장치 및 결함 분석 방법
KR20020068768A (ko) * 2001-02-22 2002-08-28 삼성전자 주식회사 내장 메모리를 위한 빌트 인 셀프 리페어 회로를 구비하는반도체 장치
TWI252397B (en) * 2004-09-17 2006-04-01 Ind Tech Res Inst Method and apparatus of built-in self-diagnosis and repair in a memory with syndrome identification
US7536614B1 (en) * 2006-06-28 2009-05-19 Integrated Device Technology, Inc Built-in-redundancy analysis using RAM
US7757135B2 (en) * 2006-09-11 2010-07-13 Mentor Graphics Corporation Method and apparatus for storing and distributing memory repair information
JP2009163790A (ja) * 2007-12-28 2009-07-23 Toshiba Corp オンチップ不良情報解析装置及びオンチップ不良情報解析方法
KR20080045097A (ko) * 2008-04-14 2008-05-22 삼성전자주식회사 멀티 칩 및 그것의 리페어 방법
CN101329918A (zh) * 2008-07-30 2008-12-24 中国科学院计算技术研究所 存储器内建自修复系统及自修复方法
JP2010225239A (ja) * 2009-03-24 2010-10-07 Toshiba Corp 半導体集積回路およびメモリの機能検証方法
JP4865018B2 (ja) * 2009-09-08 2012-02-01 株式会社東芝 半導体集積回路
CN102420016A (zh) * 2011-11-03 2012-04-18 西安交通大学 一种应用于集成错误校验码的嵌入式存储器的内建修复分析方法
KR101862379B1 (ko) 2013-04-19 2018-07-05 삼성전자주식회사 Ecc 동작과 리던던시 리페어 동작을 공유하는 메모리 장치
US9430324B2 (en) * 2013-05-24 2016-08-30 Rambus Inc. Memory repair method and apparatus based on error code tracking
KR102083266B1 (ko) * 2013-11-29 2020-03-03 삼성전자주식회사 반도체 메모리 장치의 테스트 방법 및 반도체 메모리 시스템
KR102238706B1 (ko) * 2014-11-28 2021-04-09 삼성전자주식회사 반도체 메모리 장치 및 이를 포함하는 메모리 시스템

Also Published As

Publication number Publication date
TWI787404B (zh) 2022-12-21
US20190325982A1 (en) 2019-10-24
US10861577B2 (en) 2020-12-08
KR20190121585A (ko) 2019-10-28
CN110390993A (zh) 2019-10-29
KR102573833B1 (ko) 2023-09-04
CN110390993B (zh) 2023-02-17

Similar Documents

Publication Publication Date Title
TWI787404B (zh) 用於儲存裝置的模組控制器和包括該模組控制器的儲存模組
US10020072B2 (en) Detect developed bad blocks in non-volatile memory devices
US9996417B2 (en) Data recovery in memory having multiple failure modes
US9263157B2 (en) Detecting defective connections in stacked memory devices
TWI442407B (zh) 在固態儲存系統中之資料回復
US10409677B2 (en) Enhanced memory reliability in stacked memory devices
US7545689B2 (en) Method and apparatus for improving yield in semiconductor devices by guaranteeing health of redundancy information
US10938421B2 (en) Decoding optimization for channel mismatch
US20130318418A1 (en) Adaptive error correction for phase change memory
US8612836B2 (en) Non-volatile memory device with uncorrectable information region and operation method using the same
US8976609B1 (en) Low-test memory stack for non-volatile storage
US10811116B2 (en) Semiconductor systems
US20180102183A1 (en) Methods of testing cell arrays and semiconductor devices executing the same
US11200962B2 (en) Memory devices having spare column remap storages and methods of remapping column addresses in the memory devices
JP2010282369A (ja) メモリシステム
JP4121825B2 (ja) フォールトトレラントな隣接排反アドレスロジック