用于校正從存儲器裝置訪問的數據中的錯誤的設備及方法
【專利摘要】本發(fā)明提供了一種用于校正在從存儲器裝置訪問的數據中的錯誤的設備及方法。執(zhí)行讀操作以從存儲器裝置輸出多個讀取符號。隨后根據多個讀取符號確定伴隨式信息,之后糾錯電路使用伴隨式信息執(zhí)行糾錯過程以定位含有錯誤的讀取符號并校正在這些定位讀取符號中的錯誤。若含有錯誤的讀取符號是隨機分布的,則可以此方式定位且校正多達PMAX個讀取符號。錯誤追蹤電路被配置在檢測到達到錯誤閾值條件時,將至少一個存儲器區(qū)域設置為擦除存儲器區(qū)域。糾錯電路將擦除存儲器區(qū)域的每個讀取符號視為含有錯誤的定位讀取符號,從而使得:當執(zhí)行糾錯過程時,并非所有的待定位讀取符號都是隨機分布的且因此可定位及校正多于PMAX個含有錯誤的讀取符號。
【專利說明】用于校正從存儲器裝置訪問的數據中的錯誤的設備及方法
【技術領域】
[0001]本發(fā)明涉及用于校正從存儲器裝置訪問的數據中的錯誤的設備及方法。
【背景技術】
[0002]使用糾錯碼(error correction codes, ECC)來保護數據包免受各種形式的數據損壞是眾所周知的。通常,這是通過將數據包視為一系列固定長度的數據符號并接著添加若干ECC符號以使數據符號及ECC符號共同形成碼字來實現的。如果利用該技術在形成碼字時添加了 m個ECC符號,則多達m/2個隨機定位符號錯誤可在碼字內被定位及校正。存在各種已知的用于生成碼字的符號的ECC編碼技術。舉例而言,一種技術使用里德所羅門碼(Reed Solomon code),里德所羅門碼是基于伽羅瓦域(Galois field)數學的并且具有使其適合于硬件實現的性質。
[0003]該ECC編碼技術的一種實際應用是在存儲器裝置方面,例如使用DRAM (動態(tài)隨機存取存儲器)的存儲器裝置。這種存儲器裝置的一個已知布置包括提供若干的雙列存儲器模塊(Dual Inline Memory Module,DIMM),其中每個DIMM由電路板上的若干DRAM芯片組成,DIMM包括至少一個留作存儲ECC信息的芯片。通常,此類存儲器裝置是經由突發(fā)訪問操作被訪問的,每個突發(fā)包含多個差拍(beat),并且DIMM的DRAM芯片在每一差拍期間被訪問。在這種布置中,公知的是:將要經由突發(fā)寫訪問寫入存儲器裝置的全部數據視為形成的數據包,將接著生成的多個ECC碼添加至該數據包中從而形成碼字。如先前所述,如果碼字包括m個ECC符號,則當隨后經由突發(fā)讀訪問從存儲器中讀取數據時,校正多達m/2個隨機定位符號錯誤可被校正。
[0004]作為具體實例,考慮由九個8位(bit)DRAM芯片(表示在突發(fā)訪問操作的每個差拍從每個DRAM芯片可存取八位數據)組成的DIMM,然后可提供72位DRAM接口以使得能夠在每個差拍訪問九個DRAM芯片中的每一個芯片。如果將一個芯片留作存儲ECC符號,則每個差拍可存取八位的ECC數據。如果在此實例中再假定每個符號包含八位,則可以看出,在示例性八差拍讀操作期間,64個數據符號及8個ECC符號將被存取。這意味著,利用上述提及的特性,多達四個隨機定位符號能夠是錯誤的但仍然被校正了。
[0005]然而,經常有此種情況:突發(fā)中的差拍的數量超出m/2。舉例而言,在上述八差拍讀操作的具體實例中,存在八個讀取的ECC符號(B卩,m=8),但還存在八個差拍。此外,已經發(fā)現:錯誤傾向于累積在DIMM上的單個芯片中,如果DIMM內的特定芯片發(fā)生故障,則很可能在特定突發(fā)讀操作期間從該芯片存取的全部符號都將是錯誤的。在此種情況下,將會超出ECC方案的糾錯能力。
[0006]一種試圖提供對整個芯片故障的恢復力的已知方法是在DIMM內提供更細粒度的芯片。舉例而言,考慮前述包含九個8位DRAM芯片的DMM的實例,等效DMM還可由十八個4位DRAM芯片(其中,每個DRAM芯片因此在每差拍提供四位(也稱為四位字(nibble))數據)來提供。如果現在每個符號包含4位,則可以看出,兩個4位DRAM芯片可用來存儲ECC符號,因此在由整個八差拍突發(fā)傳輸形成的碼字內產生十六個4位ECC符號。這會使八個4位隨機定位符號錯誤被檢測出并被校正,因此允許單個4位芯片故障(其中,對該芯片的所有八次存取輸出具有錯誤的符號)。該方式的問題是它需要更多的芯片及更小的符號大小。更小的符號大小的一個含義是它能限制伽羅瓦域的編碼,并因此限制碼字的形成。舉例而言,在里德所羅門碼中,最大的碼字是size)。
[0007]另一個已知方式是實際上使突發(fā)傳輸的大小加倍,且并行訪問兩個DIMM。考慮先前每個DIMM由九個8位DRAM芯片組成的實例,該方式將產生每差拍包括兩個ECC符號(其中符號大小為8位)的144位DRAM接口。利用此配置,再次假定八差拍的突發(fā)傳輸,ECC方案顯然可用來使兩個DIMM中的一個避免發(fā)生單個8位芯片故障。或者,如果每個DIMM包括4位芯片,則此方式可使兩個4位芯片避免發(fā)生故障,因為使用4位芯片會產生每差拍四個ECC符號,或總計32個ECC符號(假定八差拍的突發(fā)傳輸),允許十六個隨機符號故障,等效于允許每差拍兩個符號故障。此方式的缺點是它要求數據在多個DIMM上分布,因此需要額外的存儲器資源且也增加了最小存儲器存取要求。此外,要假定兩個DIMM之間的電路板故障平均時間(Mean Time to Board Failure,MTBF)是不同的,因為不這樣的話,如果在兩個DIMM中可能同時發(fā)生芯片故障,則此方式將不會提供任何益處。
[0008]因此,期望提供一種用于增強對存儲器裝置的區(qū)域內的故障的恢復力的改良機制。
【發(fā)明內容】
[0009]從第一方面來看,本發(fā)明提供了一種設備,該設備包含:存儲器裝置,包含多個存儲器區(qū)域,該存儲器裝置被配置為存儲數據符號及關聯的糾錯碼(ECC)符號;讀取電路,該讀取電路被配置為執(zhí)行讀操作以從該存儲器裝置輸出多個讀取符號,該多個讀取符號包含η個數據符號及關聯的m個糾錯碼符號,以及包含來自每個存儲器區(qū)域的多于一個讀取符號,η及m兩者都為大于I的整數值;伴隨式(syndrome)譯碼器,該伴隨式譯碼器被配置為根據該η個數據符號及關聯的m個糾錯碼符號確定伴隨式信息;糾錯電路,該糾錯電路被配置為:響應于對指示至少一個讀取符號存在錯誤的該伴隨式信息,執(zhí)行糾錯過程來試圖定位含有錯誤的每個讀取符號并校正這些定位讀取符號中的每一個定位讀取符號的錯誤,若含有錯誤的讀取符號隨機分布于該多個讀取符號中,多個則該糾錯電路被配置為:如果該多個讀取符號中含有錯誤的讀取符號不多于PMAX個,使用該糾錯過程來定位且校正這些錯誤;以及錯誤追蹤電路,該錯誤追蹤電路被配置為追蹤含有錯誤的定位讀取符號來源于哪些存儲器區(qū)域,且在檢測到錯誤閾值條件達到時,將該多個存儲器區(qū)域的至少一個存儲器區(qū)域設置為擦除存儲器區(qū)域;該糾錯電路響應于由該錯誤追蹤電路設置的擦除存儲器區(qū)域,將該擦除存儲器區(qū)域的每個讀取符號視為含有錯誤的定位讀取符號,以使得當執(zhí)行該糾錯過程時,并非所有的待定位的讀取符號都是隨機分布的,且多個該錯誤校正電路被配置為:若該多個讀取符號的不多于X個讀取符號含有錯誤,則定位并校正錯誤,其中X大于PMAX0
[0010]根據本發(fā)明,錯誤追蹤電路追蹤含有錯誤的讀取符號定位在存儲器裝置內的何處,且具體是這些讀取符號來源于多個存儲器區(qū)域中的哪些存儲器區(qū)域。若達到錯誤閾值條件,則將至少一個存儲器區(qū)域設置為擦除存儲器區(qū)域。一旦已設置了擦除存儲器區(qū)域,則這影響糾錯過程如何使用伴隨式信息來試圖定位含有錯誤的讀取符號。具體而言,擦除存儲器區(qū)域的全部讀取符號都被視為含有錯誤,意指含有錯誤的讀取符號的分布不再視為完全隨機。這允許含有錯誤的讀取符號的數量增大,同時仍使得糾錯過程能夠識別且校正這些錯誤。
[0011]一旦檢測到錯誤閾值條件,通過將至少一個存儲器區(qū)域視為擦除存儲器區(qū)域,就會因此在考慮到讀取符號內給定數量III個2(1:符號的情況下擴展糾錯電路的校正能力。
[0012]在一個實施例中,若擦除存儲器區(qū)域的讀取符號的總數為+則糾錯電路被配置為校正在該擦除存儲器區(qū)域的所有(1個讀取符號中的錯誤,且另外,校正在未設置為該擦除存儲器區(qū)域的任意存儲器區(qū)域的多達?個讀取符號中的錯誤,其中:1)=(111 — 0/2,其中III大于或等于+且?及(1為大于或等于0的整數值。
[0013]因此,在沒有設置擦除存儲器區(qū)域的情況下,應了解到聽0,且可被定位及校正的錯誤的最大數量即?嫩X,為!11/2。類似地,可在擦除存儲器區(qū)域內被定位及校正的讀取符號的最大數量,本文稱為為%且在此情況下將理解的是?為0,即,將定位及校正擦除存儲器區(qū)域內的全部III個讀取符號,但無法校正未設置為擦除存儲器區(qū)域的任何存儲器區(qū)域的其他讀取符號。實際上,一旦已設置擦除存儲器區(qū)域,則可定位及校正擦除存儲器區(qū)域內的多達III個讀取符號,這些讀取符號的數量是在假定含有錯誤的讀取符號隨機分布時的情況中的讀取符號數量的兩倍。若錯誤有可能累積在一或幾個存儲器區(qū)域內,則這會特別有利。舉例而言,考慮前述包含多個0狀1芯片的0111的實例,每個芯片可形成存儲器區(qū)域,且上述方式使得至少一個芯片能被標記為擦除存儲器區(qū)域,這增大了糾錯過程可校正由于該芯片故障而造成的錯誤的可能性。
[0014]舉例而言,在一個實施例中,在讀操作期間由讀取電路輸出的多個讀取符號可包含每個存儲器區(qū)域的多于?嫩X個讀取符號。因此,在未設置擦除存儲器區(qū)域的情況下,不可能定位及校正下列情況:特定故障存儲器區(qū)域的每個讀取符號都是錯誤的。然而,若將該故障存儲器區(qū)域設置為擦 除存儲器區(qū)域,則這會增加可校正錯誤的數量。具體而言,若故障存儲器區(qū)域不含有多于III個的讀取符號,則可校正該存儲器區(qū)域的全部讀取符號。
[0015]在一個實施例中,讀操作為包含多個差拍的突發(fā)讀操作,且每個存儲器區(qū)域在每個差拍期間被訪問。
[0016]在一個實施例中,在該多個讀取符號中存在至少與存在于突發(fā)讀操作中的差拍一樣多的糾錯碼符號。在一特定實施例中,在突發(fā)讀操作中存在III個差拍,即,存在與存在于突發(fā)讀操作中的差拍相同數量的糾錯碼符號。因此,在該實施例中,若每個差拍從各個存儲器區(qū)域讀取的數據形成讀取符號,則一旦存儲器區(qū)域中的一個存儲器區(qū)域已經設置為擦除存儲器區(qū)域,就可校正該存儲器區(qū)域的每個讀取符號。類似地,若在兩個連續(xù)差拍上從一個存儲器區(qū)域讀取的數據形成讀取符號,則一旦兩個存儲器區(qū)域已經設置為擦除存儲器區(qū)域,就可校正多達兩個存儲器區(qū)域的全部讀取符號。
[0017]在一個實施例中,存儲器裝置包含多個存儲器芯片,每個存儲器芯片形成一個存儲器區(qū)域。在一個特定實施例中,存儲器裝置包含雙列存儲器模塊(0111):每個存儲器芯片具有關聯的數據信道;并且讀操作為包含多個差拍的突發(fā)讀操作,在每個差拍期間從每個存儲器芯片經由與其關聯的數據信道讀取至少一個數據單元。
[0018]從每個存儲器芯片讀取的數據單元可采用各種形式。在一個實施例中,該數據單元為一個字節(jié)(即,8位)的數據,而在另一個實施例中,該數據單元為四位字(即,4位)的數據。
[0019]在一個特定實施例中,在每一拍期間,每個存儲器芯片輸出一個字節(jié),且每個讀取符號包含這些字節(jié)中的一個。在該實施例中,一旦一個故障存儲器芯片被識別為擦除存儲器區(qū)域,則可校正這個故障存儲器芯片的每個讀取符號。
[0020]在替代實施例中,在每個差拍期間,每個存儲器芯片輸出一個四位字,且每個讀取符號由在連續(xù)差拍內的通過相同數據信道輸出的兩個四位字形成。在該實施例中,一旦兩個故障存儲器芯片被識別為擦除存儲器區(qū)域,則可校正多達兩個故障存儲器芯片的每個讀取符號。或者,一個故障芯片可被識別為擦除存儲器區(qū)域,允許校正該故障存儲器芯片的全部讀取符號,另外也可校正若干隨機分布的錯誤。
[0021]讀取符號可采取各種形式,而在一個實施例中,讀取符號形成里德所羅門碼字。
[0022]錯誤追蹤電路可以很多方式被配置來確定錯誤閾值條件是否已出現。在一個實施例中,錯誤追蹤電路被配置為至少基于下列指示來確定是否檢測到錯誤閾值條件,該指示為:對于當前讀操作,含有錯誤的定位讀取符號來源于哪些存儲器區(qū)域。作為特定實例,若確定在當前讀操作中已出現PMAX個隨機分布錯誤,但這些錯誤中的一些(可為這些錯誤的全部或少于全部)與特定存儲器區(qū)域相關聯,則該模式的錯誤可使得錯誤閾值條件被檢測至IJ,且因此使得特定存儲器區(qū)域被標記為擦除存儲器區(qū)域。
[0023]在一個實施例中,錯誤追蹤電路還保存對于若干先前讀操作含有錯誤的定位讀取符號來源于哪些存儲器區(qū)域的歷史記錄,且在確定是否檢測到錯誤閾值條件時還參考該歷史記錄。因此,通過舉例的方式,錯誤追蹤電路可被布置為在第一次檢測到上述模式的錯誤時不設置擦除存儲器區(qū)域,而是僅在對于若干讀操作已檢測到該模式的錯誤之后設置擦除存儲器區(qū)域。這里,在不希望過早設置擦除存儲器區(qū)域但要在多于PMAX個隨機分布錯誤出現的情況出現之前設置擦除存儲器區(qū)域之間必須達到平衡,因為若存在多于PMAX個錯誤,且未設置擦除存儲器區(qū)域,則糾錯電路將通常不能定位且校正這些錯誤。
[0024]在一個實施例中,一旦擦除存儲器區(qū)域已被設置,則錯誤追蹤電路被配置為保存設置的擦除存儲器區(qū)域直至執(zhí)行重置操作?;蛘?,錯誤追蹤電路可被配置為保存擦除存儲器區(qū)域中有多少讀取符號確實隨著時間產生錯誤的記錄,且若該數量開始降低到導致將設置擦除存儲器區(qū)域的數量(例如,因為在實踐中錯誤出現并非表示芯片故障,而僅為現在已消失的瞬時錯誤),則錯誤追蹤電路可被布置為清除擦除存儲器區(qū)域,允許在適當時候再次重置擦除存儲器區(qū)域。
[0025]糾錯過程可采用各種形式。在一個實施例中,由糾錯電路執(zhí)行的糾錯過程包含:a)試圖使用伴隨式信息作為輸入來求解錯誤位置多項式;b)若在該步驟(a)求解出錯誤位置多項式,則通過確定求解的錯誤位置多項式的根來識別含有錯誤的每個讀取符號;以及c)使用根及伴隨式信息來確定在步驟(b)識別的讀取符號的校正值。
[0026]在一個實施例中,錯誤位置多項式具有多個參數,該多個參數可在試圖求解錯誤位置多項式的步驟(a)期間變化,并且如果設置了擦除存儲器區(qū)域,則糾錯電路被配置為固定多個參數的至少一個子集的值,這些被固定的值取決于被設置為擦除存儲器區(qū)域的至少一個存儲器區(qū)域。
[0027]若存儲器擦除區(qū)域未被設置,且在該步驟(a)無法求解錯誤位置多項式,則在一個實施例中可認為,錯誤的數量超過PMAX,于是無法定位及校正這些錯誤。丨勺待定位的讀取符號都是隨機分布的,并且有錯誤,則該糾錯過程定位且校正錯誤,其
「,該設備包含:存儲器器件,用于存儲數據包含多個存儲器區(qū)域;讀取器件,用于執(zhí)行述多個讀取符號包含II個數據符號及關聯域的多于一個讀取符號,II及III兩者都為大?個數據符號及關聯的III個糾錯碼符號確定漢符號存在錯誤的該伴隨式信息,用于執(zhí)行且校正這些定位讀取符號中的每一個定位I分布在該多個讀取符號中,并且如果該多:個,則該糾錯器件使用該糾錯過程來定位含有錯誤的定位讀取符號來源于哪些存儲捋所述多個存儲器區(qū)域的至少一個存儲器于由該錯誤追蹤器件設置的擦除存儲器區(qū)1為含有錯誤的定位讀取符號,以使得當執(zhí)[0034]圖4八及圖48根據一個實施例示出了可在圖1的0111中使用的芯片以及在每個差拍期間存取的關聯數據單元的兩個示例布置;
[0035]圖5八根據一個實施例示出了符號映射,而圖58根據該實施例示出了可使圖1的錯誤位置追蹤器將一個芯片設置為擦除存儲器區(qū)域的錯誤閾值條件的實例;以及
[0036]圖6八根據替代實施例示出了符號映射,圖68示出了可導致一個芯片被設置為擦除存儲器區(qū)域的錯誤閾值條件的實例,并且圖6(:根據該替代實施例示出了可導致第二個芯片也被標記為形成的擦除存儲器區(qū)域的另一個錯誤閾值條件的實例。
【具體實施方式】
[0037]圖1為根據一個實施例的設備的框圖。在此實施例中,011140由多個0狀1芯片42、44、46、48、50組成,并且對01麗40的寫訪問和讀訪問二者以包含多個差拍的突發(fā)訪問來執(zhí)行。寫/讀訪問單元35用于在突發(fā)訪問的每個差拍期間訪問01麗40。通常,對于突發(fā)寫操作,數據將在每個差拍期間被寫入每個芯片42、44、46、48、50中,且類似地,在突發(fā)讀操作期間,數據將在每個差拍期間從每個芯片中讀取。
[0038]編碼器10用于生成與突發(fā)寫操作的數據相關聯的2(1:符號。對于每一差拍,通過路徑5為該差拍提供的數據被存儲在緩沖器15中,而其他的數據被提供至符號生成器
20。符號生成器20將基于第一差拍的接收到的數據產生預定數量的2(1:符號。此后,當每一后續(xù)差拍的數據被接收且被存儲在緩沖器15中時,該數據也會被提供至符號生成器20,使得2(1:符號生成器20根據接收到的最新數據更新預定數量的符號。到突發(fā)寫操作的所有差拍的數據都已經被接收且緩存時,由符號生成器20生成的預定數量的符號接著將成為與突發(fā)寫操作的全部數據相關聯的符號。
[0039]由2(1:符號生成器產生的符號的預定數量將取決于特定實現。然而,在一個實施例中,所生成的2(1:符號的數量與突發(fā)寫訪問中的差拍數量相同。因此,考慮其中突發(fā)寫訪問含有八個差拍的特定實例,則2冗符號生成器20將產生八個2(1:符號。
[0040]在一個特定實施例中,編碼器10基于接收到的突發(fā)的寫入數據生成里德所羅門碼字,使用II個數據符號(含有寫入數據)及關聯的砠個2(1:符號編碼該寫入數據。本領域技術人員將很好理解符號生成器用于生成與寫入數據相關聯的2(1:符號的操作,于是該操作在本文中將不進行進一步的討論。
[0041]一旦2(1:符號生成器20生成2(1:符號,則將這些2(1:符號與來自緩沖器15的數據一起提供至合并區(qū)塊25,合并區(qū)塊產生含有數據符號及符號兩者的符號序列,該符號序列通過路徑30被提供至寫/讀訪問單元35。各種符號從寫/讀訪問單元35被寫入011140內的相應芯片中。具體而言,每一芯片將具有與其相關聯的數據信道(匕加),數據通過該數據信道被寫入芯片內并且從芯片中被讀取。來自每一差拍的相應數據通常將通過相關聯的數據信道寫入至相同芯片。通常,至少一個芯片將留作存儲2(1:符號。
[0042]如上所述,在利用突發(fā)寫訪問將數據寫入01麗40后,數據還將經由突發(fā)讀訪問從0111中被讀取。具體而言,當執(zhí)行突發(fā)讀操作時,每一差拍的數據將通過寫/讀訪問單元35讀取并且被轉發(fā)至譯碼器60。通常,每一芯片將在每一差拍期間被訪問,并且數據單元(例如,1個字節(jié)數據或四位字數據)將通過與每一芯片關聯的數據信道被提供至寫/讀訪問單元35,該數據將從寫/讀訪問單元35經由路徑55被傳送至譯碼器60。[0043]讀取數據最初被傳送至伴隨式譯碼器65,該伴隨式譯碼器65被布置為根據數據符號及關聯的ECC符號確定伴隨式信息。伴隨式譯碼器通過分析與突發(fā)讀訪問相關聯的全部讀取符號(數據符號及ECC符號兩者)來生成伴隨式信息。具體而言,伴隨式譯碼器將這些讀取符號除以生成多項式,該生成多項式用來在編碼器10內產生ECC符號。若結果為零,則未檢測到錯誤,且通過路徑67輸出的數據可在無任何修改的情況下從修復電路70經由路徑75被傳播出去。然而,若結果為非零,則將所得的伴隨式信息與路徑67上的數據通過路徑69 —起發(fā)送,以供修復電路70用于試圖定位及校正含有錯誤的任何讀取符號。
[0044]以下將更詳細地討論修復電路70的操作,然而實質上,修復電路70試圖使用伴隨式信息作為輸入來求解錯誤位置多項式。若求解了錯誤定位多項式,則通過確定所求解的錯誤位置多項式的根來識別含有錯誤的每個讀取符號。所識別的根及伴隨式信息隨后可用來確定已經識別為有錯誤的讀取符號的校正值。
[0045]首先,修復電路必須假定含有錯誤的讀取符號是隨機分布在突發(fā)讀訪問的多個讀取符號中。假定在突發(fā)讀操作期間從DIMM40讀取了 m個ECC符號,則在假定存在至多m/2個符號有錯誤的情況下,修復電路將能求解錯誤位置多項式。
[0046]錯誤位置追蹤器85通過路徑80接收關于由修復電路識別為含有錯誤的符號的位置信息。具體而言,錯誤位置追蹤器85監(jiān)控芯片42、44、46、48、50中的哪個芯片已輸出帶有錯誤的符號。若錯誤模式指示已達到錯誤閾值條件,則錯誤位置追蹤器85將至少一個芯片設置為擦除存儲器區(qū)域,且該擦除存儲器區(qū)域信息通過路徑90被輸出至修復電路以供在后續(xù)突發(fā)讀操作期間使用。具體而言,一旦芯片被設置為擦除存儲器區(qū)域,則修復區(qū)域隨后將該芯片的每個讀取符號視為含有錯誤的定位讀取符號。因此,含有錯誤的讀取符號的分布不再視為完全隨機,這允許了含有錯誤的讀取符號數量的增大,而仍使得通過修復電路70執(zhí)行的糾錯過程能夠識別且校正這些錯誤。假定全部這些符號都在設置為擦除存儲器區(qū)域的特定芯片(或多個芯片)內,則此方式最多允許修復電路定位且校正多達m個含有錯誤的符號(即,校正與在突發(fā)讀操作中的ECC符號相同數量的符號)。
[0047]圖2根據一個實施例更詳細地示出了設置于伴隨式譯碼器65及修復電路70內的組件。伴隨式譯碼器65包括分離器區(qū)塊100,該分離器區(qū)塊100通過路徑67將數據符號傳送至修復電路70內的緩沖器110,且還將數據及關聯的ECC符號兩者路由至伴隨式譯碼區(qū)塊105,該伴隨式譯碼區(qū)塊105用來產生通過路徑69輸出的伴隨式信息。若伴隨式信息為非零,則將使修復電路70內的錯誤位置及量值計算區(qū)塊115執(zhí)行上述討論的試圖求解錯誤位置多項式的過程,一旦求解了,隨后確定所求解的錯誤位置多項式的根以識別含有錯誤的每個讀取符號。另外,錯誤位置及量值計算區(qū)塊115將確定對于定位讀取符號的校正值,且通過路徑117輸出作為修復模板(mask)的該信息。修復模板是具有與存儲在緩沖器110內的讀訪問的數據相同大小的向量。此向量在對應于錯誤的位置中包含非零值,而其他所有位置包含零。合并區(qū)塊120隨后通過路徑117接收修復模板及通過路徑112接收來自緩沖器110的數據兩者,且通過使用伽羅瓦域加法器(實施XOR函數)將接收到的數據添加至修復模板來校正所接收到的數據中的錯誤。這會生成通過路徑75輸出的校正數據。
[0048]圖3為根據一個實施例示出了在圖1的設備執(zhí)行突發(fā)讀操作時該設備執(zhí)行的步驟的流程圖。首先,在步驟200,突發(fā)讀操作的每個差拍的數據符號及關聯的ECC符號被讀取且被提供至伴隨式譯碼器65以使得伴隨式譯碼器能夠確定伴隨式信息。此后,在步驟205,伴隨式信息被輸出至修復電路70。在步驟210,修復電路70確定是否已設置了擦除條件,即,錯誤位置追蹤器是否已通過路徑90提供了任意設置的擦除存儲器區(qū)域信息。若否,貝0過程進行至步驟215,其中修復電路迭代地試圖通過替換可調整參數來求解錯誤位置多項式。
[0049]存在很多可以求解錯誤位置多項式的方式。一種已知方式是使用伯利坎普一梅西算法,該算法由于其對硬件資源的有效利用(例如,與歐幾里德(£11(3111 8)算法相比)而經常被使用。該算法迭代地試圖通過求解一個接一個的方程式并更新錯誤位置多項式來求解錯誤位置多項式。若對于給定步驟該算法無法求解出方程式,則該算法計算錯誤且衡量該錯誤,增加錯誤多項式的大小并執(zhí)行另一迭代。假定提供了 III個2(1:符號,則需要最多III次迭代。對于2個符號錯誤,算法給出具有2個系數的多項式。然而,在沒有設置擦除條件的情況下,若2大于0/2,則將無法求解錯誤位置多項式,且數據將不可校正。
[0050]因此,在步驟225,確定是否求解了錯誤位置多項式,若否,則過程進行至步驟230,其中數據標記為不可校正的,隨后,過程結束于步驟235。
[0051]然而,假定求解了錯誤位置多項式,則過程進行至步驟240,其中計算錯誤位置多項式的根以識別含有錯誤的符號的位置。用于求解根的最常用方法為陳氏尋根法((63116=8681-0^, 08).這是對可能符號的窮舉搜索,這些符號一個接一個地代入至錯誤多項式內。若結果為零,則候選符號為根。
[0052]在步驟240后,過程進行至步驟245,計算錯誤量值,且據此產生校正的數據。在步驟240計算的根界定含有錯誤的符號位置但不界定錯誤的量值。根可與伴隨式一起使用以獲得實際錯誤值。這可使用例如?011167算法進行。
[0053]一旦已應用算法,就會產生錯誤向量,在本文也稱為修復模板。錯誤向量在對應于錯誤的位置中含有非零值,而其他所有位置含有零。如先前參閱圖2所描述的,合并區(qū)塊120使用伽羅瓦域加法器(使用乂01?函數實施)將從緩沖器110接收的數據與錯誤向量合并,并從伽羅瓦域加法器輸出為原始碼字(即,被寫入01麗40的原始數據)的譯碼器估計。在步驟245后,過程結束于步驟235。[0054]根據上述圖1的實施例,錯誤位置追蹤器85執(zhí)行與由修復電路70執(zhí)行的步驟245并行的步驟250。在步驟250,錯誤位置追蹤器85記錄每個存儲器區(qū)域(即,圖1實施例中的每個芯片,其中每個芯片形成單獨的存儲器區(qū)域)的錯誤符號的數量,且隨后在步驟255確定是否已達到擦除閾值條件,該擦除閾值條件指示至少一個存儲器區(qū)域應被設置為擦除存儲器區(qū)域??赡艿腻e誤閾值條件的討論將在下文中參閱圖5八、圖58、圖6八、圖68及圖6(:來提供。若檢測到錯誤閾值條件,則過程進行至步驟260,為所識別的存儲器區(qū)域設置擦除條件,隨后過程結束于步驟235。然而,若在步驟255確定未檢測到錯誤閾值條件,則過程直接進行至步驟235。
[0055]一旦已設置擦除條件,則對于后續(xù)突發(fā)讀操作,在步驟210將檢測到對于該擦除條件的設置,且過程將分支到步驟220。在步驟220,用于錯誤位置多項式的至少一些可調整參數的值將基于為其設置了擦除條件的存儲器區(qū)域(或多個存儲器區(qū)域)來固定。具體而言,來自擦除存儲器區(qū)域的全部讀取符號被視為含有錯誤的定位讀取符號,在本文稱為擦除位置。這些擦除位置被獲取為擦除位置多項式(其中擦除位置形成該多項式的根隨后,該擦除位置多項式在修復過程開始時被裝載至伯利坎普-梅西(Berlekamp-Massey)位置多項式存儲內。之后,過程進行至步驟215。
[0056]在經由步驟220進行至步驟215后,增加了求解錯誤位置多項式的可能性,因為某些參數將具有固定值。另外,由于已在步驟220設置的固定值,因而在此時并行而非順序地執(zhí)行一些迭代是可能的。
[0057]應了解的是,一旦設置了擦除條件,全部符號錯誤被隨機定位的情況就不再存在。若隨機定位錯誤的數量由變量P表示,已知位置的符號錯誤(即,擦除存儲器區(qū)域內的符號)的數量由變量q表示,之后提供m個ECC符號,則m、p與q之間的關系如下:
[0058]m = 2p+q。
[0059]因此,可以理解的是,當未設置擦除存儲器區(qū)域時,q = O且可校正最大數量的錯誤,即P為m/2。然而,一旦設置了擦除存儲器區(qū)域,則可校正的錯誤的總體數量會增加。當擦除存儲器區(qū)域含有m個讀取符號,S卩,q = m時,出現可校正的錯誤的最大數量。在此情況下,可校正全部m個這些符號,但無法校正隨機定位錯誤,即,P = O。
[0060]DIMM40內的芯片42、44、46、48、50可采用各種形式。圖4A示出了一個實例,其中每個芯片300為8位DRAM芯片,意指在突發(fā)訪問操作的每個差拍期間通過關聯的字節(jié)信道315訪問的數據包括八位(即,I字節(jié))的數據。存儲陣列為了允許在突發(fā)寫轉移的每個差拍將八位數據寫入存儲陣列內,或允許在突發(fā)讀操作的每個差拍期間從存儲陣列305讀取出八位數據,數據將被存儲在存儲陣列305內并經由多路布置310被訪問。因此一系列字帶320、322、324、326可在突發(fā)寫操作的差拍期間經由字節(jié)信道315被存儲至芯片300內,且隨后相應的數據可在突發(fā)讀操作的差拍期間讀取。
[0061]圖4B示出了類似的布置,但在此實例中,芯片350為具有存儲陣列355及關聯的多路選擇器360的4位DRAM芯片。在突發(fā)訪問的每個差拍期間,4位數據塊(稱為四位字)可通過關聯的四位字信道365輸入或輸出,且因此通過四位字370、372、374、376所示的,四位字可在突發(fā)寫操作的每個差拍期間被寫入或在突發(fā)讀操作的每個差拍期間讀取。
[0062]圖5A根據一個實施例示出了可使用的符號映射(symbol map) 400。在此實施例中,假定DI麗含有九個8位DRAM芯片300,芯片I至芯片8用來存儲數據,芯片O用來存儲ECC碼。因此,這九個8位DRAM芯片為DMM提供了 72位DRAM接口。在此實例中,假定突發(fā)訪問為8差拍突發(fā)訪問,從而在每個差拍期間,每個芯片內的I字節(jié)數據將被訪問。在此實例中,還假定每一符號是由在單個差拍內從每個芯片訪問的數據的基本單位形成的,因此每個方塊405表示一個符號。因此,在此實例中,在突發(fā)讀操作期間,可以看出,64個字節(jié)數據將與8字節(jié)ECC碼(形成為八個ECC符號)一起被存取。由上述討論顯而易見的是,若假定含有錯誤的符號在符號映射400內隨機分布,則使用八個ECC符號能夠校正符號的最大數量為四。
[0063]圖5B示出了可使錯誤閾值條件達到的示例性情況。在此實例中,假定已定位四個錯誤(即,在假定符號錯誤隨機分布的情況下可定位及校正的最大數量)。然而,在此實例中,所有這四個錯誤都在相同的芯片內,即在芯片6內(字母X用來表示含有錯誤的符號)。在一個實施例中,一旦檢測到與芯片6相關聯的字節(jié)信道存儲器存在四個錯誤,錯誤位置追蹤器85就將芯片6設置為擦除存儲器區(qū)域。此后,在后續(xù)讀操作期間,糾錯電路將芯片6內的全部八個符號視為錯誤的,且因為這些位置將全部已知,故隨后能夠校正全部八個符號。在此實施例中,一旦將芯片中的一個設置為擦除存儲器區(qū)域,則(1=8且15=0。因此,雖然可校正芯片6內的全部八個符號,但是不可容許其他的隨機分布錯誤。
[0064]此方式是很有用的,因為已發(fā)現,在01麗中常有下列情況:一個芯片在其他芯片故障之前發(fā)生故障,從而很可能認為錯誤將累積在單個芯片內。上述方式使得系統能夠繼續(xù)校正故障芯片內的錯誤,從而有時間呼叫工程師以替換該芯片,并隨后清除擦除存儲器條件。
[0065]圖6八示出了替代的符號映射450,其中十八個4位0狀1芯片被提供以存儲數據及 碼,此外訪問是利用八個差拍的突發(fā)來執(zhí)行的。在此實施例中,芯片0及芯片1兩者用
來存儲2(1:碼,而剩余芯片用來存儲數據。由于芯片為4位0狀1芯片,故0111仍提供了 72位0狀1接口,因此在每個差拍期間72位數據及2(1:碼被訪問。在此實例中,符號仍視為包含八位,具體而言,每個讀取符號由在連續(xù)差拍內通過相同四位字信道輸出的兩個四位字形成。因此,每個矩形方塊455表示一個符號。正如圖5八的實例,在突發(fā)讀操作的八個差拍的過程中接收八個符號。如現在將參閱圖68及圖6(:描述的,此方式使得能夠容納多達兩個故障芯片。
[0066]具體而言,考慮圖68,其示出了已發(fā)現四個符號含有錯誤的情況,此為可容許的隨機分布錯誤符號的最大數量。然而,應注意的是,兩個錯誤在一個芯片內,即在芯片3內。在一個實施例中,通過錯誤位置追蹤器85對該錯誤模式的檢測可用來確定擦除條件的存在,以使芯片3被設置為擦除存儲器區(qū)域。此后,在后續(xù)讀操作期間,與芯片3相關聯的全部四個符號將假定為錯誤的??紤]前述方程式111=21)+(1可知,給定八個符號的情況,從而(1為4,?為2。因此,芯片3中可校正多達全部四個符號中的錯誤,同時仍能夠校正兩個隨機定位符號錯誤。
[0067]現在考慮圖60,這表明了可使第二芯片被添加至擦除存儲器區(qū)域的錯誤的模式。問題標記符號與芯片3的符號關聯使用,因為芯片3已設置為擦除存儲器區(qū)域,所以在此時這些符號是否實際上產生錯誤并不重要,因為在任何情況下芯片3中的每個符號都視為是錯誤的。除芯片3的四個符號外,已定位了兩個其他錯誤,并且確定兩個這樣的錯誤在芯片8內。此時,錯誤位置追蹤器85可另外將芯片8設置為在擦除存儲器區(qū)域內,以使得對于后續(xù)讀取操作,芯片3內的全部四個符號及芯片8內的全部四個符號將假定為錯誤的??紤]之前的方程式111=21)+(1, ^現在等于8,且?為0。因此,可校正芯片3及芯片8內的全部八個符號,但無法容許其他的隨機分布符號錯誤。
[0068]如上述圖5八及圖58討論的方式,這樣的方式在0111內是很有用的,因為常有個別芯片發(fā)生故障的情況,且該方式使得當這些芯片中多達兩個芯片發(fā)生故障時仍能夠校正這些故障芯片中的錯誤,使得工程師有時間替換這些芯片且清除擦除條件。
[0069]雖然在上述圖5及圖6的實例中,假定了一確定所描述的錯誤模式就設置擦除存儲器區(qū)域,但是在替代實施例中,錯誤位置追蹤器85可保持檢測到的錯誤位置的歷史記錄,而不是一檢測到符合的模式就立即設置擦除存儲器區(qū)域。舉例而言,考慮圖68,錯誤位置追蹤器85可以不在第一次檢測到該模式就設置擦除存儲器區(qū)域,而是如果在若干讀訪問中有規(guī)律地檢測到四個錯誤且至少兩個錯誤是經常發(fā)現于芯片3內,則可決定將芯片3設置為擦除存儲器區(qū)域。
[0070]在一個實施例中,一旦已設置擦除存儲器區(qū)域,則保持設置直至由工程師清除掉(例如替換故障芯片)。然而,另一個選擇是錯誤位置追蹤器85繼續(xù)保存錯誤位置的日志,如果在若干讀取操作之后發(fā)現在標記為擦除存儲器區(qū)域的特定芯片內錯誤數量未增加或事實上減少,則這可用來確定清除該芯片為擦除存儲器區(qū)域是合適的。再考慮圖6B的實例,例如有可能的是,在芯片3內識別的兩個符號錯誤結果是瞬時錯誤且不表示芯片3開始發(fā)生故障。若為該情況,則在將芯片3設置為擦除存儲器區(qū)域后,將會看到,芯片3內的符號錯誤的總體數量不增加且實際上甚至可能下降。
[0071]上述實施例在其中錯誤趨于積累在特定存儲器區(qū)域內的存儲器裝置內提供了顯著改進的可操作性。具體而言,根據所述實施例,當已達到校正的界限(基于隨機定位符號錯誤的假定)時,且其中檢測到某些數量的錯誤符號在(與特定存儲器區(qū)域相關聯的)共同的數據信道內,則該存儲器區(qū)域被視為已經發(fā)生故障,從而被設置為擦除存儲器區(qū)域。這擴展了糾錯電路的校正能力,從而在存儲器區(qū)域向該存儲器區(qū)域的總體故障惡化時允許系統繼續(xù)操作。在包含多個DRAM芯片的DIMM的特定實施例中,這提高了在給定數量的ECC符號的情況下對總體芯片故障的容忍度。
[0072]盡管本文已描述特定實施例,但應了解的是,本發(fā)明未受限于這些特定實施例,且可在本發(fā)明的范圍內對本發(fā)明進行很多修改及添加。舉例而言,在不脫離本發(fā)明范圍的情況下,可對從屬權利要求的特征與獨立權利要求的特征進行各種組合。
【權利要求】
1.一種設備,包括: 存儲器裝置,包含多個存儲器區(qū)域并且被配置為存儲數據符號及關聯的糾錯碼ECC符號; 讀取電路,被配置為執(zhí)行讀操作以從所述存儲器裝置中輸出多個讀取符號,所述讀取符號包含η個數據符號及關聯的m個糾錯碼符號,以及包含來自每個存儲器區(qū)域的多于一個讀取符號,η及m兩者都為大于I的整數值; 伴隨式譯碼器,被配置為根據所述η個數據符號及關聯的m個糾錯碼符號確定伴隨式信息; 糾錯電路,被配置為響應于指示至少一個讀取符號中存在錯誤的所述伴隨式信息,執(zhí)行糾錯過程來試圖定位每個含有錯誤的讀取符號并校正這些定位讀取符號中的每一個中的錯誤,如果含有錯誤的讀取符號隨機分布于所述多個讀取符號中,則所述糾錯電路被配置為:如果所述多個讀取符號中含有錯誤的讀取符號不多于PMAX,使用所述糾錯過程來定位且校正這些錯誤;以及 錯誤追蹤電路,被配置為追蹤含有錯誤的所述定位讀取符號來源于哪些存儲器區(qū)域,并且在檢測到達到錯誤閾值條件時,將來自所述多個存儲器區(qū)域的至少一個存儲器區(qū)域設置為擦除存儲器區(qū)域; 所述糾錯電路響應于由所述錯誤追蹤電路設置的擦除存儲器區(qū)域,將來自所述擦除存儲器區(qū)域的每個讀取符號視為含有錯誤的定位讀取符號,從而使得當執(zhí)行所述糾錯過程時,并非所有的待定位的所述讀取符號都是隨機分布的,并且如果所述多個讀取符號的不多于X個讀取符號含有錯誤,則所述糾錯電路被配置為定位及校正所述錯誤,其中X大于PMAX0
2.如權利要求1所述的設備,其中: 如果所述擦除存儲器區(qū)域中的讀取符號的總數為q,則所述糾錯電路被配置為校正在來自所述擦除存儲器區(qū)域的所有q個讀取符號中的錯誤,另外,校正在未設置為所述擦除存儲器區(qū)域的任意存儲器區(qū)域中的多達P個讀取符號中的錯誤,其中:
P= (m — q)/2, 其中m大于或等于q,P及q為大于或等于O的整數值。
3.如權利要求1所述的設備,其中PMAX等于m/2。
4.如權利要求1所述的設備,其中X的最大值QMAX為m。
5.如權利要求3所述的設備,其中: 在所述讀操作期間,由所述讀取電路輸出的所述多個讀取符號包含來自每個存儲器區(qū)域的多于PMAX個讀取符號。
6.如權利要求1所述的設備,其中所述讀操作為包含多個差拍的突發(fā)讀操作,且每個存儲器區(qū)域在每個差拍期間被訪問。
7.如權利要求6所述的設備,其中在所述多個讀取符號中存在至少與存在于所述突發(fā)讀操作中的差拍一樣多的糾錯碼符號。
8.如權利要求7所述的設備,其中所述突發(fā)讀操作中存在m個差拍。
9.如權利要求1所述的設備,其中所述存儲器裝置包含多個存儲器芯片,每個存儲器芯片形成所述多個存儲器區(qū)域中的一個存儲器區(qū)域。
10.如權利要求9所述的設備,其中: 所述存儲器裝置包含雙列存儲器模塊01麗; 每個存儲器芯片具有關聯的數據信道;以及 所述讀操作為包含多個差拍的突發(fā)讀操作,在每個差拍期間從每個存儲器芯片經由與其關聯的數據信道讀取至少一個數據單元。
11.如權利要求10所述的設備,其中所述數據單元為一個字節(jié)或者一個四位字。
12.如權利要求11所述的設備,其中在每個差拍期間,每個存儲器芯片輸出一個字節(jié),并且每個讀取符號包含所述字節(jié)中的一個。
13.如權利要求11所述的設備,其中在每個差拍期間,每個存儲器芯片輸出一個四位字,且每個讀取符號由在連續(xù)差拍內的通過相同數據信道輸出的兩個四位字形成。
14.如權利要求1所述的設備,其中所述讀取符號形成里德所羅門碼。
15.如權利要求1所述的設備,其中所述錯誤追蹤電路被配置為至少基于以下指示來確定是否檢測到所述錯誤閾值條件,所述指示為:對于當前讀操作,含有錯誤的定位讀取符號來源于哪些存儲器區(qū)域。
16.如權利要求15所述的設備,其中所述錯誤追蹤電路被配置為保存對于若干先前讀操作含有錯誤的定位讀取符號來源于哪些存儲器區(qū)域的歷史記錄,并還被配置為在確定是否檢測到所述錯誤閾值條件時參考所述歷史記錄。
17.如權利要求1所述的設備,其中一旦已設置所述擦除存儲器區(qū)域,所述錯誤追蹤電路就被配置為保存設置的擦除存儲器區(qū)域直至執(zhí)行重置操作。
18.如權利要求1所述的設備,其中由所述糾錯電路執(zhí)行的所述糾錯過程包含: 試圖使用所述伴隨式信息作為輸入來求解錯誤位置多項式; 0若在所述步驟匕)求解出所述錯誤位置多項式,則通過確定求解的錯誤位置多項式的根來識別含有錯誤的每個讀取符號;以及 0?使用所述根及所述伴隨式信息來確定在所述步驟6)識別的所述讀取符號的校正值。
19.如權利要求18所述的設備,其中所述錯誤位置多項式具有多個參數,所述多個參數在試圖求解所述錯誤位置多項式的步驟匕)期間變化,并且如果設置了所述擦除存儲器區(qū)域,則所述糾錯電路被配置為固定對于所述多個參數的至少一個子集的值,所固定的值取決于設置為所述擦除存儲器區(qū)域的至少一個存儲器區(qū)域。
20.一種校正從存儲器裝置訪問的數據中的錯誤的方法,所述存儲器裝置包含多個存儲器區(qū)域,并且被配置為存儲數據符號及關聯的糾錯碼符號,所述方法包含以下步驟: 執(zhí)行讀操作以從所述存儲器裝置中輸出多個讀取符號,所述讀取符號包含II個數據符號及關聯的砠個糾錯碼符號,并包含來自每個存儲器區(qū)域的多于一個讀取符號,II及砠兩者都為大于1的整數值; 根據所述II個數據符號及關聯的砠個糾錯碼符號確定伴隨式信息; 響應于指示至少一個讀取符號存在錯誤的所述伴隨式信息,執(zhí)行糾錯過程以試圖定位含有錯誤的每個讀取符號并校正這些定位讀取符號中的每一個定位讀取符號的錯誤,若含有錯誤的讀取符號隨機分布在所述多個讀取符號中,并且如果所述多個讀取符號中含有錯誤的讀取符號不多于?心^,則所述糾錯過程定位并校正這些錯誤;追蹤含有錯誤的定位讀取符號來源于哪些存儲器區(qū)域,且在檢測到達到錯誤閾值條件時,將所述多個存儲器區(qū)域的至少一個存儲器區(qū)域設置為擦除存儲器區(qū)域;以及 響應于由所述錯誤追蹤電路設置的擦除存儲器區(qū)域,將來自所述擦除存儲器區(qū)域中的每個讀取符號視為含有錯誤的定位讀取符號,從而使得當隨后執(zhí)行所述糾錯過程時,并非所有的待定位的讀取符號都是隨機分布的,并且如果所述多個讀取符號中的不多于X個讀取符號含有錯誤,則所述糾錯過程定位并校正錯誤,其中X大于PMAX。
21.—種設備,包含: 存儲器器件,用于存儲數據符號及關聯的糾錯碼符號,該存儲器器件包含多個存儲器區(qū)域; 讀取器件,用于執(zhí)行讀操作以從所述存儲器器件中輸出多個讀取符號,所述多個讀取符號包含η個數據符號及關聯的m個糾錯碼符號,并包含來自每個存儲器區(qū)域的多于一個讀取符號,η及m兩者都為大于I的整數值; 伴隨式譯碼器器件,用于根據所述η個數據符號及關聯的m個糾錯碼符號確定伴隨式信息; 糾錯器件,響應于指示至少一個讀取符號存在錯誤的所述伴隨式信息,用于執(zhí)行糾錯過程來試圖定位含有錯誤的每個讀取符號且校正這些定位讀取符號中的每一個定位讀取符號的錯誤,若含有錯誤的讀取符號隨機分布在所述多個讀取符號中,并且如果所述多個讀取符號中的不多于PMAX個讀取符號含有錯誤,則所述糾錯器件使用所述糾錯過程來定位及更正這些錯誤;以及 錯誤追蹤器件,用于追蹤含有錯誤的定位讀取符號來源于哪些存儲器區(qū)域,且在檢測到達到錯誤閾值條件時,用于將所述多個存儲器區(qū)域中的至少一個存儲器區(qū)域設置為擦除存儲器區(qū)域; 糾錯器件,響應于由所述錯誤追蹤器件設置的擦除存儲器區(qū)域,用于將來自所述擦除存儲器區(qū)域的每個讀取符號視為含有錯誤的定位讀取符號,以使得當執(zhí)行所述糾錯過程時,并非所有的待定位的讀取符號都是隨機分布的,并且如果所述多個讀取符號中的不多于X個讀取符號含有錯誤,則所述糾錯器件定位并校正錯誤,其中X大于PMAX。
【文檔編號】G11C29/42GK103839595SQ201310581828
【公開日】2014年6月4日 申請日期:2013年11月19日 優(yōu)先權日:2012年11月20日
【發(fā)明者】邁克爾·安德魯·坎貝爾, 蒂莫西·尼古拉斯·海 申請人:Arm 有限公司