TWI856568B - 用於對記憶體裝置進行再新的積體電路及方法 - Google Patents
用於對記憶體裝置進行再新的積體電路及方法 Download PDFInfo
- Publication number
- TWI856568B TWI856568B TW112110222A TW112110222A TWI856568B TW I856568 B TWI856568 B TW I856568B TW 112110222 A TW112110222 A TW 112110222A TW 112110222 A TW112110222 A TW 112110222A TW I856568 B TWI856568 B TW I856568B
- Authority
- TW
- Taiwan
- Prior art keywords
- bit
- bit value
- read
- data
- stored
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 79
- 230000003068 static effect Effects 0.000 claims description 5
- 230000008569 process Effects 0.000 description 26
- 238000010586 diagram Methods 0.000 description 16
- 230000000295 complement effect Effects 0.000 description 12
- 239000003990 capacitor Substances 0.000 description 5
- 230000005669 field effect Effects 0.000 description 4
- 239000011159 matrix material Substances 0.000 description 4
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 101000827703 Homo sapiens Polyphosphoinositide phosphatase Proteins 0.000 description 1
- 102100023591 Polyphosphoinositide phosphatase Human genes 0.000 description 1
- 101100233916 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) KAR5 gene Proteins 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Abstract
一種積體電路包括字元線陣列及被配置成自字元線陣列接收選擇訊號的記憶胞陣列。記憶胞陣列中的每一記憶胞連接至一組資料線中的一或多條資料線。所述積體電路亦包括讀取-寫入驅動器,讀取-寫入驅動器連接至所述一組資料線且被配置成接收翻轉-再新控制訊號。讀取-寫入驅動器具有捕獲電路,捕獲電路被配置成儲存與被選擇的記憶胞中的所儲存位元值相關的第一位元值。讀取-寫入驅動器被配置成將第二位元值儲存至被選擇的記憶胞中,第二位元值是所儲存位元值的位元反相型式。
Description
本揭露的實施例是有關於一種用於對記憶體裝置進行再新的方法及設備。
由於近期積體電路(integrated circuit,IC)微型化的趨勢,已出現了耗電量少但以更高速度提供更多功能的更小的裝置。微型化過程亦已促使出現了更嚴格的設計及製造規格並帶來了可靠性挑戰。各種電子設計自動化(electronic design automation,EDA)工具能在確保滿足標準胞元佈局設計及製造規格的同時產生、最佳化及驗證積體電路的標準胞元佈局設計。
在一些實施例中,本申請提供一種積體電路。所述一種積體電路包括字元線陣列、第一記憶胞陣列、第一組資料線以及第一讀取-寫入驅動器。第一記憶胞陣列被配置成自所述字元線陣列接收選擇訊號,其中所述第一記憶胞陣列中的每一記憶胞被配置成基於所述選擇訊號而成為被選擇的記憶胞。第一組資料線與所述
第一記憶胞陣列相關聯,其中所述第一記憶胞陣列中的每一記憶胞連接至所述第一組資料線中的一或多條資料線。第一讀取-寫入驅動器連接至所述第一組資料線且被配置成接收翻轉-再新控制訊號,其中所述第一讀取-寫入驅動器具有捕獲電路,所述捕獲電路被配置成儲存與所述被選擇的記憶胞中的所儲存位元值相關的第一位元值,且其中所述第一讀取-寫入驅動器被配置成基於所述第一位元值經由所述第一組資料線將第二位元值儲存至所述被選擇的記憶胞中,其中所述第二位元值是所述所儲存位元值的位元反相型式。
在其他實施例中,本申請提供一種對記憶體裝置進行再新的方法。所述方法包括:將資料字元及指示位元儲存於記憶體裝置的位元胞陣列中,其中儲存所述資料字元及所述指示位元包括:將所述資料字元中的每一位元值儲存至資料位元胞中作為所儲存資料位元值;以及將所述指示位元的指示位元值儲存至指示位元胞中作為所儲存指示位元值;以及,重複地對所述位元胞陣列進行再新,其中對所述位元胞陣列進行再新包括:自所述資料位元胞讀取所述所儲存資料位元值作為讀出資料位元值,自所述指示位元胞讀取所述所儲存指示位元值作為讀出指示位元值,將所述讀出資料位元值的位元反相型式儲存至所述資料位元胞中作為所述所儲存資料位元值,以及,將所述讀出指示位元值的位元反相型式儲存至所述指示位元胞中作為所述所儲存指示位元值。
在又一些其他實施例中,本申請提供一種儲存資料的方
法。所述方法包括:基於錯誤校正碼(ECC)演算法自原始資料產生擴充錯誤校正碼字元;將所述擴充錯誤校正碼字元儲存至位元胞中作為所儲存位元值;以及,藉由修改所述位元胞中的每一者中的所述所儲存位元值,在預定時間之後對所述位元胞進行再新,其中修改所述位元胞中的所述所儲存位元值包括,讀取所述位元胞中的所述所儲存位元值作為第一位元值,以及,將第二位元值儲存至所述位元胞中作為所述所儲存位元值,其中所述第二位元值是所述第一位元值的位元反相型式。
1C11、1C12、1C13、1C14、1C21、1C22、1C23、1C24、1C31、1C32、1C33、1C34、1C41、1C42、1C43、1C44、5C11、5C12、5C13、5C14、5C21、5C22、5C23、5C24、5C31、5C32、5C33、
5C34、5C41、5C42、5C43、5C44:記憶胞
100、400、500、600:記憶體電路
110:列位址解碼器
141、142、143、144、541、542、543、544:讀取-寫入驅動器
152:讀取-寫入控制線
155:翻轉-再新線
158:預充電控制線
190:及(AND)閘
210、510:感測放大器
215、225、235:控制端子
219:輸出
220:寫入驅動器
221、231、232、D:輸入
230:寫入多工器
240:D-鎖存器
250:輸出多工器
255:選擇輸入
260、520A、520B:反相器
581、582、583、584:預充電電路
700、800:方法
710、720、752、754、762、764、810、820、830、840、850:操作
910A、910B、920A、920B、930A、930B:過程
BL1、BL2、BL3、BL4:位元線
BLB1、BLB2、BLB3、BLB4:反相位元線
Din:資料-輸入端子
DL1、DL2、DL3、DL4:資料線
Dout:資料-輸出端子/輸出端子
EN:賦能端子
FRefresh:翻轉-再新控制訊號
IB_Bit_Out:位元值
IB_EN:賦能訊號
PRECHARGE:預充電訊號
T1、T1+t1、T1+t2、T1+t3、T1+t4、T1f、T2、T2+t1、T2+t2、T2+t3、T2+t4、T2f、T3、T3+t1、T3+t2、T3+t3、T3+t4、T3f、T4、T4+t1、T4+t2、T4+t3、T4+t4、T4f:時間
T1n、T2n:n型場效電晶體(NFET)
T1p、T2p:p型場效電晶體(PFET)
WL1、WL2、WL3、WL4:字元線
結合附圖閱讀以下詳細說明,會最佳地理解本揭露的各態樣。應注意,根據行業中的標準慣例,各種特徵並非按比例繪製。事實上,為論述清晰起見,可任意增大或減小各種特徵的尺寸。
圖1A至圖1B是根據一些實施例的記憶體電路的電路圖。
圖2A至圖2C是根據一些實施例的施加至記憶體電路100的各種控制訊號的時序圖。
圖3是根據一些實施例的各種再新循環處的多位元字元及指示位元的所儲存位元值的示意圖。
圖4是根據一些實施例的具有被配置成基於指示位元實行位元反相的讀取-寫入驅動器的記憶體電路的電路圖。
圖5A至圖5B是根據一些實施例的具有靜態隨機存取記憶體(SRAM)記憶胞的記憶體電路的電路圖。
圖6是根據一些實施例的具有SRAM記憶胞且被配置成基於指示位元實行位元反相的記憶體電路的電路圖。
圖7是根據一些實施例的在記憶體裝置中儲存資料字元的方法700的流程圖。
圖8是根據一些實施例的涉及錯誤校正碼(「ECC」)演算法的儲存資料的方法的流程圖。
圖9A至圖9B是根據一些實施例的在圖8中的方法的操作期間所選擇的過程的示意圖。
以下揭露內容提供用於實施所提供標的物的不同特徵的諸多不同實施例或實例。以下闡述組件、值、操作、材料、佈置或類似要素的具體實例以簡化本揭露。當然,該些僅為實例且不旨在進行限制。預期存在其他組件、值、操作、材料、佈置或類似要素。舉例而言,以下說明中將第一特徵形成於第二特徵「之上」或第二特徵「上」可包括其中第一特徵與第二特徵被形成為直接接觸的實施例,且亦可包括其中第一特徵與第二特徵之間可形成有附加特徵、進而使得所述第一特徵與所述第二特徵可能不直接接觸的實施例。另外,本揭露可能在各種實例中重複使用參考編號及/或字母。此種重複使用是出於簡潔及清晰的目的,而不是自身表示所論述的各種實施例及/或配置之間的關係。
此外,為易於說明,本文中可能使用例如「位於...之下(beneath)」、「下面(below)」、「下部的(lower)」、「上方(above)」、
「上部的(upper)」及類似用語等空間相對性用語來闡述圖中所示一個元件或特徵與另一(其他)元件或特徵的關係。所述空間相對性用語旨在除圖中所繪示的定向外亦囊括裝置在使用或操作中的不同定向。設備可具有其他定向(旋轉90度或處於其他定向)且本文中所使用的空間相對性描述語可同樣相應地進行解釋。
在一些實施例中,資料字元及指示位元儲存於記憶體裝置的位元胞陣列中。具體而言,資料字元中的每一位元值儲存至資料位元胞中作為所儲存資料位元值,且指示位元的指示位元值儲存至指示位元胞中作為所儲存指示位元值。利用位元反相重複地對位元胞陣列進行再新。當對位元胞陣列進行再新時,讀取每一資料位元胞中的所儲存資料位元值作為讀出資料位元值,且將讀出資料位元值的位元反相型式再次儲存至資料位元胞中作為新的所儲存資料位元值。另外,讀取來自指示位元胞的所儲存指示位元值作為讀出指示位元值,且將讀出指示位元值的位元反相型式再次儲存至指示位元胞中作為新的所儲存指示位元值。
在一些實施例中,當指示位元與資料位元一起儲存於資料字元中時,若利用位元反相一起對指示位元與資料位元進行再新,則可基於對應的資料位元的所儲存位元值及指示位元的所儲存位元值來恢復每一資料位元的原始位元值。
在一些實施例中,當利用位元反相來對位元胞陣列進行再新時,相較於其中位元胞陣列未進行再新或僅進行再新而未進行位元反相的替代實施方式而言,在位元胞陣列中的每一位元胞
中所誘發(induced)的應力(stress)減小。所述應力是由於位元胞中的所儲存位元值的不斷反相而誘發的。對於一些位元胞而言,若位元胞中的所儲存位元值長時間維持於一個恆定值,則電性性質(例如,位元胞中的電晶體的臨限值)可能會改變,此可能導致可靠性降低及/或導致保持錯誤(retention error)增加。
圖1A至圖1B是根據一些實施例的記憶體電路100的電路圖。記憶體電路100包括以具有M列及N行的矩陣排列的記憶胞(例如,1C11、1C22、…、及1C44)。儘管圖1A至圖1B中的記憶胞以4×4矩陣進行排列,但選擇列數M=4及N=4僅作為實例。除M=4之外的列數亦處於本揭露的預期範圍內。除N=4之外的行數亦處於本揭露的預期範圍內。此外,若記憶體電路100中的行數大於4(即,N>4),則記憶體電路100包括圖中未明確示出的附加行的記憶胞。
圖1A至圖1B中的記憶胞排列成四列記憶胞。第一列記憶胞包括記憶胞1C11至1C14,第二列記憶胞包括記憶胞1C21至1C24,第三列記憶胞包括記憶胞1C31至1C34,且第四列記憶胞包括記憶胞1C41至1C44。記憶體電路100具有包括字元線WL1、WL2、WL3及WL4的字元線陣列。第一列中的記憶胞1C11至1C14中的每一者連接至字元線WL1。第二列中的記憶胞1C21至1C24中的每一者連接至字元線WL2。第三列中的記憶胞1C31至1C34中的每一者連接至字元線WL3。第四列中的記憶胞1C41至1C44中的每一者連接至字元線WL4。在圖1A至圖1B中,記憶
胞中的每一者是具有一個電晶體及一個儲存電容器的動態隨機存取記憶胞。
記憶體電路100亦具有包括資料線DL1、DL2、DL3及DL4的資料線陣列。第一行中的記憶胞1C11至1C41中的每一者連接至資料線DL1。第二行中的記憶胞1C12至1C42中的每一者連接至資料線DL2。第三行中的記憶胞1C13至1C43中的每一者連接至資料線DL3。第四行中的記憶胞1C14至1C44中的每一者連接至資料線DL4。資料線DL1、DL2、DL3及DL4中的每一者對應地由讀取-寫入驅動器141、142、143及144中的一者驅動。讀取-寫入驅動器中的每一者具有資料-輸入端子Din及資料-輸出端子Dout。當讀取-寫入驅動器處於寫入模式時,資料線DL1、DL2、DL3及DL4對應地自讀取-寫入驅動器141、142、143及144中的一者中的資料-輸入端子Din接收輸入位元值。當讀取-寫入驅動器處於讀取模式時,資料線DL1、DL2、DL3及DL4中的每一者中的輸出位元值被對應地傳輸至讀取-寫入驅動器141、142、143及144中的一者中的資料-輸出端子Dout。
讀取-寫入驅動器中的每一者亦具有連接至讀取-寫入控制線152的讀取-寫入控制端子及連接至翻轉-再新(flip-refresh)線155的翻轉-再新控制端子。當讀取-寫入控制線152上的控制訊號R/被設定為第一邏輯位準(例如,邏輯高(logic HIGH))時,讀取-寫入驅動器141、142、143及144中的每一者被設定為讀取模式。當讀取-寫入控制線152被設定為第二邏輯位準(例如,邏
輯低(logic LOW))時,讀取-寫入驅動器141、142、143及144中的每一者被設定為寫入模式。翻轉-再新線155上的翻轉-再新控制訊號FRefresh的邏輯位準對記憶體電路100中的記憶胞的翻轉再新過程進行控制。在一些實施例中,當選擇記憶胞並使其經歷翻轉再新過程時,讀出被選擇的記憶胞中的所儲存位元值作為讀出位元值,且將讀出位元值的位元反相型式寫回至被選擇的記憶胞。圖1B中示出可操作以實行翻轉再新操作的讀取-寫入驅動器的實例性實施方式。
在圖1A至圖1B中,記憶體電路100包括耦合至字元線WL1、WL2、WL3及WL4的列位址解碼器110。在操作中,當列位址解碼器110接收到列位址碼並對列位址碼進行解碼時,選擇被選擇的字元線(由列位址碼指定)。在圖1A的實例中,由列位址解碼器110接收到的列位址碼是用於指定所述四條字元線中的一者的二位元碼。當列位址解碼器110選擇被選擇的字元線時,在被選擇的字元線上產生字元線選擇訊號且在未被選擇的字元線中的每一者上產生字元線棄選訊號(word line deselection signal)。在圖1A至圖1B中,當選擇被選擇的字元線時,選擇連接至被選擇的字元線的記憶胞中的每一者進行讀取操作、寫入操作或翻轉再新操作。
作為實例,若選擇字元線WL2,則在字元線WL2上產生字元線選擇訊號,且在未被選擇的字元線WL1、WL3及WL4中的每一者上產生字元線棄選訊號。字元線WL2上的字元線選擇訊
號使第二列中的記憶胞1C21至1C24中的每一者中的電晶體導通,而未被選擇的字元線WL1、WL3及WL4上的字元線棄選訊號使所有其他列(第二列除外)中的記憶胞中的每一者中的電晶體關斷。當第二列中的記憶胞1C21至1C24中的每一者中的電晶體導通時,記憶胞1C21、1C22、1C23及1C24中的每一者中的儲存電容器對應地連接至資料線DL1、DL2、DL3及DL4中的一者,且記憶胞1C21至1C24中的每一者準備好藉由讀取-寫入驅動器進行讀取操作、寫入操作或翻轉再新操作。具體而言,在儲存電容器連接至資料線之後,若對應的讀取-寫入驅動器處於讀取模式,則對應的讀取-寫入驅動器經由資料線DL1至DL4中的一者讀取被選擇的記憶胞1C21至1C24中的每一者中的所儲存位元值作為對應的資料-輸出端子Dout處的輸出位元值。作為另外一種選擇,當對應的讀取-寫入驅動器處於寫入模式時,對應的讀取-寫入驅動器經由資料線DL1至DL4中的一者將資料-輸入端子Din處的輸入位元值寫入至被選擇的記憶胞1C21至1C24中的每一者中作為所儲存位元值。在記憶體電路100中,記憶胞中的所儲存位元值由記憶胞中的儲存電容器兩端的電壓表示。
相似於讀取操作及寫入操作,當對應的讀取-寫入驅動器處於翻轉再新操作模式時,對應的讀取-寫入驅動器亦經由資料線DL1至DL4中的一者對被選擇的記憶胞1C21至1C24中的每一者實行翻轉再新操作,但翻轉再新操作將在稍後參照圖1B及圖2C更詳細地進行闡釋。
在一些實施例中,依次選擇字元線WL1、WL2、WL3及WL4中的每一者作為被選擇的字元線。在一些實施例中,當藉由讀取-寫入控制線152上的控制訊號R/將讀取-寫入驅動器141、142、143及144中的每一者設定為讀取模式時,隨著字元線WL1、WL2、WL3及WL4中的每一者依次成為被選擇的字元線,讀取-寫入驅動器逐列讀出記憶體電路100中的記憶胞中的所儲存位元值。具體而言,當字元線中的每一者成為被選擇的字元線時,在對第一列中的記憶胞1C11至1C14進行讀取操作之後對第二列中的記憶胞1C21至1C24進行讀取操作,隨後對第三列中的記憶胞1C31至1C34進行讀取操作,且再隨後對第四列中的記憶胞1C41至1C44進行讀取操作。
在一些實施例中,當藉由讀取-寫入控制線152上的控制訊號R/將讀取-寫入驅動器141、142、143及144中的每一者設定為寫入模式時,隨著字元線WL1、WL2、WL3及WL4中的每一者依次成為被選擇的字元線,讀取-寫入驅動器將輸入位元值逐列寫入至被選擇的記憶胞中。具體而言,當字元線中的每一者成為被選擇的字元線時,在對第一列中的記憶胞1C11至1C14進行寫入操作之後對第二列中的記憶胞1C21至1C24進行寫入操作,隨後對第三列中的記憶胞1C31至1C34進行寫入操作,且再隨後對第四列中的記憶胞1C41至1C44進行寫入操作。
在一些實施例中,當藉由翻轉-再新線155上的翻轉-再新控制訊號FRefresh將記憶體電路100設定為翻轉再新模式時,使
用翻轉的位元值對一列中的被選擇的記憶胞(其全部連接至被選擇的字元線)中的每一者中的所儲存位元值進行再新。在對被選擇的記憶胞中的所儲存位元值進行翻轉-再新的過程中,對應的讀取-寫入驅動器自被選擇的記憶胞讀取所儲存資料位元值作為讀出位元值,然後,對應的讀取-寫入驅動器將讀出位元值的位元反相型式寫回至被選擇的記憶胞中作為所儲存位元值(其現在已進行更新)。
在一些實施例中,當記憶體電路100被設定為翻轉再新模式時,隨著字元線WL1、WL2、WL3及WL4中的每一者依次成為被選擇的字元線,讀取-寫入驅動器對所選擇的列中的被選擇的記憶胞逐列進行翻轉-再新。具體而言,當字元線中的每一者成為被選擇的字元線時,在對第一列中的記憶胞1C11至1C14進行翻轉-再新操作之後對第二列中的記憶胞1C21至1C24進行翻轉-再新操作,隨後對第三列中的記憶胞1C31至1C34進行翻轉-再新操作,且再隨後對第四列中的記憶胞1C41至1C44進行翻轉-再新操作。
在記憶體電路100中,讀取-寫入驅動器141、142、143及144中的每一者被實施為具有對記憶胞提供翻轉-再新操作的功能。圖1B中示出讀取-寫入驅動器的實例性實施方式。
圖1B是根據一些實施例的具有可操作以進行翻轉-再新操作的讀取-寫入驅動器的記憶體電路100的電路圖。在圖1B中,讀取-寫入驅動器142包括感測放大器210、例如D-鎖存器240等
捕獲電路(catch circuit)、寫入多工器230及寫入驅動器220。感測放大器210的輸入及寫入驅動器220的輸出二者連接至資料線DL2。讀取-寫入驅動器142用於對連接至資料線DL2的所述一行記憶胞1C12至1C42實行讀取操作、寫入操作及翻轉-再新操作。捕獲電路被配置成儲存與感測放大器210的輸出處的位元值相關的高速緩衝位元值(cached bit value)。
感測放大器210的輸出219連接至D-鎖存器240的輸入D。感測放大器210的輸出亦被實施為讀取-寫入驅動器142的資料-輸出端子Dout。D-鎖存器240的互補輸出(complement output)連接至寫入多工器230的輸入232。讀取-寫入驅動器142的資料-輸入端子Din連接至寫入多工器230的輸入231。寫入多工器230的輸出連接至寫入驅動器220的輸入221。
寫入多工器230的狀態及D-鎖存器240的狀態由翻轉-再新控制訊號FRefresh來控制。寫入多工器230具有被配置成接收翻轉-再新控制訊號FRefresh的控制端子235,且D-鎖存器240具有被配置成接收翻轉-再新控制訊號FRefresh的反相型式的賦能端子EN。感測放大器210具有被配置成接收控制訊號R/的控制端子215,且當控制訊號R/處於邏輯高時,感測放大器210被賦能。寫入驅動器220具有被配置成接收控制訊號R/的控制端子225,且當控制訊號R/處於邏輯低時,寫入驅動器220被賦能。
圖2A至圖2C是根據一些實施例的施加至記憶體電路100的各種控制訊號的時序圖。在圖2A至圖2C中,字元線WL1、
WL2、WL3及WL4中的每一者依次成為被選擇的字元線。當字元線WL1上的字元線選擇訊號在時間T1與時間T1f之間處於邏輯高時,選擇字元線WL1作為被選擇的字元線。隨後,在時間T2與時間T2f之間選擇字元線WL2作為被選擇的字元線,在時間T3與時間T3f之間選擇字元線WL3作為被選擇的字元線,且在時間T4與時間T4f之間選擇字元線WL4作為被選擇的字元線。
在圖2A至圖2B中,翻轉-再新控制訊號FRefresh保持於邏輯低,且讀取-寫入驅動器142的翻轉再新模式被去能。在圖2A中,當控制訊號R/處於邏輯高時讀取-寫入驅動器142被設定為讀取模式,且當控制訊號R/處於邏輯低時讀取-寫入驅動器142被設定為寫入模式。在圖2C中,在翻轉-再新控制訊號FRefresh處於邏輯高時的時間段期間,讀取-寫入驅動器142被設定為翻轉再新模式。
當讀取-寫入驅動器142處於讀取模式或寫入模式時,翻轉-再新控制訊號FRefresh處於邏輯低,D-鎖存器240的互補輸出處的邏輯位準對寫入驅動器220的輸入處的邏輯位準沒有影響,而讀取-寫入驅動器142的資料-輸入端子Din處的邏輯位準被傳輸至寫入驅動器220的輸入。
在寫入模式期間,由於控制訊號R/處於邏輯低,因此寫入驅動器220被賦能且感測放大器210被去能。因此,讀取-寫入驅動器142的資料-輸入端子Din處的邏輯訊號被傳輸至資料線DL2,而讀取-寫入驅動器142的資料-輸出端子Dout被阻止自資
料線DL2接收邏輯訊號。
在讀取模式期間,由於控制訊號R/處於邏輯高,因此寫入驅動器220被去能且感測放大器210被賦能。因此,來自資料線DL2的邏輯訊號被傳輸至讀取-寫入驅動器142的資料-輸出端子Dout,而資料線DL2不會受到資料-輸入端子Din處的邏輯訊號的影響。
在圖2A中,控制訊號R/保持於邏輯高,且讀取-寫入驅動器142維持於讀取模式。當在時間T1與時間T1f之間選擇字元線WL1時,讀取-寫入驅動器142對記憶胞1C12進行讀取。當在時間T2與時間T2f之間選擇字元線WL3時,讀取-寫入驅動器142對記憶胞1C22進行讀取。當在時間T3與時間T3f之間選擇字元線WL3時,讀取-寫入驅動器142對記憶胞1C32進行讀取。當在時間T4與時間T4f之間選擇字元線WL1時,讀取-寫入驅動器142對記憶胞1C42進行讀取。
在圖2B中,當控制訊號R/自邏輯高變為邏輯低時,讀取-寫入驅動器142自讀取模式變為寫入模式。當藉由字元線WL1在時間T1與時間T1f之間選擇記憶胞1C12時,在時間T1+t2與T1+t3之間的時間段期間,將讀取-寫入驅動器142的資料-輸入端子Din處的位元訊號寫入至記憶胞1C12中作為所儲存位元值。當藉由字元線WL2在時間T2與時間T2f之間選擇記憶胞1C22時,在時間T2+t2與T2+t3之間的時間段期間,將讀取-寫入驅動器的資料-輸入端子Din處的位元訊號寫入至記憶胞1C22中作為所儲
存位元值。當藉由字元線WL3在時間T3與時間T3f之間選擇記憶胞1C32時,在時間T3+t2與T3+t3之間的時間段期間,將讀取-寫入驅動器的資料-輸入端子Din處的位元訊號寫入至記憶胞1C32中作為所儲存位元值。當藉由字元線WL4在時間T4與時間T4f之間選擇記憶胞1C42時,在時間T4+t2與T4+t3之間的時間段期間,將讀取-寫入驅動器的資料-輸入端子Din處的位元訊號寫入至記憶胞1C42中作為所儲存位元值。
在圖2C中,在翻轉-再新控制訊號FRefresh處於邏輯高時的時間段期間,將讀取-寫入驅動器142設定為翻轉再新模式。當藉由字元線WL1在時間T1與時間T1f之間選擇記憶胞1C12時,在時間T1+t1與T1+t4之間的時間段期間對記憶胞1C12的所儲存位元值進行翻轉再新。當藉由字元線WL2在時間T2與時間T2f之間選擇記憶胞1C22時,在時間T2+t1與T2+t4之間的時間段期間對記憶胞1C22的所儲存位元值進行翻轉再新。當藉由字元線WL3在時間T3與時間T3f之間選擇記憶胞1C32時,在時間T3+t1與T3+t4之間的時間段期間對記憶胞1C32的所儲存位元值進行翻轉再新。當藉由字元線WL4在時間T4與時間T4f之間選擇記憶胞1C42時,在時間T4+t1與T4+t4之間的時間段期間對記憶胞1C42的所儲存位元值進行翻轉再新。
在對記憶胞的所儲存位元值進行翻轉再新的過程期間,自記憶胞讀取所儲存資料位元值作為讀出位元值,並將讀出位元值的位元反相型式寫回至被選擇的記憶胞中。在下文中,作為實
例,將更詳細地闡述對記憶胞1C22進行的翻轉再新操作。
如圖2C所示,在時間T2與時間T2f之間的時間段期間選擇記憶胞1C22,且在時間T2+t1與時間T2+t4之間使記憶胞1C22經歷翻轉再新操作。
在時間T2與時間T2+t1之間的時間段期間,記憶胞1C22在時間T2與時間T2+t1之間處於讀取模式,乃因翻轉-再新控制訊號FRefresh處於邏輯低且控制訊號R/處於邏輯高。記憶胞1C22的所儲存位元值在感測放大器210的輸出219處被讀出作為讀出位元值,且輸出219處的讀出位元值耦合至D-鎖存器240的輸入D。D-鎖存器240的互補輸出處的邏輯值隨著感測放大器210的輸出219處的讀出位元值而變化,乃因耦合至D-鎖存器240的賦能輸入的翻轉-再新控制訊號FRefresh的互補訊號處於邏輯高。然而,D-鎖存器240的互補輸出藉由寫入多工器230自寫入驅動器220的輸入221解耦,乃因耦合至寫入多工器230的控制端子235的翻轉-再新控制訊號FRefresh處於邏輯低。
在時間T2+t1處,翻轉-再新控制訊號FRefresh自邏輯低變為邏輯高,且記憶胞1C22變為翻轉再新模式。在時間T2+t1處,控制訊號R/仍然處於邏輯高,且記憶胞1C22的所儲存位元值仍然在感測放大器210的輸出219處被讀出作為讀出位元值。當翻轉-再新控制訊號FRefresh的互補訊號(其耦合至D-鎖存器240的賦能輸入)變為邏輯低時,D-鎖存器240對感測放大器210的輸出219處的讀出位元值進行高速緩衝。D-鎖存器240的互補輸出
處的邏輯值維持於一邏輯值,所述邏輯值是在時間T2+t1處輸出219處的讀出位元值的位元反相型式。當翻轉-再新控制訊號FRefresh維持於邏輯高時,D-鎖存器240的互補輸出處所維持的邏輯值自時間T2+t1至時間T2+t4保持不變。此外,在時間T2+t1至時間T2+t4之間,D-鎖存器240的互補輸出處所維持的邏輯值經由寫入多工器230傳輸至寫入驅動器220的輸入221,同時資料-輸入端子Din藉由寫入多工器230自寫入驅動器220的輸入221解耦。亦即,在時間T2+t1至時間T2+t4之間的時間段期間,輸出219處的讀出位元值的位元反相型式被傳輸至寫入驅動器220的輸入221。換言之,在時間T2+t1處進行高速緩衝的記憶胞1C22的所儲存位元值的位元反相型式被傳輸至寫入驅動器220的輸入221。
在時間T2+t2處,當控制訊號R/自邏輯高變為邏輯低時,寫入驅動器220被賦能且感測放大器210被去能。在時間T2+t2與時間T2+t3之間的時間段期間,D-鎖存器240的互補輸出處所維持的邏輯值被傳輸至資料線DL2。時間T2+t3處的記憶胞1C22的所儲存位元值是在時間T2+t1處進行高速緩衝的記憶胞1C22的所儲存位元值的位元反相型式。亦即,記憶胞1C22的所儲存位元值已進行了翻轉。
然後,在時間T2+t4處,當翻轉-再新控制訊號FRefresh自邏輯高變為邏輯低時,讀取-寫入驅動器142返回至讀取模式,且記憶胞1C22的所儲存位元值保持不變。此後,在時間T2f處,
當字元線WL2上的字元線選擇訊號自邏輯高變為邏輯低時,記憶胞1C22中的電晶體關斷且記憶胞1C22中的儲存電容器自資料線DL2解耦(decouple)。在時間T2f之後,棄選(deselect)
記憶胞1C22,乃因字元線WL2上的字元線選擇訊號保持於邏輯低。
在圖2C中,在藉由字元線WL2在時間T2與時間T2f之間選擇記憶胞1C12進行翻轉再新操作之後,藉由字元線WL3在時間T3與時間T3f之間選擇記憶胞1C32進行翻轉再新操作,且然後藉由字元線WL4在時間T4與時間T4f之間選擇記憶胞1C42進行翻轉再新操作。在一些實施例中,在選擇最後一列中的記憶胞(例如,記憶胞1C42)進行翻轉再新操作之後,然後再次選擇第一列中的記憶胞(例如,記憶胞1C12)進行另一翻轉再新操作,隨後選擇第二列中的記憶胞(例如,記憶胞1C22)。
翻轉再新操作的選擇過程逐列繼續進行。在選擇最後一列之後,所述過程自第一列開始重複進行。隨著選擇過程的繼續及重複,重複地選擇給定列中(感興趣的特定行處)的記憶胞進行翻轉再新操作。在一些實施例中,對給定列中的記憶胞進行的兩次連續選擇之間的時間間隔是恆定的延遲,且因此週期性地選擇給定列中的記憶胞進行翻轉再新操作。在一些替代實施例中,對給定列中的記憶胞進行的兩次連續選擇之間的時間間隔不是恆定的延遲。
在一些實施例中,欲儲存於記憶體裝置中的資料是具有多個位元的字元。在一些實施例中,多位元字元(multiple-bit word)
以指示位元進行擴充,且多位元字元與指示位元一起儲存於記憶體裝置中。在一些實施例中,多位元字元中的所述多個位元及指示位元全部儲存於同一列的記憶胞中。
圖3是根據一些實施例的各種再新循環處的多位元字元及指示位元的所儲存位元值的示意圖。圖3中的實例性多位元字元具有八個位元。所述八個位元中的每一者儲存於同一列中的記憶胞中。舉例而言,所述八個位元對應地儲存於同一列的第一行至第八行中的記憶胞中。指示位元儲存於第九行中。在圖3的實例中,以指示位元進行擴充的多位元字元的所述八個位元最初以101010101的形式儲存於記憶體裝置中。亦即,在記憶體裝置經曆翻轉再新操作之前,儲存於第一行至第八行的記憶胞中的多位元字元具有位元型樣(bit pattern)10101010,且儲存於第九行的記憶胞中的指示位元具有位元值1。
在第一翻轉再新操作之後,第一行至第八行的記憶胞中的所儲存位元值具有位元型樣01010101,且第九行的記憶胞中的所儲存位元值具有位元值0。在第二翻轉再新操作之後,第一行至第八行的記憶胞中的所儲存位元值具有位元型樣10101010,且第九行的記憶胞中的所儲存位元值具有位元值1。
在多位元字元儲存於記憶體裝置中之後,但在邏輯裝置(例如微處理器或其他種類的邏輯電路)將記憶體裝置中的所儲存位元值讀回之前,記憶體裝置可能經曆各種次數的翻轉再新操作或者可能不經曆翻轉再新操作。與多位元字元一起儲存的指示
位元使邏輯裝置能夠恢復原始的多位元字元,而無需知曉已經對記憶體裝置實行的翻轉再新操作的次數。
舉例而言,在圖3的實例中,若第九行的記憶胞中的所儲存位元值具有位元值1,則在自第一行至第八行的行範圍內的記憶胞中的所儲存位元值(其具有位元型樣10101010)是已儲存於記憶體裝置中的原始多位元字元中的所述八個位元的位元值。另一方面,若第九行的記憶胞中的所儲存位元值具有位元值0,則第一行至第八行的記憶胞中的所儲存位元值(其具有位元型樣01010101)是已儲存於記憶體裝置中的原始多位元字元中的所述八個位元的逐位元補碼值(bit-wise complement value)。當讀出第一行至第八行的記憶胞中的所儲存位元值作為讀出位元值時,對讀出位元值中的每一者進行反相以獲得已儲存於記憶體裝置中的原始多位元字元。
在圖3的實例中,多位元字元的所述八個位元儲存於在自第一行至第八行的行範圍內的記憶胞中,且指示位元儲存於第九行中的記憶胞中。在一些替代實施例中,指示位元儲存於不同於第九行的另一行中的記憶胞中。舉例而言,在一些實施例中,指示位元儲存於第一行中的記憶胞中,而多位元字元的所述八個位元儲存於在自第二行至第九行的行範圍內的記憶胞中。作為另一實例,在一些實施例中,指示位元儲存於第四行中的記憶胞中,而多位元字元的前三個位元儲存於在自第一行至第三行的行範圍內的記憶胞中,且多位元字元的其他五個位元儲存於在自第五行至第
九行的行範圍內的記憶胞中。
在一些實施例中,使用如圖1A所示的讀取-寫入驅動器讀出記憶胞中的所儲存位元值作為讀出位元值,同時讀取-寫入驅動器中的每一者被實施為相似於圖1B中的讀取-寫入驅動器142。接收讀出位元值的邏輯裝置首先確定具有指示位元的記憶胞中的所儲存位元值,且然後基於指示位元的所儲存位元值恢復多位元字元中的每一位元的位元值。在一些實施例中,若指示位元的所儲存位元值是位元值1,則多位元字元中的每一位元的位元值被確定為與自對應的記憶胞讀出的讀出位元值相同。若指示位元的所儲存位元值是位元值0,則多位元字元中的每一位元的位元值被確定為自對應的記憶胞讀出的讀出位元值的位元反相型式。在一些實施例中,讀出位元值的位元反相由邏輯裝置實行。在一些替代實施例中,讀出位元值的位元反相由記憶體電路100中的讀取-寫入驅動器實行。
圖4是根據一些實施例的具有被配置成基於指示位元的位元值對讀出位元值實行位元反相的讀取-寫入驅動器的記憶體電路400的電路圖。記憶體電路400是自圖1A至圖1B中的記憶體電路100進行修改而得到。具體而言,讀取-寫入驅動器中的每一者被修改成能夠基於指示位元的位元值對輸出訊號進行位元翻轉。舉例而言,讀取-寫入驅動器142被修改成包括輸出多工器250及反相器260。感測放大器210的輸出219連接至輸出多工器250的第一輸入。感測放大器210的輸出219亦連接至反相器260的
輸入,且反相器260的輸出連接至輸出多工器250的第二輸入。輸出多工器250的輸出提供資料-輸出端子Dout。
輸出多工器250具有被配置成接收翻轉_輸出(Flip_Output)控制訊號的選擇輸入255。若Flip_Output控制訊號處於第一邏輯位準(例如,邏輯高),則資料-輸出端子Dout處的位元值等於感測放大器210的輸出219處的位元值。另一方面,若Flip_Output控制訊號處於第二邏輯位準(例如,邏輯低),則資料-輸出端子Dout處的位元值等於感測放大器210的輸出219處的位元值的位元反相型式。在一些實施例中,Flip_Output控制訊號由儲存於記憶體電路400中的指示位元的位元值與原始多位元字元一起提供。
在一些實施例中,多位元字元形式的資料以指示位元進行擴充以形成擴充的資料字元,且擴充的資料字元儲存於記憶體電路400中的同一列的記憶胞中。在一些實施例中,指示位元儲存於記憶體電路400中的第四行中。讀取-寫入驅動器144將指示位元儲存至第四行中的記憶胞中作為指示位元的所儲存位元值。讀取-寫入驅動器144在讀取-寫入驅動器144的資料-輸出端子Dout處讀出指示位元的所儲存位元值作為位元值IB_Bit_Out。在一些實施例中,讀取-寫入驅動器144中的選擇輸入255被設定為使得資料-輸出端子Dout處的位元值IB_Bit_Out等於指示位元的所儲存位元值的邏輯位準。位元值IB_Bit_Out耦合至及(AND)閘190的第一輸入。當AND閘190的第二輸入處的賦能訊號IB_EN
處於邏輯高時,位元值IB_Bit_Out(即,指示位元的所儲存位元值)被傳輸至AND閘190的輸出作為Flip_Output控制訊號,Flip_Output控制訊號耦合至讀取-寫入驅動器142中的輸出多工器250的選擇輸入255以對第二行中的記憶胞1C12至1C42進行驅動。
在一些實施例中,若AND閘190的第一輸入處的指示位元的所儲存位元值(即,IB_Bit_Out)是位元值1,則讀取-寫入驅動器142的資料-輸出端子Dout處的輸出位元值等於第二行中的讀取-寫入驅動器142中的感測放大器210的輸出219處的讀出位元值。若AND閘190的第一輸入處的指示位元的所儲存位元值(即,IB_Bit_Out)是位元值0,則讀取-寫入驅動器142的資料-輸出端子Dout處的輸出位元值等於第二行中的讀取-寫入驅動器142中的感測放大器210的輸出219處的讀出位元值的位元反相型式。
當來自讀取-寫入驅動器144的資料-輸出端子Dout的指示位元的所儲存位元值(即,IB_Bit_Out)耦合至讀取-寫入驅動器(例如,141、142及143)中的每一者時,每一讀取-寫入驅動器的資料-輸出端子Dout處的輸出位元值自動進行校正以進行位元反相。由讀取-寫入驅動器提供的輸出位元值是已儲存於記憶胞中的原始多位元字元的經校正位元值,而不論已經對記憶體裝置實行的翻轉再新操作的次數如何。
在如圖1A至圖1B及圖4所示的實施例中,記憶體電路
中的記憶胞是動態隨機存取記憶胞(即,DRAM(dynamic random access memory)記憶胞)。在其他實施例中,記憶體電路中的記憶胞是靜態隨機存取記憶胞(即,SRAM(static random access memory cell)記憶胞)。
圖5A至圖5B及圖6是根據一些實施例的具有SRAM記憶胞的記憶體電路的電路圖。圖5A至圖5B中的記憶體電路500是自圖1A至圖1B中的記憶體電路100進行修改而得到。圖6中的記憶體電路600是自圖4中的記憶體電路400進行修改而得到。圖1A至圖1B及圖4中的記憶胞矩陣中的記憶胞(例如,1C11、1C22、…、及1C44)中的每一者是DRAM記憶胞,而圖5A至圖5B及圖6中的記憶胞矩陣中的記憶胞(例如,5C11、5C22、…、及5C44)中的每一者是SRAM記憶胞。
儘管圖1A至圖1B及圖4中的每一行的DRAM記憶胞連接至資料線(例如,DL1、DL2、DL3或DL4),但圖5A至圖5B及圖6中的每一行的SRAM記憶胞與一組兩條資料線相關聯。所述一組兩條資料線包括被辨識為位元線的第一資料線及被辨識為反相位元線(bit line bar)的第二資料線。反相位元線攜帶作為位元線上的邏輯訊號的邏輯互補訊號的邏輯訊號。
在圖5A至圖5B及圖6中,第一行中的記憶胞5C11至5C41中的每一者連接至位元線BL1及反相位元線BLB1,而位元線BL1及反相位元線BLB1連接至讀取-寫入驅動器541及預充電電路581。第二行中的記憶胞5C12至5C42中的每一者連接至位
元線BL2及反相位元線BLB2,而位元線BL2及反相位元線BLB2連接至讀取-寫入驅動器542及預充電電路582。第三行中的記憶胞5C13至5C43中的每一者連接至位元線BL3及反相位元線BLB3,而位元線BL3及反相位元線BLB3連接至讀取-寫入驅動器543及預充電電路583。第四行中的記憶胞5C14至5C44中的每一者連接至位元線BL4及反相位元線BLB4,而位元線BL4及反相位元線BLB4連接至讀取-寫入驅動器544及預充電電路584。預充電電路581、582、583及584未在圖6中明確示出。預充電電路581、582、583及584中的每一者被配置成自預充電控制線158接收預充電(PRECHARGE)訊號。
圖5A至圖5B及圖6中的讀取-寫入驅動器541、542、543及544中的每一者是自圖1A至圖1B及圖4中的對應的讀取-寫入驅動器進行修改而得到。舉例而言,圖5B中的讀取-寫入驅動器542是自圖1B中的讀取-寫入驅動器142進行修改而得到,且圖6中的讀取-寫入驅動器542是自圖4中的讀取-寫入驅動器142進行修改而得到。在圖5B中,感測放大器510與兩個n型場效電晶體(n-type field effect transistor,NFET)(T1n及T2n)的組合代替了圖1B中的感測放大器210,而兩個反相器(520A及520B)與兩個p型場效電晶體(p-type field effect transistor,PFET)(T1p及T2p)的組合代替了圖1B中的寫入驅動器220。在圖6中,感測放大器510與兩個NFET(T1n及T2n)的組合代替了圖4中的感測放大器210,而兩個反相器(520A及520B)與兩個PFET
(T1p及T2p)的組合代替了圖4中的寫入驅動器220。
在圖5B及圖6中,所述兩個NFET(T1n及T2n)的閘極端子及所述兩個PFET(T1p及T2p)的閘極端子全部連接於一起且被配置成接收控制訊號R/。當控制訊號R/處於邏輯低時,所述兩個NFET(T1n及T2n)關斷,而所述兩個PFET(T1p及T2p)導通。因此,讀取-寫入驅動器542中的感測放大器510的所述兩個輸入自位元線BL2及反相位元線BLB2解耦,而位元線BL2及反相位元線BLB2對應地連接至所述兩個反相器520A及520B的輸出。亦即,當控制訊號R/處於邏輯低時,對所述兩個反相器520A及520B賦能以將邏輯訊號寫入至位元線BL2及反相位元線BLB2,而對感測放大器510去能以使其無法讀取位元線BL2及反相位元線BLB2上的邏輯訊號。
另一方面,當控制訊號R/處於邏輯高時,所述兩個NFET(T1n及T2n)導通,而所述兩個PFET(T1p及T2p)關斷。因此,讀取-寫入驅動器542中的感測放大器510的所述兩個輸入對應地連接至位元線BL2及反相位元線BLB2,而位元線BL2及反相位元線BLB2自所述兩個反相器520A及520B的輸出解耦。亦即,當控制訊號R/處於邏輯高時,對感測放大器510進行賦能以讀取位元線BL2及反相位元線BLB2上的邏輯訊號,而對所述兩個反相器520A及520B去能以使其無法影響位元線BL2及反相位元線BLB2上的邏輯訊號。
在圖5B及圖6中使用讀取-寫入驅動器542讀取位元線
BL2及反相位元線BLB2上的邏輯訊號的過程亦不同於在圖1B及圖4中使用讀取-寫入驅動器142讀取資料線DL2上的邏輯訊號的過程。在使用讀取-寫入驅動器542讀取位元線BL2及反相位元線BLB2上的邏輯訊號之前,預充電電路582將位元線BL2及反相位元線BLB2中的每一者充電至對應的參考電壓,預充電電路582由自預充電控制線158接收到的預充電訊號控制。
在一些實施例中,圖5A中讀取-寫入驅動器中的每一者是自圖1A中的對應的讀取-寫入驅動器進行修改而得到,其方式相似於自圖1B中的讀取-寫入驅動器142進行修改而得到圖5B中的讀取-寫入驅動器542的方式。圖5A中的記憶體電路500的操作由圖2A至圖2C中的各種控制訊號控制,正如圖1A中的記憶體電路100如何由圖2A至圖2C中的各種控制訊號控制一般。
圖6中的讀取-寫入驅動器542是自圖5B中的讀取-寫入驅動器542進行修改而得到,其使得能夠基於指示位元的位元值對輸出端子Dout處的輸出訊號進行位元翻轉。自圖5B中的讀取-寫入驅動器542至圖6中的讀取-寫入驅動器542的修改相似於自圖1B中的讀取-寫入驅動器142至圖4中的讀取-寫入驅動器142的修改。所述修改包括向讀取-寫入驅動器添加輸出多工器250及反相器260且使輸出多工器250的選擇輸入255被配置成接收Flip_Output控制訊號。Flip_Output控制訊號由儲存於記憶體電路600中的指示位元的位元值IB_Bit_Out提供。
在一些實施例中,圖5A中的讀取-寫入驅動器中的每一
者是自圖1A中的對應的讀取-寫入驅動器進行修改而得到,其方式相似於自圖4中的讀取-寫入驅動器142進行修改而得到圖6中的讀取-寫入驅動器542的方式。圖6中的記憶體電路600的操作由圖2A至圖2C中的各種控制訊號控制,正如圖4中的記憶體電路400如何由圖2A至圖2C中的各種控制訊號控制一般。
圖7是根據一些實施例的在記憶體裝置中儲存資料字元的方法的方法700的流程圖。圖7中方法700的操作的繪示順序僅用於例示;方法700的操作能夠以與圖7中所繪示順序不同的順序來執行。應理解,可在圖7中所繪示方法700之前、期間及/或之後實行附加操作,且一些其他過程在本文中可能僅被簡要闡述。
在方法700的操作710中,將資料字元及指示位元儲存於記憶體裝置的位元胞陣列中。在方法700的操作720中,重複地對位元胞陣列進行再新。在對位元胞陣列進行再新的操作期間,讀取來自資料位元胞的所儲存資料位元值作為讀出資料位元值,且將讀出資料位元值的位元反相型式再次儲存至資料位元胞中作為新的所儲存資料位元值。另外,在對位元胞陣列進行再新的操作期間,讀取來自指示位元胞的所儲存指示位元值作為讀出指示位元值,且將讀出指示位元值的位元反相型式再次儲存至指示位元胞中作為新的所儲存指示位元值。
在方法700的操作730中,自指示位元胞讀取所儲存指示位元值作為輸出指示位元值。在方法700的操作740中,將輸
出指示位元值與第一邏輯位準進行比較。
在方法700的操作752及操作754中,讀取每一被選擇的資料位元胞中的所儲存資料位元值作為讀出資料位元值,且輸出讀出資料位元值作為輸出資料位元值而無需進行位元反相。
在方法700的操作762及操作764中,讀取每一被選擇的資料位元胞中的所儲存資料位元值作為讀出資料位元值,且輸出讀出資料位元值的位元反相型式作為輸出資料位元值。
圖8是根據一些實施例的涉及錯誤校正碼(「error correction code,ECC」)演算法的儲存資料的方法的方法800的流程圖。圖8中方法800的操作的繪示順序僅用於例示;方法800的操作能夠以與圖8中所繪示順序不同的順序來執行。應理解,可在圖8中所繪示方法800之前、期間及/或之後實行附加操作,且一些其他過程在本文中可能僅被簡要闡述。
在方法800的操作810中,自原始資料產生擴充ECC字元。在方法800的操作820中,將擴充ECC字元儲存至位元胞中作為所儲存位元值。在方法800的操作830中,在預定時間之後,對位元胞施行翻轉再新操作。在方法800的操作840中,讀出位元胞中的所儲存位元值作為讀出的擴充ECC字元。在方法800的操作850中,自讀出的擴充ECC字元恢復原始字元。
圖9A至圖9B是根據一些實施例的在圖8中的方法800的操作期間所選擇的過程的示意圖。在如圖9A所示的第一實例中,在方法800的操作期間所選擇的過程包括過程910A、920A及
930A。在施行方法800的操作810及820的過程910A期間,在藉由利用ECC演算法對原始資料進行編碼來產生ECC編碼資料之後,將指示位元與ECC編碼資料進行組合以形成擴充ECC字元,且然後,將擴充ECC字元儲存至記憶體電路的位元胞中作為所儲存位元值。用於儲存擴充ECC字元的記憶體電路的實例包括圖1A至圖1B中的記憶體電路100、圖4中的記憶體電路400、圖5A至圖5B中的記憶體電路500、圖6中的記憶體電路600。ECC編碼資料一般而言是多位元字元。圖3中示出將多位元字元與指示位元進行組合的實例性方法。儘管圖3中的指示位元是擴充多位元字元的最末位元,但在擴充多位元字元的其他位置(即,不僅是最末位元)處實施指示位元亦處於本揭露的預期範圍內。
在施行方法800的操作830的過程920A期間,利用翻轉再新操作對記憶體電路的位元胞中的所儲存位元值進行翻轉。在一些實施例中,使位元胞中的所儲存位元值重複經曆翻轉再新操作。在一些實施例中,使位元胞中的所儲存位元值週期性地經曆翻轉再新操作。圖2C中示出在翻轉再新操作期間施加至記憶體電路的各種控制訊號的實例性時序圖。
在施行方法800的操作840及850的過程930A期間,讀出記憶體電路的位元胞中的所儲存位元值作為讀出的擴充ECC字元,然後,基於指示位元來獲得經校正的擴充ECC字元(例如,在資料翻轉過程或電路的幫助下)。若指示位元指示需要對讀出的擴充ECC字元進行翻轉,則經校正的擴充ECC字元是讀出的擴
充ECC字元的逐位元反相型式。若指示位元指示不需要對讀出的擴充ECC字元進行翻轉,則經校正的擴充ECC字元相同於讀出的擴充ECC字元。在剝離經校正的擴充ECC字元中的指示位元之後,獲得ECC編碼資料。此後,藉由利用ECC演算法對ECC編碼資料進行解碼來恢復原始資料。
在如圖9B所示的第二實例中,在方法800的操作期間所選擇的過程包括過程910B、920B及930B。在施行方法800的操作810及820的過程910B期間,在將指示位元與原始資料進行組合以形成擴充原始資料字元之後,藉由利用ECC演算法對擴充原始資料字元進行編碼來產生擴充ECC字元。然後,將擴充ECC字元儲存至記憶體電路的位元胞中作為所儲存位元值。用於儲存擴充ECC字元的記憶體電路的實例包括圖1A至圖1B中的記憶體電路100、圖4中的記憶體電路400、圖5A至圖5B中的記憶體電路500、圖6中的記憶體電路600。原始資料字元一般而言是多位元字元。圖3中示出將多位元字元與指示位元進行組合的實例性方法。將多位元字元與指示位元進行組合的其他方法亦處於本揭露的預期範圍內。
在施行方法800的操作830的過程920B期間,利用翻轉再新操作對記憶體電路的位元胞中的所儲存位元值進行翻轉。在一些實施例中,使位元胞中的所儲存位元值重複經曆翻轉再新操作。在一些實施例中,使位元胞中的所儲存位元值週期性地經曆翻轉再新操作。圖2C中示出在翻轉再新操作期間施加至記憶體電路
的各種控制訊號的實例性時序圖。在一些實施例中,對位元胞中的所儲存位元值經曆翻轉再新操作的次數進行計數。
在施行方法800的操作840及850的過程930B期間,讀出記憶體電路的位元胞中的所儲存位元值作為讀出的擴充ECC字元。然後,利用ECC演算法對讀出的擴充ECC字元進行解碼,藉此獲得讀出的擴充原始資料字元。在剝離讀出的擴充原始資料字元中的指示位元之後,原始資料得以恢復。
本揭露的態樣是有關於一種積體電路。所述積體電路包括字元線陣列及被配置成自字元線陣列接收選擇訊號的第一記憶胞陣列。第一記憶胞陣列中的每一記憶胞被配置成基於選擇訊號而成為被選擇的記憶胞。所述積體電路亦包括與第一記憶胞陣列相關聯的第一組資料線。第一記憶胞陣列中的每一記憶胞連接至第一組資料線中的一或多條資料線。所述積體電路更包括連接至第一組資料線且被配置成接收翻轉-再新控制訊號的第一讀取-寫入驅動器。第一組資料線與所述第一記憶胞陣列相關聯。所述第一記憶胞陣列中的每一記憶胞連接至所述第一組資料線中的一或多條資料線。第一讀取-寫入驅動器連接至所述第一組資料線且被配置成接收翻轉-再新控制訊號。第一讀取-寫入驅動器具有捕獲電路,捕獲電路被配置成儲存與被選擇的記憶胞中的所儲存位元值相關的第一位元值。第一讀取-寫入驅動器被配置成基於第一位元值經由第一組資料線將第二位元值儲存至被選擇的記憶胞中。第二位元值是所儲存位元值的位元反相型式。
在一些實施例中,所述第一記憶胞陣列包括動態隨機存取記憶胞陣列,且所述第一組資料線包括至少一條資料線。在一些實施例中,所述第一記憶胞陣列包括靜態隨機存取記憶胞陣列。在一些實施例中,積體電路更包括感測放大器,感測放大器被配置成經由所述第一組資料線讀取所述被選擇的記憶胞中的所述所儲存位元值,其中所述感測放大器的輸出連接至所述捕獲電路。在一些實施例中,積體電路更包括寫入多工器以及寫入驅動器。寫入多工器具有被配置成接收輸入位元值的第一輸入及連接至所述捕獲電路的第二輸入。寫入驅動器具有連接至所述寫入多工器的輸出的輸入,其中所述寫入驅動器被配置成經由所述第一組資料線將所述第二位元值儲存至所述被選擇的記憶胞中。在一些實施例中,所述第一讀取-寫入驅動器具有資料-輸入端子及翻轉-再新控制端子,所述資料-輸入端子被配置成接收所述輸入位元值,所述翻轉-再新控制端子被配置成接收翻轉-再新控制訊號,且其中所述寫入多工器被配置成由所述翻轉-再新控制訊號控制。在一些實施例中,所述第一讀取-寫入驅動器具有資料-輸入端子、資料-輸出端子及翻轉-再新控制端子。在一些實施例中,積體電路更包括感測放大器、反相器以及輸出多工器。感測放大器被配置成經由所述第一組資料線讀取所述被選擇的記憶胞中的所述所儲存位元值。反相器具有連接至所述感測放大器的輸出的輸入。輸出多工器具有連接至所述感測放大器的所述輸出的第一輸入且具有連接至所述反相器的輸出的第二輸入。在一些實施例中,積體電路更包括第二記憶胞
陣列、第二組資料線以及第二讀取-寫入驅動器。第二記憶胞陣列被配置成自所述字元線陣列接收所述選擇訊號。第二組資料線與所述第二記憶胞陣列相關聯,其中所述第二記憶胞陣列中的每一記憶胞連接至所述第二組資料線中的一或多條資料線。第二讀取-寫入驅動器連接至所述第二組資料線且被配置成接收所述翻轉-再新控制訊號,其中所述第二讀取-寫入驅動器被配置成讀取所述第二記憶胞陣列中的記憶胞中的一者中所儲存的指示位元的所儲存位元值。所述第一讀取-寫入驅動器被配置成使所述輸出多工器被配置成自所述第二讀取-寫入驅動器接收所述指示位元的所述所儲存位元值。在一些實施例中,積體電路更包括第二記憶胞陣列、第二組資料線以及第二讀取-寫入驅動器。第二記憶胞陣列被配置成自所述字元線陣列接收所述選擇訊號。第二組資料線與所述第二記憶胞陣列相關聯,其中所述第二記憶胞陣列中的每一記憶胞連接至所述第二組資料線中的一或多條資料線。第二讀取-寫入驅動器連接至所述第二組資料線且被配置成接收所述翻轉-再新控制訊號。在一些實施例中,積體電路更包括第三記憶胞陣列、第三組資料線以及第三讀取-寫入驅動器。第三記憶胞陣列被配置成自所述字元線陣列接收所述選擇訊號。第三組資料線與所述第三記憶胞陣列相關聯,其中所述第三記憶胞陣列中的每一記憶胞連接至所述第三組資料線中的一或多條資料線。第三讀取-寫入驅動器連接至所述第三組資料線且被配置成接收所述翻轉-再新控制訊號。
本揭露的另一態樣是有關於一種方法。所述方法包括在記憶體裝置的位元胞陣列中儲存資料字元及指示位元。儲存資料字元及指示位元的操作包括:將資料字元中的每一位元值儲存至資料位元胞中作為所儲存資料位元值;以及將指示位元的指示位元值儲存至指示位元胞中作為所儲存指示位元值。所述方法亦包括重複地對位元胞陣列進行再新。對位元胞陣列進行再新的操作包括:自資料位元胞讀取所儲存資料位元值作為讀出資料位元值,自指示位元胞讀取所儲存指示位元值作為讀出指示位元值,將讀出資料位元值的位元反相型式儲存至資料位元胞中作為所儲存資料位元值,以及將讀出指示位元值的位元反相型式儲存至指示位元胞中作為所儲存指示位元值。
在一些實施例中,所述方法更包括:自所述指示位元胞讀取所述所儲存指示位元值作為輸出指示位元值;以及對於所述位元胞陣列中的每一被選擇的資料位元胞,自所述被選擇的資料位元胞讀取所述所儲存資料位元值作為所述讀出資料位元值,且基於所述輸出指示位元值對所述讀出資料位元值進行反相。
本揭露的又一態樣是有關於一種儲存資料的方法。所述方法包括:基於錯誤校正碼(ECC)演算法自原始資料產生擴充ECC字元,將擴充ECC字元儲存至位元胞中作為所儲存位元值,以及藉由修改位元胞中的每一者中的所儲存位元值來在預定時間之後對位元胞進行再新。修改位元胞中的所儲存位元值的操作包括:讀取位元胞中的所儲存位元值作為第一位元值,且將第二位元
值儲存至位元胞中作為所儲存位元值,其中第二位元值是第一位元值的位元反相型式。
在一些實施例中,所述方法更包括:藉由利用所述錯誤校正碼演算法對所述原始資料進行編碼來產生錯誤校正碼編碼資料,且其中產生所述擴充錯誤校正碼字元包括將指示位元與所述錯誤校正碼編碼資料進行組合。在一些實施例中,所述方法更包括:在對所述位元胞進行再新至少一次之後,讀取所述位元胞中的所述所儲存位元值作為讀出的擴充錯誤校正碼字元;基於所述指示位元的位元值自所述讀出的擴充錯誤校正碼字元獲得所述錯誤校正碼編碼資料;以及,藉由對所述錯誤校正碼編碼資料進行解碼來獲得所述原始資料。
此項技術中具有通常知識者將易於看出所揭露實施例中的一或多者達成了上述優勢中的一或多者。在閱讀前述說明書之後,具有通常知識者將能夠影響各種改變、等效形式替換及如本文中所廣泛揭露的各種其他實施例。因此,本發明旨在使基於本發明而授權的保護僅由在隨附申請專利範圍及其等效範圍中所包含的定義來限制。
1C11、1C12、1C13、1C14、1C21、1C22、1C23、1C24、1C31、1C32、1C33、1C34、1C41、1C42、1C43、1C44:記憶胞
400:記憶體電路
110:列位址解碼器
142、144:讀取-寫入驅動器
210:感測放大器
215、225、235:控制端子
219:輸出
220:寫入驅動器
221、231、232、D:輸入
230:寫入多工器
240:D-鎖存器
250:輸出多工器
255:選擇輸入
260:反相器
Din:資料-輸入端子
DL1、DL2、DL3、DL4:資料線
Dout:資料-輸出端子/輸出端子
EN:賦能端子
Flip_Output、R/W:控制訊號
FRefresh:翻轉-再新控制訊號
IB_Bit_Out:位元值
IB_EN:賦能訊號
WL1、WL2、WL3、WL4:字元線
Claims (10)
- 一種對記憶體裝置進行再新的積體電路,包括:字元線陣列;第一記憶胞陣列,被配置成自所述字元線陣列接收選擇訊號,其中所述第一記憶胞陣列中的每一記憶胞被配置成基於所述選擇訊號而成為被選擇的記憶胞;第一組資料線,與所述第一記憶胞陣列相關聯,其中所述第一記憶胞陣列中的每一記憶胞連接至所述第一組資料線中的一或多條資料線;以及第一讀取-寫入驅動器,連接至所述第一組資料線且被配置成接收翻轉-再新控制訊號,其中所述第一讀取-寫入驅動器具有捕獲電路,所述捕獲電路被配置成儲存與所述被選擇的記憶胞中的所儲存位元值相關的第一位元值,且其中所述第一讀取-寫入驅動器被配置成基於所述第一位元值經由所述第一組資料線將第二位元值儲存至所述被選擇的記憶胞中,其中所述第二位元值是所述所儲存位元值的位元反相型式。
- 如請求項1所述的積體電路,其中所述第一記憶胞陣列包括動態隨機存取記憶胞陣列,且所述第一組資料線包括至少一條資料線。
- 如請求項1所述的積體電路,其中所述第一記憶胞陣列包括靜態隨機存取記憶胞陣列。
- 如請求項1所述的積體電路,更包括: 感測放大器,被配置成經由所述第一組資料線讀取所述被選擇的記憶胞中的所述所儲存位元值,其中所述感測放大器的輸出連接至所述捕獲電路。
- 如請求項1所述的積體電路,更包括:寫入多工器,具有被配置成接收輸入位元值的第一輸入及連接至所述捕獲電路的第二輸入;以及寫入驅動器,具有連接至所述寫入多工器的輸出的輸入,其中所述寫入驅動器被配置成經由所述第一組資料線將所述第二位元值儲存至所述被選擇的記憶胞中。
- 如請求項5所述的積體電路,其中所述第一讀取-寫入驅動器具有資料-輸入端子及翻轉-再新控制端子,所述資料-輸入端子被配置成接收所述輸入位元值,所述翻轉-再新控制端子被配置成接收翻轉-再新控制訊號,且其中所述寫入多工器被配置成由所述翻轉-再新控制訊號控制。
- 如請求項1所述的積體電路,其中所述第一讀取-寫入驅動器具有資料-輸入端子、資料-輸出端子及翻轉-再新控制端子。
- 如請求項1所述的積體電路,更包括:感測放大器,被配置成經由所述第一組資料線讀取所述被選擇的記憶胞中的所述所儲存位元值;反相器,具有連接至所述感測放大器的輸出的輸入;以及輸出多工器,具有連接至所述感測放大器的所述輸出的第一 輸入且具有連接至所述反相器的輸出的第二輸入。
- 一種對記憶體裝置進行再新的方法,包括:將資料字元及指示位元儲存於記憶體裝置的位元胞陣列中,其中儲存所述資料字元及所述指示位元包括:將所述資料字元中的每一位元值儲存至資料位元胞中作為所儲存資料位元值;以及將所述指示位元的指示位元值儲存至指示位元胞中作為所儲存指示位元值;以及重複地對所述位元胞陣列進行再新,其中對所述位元胞陣列進行再新包括:自所述資料位元胞讀取所述所儲存資料位元值作為讀出資料位元值,自所述指示位元胞讀取所述所儲存指示位元值作為讀出指示位元值,將所述讀出資料位元值的位元反相型式儲存至所述資料位元胞中作為所述所儲存資料位元值,以及將所述讀出指示位元值的位元反相型式儲存至所述指示位元胞中作為所述所儲存指示位元值。
- 一種儲存資料的方法,包括:基於錯誤校正碼(ECC)演算法自原始資料產生擴充錯誤校正碼字元;將所述擴充錯誤校正碼字元儲存至位元胞中作為所儲存位元值;以及 藉由修改所述位元胞中的每一者中的所述所儲存位元值,在預定時間之後對所述位元胞進行再新,其中修改所述位元胞中的所述所儲存位元值包括,讀取所述位元胞中的所述所儲存位元值作為第一位元值,以及將第二位元值儲存至所述位元胞中作為所述所儲存位元值,其中所述第二位元值是所述第一位元值的位元反相型式。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202263376883P | 2022-09-23 | 2022-09-23 | |
US63/376,883 | 2022-09-23 | ||
US18/160,564 US20240105249A1 (en) | 2022-09-23 | 2023-01-27 | Method of and apparatus for refreshing memory devices |
US18/160,564 | 2023-01-27 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202414410A TW202414410A (zh) | 2024-04-01 |
TWI856568B true TWI856568B (zh) | 2024-09-21 |
Family
ID=
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220246202A1 (en) | 2021-02-04 | 2022-08-04 | Micron Technology, Inc. | Performing refresh operations on memory cells |
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20220246202A1 (en) | 2021-02-04 | 2022-08-04 | Micron Technology, Inc. | Performing refresh operations on memory cells |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7167403B2 (en) | Semiconductor storage device and refresh control method therefor | |
JP4988588B2 (ja) | 静的ランダムアクセスメモリ用のワード線ドライバ回路 | |
CN107039083B (zh) | 执行封装后修复操作的存储器设备 | |
US7903483B2 (en) | Integrated circuit having memory with configurable read/write operations and method therefor | |
EP3690884B1 (en) | Sram based physically unclonable function and method for generating a puf response | |
TW202105382A (zh) | 半導體記憶裝置以及操作半導體記憶裝置之方法 | |
US20240290366A1 (en) | Far End Driver for Memory Clock | |
US7298659B1 (en) | Method and system for accelerated detection of weak bits in an SRAM memory device | |
TWI856568B (zh) | 用於對記憶體裝置進行再新的積體電路及方法 | |
JP2005135488A (ja) | 半導体記憶装置 | |
CN112131037B (zh) | 存储器装置 | |
TW201521024A (zh) | 半導體裝置及資料讀出方法 | |
TW202414410A (zh) | 用於對記憶體裝置進行再新的積體電路及方法 | |
CN117766001A (zh) | 用于对内存装置进行再新的集成电路及方法 | |
JP2004095027A (ja) | スタティック型半導体記憶装置およびその制御方法 | |
US6704229B2 (en) | Semiconductor test circuit for testing a semiconductor memory device having a write mask function | |
TWI653640B (zh) | 半導體記憶裝置 | |
JP2004094908A (ja) | 不揮発性強誘電体メモリ制御装置 | |
CN112687309B (zh) | 存储器器件及其复位方法 | |
TW201928951A (zh) | 動態隨機存取記憶體及其操作方法 | |
TWI691964B (zh) | 記憶體裝置 | |
US10839934B2 (en) | Redundancy circuitry for memory application | |
JP2551473B2 (ja) | 誤り検出・訂正機能を備える半導体記憶装置 | |
JP2013125452A (ja) | 不揮発性半導体記憶装置、および不揮発性半導体記憶装置におけるシードデータの設定方法 | |
JP2006065968A (ja) | 半導体記憶装置のデータ書き込み回路およびデータ書き込み方法 |