TWI443667B - 於可再程式非揮發性記憶體內拷貝資料之方法 - Google Patents
於可再程式非揮發性記憶體內拷貝資料之方法 Download PDFInfo
- Publication number
- TWI443667B TWI443667B TW094145667A TW94145667A TWI443667B TW I443667 B TWI443667 B TW I443667B TW 094145667 A TW094145667 A TW 094145667A TW 94145667 A TW94145667 A TW 94145667A TW I443667 B TWI443667 B TW I443667B
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- error
- ecc
- memory
- controller
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- 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/10—Programming or data input circuits
-
- 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/1068—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 in sector programmable memories, e.g. flash disk
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7203—Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Error Detection And Correction (AREA)
- Storage Device Security (AREA)
Description
本發明概言之係關於可再程式非揮發性記憶體系統及其作業,且更具體而言係關於用於拷貝資料之方法。
現今可再程式非揮發性記憶體產品已獲得市場成功且廣泛有售,特別係小型化因數形式的卡,例如由包括SanDisk公司在內的各種商家製造的小型閃存卡(CF)、安全數位卡(SD)、多媒體卡(MMC)及記憶棒卡。該等卡通常使用一快閃電可擦除可程式化唯讀記憶體(EEPROM)記憶體單元陣列。快閃EEPROM記憶體單元陣列通常製造成NOR陣列或NAND陣列。
在一典型之NOR陣列中,各記憶單元連接於在排方向上延伸的相鄰位元線源極與汲極擴散區之間,且控制閘極連接至沿記憶單元列延伸之字線。一種典型的儲存記憶體單元在源極與汲極擴散區之間具有一「分裂式溝道」。儲存單元的一電荷儲存元件位於該溝道的一部分上,而字線(亦稱作控制閘極)位於另一溝道部分上及該電荷儲存元件上。此會有效地構成一具有兩個串行電晶體之單元,其中一個電晶體(記憶體電晶體)使用該電荷儲存元件上之電荷量與該字線上之電壓的組合來控制可流經其溝道部分之電流量,另一電晶體(選擇電晶體)則僅具有字線用作其閘極。字線在一列電荷儲存元件上延伸。該類單元的實例、其在儲存系統中的應用及其製造方法在第5,070,032號、第5,095,344號、第5,315,541號、第5,343,063號、及第5,661,053號美國專利中及在1999年1月27日提出申請且同在申請中的第09/239,073號美國專利申請案中給出。
此種分裂溝道式快閃EEPROM單元的一修改係增加了一位於電荷儲存元件與字線之間的導引閘極。陣列中的每一導引閘極均垂直於字線在一行電荷儲存元件上延伸。其作用係在讀取或程式規劃一選定單元時無需使字線同時執行兩種功能。此該兩種功能係:(1)用作選擇電晶體之閘極,因此需要一適當之電壓以導通或關斷選擇電晶體,及(2)藉由一耦合於字線與電荷儲存元件之間的電場(容性)將電荷儲存元件之電壓驅動至一所期望位凖。通常難以藉助一單一電壓以最佳方式同時執行該兩種功能。在增加導引閘極後,字線僅需要執行功能(1),而由所增加之導引閘極來執行功能(2)。舉例而言,在第5,313,421號及第6,222,762號美國專利中即對導引閘極於快閃EEPROM陣列中之使用予以說明。
目前有各種程式規劃技術可用於將電子自基板藉由閘極電介質注入至浮動閘極儲存元件上。最常見之程式規劃機理闡述於一本由Brown及Brewer編輯的書「非揮發性半導體記憶體技術(Nonvolatile Semiconductor Memory Technology)」(IEEE出版社,第1.2部分,第9-25頁(1998年))中。一種稱作溝道「熱電子注入」的技術(第1.2.3部分)將電子自單元之溝道注入浮動閘極毗鄰該單元之汲極的一區域內。另一種稱作「源極側注入」的技術(第1.2.4部分)則以一種方式沿記憶體單元溝道的長度控制基板表面電位,以在溝道的遠離汲極之一區域中給電子注入創造條件。源極側注入還闡述於一篇由Kamiya等人所著之論文「具有高閘極注入效率之EPROM單元(EPROM Cell with High Gate Injection Efficiency)」(IEDM Technical Digest,1982年,第741-744頁)及第4,622,656號和第5,313,421號美國專利中。
在上文所述的兩種類型之NOR記憶體單元陣列中均使用兩種用於自電荷儲存元件移除電荷以擦除記憶體單元的技術。其中一種技術係藉由向源極、汲極及其他閘極施加致使電子隧穿儲存元件與基板間之一部分介電層的適當電壓來擦除至基板。另一種擦除技術係藉由一位於儲存元件與另一閘極之間的隧道介電層將電子自儲存元件轉移至所述另一閘極。在上文所述的第一種類型之單元中,出於彼目的而設置一第三擦除閘極。在上述因使用一導引閘極而已具有三個閘極的第二種類型之單元中,係將電荷儲存元件擦除至字線,而無需增加一第四閘極。儘管該後一種技術又重新增加了一由字線執行的第二功能,然而,該些功能係在不同之時間執行,因而不必因該兩種功能而做出犧牲。當使用任一擦除技術時,將大量的記憶體單元組合在一起,以便以「快閃」方式同時擦除。在一種方法中,所述群組包含足夠之記憶體單元,以儲存一磁碟扇區中所儲存之使用者資料量(即512個位元組)加上某些額外負擔資料。在另一種方法中,每一群組包含足夠之單元,以保存數千個位元組之使用者資料,此等於許多個磁碟扇區之資料。在第5,297,148號美國專利中即說明瞭多塊擦除、缺陷管理及其他快閃EEPROM系統特徵。
如同在大多數積體電路應用中,快閃EEPROM系統亦存在縮小構建某些積體電路功能所需之矽基板區域的壓力。人們不斷地期望增加可儲存在一矽基板之既定區域中之數位資料量,以增大一既定大小記憶卡及其他類型之封裝的儲存容量,或者既增大容量又減小大小。另一種增大資料儲存密度之方法係每一儲存單元儲存多於一個位元之資料。此藉由將一儲存元件電荷位凖電壓範圍窗口劃分成多於兩種狀態來達成。使用四個此種狀態能夠使每一單元儲存兩個位元之資料,使用八種狀態能夠每一單元儲存三個位元之資料,依此類推。一多狀態快閃EEPROM結構及作業係闡述於美國專利第5,043,940號及第5,172,338號中。
另一種類型之記憶體單元包括兩個儲存元件,亦可在每一儲存元件上以多種狀態工作。在此種類型之單元中,在源極擴散區與汲極擴散區之間的其溝道上包含兩個儲存元件,且其中間具有一選擇電晶體。沿每一行儲存元件包含一導引閘極,且沿每一列儲存元件於該導引閘極上提供一字線。當存取一既定儲存元件以讀取或程式規劃時,含有所涉及儲存元件之單元中之另一儲存元件上方之導引閘極升至足夠高,以導通該另一儲存元件下方之溝道,而無論其上面所存在之電荷位凖如何。此可有效地消除另一儲存元件作為讀取或程式規劃相同記憶單元之所涉及儲存元件中的一因素。例如,此時,流經該單元之電流量(可用於讀取其狀態)係所涉及儲存元件上電荷量之函數,而非同一單元中另一儲存元件上之電荷量之函數。此種單元陣列架構及運作技術之實例闡述於第5,712,180號、第6,103,573號及第6,151,248號美國專利中。
另一種快閃EEPROM架構則利用一NAND陣列,其中由多於兩個儲存單元(例如16個或32個)構成之串行串連同一或多個選擇電晶體連接於各單獨位元線與一參考電位之間以構成單元行。各字線延伸跨過大量該等行內之單元。在程式規劃期間,藉由如下方式來讀取及驗證一行中之一單獨儲存單元:強導通該串中之其餘單元,以使流經一串之電流取決於所定址之單元中所儲存電荷之位凖。在第5,570,315號、第5,774,397號及第6,046,935號美國專利中可找到一NAND架構陣列及其作為儲存系統一部分之作業之實例。
當前快閃EEPROM陣列之電荷儲存元件及上文所提及專利及文章中所述之元件係最常用之導電性浮動閘極,其通常由經摻雜之多晶矽材料製成。適用於快閃EEPROM系統之另一種類型之記憶體單元利用一非導電性介電材料取代導電性浮動閘極以非揮發性方式儲存電荷。此一單元闡述於一由Chan等人所著之論文「真正之單電晶體氧化物-氮化物-氧化物EEPROM器件(A True Single-Transistor Oxide-Nitride-Oxide EEPROM Device)」(IEEE電子器件通訊(IEEE Electron Device Letters),第EDL-8卷,No.3,1987年3月,第93-95頁)中。一由氧化矽、氮化矽及氧化矽(「ONO」)形成之三層電介質被夾於一導電性控制閘極與記憶體單元溝道上方一半導電性基板之表面之間。儲存單元係藉由將電子自單元溝道注入氮化物內來程式規劃,其中電子被陷獲並儲存於一有限區域中。然後,所儲存之電荷以一可偵測方式改變單元溝道之一部分之臨限電壓。單元係藉由將熱空穴注入氮化物內來得到擦除。亦參見由Nozaki等人所著之「用於半導體碟片應用之具有MONOS儲存單元之1-Mb EEPROM(A 1-Mb EEPROM with MONOS Memory Cell for Semiconductor Disk Application)」(IEEE固態電路雜誌(IEEE Journal of Solid-State Circuits)第26卷,No.4,1991年4月,第497-501頁),其闡述了一種具有分裂閘極構造之類似單元,其中一經摻雜之多晶矽閘極延伸於記憶體單元溝道之一部分上方以形成一單獨之選擇電晶體。
第5,851,881號美國專利於記憶體單元溝道上方使用兩個彼此毗鄰定位之儲存元件,其中一個儲存元件為此一介電元件,而另一元件為一電導性浮動閘極。可儲存兩個位元之資料,其中一個位元儲存於介電元件中,而另一個位元儲存於浮動閘極中。藉由將該兩個閘極中之每一閘極程式規劃於兩個不同電荷位凖範圍之一中,可將儲存單元程式規劃於四個不同臨限位凖組合之一中,從而表示四種儲存狀態之一。
另一種利用一介電儲存元件在每一單元中儲存兩個位元之方法由Eitan等人闡述於「NROM:一種新穎之局部化陷獲,2-位元非揮發性儲存單元(NROM:A Novel Localized Trapping,2-Bit Nonvolatile Memory Cell)」(IEEE電子器件通信(IEEE Electron Device Letters),第21卷,第11號,2000年11月,第543-545頁)中。一ONO介電層延伸跨越源極擴散區與汲極擴散區之間的溝道。一個資料位元之電荷集中在毗鄰汲極之介電層中,另一資料位元之電荷則集中在毗鄰源極之介電層中。多狀態資料儲存係藉由分別讀取電介質內空間上分離之電荷儲存區域之二進製狀態來實現。
一典型非揮發性快閃陣列之記憶體單元被劃分成可一同擦除之分立單元區塊。換言之,該塊係擦除單位。每一區塊通常儲存一或多個資料頁,頁係程式規劃和讀取單位,雖然在一單個作業中可程式化或讀取多於一個頁。每一頁通常儲存一個或多個資料區段,區段之尺寸由主機系統界定。其一實例係一區段有512個位元組之使用者資料(遵循一關於磁碟驅動器建立之標準)加上一定數量位元組的關於使用者資料及/或儲存該使用者資料之塊的額外負擔資訊。
有時,必須擦除區塊以騰出塊用於寫入作業。於此情況下,在擦除原始塊之前,合倂欲擦除區塊內之有效資料頁(原始塊)並將其拷貝至另一區塊(更新區塊)。該過程被稱作「垃圾收集」。在垃圾收集過程中,來自原始塊之其餘有效資料頁被自原始塊拷貝至更新區塊。一旦完成拷貝作業,即擦除原始塊,然後更新區塊變成原始塊。
通常,諸如上文所述彼等用於垃圾收集之拷貝作業需要涉及記憶體控制器。一種用於提高資料自一個位置拷貝至另一個位置之速度的技術係藉由使用一稱作晶片上拷貝之特徵來減小控制器在拷貝作業中之牽扯。晶片上拷貝提供一特徵,藉此可讀取資料、修改資料並將資料寫回該記憶體,而無需將所有資料轉移至該控制器,然後再轉移回該記憶體。晶片上拷貝提供了在一記憶體單元陣列中將資料自一個位置拷貝至另一個位置而無需將資料傳輸至該控制器之功能性。該技術闡述於美國專利第6,266,273號中並指配給本發明之受讓人SanDisk公司。
上文所確定之專利、專利申請案、文章及書籍部分之全文均以引用方式明確地倂入本背景技術部分中。
概言之,本發明提供多種用於資料重定位作業之方法,其中資料自一第一記憶體位置拷貝至一可再程式非揮發性記憶體系統之第二記憶體位置。資料被自該第一位置讀入該記憶體上之一暫存器或緩衝記憶體,然後直接拷貝至第二位置或轉移至該系統之控制器,此處可檢查資料,且若需要可依據其相關聯之錯誤校正碼(ECC)來校正資料。於本發明之第一態樣中,為提高效能,無需針對每一資料拷貝檢查ECC。相反,可依據預定之選擇標準選擇性地檢查ECC。若未選擇ECC檢查,則使記憶體執行一資料自第一位置至第二位置之晶片上拷貝,或者依據是否找到ECC錯誤按來繼續上文所述之作業。預定選擇標準可係一取樣機理,該機理可基於隨機或具確定性。
於本發明中可與第一態樣組合使用或單獨使用之另一態樣中,使用一傳輸旗標方法。依據是否將資料傳輸至該控制器以用於錯誤偵測及校正作業,可設定一傳輸旗標值。若將資料傳輸至主機並確定無需校正錯誤,則不設定旗標;若需要並成功地執行一錯誤校正作業,則設定該傳輸旗標。然後,依據該旗標值做出是否需要將一經更正形式之資料返回至該記憶體以便拷貝進該第二位置之決定。
於本發明之再一態樣中,當資料由一使用者資料部分或一標頭或額外負擔部分組成時,且該等部分中之每一部分皆具有其相關聯之ECC時,可獨立於使用者資料部分處理額外負擔部分之錯誤偵測及校正作業。於實例性實施例中,將額外負擔首先傳輸至該控制器用於錯誤偵測及校正。若亦欲處理使用者資料,則其跟隨其後。特定而言,用於決定是否傳輸使用者資料之取樣機制之一實例係依據額外負擔內容。
本發明之其他態樣、特徵及優點包括在下文對具體代表性實施例之說明中,該說明應結合如下圖式來理解。
圖1係一其中可實施本發明的第一非揮發性記憶體系統之方塊圖;將大量可單獨定址之儲存單元11佈置成一由列及行構成的規則陣列,但亦可具有其他單元實體佈置方式。如上文在先前技術中及在併入本文中之參考文獻中所述,該系統尤其適用於陣列11為NOR型。位元線(在此處指定為沿單元陣列11的行延伸)藉由線15與一位元線解碼及驅動電路13電連接。字線(在本說明中指定為沿單元陣列11的列延伸)藉由線17電連接至一字線解碼及驅動電路19。導引閘極(其沿陣列11的儲存單元行延伸)藉由線23電連接至一導引閘極解碼及驅動電路21。每一解碼器13、19及21均藉由一匯流排25自一記憶體控制器27接收記憶體單元位址。該等解碼及驅動電路亦藉由各自之控制及狀態信號線29及31連接至控制器27。施加至導引閘極及位元線的電壓藉由一使解碼及驅動電路13與21互連的匯流排22來協調。該控制器包含各種類型之暫存器及其他記憶體,包括一揮發性隨機存取記憶體(RAM)28。
控制器27可經由線35連接至一主機裝置(未圖示)。該主機可係個人電腦、筆記型電腦、數位照相機、音頻播放器、各種其他手持式電子裝置及類似裝置。圖1所示記憶體系統將通常構建於一依據數種現行物理及電氣標準之一(例如由PCMCIA、CompactFlashTM
協會、MMCTM
協會及其他組織頒佈的標準)的卡中。當呈一卡形式時,線35端接於卡上的一連接器中,該連接器介接主機裝置之互補連接器。許多卡的電介面遵循ATA標準,其中在主機看來,儲存系統仿佛係一磁碟驅動器。亦存在其他記憶體卡介面標準。作為卡形式之替代形式,圖1所示類型的儲存系統可永久性地嵌
入主機裝置中。
解碼及驅動電路13、19及21根據各自之控制及狀態線29及31內的控制信號,在匯流排25上所定址的其陣列11之相應線中產生適當電壓,以執行程式規劃、讀取及擦除功能。包括電壓位凖及其他陣列參數在內之任何狀態信號均由陣列11藉由相同之控制及狀態線29及31提供至控制器27。電路13內的複數個感測放大器接收可表示陣列11內所定址儲存單元狀態的電流及電壓位凖,並在讀取作業期間藉由線41給控制器27提供關於該些狀態的資訊。為能夠並行讀取大量儲存單元之狀態,通常使用大量的感測放大器。在讀取及程式規劃作業期間,通常藉由電路19每次定址一列單元,以便存取所定址列中由電路13及21選擇的多個單元。在一擦除作業期間,通常將許多列之每一列中之所有單元一同定址為一個塊以便同時擦除。
例如圖1所示的記憶體系統之作業進一步闡述於在上文背景技術部分的NOR陣列章節中所標明的專利及文章中,以及受讓於本申請案之受讓人-SanDisk公司的其他受讓專利中。此外,在2001年2月26日提出申請的第09/793,370號美國專利申請案中說明瞭一種資料程式規劃方法,該申請案以引用方式併入本文中。
圖2係一其中可實施本發明的另一非揮發性記憶體系統之方塊圖。包括複數個佈置成一矩陣形式之記憶體單元M的記憶體單元陣列1由一行控制電路2、一列控制電路3、一c-源極控制電路4及一c-p-井控制電路5來控制。記憶體單元陣列1可係上文在背景技術部分中及在以引用方式倂入本文中的參考文獻中所述的NAND型記憶體單元陣列。一控制電路2連接至記憶體單元陣列1的位元線(BL),以用於讀取儲存在記憶體單元(M)中之資料、用於在一程式規劃作業期間確定記憶體單元(M)之狀態、及用於控制位元線(BL)之電位位凖以促進程式規劃或禁止程式規劃。列行控制電路3連接至字線(WL),以選擇其中一條字線(WL)、施加讀取電壓、施加與由列控制電路2所控制之位元線電位位凖相組合的程式規劃電壓、及施加一與一上面形成有記憶體單元(M)之p-型區域之電壓相耦合的擦除電壓。c-源極控制電路4控制一連接至記憶體單元(M)的共用源極線(在圖2中標記為「c-源極」)。c-p-井控制電路5則控制c-p-井電壓。
儲存於記憶體單元(M)中之資料由行控制電路2讀出並經由I/O線及一資料輸入/輸出緩衝器6輸出至外部I/O線。擬儲存於記憶體單元中之程式規劃資料經由外部I/O線輸入至資料輸入/輸出緩衝器6,並傳輸至行控制電路2。外部I/O線連接至一控制器43。控制器43包括各種通常處於一揮發性隨機存取記憶體(RAM)50中的各種類型之暫存器及其他記憶體。
用於控制快閃記憶體裝置的命令資料輸入至命令電路7,命令電路7連接至與控制器43相連的外部控制線。命令資料通知快閃記憶體所請求的係何種作業。輸入命令被傳輸至一狀態機8,該狀態機8控制列控制電路2、列控制電路3、c-源極電路4、c-p-井控制電路5及資料輸入/輸出緩衝器6。狀態機8可輸出快閃記憶體的狀態資料,例如READY/BUSY(準備就緒/忙)或PASS/FAIL(成功/失敗)。狀態機8亦包括若干暫存器及其他揮發性隨機存取記憶體45。
控制器43連接或可連接至一主機系統,例如一個人電腦、數位照相機或個人數位助理。該主機起始命令(例如向記憶體陣列1儲存或自記憶體陣列1讀取資料的命令),並分別提供或接收該資料。控制器將該些命令轉換成可由命令電路7解譯及執行的命令信號。控制器通常還包含用於將使用者資料寫入至記憶體陣列或自記憶體陣列讀取使用者資料的緩衝記憶體。一典型之記憶體系統包含一個包含控制器43之積體電路晶片47、及一或多個分別包含一記憶體陣列及相關聯控制電路、輸入/輸出電路及狀態機電路的積體電路晶片49。當然,目前之趨勢係將系統之記憶體陣列及控制電路一同整合在一或多個積體電路晶片上。
圖1及圖2之任一記憶體系統均可嵌入作為主機系統之一部分,或者可包含於一可以抽換方式插入主機系統中一配合插座內之記憶體卡中。此一卡可包括整個記憶體系統,或者可將帶有相關聯外圍電路之控制器及記憶體陣列設置於單獨卡中。舉例而言,在美國專利第5,887,145號中闡述數種卡實施方案,該專利之全文以引用方式明確地倂入本文中。
圖3係一方塊圖,其顯示一在圖1或圖2之任一記憶體系統中用於拷貝具有一相關聯錯誤校正碼(ECC)之資料的實例性系統。圖3顯示當將一頁資料自一個位置寫入另一個位置時,控制器27、43與記憶體塊320之間的交互作用。記憶體塊320包括複數個處於位置310、315及325之頁。位置325處所示之頁顯示記憶體內典型頁之內容並包括使用者資料330及額外負擔335。額外負擔335(亦稱作標頭)含有標頭ECC 340及資料ECC 345。於其他實施例中,使用一單個ECC涵蓋標頭與資料二者。額外負擔335亦包含關於使用者資料或頁或塊特徵之額外資料350,例如程式規劃電壓等。位置310及315處之頁同樣包含使用者資料及額外負擔資料,但為便於說明,不顯示該等資料。
資料重定位作業包括按照箭頭365將一資料單元自記憶體320內之一第一位置移動至一第二位置。於該實例性實施例中,此包括如箭頭365a所示將該資料頁自位置1310移動至記憶體暫存器390,然後如箭頭365b所示返回位置2315。若不檢查該資料頁,則該資料將不被發送至控制器。若檢查該頁,則在傳輸至暫存器之後,來自第一位置310內之一頁的資料被傳輸至控制器電路27、43內之緩衝器或快取記憶體(28,50),在此處使用ECC電路305執行一ECC檢查。箭頭355顯示自記憶體內一第一位置至該控制器之資料傳輸。圖1及圖2所示系統之控制器27、43與記憶體陣列11、1之間的命令/狀態信號分別提供用於執行事務之構件,並可構建於(例如)韌體內。
若存在ECC錯誤,則校正該錯誤,然後按箭頭360所示將經校正之資料傳輸至記憶體內之一第二位置315,然後傳輸至第二位置315上。然而,若無ECC錯誤,則可執行晶片上拷貝,從而避免必須將所讀取之資料自該控制器寫回該記憶體。晶片上拷貝作業由箭頭365a與365b顯示,其中將位置310處之頁拷貝至記憶體陣列1、11之塊320內之位置315處。(依據所用架構,記憶體上可存在數個暫存器或緩衝器390,舉例而言,每一記憶體平面均可具有用於在讀取及寫入期間快取資料之主僕式佈置。)
圖4係一流程圖400,其顯示當拷貝具有一相關聯之錯誤校正碼(ECC)時,圖1或圖2之任一記憶體系統的一實例性拷貝作業。流程圖400顯示一種方法,其用於將資料自一第一位置拷貝至一包括記憶體控制器27、43之系統之一可再程式非揮發性記憶體之一第二位置。該資料具有一相關聯之錯誤校正碼(ECC)。在資料於記憶體內傳輸期間,使用ECC校正發生的錯誤。
於401處起始拷貝作業,且在405處將欲拷貝之資料自一第一記憶體位置讀入一記憶體暫存器,然後讀入至該控制器上。該控制器內所讀取之資料包含根據該資料計算並與其一起程式規劃的ECC,ECC可與所讀取之資料處在同一頁內或其他地方。於圖3所示之實例性系統中,將該ECC程式規劃在相同頁中,然而,可將該ECC儲存於他處。在410處檢查所讀取資料上之ECC以暴露可能之ECC錯誤。於415處,確定是否已找到ECC錯誤。若發現ECC錯誤,則於425處校正控制器內所讀取資料中之錯誤,並於430處使控制器將所校正之資料寫入至該記憶體之第二位置,從而在499處完成該拷貝作業。若不能校正該錯誤,則中斷該拷貝作業或在中斷之前可進行多次再試。若未發現ECC錯誤,則於420處使記憶體將該資料自該第一位置拷貝至該第二位置。因此,若無ECC錯誤且該資料無需校正,則可將保留在記憶體上之拷貝直接寫入至該第二位置。此提供了在將資料寫回至該記憶體之過程中無需牽涉控制器之優點,因此使得拷貝作業更快,同時仍保留檢查ECC之優點。
本發明具有諸多進一步改良資料重定位過程之態樣。該等態樣及其各種組合顯示於圖5-10之各流程中。圖5添加不在每一重定位作業中而僅針對一子集合重定位檢查ECC之態樣。可基於(例如)確定性或隨機(偽隨機)來確定該子集合。此省卻了必須針對每一正重定位之資料集合將資料傳輸至該控制器。圖6利用圖3中所示將單獨ECC碼用於每一區段內之使用者資料及額外負擔之情況。此允許單獨地處理標頭ECC及資料ECC。圖7添加諸多特徵至圖6以改良其效能,其中包括引入一旗標結構以指示該資料是否將自該控制器傳輸回該主機。圖8將取樣機制添加至圖6之實施例以進一步改良效能。取樣機制係對圖5技術之改變,其中係依據取樣決定是否檢查該資料ECC。圖9組合圖7與圖8之過程。最後,除僅將一單個ECC用於整個區段之情況外,圖10類似於圖8,因此,除依據取樣決定是否檢查一既定資料集合外,圖10亦與圖5類似。
所有所述重定位方法皆可藉由納含2004年5月13日申請之美國專利申請案第10/846,289號之技術得以進一步改良,該申請案以引用方式倂入本文中。此外,雖然根據圖1及圖2中所示之實例性Flash EEPROM記憶體來提供本發明之各種態樣,但該等態樣一般更適於2004年5月7日申請之美國專利申請案第10/841,379號中所述的各種非揮發性記憶體系統,該申請案亦以引用方式倂入本文中。
圖5係一流程圖500,其顯示當拷貝具有一相關聯ECC之資料時,圖1或圖2之任一記憶體系統的實例性拷貝作業。拷貝作業提供在535處決定在將資料自該第一位置讀取(405)至該資料暫存器後是否檢查ECC之額外功能。可依據預定選擇標準做出該決定535。於本發明之一實例性實施例中,預定選擇標準可係一取樣機制。可使用基於隨機或確定性之演算法來構建該取樣機制。舉例而言,一基於隨機之取樣機制可使用一基於隨機之演算法來達成對ECC之隨機間隔檢查。該等基於隨機之演算法為吾人所習知,參見(例如)美國專利第6,345,001號,該專利以引用方式倂入本文中,且其中在一略微不同之情形中將此等演算法應用於非揮發性記憶體。對於確定性取樣,取樣機制可達成每(例如)四個拷貝作業檢查一次ECC。另一選擇係,可每一拷貝作業檢查一次ECC。每一拷貝作業皆檢查ECC可提供高可靠性並防止拷貝錯誤,但在效能之速度方面牽涉一折衷。
於本發明之一實例性實施例中,取樣機制可使用可用於該系統之位元,舉例而言包含在額外負擔資料335內之位元及旗標。於圖3所示之實例中,使用者資料ECC及標頭資料ECC包括在額外負擔資料335內,但除ECC外,額外負擔資料還包括一部分350。額外負擔資料部分350包括一邏輯塊位址(LBA)及一時間戳記,並可包括各種旗標,例如:資料旗標、塊類型旗標、專用旗標及塊旗標。LBA包括一頁標籤及一邏輯塊編號(LBN)。該頁標籤指示一區塊內之邏輯頁,並可與一平面或記憶體子陣列有關。LBN係一用於將物理塊中之資料鏈接至其邏輯塊位址之欄位。此允許一主機系統查找並擷取先前寫入之資料。時間戳記指示資料之相對年齡並與該邏輯塊位址欄位相關聯。每當將一邏輯塊指配給一新物理塊,即為彼塊增加該時間戳記。該值可用於區別該等具有相同邏輯塊位址之塊中哪一個塊係最近寫入之塊。出於取樣目的,可使用與塊或頁相關聯之其他資訊,包括(例如)熱計數及關於需如何頻繁地擦除該塊之資訊。另一選擇係,取樣機制可涉及跟蹤機制,該跟蹤機制不包括有實際資料,且單獨儲存,但仍與該頁相關聯。
於本發明之一實例性實施例中,該取樣機制將LBA之最後兩個位元與時間戳記之最後兩個位元相比較。然後根據該比較結果選擇ECC檢查。此有效地達成四分之一取樣,從而每四個拷貝作業檢查一次ECC。此取樣進一步改良記憶體效能。
若使用取樣機制,則於535處決定是否檢查與所讀取資料相關聯之ECC。若於535處之該決定指示將不檢查ECC,則於420處使記憶體將資料自該第一位置拷貝至該第二位置,從而於599處完成該拷貝作業。若於535處該決定指示將要檢查ECC,則處理按照上文於圖4中410、415、425及430處所述繼續。
圖6係一流程圖600,其顯示當拷貝具有一相關聯之(ECC)資料時圖1或圖2之任一記憶體系統之實例性拷貝作業。於該實例中,該可再程式非揮發性記憶體內第一位置與第二位置之內容包括使用者資料及與該使用者資料相關聯之標頭資料,其中該標頭資料包括與該使用者資料相關聯之資訊,例如ECC資訊。使用者資料ECC及標頭資料ECC可儲存於該頁內或其他地方,但在該特定實例中,使用者資料ECC與標頭資料ECC兩者皆如圖3所示及上文所述儲存於該頁之標頭部分內。注意,雖然該特定實例闡述單獨之標頭與資料ECC,然而,該技術同樣適用於單一ECC包含標頭與資料兩者之情況。於圖6-9所示之實例中,單獨檢查標頭資料之ECC(作為一開始步驟)以確定該使用者資料之ECC是否值得檢查;下文針對圖10論述該等技術之實例如何適用於標頭及資料之共同ECC之情況。於圖1及圖2中所示記憶體系統之實例中,若發現標頭具有一無法校正之ECC錯誤,則假設與彼標頭資料相關聯之使用者資料無效。
於601處起始流程圖600中所示之拷貝作業,並於605處發出一讀取命令。讀取命令被發送至控制器27、43,以起始對記憶體單元陣列11、1內第一位置之讀取。該第一位置之內容可包括使用者資料及與該使用者資料相關聯之標頭資料。控制器27、43解釋該讀取命令並將該標頭資料傳輸至控制器27、43之隨機存取記憶體(RAM)28、50。該控制器之RAM係用作欲拷貝位置之內容之臨時儲存位置。以此方式使用之控制器RAM亦稱作暫存RAM或SPR。
在615處檢查標頭資料以確定是否存在ECC錯誤,若存在錯誤,則於620處確定該標頭資料ECC錯誤是否可校正。若該標頭資料ECC錯誤不可校正,則於650處設定一指示符以通知該控制器該使用者資料無效。此一指示符之一實例係因應該使用者資料是有效還是無效來設定或清除的資料旗標位元。該資料旗標位元可包含在額外負擔部分335或可儲存在其他地方。
若該標頭資料ECC錯誤可校正,則於623處校正該錯誤,且於625處將使用者資料讀入或傳輸至該控制器RAM。於一標準晶片上拷貝作業中,使用者資料自記憶體陣列1、11中一第一位置拷貝至記憶體陣列1、11中一第二位置,而不被傳輸至該控制器27、43。在多個晶片上拷貝作業後,資料會隨時間降級以包括足夠數量的藉助ECC無法校正之多位元錯誤。
在625處將使用者資料傳輸至控制器RAM 28、50產生一關於使用者資料之ECC狀態。此處將使用一ECC狀態檢查來防止儲存於一記憶體位置之使用者資料在未被讀取且未對該使用者資料進行任何ECC檢查之情況下而被拷貝多次。
若在630處發現一關於該使用者資料之ECC錯誤,則於635處確定該ECC錯誤是否可校正。若該ECC錯誤不可校正,則於650處設定一指示符以通知該控制器該使用者資料無效。如上所述,該指示符係一用於達成該目的之資料旗標位元。根據該使用者資料狀態係有效或無效來設定或清除該資料位元(反之亦然)。
若該ECC錯誤可校正,則於637處校正該使用者資料,且然後於640處傳輸回該記憶體晶片。於640處,可使該控制器完成於640處將資料傳輸回該記憶體晶片。在資料傳輸之後,於645處將一新標頭傳輸回該記憶體晶片。在其可能已作為拷貝作業之結果已得到更新之意義上,該標頭資料為新的。即使於620或635處該ECC錯誤不可校正,仍於645處將該新標頭拷貝回去,此乃因其將含有於650處經設定以指示該錯誤之資料旗標位元。此允許將該錯誤旗標儲存於該缺陷區段,以便當存取該區段時該資訊可供使用。在於699處完成當前拷貝作業之前,於646處發出新的位址及寫入命令。
若於630處確定未發現一關於該使用者資料之ECC錯誤,則使用者資料不被寫回至該記憶體。若未發現ECC錯誤則不將使用者資料部分寫回至該記憶體之一原因係利用晶片上拷貝作業之優點。
圖7係一流程圖700,其顯示當拷貝具有一相關聯錯誤校正碼(ECC)之資料時圖1或圖2之任一記憶體系統之實例性拷貝作業。流程圖700給流程圖600中所示之方法提供額外之功能,其包括多次嘗試ECC檢查之再試機制及指示何時將資料傳輸回該記憶體晶片之旗標設定/清除機制。
於721處,再試機制提供一其中檢查一再試計數之決定點。苦於620處標頭ECC錯誤不可校正或於635處使用者資料ECC錯誤不可校正,則於721處達到該決定點。若於721處再試次數用完,則於650處處理繼續,此處設定一資料旗標位元以指示無效資料。否則,若再試次數未用完,則於722處增加再試計數,且處理繼續執行605處之另一讀取命令。再試計數在確定標頭ECC不可校正處提供多次再試。再試計數可為預定或基於該拷貝作業之某些標準。
若於630處發現一關於該使用者資料之錯誤,則於635處確定該使用者資料ECC錯誤是否可校正。若該ECC錯誤不可校正,則於721處檢查該再試計數,且若再試數量已用完,則於650處設定一指示符以通知該控制器該資料無效。上文對資料無效指示符予以進一步闡述。若於635處確定該資料ECC錯誤可校正,則於736處校正該ECC錯誤,並於756處設定一資料傳輸旗標。資料傳輸旗標為一資料係正確並應傳輸回該記憶體晶片之指示符。資料傳輸旗標可作為該等代碼旗標其中之一儲存於該控制器中或可儲存於他處。然後於645處將新的或經更新之標頭傳輸回該記憶體晶片。然後於755處檢查資料傳輸旗標。若於755處設定該資料傳輸旗標,則於640處將資料傳輸回該記憶體晶片。若正拷貝多個區段,則接下來在741處確定是否存在更多欲處理之區段,且若存在,則於610處將下一區段之標頭傳輸至該控制器RAM內。然後按照上文所述處理下一區段。若於741處未發現有更多區段,則處理於799處結束。
若於630處未發現資料ECC錯誤,則於757處清除一資料傳輸旗標以指示該資料不應被傳輸回該記憶體晶片。在未發現資料ECC錯誤之情況下於757處清除該資料傳輸旗標可藉由無需將資料傳輸回該記憶體晶片來提供一效能最佳化。若不存在關於該資料之ECC錯誤,則被拷貝之資料可能在一晶片上拷貝中係正確,此處使該記憶體將該資料自一第一位置拷貝至一第二位置通常即足矣。藉由在事務中不牽涉控制器且取而代之藉由使用該晶片將該資料自該第一位置拷貝至該晶片上之第二位置來改良效能。
圖8係一流程圖800,其顯示當拷貝具有一相關聯錯誤校正碼(ECC)之資料時圖1或圖2之任一記憶體系統之實例性拷貝作業。流程圖800添加對一可校正標頭最佳化之特徵並執行一取樣機制以確定是否檢查ECC。此等特徵將於下文中予以詳細說明。另外,流程圖800包括上述流程圖700中之諸多特徵,例如再試機制,但不包括旗標設定/清除機制以指示何時將資料傳輸回該記憶體晶片。下文將僅詳細闡述該等額外特徵。關於進一步之資訊,參見上文對圖6-7之論述。
若於620處確定該標頭ECC錯誤係可校正,則於723處校正該標頭ECC。此處,可於870處做出對一可校正標頭最佳化之決定。若該標頭可校正,則可假設不必每一單個拷貝作業皆檢查ECC並可使用一取樣機制來提供最佳效能。若於870處選擇該標頭最佳化,則於每一拷貝作業期間將不檢查該資料ECC,而是根據一取樣機制予以檢查,下文將進一步闡述該取樣機制。在該等實例性實施例之一變化中,即使於620處該標頭不可校正,該資料可仍被傳輸至該控制器用於一錯誤偵測/校正作業,此乃因重建該區段之標頭係可能。
若於870處選擇標頭最佳化,則於875處檢查一再試臨限值。可根據結合721及722所論述之再試計數在處理中之一不同點執行該再試臨限值,並可依據何種條件適合而將該再試臨限值設定至不同數量。於875處之再試臨限值之一用途係視需要防止在錯誤條件中拷貝過程之標頭最佳化。再試臨限值可預定或基於某一適合於該拷貝作業之標準。在875處之再試臨限值檢查係用於確定是否於860處應用一取樣機制。若於875處超過再試臨限值,則不選擇取樣機制,則於625處處理繼續將該資料傳輸至控制器RAM。
若於870處選擇該標頭最佳化,且於875處尚未超過再試臨限值,則於860處執行一取樣機制。取樣機制係一預定選擇標準之實例,其可用於確定是否檢查關於該資料之ECC。該取樣機制可係基於隨機或具確定性,並在圖5之論述中更詳細地予以闡述。
檢查應用取樣機制之結果,並於865處確定是否需要檢查該資料ECC。若於875處確定需要檢查該資料ECC,則於625處該處理繼續將該資料傳輸至控制器RAM。若於865處不欲檢查資料ECC,則於625處不存在資料傳輸至該控制器記憶體或自控制器記憶體之傳輸,此乃因於此情況下將不檢查資料ECC。若需要檢查該資料ECC,則無需將該資料傳輸至該控制器。
剩餘之處理步驟類似於上文論述圖6-7中所說明之彼等步驟。
圖9係一流程圖900,其顯示當拷貝具有一相關聯錯誤校正碼(ECC)之資料時圖1或圖2之任一記憶體系統之實例性拷貝作業。流程圖900藉由組合上文所述圖6-8之特徵來提供改良之效能,該等特徵包括選擇性晶片上拷貝及其中可使用一取樣機制確定何時執行該ECC檢查之選擇性ECC檢查。更具體而言,其將圖8之步驟860、865、870及875之最佳化及取樣添加至圖7之流程。
圖6-9全部係針對將單獨ECC用於標頭及使用者資料之情況。引入圖7-9中之諸多特徵亦可應用於組合ECC之情況(或具有未利用之單獨ECC之情況)。舉例而言,圖10引入於圖8中發現之諸多特徵,但僅使用一單個ECC。
更具體而言,該過程於1001處以發出一讀取命令開始,其中再試計數於605處被設定為0。於860處使用取樣機制以於865處確定是否檢查正被重定位之區段。若不檢查,則執行該區段之一晶片上拷貝,並於741處該處理繼續至其他區段(若存在更多區段),或於1099處終止(若不存在更多區段)。若確定需要檢查該區段,則於610/625處將標頭及使用者資料兩者皆自該記憶體暫存器傳輸至該控制器。除一起處理標頭及使用者資料而非單獨處理標頭ECC外,該過程之剩餘部分跟隨在615/630後,如同其跟隨在圖8之630後。
儘管已針對具體實例性實施例闡述本發明之各個態樣,但應瞭解,本發明在隨附申請專利範圍之整個範疇內受到保護。上文所涉及之專利、專利申請案、文章及書籍部分之全文皆因此以引用方式明確地倂入本背景技術部分中。
1...記憶體單元陣列
2...行控制電路
3...列控制電路
4...c-源極控制電路
5...c-p-井控制電路
6...資料輸入/輸出緩衝器
7...命令電路
8...狀態機
11...儲存單元
13...驅動電路
15...線
17...線
19...驅動電路
21...驅動電路
22...匯流排
23...線
25...匯流排
27...控制器
28...緩衝器或快取記憶體
29...控制及狀態信號線
31...控制及狀態信號線
35...線
41...線
43...控制器
45...揮發性隨機存取記憶體
47...積體電路晶片
49...積體電路晶片
50...緩衝器或快取記憶體
305...ECC電路
310...第一位置
315...第二位置
320...記憶體塊
330...使用者資料
335...額外負擔
340...標頭ECC
345...資料ECC
350...額外資料
355...箭頭
360...箭頭
365...箭頭
365a...箭頭
365b...箭頭
390...記憶體暫存器
400...流程圖
500...流程圖
600...流程圖
700...流程圖
800...流程圖
900...流程圖
1000...流程圖
圖1係一其中可實施本發明之第一非揮發性記憶體系統之方塊圖。
圖2係一其中可實施本發明之第一非揮發性記憶體系統的方塊圖。
圖3係一方塊圖,其顯示一在圖1或圖2之任一記憶體系統中用於拷貝具有一相關聯錯誤校正碼(ECC)之資料的實例性系統。
圖4係一流程圖,其顯示一在圖1或圖2之任一記憶體系統中用於拷貝具有一相關聯錯誤校正碼(ECC)之資料的實例性方法。
圖5係一流程圖,其顯示一在圖1或圖2之任一記憶體系統中用於拷貝具有一相關聯錯誤校正碼(ECC)之資料的實例性方法。
圖6係一流程圖,其顯示一在圖1或圖2之任一記憶體系統中用於拷貝具有一相關聯錯誤校正碼(ECC)之資料的實例性方法。
圖7(包括圖7A及圖7B)係一流程圖,其顯示一在圖1或圖2之任一記憶體系統中用於拷貝具有一相關聯錯誤校正碼(ECC)之資料的實例性方法。
圖8(包括圖8A及圖8B)係一流程圖,其顯示一在圖1或圖2之任一記憶體系統中用於拷貝具有一相關聯錯誤校正碼(ECC)之資料的實例性方法。
圖9(包括圖9A及圖9B)係一流程圖,其顯示一在圖1或圖2之任一記憶體系統中用於拷貝具有一相關聯錯誤校正碼(ECC)之資料的實例性方法。
圖10係一流程圖,其顯示在圖1或圖2之任一記憶體系統中用於拷貝具有一包括標頭及資料兩者之相關聯錯誤校正碼(ECC)之實例性方法。
Claims (44)
- 一種於一包括一控制器部分及一記憶體部分且該記憶體部分包括一可程式非揮發性記憶體陣列之記憶體系統中用於將資料自該記憶體陣列之一第一位置重定位至該記憶體陣列之一第二位置之方法,該方法包括:將該資料自該第一位置讀入該記憶體部分上一暫存器;在該控制器部分中確定是否對該資料執行一錯誤偵測及校正作業,其中該確定係在不傳輸該資料的一拷貝至該控制器部分的情況下執行;及因應確定不對該資料執行該錯誤偵測及校正作業,在不傳輸該資料的該拷貝至該控制器部分的情況下將該資料自該暫存器寫入該第二位置。
- 如請求項1之方法,其中該確定是否執行該錯誤偵測及校正作業係確定性機制。
- 如請求項1之方法,其中該確定是否執行該錯誤偵測及校正作業係基於隨機或偽隨機。
- 如請求項1之方法,其中該確定是否執行該錯誤偵測及校正作業係基於一取樣機制。
- 如請求項4之方法,其中該取樣機制係基於與該資料相關聯之額外負擔資料。
- 如請求項5之方法,其中該取樣機制包括將一與該資料相關聯之時間戳記與該資料之邏輯位址資訊相比較。
- 一種於一包括一控制器部分及一記憶體部分且該記憶體 部分包括一可程式非揮發性記憶體陣列之記憶體系統中用於將資料自該記憶體陣列之一第一位置重定位至該記憶體陣列之一第二位置之方法,該方法包括:將該資料自該第一位置讀入該記憶體部分上一暫存器;確定是否在該控制器部分中對該資料執行一錯誤偵測及校正作業,其中該確定係在不傳輸該資料的一拷貝至該控制器部分的情況下執行;因應確定對該資料執行該錯誤偵測及校正作業,傳輸該資料之該拷貝至該控制器部分,同時將該資料保持在該暫存器中;及對該控制器部分中之該資料執行一錯誤校正及偵測作業。
- 如請求項7之方法,其中該資料包括一相關聯之錯誤校正碼(ECC)且該錯誤校正及偵測作業包括:依據該相關聯之ECC確定該資料是否含有一錯誤;及因應確定該資料含有一錯誤,對該資料執行一校正作業。
- 如請求項8之方法,其中若成功地完成該錯誤校正作業,則該方法進一步包括:將該經校正之資料自該控制器部分傳輸至該記憶體部分;及將該經校正之資料寫入該第二位置。
- 如請求項8之方法,其中若未成功完成該錯誤校正,則該 方法進一步包括:設定一與該資料相關聯之錯誤旗標。
- 如請求項10之方法,其中該資料包括一標頭部分及一使用者資料部分,並將該錯誤旗標寫入該標頭部分。
- 如請求項7之方法,其中該確定是否執行一錯誤偵測及校正作業係確定性機制。
- 如請求項7之方法,其中該確定是否執行一錯誤偵測及校正作業係基於隨機或偽隨機。
- 如請求項7之方法,其中該確定是否執行一錯誤偵測及校正作業係基於一取樣機制。
- 如請求項14之方法,其中該取樣機制係基於與該資料相關聯之額外負擔資料。
- 如請求項15之方法,其中該取樣機制包括將一與該資料相關聯之時間戳記與該資料之邏輯位址資訊相比較。
- 如請求項7之方法,其進一步包括:依據是否已作為該執行一錯誤偵測及校正作業之一部分校正了該資料來設定一旗標值;若設定該旗標值以指示該資料已被校正,則將該經校正之資料傳輸回該暫存器;及隨後將該暫存器之內容寫入該第二記憶體位置。
- 如請求項17之方法,其中該資料具有一相關聯之錯誤校正碼(ECC)且該錯誤偵測及校正作業包括:依據該相關聯之ECC確定該資料是否含有一錯誤;及使用該相關聯之ECC校正該資料, 其中因應成功地完成該校正來設定該旗標值。
- 如請求項18之方法,其進一步包括:因應未成功地完成該校正來設定一與該資料相關聯之錯誤旗標。
- 如請求項19之方法,其中該資料包括一額外負擔部分及一使用者資料部分且該錯誤旗標被寫入該額外負擔部分。
- 如請求項17之方法,其中該資料包括一使用者資料部分及一額外負擔部分,且其中該使用者資料具有一相關聯錯誤校正碼(ECC)且該額外負擔部分具有一不同之相關聯錯誤校正碼(ECC),其中該傳輸該資料之一拷貝及該執行一錯誤偵測及校正作業包含:將該資料之該額外負擔部分之一拷貝自該暫存器傳輸至該控制器部分,同時將該資料保持在該暫存器中;及依據該相關聯之額外負擔ECC在該控制器部分中對該資料之該額外負擔部分執行一錯誤偵測及校正作業,並因應對該資料之該額外負擔部分完成一成功校正作業來將該經校正之額外負擔部分傳輸回該暫存器;及,因應對該資料之該額外負擔部分之成功錯誤偵測及校正作業,將該資料之該使用者部分之一拷貝自該暫存器傳輸至該控制器部分,同時將該資料保持在該暫存器中;及依據該相關聯之使用者資料ECC在該控制器部分中對該資料之該使用者部分執行一錯誤偵測及校正作業, 其中依據是否已校正該使用者資料部分來設定該旗標值。
- 一種於一包括一控制器及一可程式非揮發性記憶體之記憶體系統用於將資料自該記憶體之一第一位置重定位至該記憶體之一第二位置之方法,其中該資料包括一使用者資料部分及一額外負擔部分,且其中該使用者資料具有一相關聯之錯誤校正碼(ECC)且該額外負擔部分具有一不同之相關聯錯誤校正碼(ECC),該方法包括:將該資料自該第一位置讀入該記憶體上一暫存器;隨後將該資料之該標頭部分之一拷貝傳輸至該控制器,同時將該資料保持在該暫存器中;依據該相關聯之額外負擔ECC在該控制器中對該額外負擔部分執行一錯誤偵校正及偵測作業;若對該額外負擔部分之該錯誤校正及偵測作業要求校正該額外負擔部分,則因應成功地完成對該額外負擔之該錯誤校正及偵測作業來將該經校正之額外負擔傳輸回該暫存器;及在對該額外負擔部分該執行該錯誤校正及偵測作業之後,在該控制器中確定是否對該資料之該使用者資料部分執行一錯誤偵測及校正作業。
- 如請求項22之方法,其中該確定是否對該資料之該使用者資料部分執行該錯誤偵測及校正作業包括:因應確定該額外負擔部分需要校正,將該使用者資料部分之一拷貝傳輸至該控制器,同時將該資料保持在該 暫存器中;及在該控制器中對該使用者資料部分執行一錯誤校正及偵測作業。
- 如請求項22之方法,其進一步包括:因應確定不對該使用者資料部分執行該錯誤偵測及校正作業,將該資料自該暫存器寫入至該第二位置。
- 如請求項22之方法,其進一步包括:因應確定對該使用者資料部分執行該錯誤偵測及校正作業,將該使用者資料部分之一拷貝傳輸至該控制器,同時將該資料保持在該暫存器中;及在該控制器中對該使用者資料部分執行一錯誤校正及偵測作業。
- 如請求項23或25中之方法,其中對該使用者資料部分之該錯誤校正及偵測作業包括:依據該相關聯之使用者部分ECC確定該使用者資料部分是否包含一錯誤;及因應確定該使用者資料部分包含一錯誤,對該資料執行一校正作業。
- 如請求項26之方法,其中若成功地完成對該使用者資料部分之該錯誤校正作業,則該方法進一步包括:將該經校正之使用者資料部分自該控制器傳輸至該記憶體;及將該經校正之資料寫入該第二位置。
- 如請求項26之方法,其中若未成功地完成對該使用者資 料部分之該錯誤校正,則該方法進一步包括:設定一與該資料相關聯之錯誤旗標。
- 如請求項28之方法,其中將該錯誤旗標寫入該額外負擔部分。
- 如請求項24或25之方法,其中該確定是否對該使用者資料部分執行該錯誤偵測及校正作業係確定性機制。
- 如請求項24或25之方法,其中該確定是否對該使用者資料部分執行該錯誤偵測及校正作業係基於隨機或偽隨機。
- 如請求項24或25之方法,其中該確定是否對該使用者資料部分執行該錯誤偵測及校正作業係基於一取樣機制。
- 如請求項32之方法,其中該取樣機制係基於與該資料相關聯之該額外負擔資料。
- 如請求項33之方法,其中該取樣機制包括將一與該資料相關聯之時間戳記與該資料之邏輯位址資訊相比較。
- 如請求項25之方法,其進一步包括:依據是否已作為該執行一錯誤偵測及校正作業之一部分校正了該資料來設定一旗標值;若該旗標值經設定以指示該資料已被校正,則將該經校正之資料傳輸回該暫存器;及隨後將該暫存器之內容寫入該第二記憶體位置。
- 如請求項35之方法,其中該資料具有一相關聯之錯誤校正碼(ECC)且該錯誤偵測及校正作業包括:依據該相關聯之ECC確定該資料是否包含一錯誤;及 使用該相關聯之ECC校正該資料,其中因應一成功完成該校正來設定該旗標值。
- 如請求項36之方法,其進一步包括:因應未成功地完成該校正來設定一與該資料相關聯之錯誤旗標。
- 如請求項37之方法,其中該資料包括一額外負擔部分及一使用者資料部分,且將該錯誤旗標寫入該額外負擔部分。
- 如請求項35之方法,其中該資料包括一使用者部分及一額外負擔部分且其中該使用者資料具有一相關聯之錯誤校正碼(ECC)且該額外負擔部分具有一不同之相關聯錯誤校正碼(ECC),其中該傳輸該資料之一拷貝及該執行一錯誤偵測及校正作業包含:將該資料之該額外負擔部分之一拷貝自該暫存器傳輸至該控制器,同時將該資料保持在該暫存器中;及依據該相關聯之額外負擔ECC在該控制器中對該資料之該額外負擔部分執行一錯誤偵測及校正作業,並因應對該資料之該額外負擔部分完成一成功校正作業來將該經校正之額外負擔部分傳輸回該暫存器;及,因應對該資料之該額外負擔部分之一成功錯誤偵測及校正作業,將該資料之該使用者部分之一拷貝自該暫存器傳輸至該控制器,同時將該資料保持在該暫存器中;及依據該相關聯之使用者資料ECC在該控制器中對該資 料之該使用者部分執行一錯誤偵測及校正作業,其中依據是否已校正該使用者資料部分來設定該旗標值。
- 一種用於將具有一相關聯錯誤校正碼(ECC)之資料自一系統之一可再程式非揮發性記憶體陣列中之一第一位置拷貝至該記憶體陣列之一第二位置之方法,該系統包括一記憶體控制器及具有該記憶體陣列之一記憶體部份,該方法包括:將該資料自該第一位置讀入該記憶體部分上一快取記憶體中;確定是否依據預定選擇標準檢查該ECC,且若未選擇ECC檢查,則在不傳輸該資料至該控制器的情況下使該系統將該資料自該快取記憶體拷貝至該第二位置;及若選擇ECC檢查,則在該控制器中檢查關於該所讀取資料之該ECC;其包括:若發現一ECC錯誤,則在該控制器中校正該所讀取資料之該ECC錯誤,並使該控制器將該經校正之資料寫入該記憶體陣列之該第二位置;及若未發現一ECC錯誤,則在不傳輸該資料至該控制器的情況下使該記憶體將該資料自該快取記憶體拷貝至該第二位置。
- 如請求項40之方法,其中該預定選擇標準包括一取樣機制。
- 如請求項41之方法,其中該取樣機制係基於隨機。
- 如請求項41之方法,其中該取樣機制係確定性機制。
- 如請求項41之方法,其中該取樣機制包括:將與該可再程式非揮發性記憶體內一邏輯區段編號相關聯之複數個位元與一時間戳記相比較以產生一比較結果;及根據該比較結果選擇檢查一ECC。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/022,350 US7849381B2 (en) | 2004-12-21 | 2004-12-21 | Method for copying data in reprogrammable non-volatile memory |
Publications (2)
Publication Number | Publication Date |
---|---|
TW200636732A TW200636732A (en) | 2006-10-16 |
TWI443667B true TWI443667B (zh) | 2014-07-01 |
Family
ID=36602239
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW094145667A TWI443667B (zh) | 2004-12-21 | 2005-12-21 | 於可再程式非揮發性記憶體內拷貝資料之方法 |
Country Status (10)
Country | Link |
---|---|
US (2) | US7849381B2 (zh) |
EP (1) | EP1828897B1 (zh) |
JP (1) | JP5069127B2 (zh) |
KR (1) | KR101026391B1 (zh) |
CN (1) | CN101124544A (zh) |
AT (1) | ATE408864T1 (zh) |
DE (1) | DE602005009868D1 (zh) |
IL (1) | IL184018A0 (zh) |
TW (1) | TWI443667B (zh) |
WO (1) | WO2006068993A2 (zh) |
Families Citing this family (136)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7490283B2 (en) | 2004-05-13 | 2009-02-10 | Sandisk Corporation | Pipelined data relocation and improved chip architectures |
US7120051B2 (en) | 2004-12-14 | 2006-10-10 | Sandisk Corporation | Pipelined programming of non-volatile memories using early data |
US7849381B2 (en) | 2004-12-21 | 2010-12-07 | Sandisk Corporation | Method for copying data in reprogrammable non-volatile memory |
US7409473B2 (en) | 2004-12-21 | 2008-08-05 | Sandisk Corporation | Off-chip data relocation |
KR100915650B1 (ko) * | 2004-12-28 | 2009-09-04 | 인터내셔널 비지네스 머신즈 코포레이션 | 정보 기록 장치, 그 데이터 흐름 제어기, 및 그 데이터흐름의 제어 방법 |
US7362611B2 (en) * | 2005-08-30 | 2008-04-22 | Micron Technology, Inc. | Non-volatile memory copy back |
US8239735B2 (en) | 2006-05-12 | 2012-08-07 | Apple Inc. | Memory Device with adaptive capacity |
WO2007132452A2 (en) | 2006-05-12 | 2007-11-22 | Anobit Technologies | Reducing programming error in memory devices |
KR101202537B1 (ko) | 2006-05-12 | 2012-11-19 | 애플 인크. | 메모리 디바이스를 위한 결합된 왜곡 추정 및 에러 보정 코딩 |
CN103280239B (zh) | 2006-05-12 | 2016-04-06 | 苹果公司 | 存储设备中的失真估计和消除 |
WO2008026203A2 (en) | 2006-08-27 | 2008-03-06 | Anobit Technologies | Estimation of non-linear distortion in memory devices |
WO2008053473A2 (en) | 2006-10-30 | 2008-05-08 | Anobit Technologies Ltd. | Memory cell readout using successive approximation |
US7975192B2 (en) | 2006-10-30 | 2011-07-05 | Anobit Technologies Ltd. | Reading memory cells using multiple thresholds |
US7924648B2 (en) | 2006-11-28 | 2011-04-12 | Anobit Technologies Ltd. | Memory power and performance management |
US8151163B2 (en) | 2006-12-03 | 2012-04-03 | Anobit Technologies Ltd. | Automatic defect management in memory devices |
CN101558452B (zh) * | 2006-12-07 | 2012-08-29 | Nxp股份有限公司 | 用于在闪速eeprom存储页中重构可靠性数据的方法和装置 |
US7900102B2 (en) | 2006-12-17 | 2011-03-01 | Anobit Technologies Ltd. | High-speed programming of memory devices |
US7751240B2 (en) | 2007-01-24 | 2010-07-06 | Anobit Technologies Ltd. | Memory device with negative thresholds |
US8151166B2 (en) | 2007-01-24 | 2012-04-03 | Anobit Technologies Ltd. | Reduction of back pattern dependency effects in memory devices |
WO2008111058A2 (en) | 2007-03-12 | 2008-09-18 | Anobit Technologies Ltd. | Adaptive estimation of memory cell read thresholds |
JP2008257773A (ja) * | 2007-04-02 | 2008-10-23 | Toshiba Corp | 不揮発性半導体記憶装置、不揮発性半導体記憶装置の制御方法、不揮発性半導体記憶システム、及びメモリカード |
US8001320B2 (en) | 2007-04-22 | 2011-08-16 | Anobit Technologies Ltd. | Command interface for memory devices |
US8234545B2 (en) | 2007-05-12 | 2012-07-31 | Apple Inc. | Data storage with incremental redundancy |
WO2008139441A2 (en) | 2007-05-12 | 2008-11-20 | Anobit Technologies Ltd. | Memory device with internal signal processing unit |
US7925936B1 (en) | 2007-07-13 | 2011-04-12 | Anobit Technologies Ltd. | Memory device with non-uniform programming levels |
US8259497B2 (en) | 2007-08-06 | 2012-09-04 | Apple Inc. | Programming schemes for multi-level analog memory cells |
JP4564520B2 (ja) | 2007-08-31 | 2010-10-20 | 株式会社東芝 | 半導体記憶装置およびその制御方法 |
US8174905B2 (en) | 2007-09-19 | 2012-05-08 | Anobit Technologies Ltd. | Programming orders for reducing distortion in arrays of multi-level analog memory cells |
US7773413B2 (en) | 2007-10-08 | 2010-08-10 | Anobit Technologies Ltd. | Reliable data storage in analog memory cells in the presence of temperature variations |
US8000141B1 (en) | 2007-10-19 | 2011-08-16 | Anobit Technologies Ltd. | Compensation for voltage drifts in analog memory cells |
US8527819B2 (en) | 2007-10-19 | 2013-09-03 | Apple Inc. | Data storage in analog memory cell arrays having erase failures |
US8068360B2 (en) | 2007-10-19 | 2011-11-29 | Anobit Technologies Ltd. | Reading analog memory cells using built-in multi-threshold commands |
US20090106513A1 (en) * | 2007-10-22 | 2009-04-23 | Chuang Cheng | Method for copying data in non-volatile memory system |
KR101509836B1 (ko) | 2007-11-13 | 2015-04-06 | 애플 인크. | 멀티 유닛 메모리 디바이스에서의 메모리 유닛의 최적화된 선택 |
US8225181B2 (en) | 2007-11-30 | 2012-07-17 | Apple Inc. | Efficient re-read operations from memory devices |
US8209588B2 (en) | 2007-12-12 | 2012-06-26 | Anobit Technologies Ltd. | Efficient interference cancellation in analog memory cell arrays |
US8456905B2 (en) | 2007-12-16 | 2013-06-04 | Apple Inc. | Efficient data storage in multi-plane memory devices |
US8085586B2 (en) | 2007-12-27 | 2011-12-27 | Anobit Technologies Ltd. | Wear level estimation in analog memory cells |
US8301912B2 (en) * | 2007-12-31 | 2012-10-30 | Sandisk Technologies Inc. | System, method and memory device providing data scrambling compatible with on-chip copy operation |
US8156398B2 (en) | 2008-02-05 | 2012-04-10 | Anobit Technologies Ltd. | Parameter estimation based on error correction code parity check equations |
TW200935433A (en) * | 2008-02-15 | 2009-08-16 | Asmedia Technology Inc | Method for reducing data error when flash memory storage device using copy back command |
US7924587B2 (en) | 2008-02-21 | 2011-04-12 | Anobit Technologies Ltd. | Programming of analog memory cells using a single programming pulse per state transition |
US7864573B2 (en) | 2008-02-24 | 2011-01-04 | Anobit Technologies Ltd. | Programming analog memory cells for reduced variance after retention |
US8230300B2 (en) | 2008-03-07 | 2012-07-24 | Apple Inc. | Efficient readout from analog memory cells using data compression |
US8400858B2 (en) | 2008-03-18 | 2013-03-19 | Apple Inc. | Memory device with reduced sense time readout |
US8059457B2 (en) | 2008-03-18 | 2011-11-15 | Anobit Technologies Ltd. | Memory device with multiple-accuracy read commands |
US7781780B2 (en) | 2008-03-31 | 2010-08-24 | Bridgelux, Inc. | Light emitting diodes with smooth surface for reflective electrode |
US20090282267A1 (en) * | 2008-05-09 | 2009-11-12 | Ori Stern | Partial scrambling to reduce correlation |
US7995388B1 (en) | 2008-08-05 | 2011-08-09 | Anobit Technologies Ltd. | Data storage using modified voltages |
US7924613B1 (en) | 2008-08-05 | 2011-04-12 | Anobit Technologies Ltd. | Data storage in analog memory cells with protection against programming interruption |
US8949684B1 (en) | 2008-09-02 | 2015-02-03 | Apple Inc. | Segmented data storage |
US8169825B1 (en) | 2008-09-02 | 2012-05-01 | Anobit Technologies Ltd. | Reliable data storage in analog memory cells subjected to long retention periods |
US8000135B1 (en) | 2008-09-14 | 2011-08-16 | Anobit Technologies Ltd. | Estimation of memory cell read thresholds by sampling inside programming level distribution intervals |
US8482978B1 (en) | 2008-09-14 | 2013-07-09 | Apple Inc. | Estimation of memory cell read thresholds by sampling inside programming level distribution intervals |
US8239734B1 (en) | 2008-10-15 | 2012-08-07 | Apple Inc. | Efficient data storage in storage device arrays |
US8261159B1 (en) | 2008-10-30 | 2012-09-04 | Apple, Inc. | Data scrambling schemes for memory devices |
US8208304B2 (en) | 2008-11-16 | 2012-06-26 | Anobit Technologies Ltd. | Storage at M bits/cell density in N bits/cell analog memory cell devices, M>N |
CN102855943B (zh) * | 2008-11-28 | 2017-04-12 | 群联电子股份有限公司 | 错误校正控制器及其闪存芯片系统与错误校正方法 |
US8174857B1 (en) | 2008-12-31 | 2012-05-08 | Anobit Technologies Ltd. | Efficient readout schemes for analog memory cell devices using multiple read threshold sets |
US8248831B2 (en) | 2008-12-31 | 2012-08-21 | Apple Inc. | Rejuvenation of analog memory cells |
US8924661B1 (en) | 2009-01-18 | 2014-12-30 | Apple Inc. | Memory system including a controller and processors associated with memory devices |
KR100996009B1 (ko) * | 2009-02-02 | 2010-11-22 | 주식회사 하이닉스반도체 | 불휘발성 메모리 소자 및 그 동작 방법 |
KR20100093885A (ko) | 2009-02-17 | 2010-08-26 | 삼성전자주식회사 | 불휘발성 메모리 장치, 그것의 동작 방법, 그리고 그것을 포함하는 메모리 시스템 |
US8228701B2 (en) | 2009-03-01 | 2012-07-24 | Apple Inc. | Selective activation of programming schemes in analog memory cell arrays |
US8832354B2 (en) | 2009-03-25 | 2014-09-09 | Apple Inc. | Use of host system resources by memory controller |
US8259506B1 (en) | 2009-03-25 | 2012-09-04 | Apple Inc. | Database of memory read thresholds |
US8447918B2 (en) * | 2009-04-08 | 2013-05-21 | Google Inc. | Garbage collection for failure prediction and repartitioning |
US8238157B1 (en) | 2009-04-12 | 2012-08-07 | Apple Inc. | Selective re-programming of analog memory cells |
US8775880B2 (en) * | 2009-06-11 | 2014-07-08 | STMicroelectronics Intenational N.V. | Shared fuse wrapper architecture for memory repair |
TWI404071B (zh) | 2009-06-23 | 2013-08-01 | Phison Electronics Corp | 能識別快閃記憶體中錯誤資料的控制電路及儲存系統與方法 |
CN101944386B (zh) * | 2009-07-03 | 2013-11-13 | 群联电子股份有限公司 | 识别闪速存储器中错误数据的控制电路及存储系统与方法 |
US8479080B1 (en) | 2009-07-12 | 2013-07-02 | Apple Inc. | Adaptive over-provisioning in memory systems |
US8510497B2 (en) | 2009-07-29 | 2013-08-13 | Stec, Inc. | Flash storage device with flexible data format |
KR101678909B1 (ko) * | 2009-09-17 | 2016-11-23 | 삼성전자주식회사 | 플래시 메모리 시스템 및 그것의 소거 리프레쉬 방법 |
US8495465B1 (en) | 2009-10-15 | 2013-07-23 | Apple Inc. | Error correction coding over multiple memory pages |
US8677054B1 (en) | 2009-12-16 | 2014-03-18 | Apple Inc. | Memory management schemes for non-volatile memory devices |
US8694814B1 (en) | 2010-01-10 | 2014-04-08 | Apple Inc. | Reuse of host hibernation storage space by memory controller |
US8572311B1 (en) | 2010-01-11 | 2013-10-29 | Apple Inc. | Redundant data storage in multi-die memory systems |
JP4745465B1 (ja) * | 2010-01-29 | 2011-08-10 | 株式会社東芝 | 半導体記憶装置及び半導体記憶装置の制御方法 |
JP5204265B2 (ja) * | 2010-01-29 | 2013-06-05 | 株式会社東芝 | 半導体記憶装置及び半導体記憶装置の制御方法 |
US8694853B1 (en) | 2010-05-04 | 2014-04-08 | Apple Inc. | Read commands for reading interfering memory cells |
US8572423B1 (en) | 2010-06-22 | 2013-10-29 | Apple Inc. | Reducing peak current in memory systems |
US8595591B1 (en) | 2010-07-11 | 2013-11-26 | Apple Inc. | Interference-aware assignment of programming levels in analog memory cells |
US9104580B1 (en) | 2010-07-27 | 2015-08-11 | Apple Inc. | Cache memory for hybrid disk drives |
US8767459B1 (en) | 2010-07-31 | 2014-07-01 | Apple Inc. | Data storage in analog memory cells across word lines using a non-integer number of bits per cell |
US8856475B1 (en) | 2010-08-01 | 2014-10-07 | Apple Inc. | Efficient selection of memory blocks for compaction |
US8694854B1 (en) | 2010-08-17 | 2014-04-08 | Apple Inc. | Read threshold setting based on soft readout statistics |
US9021181B1 (en) | 2010-09-27 | 2015-04-28 | Apple Inc. | Memory management for unifying memory cell conditions by using maximum time intervals |
US8484542B2 (en) | 2011-02-08 | 2013-07-09 | Sandisk Technologies Inc. | Data recovery using additional error correction coding data |
JP5451682B2 (ja) * | 2011-05-20 | 2014-03-26 | 株式会社東海理化電機製作所 | フラッシュメモリ装置 |
KR101830808B1 (ko) * | 2011-11-04 | 2018-02-22 | 삼성전자주식회사 | 메모리 시스템 및 그것의 데이터 저장 방법 |
KR20130049332A (ko) * | 2011-11-04 | 2013-05-14 | 삼성전자주식회사 | 메모리 시스템 및 그것의 동작 방법 |
EP2800097B1 (en) * | 2012-01-12 | 2018-03-21 | Sony Corporation | Storage control device, storage device, information processing system, and processing methods therefor |
US9223649B2 (en) * | 2012-02-15 | 2015-12-29 | Sandisk Technologies Inc. | System and method of sending correction data to a buffer of a non-volatile memory |
US9256526B2 (en) * | 2012-02-23 | 2016-02-09 | National Taiwan University | Flash memory storage system and access method |
US8760921B2 (en) | 2012-08-28 | 2014-06-24 | Kabushiki Kaisha Toshiba | Storage device and control method of nonvolatile memory |
US9081710B2 (en) | 2013-04-11 | 2015-07-14 | Spansion Llc. | Restoring ECC syndrome in non-volatile memory devices |
US20150006784A1 (en) | 2013-06-27 | 2015-01-01 | Sandisk Technologies Inc. | Efficient Post Write Read in Three Dimensional Nonvolatile Memory |
US9218242B2 (en) | 2013-07-02 | 2015-12-22 | Sandisk Technologies Inc. | Write operations for defect management in nonvolatile memory |
US9063671B2 (en) | 2013-07-02 | 2015-06-23 | Sandisk Technologies Inc. | Write operations with full sequence programming for defect management in nonvolatile memory |
US20150046772A1 (en) * | 2013-08-06 | 2015-02-12 | Sandisk Technologies Inc. | Method and device for error correcting code (ecc) error handling |
US9043537B1 (en) | 2013-11-21 | 2015-05-26 | Sandisk Technologies Inc. | Update block programming order |
US9262263B2 (en) | 2013-11-25 | 2016-02-16 | Qualcomm Incorporated | Bit recovery system |
US9058881B1 (en) | 2013-12-05 | 2015-06-16 | Sandisk Technologies Inc. | Systems and methods for partial page programming of multi level cells |
US9244631B2 (en) | 2013-12-06 | 2016-01-26 | Sandisk Technologies Inc. | Lower page only host burst writes |
US9378081B2 (en) | 2014-01-02 | 2016-06-28 | Qualcomm Incorporated | Bit remapping system |
US9454422B2 (en) | 2014-01-30 | 2016-09-27 | International Business Machines Corporation | Error feedback and logging with memory on-chip error checking and correcting (ECC) |
JP2015170101A (ja) | 2014-03-06 | 2015-09-28 | 富士通株式会社 | 生体認証装置、方法及びプログラム |
US8902652B1 (en) | 2014-05-13 | 2014-12-02 | Sandisk Technologies Inc. | Systems and methods for lower page writes |
US8886877B1 (en) | 2014-05-15 | 2014-11-11 | Sandisk Technologies Inc. | In-situ block folding for nonvolatile memory |
US8891303B1 (en) * | 2014-05-30 | 2014-11-18 | Sandisk Technologies Inc. | Method and system for dynamic word line based configuration of a three-dimensional memory device |
US11177835B2 (en) | 2015-09-25 | 2021-11-16 | SK Hynix Inc. | Data storage device |
US11515897B2 (en) | 2015-05-29 | 2022-11-29 | SK Hynix Inc. | Data storage device |
US11611359B2 (en) | 2015-05-29 | 2023-03-21 | SK Hynix Inc. | Data storage device |
KR102285940B1 (ko) | 2015-05-29 | 2021-08-05 | 에스케이하이닉스 주식회사 | 데이터 처리 회로, 데이터 처리 회로를 포함하는 데이터 저장 장치 및 그것의 동작 방법 |
US10396827B2 (en) | 2015-09-25 | 2019-08-27 | SK Hynix Inc. | Data storage device |
KR20170025948A (ko) * | 2015-08-31 | 2017-03-08 | 에스케이하이닉스 주식회사 | 반도체 시스템 및 제어 방법 |
WO2017052548A1 (en) * | 2015-09-24 | 2017-03-30 | Hewlett Packard Enterprise Development Lp | Failure indication in shared memory |
US9858009B2 (en) | 2015-10-26 | 2018-01-02 | Sandisk Technologies Llc | Data folding in 3D nonvolatile memory |
KR102636039B1 (ko) | 2016-05-12 | 2024-02-14 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 그것의 읽기 방법 및 카피백 방법 |
KR102708774B1 (ko) | 2016-09-01 | 2024-09-24 | 삼성전자주식회사 | 스토리지 장치 및 그것의 카피백 방법 |
US11226909B2 (en) * | 2018-08-24 | 2022-01-18 | Rambus Inc. | DRAM interface mode with interruptible internal transfer operation |
KR20210089016A (ko) | 2020-01-07 | 2021-07-15 | 삼성전자주식회사 | 메모리 컨트롤러 및 메모리 시스템 |
KR20210092986A (ko) * | 2020-01-17 | 2021-07-27 | 삼성전자주식회사 | 스토리지 컨트롤러, 이를 포함하는 스토리지 시스템 및 스토리지 컨트롤러의 동작 방법 |
US11321167B2 (en) | 2020-05-09 | 2022-05-03 | Western Digital Technologies, Inc. | Adaptive folding for integrated memory assembly |
US11301321B2 (en) | 2020-05-28 | 2022-04-12 | Western Digital Technologies, Inc. | Data shaping for integrated memory assembly |
US11170870B1 (en) | 2020-05-28 | 2021-11-09 | Western Digital Technologies, Inc. | On-chip-copy for integrated memory assembly |
US11138071B1 (en) | 2020-06-22 | 2021-10-05 | Western Digital Technologies, Inc. | On-chip parity buffer management for storage block combining in non-volatile memory |
US11488682B2 (en) | 2020-06-24 | 2022-11-01 | Sandisk Technologies Llc | Calibration for integrated memory assembly |
US11556267B2 (en) * | 2020-08-31 | 2023-01-17 | Micron Technology, Inc. | Data management during a copyback operation |
US11392327B2 (en) | 2020-09-09 | 2022-07-19 | Western Digital Technologies, Inc. | Local data compaction for integrated memory assembly |
US11650932B2 (en) | 2020-10-25 | 2023-05-16 | Western Digital Technologies, Inc. | Integrated non-volatile memory assembly with address translation |
US11481154B2 (en) | 2021-01-15 | 2022-10-25 | Sandisk Technologies Llc | Non-volatile memory with memory array between circuits |
US11556416B2 (en) | 2021-05-05 | 2023-01-17 | Apple Inc. | Controlling memory readout reliability and throughput by adjusting distance between read thresholds |
US11847342B2 (en) | 2021-07-28 | 2023-12-19 | Apple Inc. | Efficient transfer of hard data and confidence levels in reading a nonvolatile memory |
US11809327B2 (en) | 2021-11-16 | 2023-11-07 | Western Digital Technologies, Inc. | Data auto-relocation in an integrated memory assembly |
Family Cites Families (172)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE246857C (zh) | ||||
IT1089225B (it) | 1977-12-23 | 1985-06-18 | Honeywell Inf Systems | Memoria con dispositivo rivelatore e correttore a intervento selettivo |
US4215863A (en) * | 1978-08-23 | 1980-08-05 | Kuiper Jerald W | Coin operated sliding puck game |
US4251863A (en) * | 1979-03-15 | 1981-02-17 | Sperry Corporation | Apparatus for correction of memory errors |
IT1224062B (it) | 1979-09-28 | 1990-09-26 | Ates Componenti Elettron | Metodo di programmazione per una memoria a semiconduttore non volatile elettricamente alterabile |
JPS63113623A (ja) * | 1986-10-30 | 1988-05-18 | Nec Corp | セクタバツフア制御方式 |
US4785427A (en) | 1987-01-28 | 1988-11-15 | Cypress Semiconductor Corporation | Differential bit line clamp |
US5034922A (en) | 1987-12-21 | 1991-07-23 | Motorola, Inc. | Intelligent electrically erasable, programmable read-only memory with improved read latency |
US5093806A (en) | 1988-02-16 | 1992-03-03 | Tran Hiep V | Sensing and decoding scheme for a bicmos read/write memory |
US5095344A (en) | 1988-06-08 | 1992-03-10 | Eliyahou Harari | Highly compact eprom and flash eeprom devices |
US5070032A (en) | 1989-03-15 | 1991-12-03 | Sundisk Corporation | Method of making dense flash eeprom semiconductor memory structures |
DE69033438T2 (de) | 1989-04-13 | 2000-07-06 | Sandisk Corp., Santa Clara | Austausch von fehlerhaften Speicherzellen einer EEprommatritze |
US5172338B1 (en) | 1989-04-13 | 1997-07-08 | Sandisk Corp | Multi-state eeprom read and write circuits and techniques |
DE69027030T2 (de) * | 1989-07-06 | 1996-12-12 | Mv Ltd | Eine fehlertolerante datenspeicherungsanordnung |
US5233616A (en) | 1990-10-01 | 1993-08-03 | Digital Equipment Corporation | Write-back cache with ECC protection |
JP2646850B2 (ja) | 1990-11-30 | 1997-08-27 | 日本電気株式会社 | 半導体メモリ回路 |
US5343063A (en) | 1990-12-18 | 1994-08-30 | Sundisk Corporation | Dense vertical programmable read only memory cell structure and processes for making them |
US5274646A (en) | 1991-04-17 | 1993-12-28 | International Business Machines Corporation | Excessive error correction control |
US5267242A (en) | 1991-09-05 | 1993-11-30 | International Business Machines Corporation | Method and apparatus for substituting spare memory chip for malfunctioning memory chip with scrubbing |
US5490107A (en) | 1991-12-27 | 1996-02-06 | Fujitsu Limited | Nonvolatile semiconductor memory |
US6222762B1 (en) | 1992-01-14 | 2001-04-24 | Sandisk Corporation | Multi-state memory |
US5313421A (en) | 1992-01-14 | 1994-05-17 | Sundisk Corporation | EEPROM with split gate source side injection |
TW231343B (zh) | 1992-03-17 | 1994-10-01 | Hitachi Seisakusyo Kk | |
JP3323869B2 (ja) | 1992-03-31 | 2002-09-09 | 株式会社東芝 | 不揮発性半導体メモリ装置 |
US5315541A (en) | 1992-07-24 | 1994-05-24 | Sundisk Corporation | Segmented column memory array |
US5581778A (en) * | 1992-08-05 | 1996-12-03 | David Sarnoff Researach Center | Advanced massively parallel computer using a field of the instruction to selectively enable the profiling counter to increase its value in response to the system clock |
US5586285A (en) | 1993-02-19 | 1996-12-17 | Intel Corporation | Method and circuitry for increasing reserve memory in a solid state memory disk |
JP3078946B2 (ja) | 1993-03-11 | 2000-08-21 | インターナショナル・ビジネス・マシーンズ・コーポレ−ション | 一括消去型不揮発性メモリの管理方法及び半導体ディスク装置 |
KR970008188B1 (ko) | 1993-04-08 | 1997-05-21 | 가부시끼가이샤 히다찌세이사꾸쇼 | 플래시메모리의 제어방법 및 그것을 사용한 정보처리장치 |
US5555204A (en) | 1993-06-29 | 1996-09-10 | Kabushiki Kaisha Toshiba | Non-volatile semiconductor memory device |
US5519847A (en) | 1993-06-30 | 1996-05-21 | Intel Corporation | Method of pipelining sequential writes in a flash memory |
JP2922116B2 (ja) | 1993-09-02 | 1999-07-19 | 株式会社東芝 | 半導体記憶装置 |
KR0169267B1 (ko) | 1993-09-21 | 1999-02-01 | 사토 후미오 | 불휘발성 반도체 기억장치 |
JPH07105128A (ja) | 1993-10-07 | 1995-04-21 | Mitsubishi Electric Corp | データ転送装置 |
US5661053A (en) | 1994-05-25 | 1997-08-26 | Sandisk Corporation | Method of making dense flash EEPROM cell array and peripheral supporting circuits formed in deposited field oxide with the use of spacers |
US5581715A (en) * | 1994-06-22 | 1996-12-03 | Oak Technologies, Inc. | IDE/ATA CD drive controller having a digital signal processor interface, dynamic random access memory, data error detection and correction, and a host interface |
US5680347A (en) | 1994-06-29 | 1997-10-21 | Kabushiki Kaisha Toshiba | Nonvolatile semiconductor memory device |
JP2658958B2 (ja) | 1995-03-31 | 1997-09-30 | 日本電気株式会社 | Dmaコントローラ |
US5691994A (en) * | 1995-05-08 | 1997-11-25 | Western Digital Corporation | Disk drive with fast error correction validation |
US5838614A (en) | 1995-07-31 | 1998-11-17 | Lexar Microsystems, Inc. | Identification and verification of a sector within a block of mass storage flash memory |
US5692165A (en) | 1995-09-12 | 1997-11-25 | Micron Electronics Inc. | Memory controller with low skew control signal |
KR0169419B1 (ko) | 1995-09-28 | 1999-02-01 | 김광호 | 불휘발성 반도체 메모리의 독출방법 및 장치 |
JP3941149B2 (ja) | 1996-12-03 | 2007-07-04 | ソニー株式会社 | 半導体不揮発性記憶装置 |
KR0158489B1 (ko) | 1995-12-20 | 1998-12-15 | 김광호 | 반도체 메모리 디바이스의 구분방법 |
US5875477A (en) | 1995-12-22 | 1999-02-23 | Intel Corporation | Method and apparatus for error management in a solid state disk drive using primary and secondary logical sector numbers |
US5893135A (en) | 1995-12-27 | 1999-04-06 | Intel Corporation | Flash memory array with two interfaces for responding to RAS and CAS signals |
US5724303A (en) | 1996-02-15 | 1998-03-03 | Nexcom Technology, Inc. | Non-volatile programmable memory having an SRAM capability |
JP3614173B2 (ja) | 1996-02-29 | 2005-01-26 | 株式会社ルネサステクノロジ | 部分不良メモリを搭載した半導体記憶装置 |
US5903495A (en) | 1996-03-18 | 1999-05-11 | Kabushiki Kaisha Toshiba | Semiconductor device and memory system |
US5860082A (en) | 1996-03-28 | 1999-01-12 | Datalight, Inc. | Method and apparatus for allocating storage in a flash memory |
FR2749682B1 (fr) | 1996-06-10 | 1998-07-10 | Bull Sa | Circuit pour transborder des donnees entre memoires distantes et calculateur comprenant un tel circuit |
US5768192A (en) | 1996-07-23 | 1998-06-16 | Saifun Semiconductors, Ltd. | Non-volatile semiconductor memory cell utilizing asymmetrical charge trapping |
JPH10107649A (ja) * | 1996-09-30 | 1998-04-24 | Sanyo Electric Co Ltd | 符号誤り訂正/検出デコーダ |
US5890192A (en) | 1996-11-05 | 1999-03-30 | Sandisk Corporation | Concurrent write of multiple chunks of data into multiple subarrays of flash EEPROM |
US5901086A (en) | 1996-12-26 | 1999-05-04 | Motorola, Inc. | Pipelined fast-access floating gate memory architecture and method of operation |
JP3897388B2 (ja) | 1996-12-27 | 2007-03-22 | シャープ株式会社 | シリアルアクセス方式の半導体記憶装置 |
US6097638A (en) | 1997-02-12 | 2000-08-01 | Kabushiki Kaisha Toshiba | Semiconductor memory device |
KR100272037B1 (ko) | 1997-02-27 | 2000-12-01 | 니시무로 타이죠 | 불휘발성 반도체 기억 장치 |
US5870335A (en) | 1997-03-06 | 1999-02-09 | Agate Semiconductor, Inc. | Precision programming of nonvolatile memory cells |
US5822245A (en) | 1997-03-26 | 1998-10-13 | Atmel Corporation | Dual buffer flash memory architecture with multiple operating modes |
US5872739A (en) | 1997-04-17 | 1999-02-16 | Radiant Technologies | Sense amplifier for low read-voltage memory cells |
JPH113290A (ja) | 1997-06-11 | 1999-01-06 | Hitachi Ltd | メモリ制御方式 |
US5912906A (en) * | 1997-06-23 | 1999-06-15 | Sun Microsystems, Inc. | Method and apparatus for recovering from correctable ECC errors |
US5903496A (en) | 1997-06-25 | 1999-05-11 | Intel Corporation | Synchronous page-mode non-volatile memory with burst order circuitry |
US5930167A (en) | 1997-07-30 | 1999-07-27 | Sandisk Corporation | Multi-state non-volatile flash memory capable of being its own two state write cache |
US6768165B1 (en) | 1997-08-01 | 2004-07-27 | Saifun Semiconductors Ltd. | Two bit non-volatile electrically erasable and programmable semiconductor memory cell utilizing asymmetrical charge trapping |
US6021463A (en) | 1997-09-02 | 2000-02-01 | International Business Machines Corporation | Method and means for efficiently managing update writes and fault tolerance in redundancy groups of addressable ECC-coded sectors in a DASD storage subsystem |
JPH11203191A (ja) | 1997-11-13 | 1999-07-30 | Seiko Epson Corp | 不揮発性記憶装置、不揮発性記憶装置の制御方法、および、不揮発性記憶装置を制御するプログラムを記録した情報記録媒体 |
US6052815A (en) * | 1997-11-14 | 2000-04-18 | Cirrus Logic, Inc. | ECC system for generating a CRC syndrome over randomized data in a computer storage device |
US6101624A (en) | 1998-01-21 | 2000-08-08 | International Business Machines Corporation | Method and apparatus for detecting and correcting anomalies in field-programmable gate arrays using CRCs for anomaly detection and parity for anomaly correction |
US6333871B1 (en) | 1998-02-16 | 2001-12-25 | Hitachi, Ltd. | Nonvolatile semiconductor memory including a controller for providing an improved reprogram operation |
US5969986A (en) | 1998-06-23 | 1999-10-19 | Invox Technology | High-bandwidth read and write architectures for non-volatile memories |
US6040997A (en) | 1998-03-25 | 2000-03-21 | Lexar Media, Inc. | Flash memory leveling architecture having no external latch |
US5949720A (en) | 1998-10-30 | 1999-09-07 | Stmicroelectronics, Inc. | Voltage clamping method and apparatus for dynamic random access memory devices |
US6490649B2 (en) | 1998-11-10 | 2002-12-03 | Lexar Media, Inc. | Memory device |
US6374337B1 (en) | 1998-11-17 | 2002-04-16 | Lexar Media, Inc. | Data pipelining method and apparatus for memory control circuit |
EP1008940A3 (en) | 1998-12-07 | 2001-09-12 | Network Virtual Systems Inc. | Intelligent and adaptive memory and methods and devices for managing distributed memory systems with hardware-enforced coherency |
US6567302B2 (en) | 1998-12-29 | 2003-05-20 | Micron Technology, Inc. | Method and apparatus for programming multi-state cells in a memory device |
US6282145B1 (en) | 1999-01-14 | 2001-08-28 | Silicon Storage Technology, Inc. | Array architecture and operating methods for digital multilevel nonvolatile memory integrated circuit system |
GB9903490D0 (en) | 1999-02-17 | 1999-04-07 | Memory Corp Plc | Memory system |
US6449625B1 (en) | 1999-04-20 | 2002-09-10 | Lucent Technologies Inc. | Use of a two-way stack approach to optimize flash memory management for embedded database systems |
WO2000067137A1 (en) | 1999-04-29 | 2000-11-09 | Koninklijke Philips Electronics N.V. | Device for use as stand-alone device and as slave device in a data bus system |
US6253250B1 (en) | 1999-06-28 | 2001-06-26 | Telocity, Incorporated | Method and apparatus for bridging a plurality of buses and handling of an exception event to provide bus isolation |
WO2001008015A1 (fr) | 1999-07-28 | 2001-02-01 | Sony Corporation | Systeme d'enregistrement, dispositif d'enregistrement de donnees, dispositif a memoire et procede d'enregistrement de donnees |
JP3863330B2 (ja) | 1999-09-28 | 2006-12-27 | 株式会社東芝 | 不揮発性半導体メモリ |
KR100584175B1 (ko) | 1999-10-18 | 2006-05-26 | 엘지전자 주식회사 | 기록매체에의 데이터 기록 및 재생방법 |
US6278633B1 (en) | 1999-11-05 | 2001-08-21 | Multi Level Memory Technology | High bandwidth flash memory that selects programming parameters according to measurements of previous programming operations |
JP2001184881A (ja) | 1999-12-28 | 2001-07-06 | Toshiba Corp | 不揮発性半導体メモリの読み出し回路 |
US6243291B1 (en) | 2000-02-15 | 2001-06-05 | Advanced Micro Devices, Inc. | Two-stage pipeline sensing for page mode flash memory |
US6426893B1 (en) | 2000-02-17 | 2002-07-30 | Sandisk Corporation | Flash eeprom system with simultaneous multiple data sector programming and storage of physical block characteristics in other designated blocks |
JP3983969B2 (ja) | 2000-03-08 | 2007-09-26 | 株式会社東芝 | 不揮発性半導体記憶装置 |
JP2001273710A (ja) * | 2000-03-28 | 2001-10-05 | Sanyo Electric Co Ltd | Cd−romデコーダ |
US6532201B1 (en) | 2000-04-03 | 2003-03-11 | Hewlett-Packard Company | Copy protection for optical discs |
US6396744B1 (en) | 2000-04-25 | 2002-05-28 | Multi Level Memory Technology | Flash memory with dynamic refresh |
US6647469B1 (en) * | 2000-05-01 | 2003-11-11 | Hewlett-Packard Development Company, L.P. | Using read current transactions for improved performance in directory-based coherent I/O systems |
US6396741B1 (en) | 2000-05-04 | 2002-05-28 | Saifun Semiconductors Ltd. | Programming of nonvolatile memory cells |
US6504757B1 (en) | 2000-08-11 | 2003-01-07 | Advanced Micro Devices, Inc. | Double boosting scheme for NAND to improve program inhibit characteristics |
US6266273B1 (en) | 2000-08-21 | 2001-07-24 | Sandisk Corporation | Method and structure for reliable data copy operation for non-volatile memories |
US6581142B1 (en) | 2000-09-01 | 2003-06-17 | International Business Machines Corporation | Computer program product and method for partial paging and eviction of microprocessor instructions in an embedded computer |
JP2002100192A (ja) | 2000-09-22 | 2002-04-05 | Toshiba Corp | 不揮発性半導体メモリ |
US6725343B2 (en) | 2000-10-05 | 2004-04-20 | Hewlett-Packard Development Company, L.P. | System and method for generating cache coherence directory entries and error correction codes in a multiprocessor system |
US6684289B1 (en) | 2000-11-22 | 2004-01-27 | Sandisk Corporation | Techniques for operating non-volatile memory systems with data sectors having different sizes than the sizes of the pages and/or blocks of the memory |
US6349056B1 (en) | 2000-12-28 | 2002-02-19 | Sandisk Corporation | Method and structure for efficient data verification operation for non-volatile memories |
US6763424B2 (en) | 2001-01-19 | 2004-07-13 | Sandisk Corporation | Partial block data programming and reading operations in a non-volatile memory |
US7254606B2 (en) * | 2001-01-30 | 2007-08-07 | Canon Kabushiki Kaisha | Data management method using network |
JP2002229924A (ja) | 2001-01-31 | 2002-08-16 | Toshiba Corp | 複写機能を有するコンピュータシステム及び同システムにおけるデータ複写方法 |
US6407953B1 (en) | 2001-02-02 | 2002-06-18 | Matrix Semiconductor, Inc. | Memory array organization and related test method particularly well suited for integrated circuits having write-once memory arrays |
KR100381956B1 (ko) | 2001-02-02 | 2003-04-26 | 삼성전자주식회사 | 플래시 메모리 장치의 감지 증폭 회로 |
US6738289B2 (en) | 2001-02-26 | 2004-05-18 | Sandisk Corporation | Non-volatile memory with improved programming and method therefor |
US6525652B2 (en) * | 2001-03-02 | 2003-02-25 | Clayton S. Smith | Downshifting warning system |
JP3957985B2 (ja) | 2001-03-06 | 2007-08-15 | 株式会社東芝 | 不揮発性半導体記憶装置 |
US6570810B2 (en) | 2001-04-20 | 2003-05-27 | Multi Level Memory Technology | Contactless flash memory with buried diffusion bit/virtual ground lines |
JP2003036681A (ja) | 2001-07-23 | 2003-02-07 | Hitachi Ltd | 不揮発性記憶装置 |
US6671204B2 (en) | 2001-07-23 | 2003-12-30 | Samsung Electronics Co., Ltd. | Nonvolatile memory device with page buffer having dual registers and methods of using the same |
JP4812192B2 (ja) | 2001-07-27 | 2011-11-09 | パナソニック株式会社 | フラッシュメモリ装置、及び、それに記憶されたデータのマージ方法 |
JP3979486B2 (ja) | 2001-09-12 | 2007-09-19 | 株式会社ルネサステクノロジ | 不揮発性記憶装置およびデータ格納方法 |
US6456528B1 (en) | 2001-09-17 | 2002-09-24 | Sandisk Corporation | Selective operation of a multi-state non-volatile memory system in a binary mode |
US7177197B2 (en) | 2001-09-17 | 2007-02-13 | Sandisk Corporation | Latched programming of memory and method |
JP4454896B2 (ja) | 2001-09-27 | 2010-04-21 | シャープ株式会社 | 仮想接地型不揮発性半導体記憶装置 |
GB0123416D0 (en) | 2001-09-28 | 2001-11-21 | Memquest Ltd | Non-volatile memory control |
GB0123412D0 (en) | 2001-09-28 | 2001-11-21 | Memquest Ltd | Memory system sectors |
GB0123410D0 (en) | 2001-09-28 | 2001-11-21 | Memquest Ltd | Memory system for data storage and retrieval |
ITVA20010035A1 (it) | 2001-10-16 | 2003-04-16 | St Microelectronics Srl | Dispositivo di memoria non volatile con doppia interfaccia di comunicazione seriale/parallela |
KR100454119B1 (ko) | 2001-10-24 | 2004-10-26 | 삼성전자주식회사 | 캐쉬 기능을 갖는 불 휘발성 반도체 메모리 장치 및 그것의 프로그램, 읽기, 그리고 페이지 카피백 방법들 |
US6977847B2 (en) | 2001-11-23 | 2005-12-20 | M-Systems Flash Disk Pioneers Ltd. | Detecting partially erased units in flash devices |
US7181485B1 (en) * | 2001-11-26 | 2007-02-20 | Integrated Device Technology, Inc. | Variably delayable transmission of packets between independently clocked source, intermediate, and destination circuits while maintaining orderly and timely processing in one or both of the intermediate and destination circuits |
JP3802411B2 (ja) * | 2001-12-20 | 2006-07-26 | 株式会社東芝 | 不揮発性半導体記憶装置のデータコピー方法 |
US6687158B2 (en) | 2001-12-21 | 2004-02-03 | Fujitsu Limited | Gapless programming for a NAND type flash memory |
US6700820B2 (en) | 2002-01-03 | 2004-03-02 | Intel Corporation | Programming non-volatile memory devices |
US6542407B1 (en) | 2002-01-18 | 2003-04-01 | Sandisk Corporation | Techniques of recovering data from memory cells affected by field coupling with adjacent memory cells |
JP2003296199A (ja) * | 2002-01-29 | 2003-10-17 | Matsushita Electric Ind Co Ltd | 記憶装置、データ処理方法及びデータ処理プログラム |
JP4004811B2 (ja) | 2002-02-06 | 2007-11-07 | 株式会社東芝 | 不揮発性半導体記憶装置 |
JP4082913B2 (ja) | 2002-02-07 | 2008-04-30 | 株式会社ルネサステクノロジ | メモリシステム |
US6836432B1 (en) | 2002-02-11 | 2004-12-28 | Advanced Micro Devices, Inc. | Partial page programming of multi level flash |
US6871257B2 (en) | 2002-02-22 | 2005-03-22 | Sandisk Corporation | Pipelined parallel programming operation in a non-volatile memory system |
US6771536B2 (en) | 2002-02-27 | 2004-08-03 | Sandisk Corporation | Operating techniques for reducing program and read disturbs of a non-volatile memory |
US6570809B1 (en) | 2002-04-17 | 2003-05-27 | Ememory Technology Inc. | Real-time multitasking flash memory with quick data duplication |
JP2004030784A (ja) | 2002-06-26 | 2004-01-29 | Fujitsu Ltd | 半導体記憶装置 |
TW561339B (en) | 2002-07-24 | 2003-11-11 | C One Technology Corp | Non-volatile memory based storage system capable of directly overwriting without using redundancy and the method thereof |
JP4225749B2 (ja) | 2002-08-07 | 2009-02-18 | 株式会社ルネサステクノロジ | 半導体記憶装置 |
US6940753B2 (en) | 2002-09-24 | 2005-09-06 | Sandisk Corporation | Highly compact non-volatile memory and method therefor with space-efficient data registers |
US7443757B2 (en) | 2002-09-24 | 2008-10-28 | Sandisk Corporation | Non-volatile memory and method with reduced bit line crosstalk errors |
US6983428B2 (en) | 2002-09-24 | 2006-01-03 | Sandisk Corporation | Highly compact non-volatile memory and method thereof |
US7196931B2 (en) | 2002-09-24 | 2007-03-27 | Sandisk Corporation | Non-volatile memory and method with reduced source line bias errors |
US6987693B2 (en) | 2002-09-24 | 2006-01-17 | Sandisk Corporation | Non-volatile memory and method with reduced neighboring field errors |
US7046568B2 (en) | 2002-09-24 | 2006-05-16 | Sandisk Corporation | Memory sensing circuit and method for low voltage operation |
US6657891B1 (en) | 2002-11-29 | 2003-12-02 | Kabushiki Kaisha Toshiba | Semiconductor memory device for storing multivalued data |
CA2447204C (en) * | 2002-11-29 | 2010-03-23 | Memory Management Services Ltd. | Error correction scheme for memory |
US7073103B2 (en) | 2002-12-05 | 2006-07-04 | Sandisk Corporation | Smart verify for multi-state memories |
KR100543447B1 (ko) * | 2003-04-03 | 2006-01-23 | 삼성전자주식회사 | 에러정정기능을 가진 플래쉬메모리장치 |
US7392436B2 (en) | 2003-05-08 | 2008-06-24 | Micron Technology, Inc. | Program failure recovery |
JP2005078378A (ja) * | 2003-08-29 | 2005-03-24 | Sony Corp | データ記憶装置及び不揮発性メモリに対するデータ書き込み方法 |
US7012835B2 (en) | 2003-10-03 | 2006-03-14 | Sandisk Corporation | Flash memory data correction and scrub techniques |
US7372730B2 (en) | 2004-01-26 | 2008-05-13 | Sandisk Corporation | Method of reading NAND memory to compensate for coupling between storage elements |
JP4550479B2 (ja) | 2004-04-30 | 2010-09-22 | ルネサスエレクトロニクス株式会社 | 電子制御装置及びデータ調整方法 |
US7793192B2 (en) * | 2004-05-06 | 2010-09-07 | Panasonic Corporation | Semiconductor memory device |
US7490283B2 (en) | 2004-05-13 | 2009-02-10 | Sandisk Corporation | Pipelined data relocation and improved chip architectures |
US8375146B2 (en) | 2004-08-09 | 2013-02-12 | SanDisk Technologies, Inc. | Ring bus structure and its use in flash memory systems |
US7420847B2 (en) | 2004-12-14 | 2008-09-02 | Sandisk Corporation | Multi-state memory having data recovery after program fail |
US7158421B2 (en) | 2005-04-01 | 2007-01-02 | Sandisk Corporation | Use of data latches in multi-phase programming of non-volatile memories |
US7120051B2 (en) | 2004-12-14 | 2006-10-10 | Sandisk Corporation | Pipelined programming of non-volatile memories using early data |
US7849381B2 (en) | 2004-12-21 | 2010-12-07 | Sandisk Corporation | Method for copying data in reprogrammable non-volatile memory |
US7409473B2 (en) | 2004-12-21 | 2008-08-05 | Sandisk Corporation | Off-chip data relocation |
US20060140007A1 (en) | 2004-12-29 | 2006-06-29 | Raul-Adrian Cernea | Non-volatile memory and method with shared processing for an aggregate of read/write circuits |
US7463521B2 (en) | 2005-04-01 | 2008-12-09 | Sandisk Corporation | Method for non-volatile memory with managed execution of cached data |
US7206230B2 (en) | 2005-04-01 | 2007-04-17 | Sandisk Corporation | Use of data latches in cache operations of non-volatile memories |
US7447078B2 (en) | 2005-04-01 | 2008-11-04 | Sandisk Corporation | Method for non-volatile memory with background data latch caching during read operations |
US7187585B2 (en) | 2005-04-05 | 2007-03-06 | Sandisk Corporation | Read operation for non-volatile storage that includes compensation for coupling |
US7921301B2 (en) | 2005-05-17 | 2011-04-05 | Dot Hill Systems Corporation | Method and apparatus for obscuring data on removable storage devices |
EP2045645A1 (en) | 2006-07-06 | 2009-04-08 | Nikon Corporation | Micro actuator, optical unit, exposure device, and device manufacturing method |
US7562264B2 (en) * | 2006-09-06 | 2009-07-14 | Intel Corporation | Fault tolerant soft error detection for storage subsystems |
US20090063786A1 (en) * | 2007-08-29 | 2009-03-05 | Hakjune Oh | Daisy-chain memory configuration and usage |
-
2004
- 2004-12-21 US US11/022,350 patent/US7849381B2/en active Active
-
2005
- 2005-12-15 AT AT05854589T patent/ATE408864T1/de not_active IP Right Cessation
- 2005-12-15 JP JP2007548357A patent/JP5069127B2/ja not_active Expired - Fee Related
- 2005-12-15 CN CNA2005800475423A patent/CN101124544A/zh active Pending
- 2005-12-15 WO PCT/US2005/045909 patent/WO2006068993A2/en active Application Filing
- 2005-12-15 EP EP05854589A patent/EP1828897B1/en not_active Not-in-force
- 2005-12-15 DE DE602005009868T patent/DE602005009868D1/de active Active
- 2005-12-15 KR KR1020077015243A patent/KR101026391B1/ko active IP Right Grant
- 2005-12-21 TW TW094145667A patent/TWI443667B/zh not_active IP Right Cessation
-
2007
- 2007-06-18 IL IL184018A patent/IL184018A0/en unknown
-
2010
- 2010-11-08 US US12/941,294 patent/US8914703B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
WO2006068993A3 (en) | 2007-01-11 |
WO2006068993A2 (en) | 2006-06-29 |
EP1828897B1 (en) | 2008-09-17 |
ATE408864T1 (de) | 2008-10-15 |
CN101124544A (zh) | 2008-02-13 |
KR101026391B1 (ko) | 2011-04-07 |
JP5069127B2 (ja) | 2012-11-07 |
WO2006068993B1 (en) | 2007-02-15 |
KR20070107676A (ko) | 2007-11-07 |
EP1828897A2 (en) | 2007-09-05 |
TW200636732A (en) | 2006-10-16 |
IL184018A0 (en) | 2007-10-31 |
US20110072332A1 (en) | 2011-03-24 |
US7849381B2 (en) | 2010-12-07 |
US8914703B2 (en) | 2014-12-16 |
JP2008524750A (ja) | 2008-07-10 |
US20060156189A1 (en) | 2006-07-13 |
DE602005009868D1 (de) | 2008-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI443667B (zh) | 於可再程式非揮發性記憶體內拷貝資料之方法 | |
JP4643711B2 (ja) | 状況依存メモリ性能 | |
US7085161B2 (en) | Non-volatile semiconductor memory with large erase blocks storing cycle counts | |
US8327238B2 (en) | Erased sector detection mechanisms | |
US10725906B2 (en) | Storage device that restores data lost during a subsequent data write |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |