用於可編程存儲器的自適應編程延遲電路的製作方法
2023-05-18 04:38:26 1
專利名稱:用於可編程存儲器的自適應編程延遲電路的製作方法
技術領域:
本發明涉及一種集成電路存儲器體系結構,尤其涉及一種新的可編程操作協議以及允許「智能編程」的可編程存儲器的存儲器體系結構。
背景技術:
圖1示出了一種基於行和列的陣列的可編程EEPROM存儲器的陣列體系結構。各行和各列分別對應於多條字線101、102、...、10n和多條位線201、202、...、20n(位可以每個字2n位來存取)。示例性存儲器單元30設置在各條字線10和位線20交叉的位置上。存儲器單元30由串聯連接的選擇電晶體31和浮置柵極電晶體32組成。單元選擇電晶體31的柵極連接到字線10,它的漏極連接到位線20,而它的源極連接到浮置柵極電晶體32的漏極。浮置柵極電晶體的源極34通過源線35接地,而浮置柵極電晶體的柵極36在被一字選擇器件11啟動時可邏輯地連接到Vref線40。
在浮置柵極電晶體中的數據存儲可通過改變存在於浮置柵極上的電荷來獲得。為了獲得邏輯1值(擦除狀態),就必需將電子注入浮置柵極,這增加了浮置柵極電晶體32的閾值電壓。為了獲得邏輯0值(寫入狀態),就必需從浮置柵極中抽取電子,這減小了浮置柵極電晶體32的閾值電壓。一種稱為Fowler Nordheim穿隧效應的機制用於EEPROM存儲器上的擦除和編程操作。這種機制非常之慢(在毫秒量級範圍內)並且需要由EEPROM存儲器晶片中的電路產生高電壓源Vpp。Vref線40在擦除操作期間被驅動至Vpp而在寫入操作期間則接地。位線20在擦除操作期間保持浮置而在寫入操作期間則連接到Vpp。
擦除一個單元可(通過字選擇器件11和Vref線40)將高電壓Vpp施加於浮置柵極電晶體32的柵極36,並且(通過接地的源線35)使浮置柵極電晶體的源極34接地來獲得。為了寫入存儲器單元30,必需(通過位線20和單元選擇電晶體31)將Vpp施加於浮置柵極電晶體32的漏極,浮置柵極電晶體的柵極36則必需(通過字選擇器件11和Vref線40)接地,而浮置柵極電晶體的源極34則(通過浮置源線35)保持浮置。
如果諸存儲器單元30共享同一條Vref線40,則多個存儲器單元可組成字並可並行地擦除。同樣,可以通過將它所對應的位線20驅動至Vpp來單獨寫入各個位(存儲器單元)。
字編程可以通過兩個步驟來獲得。首先,擦除字並在擦除之後將所有的擦除位設置為邏輯1。其次,同時寫入字中所有必要的位,從而將所有的位變為邏輯0值以便於編程目標字數據。
參閱圖1,取決於浮置柵極電晶體32的閾值電壓(Vth),各個存儲器單元30將導通或者不導通電流。如果閾值電壓Vth高於基準電壓Vref,則存儲器單元30截止。如果閾值電壓Vth低於基準電壓Vref,則存儲器單元30導通。可通過在存儲器單元30或字編程操作期間向各個浮置柵極電晶體32的浮置柵極注入電子或者從中去除電子來調節閾值電壓Vth。在擦除操作期間,可將電子注入浮置柵極使之處於高的閾值電壓值Vthhigh。在寫入操作期間,可以從浮置柵極去除電子使之處於低的閾值電壓Vthlow。高Vthhigh和低Vthlow之間的差稱為編程窗口。在讀取操作期間,通常施加於存儲器單元30的柵極上的基準電壓值在Vthhigh和Vthlow之間。由於有可能在例如若干年之後會出現電荷從浮置柵極中損失,因此就希望具有較寬的編程窗口以防止可能的數據丟失。
各個存儲器單元30的數據保持特性將取決於存儲器單元30長時間可靠維持電壓閾值的能力,這是由於本徵浮置閾值電荷損失的影響。另外,在若干次擦除和寫入周期之後存儲器單元30的特性會改變,從而導致負電荷俘獲現象。存儲器單元30的這些技術特性使之難以確保可接受的數據保持能力。
因此,就需要具有儘可能寬的編程窗口以便於彌補可能影響存儲器單元內所存儲的數據完整性的可編程存儲器單元的特性。
圖1是現有技術的EEPROM存儲器陣列的一個例子。
圖2是具有用於自適應編程操作的附加示例性電路的EEPROM存儲器陣列(存儲器內核)的框圖。
圖3是與圖2的自適應編程操作相關聯的列鎖存電路。
圖4是具有校驗功能的圖3的列鎖存器。
圖5是圖4的具有示例性選擇Vref列鎖存的列鎖存器。
圖6是說明與自適應編程操作相關聯的示例性擦除算法功能的流程圖。
圖7是說明與自適應編程操作相關聯的示例性寫入算法功能的流程圖。
發明內容
本發明是一種可產生自動調諧編程脈衝以便於補償在浮置柵極電晶體的氧化層中的負電荷俘獲現象、並補償低電源電壓和溫度變化的電路。編程脈衝可根據諸如溫度和電源電壓之類的編程條件來調節。存儲器可按需控制以在諸如溫度和浮置柵極電晶體已經編過程的次數的各種條件下提供經改進的數據可靠性。甚至在使用已經重複編程過的部分時,使用經調諧的編程脈衝仍可導致較佳的數據保持能力。另外,因為優化了編程脈衝,所以也優化了功耗並減小了存儲器所受的應力。本發明也是一種可以在擦除操作或者寫入操作之後,使用不同於正常讀取電壓的讀取電壓並自動調節編程脈衝的參數來進行存儲單元的編程和檢驗的方法。
具體實施例方式
本發明是一種自適應編程操作,它可基於讀取操作和與存儲器單元30的期望邏輯值的比較來調諧在擦除或者寫入操作中使用的編程脈衝延遲時間。擦除和寫入延遲可自動調節,使之在各種條件下維持可接受的編程窗口。在周期性部分上增大編程脈衝延遲是一種用於恢復可接受的編程窗口和恢復所需要的存儲器單元保持特性的方法。例如,當浮置柵極電晶體32的氧化層中所俘獲的電荷使得編程機制效率降低時,可以在比較失敗之後施加另一編程脈衝。通過本發明也可提高壽命、數據保持和功耗等特性。
在本發明的一個示例性實施例中,可增加編程脈衝數量的自動調節來補償可編程EEPROM存儲器中任何存儲器單元的擦除操作或者寫入操作的故障。參閱圖2,示例性EEPROM存儲器器件包含存儲器內核101、「數據輸入」塊102、位線選擇104、列鎖存器110、地址解碼器120、130和140、讀出電路105、電荷泵159、控制邏輯155、控制線151以及寫入定時器154。另外,編程故障標誌152、專用定序器150、專用鎖存器電路、校驗定時器160、地址計數器173、多路復用器170和175、比較器103以及容限基準電壓(Vref)發生器154也是實現自適應編程所必需的。存儲器內核101提供類似於圖1所示的EEPROM存儲器陣列體系結構的陣列體系結構。
在該示例性實施例中,定序器150是用於實現一編程算法(將參照圖6和圖7詳細討論編程算法的細節)實施例的狀態機。在另外的實施例中,定序器150的功能可通過專用控制器或處理器來執行。定序器150連接到控制邏輯155、並連接到寫入定時器153。控制邏輯155可開啟或者關閉電荷泵159,以提供電壓Vpp。寫入定時器154控制編程脈衝的寬度。定序器150將擦除和寫入脈衝傳遞給寫入定時器154。在校驗操作期間,地址計數器173在第一地址開始產生所需要的地址。將地址提供給Yld 120和Yrd 140的地址並通過多路復用器170和175進行解碼。任何經擦除的存儲器單元30都應該等於邏輯1值。被擦除的字邏輯值應該等於一組2n位,且各個位都具有一個邏輯1值。例如,8位字應該在擦除操作之後具有FF的十六進位數值。比較器103也可以比較已經寫入到列鎖存器的包含所希望數據或邏輯值的內容的存儲器單元30或者存儲器陣列中的字。
對至少一個已編程存儲器單元30中的內容自動校驗(參見以下進一步的細節)並且在經編程存儲器單元30的校驗成功時完成編程操作。讀取容限模式測試用於校驗編程操作的質量。在讀取容限模式測試中可使用容限電壓基準。在讀取OFF單元時電壓基準Vref增加,而在讀取ON單元時以及將其與正常的讀取電壓基準進行比較時電壓基準Vref下降。例如,使用約±0.5V的容限。在讀取操作期間使用容限電壓基準可確保當存儲器單元30用其柵極上的Vref+0.5V電壓來讀取時存儲器單元保持OFF狀態,而當存儲器單元30用其柵極上的Vref-0.5V電壓來讀取時存儲器單元保持ON狀態。在校驗操作期間,可使用容限模式通過施加由容限Vref發生器154內部產生的Vref值來讀取在存儲器內核(陣列)101中的一個字。
對在至少一個存儲器單元30中的邏輯值編程的編程操作可分成三個階段或者三個操作加載、擦除和寫入。
單個單元的編程電流是非常之小的,因此使並行編程若干位成為可能。為了提高EEPROM存儲器的編程速度,有可能在同一行中同時擦除或者寫入若干字或者在一頁中同時擦除或寫入多個字。然而,所要編程的數據必需在開始並行寫入操作之前加載到專用緩存器(鎖存器)中。列鎖存器110緩存系統可由每條位線20一個列鎖存器110和每條Vref線40一個列鎖存器所組成。在一示例性實施例中,各條位線20有一個列鎖存器110,而各條Vref線40有一個列鎖存器110。具有與各條位線相耦合的列鎖存器110的存儲器內核101可提供逐字(一位或者多位)的擦除操作以及選擇寫入操作(逐位或者逐字)。
列鎖存器110提供兩項功能。該列鎖存器存儲數據並且還將Vpp加到相應位線20處。要編程到存儲器單元30中的數據被加載到至少一個列鎖存器110中。一組2n位的鎖存器和一個Vref鎖存器(或者字節標誌)將所要編程的數據存儲於目標行中。在加載操作期間,Y地址總線AddYld 171可由Ydl解碼器120進行解碼。數據值加載到與位線20相耦合的列鎖存器110的至少一個字中。邏輯值(標誌信號)也被存儲在相關聯的Vref列鎖存器中。通過使用加載到相關聯Vref列鎖存器110中的標誌信號來選擇將用於程序存儲器單元30的字。通過X解碼器輸入131上且可由X解碼器130解碼的X地址來選擇字線。當所有數據字都已經被加載時,就可以將擦除電壓施加於所選擇的字上。
鎖存器電路可被結合於圖2所示的列鎖存器100塊中。圖3示出在題為「EEPROM體系結構和編程協議(EEPROM Architecture and ProgrammingProtocol)」的美國專利申請No.10/737,676中所公開的電路,該電路也可用於本發明的一個實施例。該鎖存器電路包括一個傳輸電晶體和一對反饋逆變器,用於提供狀態鎖存器210的操作。在擦除操作和/或存儲器寫入操作期間可使用列鎖存器210。列鎖存器電路210包括狀態鎖存器212和狀態鎖存器傳輸電晶體220,該電晶體可由施加於狀態鎖存器傳輸電晶體220的柵極230上的負載控制信號所控制。另外,列鎖存器電路210包括提供基準和編程電壓Vpp的電路。數據控制傳輸柵極240與鎖存器輸出211相耦合併且由數據控制輸入241控制。數據控制傳輸柵極240與電平漂移電路270相耦合,以向存儲器陣列提供不同於狀態鎖存器電路210中所使用電壓的電壓。數據控制傳輸柵極240也與Vpp傳輸門250相耦合,用於將Vpp電壓施加於一個列上(位線20)。
在加載周期中,輸入Din 201上的輸入數據可使用Yld解碼器120輸入到列鎖存器110。一加載控制信號施加於狀態鎖存器傳輸電晶體220的柵極230上,且使之設置為邏輯1值,以便於通過Din 201將數據輸入值鎖存到至少一個狀態鎖存器212中。所加載的數據是編程處於OFF狀態的存儲器單元30的邏輯1值,以及編程處於ON狀態的存儲器單元30的邏輯0值。另外,邏輯1值可加載到對應於各個要編程字的Vref鎖存器中。當各個期望地址上所有的字都已經一個接著一個地加載到各個對應於目標用於編程操作的存儲器單元30的鎖存器中時,就可以結束加載周期。地址計數器173可用於計數或者增加存儲器內核的地址,作為校驗操作的一部分。AddYint 172可從地址位置1開始,並且通過加載和讀取解碼器120和140兩者來進行解碼。
接著,在完成加載操作之後,存儲器單元30可被並行擦除為2n位字。在擦除階段,通過將浮置柵極電晶體32(見圖1)的柵極保持在提高的電壓Vpp上電子被注入到浮置柵極的結構中。Vpp電壓可以由至少一個Vref列鎖存器通過字選擇傳輸門11來提供。為了實現擦除操作,圖2所示的X解碼器130可將Vpp施加到對應於AddX地址(對應於圖1所示的字線11)的字線上。數據控制傳輸電晶體240可被觸發成ON,Vref列鎖存器210驅動或者使得(電壓)電平漂移電路270導通,並且通過位線傳輸電晶體250將Vpp施加到控制Vref線40上。
將所需的擦除電壓Vpp作為具有施加持續時間的脈衝來施加。所施加的持續時間稱為擦除時間延遲Terase。Vpp電壓脈衝的施加會引起電子加速進入所選擇的浮置柵極320。增加保持在浮置柵極中的電子就能夠提高單元的電壓閾值Vth。隨後,擦除所選擇的字,並且將各個選擇位設置成邏輯值1。在完成了擦除操作之後,就進行擦除校驗操作300,如圖6的示例性算法所說明的那樣(下面將作進一步描述)。
在完成擦除操作之後,就可進行寫入操作。在寫入操作期間,X解碼器130(通過字選擇器件11)將Vpp施加於根據X解碼器輸入131上的AddX所選擇的字線10上。如圖3所示,由列鎖存器210所控制並且將控制信號241施加於傳輸電晶體240的柵極的Vpp傳輸電晶體250將Vpp施加於已被選擇的位線20(見圖1)上。在各個列鎖存器210中,當數據控制傳輸電晶體240通過驅動數據控制輸入201導通時,各個狀態鎖存器的內容都連接到電平漂移電路270的輸入。如果鎖存器輸出211的狀態值是邏輯值0的話,則Vpp傳輸門250的柵極保持邏輯0值,而位線260則保持浮置。在狀態鎖存器輸出211是邏輯值0的情況下,對應的存儲器單元不寫入,並且在已完成擦除操作之後保持邏輯1值。如果狀態鎖存器輸出211是邏輯值1的話,則Vpp傳輸柵極250可由電平漂移電路270切換至Vpp。在狀態鎖存器輸出211是邏輯值1的情況下,Vpp傳輸柵極250導通,並且將電壓Vpp傳送至位線260。所選擇的存儲器單元被寫入並且存儲器單元的邏輯值變成邏輯0值。
當完成寫入操作時,則自動校驗寫入操作。讀取經寫入的存儲器單元30,並且將其值與對應鎖存器中所存儲的期望數據值相比較。
在擦除操作之後或者在已執行寫入操作之後進行校驗操作。校驗操作至少讀取一個存儲器單元30,並將存儲器單元30中的內容與期望值作比較。對於擦除操作來說,各個存儲器單元的期望值是邏輯1值。擦除字的邏輯值應該等於一組2n位,各個位都具有邏輯1值。例如,在擦除操作之後,一個8位字應該具有FF的十六進位數值。例如,所擦除的字將與值FF相比較。對於寫入操作來說,期望值是存儲在關聯於各個存儲器單元30的列鎖存器110和210中的邏輯值。讀取存儲在至少一個列鎖存器110和210中的邏輯值和存儲在至少一個存儲器單元30中的值。在校驗寫入操作時,將存儲器單元30中的邏輯值與存儲在對應列鎖存器110和210中的邏輯值作比較。
在存儲器單元30的讀取操作中,將基準電壓Vref施加於浮置柵極電晶體32的柵極。基準電壓可以是正常的基準電壓或者容限基準電壓。可由讀出電路105(見圖2)測量的浮置柵極電晶體32的漏極電流表示在浮置柵極電晶體32的浮置柵極中是否存儲有電子。經編程單元吸取比基準單元更少的漏極電流,以表示存儲的邏輯0值。
在讀取操作的一示例性實施例中,基準電壓Vref可通過字選擇器件11施加於各個選定浮置柵極電晶體32的柵極36上。另外,電壓Vdd被施加於選擇電晶體31的柵極。浮置柵極電晶體32由一被激勵的字線10和一被激勵的位線20選擇。位線20通過位線選擇電路104連接到讀出電路105。在低電壓應用的另一實施例中,可將兩倍的Vdd值施加於選擇電晶體31的柵極。將小於1伏的電壓施加於字選擇電晶體11的漏極。
圖4示出了包含可在列鎖存器讀取操作期間使用的附加電路的列鎖存器電路210的一示例性實施例。在一讀取操作中,X地址解碼器130以及Y地址解碼器120和140指定所要讀取的存儲器單元30和列鎖存器210的位置。逆變器221用於將輸出線211與數據線Din 201相隔離。這就防止了將狀態鎖存器212的輸出直接連接到數據線Din 201的電容性負載。如果沒有逆變器221,電容性電荷轉移會引起狀態鎖存器212的非故意切換。出於相同的原因,狀態鎖存器212的內容不能直接通過狀態鎖存器傳輸電晶體220讀取。為了執行狀態鎖存器212的讀取操作,激勵讀取傳輸電晶體222並且在數據線Din 201上讀取狀態鎖存器212的狀態。
當讀取了存儲器的字並且將其與期望邏輯值相比較時,執行校驗過程。例如,當校驗存儲器單元30是否已被適當地擦除時,所期望的字的值是例如FF。在一示例性實施例中,通過專用比較器103來進行比較。校驗過程在已經擦除或者寫入存儲器陣列中的一個字或多個字之後自動進行。比較器103(如圖2所示)將經擦除字的位與邏輯1值進行比較,以及將已寫入字與列鎖存器的內容進行比較。對於寫入操作校驗來說,經編程數據的邏輯值已被加載到列鎖存器210中並且是可以讀取的。
圖5示出了含有單個標誌鎖存器224的選擇Vref列鎖存器210的一示例性實施例。標誌鎖存器224被用作Vref標誌或者字的鎖存。如果Vref已經被設置成邏輯1值的話,該標誌表示對應的存儲器字已經被擦除。標誌鎖存器224可使用加載標誌線226來加載,該加載標誌線226控制著標誌傳輸電晶體223。加載標誌線226可結合狀態鎖存器負載230一起操作,以在狀態鎖存器傳輸柵極220被激勵和Din 201處於穩定時可以加載相同的狀態。另外,加載標誌線226可單獨用於將單個標誌邏輯值加載到標誌鎖存器224中。在讀取操作期間,控制標誌傳輸電晶體222的單個讀取標誌線225讀取存儲在標誌鎖存器224中的值。
在擦除和寫入操作期間執行的校驗操作期間,單元使用專用容限模式操作來讀取並與經擦除單元的期望邏輯1值進行比較,或者與用於經寫入單元的列鎖存器110中所存儲的數據進行比較。專用讀取容限模式確保存儲單元30以足夠的容限編程從而長時間地保持為所設置的邏輯值,而與浮置柵極電晶體32所具有的自然電荷變化無關。為了校驗編程操作的質量,則在讀取OFF單元時Vref增加,而在讀取ON單元時則Vref減小。在容限模式讀取操作期間,如圖2所示的基準發生器154,產生高於在普通讀取操作中所使用電壓的內部基準電壓。例如,大約0.5伏的容限確保存儲器單元30在Vref+0.5伏施加於其柵極上以讀取存儲器單元30時可保持為OFF,而在採用Vref-0.5伏施加於其柵極上以讀取存儲器單元30時可保持為ON。
校驗操作可採用一種以上方法進行。容限模式讀取操作校驗各個單元的電壓閾值Vth是否足夠高,從而可克服與環境條件(例如,溫度)或者非期望的電子存儲(例如,俘獲的氧化層電荷)有關的任何浮置柵極的變化。
在圖6中,示出了使用自動校驗操作的示例性擦除算法。在脈衝計數器初始化(310)之後,將第一個擦除脈衝施加於(320)目標單元30。校驗操作(330)初始化地址計數器。如果存儲器單元30已經被適當地擦除,則地址計數器173就增值、並校驗另一組存儲器單元。如果存儲器單元還沒有被適當地擦除,則施加另一個脈衝(332),脈衝計數器進行增值(332),並且再次校驗存儲器單元(330)。如果已經達到預定的脈衝計數值,則將停止校驗操作(330),擦除操作將停止(331),並對程序故障標誌152進行設置(333)。如果所有的存儲器單元30都通過擦除和校驗操作的話,則可以選擇性地施加最後的擦除脈衝(350)。
在一個實施例中,優化校驗操作中的速度。如果比較結果證實被校驗的單元或者字的閾值電壓Vth是正確的,則Addyint就增加並且可對下一個字進行下一步的擦除和校驗操作(330)。如果被校驗的單元或者字的閾值電壓Vth不正確,則至少有一個單元沒有被很好地擦除。當校驗過程失敗時,則再次將擦除脈衝施加到要編程的所有字上(332)——甚至還加在那些已經成功通過在先校驗操作的字。進行附加的擦除和校驗(330)操作,直至所有的單元都通過校驗或者直至已經達到擦除脈衝的最大數目。當原先失敗的單元隨後通過校驗時,擦除時間就可得到優化。如果校驗定時器160(見圖2)已經達到擦除時間的最大值並且各單元還沒有通過校驗(330),則使用一容限模式的停止(331)和定序器150(見圖1)的校驗操作設置(333)編程失敗標誌152。如果所有的單元都通過了校驗操作(使用容限模式)(330),則意味著已經達到了所需的擦除時間,隨後寫入階段開始(410)。可進行使用最佳擦除時間來施加最後的擦除脈衝350的選擇方案。
當擦除時間已經優化時,則用於存儲器單元30擦除的高電壓條件已經施加於要編程的所有字。儘管該校驗過程可快速優化擦除時間,但是每當程序使擦除時間計數器增1時,原先已經擦除的字將被再次擦除。該結果會不必要地加重原先已擦除單元的負擔。
再次參閱圖6,可實現校驗操作的另一實施例,它可避免對正確經擦除字的不必要的負擔。使用經更改的Vref列鎖存器210(見圖5),標誌鎖存器224(見圖5)存儲一獨立標誌,用於表示該字已經至少被擦除過一次。當字地址被加載時就鎖存該標誌,用以表示該字還沒有通過校驗。在第一次擦除脈衝期間,Vref列鎖存器將通過Vpp。在施加第一次擦除脈衝(320)時,要編程的各個字都被擦除。接著,在校驗操作期間(430),用容限模式來讀取這些字。在已施加了第一擦除脈衝(320)之後,可將擦除電壓Vpp有選擇地只施加到還沒有被很好地擦除的字(在校驗期間失敗的字)上。
如果一個字沒有通過校驗操作的話,則標誌鎖存器212被設置以表示校驗失敗。校驗操作繼續進行直至存儲器中的所有字都得到校驗為止。在校驗操作期間,任何已經適當擦除的字都不會再在後續擦除脈衝的施加(350)期間被再次擦除。如果至少有一個Vref列鎖存器數據已經被設置的話,則意味著至少有一個字沒有被正確地擦除,那麼擦除脈衝350就將施加到存儲器內核中未能通過校驗的所有字上。當施加新的擦除脈衝(350)時,因為在校驗操作期間已經設置了所對應的Vref列鎖存器,所以Vpp不會施加到已經適當擦除的字上。標誌鎖存器224的狀態被保持並且將會在後續寫入階段的校驗過程中被使用。
如圖7所示,在寫入階段400,寫電壓420被施加於選定單元,並且在各個寫脈衝之後將執行寫校驗430。寫校驗操作的操作類似於上述的擦除校驗。對提供AddYld 171和AddYrd 176地址的地址計數器173(見圖2)進行初始化(410)。與擦除校驗操作相似,讀取Vref列鎖存器210或224。如果Vref列鎖存器210尚未設置的話,則表示對應的字未被編程,那麼Y內部地址就增加。如果Vref列鎖存器210已被設置的話,則讀取對應於要寫入數據的列鎖存器字的內容。用容限模式來讀取已在存儲器磁芯101中寫入的選定字,並且將其與列鎖存器212的狀態相比較。為了校驗ON單元是用足夠容限編程的,存儲器單元32的柵極可通過各個傳輸柵極31到各條位線來接地。
如果鎖存器和存儲器單元不匹配的話,則停止比較(431),這表示至少有一個單元還沒有正確地寫入。如果存儲器單元30對校驗操作失敗並且已經達到了校驗迭代的最大數目,則停止校驗操作(431),而定序器150(見圖1)設置一編程失敗標誌152(433)。
如果鎖存器和存儲器單元比較的內容相匹配,則地址計數器173(見圖2)就增1(432)。在每一次校驗操作之後,對應於正確寫入字的列鎖存器210可進行復位,以避免該字不必要的重複寫入。當各個存儲器單元都通過校驗操作時,地址計數器迭代地增1(432),並且施加另一寫入脈衝(432),然後是一校驗過程430。當所有的期望存儲器單元都已經通過校驗過程時,就可結束寫入過程(450)。
所提出的本發明是通過進行平行寫入操作的智能和自動的、自適應EEPROM存儲器單元編程操作的第一體系結構。使用專門的列鎖存器、專用的定時器以及內部控制的校驗過程,就有可能減小完成擦除和寫入操作所需的脈衝數目和時間。使用這種方法,校驗操作適於諸如電源和溫度變化的編程條件、以及由於單元在陣列上的分布所引起的個別存儲器單元編程變化、以及在重複擦除和寫入周期之後存儲器單元的劣化等。另外,可進行編程功耗的優化,同時確保在多種編程條件下的可靠編程操作。最後,如果出現存儲器單元的編程問題,就有可能檢測出該問題並且設置專用存儲器編程失敗的標誌。
應該理解的是,上述描述旨在是說明性的,而非限制性的。本領域技術人員將理解,本發明可在所附權利要求的精神和範圍內以種種改進和替代的方式來實現。所討論的本發明諸多實施例可以包括特定的特性、結構或者特徵,但是每個實施例並不一定都包括所討論的特殊特性、結構或者特徵。術語「在一實施例中」的重複使用並不一定是指同一實施例,儘管它可以是同一實施例。對本領域技術人員來說,基於上述描述的閱讀和理解,許多其它實施例都將是顯而易見的。例如,除了示例性EEPROM之外,本發明可適用於各類可編程存儲器。因此,本描述被認為是說明性而非限制性的。因此,本發明的範圍應該參閱所附權利要求來確定,並包含等效於授權所述權利要求的整個範圍。
權利要求
1.一種用於改進可編程存儲器單元陣列中的數據保持的方法,該方法包括定義不同於正常存儲器單元讀取電壓的容限基準電壓;讀取至少一個存儲器單元的邏輯值內容;使用所述容限基準電壓作為基準,用於與所述邏輯值內容作比較;自動地將至少一個存儲器單元上的所述邏輯值內容與期望邏輯值作比較;以及如果所述存儲器單元邏輯值內容不同於所述期望邏輯值的話,則自動地調節編程參數。
2.如權利要求1所述的方法,其特徵在於,所述可編程存儲器單元陣列內的至少一個所述存儲器單元保持與浮置柵極中的自然電荷變化無關的設置邏輯值。
3.如權利要求1所述的方法,其特徵在於,所述容限基準電壓與所述正常存儲器單元讀取電壓相比,相差約+0.5伏。
4.如權利要求1所述的方法,其特徵在於,所述容限基準電壓與所述正常存儲器單元讀取電壓相比,相差約-0.5伏。
5.如權利要求1所述的方法,其特徵在於,當讀取期望處於「OFF」狀態的存儲器單元時,所述容限基準電壓高於所述正常存儲器單元的讀取電壓。
6.如權利要求1所述的方法,其特徵在於,當讀取期望處於「ON」狀態的存儲器單元時,所述容限基準電壓低於所述正常存儲器單元的讀取電壓。
7.如權利要求1所述的方法,其特徵在於,還包括將一經調節的編程脈衝施加於所述可編程存儲器單元陣列內的至少一個存儲器單元。
8.如權利要求1所述的方法,其特徵在於,所述方法是在已經執行了擦除操作之後進行的。
9.如權利要求8所述的方法,其特徵在於,如果所述存儲器單元的邏輯數值內容不同於所述期望邏輯值,則將一經調節編程脈衝施加於所述可編程存儲器單元陣列內的多個存儲器單元。
10.如權利要求8所述的方法,其特徵在於,如果所述存儲器單元邏輯值內容不同於所述期望邏輯值,則一經調節的編程脈衝僅施加於任何具有不同邏輯值內容的存儲器單元。
11.如權利要求8所述的方法,其特徵在於,如果所述存儲器單元邏輯值內容不同於所述期望邏輯值,則鎖存與具有不同邏輯值的所述存儲器單元相關聯的指示器標誌。
12.如權利要求1所述的方法,其特徵在於,所述方法是在已經執行了寫入操作之後進行的。
13.如權利要求12所述的方法,其特徵在於,如果所述存儲器單元邏輯值內容不同於所述期望邏輯值,則將一經調節的編程脈衝施加於所述可編程存儲器單元陣列內的多個存儲器單元。
14.如權利要求12所述的方法,其特徵在於,如果所述存儲器單元邏輯值內容不同於所述期望邏輯值,則一經調節的編程脈衝只施加於任何具有不同邏輯值內容的存儲器單元。
15.如權利要求12所述的方法,其特徵在於,如果所述存儲器單元邏輯值內容不同於所述期望邏輯值,則鎖存與具有不同邏輯值的所述存儲器單元相關聯的指示器標誌。
16.如權利要求1所述的方法,其特徵在於,調節所述編程脈衝參數被定義為增加脈衝的持續時間。
17.一種可編程存儲器電路,包括一存儲器單元陣列,所述諸存儲器單元能夠存儲至少一個邏輯值;一地址電路,它與所述存儲器陣列相耦合,所述地址電路能選擇至少一個存儲器單元;至少一個電壓基準發生器,它與所述存儲器單元陣列相耦合,所述發生器能夠提供一定範圍的多個電壓;多個鎖存器電路,它們與所述存儲器單元陣列相耦合,所述鎖存器電路能夠存儲至少一個期望邏輯值和至少一個狀態鎖存;一讀出電路,它與所述至少一個存儲器單元相耦合;至少一個比較器,它與所述讀出電路相耦合;以及,一定序器,它確定所述地址電路所使用的地址值,所述定序器被配置成定義一容限基準電壓。
18.如權利要求17所述的可編程存儲器,其特徵在於,所述定序器是被配置成監視輸入狀態並響應於所述輸入狀態產生輸出狀態的狀態機。
19.如權利要求17所述的可編程存儲器,其特徵在於,所述定序器是被配置成執行多個指令的處理器。
全文摘要
一種用於EEPROM(如圖2所示)的自適應可編程電路(150、160、173、170、175、154、103)可用於自動調諧擦除或者寫入延遲,從而提供經改進的編程窗口。該編程電路也可在經編程存儲器單元的數據保持方面提供改進。本發明特別適用於能夠進行頁面模式寫入操作的EEPROM存儲器領域。
文檔編號G11C16/34GK101040344SQ200580035314
公開日2007年9月19日 申請日期2005年7月11日 優先權日2004年8月17日
發明者M·柯姆比, J·-M·答加 申請人:愛特梅爾股份有限公司