本申請要求2015年11月9日提交給韓國知識產(chǎn)權(quán)局的申請?zhí)枮?0-2015-0157004的韓國申請的優(yōu)先權(quán),通過引用其整體合并于此。
技術(shù)領(lǐng)域
各個實施例總體而言涉及一種半導體器件,且更具體而言,涉及一種包括錯誤校正碼電路的半導體器件。
背景技術(shù):
隨著被施加至存儲單元的電壓降低和單元尺寸減小,容軟錯誤(soft error tolerance)的惡化一直是個問題。在使用用于校正數(shù)據(jù)錯誤的錯誤校正碼(在下文被稱為ECC)電路的半導體集成器件中,已經(jīng)提出了將奇偶校驗位添加至標準數(shù)據(jù)并且校正故障位的電路技術(shù)。
即,在制造半導體存儲器件之后,執(zhí)行測試以選擇故障的存儲單元。用于改善半導體存儲器件的成品率的方法之一是向半導體存儲器件提供ECC功能。
這種ECC電路是執(zhí)行實時檢測和校正數(shù)據(jù)故障的功能的電路,且在傳送DQ數(shù)據(jù)時,另外的奇偶校驗位被施加到DQ數(shù)據(jù)。因此,半導體存儲器件檢查DQ數(shù)據(jù)和添加的奇偶校驗位是否根據(jù)規(guī)定的規(guī)則來傳送,并且檢測數(shù)據(jù)錯誤。
然而,裸片上的ECC電路能校正1位的故障,但是只能檢測關(guān)于2位故障的錯誤。即,由于發(fā)生了1位故障的地址之后會進一步惡化,因此可能會產(chǎn)生另外的故障單元。在這種情況下,可能會發(fā)生數(shù)據(jù)錯誤,導致在修復操作中要用冗余單元替換的單元的數(shù)量增加。
技術(shù)實現(xiàn)要素:
在一個實施例中,一種半導體器件包括存儲體,存儲體包括用于儲存數(shù)據(jù)的存儲區(qū)以及用于儲存奇偶校驗數(shù)據(jù)的錯誤校正碼區(qū)。該半導體器件還可以包括錯誤校正碼計算電路,錯誤校正碼計算電路對應(yīng)于數(shù)據(jù)和奇偶校驗數(shù)據(jù)來校正故障單元的錯誤,并且輸出在產(chǎn)生故障數(shù)據(jù)時被激活的標記信號以及在存儲體中被激活的地址。該半導體器件還可以包括地址鎖存電路,地址鎖存電路儲存從錯誤校正碼計算電路施加的地址并根據(jù)標 記信號輸出故障地址。該半導體器件還包括故障防止電路,故障防止電路對應(yīng)于標記信號和故障地址來執(zhí)行用于修復故障數(shù)據(jù)的操作。
在一個實施例中,一種半導體器件可以包括多個存儲體,所述多個存儲體包括存儲區(qū)和錯誤校正碼(ECC)區(qū)。該半導體器件還可以包括錯誤校正碼計算電路,錯誤校正碼計算電路電耦接到所述多個存儲體且被配置成接收來自存儲區(qū)的數(shù)據(jù)和來自ECC區(qū)的奇偶校驗數(shù)據(jù),并在正常激活模式中執(zhí)行ECC操作。該半導體器件還可以包括地址鎖存電路,地址鎖存電路被配置成儲存來自錯誤校正碼計算電路的激活的行地址并且輸出故障地址。該半導體器件還可以包括故障防止電路,故障防止電路被配置成接收故障地址并且根據(jù)故障地址和標記信號來執(zhí)行修復故障數(shù)據(jù)的操作。
其中,故障防止電路將行地址中的一個輸出到多個存儲體。
其中,根據(jù)故障地址將行地址中的一個輸出到多個存儲體。
其中,故障防止電路被配置成控制刷新操作的次數(shù)。
其中,故障防止電路被配置成將故障地址順序儲存在預定數(shù)量的線中。
其中,故障防止電路輸出刷新地址以順序地刷新整個存儲單元陣列。
其中,故障防止電路被配置成根據(jù)第一刷新地址或第二刷新地址來輸出行地址中的一個。
其中,第二刷新地址在行激活信號處于第一邏輯電平時被選中,以及第一刷新地址在行激活信號處于第二邏輯電平時被選中。
其中,ECC計算電路讀取存儲區(qū)的數(shù)據(jù)和ECC區(qū)的奇偶校驗數(shù)據(jù)并且執(zhí)行錯誤校正操作。
其中,ECC計算電路將錯誤校正的數(shù)據(jù)輸出到輸入/輸出電路。
其中,ECC計算電路檢測何時產(chǎn)生故障數(shù)據(jù)。
其中,地址鎖存電路在標記信號被激活時將故障地址輸出到故障防止電路。
其中,ECC計算電路被配置成在發(fā)生1位故障時,對應(yīng)于數(shù)據(jù)和奇偶校驗數(shù)據(jù)來校正錯誤。
其中,在多個存儲體中的一個或更多個中發(fā)生故障時,地址鎖存電路將故障地址輸 出到故障防止電路。
附圖說明
圖1是圖示根據(jù)本發(fā)明的一個實施例的半導體器件的配置圖。
圖2是圖示與圖1的故障防止電路有關(guān)的一個實施例的示圖。
圖3是圖示本發(fā)明的一個實施例的包括根據(jù)半導體器件的系統(tǒng)的配置圖。
具存儲體實施方式
在下文,以下將參照附圖通過實施例的各種例子來描述半導體器件。各個實施例針對在發(fā)生1位故障時,通過使用錯誤校正碼電路來修復對應(yīng)單元,并且針對通過在很大程度上防止在對應(yīng)單元中發(fā)生錯誤來在很大程度上防止發(fā)生高級故障。根據(jù)本發(fā)明,當發(fā)生1位故障時,使用錯誤校正碼(ECC)電路來修復對應(yīng)單元,且在很大程度上防止在對應(yīng)單元中發(fā)生錯誤,由此在很大程度上防止發(fā)生高級故障。
參見圖1,描述圖示根據(jù)本發(fā)明的一個實施例的半導體器件的配置圖。半導體器件的內(nèi)部組件可以被配置成電路等。
本發(fā)明的一個實施例包括多個存儲體BK0至BK3、錯誤校正碼(下文被稱為ECC)計算電路300、輸入/輸出單元400、地址鎖存單元500以及故障防止電路600。
半導體器件被分為多個存儲體BK0至BK3且被驅(qū)動。所述多個存儲體BK0至BK3中的每個包括存儲區(qū)100和ECC區(qū)200。
存儲區(qū)100包括多個存儲單元,且在其中執(zhí)行數(shù)據(jù)讀取/寫入。ECC區(qū)200儲存用于校正錯誤的奇偶校驗數(shù)據(jù)。
存儲區(qū)100被分為包括多個單位存儲單元的多組正常區(qū)塊。這些正常區(qū)塊沿行方向和列方向多數(shù)地布置,以形成多個區(qū)塊行和多個區(qū)塊列。
布置在存儲區(qū)100的外圍部分的最外面的區(qū)域可以用作用于儲存奇偶校驗位的ECC區(qū)200。這種ECC區(qū)200可以被分配給虛設(shè)區(qū)。
ECC計算單元300經(jīng)由數(shù)據(jù)線和奇偶校驗線電耦接到多個存儲體BK0至BK3。ECC計算單元300經(jīng)由數(shù)據(jù)線從存儲區(qū)100接收特定單元的數(shù)據(jù)DATA,并且經(jīng)由奇偶校驗線從ECC區(qū)200接收特定單元的奇偶校驗數(shù)據(jù)PT。ECC計算單元300可以應(yīng)用于半導體器件的裸片中所設(shè)置的裸片上ECC電路。
如上所述,用于輸入/輸出正常數(shù)據(jù)DATA的數(shù)據(jù)線和用于輸入/輸出奇偶校驗數(shù)據(jù)PT的奇偶校驗線彼此分離。在這種情況下,在寫入操作或讀取操作中,可以經(jīng)由與奇偶校驗線分離的數(shù)據(jù)線來輸入/輸出數(shù)據(jù)。
在正常激活模式中,ECC計算單元300對應(yīng)于讀取命令或?qū)懭朊顏韴?zhí)行ECC操作。當發(fā)生1位故障時,這種ECC計算單元300對應(yīng)于數(shù)據(jù)DATA和奇偶校驗數(shù)據(jù)PT來校正錯誤。
在存儲體BK0至BK3的讀取操作中,ECC計算單元300讀取存儲區(qū)100的所有數(shù)據(jù)DATA和ECC區(qū)200的奇偶校驗數(shù)據(jù)PT,并且執(zhí)行錯誤校正操作。此外,在存儲體BK0至BK3的寫入操作中,ECC計算單元300將數(shù)據(jù)儲存在存儲區(qū)100中并且將奇偶校驗數(shù)據(jù)儲存在ECC區(qū)200中。
ECC計算單元300對應(yīng)于經(jīng)由數(shù)據(jù)線和奇偶校驗線從多個存儲體BK0至BK3施加的數(shù)據(jù)DATA和奇偶校驗數(shù)據(jù)PT來計算ECC;并且將錯誤校正的數(shù)據(jù)CDATA輸出至輸入/輸出單元400。然后,輸入/輸出單元400將錯誤校正的數(shù)據(jù)CDATA輸出至外部源或外部設(shè)備。
此外,ECC計算單元300將在產(chǎn)生故障數(shù)據(jù)時被激活的標記信號FLAG輸出到地址鎖存單元500和故障防止電路600。為此,ECC計算單元300包括標記發(fā)生部310,標記發(fā)生部310用于檢測故障數(shù)據(jù)的產(chǎn)生并且激活標記信號FLAG。ECC計算單元300將根據(jù)各個存儲體BK0至BK3被激活的行地址ADD輸出到地址鎖存單元500。
地址鎖存單元500儲存從ECC計算單元300施加的被激活的行地址ADD。當標記信號FLAG被激活時,地址鎖存單元500將儲存的故障地址輸出到故障防止電路600。
地址鎖存單元500同步于激活命令來將激活的行地址ADD順序地儲存在鎖存器中。地址鎖存單元500鎖存并儲存行地址ADD直到預充電操作被執(zhí)行為止。
當在特定的存儲體中發(fā)生故障且來自ECC計算單元300的標記信號FLAG被激活時,地址鎖存單元500將與故障數(shù)據(jù)相對應(yīng)的故障地址FADD輸出到故障防止電路600。
地址鎖存單元500可以逐個地設(shè)置在每個存儲體BK中。例如,當存儲體BK0至BK3的數(shù)量為4時,可以設(shè)置四個地址鎖存單元500。
在ECC計算單元300執(zhí)行ECC計算時,地址鎖存單元500鎖存激活的行地址ADD并且將鎖存的行地址ADD輸出到故障防止電路600。此時,地址鎖存單元500將在激活標記信號FLAG時被鎖存的故障地址FADD輸出到故障防止電路600。
地址鎖存單元500可以鎖存行地址信息,直到行地址被施加給存儲體BK0至BK3的行線且列地址被施加給列線為止。在施加行地址且施加列地址以便選擇存儲體BK0至BK3的存儲單元以前,需要預定時間。
因此,當在施加行地址且施加列地址以前,從ECC計算單元300施加的行地址ADD未儲存時,關(guān)于故障地址的信息可能會丟失。就這點而言,在本發(fā)明的一個實施例中,經(jīng)由地址鎖存單元500從ECC計算單元300施加的行地址ADD被儲存預定時間。
此外,故障防止電路600對應(yīng)于標記信號FLAG和故障地址FADD來執(zhí)行用于修復故障數(shù)據(jù)的操作。ECC計算單元300可以校正已經(jīng)發(fā)生了1位故障的地址。然而,當在發(fā)生1位故障之后再次發(fā)生另外的1位故障時,不可以校正故障單元。
就這點而言,在本發(fā)明的一個實施例中,當發(fā)生1位故障時,ECC計算單元300校正錯誤,且故障防止電路600修復故障單元,使得在很大程度上防止在對應(yīng)單元中發(fā)生另外的故障。當在存儲體BK0至BK3中發(fā)生錯誤時,故障防止電路600在很大程度上防止在故障數(shù)據(jù)的對應(yīng)地址中發(fā)生錯誤。
用于在很大程度上防止在故障地址中發(fā)生錯誤的電路可以不同。在本發(fā)明的一個實施例中,已經(jīng)發(fā)生了故障的地址被視為對應(yīng)于弱單元(weak cell),且對故障單元執(zhí)行另外的刷新操作,使得在很大程度上防止在對應(yīng)地址中發(fā)生錯誤。
這種故障防止電路600將行地址RADD輸出到存儲體BK0至BK3以刷新故障單元,由此修復故障數(shù)據(jù)。
此外,在激活標記信號FLAG時,故障防止電路600對應(yīng)于故障地址FADD來將用于刷新故障單元的行地址RADD輸出到存儲體BK0至BK3。
此外,故障防止電路600還可以基于多個存儲單元之中的至少一個弱單元的地址(所述弱單元具有比正常單元的數(shù)據(jù)保持時間短的數(shù)據(jù)保持時間)來調(diào)節(jié)刷新的次數(shù)。故障防止電路600可以以由標準定義的刷新周期來控制對弱單元執(zhí)行至少兩次刷新操作。
在測試模式中,故障防止電路600執(zhí)行刷新操作并儲存關(guān)于具有弱地址特性的單元的地址信息。此外,當故障地址FADD對應(yīng)于弱單元時,故障防止電路600可以控制刷新操作的次數(shù)增加。
諸如動態(tài)隨機存取存儲器(DRAM)的易失性存儲器件執(zhí)行刷新操作以便在很大程度上保持儲存的數(shù)據(jù)。當易失性存儲器件的存儲單元具有比由標準定義的刷新周期短的數(shù)據(jù)保持時間時,包括存儲單元的行線應(yīng)當被冗余單元的行線替換。
隨著存儲單元的尺寸減小,具有比刷新周期短的數(shù)據(jù)保持時間的存儲單元的數(shù)量增加,導致冗余單元的數(shù)量增加。
因此,有必要根據(jù)各個存儲單元的數(shù)據(jù)保持特性來適應(yīng)性地執(zhí)行刷新操作,同時在很大程度上保持根據(jù)半導體器件標準的刷新時間間隔。在根據(jù)各個存儲單元的數(shù)據(jù)保持特性而適應(yīng)性地執(zhí)行刷新操作的情況下,可以減少應(yīng)當用冗余單元的行線替換的存儲單元的行線的數(shù)量。
在本發(fā)明的一個實施例中,已經(jīng)描述了故障防止電路600通過執(zhí)行針對故障地址FADD的另外的刷新操作來修復故障單元的示例。然而,本發(fā)明不限于此。故障防止電路600還可以經(jīng)由軟故障方法來修復故障單元。
在軟故障方法中,當在特定行地址中發(fā)生了故障時,可以執(zhí)行用冗余字線替換它的操作。因此,可以使用字線復制方法,在字線復制方法中,故障防止電路600將儲存在單元中的數(shù)據(jù)儲存在冗余字線中。
以下方法是可能的,所述方法中,故障字線經(jīng)由感測放大器被使能來鎖存數(shù)據(jù),然后冗余字線經(jīng)由感測放大器被使能來允許基本上相同的數(shù)據(jù)被寫入在冗余字線中。
參見圖2,描述圖1的故障防止電路600的詳細配置圖。
故障防止電路600包括故障地址儲存單元610、刷新地址計數(shù)器640以及選擇單元650。故障地址儲存單元610包括故障地址表620和刷新地址發(fā)生部630。
在激活標記信號FLAG時,故障地址儲存單元610將從地址鎖存單元500施加的故障地址FADD儲存在故障地址表620中。故障地址FADD可以被順序地儲存在故障地址表620的預定數(shù)量的線中。故障地址表620可以包括鎖存單元。
故障地址表620可以包括指示每個線的地址的表地址字段以及其中儲存有需要刷新操作的故障地址FADD的刷新地址字段。
在刷新地址字段中,與故障地址FADD相對應(yīng)的刷新地址可以被儲存作為位信息。儲存在故障地址表620中的刷新地址R_ADD可以由刷新地址發(fā)生部630順序地輸出。
例如,在激活標記信號FLAG時,刷新地址發(fā)生部630可以通過計數(shù)器的操作來順序地輸出儲存在故障地址表620中的故障地址FADD作為刷新地址R_ADD。刷新地址發(fā)生部630輸出已儲存在故障地址表620的每個線中的故障地址FADD作為用于執(zhí)行刷新操作的刷新地址R_ADD。
在本發(fā)明的一個實施例中,已描述了故障地址表620包括鎖存單元的示例。然而,本發(fā)明不限于此。故障地址表620可以用一次可編程存儲器(諸如激光可編程熔絲存儲器、反熔絲存儲器和電可編程熔絲存儲器)來實現(xiàn),或者可以用非易失性存儲器(諸如MRAM(磁性隨機存取存儲器)、RRAM(電阻式隨機存取存儲器)、PRAM(相變隨機存取存儲器)以及閃存)來實現(xiàn)。
在正常操作的情況下,對應(yīng)于刷新地址計數(shù)器640來執(zhí)行刷新操作。刷新地址計數(shù)器640對刷新信號REF進行計數(shù)并輸出用于順序地刷新整個存儲單元陣列的刷新地址REF_ADD。
刷新信號REF可以響應(yīng)于從主機裝置周期地施加的刷新命令而產(chǎn)生。在半導體器件的正常存取模式中,刷新信號REF可以是由來自存儲器控制器的命令所施加的自動刷新信號。此外,刷新信號REF也可以由半導體器件中所包括的內(nèi)置計時器來產(chǎn)生。
選擇單元650對應(yīng)于行激活信號RACT來選擇從故障地址儲存單元610施加的刷新地址R_ADD和從刷新地址計數(shù)器640施加的刷新地址REF_ADD中的任意一個,并輸出行地址RADD。
例如,當行激活信號RACT處在第一邏輯電平(例如,邏輯高電平)時,選擇單元650選擇從刷新地址計數(shù)器640施加的刷新地址REF_ADD。然而,行激活信號RACT處在第二邏輯電平(例如,邏輯低電平),選擇單元650選擇從故障地址儲存單元610施加的刷新地址R_ADD。
選擇單元650可以包括多路復用器和傳輸門等以用于對應(yīng)于行激活信號RACT而選擇刷新地址R_ADD和刷新地址REF_ADD中的任意一個。
根據(jù)本發(fā)明的一個實施例的半導體器件可以是動態(tài)隨機存取存儲器(DRAM),諸如,DDR SDRAM(雙數(shù)據(jù)速率同步動態(tài)隨機存取存儲器)、LPDDR(低功率雙數(shù)據(jù)速率)SDRAM、GDDR(圖像雙數(shù)據(jù)速率)SDRAM、RDRAM(rambus動態(tài)隨機存取存儲器),或者可以是需要刷新操作的任意易失性存儲器件。
盡管以上已經(jīng)描述了各種實施例,但是本領(lǐng)域技術(shù)人員將會理解,描述的實施例僅僅作為實例。因此,本文描述的半導體器件不應(yīng)基于描述的實施例來限制。
上面討論的半導體器件(見圖1、圖2)在存儲器件、處理器和計算機系統(tǒng)的設(shè)計中尤其有用。例如,參見圖3,采用根據(jù)各個實施例的半導體器件的系統(tǒng)的框圖被圖示且由參考標記1000來表示。系統(tǒng)1000可以包括一個或更多個處理器(即,處理器)或例如但不限于中央處理單元(“CPU”)1100。處理器(即,CPU)1100可以單獨地使用 或與其他處理器(即,CPU)組合使用。盡管處理器(即,CPU)1100將主要是單數(shù)形式被提及,但是本領(lǐng)域技術(shù)人員將會理解,可以實施具有任意數(shù)量的物理處理器或邏輯處理器(即,CPU)的系統(tǒng)1000。
芯片組1150可以可操作地耦接到處理器(即,CPU)1100。芯片組1150是處理器(即,CPU)1100與系統(tǒng)1000的其它組件之間的信號的通信路徑。系統(tǒng)1000的其它組件可以包括存儲器控制器1200、輸入/輸出(“I/O”)總線1250和盤驅(qū)動控制器1300。根據(jù)系統(tǒng)1000的配置,可以經(jīng)由芯片組1150來傳送若干不同信號中的任意一個。本領(lǐng)域技術(shù)人員將會理解,可以容易地調(diào)整貫穿系統(tǒng)1000的信號的路徑,而不改變系統(tǒng)1000的根本性質(zhì)。
如上所述,存儲器控制器1200可以可操作地耦接到芯片組1150。存儲器控制器1200可以包括如上參照圖1、圖2描述的至少一個半導體器件。因此,存儲器控制器1200可以經(jīng)由芯片組1150而接收從處理器(即,CPU)1100提供的請求。在可替代的實施例中,存儲器控制器1200可以被集成到芯片組1150內(nèi)。存儲器控制器1200可以可操作地耦接到一個或更多個存儲器件1350。在一個實施例中,存儲器件1350可以包括如上關(guān)于圖1、圖2討論的至少一個半導體器件,存儲器件1350可以包括用于限定多個存儲單元的多個字線和多個位線。存儲器件1350可以是若干工業(yè)標準存儲器類型中的任意一種,包括但不限于,單列直插存儲模塊(“SIMM”)和雙列直插存儲模塊(“DIMM”)。此外,存儲器件1350可以通過儲存指令和數(shù)據(jù)二者而有助于外部數(shù)據(jù)儲存器件的安全移除。
芯片組1150還可以電耦接到I/O總線1250。I/O總線1250可以用作從芯片組1150到I/O設(shè)備1410、1420和1430的信號的通信路徑。I/O設(shè)備1410、1420和1430可以包括,例如但不限于,鼠標1410、視頻顯示器1420或鍵盤1430。I/O總線1250可以采用若干通信協(xié)議中的任意一種來與I/O設(shè)備1410、1420和1430通信。在一個實施例中,I/O總線1250可以被集成到芯片組1150內(nèi)。
盤驅(qū)動控制器1300可以可操作地耦接到芯片組1150。盤驅(qū)動控制器1300可以用作芯片組1150與一個內(nèi)部盤驅(qū)動器1450或多于一個的內(nèi)部盤驅(qū)動器1450之間的通信路徑。內(nèi)部盤驅(qū)動器1450可以通過儲存指令和數(shù)據(jù)二者而有助于外部數(shù)據(jù)儲存器件的斷開。盤驅(qū)動控制器1300和內(nèi)部盤驅(qū)動器1450可以幾乎使用任何類型的通信協(xié)議(包括例如但不限于上面關(guān)于I/O總線1250提及的所有通信協(xié)議)來彼此通信或與芯片組1150通信。
要重點注意的是,上面關(guān)于圖3描述的系統(tǒng)1000僅僅是采用上面關(guān)于圖1、圖2 討論的半導體器件的系統(tǒng)1000的一個示例。在可替換的實施例中,諸如例如但不限于蜂窩電話或數(shù)碼相機,部件可以與圖3中所示的實施例不同。
本領(lǐng)域技術(shù)人員將理解,在不脫離本發(fā)明的精神和實質(zhì)特征的情況下,可以采用除了本文所闡述的方式之外的其它具體方式來實現(xiàn)該實施例。因而上述實施例在所有方面被解釋為說明性地而非限制性地。范圍應(yīng)當由所附權(quán)利要求及其合法等同物來確定,而非由上面的描述來確定。此外,落入所附權(quán)利要求的含義和等價范圍之內(nèi)的所有改變意在被包含在此。另外,對于本領(lǐng)域技術(shù)人員而言明顯的是,在所附權(quán)利要求中彼此并未明確引用的權(quán)利要求可以組合出現(xiàn),作為本發(fā)明的實施例,或者通過在提交本申請之后的后續(xù)修改而被包括作為新的權(quán)利要求。
盡管已經(jīng)描述了與本發(fā)明相一致的若干說明性實施例,但是應(yīng)當理解的是,本領(lǐng)域技術(shù)人員能夠設(shè)計將落入本發(fā)明的原理的精神和范圍之內(nèi)的許多其它修改和實施例。具體地,落入本發(fā)明、附圖和所附權(quán)利要求的范圍之內(nèi)的組件部分和/或布置的許多變化和變型是可能的。除了組件部分和/或布置的變化和變型之外,可替代用途對本領(lǐng)域技術(shù)人員來說也將是明顯的。
附圖中的每個元件的符號
BK0至BK3:多個存儲體
300:錯誤校正碼(ECC)計算單元
400:輸入/輸出單元
500:地址鎖存單元
600:故障防止電路