TWI521530B - 半導體記憶裝置及其編程方法 - Google Patents
半導體記憶裝置及其編程方法 Download PDFInfo
- Publication number
- TWI521530B TWI521530B TW103119778A TW103119778A TWI521530B TW I521530 B TWI521530 B TW I521530B TW 103119778 A TW103119778 A TW 103119778A TW 103119778 A TW103119778 A TW 103119778A TW I521530 B TWI521530 B TW I521530B
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- bit string
- circuit
- specific bit
- memory device
- Prior art date
Links
Landscapes
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
本發明是有關於一種半導體記憶裝置及其編程方法,有關於半導體記憶裝置的輸入輸出數據的錯誤檢測校正,特別是有關於一種反及閘(NAND)型快閃記憶體(Flash Memory)的輸入數據的錯誤檢測及校正。
快閃記憶體、動態隨機存取記憶體(Dynamic Random Access Memory,DRAM)等半導體記憶體因集成度逐年增加,從而難以製造無故障或缺陷的記憶元件。因此,在記憶晶片上,採取用來在外觀上補救製造步驟中產生的記憶元件的物理性缺陷的冗餘方案(redundancy scheme)。例如,在某冗餘方案中,通過設置冗餘記憶體來補救存在物理性缺陷的記憶元件。而且,在半導體記憶體中,除了冗餘記憶體的物理性補救以外,還使用錯誤檢測校正電路(ECC:Error Checking Correction)作為軟錯誤(soft error)對策。
在NAND型快閃記憶體中,由於重複進行數據的編程
(program)或擦除而因隧道絕緣膜(tunnel insulating film)劣化導致電荷保持特性變差,或因被隧道絕緣膜捕獲的電荷導致產生閥值變動,從而引起位元錯誤(bit error)。專利文獻1是裝載錯誤檢測校正電路作為這種位元錯誤對策。尤其,在接近區塊選擇電晶體(block selecting transistor)的記憶單元中,存在因微影(lithography)造成的圖案的不均、形成擴散層時的離子注入的不均而導致位元錯誤率變高的傾向,故儲存著可用來補救更多這種位元錯誤率的ECC碼。
而且,在NAND型快閃記憶體中,不僅存在一個記憶單
元中儲存1位元數據的NAND型快閃記憶體,而且還有存在一個記憶單元中儲存多位元(multi bit)數據的NAND型快閃記憶體。
專利文獻2揭示有這種多位元數據的錯誤校正的方案。進而,專利文獻3揭示有如下快閃記憶體,即,將ECC奇偶校驗(Error Checking Correction parity)附加至被輸入的數據而產生ECC碼,並將所產生的ECC碼寫入至物理區塊,且在由物理區塊讀出的頁面(page)數據存在錯誤時,利用ECC碼校正錯誤,將所校正的錯誤數為閥值以上的物理區塊以警示區塊登記在表中,在數據寫入時使選擇警示區塊的優先級下降。
[先前技術文獻]
[專利文獻]
[專利文獻1]日本專利特開2010-152989號公報
[專利文獻2]日本專利特開2008-165805號公報
[專利文獻3]日本專利特開2010-79486號公報
以配置在晶片上(on chip)的形式裝載ECC電路的NAND型快閃記憶體是將被輸入的數據保持於頁面緩衝器(page buffer),並將保持於頁面緩衝器的數據傳輸至ECC電路,將在ECC電路中通過ECC運算產生的錯誤校正碼(錯誤碼)回寫至頁面緩衝器,其後,將頁面緩衝器的數據在記憶體陣列(memory array)的所選擇的頁面中進行編程。然而,如果對被編程的所有頁面數據進行ECC運算,那麽該處理將極其消耗時間。NAND型快閃記憶體是以頁面為單位進行編程,因此,如果伴隨高集成化,每一頁面的位元數增加,則將導致與其成比例地,ECC電路的運算所需的時間增加。這種情况有可能成為縮短編程時間的障礙。
本發明是解决所述以往的課題,提供一種可一面維持數據的可靠性一面實現編程時間縮短的半導體記憶裝置及其編程方法。
本發明的半導體記憶裝置包括:記憶體陣列;數據保持元件,保持從所述記憶體陣列讀出的數據、或保持寫入至所述記憶體陣列的數據;錯誤檢測校正元件,進行數據的錯誤檢測校正;
傳輸元件,將數據從所述數據保持元件傳輸至所述錯誤檢測校正元件;寫入元件,將由所述錯誤檢測校正元件產生的錯誤校正碼寫入至所述數據保持元件;以及檢測元件,檢測輸入至所述數據保持元件的數據是否具有特定的位元串,在檢測到所述特定的位元串時,所述傳輸元件禁止與所述特定位元串對應的數據進行傳輸,且所述寫入元件將預先規定的錯誤校正碼寫入至所述數據保持元件。
所述特定的位元串可為包含邏輯0的位元串、或包含邏
輯1的位元串。所述特定的位元串可為與所述傳輸元件同時傳輸的位元數相等的位元數。所述數據保持元件可分割為多個區段(sector),且所述傳輸元件以區段為單位傳輸數據,所述錯誤校正元件以區段為單位進行錯誤校正處理。可使所述特定的位元串與所述數據保持元件所保持的一個頁面的位元數相等。半導體記憶裝置還可包括記憶特定的位元串與錯誤校正碼的關係的記憶元件,且所述寫入元件基於所述檢測元件的檢測結果,寫入屬於特定位元串的錯誤校正碼。所述寫入元件可包含基於所述檢測元件的檢測結果,產生屬於特定位元串的錯誤校正碼的邏輯電路,且寫入由該邏輯電路產生的錯誤校正碼。半導體記憶裝置可包含多個外部輸入輸出端子,且將從多個外部輸入輸出端子輸入的數據並行地加載至所述數據保持元件,所述檢測元件檢測並行地輸入的各個數據是否包含特定的位元串。所述檢測元件可包含檢測位元數據是否遷移的檢測電路。
本發明的NAND型快閃記憶體的編程方法是將從外部
輸入輸出端子輸入的編程數據加載至頁面緩衝器,檢測所述編程數據是否為特定的位元串,當檢測出並非為特定的位元串時,將保持於所述頁面緩衝器的編程數據傳輸至ECC電路,並將通過ECC運算而產生的錯誤校正碼寫入至所述頁面緩衝器,另一方面,當檢測為特定的位元串時,禁止保持於所述頁面緩衝器的編程數據進行傳輸,且將與該特定的位元串對應的已知的錯誤校正碼寫入至所述頁面緩衝器。
根據本發明,在輸入至數據保持元件的數據為特定的位元串的情况下,禁止將數據從數據保持元件傳輸至錯誤校正元件,從而不進行錯誤校正元件的運算地將錯誤校正碼寫入至數據保持元件,因此可減少從數據保持元件向錯誤校正元件傳輸數據的時間,從而可縮短對於記憶體陣列的數據編程時間。
10‧‧‧快閃記憶體
100‧‧‧記憶體陣列
110‧‧‧輸入輸出緩衝器
110-0~110-7‧‧‧I/O緩衝器
120‧‧‧ECC電路
130‧‧‧檢測電路
132‧‧‧OR電路
134‧‧‧AND電路
136‧‧‧旗標電路
140‧‧‧位址暫存器
150‧‧‧控制部
160‧‧‧字線選擇電路
170‧‧‧頁面緩衝器/感測電路
180‧‧‧行選擇電路
190‧‧‧內部電壓產生電路
200‧‧‧傳輸/寫入電路
300‧‧‧常規區域
310‧‧‧備用區域
311、312、313、314、315‧‧‧區域
Ax、Ay‧‧‧位址資訊
BLK(0)、BLK(1)、……、BLK(m-1)‧‧‧記憶區塊
Di‧‧‧輸入數據
GBL0、GBL1、‧‧‧、GBLn‧‧‧位元線
MCi(i=0、1、‧‧‧、31)‧‧‧記憶單元
NU‧‧‧單元組
P-0~P-7‧‧‧外部輸入輸出端子
S100、S102、S104、S106、S108、S110、S112、S114、S116、S118、S120、S200、S202、S204、S206、S208、S210、S212、S214、
S216‧‧‧步驟
S‧‧‧檢測信號
SGD、SGS‧‧‧選擇閘極線
SL‧‧‧共用源極線
TD、TS‧‧‧選擇電晶體
Vers‧‧‧擦除電壓
Vpass‧‧‧通過電壓
Vpgm‧‧‧寫入電壓
Vread‧‧‧讀出通過電壓
WL0~WL31‧‧‧字線
圖1是表示本發明實施例的NAND型快閃記憶體的整體概略構成的圖。
圖2是表示本發明實施例的記憶單元陣列的NAND串(string)的構成的電路圖。
圖3是說明輸入至本發明實施例的快閃記憶體中的數據流的
圖。
圖4是表示本實施例的檢測電路的一例的圖。
圖5是說明本發明實施例的普通ECC處理的圖。
圖6是說明跳過本發明實施例的ECC處理的示例的圖。
圖7是說明以往的快閃記憶體的ECC處理的流程圖。
圖8是說明本發明實施例的快閃記憶體的ECC處理的流程圖。
接著,參照附圖,對本發明實施方式進行詳細說明。這裏,例示NAND型快閃記憶體作為實施方式。此外,應注意附圖是為了便於理解而將各部分强調表示,從而與實際器件的比例並不相同。
[實施例]
將本發明實施例的快閃記憶體的典型構成示於圖1。不過,這裏所示的快閃記憶體的構成為例示,本發明並非一定限定於這種構成。本實施例的快閃記憶體10構成為包括:記憶體陣列100,矩陣狀地排列著多個記憶單元;輸入輸出緩衝器110,連接於外部輸入輸出端子I/O,且保持輸入輸出數據;ECC電路120,對記憶體陣列100中編程的數據或從記憶體陣列100讀出的數據進行錯誤檢測、校正;檢測電路130,監控從外部輸入輸出端子或輸入輸出緩衝器110輸入至頁面緩衝器/感測電路(sense circuit)
170的數據,且從這些數據中檢測特定的位元串;位址暫存器(address register)140,接收來自輸入輸出緩衝器110的位址數據(address data);控制部150,接收來自輸入輸出緩衝器110的指令數據(command data)或來自外部的控制信號,控制各部分;字線(word line)選擇電路160,自位址暫存器140接收列位址(row address)資訊Ax,將列位址資訊Ax解碼,基於解碼結果來進行區塊的選擇及字線的選擇等;頁面緩衝器/感測電路170,保持從由字線選擇電路160選擇的頁面讀出的數據、或保持對所選擇的頁面的寫入數據;行選擇電路180,從位址暫存器140接收行位址(column address)資訊Ay,將行位址資訊Ay解碼,基於該解碼結果來進行頁面緩衝器/感測電路170內的數據的選擇等;以及內部電壓產生電路190,產生進行數據的讀出、編程及擦除等所需的各種電壓(寫入電壓Vpgm、通過電壓(pass voltage)Vpass、讀出通過電壓Vread、擦除電壓Vers等)。
記憶體陣列100包括沿行方向配置的m個記憶區塊
(memory block)BLK(0)、BLK(1)、……、BLK(m-1)。區塊BLK(0)旁配置有頁面緩衝器/感測電路170。除了這種構成以外,頁面緩衝器/感測電路170也可以配置在記憶體陣列100的另一端部、或兩側的端部。
如圖2所示,在一個記憶區塊形成著多個串聯連接著多
個記憶單元的NAND單元組(cell unit)NU,在一個記憶區塊內沿列方向排列著n+1個單元組NU。單元組NU包括串聯連接的
多個記憶單元MCi(i=0、1、……、31)、連接於作為其中一端部的記憶單元MC31的汲極側的選擇電晶體TD、及連接於作為另一端部的記憶單元MC0的源極側的選擇電晶體TS,且選擇電晶體TD的汲極連接於對應的一條位元線GBL,選擇電晶體TS的源極連接於共用源極線SL。
記憶單元MCi的控制閘極連接於字線WLi,選擇電晶體TD、TS的閘極連接於與字線WL平行的選擇閘極線SGD、SGS。字線選擇電路160在基於列位址Ax或經轉換所得的位址,選擇區塊時,經由區塊的選擇閘極線SGD、SGS選擇性地驅動選擇電晶體TD、TS。圖2表示典型的單元組的構成,但單元組也可以在NAND串內包含一個或多個偽單元(dummy cell)。
記憶單元典型而言具有金屬氧化物半導體(Metal Oxide Semiconductor,MOS)結構,該MOS結構包含:作為形成在P型阱(well)內的N型擴散區域的源極/汲極;隧道氧化膜(tunnel oxide film),形成在源極/汲極間的通道(channel)上;浮動閘極(floating gate)(電荷積蓄層),形成在隧道氧化膜上;及控制閘極,隔著介電膜形成在浮動閘極上。當浮動閘極中未積蓄電荷時,即寫入數據“1”時,閥值處於負狀態,記憶單元為常導通(normally on)。當浮動閘極中積蓄著電子時,即寫入數據“0”時,閥值轉換(shift)為正,記憶單元為常關閉(normally off)。不過,記憶單元既可以是記憶一位元(二進位制數據)的單層單元(Single Level Cell,SLC)型,也可以為記憶多位元的多層單元
(Multi Level Cell,MLC)型。
表1是表示快閃記憶體的各操作時所施加的偏壓的一例
的表格。讀出操作是對位元線施加某一正電壓,對所選擇的字線施加某電壓Vx(例如0V),對非選擇字線施加通過電壓Vpass(例如4.5V),對選擇閘極線SGD、SGS施加正電壓(例如4.5V),將位元線選擇電晶體TD、源極線選擇電晶體TS導通,對共用源極線施加0V。編程(寫入)操作是對所選擇的字線施加高電壓的編程電壓Vpgm(15~20V),對非選擇的字線施加中間電位(例如10V),使位元線選擇電晶體TD導通,且使源極線選擇電晶體TS斷開,將與“0”或“1”數據相應的電位供給至位元線GBL。擦除操作是對區塊內所選擇的字線施加0V,對P型阱施加高電壓(例如20V)。由此,將浮動閘極的電子牽引至基板,實施以區塊為單位的數據擦除。
圖3中表示從本實施例的快閃記憶體10的外部輸入輸
出端子輸入的數據流。從輸入輸出緩衝器110提供的輸入數據Di被加載至頁面緩衝器/感測電路170,同時也被輸入至檢測電路130。檢測電路130檢測輸入數據Di是否為包含特定的位元串的數據。所謂特定的位元串是指不需要進行錯誤檢測校正的運算的位元串、或錯誤校正碼為已知的位元串。在一例中,檢測電路130檢測輸入數據Di均為“0”的位元串、或輸入數據均為“1”的位元串。
檢測電路130可利用邏輯電路檢測輸入數據Di的特定
位元串。圖4是檢測輸入數據Di的位元串均為“0”或“1”時的檢測電路的一例。檢測電路130構成為包括將輸入數據Di的第i個數據與第i-1個數據(i為大於等於2的整數)輸入的二輸入的OR電路(或電路)132及AND電路(與電路)134、以及基於這些邏輯電路的輸出而設定旗標(flag)資訊的旗標電路136。在輸入數據Di均為“0”時,OR電路132的輸出為L電平(level),除此以外為H電平。另外,在輸入數據Di均為“1”時,AND電路134的輸出為H電平,除此以外為L電平。旗標電路136輸出可判別輸入數據Di均為“0”、及均為“1”的檢測信號S。例如,檢測信號S包括二位元數據,在“00”時輸入數據Di均為“0”,在“11”時輸入數據Di均為“1”。檢測電路130的檢測信號S被提供給傳輸/寫入電路200及ECC電路120。
ECC電路120通過對輸入數據Di進行運算而產生輸入
數據Di的錯誤檢測及校正所需的錯誤校正碼或奇偶校驗位元(parity bit)。ECC的運算是例如利用漢明碼(hamming code)或裏德-所羅門碼(Reed-Solomon)等衆所周知的方法進行,從而將被輸入的千位元(k bit)或千位元組(k byte)的輸入數據Di轉換為p=k+q。在本說明書中,將“q”稱作輸入數據Di的錯誤檢測校正所需的錯誤校正碼或奇偶校驗位元。
在頁面緩衝器/感測電路170與ECC電路120之間設置
著傳輸/寫入電路200。傳輸/寫入電路200將保持於頁面緩衝器/感測電路170中的輸入數據Di傳輸至ECC電路120。而且,傳輸/寫入電路200將由ECC電路120產生的錯誤校正碼寫入至頁面緩衝器/感測電路170的備用(spare)區域。
傳輸/寫入電路200在由檢測電路130檢測出輸入數據
Di為特定的位元串時,禁止保持於頁面緩衝器/感測電路170的輸入數據Di進行傳輸。即,ECC電路120不執行輸入數據Di的ECC運算。取而代之,ECC電路120產生輸入數據Di(=特定的位元串)的已知的錯誤校正碼,且將其提供給傳輸/寫入電路200,傳輸/寫入電路200將所接收的已知的錯誤校正碼寫入至頁面緩衝器/感測電路170的備用區域。
在一例中,ECC電路120可包含規定特定的位元串與已
知的錯誤校正碼的關係的表格。表2是規定特定位元串與已知的錯誤校正碼的關係的表格的一例。ECC電路120在從檢測電路130
接收到檢測信號S後,基於該檢測信號S,將與特定位元串對應的已知的錯誤校正碼讀出,並將其輸出至傳輸/寫入電路200。例如,在輸入數據Di均為“0”時(在所述例中,檢測信號S為“00”),將已知的錯誤校正碼EC0輸出至傳輸/寫入電路200。在輸入數據Di均為“1”時(在所述例中,檢測信號S為“11”),將已知的錯誤校正碼EC1輸出至傳輸/寫入電路200。這種表格並非必須由ECC電路120保持,也可以由傳輸/寫入電路200保持。或者,也可以由檢測電路130保持表格,將已知的錯誤校正碼提供給傳輸/寫入電路200。
在本發明之另一實施例中,ECC電路120也可以包含基
於檢測信號S而產生已知的錯誤校正碼的邏輯電路。例如,在檢測信號S為“00”時,產生錯誤校正碼EC0,在檢測信號S為“11”時,產生錯誤校正碼EC1,並將這些錯誤校正碼輸出至傳輸/寫入電路200。這種產生錯誤校正碼的邏輯電路並非必須由ECC電路120包含,也可以是由傳輸/寫入電路200或檢測電路130包含。
如果傳輸/寫入電路200對頁面緩衝器/感測電路170的
錯誤校正碼寫入結束,則接著將保持於頁面緩衝器/感測電路170的輸入數據Di及錯誤校正碼在記憶體陣列100的所選擇的頁面中進行編程。
在讀出動作時,將從記憶體陣列100的選擇頁面讀出的
數據保持於頁面緩衝器/感測電路170,接著,經由傳輸/寫入電路200傳輸至ECC電路120。ECC電路120基於錯誤校正碼,判定有無編程故障、或有無讀出故障,如果存在故障導致的錯誤,則使用錯誤校正碼校正數據。經ECC處理的數據是經由傳輸/寫入電路200傳輸至頁面緩衝器/感測電路170,接著,經由輸入輸出緩衝器110輸出至外部。
在本實施例中,如果由檢測電路130檢測到輸入數據
Di為特定的位元例,則省略將保持於頁面緩衝器/感測電路170的輸入數據Di傳輸至ECC電路120,不進行ECC電路120運算地將已知的錯誤校正碼寫入至頁面緩衝器/感測電路170。由此,可減少輸入數據Di從頁面緩衝器/感測電路170向ECC電路120的傳輸時間及ECC運算時間,從而可大幅度地縮短輸入數據Di的編程所需的時間。
接著,使用圖5至圖8說明其他實施方式。快閃記憶體
10的外部輸入輸出端子可為×1、×4、×8等構成,這裏,表示快閃記憶體10具有×8的外部輸入輸出端子的示例。如圖5所示,外部輸入輸出端子P-0~P-7分別連接於輸入輸出(Input/Output,I/O)
緩衝器110-1~110-7,輸入至外部輸入輸出端子P-0~P-7的數據被平行地輸入至I/O緩衝器110-0~110-7。頁面緩衝器/感測電路170包括分割為八個區段區段0~區段7的常規(regular)區域300、及分割為四個區段備用0、備用1、備用2、備用3的備用區域310。
頁面緩衝器/感測電路170的常規區域300的一個區段被分配八個外部輸入輸出端子P-0~P-7、即輸入輸出緩衝器110-0~110-7。圖1所示的行選擇電路180將所接收的行位址資訊Ay解碼,並基於該解碼結果,選擇被加載輸入至外部輸入輸出端子P-0~P-7的數據的區段。在圖5所示的例中,由外部輸入輸出端子P-0~P-7接收的數據按照行位址資訊Ay被加載至區段0,在圖6所示的例中,由外部輸入輸出端子P-0~P-7接收的數據按照行位址資訊Ay被加載至區段1。同時,加載至各區段的數據被輸入至檢測電路130,並在檢測電路130被監控輸入數據是否為特定的位元串。
常規區域300的一個區段例如包括256位元組(byte),且一個外部輸入輸出端子被分配256位元(256位元×8=1區段)。而且,在該情况下,八個區段整體上可保持約2千位元組(2k byte)的編程數據。備用區域310的一個區段例如包括16位元組,在該情况下,四個區段(備用0~備用3)整體上可保持64位元組的數據。備用區域310的一個區段包括:區域311,記憶著可識別包含故障記憶元件的壞塊(bad block)的資訊;區域312,記憶著與
用戶數據相關的資訊;區域313、314,記憶關於常規區域300的兩個區段的錯誤校正碼(奇偶校驗位元);及區域315,記憶著備用區域310進行ECC運算時的錯誤校正碼(奇偶校驗位元)。備用區域310的備用0的區域313、314分別記憶常規區域300的區段0、區段1的錯誤校正碼(奇偶校驗位元),備用區域310的備用1的區域313、314記憶常規區域300的區段2、區段3的錯誤校正碼(奇偶校驗位元)。同樣地,備用區域310的備用2記憶常規區域300的區段4、區段5的錯誤校正碼(奇偶校驗位元),備用區域310的備用3記憶常規區域300的區段6、區段7的錯誤校正碼(奇偶校驗位元)。
傳輸/寫入電路200以區段為單位傳輸保持於常規區域
300的數據。即,當一個區段為256位元組時,傳輸/寫入電路200包括用以將256位元組的數據平行傳輸至ECC電路120的多個傳輸用電晶體。在傳輸用電晶體的各閘極共用連接著控制信號,控制信號由控制部150進行控制。ECC電路120接收以區段為單位傳輸的數據,通過進行ECC運算而產生錯誤校正碼。傳輸/寫入電路200將從ECC電路120接收的錯誤校正碼寫入至備用區域310的對應的區段的區域313或314。
圖5所示的示例是表示將輸入數據Di、即編程數據加載
至常規區域300的區段0的示例。這裏,由於輸入數據Di不屬於特定的位元串,所以檢測電路130的檢測信號S不被禁止進行傳輸/寫入電路200的傳輸。因此,傳輸/寫入電路200將輸入數據
Di傳輸至ECC電路120,並將由ECC電路120產生的錯誤校正碼寫入至備用區域310的備用0的區域313。
圖6表示輸入數據Di具有特定的位元串時的動作。若
由檢測電路130檢測到加載至常規區域300的區段1的輸入數據Di屬於特定的位元串,則將該檢測信號S提供給傳輸/寫入電路200及ECC電路120。傳輸/寫入電路200響應檢測信號S,禁止對ECC電路120傳輸區段1的輸入數據Di。另外,ECC電路120基於檢測信號S,識別特定的位元串,且將對應於該特定位元串的錯誤校正碼提供給傳輸/寫入電路200。接著,傳輸/寫入電路200將區段1的錯誤校正碼寫入至備用區域310的備用0的區域314。
在圖7中表示以往的ECC處理流程,圖8表示本實施
例的ECC處理流程。首先,說明以往的ECC處理動作。將外部控制信號、以及指令數據、位址數據及編程數據自外部控制器(controllor)供給至快閃記憶體10。控制部150基於外部控制信號及指令數據,開始編程動作。
將編程數據(輸入數據Di)經由外部輸入輸出端子及輸入輸出緩衝器110加載至頁面緩衝器/感測電路170(S100)後,在控制部150的控制下開始編程序列(program sequence)(S102)。將保持於頁面緩衝器/感測電路170的區段0的數據經由傳輸/寫入電路200而傳輸至ECC電路120(S104)。接著,在ECC電路120執行ECC處理,將在ECC電路120產生的奇偶校驗位元寫入至頁面緩衝器/感測電路170的備用區域310(S108)。
接著,由控制部150或傳輸/寫入電路200判定是否存在
ECC未處理的區段(S110)。以此方式對頁面緩衝器/感測電路170的所有區段的數據進行ECC處理,將每一區段的奇偶校驗位元寫入至備用區域310的對應的區段的區域313、314。另外,NAND型快閃記憶體雖以頁面為單位進行編程,但所輸入的編程數據的尺寸並非必須與一個頁面、即圖5所示的常規區域300的八個區段的尺寸相等。例如,編程數據的尺寸可為一個區段的尺寸。通常,就編程干擾(program disturb)的觀點而言,允許在同一頁面連續地編程的次數(NOP(Number of Program))存在限制,可根據該NOP將一個頁面數據分割後進行編程。在NOP為4時,一個頁面數據例如可分為兩個區段、一個區段、三個區段、兩個區段輸入至快閃記憶體10。
若常規區域的ECC處理結束,則接著執行備用區域的
ECC處理。如圖5所示,由傳輸/寫入電路200將備用區域310的備用0的數據傳輸至ECC電路120(S112),在ECC電路120執行ECC處理(S114),將所產生的奇偶校驗位元寫入至區域315(S116)。判定是否存在ECC未處理的區段(S118),如果存在這種區段便重複步驟S112至S116。以此方式執行備用區域310的所有區段的ECC處理。若保持於頁面緩衝器/感測電路170的常規區域300及備用區域310的所有數據的ECC處理結束,則將保持於頁面緩衝器/感測電路170的數據在記憶體陣列的所選擇的頁面中進行編程(S120)。
另一方面,本實施例的快閃記憶體10是如圖8所示地
將編程數據加載至頁面緩衝器/感測電路170(S200),且與之並行地由檢測電路130監控編程數據(S202)。若編程數據對頁面緩衝器/感測電路170的加載結束,則開始進行編程序列(S204)。
在將各區段的編程數據輸入至頁面緩衝器/感測電路
170的同時,檢測電路130立刻檢測各區段的編程數據是否為特定的位元串(S206)。如果區段的編程數據與特定的位元串不一致,則該區段的編程數據與以往同樣地被傳輸至ECC電路120中執行ECC處理(S208、S210)。即,執行圖5所示的ECC處理。另一方面,由檢測電路130檢測到區段的編程數據與特定的位元串一致時,傳輸/寫入電路200不執行該區段的編程數據對ECC電路120的傳輸,ECC電路120則不執行用於該區段的編程數據的ECC運算。因此,跳過步驟S208、S210的處理。ECC電路120跳過ECC運算,取而代之地基於檢測信號S識別特定的位元串,並將與所識別的特定位元串對應的已知的奇偶校驗位元輸出至傳輸/寫入電路200,從而傳輸/寫入電路200將已知的奇偶校驗位元寫入至備用區域310的區域313或314。這種處理是針對頁面緩衝器/感測電路170的常規區域300的所有區段而進行(步驟S206~214)。若常規區域300的ECC處理結束,則接著對備用區域310執行ECC處理。備用區域310的ECC處理因與圖7所示的以往的方法相同而省略說明。
如此一來,根據本實施例,在被輸入錯誤校正碼為已知
的特定位元串的編程數據的情况下,因不執行編程數據從頁面緩衝器/感測電路170向ECC電路120的傳輸,且不進行ECC運算,所以可縮短被輸入的數據的編程時間。尤其,由於從頁面緩衝器/感測電路170向ECC電路120的數據傳輸所需的時間相對較長,所以對縮短編程時間的貢獻較大。
所述實施例表示了將保持於頁面緩衝器/感測電路170的數據傳輸至ECC電路120的示例,但在頁面緩衝器/感測電路170包括一個或者多個高速緩衝記憶體(cache memory)的流水線(pipeline)結構時也可以應用本發明。在該情况下,跳過高速緩衝記憶體與ECC電路之間的數據傳輸。
已對本發明的實施方式進行了詳細叙述,但本發明並不限定於特定的實施方式,可在上述發明的精神範圍內進行各種變形、變更。
110-0~110-7‧‧‧I/O緩衝器
120‧‧‧ECC電路
130‧‧‧檢測電路
170‧‧‧頁面緩衝器/感測電路
200‧‧‧傳輸/寫入電路
300‧‧‧常規區域
310‧‧‧備用區域
311、312、313、314、315‧‧‧區域
P-0~P-7‧‧‧外部輸入輸出端子
S‧‧‧檢測信號
Claims (13)
- 一種半導體記憶裝置,其特徵在於包括:記憶體陣列;數據保持元件,保持從所述記憶體陣列讀出的數據、或保持寫入至所述記憶體陣列的數據;錯誤檢測校正元件,進行數據的錯誤檢測校正;傳輸元件,將數據從所述數據保持元件傳輸至所述錯誤檢測校正元件,寫入元件,將由所述錯誤檢測校正元件產生的錯誤校正碼寫入至所述數據保持元件;及檢測元件,檢測輸入至所述數據保持元件的數據是否具有特定的位元串,當檢測到所述特定的位元串時,所述傳輸元件禁止與所述特定的位元串對應的數據進行傳輸,且所述寫入元件將預先規定的錯誤校正碼寫入至所述數據保持元件。
- 如申請專利範圍第1項所述的半導體記憶裝置,其中所述特定的位元串是均為邏輯0的位元串。
- 如申請專利範圍第1項所述的半導體記憶裝置,其中所述特定的位元串是均為邏輯1的位元串。
- 如申請專利範圍第1項至第3項中任一項所述的半導體記憶裝置,其中所述特定的位元串是與所述傳輸元件同時傳輸的位元數相等的位元數。
- 如申請專利範圍第1項至第3項中任一項所述的半導體記憶裝置,其中所述數據保持元件被分割為多個區段,且所述傳輸元件以區段為單位傳輸數據,所述錯誤校正元件以區段為單位進行錯誤校正處理。
- 如申請專利範圍第1項至第3項中任一項所述的半導體記憶裝置,其中所述特定的位元串與所述數據保持元件所保持的一個頁面的位元數相等。
- 如申請專利範圍第1項至第3項中任一項所述的半導體記憶裝置,其中所述半導體記憶裝置還包括記憶特定的位元串與錯誤校正碼的關係的記憶元件,且所述寫入元件基於所述檢測元件的檢測結果,寫入屬於特定位元串的錯誤校正碼。
- 如申請專利範圍第1項至第3項中任一項所述的半導體記憶裝置,其中所述寫入元件包含基於所述檢測元件的檢測結果,產生屬於特定位元串的錯誤校正碼的邏輯電路,且寫入由該邏輯電路產生的錯誤校正碼。
- 如申請專利範圍第1項至第3項中任一項所述的半導體記憶裝置,其中所述半導體記憶裝置包含多個外部輸入輸出端子,且將從多個外部輸入輸出端子輸入的數據並行地加載至所述數據保持元件,所述檢測元件檢測平行地輸入的各個數據是否包含特定的位元串。
- 如申請專利範圍第1項至第3項中任一項所述的半導體記憶裝置,其中所述記憶體陣列是反及閘型記憶體陣列,且所述數 據保持元件包含頁面緩衝器。
- 一種編程方法,該編程方法是反及閘型快閃記憶體的編程方法,其特徵在於:將從外部輸入輸出端子輸入的編程數據加載至頁面緩衝器,檢測所述編程數據是否為特定的位元串,當檢測出並非為特定的位元串時,將保持於所述頁面緩衝器的編程數據傳輸至錯誤檢測校正電路,並將通過錯誤檢測校正運算而產生的錯誤校正碼寫入至所述頁面緩衝器,當檢測為特定的位元串時,禁止保持於所述頁面緩衝器的編程數據進行傳輸,且將與該特定的位元串對應的已知的錯誤校正碼寫入至所述頁面緩衝器。
- 如申請專利範圍第11項所述的編程方法,其中所述編程數據是均為邏輯“0”的位元串。
- 如申請專利範圍第11項所述的編程方法,其中所述編程數據是均為邏輯“1”的位元串。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW103119778A TWI521530B (zh) | 2014-06-06 | 2014-06-06 | 半導體記憶裝置及其編程方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW103119778A TWI521530B (zh) | 2014-06-06 | 2014-06-06 | 半導體記憶裝置及其編程方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201546816A TW201546816A (zh) | 2015-12-16 |
TWI521530B true TWI521530B (zh) | 2016-02-11 |
Family
ID=55407554
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW103119778A TWI521530B (zh) | 2014-06-06 | 2014-06-06 | 半導體記憶裝置及其編程方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI521530B (zh) |
-
2014
- 2014-06-06 TW TW103119778A patent/TWI521530B/zh active
Also Published As
Publication number | Publication date |
---|---|
TW201546816A (zh) | 2015-12-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10395753B2 (en) | Semiconductor memory device and programming method thereof | |
US7508704B2 (en) | Non-volatile semiconductor storage system | |
JP4538034B2 (ja) | 半導体記憶装置、及びその制御方法 | |
JP6131207B2 (ja) | 半導体記憶装置 | |
JP6258399B2 (ja) | 半導体装置 | |
TWI595497B (zh) | 半導體記憶裝置、其不良行救濟方法及冗餘資訊設定方法 | |
JP5550386B2 (ja) | 不揮発性半導体記憶装置及びメモリシステム | |
JP2009140564A (ja) | Nand型フラッシュメモリおよびメモリシステム | |
JP5657079B1 (ja) | 半導体記憶装置 | |
TWI602055B (zh) | 半導體儲存裝置及其編程方法 | |
US11621039B2 (en) | Semiconductor memory device, memory system, and write method | |
US20160012916A1 (en) | Semiconductor memory device and memory system | |
KR101651573B1 (ko) | 반도체 기억장치 및 그 프로그래밍 방법 | |
CN105321566B (zh) | 半导体存储装置及其编程方法 | |
TWI521530B (zh) | 半導體記憶裝置及其編程方法 | |
JP5710815B1 (ja) | 半導体記憶装置 | |
TWI539465B (zh) | 半導體儲存裝置及其冗餘方法 | |
JP6293846B2 (ja) | 半導体記憶装置 |