TWI500039B - 輸出經錯誤校正碼校正之位元之資訊 - Google Patents
輸出經錯誤校正碼校正之位元之資訊 Download PDFInfo
- Publication number
- TWI500039B TWI500039B TW101143909A TW101143909A TWI500039B TW I500039 B TWI500039 B TW I500039B TW 101143909 A TW101143909 A TW 101143909A TW 101143909 A TW101143909 A TW 101143909A TW I500039 B TWI500039 B TW I500039B
- Authority
- TW
- Taiwan
- Prior art keywords
- ecc
- error correction
- memory device
- data
- information
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
- G06F11/1084—Degraded mode, e.g. caused by single or multiple storage removals or disk failures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding 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/1048—Adding 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/349—Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/44—Indication or identification of errors, e.g. for repair
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0409—Online test
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0411—Online error correction
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
- Detection And Correction Of Errors (AREA)
Description
本發明是有關於包括錯誤校正碼(ECC)邏輯之記憶體裝置及系統。
用於積體電路記憶體之記憶體技術逐漸發展越來越小的技術節點,且逐漸部署在單一積體電路上之越來越大的記憶體陣列。當關於記憶體單元之技術發展時,用於感測資料之容限(margin)會變得更嚴格。又,記憶體單元保留以記憶體單元狀態之擾動(由記憶體單元及鄰近記憶體單元高速及高容積存取所導致的)的形式存在的資料數值之能力,可能受限於更嚴格的容限。
為了處理像那些起因於更嚴格的容限及記憶體單元擾動之關鍵問題,當這些技術按大小及密度之縮放時,嵌入於積體電路記憶體之錯誤校正碼(ECC)之使用已變得更普及。除了校正一記憶體裝置中之錯誤記憶體位元以外,可能在校正之過程中產生之ECC資訊可能用於記憶體管理功能。記憶體管理功能可包括故障區塊管理(bad block management)、重新映射(re-mapping)、更新(refreshing)以及耗損均衡(wear leveling)。
舉例而言,一記憶體控制器可根據是否針對關於此頁之ECC資訊來更新記憶體裝置中之某一頁來作出決定。然而,當校正錯誤記憶體位元之ECC邏輯被嵌入至積體電路記憶體中時,積體電路記憶體外部之記憶體控制器並不容
易取得ECC資訊。經錯誤校正碼ECC校正之資料僅並不包括ECC資訊,例如哪個位元已被校正或多少位元已被校正。因此,在只有經錯誤校正碼ECC校正之資料被提供給記憶體控制器之環境中,無法取得關於可被使用在記憶體管理功能中之錯誤校正碼ECC之使用所需要的資訊。
理想上是可提供一種解決方法以提供ECC資訊給積體電路記憶體外部之一記憶體控制器,以使記憶體控制器可執行具有需要的ECC資訊之記憶體管理功能。
本發明提供一種記憶體裝置之操作方法,記憶體裝置儲存關於對應資料之錯誤校正碼ECC,並包括ECC邏輯以藉由使用錯誤校正碼ECC來校正錯誤。此方法包括藉由使用錯誤校正碼ECC而校正記憶體裝置上之資料,並產生記憶體裝置上的ECC資訊,ECC資訊關於錯誤校正碼ECC。此方法因應於從記憶體裝置外部之一過程而在一輸入埠上被接收之一命令,在裝置之一輸出埠上提供ECC資訊。本發明亦提供一種記憶體裝置之控制方法。此方法包括傳送一命令至請求對應於記憶體裝置中之資料之ECC資訊之記憶體裝置,並因應於此命令接收來自記憶體裝置之ECC資訊。此方法包括藉由使用ECC資訊來執行一記憶體管理功能。
本發明之其他實施樣態及優點可在圖式、詳細說明與以下之申請專利範圍之檢閱時被看到。
參考第1-9圖提供本發明之實施例之詳細說明。
如於本申請案所使用的,一位元係為記憶體陣列中之數位資料之基本單位。一位元可能只具有兩個可能的數值:數位一(1)或零(0)。一位元組係為記憶體陣列中之數位資料之一單位。一位元組可包括多重之位元,例如8個位元。一個字係為記憶體陣列中之數位資料之一單位。一個字可包括多重之位元組,例如對應於32位元或64位元之4個位元組或8個位元組,如果一位元組具有8個位元的話。一頁係為資料之基本組,其儲存於記憶體陣列中,記憶體陣列被配置成因應於單一讀取命令而被讀取。一頁可具有一固定大小,例如2,112個位元組,於此每個位元組具有8個位元。一區塊係為儲存於記憶體陣列之一區段或段中的一組資料,於此區塊可能是一頁、多頁或其他大小之資料。此區塊可具有依據被應用之記憶體管理過程,而非依據因應於單一讀取命令來讀取資料之大小所選擇之大小。
第1圖係為顯示依據習知技術之一記憶體裝置120外部之一主機系統110之簡化圖。記憶體裝置120儲存關於對應資料之錯誤校正碼ECC,並包括ECC邏輯以藉由使用錯誤校正碼ECC來校正錯誤。主機系統110包括使用一命令集(例如向記憶體裝置120請求經錯誤校正碼ECC校正之資料之一讀取命令130)之程式或其他邏輯。記憶體裝置120因應於讀取命令130提供經錯誤校正碼ECC校正之資料140給主機系統110。然而,主機系統110並未要求,
且記憶體裝置120並未提供可能在藉由記憶體裝置120內部之ECC邏輯來校正錯誤位元之過程中所產生之ECC資訊。因此,主機系統110並不能夠使用ECC資訊以藉由使用ECC資訊來執行記憶體管理功能,例如故障區塊管理、重新映射、更新以及耗損均衡。
第2圖係為顯示如於此所說明的一記憶體裝置222外部之一主機系統212之簡化圖。記憶體裝置222儲存關於對應資料之錯誤校正碼ECC,並包括ECC邏輯以藉由使用錯誤校正碼ECC來校正錯誤。主機系統212包括程式或其他邏輯,其使用一擴充命令集,例如向記憶體裝置222要求經錯誤校正碼ECC校正之資料之在附圖中標示為"ECC讀取"之命令232連同例如被讀取資料中的校正的錯誤之數目之一計數之ECC資訊。記憶體裝置222因應於命令232提供經錯誤校正碼ECC校正之資料242連同請求的ECC資訊給主機系統212。因此,主機系統212係使吾人能使用ECC資訊,以藉由使用ECC資訊來執行記憶體管理功能,例如故障區塊管理、重新映射、更新以及耗損均衡。為了支援這個擴充命令集,記憶體裝置222包括邏輯以監視ECC邏輯功能並搜集待被主機使用之ECC資訊(例如錯誤計數或其他統計)。
可藉由監視ECC邏輯而被搜集之錯誤校正碼ECC統計之例子包括在對應資料中之ECC偵測的單一位元錯誤之計數、ECC偵測的多位元錯誤之計數、ECC偵測的卡住位元(stuck bit)錯誤之計數、偵測的重複錯誤之計數、ECC偵測的非重複錯誤之計數、ECC偵測的列故障之計數以及
ECC偵測的行故障之計數。ECC統計可包括在對應資料中之ECC校正的單一位元錯誤之計數、ECC校正的多位元錯誤之計數、ECC校正的重複錯誤之計數、ECC校正的非重複錯誤之計數、藉由ECC不可校正之錯誤之計數。
記憶體裝置222上之ECC邏輯可支援任何適當的ECC機制。代表的ECC機制包括漢明碼、擴充漢明碼、多維度奇偶檢查碼、里德所羅門碼(Reed-Solomon code)、BCH碼(Bose-Chaudhuri-Hocquenghem)、渦輪碼以及低密度奇偶檢查碼。與一特定資料集相關的錯誤校正碼ECC之長度取決於3個因素:(1)ECC機制;(2)最大的校正位元數目;(3)一頁之資料長度。BCH碼係為可以校正多重位元錯誤之循環之一類的錯誤校正碼。舉例而言,為了提供在8千位元之資料之一頁中之40位元之最大的校正位元數目,BCH ECC碼之長度係為560位元。關於另一例子,為了提供在8千位元頁中之24位元之最大的校正位元數目,BCH ECC碼之長度係為336位元。
第3圖係為顯示一記憶體裝置222外部之一主機系統212(像第2圖中之那些)之簡化圖,且於其中相同的元件具有相同的參考數字且不再說明。命令332可請求ECC資訊342,而記憶體裝置222可提供不具有對應的經ECC校正之資料之ECC資訊342。
第4圖係為顯示與提供ECC資訊相關的一記憶體裝置之操作方法之流程圖。此流程圖顯示由與提供ECC資訊相關的記憶體裝置所執行之步驟。記憶體裝置儲存關於對應資料之錯誤校正碼ECC並包括ECC邏輯以藉由使用錯
誤校正碼ECC來校正錯誤。一第一步驟包括接收來自記憶體裝置(410)外部之一過程之在一輸入埠上被接收之一命令。一第二步驟包括藉由使用錯誤校正碼ECC而校正記憶體裝置(420)上之資料。此資料可能藉由被記憶體裝置所接收與一隨機讀取中之命令協調之位址,或藉由在一序列讀取中由一位址計數器所產生之位址而被定址。一第三步驟包括產生關於錯誤校正碼ECC之使用之在記憶體裝置上的資訊(430)。第二步驟包括校正資料,而包括產生ECC資訊之第三步驟可能因應於此命令被執行。一第四步驟包括因應於來自記憶體裝置(440)外部之一過程而在一輸入埠上被接收之命令,提供在記憶體裝置之一輸出埠上之ECC資訊。此命令請求由對應於資料之ECC邏輯所產生之ECC資訊。如果命令請求除了ECC資訊以外之經錯誤校正碼ECC校正之資料,則一第五步驟包括提供經錯誤校正碼ECC校正之資料(450)。
錯誤校正碼ECC係與資料之對應的ECC頁相關,且關於錯誤校正碼ECC之使用之資訊包括藉由使用錯誤校正碼ECC而為一對應的ECC頁所校正之位元數之一計數。
此命令可能是一讀取命令,用於讀取與至少一錯誤校正碼ECC(用於偵測並校正資料之區塊中的錯誤)相關的資料之一區塊。此命令可能是一讀取命令,用於讀取每個與至少一錯誤校正碼ECC(用於偵測並校正在資料之相關區塊中的錯誤)相關的多重區塊資料。
ECC資訊可包括關於來自藉由使用錯誤校正碼ECC
對對應資料執行ECC邏輯之結果的ECC統計。ECC統計之例子係結合第2圖被說明。ECC資訊可能儲存於記憶體裝置上之一暫存器。命令可能是一讀取命令,用於讀取儲存於暫存器中之ECC資訊。
第5圖係為顯示與接收ECC資訊相關的記憶體之控制方法之流程圖。一第一步驟包括傳送一命令至一記憶體裝置,其請求對應於記憶體裝置中之資料之ECC資訊(510)。記憶體裝置儲存關於對應資料之錯誤校正碼ECC,並包括ECC邏輯以藉由使用錯誤校正碼ECC來校正錯誤。命令可請求除了ECC資訊以外之經錯誤校正碼ECC校正之資料。一第二步驟包括因應於此命令接收來自記憶體裝置之ECC資訊(520)。如果命令請求經錯誤校正碼ECC校正之資料,則一第三步驟包括接收除了ECC資訊以外之經錯誤校正碼ECC校正之資料(530)。一第四步驟包括藉由使用ECC資訊來執行一記憶體管理功能(540)。
此命令可能是一讀取命令,用於讀取與至少一錯誤校正碼ECC(用於偵測並校正在資料之區塊中的錯誤)相關的資料之一區塊。ECC資訊可包括關於來自藉由使用錯誤校正碼ECC對對應資料執行ECC邏輯之結果的ECC統計。記憶體裝置可能是積體電路。此方法可能在與記憶體裝置連通之一個別的積體電路中被實施。此方法可能藉由使用由與記憶體裝置連通之一處理器所執行之一電腦程式而被實施。
藉由使用ECC資訊之記憶體管理功能可包括將記憶體裝置之實體位址映射至由一主機處理器之一操作系統
所使用之邏輯位址,將於邏輯位址之一範圍下之資料從一第一範圍之實體位址複製至一第二範圍之實體位址,利用錯誤位元之數目在多個區塊之資料上加標記,偵測具有大於一閾值之錯誤位元之數目之資料之區塊,或選擇用於寫入新資料之一區塊。藉由使用ECC資訊之記憶體管理功能可能用於例如故障區塊管理、重新映射、更新以及耗損均衡之任務。
第6圖係為包括儲存關於對應資料之錯誤校正碼ECC之一記憶體陣列690之一記憶體裝置600之方塊圖。記憶體裝置600亦包括ECC邏輯640及一控制器610,ECC邏輯640藉由使用錯誤校正碼ECC來偵測並校正對應資料中之錯誤,而控制器610耦接至記憶體陣列690與ECC邏輯640。控制器610包括耦接至記憶體陣列690與ECC邏輯640之控制邏輯,用於因應於記憶體裝置600之一輸入埠上之一命令,提供ECC資訊645給記憶體裝置之一輸出埠上之對應資料。記憶體裝置600中之資料之一區塊係與至少一錯誤校正碼ECC相關。
記憶體裝置600包括一輸入/輸出埠601以及一控制埠602。控制埠602包括接收與外部裝置連通之控制信號612之電路,包括例如晶片致能信號、讀取致能信號、寫入致能信號、命令致能信號、位址致能信號、時鐘脈衝信號等之控制信號。依據於控制埠602所接收之控制信號612之數值,輸入/輸出埠601作為記憶體裝置600之輸入埠或輸出埠。輸入/輸出埠601包括接收輸入信號並傳輸輸出信號之電路。輸入信號可包括命令信號、位址信號以及輸入
資料信號。輸出信號可包括ECC資訊與經錯誤校正碼ECC校正之資料。
除了ECC資訊以外,控制邏輯提供在記憶體裝置600之一輸出埠上之經錯誤校正碼ECC校正之資料。控制邏輯可使ECC邏輯因應於命令而產生除了ECC資訊以外之校正資料。錯誤校正碼ECC係與資料之對應的ECC頁相關,且關於錯誤校正碼ECC之使用之資訊包括藉由使用錯誤校正碼ECC而為一對應的ECC頁所校正之位元數之一計數。
記憶體裝置600之輸入埠上的命令可能是一讀取命令,用於讀取與至少一錯誤校正碼ECC(用於偵測並校正在資料之區塊中的錯誤)相關的資料之一區塊。此命令亦可以是一讀取命令,用於讀取每個與至少一錯誤校正碼ECC(用於偵測並校正在資料之相關區塊中的錯誤)相關的資料之多重區塊。
控制邏輯可更包括邏輯,用於將ECC資訊儲存在記憶體裝置上之一暫存器中。命令可能是一讀取命令,用於讀取在暫存器中之ECC資訊。
一擴充命令解碼器603係耦接至輸入/輸出埠601與控制埠602,控制埠602偵測並導致用於操作記憶體裝置600之命令(包括讀取命令及寫入命令)之執行。在某些技術中,寫入命令被稱為,或可包括程式化及抹除命令。擴充命令解碼器603因而與一列解碼器(X-解碼器)604及一行選擇器(Y-選擇器)605耦接,以供存取至記憶體陣列690。感測放大器606係經由行選擇器605耦接至記憶體
陣列690。
控制器610可包括一個或多個狀態機、暫存器檔案以及其他被部署以執行記憶體之功能(包括讀取及寫入功能)之邏輯電路。控制器610可藉由使用一個或多個專用的邏輯電路、可程式化閘陣列電路、具有相關軟體之一可程式化處理器或這些型式之電路之組合而被實施。在某些實施例中,部分控制器功能可在譬如與記憶體控制器或一主機處理器相關的硬體或軟體中被實施之記憶體裝置600。
於此例子中,記憶體裝置600亦包括顯示成與輸入/輸出埠601耦接之ECC邏輯640與ECC資訊645。在一寫入操作期間,定址記憶體陣列690中之資料之一區塊,ECC邏輯640計算與資料之區塊有關聯之待儲存之一ECC碼。在一讀取操作期間,定址記憶體陣列690中之資料之一區塊,來自被定址區塊與供區塊用之儲存的ECC碼之資料係從記憶體陣列690被讀取。ECC邏輯640偵測資料之被定址區塊是否包括任何錯誤,以及偵測到的錯誤是否可被校正。在一既定實施例中,錯誤之數目以及錯誤是否可在資料之錯誤檢查區塊中被校正,係取決於所利用之ECC碼之型式。如果錯誤可被校正,則來自ECC邏輯640之校正資料可能與來自被定址區塊之資料結合,並被提供作為輸出。
第7A圖顯示包括嵌入式ECC邏輯,提供經錯誤校正碼ECC校正之資料,而非提供關於錯誤校正碼ECC之使用之ECC資訊之一例示習知技術記憶體裝置之一例示命令表710。此表係說明於此,不僅作為本申請案之限制,
而且作為與第7B圖相關所說明之本申請案之新命令之對比。
例示命令表710包括三個讀取命令以從一記憶體裝置當中讀取資料。每個命令包括一第一循環且可包括一第二循環,第一循環包括兩個十六近制數字,而第二循環包括兩個其他十六近制數字。第一讀取命令係為"讀取模式(Read Mode)",其包括一第一循環00H及一第二循環30H,於此H表示十六近制數值。在操作中,一記憶體控制器將第一讀取命令之第一循環00H依序傳送至記憶體裝置、列及行位址以及第二循環30H。當記憶體裝置在確認第二循環30H之後準備就緒時,記憶體控制器可依序讀出來自記憶體裝置之資料。
第二讀取命令係為"隨機資料輸出(Random Data Output)",其包括一第一循環05H及一第二循環E0H。在操作中,記憶體控制器將第二讀取命令之第一循環05H依序傳送至記憶體裝置、行位址以及第二循環E0H。當記憶體裝置在確認第二循環E0H之後準備就緒時,記憶體控制器可隨機讀出來自記憶體裝置之一頁之內的資料。
第三讀取命令係為與"快取讀取結束(Cache Read End)"相關聯的"快取讀取開始(Cache Read Begin)"。"快取讀取開始"命令包括一第一循環00H及一第二循環31H。"快取讀取結束"命令包括一第一循環34H而不具有一第二循環。在操作中,記憶體控制器將第一循環00H依序傳送至記憶體裝置、供開始頁選擇用之列及行位址以及第二循環31H。當記憶體裝置在確認第二循環31H之後準備就緒
時,記憶體控制器可以為多頁而有順序地讀出來自記憶體裝置之資料。記憶體控制器傳送"快取讀取結束"命令之第一循環34H以結束快取讀取操作。
然而,上述具有三個命令之記憶體裝置之資料讀出並不包括對應於藉由嵌入在記憶體裝置中之ECC邏輯而執行之任何操作之ECC資訊。如此,記憶體控制器基於關於對於此頁之錯誤校正碼ECC之使用之ECC資訊,無法執行包括故障區塊管理、重新映射、更新、耗損均衡等之任何記憶體管理功能,其乃因為ECC資訊並非是記憶體控制器可容易取得的。
第7B圖顯示在本技術之一個實施例中,關於包括嵌入式ECC邏輯並提供關於錯誤校正碼ECC之使用之ECC資訊給記憶體裝置外部之裝置之一例示記憶體裝置之新命令之一表格720。表格720中之每個命令係在一輸入/輸出埠(例如在第6圖中所說明之記憶體裝置600之輸入/輸出埠601)上被接收。新命令之表格720包括三個讀取命令以向儲存關於對應資料之錯誤校正碼ECC之一記憶體裝置請求ECC資訊。三個讀取命令係供從記憶體裝置讀出資料之三種不同的情況用。每個命令包括一第一循環且可包括一第二循環,第一循環包括兩個十六近制數字,而第二循環包括兩個其他十六近制數字。關於新命令之數值是由記憶體裝置所支援之一相同命令集中的其他命令所特有的。表格720中之數值係只為了圖例目的,且並未限制本申請案。又,此命令並未受限於一第一循環及一第二循環。對實施本申請案之一特定的記憶體裝置而言,關於每
個命令,每循環可能有一個或多個循環及/或一個或多個二進位/十六近制數字。
記憶體裝置因應於一讀取命令(例如關於本申請案而於此所說明的那些命令)來提供ECC資訊。ECC資訊係藉由對應於記憶體裝置中之資料之ECC邏輯而產生。ECC資訊包括一些位元,例如64位元。ECC資訊可包括對應於資料之區塊之經錯誤校正碼ECC校正的位元之計數,且計數可能儲存於對應於資料之區塊之暫存器中。記憶體裝置可提供具有ECC資訊之經錯誤校正碼ECC校正之資料。
第一讀取命令係為"ECC讀取模式",其包括一第一循環08H及一第二循環38H。在操作中,一記憶體控制器將第一讀取命令之第一循環08H依序傳送至記憶體裝置、列及行位址以及第二循環38H。當記憶體裝置在確認第二循環38H之後準備就緒時,記憶體控制器可有順序地讀出來自記憶體裝置之ECC資訊(可選擇地具有經錯誤校正碼ECC校正之資料)。
第二讀取命令係為"ECC隨機資料輸出",其包括一第一循環0DH及一第二循環E8H。在操作中,記憶體控制器將第二讀取命令之第一循環0DH依序傳送至記憶體裝置、行位址以及第二循環E8H。當記憶體裝置在確認第二循環E8H之後準備就緒時,記憶體控制器可隨機地讀出來自記憶體裝置之一頁之內的ECC資訊(可選擇地具有經錯誤校正碼ECC校正之資料)。
第三讀取命令係為與"ECC快取讀取結束"相關聯的"ECC快取讀取開始"。"ECC快取讀取開始"命令包括一第
一循環08H及一第二循環39H。"ECC快取讀取結束"命令包括一第一循環3CH而不具有一第二循環。在操作中,記憶體控制器將第一循環08H依序傳送至記憶體裝置、供開始頁選擇用之列及行位址以及第二循環39H。當記憶體裝置在確認第二循環39H之後準備就緒時,記憶體控制器可為多頁依序讀出來自記憶體裝置之ECC資訊(可選擇地具有經錯誤校正碼ECC校正之資料)。記憶體控制器傳送"ECC快取讀取結束"命令之第一循環3CH以結束ECC快取讀取操作。
第8圖係為依據一個實施例之一例示電腦系統之方塊圖。電腦系統810一般包括至少一處理器816,其經由匯流排子系統812與一些周邊裝置相通。這些周邊裝置可包括一儲存子系統824(包括譬如記憶體裝置及具有ECC/ECC資訊828之一快閃記憶體)、使用者介面輸入裝置822、使用者介面輸出裝置820以及一網路介面子系統818。輸入及輸出裝置允許使用者與電腦系統810交互作用。網路介面子系統818提供一介面給外部網路。
使用者介面輸入裝置822可包括一鍵盤;指向裝置,例如一滑鼠、軌跡球、觸控板或繪圖板;一掃描器;併入顯示器之一觸控螢幕;音頻輸入裝置,例如語音識別系統及麥克風;以及其他型式之輸入裝置。一般而言,專門用語"輸入裝置"之使用係意圖包括所有可能型式之裝置以及輸入資訊進入電腦系統810中之方法。
使用者介面輸出裝置820可包括一顯示子系統、一印表機、一傳真機或例如音頻輸出裝置之非視覺顯示器。顯
示子系統可包括一陰極射線管(CRT)、一平板裝置,例如一液晶顯示器(LCD)、一投影裝置或用於建立一看得見的影像之某些其他機構。顯示子系統亦可例如經由音頻輸出裝置提供一非視覺顯示器。一般而言,專門用語"輸出裝置"之使用係意圖包括所有可能型式之裝置,以及從電腦系統810輸出資訊至使用者或至另一個機器或電腦系統之方法。
儲存子系統824儲存程式設計及資料構成,其提供於此所說明之某些或所有模組及方法之功能性。這些軟體模組通常由處理器816單獨或與其他處理器結合來執行。
使用於儲存子系統824中之記憶體826可包括一些記憶體,其包括:一主隨機存取記憶體(RAM)830,其供指令與資料在程式執行期間之儲存用;以及一唯讀記憶體(ROM)832,其中儲存固定指令。儲存子系統824可為程式及資料檔提供持久的儲存,且可包括一硬式磁碟機、一軟式磁碟機連同相關的可移除媒體、一CD-ROM驅動器、一光碟機或可移除媒體卡匣。實施某些實施例之功能性之模組可能儲存於儲存子系統824中,或儲存於由處理器容易接達的其他機器中。
電腦系統810可包括一個具有ECC快閃管理814之記憶體控制器,ECC快閃管理814包括使用一擴充命令集之程式或其他邏輯。擴充命令集包括一命令,以向具有ECC/ECC資訊828連同ECC資訊(例如被讀取之資料中的校正錯誤之數目之一計數)之快閃記憶體請求經錯誤校正碼ECC校正之資料。具有ECC/ECC資訊828之快閃記憶
體因應於此命令,提供經錯誤校正碼ECC校正之資料連同請求的ECC資訊給具有ECC快閃管理814之記憶體控制器。因此,允許具有ECC快閃管理814之記憶體控制器使用ECC資訊,以藉由使用ECC資訊來執行記憶體管理功能(例如故障區塊管理、重新映射、更新以及耗損均衡)。為了支援擴充命令集,具有ECC/ECC資訊828之快閃記憶體包括邏輯以監視ECC邏輯功能並搜集待被具有ECC快閃管理814之記憶體控制器所使用之ECC資訊(例如錯誤計數或其他統計)。
匯流排子系統812提供一種用於讓電腦系統810之各種元件與子系統如預期的彼此通信之機制。雖然匯流排子系統812係概要顯示為單一匯流排,但匯流排子系統之替代實施例可使用多重匯流排。
電腦系統810可以是屬於變化型式,包括一工作站、伺服器、計算叢集、刀鋒伺服器、伺服器農場(server farm)或任何其他資料處理系統或計算裝置。由於電腦及網路之千變萬化的本質,在第8圖中所描繪出之電腦系統810之說明係只意圖作為一個例子。電腦系統810之多數其他的組態是可能具有比在第8圖中所描繪出之電腦系統更多或更少的元件。
第9圖係為顯示使用ECC資訊之讀取擾動之管理之流程圖。一記憶體裝置包括多個資料之頁之區塊。當一區塊中之某些頁上之資料之重複讀取導致相同區塊中之未被選取的頁之資料損失時,發生讀取擾動。一主機系統(例如與第2圖或第3圖相關所說明之主機系統212)藉由使用
ECC資訊來控制用於管理讀取擾動之流程。於步驟910,此流程獲得一特定頁上之讀取計數。於步驟920,此流程比較獲得的讀取計數與一讀取計數閾值。於步驟930,如果讀取計數超過讀取計數閾值,則此流程傳送一命令至要求對應於此頁之ECC資訊之記憶體裝置。於步驟940,此流程因應於此命令接收來自記憶體裝置之ECC資訊。舉例而言,ECC資訊可包括此頁中之經錯誤校正碼ECC校正之錯誤位元之數目。於步驟950,此流程比較經錯誤校正碼ECC校正之錯誤位元之接收到的數目與一ECC錯誤閾值。於步驟955,如果經錯誤校正碼ECC校正的錯誤位元之數目小於ECC錯誤閾值,則關於此頁之讀取計數被減少了讀取計數閾值。如果經錯誤校正碼ECC校正的錯誤位元之數目大於ECC錯誤閾值,則此流程藉由將此頁上之資料複製至一不同的實體位置而接著針對此頁執行一更新過程。於步驟960,此流程傳送一命令以讀取來自目前頁之資料。於步驟970,此流程接收來自目前區塊之頁。於步驟980,此流程傳送一命令至記憶體裝置以寫入資料至記憶體裝置之另一個實體區塊。在操作期間,可能為記憶體裝置中之每個頁重複此流程。
本申請案提供一種記憶體裝置之操作方法,記憶體裝置儲存關於對應資料之錯誤校正碼ECC,並包括ECC邏輯以藉由使用錯誤校正碼ECC來校正錯誤。此方法包括藉由使用錯誤校正碼ECC而校正記憶體裝置上之資料,並產生關於錯誤校正碼ECC之使用之記憶體裝置上的資訊。此方法因應於從記憶體裝置外部之一過程而在一輸入埠上
被接收之一命令,提供裝置之一輸出埠上的ECC資訊。
進一步的實施方式更提供以下特徵。在一些實施例中,此方法提供除了該ECC資訊以外之該裝置之該輸出埠上的該經錯誤校正碼ECC校正之資料。此方法包括根據命令執行校正資訊及產出資訊。
該些錯誤校正碼ECC係與資料之對應的ECC頁相關,且關於該錯誤校正碼ECC之使用之資訊包括藉由使用該錯誤校正碼ECC而校正一對應的ECC頁之位元數之一計數。該ECC資訊包括關於來自藉由使用錯誤校正碼ECC對對應資料執行該ECC邏輯之結果的ECC統計。
該命令係為一讀取命令,用於讀取與至少一錯誤校正碼ECC相關的資料之一區塊,該至少一錯誤校正碼ECC用於偵測並校正在資料之該區塊中的錯誤。該命令係為一讀取命令,用於讀取與至少一錯誤校正碼ECC相關的資料之一區塊,該至少一錯誤校正碼ECC用於偵測並校正在資料之該區塊中的錯誤。
該命令係為一讀取命令,用於讀取在該暫存器中之該ECC資訊。該命令係為一讀取命令,用於讀取該暫存器中之該ECC資訊。
本申請案更提供一種記憶體裝置之控制方法。此方法包括傳送一命令至該記憶體裝置,其請求對應於該記憶體裝置中之資料之ECC資訊,該記憶體裝置儲存關於該對應資料之多個錯誤校正碼ECC,並包括ECC邏輯以藉由使用該些錯誤校正碼ECC來校正錯誤。此方法包括因應於該命令,接收來自該記憶體裝置之該ECC資訊。此方法包括
藉由使用該ECC資訊執行一記憶體管理功能。
進一步的實施方式更提供以下特徵。在一些實施例中,此方法包括接收除了該ECC資訊以外之經錯誤校正碼ECC校正之資料。該ECC資訊包括關於來自藉由使用錯誤校正碼ECC對對應資料執行該ECC邏輯之結果的ECC統計。該命令係為一讀取命令,用於讀取與至少一錯誤校正碼ECC相關的資料之一區塊,該至少一錯誤校正碼ECC用於偵測並校正在資料之該區塊中的錯誤。該命令係為一讀取命令,用於讀取每個與至少一錯誤校正碼ECC相關的資料之多重區塊,該至少一錯誤校正碼ECC用於偵測並校正在資料之相關區塊中的錯誤。
該記憶體控制器係在與該記憶體裝置連通之一個別的積體電路中被實施。該記憶體控制器係藉由使用由與該記憶體裝置連通之一處理器所執行之一電腦程式而被實施。
該記憶體管理功能包括將該記憶體裝置之多個實體位址映射至由一主機處理器之一作業系統所使用之多個邏輯位址。將於邏輯位址之一範圍下之資料從一第一範圍之實體位址複製至一第二範圍之實體位址。利用錯誤位元之數目在多個區塊之資料上加標記。偵測具有大於一閾值之錯誤位元之數目之資料之多個區塊。
本申請案提供一種一種記憶體裝置,包括一記憶體陣列、ECC邏輯及控制邏輯。記憶體陣列儲存資料及關於對應資料之多個錯誤校正碼ECC。ECC邏輯用於藉由使用該些錯誤校正碼ECC來偵測並校正在該對應資料中之錯
誤。控制邏輯耦接至該記憶體陣列與該ECC邏輯,以因應於該裝置之一輸入埠上的一命令,提供關於該記憶體裝置之一輸出埠上的對應資料之ECC資訊。
進一步的實施方式更提供以下特徵。在一些實施例中,該控制邏輯提供除了該ECC資訊以外之該裝置之該輸出埠上的經錯誤校正碼ECC校正之資料,其中該輸出埠包括多個電路,其傳送多個輸出信號,該些輸出信號包括該ECC資訊與該經錯誤校正碼ECC校正之資料。該控制邏輯允許該ECC邏輯因應於該命令來產生除了該ECC資訊以外之校正資料。
該些錯誤校正碼ECC係與資料之對應的ECC頁相關,而關於該錯誤校正碼ECC之使用之資訊包括藉由使用該錯誤校正碼ECC而對一對應的ECC頁校正之位元數之一計數。該ECC資訊包括關於來自藉由使用錯誤校正碼ECC對對應資料執行該ECC邏輯之結果的ECC統計。
該命令係為一讀取命令,用於讀取每個與至少一錯誤校正碼ECC相關的資料之多重區塊,該至少一錯誤校正碼ECC用於偵測並校正在資料之相關區塊中的錯誤。該命令係為一讀取命令,用於讀取與至少一錯誤校正碼ECC相關的資料之一區塊,該至少一錯誤校正碼ECC用於偵測並校正在資料之該區塊中的錯誤。
該控制邏輯更包括邏輯,用於將ECC資訊儲存在該記憶體裝置上之一暫存器中。該命令係為一讀取命令,用於讀取在該暫存器中之該ECC資訊。
本申請案提供一種記憶體控制器,包括傳送一命令至
一記憶體裝置之邏輯,該記憶體裝置請求對應於該記憶體裝置中之資料之ECC資訊。因應於該命令接收來自該記憶體裝置之該ECC資訊之邏輯。藉由使用該ECC資訊執行一記憶體管理功能之邏輯。應用包括該命令之一命令集之邏輯。
進一步的實施方式更提供以下特徵。在一些實施例中,記憶體控制器包括接收具有該ECC資訊之經錯誤校正碼ECC校正之資料之邏輯。該ECC資訊包括關於來自藉由使用錯誤校正碼ECC對對應資料執行該ECC邏輯之結果的ECC統計。
該命令係為一讀取命令,用於讀取與至少一錯誤校正碼ECC相關的資料之一區塊,該至少一錯誤校正碼ECC可取得以偵測並校正在資料之該區塊中的錯誤。該命令係為一讀取命令,用於讀取與至少一錯誤校正碼ECC相關的資料之一區塊,該至少一錯誤校正碼ECC用於偵測並校正在資料之該區塊中的錯誤。
該記憶體裝置係為一積體電路,而該記憶體控制器係在與該記憶體裝置連通之一個別的積體電路中被實施。該記憶體控制器係藉由使用由與該記憶體裝置連通之一處理器所執行之一電腦程式而被實施。
該記憶體管理功能包括將該記憶體裝置之多個實體位址映射至由一主機處理器之一作業系統所使用之多個邏輯位址。將於邏輯位址之一範圍下之資料從一第一範圍之實體位址複製至一第二範圍之實體位址。利用錯誤位元之數目在多個區塊之資料上加標記。偵測具有大於一閾值
之錯誤位元之數目之資料之多個區塊。
雖然參考上述之較佳實施例及例子揭露了本發明,但吾人應理解到這些例子係意圖提供例示意義而非限制意義。吾人考慮到熟習本項技藝者將輕易想到修改及組合,其中這些修改及組合將落在以下申請專利範圍之本發明及範疇之精神之內。
E0H、E8H、38H、39H‧‧‧第二循環
00H、0DH、3CH、3CH、05H、08H、34H‧‧‧第一循環
30H‧‧‧第二循環
31H‧‧‧第二循環
110‧‧‧主機系統
120‧‧‧記憶體裝置
130‧‧‧讀取命令
140‧‧‧經錯誤校正碼ECC校正之資料
212‧‧‧主機系統
222‧‧‧記憶體裝置
232‧‧‧命令
242‧‧‧經錯誤校正碼ECC校正之資料
332‧‧‧命令
342‧‧‧ECC資訊
410-450‧‧‧步驟
450‧‧‧經錯誤校正碼ECC校正之資料
510-540‧‧‧步驟
600‧‧‧記憶體裝置
601‧‧‧輸入/輸出埠
602‧‧‧控制埠
603‧‧‧擴充命令解碼器
604‧‧‧列解碼器(X-解碼器)
605‧‧‧行選擇器(Y-選擇器)
606‧‧‧感測放大器
610‧‧‧控制器
612‧‧‧控制信號
640‧‧‧ECC邏輯
645‧‧‧ECC資訊
690‧‧‧記憶體陣列
710‧‧‧例示命令表
720‧‧‧表格
810‧‧‧電腦系統
812‧‧‧匯流排子系統
814‧‧‧ECC快閃管理
816‧‧‧處理器
818‧‧‧網路介面子系統
820‧‧‧使用者介面輸出裝置
822‧‧‧使用者介面輸入裝置
824‧‧‧儲存子系統
826‧‧‧記憶體
828‧‧‧ECC/ECC資訊
830‧‧‧主隨機存取記憶體(RAM)
832‧‧‧唯讀記憶體(ROM)
910-980‧‧‧步驟
第1圖係為顯示依據習知技術之記憶體裝置(具有內部ECC邏輯)外部之主機系統之簡化圖。
第2圖係為顯示記憶體裝置外部之主機系統之簡化圖,於此記憶體裝置提供經錯誤校正碼ECC校正之資料連同對應的ECC資訊。
第3圖係為顯示記憶體裝置外部之主機系統之簡化圖,於此記憶體裝置提供不具有對應的經錯誤校正碼ECC校正之資料之ECC資訊。
第4圖係為顯示與提供ECC資訊相關的記憶體裝置之操作方法之流程圖。
第5圖係為顯示與接收ECC資訊相關的記憶體之控制方法之流程圖。
第6圖係為記憶體裝置之方塊圖,記憶體裝置因應於在輸入埠上所接收的命令來提供ECC資訊。
第7A圖顯示依據習知技術之例示命令表。
第7B圖顯示在本技術之一個實施例中的例示新命令
表。
第8圖係為例示電腦系統之方塊圖。
第9圖係為顯示藉由使用ECC資訊之讀取擾動之管理之流程圖。
410-450‧‧‧步驟
Claims (20)
- 一種記憶體裝置之操作方法,該記憶體裝置儲存關於對應一資料之複數個錯誤校正碼ECC並包括一ECC邏輯以藉由使用該些錯誤校正碼ECC來校正錯誤,該操作方法包括:藉由使用該些錯誤校正碼ECC而校正該記憶體裝置上之該資料;產生該記憶體裝置上的一ECC資訊,該ECC資訊關於該些錯誤校正碼ECC之使用;以及因應於從該記憶體裝置外部之一過程而在一輸入埠上被接收之一命令,在該記憶體裝置之一輸出埠上提供該ECC資訊;其中該ECC資訊包括關於來自藉由使用該些錯誤校正碼ECC對對應該資料執行該ECC邏輯之結果的一ECC統計。
- 如申請專利範圍第1項所述之操作方法,更包括:提供除了該ECC資訊以外之該記憶體裝置之該輸出埠上的經該些錯誤校正碼ECC校正之該資料。
- 如申請專利範圍第1項所述之操作方法,該些錯誤校正碼ECC係與該資料之對應的一ECC頁相關,且關於該些錯誤校正碼ECC之使用之該資訊包括藉由使用該些錯誤校正碼ECC而校正對應的該ECC頁之一位元數之一計數。
- 如申請專利範圍第1項所述之操作方法,其中該命令係為一讀取命令,用於讀取與該些錯誤校正碼ECC 之至少一相關的該資料之一區塊,該些錯誤校正碼ECC之該至少一用於偵測並校正在該資料之該區塊中的錯誤。
- 一種記憶體裝置之控制方法,包括:傳送一命令至該記憶體裝置,其請求對應於該記憶體裝置中之一資料之一ECC資訊,該記憶體裝置儲存關於對應該資料之多個錯誤校正碼ECC,並包括一ECC邏輯以藉由使用該些錯誤校正碼ECC來校正錯誤;因應於該命令,接收來自該記憶體裝置之該ECC資訊;以及藉由使用該ECC資訊執行一記憶體管理功能;其中該ECC資訊包括關於來自藉由使用該些錯誤校正碼ECC對對應該資料執行該ECC邏輯之結果的一ECC統計。
- 如申請專利範圍第5項所述之控制方法,更包括接收除了該ECC資訊以外之經該些錯誤校正碼ECC校正之該資料。
- 如申請專利範圍第5項所述之控制方法,其中該命令係為一讀取命令,用於讀取與該些錯誤校正碼ECC之至少一相關的該資料之一區塊,該些錯誤校正碼ECC之該至少一用於偵測並校正在該資料之該區塊中的錯誤。
- 如申請專利範圍第5項所述之控制方法,其中該記憶體裝置係為一積體電路,而該方法係在與該記憶體裝置連通之一個別的積體電路中被實施。
- 如申請專利範圍第5項所述之控制方法,其中該方法係藉由使用由與該記憶體裝置連通之一處理器所執 行之一電腦程式而被實施。
- 如申請專利範圍第5項所述之控制方法,其中該記憶體管理功能包括:偵測具有大於一閾值之錯誤位元之數目之資料之多個區塊。
- 一種記憶體裝置,包括:一記憶體陣列,儲存一資料及關於對應該資料之多個錯誤校正碼ECC;一ECC邏輯,用於藉由使用該些錯誤校正碼ECC來偵測並校正在對應該資料中之錯誤;以及一控制邏輯,耦接至該記憶體陣列與該ECC邏輯,以因應於該記憶體裝置之一輸入埠上的一命令,提供關於該記憶體裝置之一輸出埠上的對應該資料之一ECC資訊;其中該ECC資訊包括關於來自藉由使用該些錯誤校正碼ECC對對應該資料執行該ECC邏輯之結果的一ECC統計。
- 如申請專利範圍第11項所述之記憶體裝置,其中該控制邏輯提供除了該ECC資訊以外之該記憶體裝置之該輸出埠上的經該些錯誤校正碼ECC校正之該資料,其中該輸出埠包括複數個電路,其傳送複數個輸出信號,該些輸出信號包括該ECC資訊與經該些錯誤校正碼ECC校正之該資料。
- 如申請專利範圍第11項所述之記憶體裝置,其中該些錯誤校正碼ECC係與該資料之對應的一ECC頁相關,而關於該些錯誤校正碼ECC之使用之該資訊包括藉由使用該些錯誤校正碼ECC而對對應的該ECC頁校正之一 位元數之一計數。
- 如申請專利範圍第11項所述之記憶體裝置,其中該命令係為一讀取命令,用於讀取每個與該些錯誤校正碼ECC之至少一相關的該資料之多重區塊,該些錯誤校正碼ECC之該至少一用於偵測並校正在該資料之相關該些區塊中的錯誤。
- 一種記憶體控制器,包括複數個邏輯,用以:傳送一命令至一記憶體裝置,該記憶體裝置包括一ECC邏輯,該記憶體裝置請求對應於該記憶體裝置中之一資料之一ECC資訊;因應於該命令接收來自該記憶體裝置之該ECC資訊;藉由使用該ECC資訊執行一記憶體管理功能;以及應用包括該命令之一命令集;其中該ECC資訊包括關於來自藉由使用複數個錯誤校正碼ECC對對應該資料執行該ECC邏輯之結果的一ECC統計。
- 如申請專利範圍第15項所述之記憶體控制器,其中該些邏輯更用以:接收具有該ECC資訊之該些錯誤校正碼ECC校正之該資料。
- 如申請專利範圍第15項所述之記憶體控制器,其中該命令係為一讀取命令,用於讀取與該些錯誤校正碼ECC之至少一相關的該資料之一區塊,該些錯誤校正碼ECC之該至少一可取得以偵測並校正在該資料之該區塊中的錯誤。
- 如申請專利範圍第15項所述之記憶體控制器, 其中該記憶體裝置係為一積體電路,而該記憶體控制器係在與該記憶體裝置連通之一個別的積體電路中被實施。
- 如申請專利範圍第15項所述之記憶體控制器,其中該記憶體控制器係藉由使用由與該記憶體裝置連通之一處理器所執行之一電腦程式而被實施。
- 如申請專利範圍第15項所述之記憶體控制器,其中該記憶體管理功能包括:偵測具有大於一閾值之錯誤位元之數目之該資料之複數個區塊。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/612,433 US9009566B2 (en) | 2012-09-12 | 2012-09-12 | Outputting information of ECC corrected bits |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201411633A TW201411633A (zh) | 2014-03-16 |
TWI500039B true TWI500039B (zh) | 2015-09-11 |
Family
ID=50234652
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW101143909A TWI500039B (zh) | 2012-09-12 | 2012-11-23 | 輸出經錯誤校正碼校正之位元之資訊 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9009566B2 (zh) |
CN (1) | CN103678027B (zh) |
TW (1) | TWI500039B (zh) |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9274715B2 (en) * | 2013-08-02 | 2016-03-01 | Qualcomm Incorporated | Methods and apparatuses for in-system field repair and recovery from memory failures |
CN104572489B (zh) * | 2013-10-23 | 2019-12-24 | 深圳市腾讯计算机系统有限公司 | 磨损均衡方法及装置 |
US9305663B2 (en) * | 2013-12-20 | 2016-04-05 | Netapp, Inc. | Techniques for assessing pass/fail status of non-volatile memory |
DE102014104717B4 (de) * | 2014-04-03 | 2019-08-01 | Hyperstone Gmbh | Verfahren und Vorrichtung zur Datenerneuerung für eine Erhöhung der Zuverlässigkeit von Flashspeichern |
US9965345B2 (en) | 2014-09-24 | 2018-05-08 | Macronix International Co., Ltd. | Health management of non-volatile memory |
US9558066B2 (en) * | 2014-09-26 | 2017-01-31 | Intel Corporation | Exchanging ECC metadata between memory and host system |
TWI520140B (zh) * | 2014-11-03 | 2016-02-01 | 慧榮科技股份有限公司 | 資料儲存裝置以及快閃記憶體控制方法 |
US9852811B2 (en) * | 2014-11-13 | 2017-12-26 | Macronix International Co., Ltd. | Device and method for detecting controller signal errors in flash memory |
US9811420B2 (en) | 2015-03-27 | 2017-11-07 | Intel Corporation | Extracting selective information from on-die dynamic random access memory (DRAM) error correction code (ECC) |
US9740558B2 (en) * | 2015-05-31 | 2017-08-22 | Intel Corporation | On-die ECC with error counter and internal address generation |
US10127101B2 (en) | 2015-08-28 | 2018-11-13 | Intel Corporation | Memory device error check and scrub mode and error transparency |
US9684555B2 (en) | 2015-09-02 | 2017-06-20 | International Business Machines Corporation | Selective memory error reporting |
KR102435181B1 (ko) | 2015-11-16 | 2022-08-23 | 삼성전자주식회사 | 반도체 메모리 장치, 이를 포함하는 메모리 시스템 및 메모리 시스템의 동작 방법 |
KR102661936B1 (ko) * | 2016-06-27 | 2024-04-30 | 삼성전자주식회사 | 저장 장치 |
US10572344B2 (en) * | 2017-04-27 | 2020-02-25 | Texas Instruments Incorporated | Accessing error statistics from DRAM memories having integrated error correction |
TWI657336B (zh) * | 2017-08-28 | 2019-04-21 | 慧榮科技股份有限公司 | 用以檢測資料儲存裝置之資料儲存方法及其資料儲存裝置 |
US10733046B2 (en) | 2018-04-20 | 2020-08-04 | Micron Technology, Inc. | Transaction metadata |
TWI680375B (zh) * | 2018-08-23 | 2019-12-21 | 慧榮科技股份有限公司 | 具有分散式信箱架構的多處理器系統及其處理器錯誤檢查方法 |
US10977121B2 (en) | 2018-10-17 | 2021-04-13 | Macronix International Co., Ltd. | Fast page continuous read |
US11048649B2 (en) | 2018-10-17 | 2021-06-29 | Macronix International Co., Ltd. | Non-sequential page continuous read |
CN112540866B (zh) * | 2019-09-20 | 2024-01-23 | 华邦电子股份有限公司 | 存储器装置及其数据存取方法 |
US10957384B1 (en) | 2019-09-24 | 2021-03-23 | Macronix International Co., Ltd. | Page buffer structure and fast continuous read |
US11302366B2 (en) | 2020-03-06 | 2022-04-12 | Macronix International Co., Ltd. | Method and system for enhanced read performance in low pin count interface |
US11249913B2 (en) | 2020-03-06 | 2022-02-15 | Macronix International Co., Ltd. | Continuous read with multiple read commands |
EP3936996A4 (en) | 2020-04-01 | 2022-07-06 | Changxin Memory Technologies, Inc. | READ-WRITE METHOD AND STORAGE DEVICE |
CN113495671B (zh) * | 2020-04-01 | 2023-10-17 | 长鑫存储技术有限公司 | 读写方法及存储器装置 |
CN113495675B (zh) | 2020-04-01 | 2023-08-11 | 长鑫存储技术有限公司 | 读写方法及存储器装置 |
EP3964940A4 (en) | 2020-04-01 | 2022-08-17 | Changxin Memory Technologies, Inc. | READ/WRITE METHOD AND STORAGE DEVICE |
CN113495674B (zh) | 2020-04-01 | 2023-10-10 | 长鑫存储技术有限公司 | 读写方法及存储器装置 |
CN113495672B (zh) | 2020-04-01 | 2023-08-11 | 长鑫存储技术有限公司 | 读写方法及存储器装置 |
EP3985494B1 (en) | 2020-04-01 | 2024-01-17 | Changxin Memory Technologies, Inc. | Read-write method and memory device |
JP2021168431A (ja) * | 2020-04-09 | 2021-10-21 | ミネベアミツミ株式会社 | チェックサム付加方法およびチェックサム付加装置 |
US20230214119A1 (en) * | 2021-12-30 | 2023-07-06 | Micron Technology, Inc. | Data stripe protection |
US20240028258A1 (en) * | 2022-07-20 | 2024-01-25 | Silicon Motion, Inc. | Method and apparatus for performing data management of memory device with aid of targeted protection control |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040044943A1 (en) * | 2002-06-03 | 2004-03-04 | Stmicroelectronics S.A. | Memory circuit comprising an error correcting code |
US20090070657A1 (en) * | 2005-10-13 | 2009-03-12 | Ramot At Tel Aviv University Ltd. | Method of error correction in mbc flash memory |
US7596643B2 (en) * | 2007-02-07 | 2009-09-29 | Siliconsystems, Inc. | Storage subsystem with configurable buffer |
US20100269015A1 (en) * | 2009-04-08 | 2010-10-21 | Google Inc. | Data storage device |
US20100332923A1 (en) * | 2009-06-29 | 2010-12-30 | Sandisk Corporation | System and method responsive to a rate of change of a performance parameter of a memory |
US7958430B1 (en) * | 2005-06-20 | 2011-06-07 | Cypress Semiconductor Corporation | Flash memory device and method |
US20120110417A1 (en) * | 2010-10-27 | 2012-05-03 | Sandisk Corporation | Hybrid error correction coding to address uncorrectable errors |
US8239724B2 (en) * | 2009-04-08 | 2012-08-07 | Google Inc. | Error correction for a data storage device |
US20120221924A1 (en) * | 2008-05-16 | 2012-08-30 | Fusion-Io, Inc. | Apparatus, system, and method for detecting and replacing failed data storage |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2009068074A1 (de) * | 2007-11-26 | 2009-06-04 | Hyperstone Gmbh | VERFAHREN ZUR GLEICHMÄßIGEN NUTZUNG MEHRERER FLASHSPEICHERCHIPS |
US20120117303A1 (en) * | 2010-11-04 | 2012-05-10 | Numonyx B.V. | Metadata storage associated with flash translation layer |
TW201239893A (en) * | 2011-03-25 | 2012-10-01 | Silicon Motion Inc | Method for enhancing data protection performance, and associated personal computer and storage medium |
US9158621B2 (en) * | 2011-08-29 | 2015-10-13 | Sandisk Technologies Inc. | System and method of copying data |
-
2012
- 2012-09-12 US US13/612,433 patent/US9009566B2/en active Active
- 2012-11-23 TW TW101143909A patent/TWI500039B/zh active
- 2012-12-17 CN CN201210546028.6A patent/CN103678027B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040044943A1 (en) * | 2002-06-03 | 2004-03-04 | Stmicroelectronics S.A. | Memory circuit comprising an error correcting code |
US7958430B1 (en) * | 2005-06-20 | 2011-06-07 | Cypress Semiconductor Corporation | Flash memory device and method |
US20090070657A1 (en) * | 2005-10-13 | 2009-03-12 | Ramot At Tel Aviv University Ltd. | Method of error correction in mbc flash memory |
US7596643B2 (en) * | 2007-02-07 | 2009-09-29 | Siliconsystems, Inc. | Storage subsystem with configurable buffer |
US20120221924A1 (en) * | 2008-05-16 | 2012-08-30 | Fusion-Io, Inc. | Apparatus, system, and method for detecting and replacing failed data storage |
US20100269015A1 (en) * | 2009-04-08 | 2010-10-21 | Google Inc. | Data storage device |
US8239724B2 (en) * | 2009-04-08 | 2012-08-07 | Google Inc. | Error correction for a data storage device |
US20100332923A1 (en) * | 2009-06-29 | 2010-12-30 | Sandisk Corporation | System and method responsive to a rate of change of a performance parameter of a memory |
US20120110417A1 (en) * | 2010-10-27 | 2012-05-03 | Sandisk Corporation | Hybrid error correction coding to address uncorrectable errors |
Also Published As
Publication number | Publication date |
---|---|
CN103678027B (zh) | 2016-12-28 |
CN103678027A (zh) | 2014-03-26 |
US9009566B2 (en) | 2015-04-14 |
TW201411633A (zh) | 2014-03-16 |
US20140075265A1 (en) | 2014-03-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI500039B (zh) | 輸出經錯誤校正碼校正之位元之資訊 | |
KR101659888B1 (ko) | 플래시 메모리 제어 방법, 제어기 및 전자 장치 | |
TWI479495B (zh) | 資料讀取方法、記憶體控制器及記憶體儲存裝置 | |
JP5492679B2 (ja) | 記憶装置およびメモリコントローラ | |
US9223648B2 (en) | Memory storage device, memory controller thereof, and method for processing data thereof | |
US8397107B1 (en) | Data storage device employing data path protection using both LBA and PBA | |
JP5221699B2 (ja) | 半導体記憶装置 | |
US9513992B2 (en) | Method and apparatus to perform concurrent read and write memory operations | |
US8756398B2 (en) | Partitioning pages of an electronic memory | |
US20140115422A1 (en) | Non-volatile memory error correction | |
TWI554886B (zh) | 資料保護方法、記憶體控制電路單元及記憶體儲存裝置 | |
JP2008065830A (ja) | メモリーシステム及び該動作方法。 | |
KR20170059219A (ko) | 메모리 장치, 메모리 시스템 및 메모리 장치의 복구 검증 방법 | |
CN106415502A (zh) | 数据存储的方法和装置 | |
KR20130027138A (ko) | 에러 정정 방법 및 이를 이용하는 메모리 장치 | |
US20080072119A1 (en) | Allowable bit errors per sector in memory devices | |
TW201730892A (zh) | 邏輯性移除非揮發性記憶體儲存裝置缺陷頁之裝置及方法 | |
JP2016143085A (ja) | 装置及び方法 | |
US9396064B2 (en) | Error correction with secondary memory | |
TWI537734B (zh) | 資料保護方法、記憶體控制器與記憶體儲存裝置 | |
TW201921245A (zh) | 用於支持錯誤更正碼的裝置及其測試方法 | |
US20230197183A1 (en) | Storage controller including parity management module, storage device including the same, and operating method of storage device | |
TWI446346B (zh) | 資料讀取方法、記憶體儲存裝置及其記憶體控制器 | |
US20230187002A1 (en) | Storage controller using history data, method of operating the same, and method of operating storage device including the same | |
US11157210B2 (en) | Memory system performing dummy program operation during normal program operation |