欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

糾錯(cuò)碼電路的制作方法

文檔序號(hào):6767689閱讀:138來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):糾錯(cuò)碼電路的制作方法
背景技術(shù)
已有技術(shù)說(shuō)明應(yīng)用糾錯(cuò)電路(ECC)進(jìn)行數(shù)據(jù)校正是一種十分有效的用于提高數(shù)據(jù)完整性的方法。這種方法廣泛應(yīng)用于通信系統(tǒng)以及數(shù)據(jù)存貯設(shè)備的應(yīng)用程序當(dāng)中。

圖1示出的是一種糾錯(cuò)碼計(jì)算器的系統(tǒng)方框圖,通過(guò)它可以說(shuō)明糾錯(cuò)碼的運(yùn)算原理。這種糾錯(cuò)碼計(jì)算器以預(yù)先確定的具有固定位數(shù)的數(shù)據(jù)包(在本示例當(dāng)中為64位)為工作對(duì)象。來(lái)自原始數(shù)據(jù)包的被選位被發(fā)送到多個(gè)奇偶檢驗(yàn)樹(shù)(本示例當(dāng)中為8個(gè))。用于計(jì)算不同數(shù)據(jù)子集的奇偶性。每個(gè)數(shù)據(jù)子集大約由數(shù)據(jù)包數(shù)據(jù)位的一半組成。而且每個(gè)子集當(dāng)中的數(shù)據(jù)都與其它子集當(dāng)中的數(shù)據(jù)存在部分重疊。最后得出來(lái)的奇偶檢驗(yàn)位(也稱(chēng)為糾錯(cuò)碼位)將與原始數(shù)據(jù)一起被傳輸或者存儲(chǔ)。由于采用這樣的構(gòu)形來(lái)選擇數(shù)據(jù)子集,因而,當(dāng)在數(shù)據(jù)傳輸過(guò)程中有錯(cuò)誤被引入到原始數(shù)據(jù)中時(shí)??梢酝ㄟ^(guò)比較由同樣奇偶計(jì)算方法計(jì)算得到的奇偶檢驗(yàn)位與初始糾錯(cuò)碼位來(lái)識(shí)別錯(cuò)誤位。
盡管已有的糾錯(cuò)碼機(jī)制能夠?yàn)閿?shù)據(jù)完整性提供優(yōu)良的保護(hù),但是它同時(shí)也帶來(lái)了許多技術(shù)難題。糾錯(cuò)碼計(jì)算器把大量數(shù)據(jù)送入大量奇偶檢驗(yàn)樹(shù),而每個(gè)奇偶檢驗(yàn)樹(shù)對(duì)不同的數(shù)據(jù)子集執(zhí)行不同的奇偶計(jì)算。由于這樣的奇偶計(jì)算需要復(fù)雜的布線,從而導(dǎo)致糾錯(cuò)碼電路不僅速度慢而且十分復(fù)雜。糾錯(cuò)碼計(jì)算造成的性能下降通常會(huì)限制糾錯(cuò)碼的應(yīng)用。在已有的糾錯(cuò)碼機(jī)制當(dāng)中,每種糾錯(cuò)碼機(jī)理只適用于某種特定的數(shù)據(jù)量。如果數(shù)據(jù)包的大小發(fā)生了改變,就需要重新設(shè)計(jì)糾錯(cuò)碼機(jī)制。測(cè)試是另外一個(gè)問(wèn)題。在已有技術(shù)當(dāng)中,糾錯(cuò)碼計(jì)算器的速度強(qiáng)烈地依賴于輸入數(shù)據(jù)的格式;當(dāng)數(shù)據(jù)包的大小增加時(shí),糾錯(cuò)碼計(jì)算器的速度往往會(huì)產(chǎn)生明顯下降。在已有技術(shù)當(dāng)中,如果糾錯(cuò)電路使用的復(fù)雜布線中有某一條布線存在制造缺陷的話,要探測(cè)出該問(wèn)題將會(huì)十分困難,因?yàn)橐@得完整的故障覆蓋范圍需要大量的測(cè)試向量(在圖1的示例當(dāng)中為272×272)。
因此,急需開(kāi)發(fā)出一種不僅結(jié)構(gòu)簡(jiǎn)單而且便于支持不同數(shù)據(jù)寬度的高性能糾錯(cuò)碼機(jī)制。
本發(fā)明的目的本發(fā)明的主要目的在于提供一種具有簡(jiǎn)化結(jié)構(gòu)的糾錯(cuò)碼計(jì)算器。這種簡(jiǎn)化的糾錯(cuò)碼計(jì)算器能夠用相同的電路以相同的速度來(lái)支持幾乎任意大小的數(shù)據(jù)包。本發(fā)明的另一個(gè)目的在于提高糾錯(cuò)電路的速度。本發(fā)明的另一個(gè)主要目的在于為使用本發(fā)明提出的新穎糾錯(cuò)電路的實(shí)用產(chǎn)品提供新穎的應(yīng)用程序。按照本發(fā)明提供的糾錯(cuò)碼計(jì)算公式中的旋轉(zhuǎn)關(guān)系即可達(dá)到上述目的與其它一些目的。最終的糾錯(cuò)電路可以通過(guò)相同的電路塊進(jìn)行構(gòu)建,而且數(shù)據(jù)寬度能夠自由擴(kuò)展。按照本發(fā)明提供的簡(jiǎn)化電路結(jié)構(gòu)即可獲得糾錯(cuò)電路的優(yōu)良性能。
雖然本發(fā)明的一些新的技術(shù)特征是在本發(fā)明的幾個(gè)從屬權(quán)利要求中限定的,但是通過(guò)結(jié)合附圖閱讀本發(fā)明的目的、特征以及下文的詳細(xì)描述,本發(fā)明的結(jié)構(gòu)和內(nèi)容均不難理解。
圖6(e)為電路根據(jù)圖6(b)中的表格來(lái)執(zhí)行模數(shù)數(shù)據(jù)轉(zhuǎn)換的方框圖;圖7(a-c)示出的是已有技術(shù)的按內(nèi)容尋址存儲(chǔ)器以及與之相關(guān)聯(lián)的存儲(chǔ)單元的結(jié)構(gòu);以及圖8(a-d)示出的是采用糾錯(cuò)碼對(duì)按內(nèi)容尋址的存儲(chǔ)器設(shè)備進(jìn)行保護(hù)的示例。
本發(fā)明的詳細(xì)說(shuō)明由于糾錯(cuò)機(jī)制的復(fù)雜性,本發(fā)明的說(shuō)明將在以下的討論當(dāng)中采用C編程語(yǔ)言中使用的向量符號(hào)來(lái)對(duì)該機(jī)制進(jìn)行描述。例如,D[32][41]表示一組8個(gè)符號(hào),即D34、D33、D32、D31、D24、D23、D22和D21。符號(hào)“mod”表示取模運(yùn)算,運(yùn)算結(jié)果為除法運(yùn)算的余數(shù)。例如,當(dāng)k=7時(shí),[(k+3)mod8]等于2,當(dāng)k=1時(shí),[(k-3)mod8]等于6?!癿od”功能由實(shí)際電路輸入連接中的旋轉(zhuǎn)關(guān)系來(lái)執(zhí)行。
在編號(hào)為6,216,246的美國(guó)專(zhuān)利中,本發(fā)明的同一發(fā)明人公開(kāi)了一種糾錯(cuò)碼計(jì)算器,示于圖2(a)中。該示例中的糾錯(cuò)碼計(jì)算器采用64個(gè)輸入數(shù)據(jù)(D[70][70])。該糾錯(cuò)碼計(jì)算器由8個(gè)相同的奇偶檢驗(yàn)電路塊(P7-P0)組成。奇偶檢驗(yàn)電路塊的示意圖如圖2(b)所示。每個(gè)奇偶檢驗(yàn)電路塊(P7-P0)都是由19個(gè)異或門(mén)、一個(gè)異非門(mén)以及一個(gè)變換器所組成。奇偶檢驗(yàn)電路塊P[k]把數(shù)據(jù)D[k][70]以及儲(chǔ)存的糾錯(cuò)碼位Ck作為輸入,其中k為介于0和7之間的整數(shù)。它把四個(gè)輸出(N11、N22、N33和N41)傳送到位于其上的奇偶檢驗(yàn)電路,并從位于其下的奇偶檢驗(yàn)電路接收相應(yīng)的輸出(N11B、N22B、N33B和N41B)。同時(shí),它還把三個(gè)輸出,也就是N24、N32和N42傳送到位于其下的奇偶檢驗(yàn)電路,并從位于其上的奇偶檢驗(yàn)電路接收相應(yīng)的輸出,也就是N24T、N32T和N42T。另外,它還輸出校正因子Fk。第k個(gè)奇偶檢驗(yàn)電路(P[k])輸出的邏輯函數(shù)可以寫(xiě)成如下形式N11=Parity{Ck,Dk0} (1a),N23=Parity{Dk3,Dk4,Dk7} (1b),
N33=Parity{N23B,Dk2,Dk5,Dk6} (1c),N41=Parity{N33B,N24T,Dk1,Dk4,Dk5} (1d),N24=Parity{Dk4,Dk5,Dk6,Dk7}(1e),N32=Parity{Dk0,Dk1,Dk2,Dk3,Dk4,Dk5,Dk6,Dk7}(1f),N42=Parity{N32T,N11B,Dk0,Dk1,Dk2,Dk3,Dk4,Dk5} (1g),以及Fk=Parity{N42T,N41B} (1h),其中,“Parity{}”表示大括號(hào)“{}”中包含的全部輸入的奇偶檢驗(yàn)值。根據(jù)所有奇偶檢驗(yàn)電路都相同這一事實(shí),可以確定出由附近奇偶檢驗(yàn)電路所提供的輸入(N11B、N22B、N33B、N41B、N24T、N32T和N42T)。例如,根據(jù)方程(1a),可以建立如下的函數(shù)關(guān)系式N11B=Parity{C[(k+1)mod8],D[(k+1)mod8]0} (2)其中,C[(k+1)mod8]是儲(chǔ)存的糾錯(cuò)碼位,D[(k+1)mod8]0是第一個(gè)連接到位于其下的奇偶檢驗(yàn)電路的數(shù)據(jù)。以同樣的方式可以確定出所有其它輸入(N22B、N33B、N41B、N24T、N32T和N42T)。根據(jù)圖2(b)中的連接關(guān)系以及方程(1a-1h),可以得出以下關(guān)系Fk=Parity{Ck,D[(k-2)mod8][70],D[(k-1)mod8][50],D[k][74,0],D[(k+1)mod8][5,4,1],D[(k+2)mod8][6,5,2],D[(k+3)mod8][7,4,3]}(3)其中k=(0,1,2,3,4,5,6,7)。
如果輸入數(shù)據(jù)當(dāng)中沒(méi)有錯(cuò)誤的話,所有信號(hào)(Fk)將會(huì)全部為零。如果輸入數(shù)據(jù)D[70][70]當(dāng)中有一個(gè)錯(cuò)誤的話,那么通過(guò)利用圖2(c)中示出的糾錯(cuò)碼譯碼器來(lái)檢查校正因子(F0-Fk)就可以識(shí)別出錯(cuò)誤位。圖2(c)中示出的糾錯(cuò)碼譯碼器由8個(gè)糾錯(cuò)碼譯碼塊(CB0-CB7)組成。這8個(gè)糾錯(cuò)碼譯碼塊具有相同的邏輯功能,其示意圖如圖2(d)所示。它們之間唯一的差別就在于與Fk信號(hào)的連接不同。這里,在與Fk的連接當(dāng)中,再次出現(xiàn)了旋轉(zhuǎn)關(guān)系。例如,CB1的F1等于CB0的F0,而且CB2的F2也等于F0,如此等等。這些糾錯(cuò)碼譯碼塊(CB0-CB7)的輸出(CR[70][70]#)指明了錯(cuò)誤位的位置。如果CRij#較低,這就意味著應(yīng)當(dāng)跟Dkj的值進(jìn)行交換,其中k=(0,1,2,3,4,5,6,7)、j=(0,1,2,3,4,5,6,7)。
在圖2(a)中示出的電路也可以用來(lái)計(jì)算一組原始數(shù)據(jù)的糾錯(cuò)碼位,指定所有Ck輸入都為零,通過(guò)下式所得到的Fk就是糾錯(cuò)碼位ECC(k)=Parity{D[(k-2)mod8][70],D[(k-1)mod8][50],D[k][74,0],D[(k+1)mod8][5,4,1],D[(k+2)mod8][6,5,2],D[(k+3)mod8][7,4,3]}(4)其中,ECC(k)就是糾錯(cuò)碼位的值,而且k=(0,1,2,3,4,5,6,7)。
圖2(a-d)中示出的糾錯(cuò)碼機(jī)制由于奇偶檢驗(yàn)計(jì)算中的旋轉(zhuǎn)關(guān)系而具有新穎性。C[k+1]的奇偶檢驗(yàn)計(jì)算就是C[k]簡(jiǎn)單旋轉(zhuǎn)的結(jié)果。這種旋轉(zhuǎn)關(guān)系在糾錯(cuò)碼校正電路中也有應(yīng)用。在本發(fā)明當(dāng)中,這種糾錯(cuò)碼電路也稱(chēng)為“旋轉(zhuǎn)糾錯(cuò)碼計(jì)算器(REC)”。旋轉(zhuǎn)糾錯(cuò)碼計(jì)算器電路與其它已有技術(shù)的糾錯(cuò)電路相比,存在以下幾個(gè)方面的不同(1)已有技術(shù)的糾錯(cuò)電路使用不同的糾錯(cuò)碼樹(shù)來(lái)計(jì)算不同的糾錯(cuò)碼位,導(dǎo)致復(fù)雜的電路上連接有復(fù)雜的布線。而旋轉(zhuǎn)關(guān)系允許旋轉(zhuǎn)糾錯(cuò)碼計(jì)算器支持所有使用相同標(biāo)準(zhǔn)部件進(jìn)行的邏輯計(jì)算。因此,旋轉(zhuǎn)糾錯(cuò)碼計(jì)算器的設(shè)計(jì)復(fù)雜程度得到極為明顯的簡(jiǎn)化。(2)在已有技術(shù)的糾錯(cuò)電路當(dāng)中,每個(gè)輸入數(shù)據(jù)都需要經(jīng)過(guò)長(zhǎng)距離旅行才能到達(dá)多個(gè)奇偶檢驗(yàn)樹(shù)。而對(duì)旋轉(zhuǎn)糾錯(cuò)碼計(jì)算器而言,每個(gè)輸入數(shù)據(jù)只需要抵達(dá)一個(gè)奇偶檢驗(yàn)電路塊即可。這種簡(jiǎn)化顯著降低了輸入信號(hào)布線的復(fù)雜程度,并明顯提高了運(yùn)算速度。(3)就旋轉(zhuǎn)糾錯(cuò)碼計(jì)算器電路而言,中間邏輯信號(hào)(N11、N22、N33、N41、N24、N32和N42)只需要傳送到鄰近的奇偶檢驗(yàn)電路塊即可,在整個(gè)旋轉(zhuǎn)糾錯(cuò)碼計(jì)算器電路的任何部分都不存在長(zhǎng)的信號(hào)線或者復(fù)雜的布線。這也正是旋轉(zhuǎn)糾錯(cuò)碼計(jì)算器速度總是要比其它已有技術(shù)的糾錯(cuò)碼計(jì)算器速度快得多的主要原因。(4)由于旋轉(zhuǎn)對(duì)稱(chēng),旋轉(zhuǎn)糾錯(cuò)碼計(jì)算器電路的速度幾乎與輸入數(shù)據(jù)的格式毫不相關(guān),從而為其測(cè)試、調(diào)試以及優(yōu)化過(guò)程提供了明顯的改進(jìn)。
旋轉(zhuǎn)糾錯(cuò)碼計(jì)算器的一個(gè)重要特點(diǎn)就是它能夠以相同的重復(fù)電路來(lái)支持不同大小的輸入數(shù)據(jù)。圖3示出了一種旋轉(zhuǎn)糾錯(cuò)碼計(jì)算器電路,該電路采用與圖2(a)中所示電路塊相同的電路塊來(lái)支持長(zhǎng)度不斷變化的輸入數(shù)據(jù)。本示例中的糾錯(cuò)碼計(jì)算器取走輸入數(shù)據(jù)(D[(N-1)0][70])中的N個(gè)字節(jié),其中N為任意整數(shù)。該糾錯(cuò)碼計(jì)算器由N個(gè)相同的奇偶檢驗(yàn)電路塊(PN-1-P0)組成,這些電路塊以圖3(a)示出的旋轉(zhuǎn)關(guān)系進(jìn)行連接。這些奇偶檢驗(yàn)電路塊(PN-1-P0)的邏輯功與圖2(b)中電路塊的邏輯功能相同。對(duì)這些奇偶檢驗(yàn)電路塊(PN-1-P0)而言,方程(1a-h)仍然成立,只是k可以為介于0和N-1之間的任意整數(shù)。方程(2-4)需要改寫(xiě)為如下形式N11B=Parity{C[(k+1)modN],D[(k+1)modN]0} (5)Fk=Parity{Ck,D[(k-2)modN][70],D[(k-1)modN][50],D[k][74,0],D[(k+1)modN][5,4,1],D[(k+2)modN][6,5,2],D[(k+3)modN][7,4,3]} (6)ECC(k)=Parity{D[(k-2)modN][70],D[(k-1)modN][50],D[k][74,0],D[(k+1)modN][5,4,1],D[(k+2)modN][6,5,2],D[(k+3)modN][7,4,3]} (7)其中,ECC(k)是糾錯(cuò)碼位的值,而且k=(0,1,…,N-1)。
需要指出,圖2(a-d)中示出的旋轉(zhuǎn)糾錯(cuò)碼計(jì)算器電路只是N=8時(shí)的一種特殊情況。旋轉(zhuǎn)糾錯(cuò)碼計(jì)算器能夠采用與圖3(a)示出的寬度可變的糾錯(cuò)碼計(jì)算器相同的多個(gè)旋轉(zhuǎn)糾錯(cuò)碼計(jì)算器標(biāo)準(zhǔn)部件進(jìn)行擴(kuò)展以支持任意數(shù)量的輸入數(shù)據(jù)集。無(wú)論輸入數(shù)據(jù)集的寬度為多少,最終得到的電路都將具有相同的速度和相同的電路連接。不再需要對(duì)糾錯(cuò)碼計(jì)算器進(jìn)行重新設(shè)計(jì)以支持不同的數(shù)據(jù)寬度。針對(duì)不同的應(yīng)用場(chǎng)合,還可以象圖3(b)示出的那樣通過(guò)斷開(kāi)閉環(huán)構(gòu)型來(lái)擴(kuò)展本發(fā)明的應(yīng)用范圍。圖3(b)示出了本發(fā)明的一種替代發(fā)明,該發(fā)明可以應(yīng)用于數(shù)據(jù)通信系統(tǒng)經(jīng)常碰到的以預(yù)先確定的數(shù)據(jù)(例如標(biāo)題記錄)作為起始和結(jié)束的一長(zhǎng)條輸入數(shù)據(jù)被連續(xù)接收的情況。如同圖3(b)所示,為了確保數(shù)據(jù)傳輸?shù)臏?zhǔn)確性,采用了一個(gè)串聯(lián)的旋轉(zhuǎn)糾錯(cuò)電路而不是上面所說(shuō)的閉環(huán)旋轉(zhuǎn)糾錯(cuò)計(jì)算器電路來(lái)接收和處理數(shù)據(jù)流。圖3(b)中采用了一個(gè)人工環(huán)繞式邏輯電路(AWALC),其中,錯(cuò)碼計(jì)算是通過(guò)把簡(jiǎn)化位組合格式(比如全1或者全0)供給開(kāi)頭和結(jié)尾的糾錯(cuò)碼計(jì)算器塊來(lái)進(jìn)行的。錯(cuò)碼計(jì)算也可以采用與具有固定位組合格式輸入的閉環(huán)旋轉(zhuǎn)糾錯(cuò)計(jì)算器相似的方式來(lái)進(jìn)行。通過(guò)首先傳送數(shù)據(jù)記錄的長(zhǎng)度然后再應(yīng)用相應(yīng)數(shù)量的糾錯(cuò)碼計(jì)算器塊進(jìn)行錯(cuò)碼計(jì)算,可以方便地對(duì)開(kāi)環(huán)環(huán)繞式糾錯(cuò)碼計(jì)算器進(jìn)行控制或者重新配置以處理不同長(zhǎng)度的數(shù)據(jù)流。
雖然文中用文字和附圖的形式給出了本發(fā)明的若干具體實(shí)施例,但是應(yīng)當(dāng)認(rèn)識(shí)到本發(fā)明不僅僅局限于這些具體實(shí)施例,它在實(shí)際當(dāng)中還會(huì)有所更改和修正。例如,在保持旋轉(zhuǎn)關(guān)系不變的條件下,方程(1-7)還可以改寫(xiě)成其它不同的形式。奇偶檢驗(yàn)塊可以訪問(wèn)不同數(shù)量的輸入,而不僅僅是8個(gè),而且可以輸出不同數(shù)量的糾錯(cuò)碼位和中間信號(hào)。本發(fā)明的校正機(jī)制的新穎之處在于在糾錯(cuò)碼機(jī)制的奇偶檢驗(yàn)計(jì)算中實(shí)行了旋轉(zhuǎn)關(guān)系?;谛D(zhuǎn)關(guān)系,可以使用重復(fù)電路設(shè)計(jì)來(lái)簡(jiǎn)化設(shè)計(jì)工作。另外,通過(guò)最大限度地降低布線的復(fù)雜程度也可以獲得更高的性能。
根據(jù)以上的說(shuō)明,本發(fā)明公開(kāi)了一種方法,用于改變糾錯(cuò)碼邏輯電路的配置以進(jìn)行數(shù)據(jù)寬度不斷變化的數(shù)據(jù)的錯(cuò)誤檢驗(yàn)。該方法包括如下步驟A)順序地互連一組N1個(gè)相同的錯(cuò)誤檢驗(yàn)塊,其中N1是第一個(gè)正整數(shù)。并且,該方法還包括一個(gè)步驟B)通過(guò)將糾錯(cuò)碼邏輯電路改變?yōu)橐唤M由N2個(gè)相同的錯(cuò)誤檢驗(yàn)塊順序互連組成的電路來(lái)對(duì)糾錯(cuò)碼邏輯電路進(jìn)行重新配置,其中N2為第二個(gè)正整數(shù)。在優(yōu)先權(quán)利要求當(dāng)中,順序地互連一組N1個(gè)相同的錯(cuò)誤檢驗(yàn)塊這一步指的是互連只介于順序相鄰兩個(gè)用于傳輸只介于相鄰兩個(gè)錯(cuò)誤檢驗(yàn)塊之間信號(hào)的塊之間的N1個(gè)錯(cuò)誤檢驗(yàn)塊。另外,通過(guò)將糾錯(cuò)碼邏輯電路改變?yōu)橐唤M由N2個(gè)相同的錯(cuò)誤檢驗(yàn)塊順序互連組成的電路來(lái)對(duì)糾錯(cuò)碼邏輯電路進(jìn)行重新配置這一步指的是互連只介于順序相鄰兩個(gè)用于傳輸只介于相鄰兩個(gè)錯(cuò)誤檢驗(yàn)塊之間信號(hào)的塊之間的N2個(gè)錯(cuò)誤檢驗(yàn)塊。
配備了以上糾錯(cuò)碼保護(hù)機(jī)制的系統(tǒng)將需要另外的邏輯電路和更多的數(shù)據(jù)存儲(chǔ)資源。這些對(duì)額外資源的要求看起來(lái)似乎會(huì)增加系統(tǒng)的成本,但是,實(shí)際上,以上糾錯(cuò)碼保護(hù)機(jī)制通常有利于降低實(shí)際產(chǎn)品的總成本。在下面的討論中將給出兩個(gè)實(shí)際的例子以更好地說(shuō)明這幾點(diǎn)。
第一個(gè)例子是糾錯(cuò)碼保護(hù)機(jī)制在浮動(dòng)?xùn)旁O(shè)備中的應(yīng)用。圖4示出的是一個(gè)浮動(dòng)?xùn)啪w管的符號(hào)結(jié)構(gòu)。這個(gè)晶體管和普通晶體管一樣由源(S)、漏(D)以及柵(G)組成。這個(gè)晶體管和普通晶體管的差別在于它在柵和通道區(qū)之間還有一個(gè)浮動(dòng)?xùn)?FG)。在大多數(shù)工作條件下浮動(dòng)?xùn)攀墙^緣的,然而,在執(zhí)行程序運(yùn)算或者執(zhí)行清除操作的過(guò)程當(dāng)中,通過(guò)熱載流子機(jī)理或者隧道效應(yīng)機(jī)理可以把電荷注入到浮動(dòng)?xùn)派匣蛘邚母?dòng)?xùn)派锨宄姾伞8?dòng)?xùn)旁O(shè)備的傳導(dǎo)性是浮動(dòng)?xùn)挪东@電荷量的函數(shù)。因此,可以通過(guò)改變浮動(dòng)?xùn)潘东@的電荷量來(lái)把數(shù)據(jù)存儲(chǔ)到浮動(dòng)?xùn)旁O(shè)備上。許多商業(yè)產(chǎn)品,比如EPROM、EEPROM以及FLASH等,都是建立在浮動(dòng)?xùn)旁O(shè)備之上的。浮動(dòng)?xùn)旁O(shè)備最難解決的可靠性問(wèn)題是電荷損失(QL)問(wèn)題以及程序運(yùn)算-清除(PE)循環(huán)導(dǎo)致的故障。電荷損失問(wèn)題通常是由浮動(dòng)?xùn)胖車(chē)慕^緣體的制造缺陷導(dǎo)致的。制造缺陷會(huì)讓浮動(dòng)?xùn)女a(chǎn)生緩慢的泄露,從而導(dǎo)致該設(shè)備由于捕獲電荷的損失而無(wú)法保持存儲(chǔ)數(shù)據(jù)。電荷損失問(wèn)題通常并不會(huì)造成浮動(dòng)?xùn)旁O(shè)備的永久性損壞,如果向出現(xiàn)過(guò)該問(wèn)題的設(shè)備當(dāng)中重新寫(xiě)入數(shù)據(jù)的話,這些設(shè)備仍然能夠在一定時(shí)期內(nèi)起作用,直到浮動(dòng)?xùn)挪东@的電荷漸漸泄露完為止。程序運(yùn)算-清除循環(huán)導(dǎo)致的故障往往是永久性的。當(dāng)用戶執(zhí)行程序運(yùn)算并多次對(duì)浮動(dòng)?xùn)旁O(shè)備進(jìn)行清除時(shí),高能電荷穿過(guò)浮動(dòng)?xùn)艜?huì)對(duì)浮動(dòng)?xùn)胖車(chē)牟牧袭a(chǎn)生破壞,因此經(jīng)過(guò)一定的程序運(yùn)算-清除循環(huán)之后,設(shè)備可能會(huì)遭到損壞。通常的浮動(dòng)?xùn)旁O(shè)備往往對(duì)電荷損失問(wèn)題和程序運(yùn)算-清除循環(huán)要求具有優(yōu)良的耐受性,因而浮動(dòng)?xùn)旁O(shè)備的故障通常是由于制造缺陷引起的。在目前的技術(shù)條件下,盡管浮動(dòng)?xùn)女a(chǎn)品是由上百萬(wàn)的存儲(chǔ)單元所組成的,但是它們對(duì)電荷損失和程序運(yùn)算-清除循環(huán)的耐受性卻是由這些上百萬(wàn)存儲(chǔ)單元當(dāng)中質(zhì)量最差的數(shù)位所決定的。因此,使用糾錯(cuò)碼來(lái)保護(hù)浮動(dòng)?xùn)女a(chǎn)品可能會(huì)給這些產(chǎn)品的可靠性帶來(lái)重大的改進(jìn)。受到糾錯(cuò)碼保護(hù)的設(shè)備的可靠性特性將不再由設(shè)備中質(zhì)量最差的數(shù)位來(lái)決定。取而代之的是,設(shè)備的可靠性將由設(shè)備的固有特性來(lái)決定。這樣得到的產(chǎn)品通常情況下要可靠得多。采用糾錯(cuò)碼電路以后,即使部分存儲(chǔ)數(shù)據(jù)出現(xiàn)錯(cuò)誤的話,也可以知道正確的數(shù)據(jù)。因此,這樣以來(lái),就可以從源頭解決問(wèn)題,而不再僅僅只是對(duì)輸出進(jìn)行校正。圖5示出的是糾錯(cuò)碼自修復(fù)過(guò)程的流程圖。這種自修復(fù)過(guò)程可以依靠外部系統(tǒng)(比如計(jì)算機(jī)軟件)來(lái)啟動(dòng),也可以在外部用戶不知情的情況下自行啟動(dòng)。例如,在加電初始化過(guò)程中可以激活自修復(fù)過(guò)程的執(zhí)行,或者利用定時(shí)器信號(hào)來(lái)觸發(fā)自修復(fù)過(guò)程。假定糾錯(cuò)碼位已經(jīng)與原始數(shù)據(jù)一起被寫(xiě)入存儲(chǔ)設(shè)備當(dāng)中,那么,在自修復(fù)過(guò)程啟動(dòng)后,會(huì)從存儲(chǔ)設(shè)備中讀出一個(gè)數(shù)據(jù)集以及相關(guān)聯(lián)的糾錯(cuò)碼位。接著使用糾錯(cuò)電路來(lái)檢查原始數(shù)據(jù)當(dāng)中是否存在錯(cuò)誤。如果原始數(shù)據(jù)當(dāng)中沒(méi)有錯(cuò)誤,錯(cuò)誤檢驗(yàn)操作將進(jìn)入到下一個(gè)數(shù)據(jù)集,直到整個(gè)過(guò)程完成時(shí)為止。如果在原始數(shù)據(jù)當(dāng)中發(fā)現(xiàn)錯(cuò)誤而且糾錯(cuò)電路無(wú)法進(jìn)行校正的話,設(shè)備將會(huì)向系統(tǒng)發(fā)出告警信號(hào)。如果糾錯(cuò)電路能夠校正所發(fā)現(xiàn)的錯(cuò)誤,那么經(jīng)過(guò)校正的數(shù)據(jù)位將被寫(xiě)回到存儲(chǔ)設(shè)備當(dāng)中。如果問(wèn)題是由軟錯(cuò)誤(比如浮動(dòng)?xùn)旁O(shè)備的電荷損失問(wèn)題)引起的或者是由阿爾法(alpha)粒子引起的話,把正確數(shù)據(jù)重新寫(xiě)回到存儲(chǔ)設(shè)備當(dāng)中就有可能解決這些問(wèn)題。重新寫(xiě)入數(shù)據(jù)之后,糾錯(cuò)電路會(huì)再次讀入并檢驗(yàn)出錯(cuò)的數(shù)據(jù)。如果問(wèn)題已經(jīng)得到解決的話,錯(cuò)誤碼檢驗(yàn)操作就可以轉(zhuǎn)而對(duì)下一個(gè)數(shù)據(jù)集進(jìn)行處理。如果重新寫(xiě)入數(shù)據(jù)并沒(méi)有使問(wèn)題得到解決,那么可以利用一個(gè)可編程的冗余電路來(lái)解決由于存儲(chǔ)單元出現(xiàn)故障而引起的問(wèn)題。如果冗余電路能夠解決問(wèn)題的話,錯(cuò)誤檢驗(yàn)操作將繼續(xù)處理下一個(gè)數(shù)據(jù)集。即使冗余電路仍然不能解決問(wèn)題,產(chǎn)品還是能夠起作用,因?yàn)樵谶M(jìn)行糾錯(cuò)電路校正后用戶能夠得到正確的數(shù)據(jù)。然而,如果有太多的故障需要糾錯(cuò)電路進(jìn)行校正的話,表明設(shè)備故障已經(jīng)具有毀滅性。在糾錯(cuò)電路中,可以使用計(jì)數(shù)器來(lái)對(duì)所校正的故障數(shù)目進(jìn)行計(jì)數(shù)。如果計(jì)數(shù)數(shù)目超過(guò)某一預(yù)先確定的數(shù)值,將會(huì)產(chǎn)生告警信號(hào)以通知系統(tǒng)用戶。本發(fā)明提出的旋轉(zhuǎn)糾錯(cuò)碼計(jì)算器電路同樣適用于以上的自修復(fù)過(guò)程。而且,與已有的糾錯(cuò)電路相比,本發(fā)明提出的旋轉(zhuǎn)糾錯(cuò)碼計(jì)算器不僅能夠明顯減少由于增加糾錯(cuò)電路所需要的設(shè)備面積而且能夠提高錯(cuò)誤碼檢驗(yàn)操作的速度。
根據(jù)上面的描述,本發(fā)明還公開(kāi)了一種用于處理由大量存儲(chǔ)單元構(gòu)成的存儲(chǔ)設(shè)備的方法。該方法包括步驟A)對(duì)上述的存儲(chǔ)單元進(jìn)行錯(cuò)誤檢驗(yàn),以及步驟B)對(duì)存儲(chǔ)有錯(cuò)誤數(shù)據(jù)位的故障存儲(chǔ)單元進(jìn)行修復(fù)。在優(yōu)先權(quán)利要求當(dāng)中,修復(fù)故障存儲(chǔ)單元這一步還應(yīng)當(dāng)包括向故障存儲(chǔ)單元寫(xiě)入正確數(shù)據(jù)位來(lái)自動(dòng)修復(fù)故障存儲(chǔ)單元這一步。
雖然文中用文字和附圖的形式給出了本發(fā)明的若干具體實(shí)施例,但是應(yīng)當(dāng)認(rèn)識(shí)到本發(fā)明不僅僅局限于這些具體實(shí)施例,它在實(shí)際當(dāng)中還會(huì)有所更改和修正。在不同的應(yīng)用場(chǎng)合下,自修復(fù)過(guò)程的細(xì)節(jié)可以進(jìn)行相應(yīng)改動(dòng)。例如,有人可能不想利用重新寫(xiě)入數(shù)據(jù)的方式來(lái)解決問(wèn)題,也有人可能沒(méi)有冗余電路來(lái)解決問(wèn)題。此外,還可能引入其它類(lèi)型的問(wèn)題解決方式,比如定時(shí)調(diào)整等。另外一個(gè)可能性就是在應(yīng)激狀態(tài)下進(jìn)行自修復(fù)過(guò)程,以便探測(cè)并解決潛在的故障,從而防止這些潛在故障在今后的正常工作條件下帶來(lái)問(wèn)題。例如,可以在低電壓或者高溫下進(jìn)行自修復(fù)過(guò)程。上面的方法可以應(yīng)用于任何存儲(chǔ)設(shè)備或者系統(tǒng)。它的應(yīng)用不僅僅局限于浮動(dòng)?xùn)旁O(shè)備。
進(jìn)行糾錯(cuò)碼保護(hù)或者自修復(fù)過(guò)程將需要額外的資源,但是,由于這樣以來(lái)具有更好的產(chǎn)出以及/或者更好的可靠性,最終得到的產(chǎn)品可能具有更高的成本效率。此外,由于可靠性的改進(jìn),還有可能利用同一設(shè)備來(lái)傳送更多的數(shù)據(jù)。例如,我們定義了四個(gè)模擬水平來(lái)表示浮動(dòng)?xùn)挪东@的電荷量,從而使得一個(gè)存儲(chǔ)單元現(xiàn)在能夠用來(lái)存儲(chǔ)兩位二進(jìn)制數(shù)據(jù)而不是一位二進(jìn)制數(shù)據(jù)。圖2(a)給出了這種多水平數(shù)字?jǐn)?shù)據(jù)(MLDD)表示法的一個(gè)示例。當(dāng)浮動(dòng)?xùn)旁O(shè)備所捕獲的電荷量(Q)超過(guò)某一預(yù)先確定的值(Q3),也就是Q>Q3時(shí),將會(huì)把兩位二進(jìn)制數(shù)據(jù)(1,1)存儲(chǔ)起來(lái);當(dāng)Q3>Q>Q2時(shí),將會(huì)把二進(jìn)制數(shù)據(jù)(1,0)存儲(chǔ)起來(lái);當(dāng)Q2>Q>Q1時(shí),將會(huì)把二進(jìn)制數(shù)據(jù)(0,1)存儲(chǔ)起來(lái);當(dāng)Q<Q1時(shí),將會(huì)把二進(jìn)制數(shù)據(jù)(0,0)存儲(chǔ)起來(lái)。其中,Q3、Q2和Q1是預(yù)先確定的與讀出電路觸發(fā)電平相關(guān)的幾個(gè)值,并且有Q3>Q2>Q1。與常規(guī)存儲(chǔ)單元相比,利用這種方法可以存儲(chǔ)兩倍數(shù)量的數(shù)據(jù),與此同時(shí),出錯(cuò)容限提高了四倍。由于糾錯(cuò)碼保護(hù)機(jī)制能夠修正故障,所以這種方法有可能十分實(shí)用。本發(fā)明提出的用于解決故障的自修復(fù)機(jī)制將會(huì)使這種方法更加可靠。圖2(a)中的多水平數(shù)字?jǐn)?shù)據(jù)表示法存在一個(gè)問(wèn)題。如果初始存儲(chǔ)數(shù)據(jù)為(1,0),并且有Q3>Q>Q2的話,那么當(dāng)設(shè)備損失一些電荷達(dá)到Q2>Q>Q1時(shí),數(shù)據(jù)將變?yōu)?0,1)。這樣以來(lái),由于少量的電荷損失就導(dǎo)致兩個(gè)二進(jìn)制數(shù)位發(fā)生改變。因此,需要糾錯(cuò)碼保護(hù)能夠校正兩個(gè)數(shù)位,否則的話,就需要兩個(gè)獨(dú)立的糾錯(cuò)電路來(lái)分別保護(hù)這兩個(gè)數(shù)位。這兩種方法都將需要更多的資源。如果象圖2(b)中示出的那樣對(duì)兩位多水平數(shù)字?jǐn)?shù)據(jù)表示法重新進(jìn)行定義的話,所需要的資源將會(huì)減少。對(duì)每一個(gè)高水平Q而言,二進(jìn)制數(shù)據(jù)的變化永遠(yuǎn)不會(huì)超過(guò)一位。因此,解決少量電荷損失問(wèn)題所需的資源將會(huì)減少。同樣的方法可以適用于圖6(c)中8水平3位的例子以及圖6(d)中16水平4位的例子。
圖6(e)為電路根據(jù)圖6(b)中的表格來(lái)執(zhí)行模數(shù)數(shù)據(jù)轉(zhuǎn)換的方框圖。模擬信號(hào)(Q)通過(guò)比較器(651)與三個(gè)預(yù)先確定的值(Q3、Q2和Q1)進(jìn)行比較。例如,當(dāng)Q>Q1時(shí)第一個(gè)比較器(CP1)的輸出為1,而當(dāng)Q<Q1時(shí)第一個(gè)比較器(CP1)的輸出為0;當(dāng)Q>Q2時(shí)第二個(gè)比較器(CP2)的輸出為1,而當(dāng)Q<Q2時(shí)第二個(gè)比較器(CP2)的輸出為0;當(dāng)Q>Q3時(shí)第三個(gè)比較器(CP3)的輸出為1,而當(dāng)Q<Q3時(shí)第三個(gè)比較器(CP3)的輸出為0。這些比較器的輸出(CP3、CP2和CP1)被傳送到編碼器(652)電路。譯碼器(652)將提供兩個(gè)數(shù)字輸出位(D1,D0)。當(dāng)CP3=CP2=CP1=1時(shí)(D1,D0)的值為(1,0);當(dāng)CP3=0而CP2=CP1=1時(shí)(D1,D0)的值為(1,1);當(dāng)CP3=CP2=0而CP1=1時(shí)(D1,D0)的值為(0,1);當(dāng)CP3=CP2=CP1=0時(shí)(D1,D0)的值為(0,0)。圖6(c,d)中示出的表格也能在相似電路中得到執(zhí)行。
根據(jù)以上描述,本發(fā)明進(jìn)一步公開(kāi)了一種存儲(chǔ)設(shè)備,該存儲(chǔ)設(shè)備包括大量的存儲(chǔ)單元,而每個(gè)存儲(chǔ)單元具有一個(gè)浮動(dòng)?xùn)?,用?lái)在里面存儲(chǔ)大量的電荷。該存儲(chǔ)設(shè)備還包括一個(gè)錯(cuò)誤檢驗(yàn)邏輯電路,該錯(cuò)誤檢驗(yàn)邏輯電路包括一組同樣的順序互連的錯(cuò)誤檢驗(yàn)塊,用于檢驗(yàn)存儲(chǔ)在各個(gè)存儲(chǔ)單元中的數(shù)據(jù)是否有錯(cuò)。在一項(xiàng)優(yōu)先權(quán)利要求當(dāng)中,該存儲(chǔ)設(shè)備還進(jìn)一步包括一個(gè)多級(jí)電壓裝置,用于給浮動(dòng)?xùn)殴?yīng)至少兩個(gè)電荷水平以代表至少兩個(gè)存儲(chǔ)在存儲(chǔ)單元中的數(shù)據(jù)位。在一項(xiàng)優(yōu)先權(quán)利要求當(dāng)中,該存儲(chǔ)設(shè)備還進(jìn)一步包括一個(gè)多級(jí)電荷讀出裝置,用于讀出至少兩個(gè)存儲(chǔ)在浮動(dòng)?xùn)胖械碾姾伤揭詸z測(cè)至少兩個(gè)存儲(chǔ)在存儲(chǔ)單元中的二進(jìn)制位。在另外一項(xiàng)優(yōu)先權(quán)利要求當(dāng)中,多級(jí)電荷讀出裝置還進(jìn)一步包括一個(gè)位組合格式裝置,其用途是根據(jù)多級(jí)電荷讀出裝置讀出的電荷水平來(lái)形成位組合格式。在另外一項(xiàng)優(yōu)先權(quán)利要求當(dāng)中,位組合格式裝置還進(jìn)一步被用來(lái)依據(jù)電荷水平而形成一列位組合格式,其中,依據(jù)第一級(jí)電荷水平形成的位組合格式與依據(jù)跟第一級(jí)電荷水平順序相鄰的第二級(jí)電荷水平形成的位組合格式只有一個(gè)數(shù)據(jù)位不同。
雖然文中用文字和附圖的形式給出了本發(fā)明的若干具體實(shí)施例,但是應(yīng)當(dāng)認(rèn)識(shí)到本發(fā)明不僅僅局限于這些具體實(shí)施例,它在實(shí)際當(dāng)中還會(huì)有所更改和修正。上面的方法還可以應(yīng)用于使用其它類(lèi)型參數(shù)的其它類(lèi)型的設(shè)備。例如,Q可以為任意的模擬參數(shù)(比如電壓或者電流等),不一定就是捕獲的電荷。而且設(shè)備也不一定就是浮動(dòng)?xùn)旁O(shè)備。
另外一個(gè)實(shí)施例是應(yīng)用糾錯(cuò)碼來(lái)保護(hù)按內(nèi)容尋址的存儲(chǔ)器(CAM)。圖7(a)示出的是已有技術(shù)的按內(nèi)容尋址的存儲(chǔ)器設(shè)備的基本結(jié)構(gòu)。在一個(gè)按內(nèi)容尋址的存儲(chǔ)器設(shè)備當(dāng)中存儲(chǔ)有兩種類(lèi)型的數(shù)據(jù),一種是存儲(chǔ)在典型隨機(jī)存取存儲(chǔ)器(RAM)陣列(703)當(dāng)中的普通數(shù)字?jǐn)?shù)據(jù),另外一種是存儲(chǔ)在按內(nèi)容尋址存儲(chǔ)器陣列(701)當(dāng)中的尋址數(shù)據(jù)(在IC行業(yè)稱(chēng)為“TAG”)。圖7(b)為隨機(jī)存取存儲(chǔ)器(RAM)陣列(703)中典型存儲(chǔ)單元的示意圖。這個(gè)存儲(chǔ)單元使用四個(gè)晶體管(Mp0、Mp1、Mn0和Mn1)來(lái)形成雙穩(wěn)鎖存器以存儲(chǔ)數(shù)據(jù),另外還使用兩個(gè)晶體管(Mw和Mw#)以便于根據(jù)字線(WL)來(lái)選擇該存儲(chǔ)單元。圖7(c)為按內(nèi)容尋址存儲(chǔ)器陣列(701)中典型存儲(chǔ)單元的示意圖。這個(gè)存儲(chǔ)單元與隨機(jī)存取存儲(chǔ)器陣列的存儲(chǔ)單元基本相似,差別僅在于本存儲(chǔ)單元有四個(gè)晶體管(Mc0、Mc1、Mc0#和Mc1#)形成一個(gè)XOR門(mén)以把置于位線(BL,BL#)上的新的尋址數(shù)據(jù)與存儲(chǔ)數(shù)據(jù)(CC,CC#)進(jìn)行比較。如果存儲(chǔ)數(shù)據(jù)與位線值有差別的話,那么遺漏線(MISS#)將會(huì)被下拉。按內(nèi)容尋址存儲(chǔ)器陣列(701)的每一行都是由大量的按內(nèi)容尋址存儲(chǔ)器單元所組成,而且這些按內(nèi)容尋址存儲(chǔ)器單元的MISS#線都相互連接在一起。當(dāng)一行存儲(chǔ)起來(lái)的尋址數(shù)據(jù)當(dāng)中有任意一位與被查閱的尋址數(shù)據(jù)存在差別時(shí),MISS#線就會(huì)降低。每個(gè)尋址數(shù)據(jù)行的MISS#線(705)都是用來(lái)控制與之相應(yīng)的隨機(jī)存取存儲(chǔ)器行的字線(WL)。只有當(dāng)存儲(chǔ)有與查閱尋址數(shù)據(jù)相同的尋址地址的行被選擇時(shí),才能從隨機(jī)存取存儲(chǔ)器陣列中讀出存儲(chǔ)數(shù)據(jù)。在同時(shí)查閱大量存儲(chǔ)地址并同時(shí)利用正確地址讀出所需數(shù)據(jù)的場(chǎng)合,圖7(a)示出的這種按內(nèi)容尋址的存儲(chǔ)器設(shè)備十分有效。在進(jìn)行這種并行查閱操作時(shí),已有技術(shù)的按內(nèi)容尋址的存儲(chǔ)器都不具有糾錯(cuò)碼保護(hù)。為了確保尋址地址查閱結(jié)果的準(zhǔn)確性,有必要保證在整個(gè)查閱過(guò)程中所有尋址地址陣列都不會(huì)出現(xiàn)錯(cuò)誤位。這樣將要求按內(nèi)容尋址存儲(chǔ)器陣列的每一行都要有一個(gè)糾錯(cuò)碼計(jì)算器,而這樣做將十分昂貴,并將導(dǎo)致糾錯(cuò)碼保護(hù)不會(huì)得到實(shí)際使用。因此,已有技術(shù)的按內(nèi)容尋址的存儲(chǔ)器產(chǎn)品經(jīng)常會(huì)由于可靠性問(wèn)題(比如阿爾法粒子引起的軟錯(cuò)誤等)而造成失敗。
然而,為了使糾錯(cuò)碼保護(hù)在按內(nèi)容尋址存儲(chǔ)器的查詢操作中得到實(shí)際應(yīng)用,我們認(rèn)識(shí)到,同時(shí)對(duì)隨機(jī)存取存儲(chǔ)器陣列的每一行進(jìn)行糾錯(cuò)碼保護(hù)是不必要的。取而代之的是,因?yàn)樵诤罄m(xù)操作中只用得上相匹配的數(shù)據(jù)位流,因此在隨機(jī)存取存儲(chǔ)器查詢過(guò)程中只需要對(duì)相匹配的行進(jìn)行保護(hù)即可。圖8(a)為采用糾錯(cuò)碼對(duì)隨機(jī)存取存儲(chǔ)器進(jìn)行保護(hù)的方框圖。該隨機(jī)存取存儲(chǔ)器設(shè)備仍然具有同樣的用于尋址地址查詢的按內(nèi)容尋址存儲(chǔ)器陣列(801)以及同樣的用于存儲(chǔ)數(shù)據(jù)的隨機(jī)存取存儲(chǔ)器陣列(803)。按內(nèi)容尋址存儲(chǔ)器陣列(801)以及隨機(jī)存取存儲(chǔ)器陣列(803)所使用的存儲(chǔ)單元及其結(jié)構(gòu)與圖7(a-c)中示出的相同。對(duì)每一組尋址數(shù)據(jù)而言,通過(guò)糾錯(cuò)碼電路計(jì)算得到的糾錯(cuò)碼位也被存儲(chǔ)到一個(gè)按內(nèi)容尋址存儲(chǔ)器陣列(807)當(dāng)中。這個(gè)用于存儲(chǔ)糾錯(cuò)碼位的按內(nèi)容尋址存儲(chǔ)器陣列(807)與用于存儲(chǔ)尋址數(shù)據(jù)的按內(nèi)容尋址存儲(chǔ)器陣列(801)既可以相互分離也可以合并在一起。圖8(b)為圖8(a)中示出的按內(nèi)容尋址存儲(chǔ)器的查詢過(guò)程的流程圖。在查詢過(guò)程中,無(wú)論是尋址數(shù)據(jù)還是其糾錯(cuò)碼位都要進(jìn)行比較。如果尋址數(shù)據(jù)及其糾錯(cuò)碼位與比較數(shù)據(jù)均不匹配,那么系統(tǒng)照例進(jìn)行通告操作。如果尋址數(shù)據(jù)及其糾錯(cuò)碼位與比較數(shù)據(jù)均匹配,那么照例進(jìn)行匹配數(shù)據(jù)的數(shù)據(jù)傳輸。如果尋址數(shù)據(jù)與比較數(shù)據(jù)匹配而其糾錯(cuò)碼位與比較數(shù)據(jù)不匹配,那么就意味著這是一個(gè)錯(cuò)誤匹配,需要把這個(gè)錯(cuò)誤匹配通知系統(tǒng)并把它當(dāng)作匹配不當(dāng)進(jìn)行處理。此時(shí),通過(guò)嘗試把糾錯(cuò)電路確定的正確值重新寫(xiě)回到按內(nèi)容尋址存儲(chǔ)器陣列當(dāng)中就有可能解決這個(gè)問(wèn)題。如果在尋址數(shù)據(jù)數(shù)組中有多個(gè)尋址數(shù)據(jù)與比較數(shù)據(jù)相匹配的話,那么具有匹配糾錯(cuò)碼位的那個(gè)尋址數(shù)據(jù)才是真正的匹配數(shù)據(jù)。只有正確的數(shù)據(jù)位流才會(huì)被傳輸,此外,進(jìn)行修復(fù)錯(cuò)誤尋址數(shù)據(jù)的操作也會(huì)向系統(tǒng)發(fā)送有關(guān)這個(gè)數(shù)據(jù)錯(cuò)誤以及校正情況的通告。為了保護(hù)隨機(jī)存取存儲(chǔ)器數(shù)據(jù),隨機(jī)存取存儲(chǔ)器陣列也可以具有自己的糾錯(cuò)碼位。圖8(c)示出的是另外一個(gè)例子,在這個(gè)例子當(dāng)中,糾錯(cuò)碼位是存儲(chǔ)在一個(gè)隨機(jī)存取存儲(chǔ)器陣列當(dāng)中,而不是存儲(chǔ)在一個(gè)按內(nèi)容尋址存儲(chǔ)器陣列當(dāng)中。查詢過(guò)程示于圖8(d)中。在尋址數(shù)據(jù)查詢過(guò)程中,只對(duì)尋址數(shù)據(jù)進(jìn)行比較。如果尋址數(shù)據(jù)與比較數(shù)據(jù)不匹配的話,那么系統(tǒng)照例進(jìn)行發(fā)現(xiàn)不匹配時(shí)的通告操作。如果尋址數(shù)據(jù)與比較數(shù)據(jù)匹配的話,那么會(huì)從隨機(jī)存取存儲(chǔ)器陣列中讀出尋址數(shù)據(jù)以及糾錯(cuò)碼位。這個(gè)糾錯(cuò)碼位可以只用于保護(hù)尋址數(shù)據(jù)。此外,還可以在糾錯(cuò)碼計(jì)算當(dāng)中既包含數(shù)據(jù)本身也包含其尋址數(shù)據(jù),從而對(duì)二者都進(jìn)行保護(hù)。在糾錯(cuò)碼計(jì)算之后,如果沒(méi)有檢測(cè)到錯(cuò)誤,那么系統(tǒng)照例進(jìn)行數(shù)據(jù)傳輸并聲稱(chēng)命中尋址數(shù)據(jù)。如果糾錯(cuò)電路檢測(cè)到錯(cuò)誤,那么需要把這個(gè)錯(cuò)誤匹配通知系統(tǒng)并把它當(dāng)作匹配不當(dāng)進(jìn)行處理。此時(shí),通過(guò)嘗試把糾錯(cuò)電路確定的正確值重新寫(xiě)回到按內(nèi)容尋址存儲(chǔ)器陣列以及隨機(jī)存取存儲(chǔ)器陣列當(dāng)中就有可能解決這個(gè)問(wèn)題。圖8(c)中示出的例子所使用的資源要比圖8(a)中示出的例子少。當(dāng)在尋址數(shù)據(jù)數(shù)組中發(fā)現(xiàn)多個(gè)與比較數(shù)據(jù)匹配的尋址數(shù)據(jù)時(shí),圖8(c)中示出的結(jié)構(gòu)不能區(qū)分出哪個(gè)尋址數(shù)據(jù)才是真正的匹配數(shù)據(jù)。
根據(jù)上面的描述,本發(fā)明進(jìn)一步公開(kāi)了一種按內(nèi)容尋址的存儲(chǔ)器(CAM)設(shè)備。該CAM設(shè)備包括大量存儲(chǔ)單元陣列,用于存儲(chǔ)陣列內(nèi)容,在查詢內(nèi)容與陣列內(nèi)容相匹配的基礎(chǔ)上,陣列內(nèi)容可以用來(lái)對(duì)某個(gè)陣列進(jìn)行數(shù)據(jù)存取。該CAM設(shè)備進(jìn)一步還包括一個(gè)錯(cuò)誤檢驗(yàn)邏輯電路,用于檢驗(yàn)每個(gè)存儲(chǔ)單元陣列的數(shù)據(jù)存取是否有錯(cuò)。在一項(xiàng)優(yōu)先權(quán)利要求當(dāng)中,該CAM設(shè)備進(jìn)一步還包括一個(gè)錯(cuò)碼存儲(chǔ)裝置,用于存儲(chǔ)由用于檢驗(yàn)各個(gè)存儲(chǔ)單元陣列的數(shù)據(jù)存取是否有錯(cuò)的錯(cuò)誤檢驗(yàn)邏輯電路所使用的各個(gè)存儲(chǔ)單元陣列的錯(cuò)碼檢驗(yàn)位。在另外一項(xiàng)優(yōu)先權(quán)利要求中,每個(gè)存儲(chǔ)單元陣列還進(jìn)一步存儲(chǔ)了一個(gè)由用于檢驗(yàn)各個(gè)存儲(chǔ)單元陣列的數(shù)據(jù)存取是否有錯(cuò)的錯(cuò)誤檢驗(yàn)邏輯電路所生成的錯(cuò)碼檢驗(yàn)位。在另外一項(xiàng)優(yōu)先權(quán)利要求中,錯(cuò)碼存儲(chǔ)裝置是一種隨機(jī)存取存儲(chǔ)器(RAM)設(shè)備,用于存儲(chǔ)由用于檢驗(yàn)各個(gè)存儲(chǔ)單元陣列的數(shù)據(jù)存取是否有錯(cuò)的錯(cuò)誤檢驗(yàn)邏輯電路所使用的各個(gè)存儲(chǔ)單元陣列的錯(cuò)碼檢驗(yàn)位。
雖然文中用文字和附圖的形式給出了本發(fā)明的若干具體實(shí)施例,但是應(yīng)當(dāng)認(rèn)識(shí)到本發(fā)明不僅僅局限于這些具體實(shí)施例,它在實(shí)際當(dāng)中還會(huì)有所更改和修正。因此,可將本申請(qǐng)案的權(quán)利要求解釋成涵蓋在本發(fā)明原始精神與領(lǐng)域下的所有更改與修正。
權(quán)利要求
1.一種用于改變糾錯(cuò)碼(ECC)邏輯電路配置的方法,以便于對(duì)數(shù)據(jù)寬度不斷變化的數(shù)據(jù)進(jìn)行錯(cuò)誤檢驗(yàn),該方法包含順序互連一組N1個(gè)相同的錯(cuò)誤檢驗(yàn)塊,其中N1是第一個(gè)正整數(shù);并且通過(guò)將上述的糾錯(cuò)碼邏輯電路改變?yōu)橐唤M由N2個(gè)上述的相同的錯(cuò)誤檢驗(yàn)塊順序互連組成的電路來(lái)對(duì)上述的糾錯(cuò)碼邏輯電路進(jìn)行重新配置,其中N2為第二個(gè)正整數(shù)。
2.在權(quán)利要求1所述的方法當(dāng)中上述的順序地互連一組N1個(gè)相同的錯(cuò)誤檢驗(yàn)塊這一步指的是互連上述的只介于順序相鄰兩個(gè)用于傳輸只介于相鄰兩個(gè)錯(cuò)誤檢驗(yàn)塊之間信號(hào)的塊之間的N1個(gè)錯(cuò)誤檢驗(yàn)塊;另外上述的通過(guò)將上述的糾錯(cuò)碼邏輯電路改變?yōu)橐唤M由N2個(gè)錯(cuò)誤檢驗(yàn)塊順序互連組成的電路來(lái)對(duì)上述的糾錯(cuò)碼邏輯電路進(jìn)行重新配置這一步指的是互連上述的只介于順序相鄰兩個(gè)用于傳輸只介于相鄰兩個(gè)錯(cuò)誤檢驗(yàn)塊之間信號(hào)的塊之間的N2個(gè)錯(cuò)誤檢驗(yàn)塊。
3.一種對(duì)由大量存儲(chǔ)單元所組成的存儲(chǔ)設(shè)備進(jìn)行操作的方法,該方法包含對(duì)上述的存儲(chǔ)單元進(jìn)行錯(cuò)誤檢驗(yàn);以及對(duì)存儲(chǔ)有錯(cuò)誤數(shù)據(jù)位的存儲(chǔ)單元進(jìn)行修復(fù)。
4.在權(quán)利要求3所述的方法當(dāng)中上述的對(duì)出錯(cuò)存儲(chǔ)單元進(jìn)行修復(fù)這一步進(jìn)一步包含通過(guò)把正確數(shù)據(jù)位寫(xiě)入到上述的出錯(cuò)存儲(chǔ)單元中來(lái)自動(dòng)對(duì)上述的出錯(cuò)存儲(chǔ)單元進(jìn)行修復(fù)這一步。
5.一種由大量存儲(chǔ)單元組成的存儲(chǔ)設(shè)備,每個(gè)存儲(chǔ)單元有一個(gè)浮動(dòng)?xùn)?,用于在里面存?chǔ)大量的電荷,所述存儲(chǔ)設(shè)備進(jìn)一步包含一個(gè)由一組相同錯(cuò)誤檢驗(yàn)塊順序互連組成的用于檢驗(yàn)上述存儲(chǔ)單元數(shù)據(jù)存儲(chǔ)是否有錯(cuò)的錯(cuò)誤檢驗(yàn)邏輯電路。
6.如權(quán)利要求5所述的存儲(chǔ)設(shè)備,進(jìn)一步包含一個(gè)多級(jí)電壓裝置,用于給上述的浮動(dòng)?xùn)殴?yīng)至少兩個(gè)電荷水平以代表至少兩個(gè)存儲(chǔ)在上述的存儲(chǔ)單元中的數(shù)據(jù)位。
7.如權(quán)利要求6所述的存儲(chǔ)設(shè)備,進(jìn)一步包含一個(gè)多級(jí)電荷讀出裝置,用于讀出至少兩個(gè)存儲(chǔ)在上述的浮動(dòng)?xùn)胖械碾姾伤揭詸z測(cè)至少兩個(gè)存儲(chǔ)在上述的存儲(chǔ)單元中的二進(jìn)制位。
8.在權(quán)利要求7所述的存儲(chǔ)設(shè)備中上述的多級(jí)電荷讀出裝置還進(jìn)一步包括一個(gè)位組合格式裝置,其用途是根據(jù)上述的多級(jí)電荷讀出裝置讀出的電荷水平來(lái)形成位組合格式。
9.在權(quán)利要求7所述的存儲(chǔ)設(shè)備中上述的位組合格式裝置還進(jìn)一步被用來(lái)依據(jù)上述的電荷水平而形成一列位組合格式,其中,依據(jù)第一級(jí)電荷水平形成的位組合格式與依據(jù)跟第一級(jí)電荷水平順序相鄰的第二級(jí)電荷水平形成的位組合格式只有一個(gè)數(shù)據(jù)位不同。
10.一種由大量存儲(chǔ)單元所組成的存儲(chǔ)設(shè)備,每個(gè)存儲(chǔ)單元具有至少兩種存儲(chǔ)單元特征狀態(tài),每種存儲(chǔ)單元特征狀態(tài)代表一種存儲(chǔ)于其中的位組合格式,上述的存儲(chǔ)設(shè)備還進(jìn)一步包含一個(gè)由一組相同錯(cuò)誤檢驗(yàn)塊順序互連組成的用于檢驗(yàn)上述存儲(chǔ)單元數(shù)據(jù)存儲(chǔ)是否有錯(cuò)的錯(cuò)誤檢驗(yàn)邏輯電路。
11.一種按內(nèi)容尋址的存儲(chǔ)器(CAM)設(shè)備,該CAM設(shè)備包含大量存儲(chǔ)單元陣列,用于存儲(chǔ)陣列內(nèi)容,在查詢內(nèi)容與陣列內(nèi)容相匹配的基礎(chǔ)上,陣列內(nèi)容可以用來(lái)對(duì)某個(gè)陣列進(jìn)行數(shù)據(jù)存取。上述的CAM設(shè)備進(jìn)一步還包含一個(gè)錯(cuò)誤檢驗(yàn)邏輯電路,用于檢驗(yàn)上述的每個(gè)存儲(chǔ)單元陣列的數(shù)據(jù)存取是否有錯(cuò)。
12.如權(quán)利要求11所述的按內(nèi)容尋址的存儲(chǔ)器(CAM)設(shè)備,進(jìn)一步還包含一個(gè)錯(cuò)碼存儲(chǔ)裝置,用于存儲(chǔ)由上述的用于檢驗(yàn)上述的各個(gè)存儲(chǔ)單元陣列的數(shù)據(jù)存取是否有錯(cuò)的錯(cuò)誤檢驗(yàn)邏輯電路所使用的上述的各個(gè)存儲(chǔ)單元陣列的錯(cuò)碼檢驗(yàn)位。
13.在權(quán)利要求11所述的按內(nèi)容尋址的存儲(chǔ)器(CAM)設(shè)備當(dāng)中上述的每個(gè)存儲(chǔ)單元陣列還進(jìn)一步存儲(chǔ)了一個(gè)由上述的用于檢驗(yàn)上述的各個(gè)存儲(chǔ)單元陣列的數(shù)據(jù)存取是否有錯(cuò)的錯(cuò)誤檢驗(yàn)邏輯電路所生成的錯(cuò)碼檢驗(yàn)位。
14.在權(quán)利要求11所述的按內(nèi)容尋址的存儲(chǔ)器(CAM)設(shè)備當(dāng)中上述的錯(cuò)碼存儲(chǔ)裝置是一種隨機(jī)存取存儲(chǔ)器(RAM)設(shè)備,用于存儲(chǔ)由上述的用于檢驗(yàn)上述的各個(gè)存儲(chǔ)單元陣列的數(shù)據(jù)存取是否有錯(cuò)的錯(cuò)誤檢驗(yàn)邏輯電路所使用的上述的各個(gè)存儲(chǔ)單元陣列的錯(cuò)碼檢驗(yàn)位。
15.一種由大量存儲(chǔ)單元組成的存儲(chǔ)設(shè)備,每個(gè)存儲(chǔ)單元有一個(gè)浮動(dòng)?xùn)?,用于在里面存?chǔ)大量的電荷,所述存儲(chǔ)設(shè)備進(jìn)一步包含一個(gè)多級(jí)電荷讀出裝置,用于讀出至少兩個(gè)存儲(chǔ)在上述的浮動(dòng)?xùn)胖械碾姾伤阶鳛橐涣须姾伤?,以檢測(cè)至少兩個(gè)存儲(chǔ)在上述的存儲(chǔ)單元中的用于記錄大量位組合格式的二進(jìn)制位。上述的多級(jí)電荷讀出裝置還進(jìn)一步包括一個(gè)位組合格式裝置,其用途是根據(jù)上述的一列電荷水平來(lái)形成一列位組合格式。其中,依據(jù)第一級(jí)電荷水平形成的位組合格式與依據(jù)跟第一級(jí)電荷水平順序相鄰的第二級(jí)電荷水平形成的位組合格式只有一個(gè)數(shù)據(jù)位不同。
16.一種模擬信號(hào)讀出設(shè)備,包含一個(gè)模擬信號(hào)讀出裝置,用于讀出一列模擬信號(hào)水平以形成一列與上述模擬信號(hào)水平相對(duì)應(yīng)的位組合格式,其中,上述的每一個(gè)信號(hào)水平均代表一種位組合格式,和另外一個(gè)代表相鄰信號(hào)水平的位組合格式相比較而言,二者只有一個(gè)數(shù)據(jù)位不同。
全文摘要
本發(fā)明公開(kāi)了一種方法,用于改變糾錯(cuò)碼(ECC)邏輯電路的配置以對(duì)數(shù)據(jù)寬度不斷變化的數(shù)據(jù)進(jìn)行錯(cuò)誤檢驗(yàn)。該方法包括如下步驟A)順序地互連一組N1個(gè)相同的錯(cuò)誤檢驗(yàn)塊,其中N1是第一個(gè)正整數(shù)。并且,該方法還包括一個(gè)步驟B)通過(guò)將糾錯(cuò)碼邏輯電路改變?yōu)橐唤M由N2個(gè)相同的錯(cuò)誤檢驗(yàn)塊順序互連組成的電路來(lái)對(duì)糾錯(cuò)碼邏輯電路進(jìn)行重新配置,其中N2為第二個(gè)正整數(shù)。在優(yōu)先權(quán)利要求當(dāng)中,順序地互連一組N1個(gè)相同的錯(cuò)誤檢驗(yàn)塊這一步指的是互連只介于順序相鄰兩個(gè)用于傳輸只介于相鄰兩個(gè)錯(cuò)誤檢驗(yàn)塊之間信號(hào)的塊之間的N1個(gè)錯(cuò)誤檢驗(yàn)塊。另外,通過(guò)將糾錯(cuò)碼邏輯電路改變?yōu)橐唤M由N2個(gè)相同的錯(cuò)誤檢驗(yàn)塊順序互連組成的電路來(lái)對(duì)糾錯(cuò)碼邏輯電路進(jìn)行重新配置這一步指的是互連只介于順序相鄰兩個(gè)用于傳輸只介于相鄰兩個(gè)錯(cuò)誤檢驗(yàn)塊之間信號(hào)的塊之間的N2個(gè)錯(cuò)誤檢驗(yàn)塊。
文檔編號(hào)G11C7/00GK1409492SQ0210449
公開(kāi)日2003年4月9日 申請(qǐng)日期2002年3月25日 優(yōu)先權(quán)日2001年9月7日
發(fā)明者蕭正杰 申請(qǐng)人:蕭正杰
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
偏关县| 衢州市| 仙游县| 丰县| 洪洞县| 美姑县| 嘉荫县| 宜城市| 奇台县| 绩溪县| 汝州市| 怀柔区| 互助| 中西区| 博白县| 寻乌县| 府谷县| 涟源市| 武平县| 英超| 正蓝旗| 白河县| 柏乡县| 甘南县| 龙州县| 仁化县| 汉川市| 当涂县| 宜丰县| 晋中市| 毕节市| 宜川县| 衡阳市| 方正县| 东乌珠穆沁旗| 天祝| 苍南县| 弥勒县| 福州市| 颍上县| 广宁县|