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

集成電路的順序存儲(chǔ)電路內(nèi)單次事件顛覆錯(cuò)誤的糾正的制作方法

文檔序號(hào):6781318閱讀:228來(lái)源:國(guó)知局
專(zhuān)利名稱(chēng):集成電路的順序存儲(chǔ)電路內(nèi)單次事件顛覆錯(cuò)誤的糾正的制作方法
技術(shù)領(lǐng)域
本發(fā)明的技術(shù)領(lǐng)域涉及集成電路的順序存儲(chǔ)電路中的軟錯(cuò)誤或單次事件顛覆錯(cuò) 誤(single event upset error)的糾正,例如因?yàn)橹凶踊虬柗W幼矒羲a(chǎn)生的錯(cuò)誤。
背景技術(shù)
軟錯(cuò)誤或單次事件顛覆錯(cuò)誤(SEU)是電路內(nèi)節(jié)點(diǎn)的擾亂,起因是高能中子或阿爾 法粒子撞擊在硅基板上。這種撞擊可在例如處理器的集成電路內(nèi)的敏感節(jié)點(diǎn)處產(chǎn)生瞬間電 壓脈沖或狀態(tài)的變更。由于SEU,錯(cuò)誤可發(fā)生,其中它導(dǎo)致在確定集成電路的架構(gòu)狀態(tài)的狀 態(tài)保持元件中的狀態(tài)改變,這些元件例如處理器的架構(gòu)狀態(tài)寄存器、寄存器文件、RAM陣列、 或控制邏輯內(nèi)的鎖存器(latch)和觸發(fā)器(flip-flop)。在本文檔的上下文中,我們將由于 SEU的錯(cuò)誤視為集成電路內(nèi)部任何狀態(tài)保持元件中的狀態(tài)翻轉(zhuǎn)。 用于保護(hù)如SRAM陣列的此類(lèi)元件的傳統(tǒng)技術(shù)是通過(guò)使用錯(cuò)誤糾正技術(shù),例如錯(cuò) 誤糾正碼或ECC可用來(lái)標(biāo)記錯(cuò)誤,然后糾正它們。由于SRAM的高密度,這種技術(shù)非常有效, 因?yàn)橐话銇?lái)說(shuō)這些存儲(chǔ)器內(nèi)部的SEU只導(dǎo)致單次比特翻轉(zhuǎn),這可輕易用ECC來(lái)糾正。不過(guò), 由于遍及集成電路的觸發(fā)器和鎖存器的空間擾亂以及由于這些分散的邏輯中的中子和粒 子撞擊會(huì)導(dǎo)致多個(gè)順序存儲(chǔ)電路內(nèi)的分開(kāi)的比特失效的事實(shí),ECC不適合糾正這些錯(cuò)誤。
隨著處理技術(shù)的縮小,鎖存器與觸發(fā)器對(duì)于軟錯(cuò)誤或這些SEU的敏感性隨之增 加,并且確實(shí)在45nm它能表現(xiàn)得與SRAM的敏感性極為相似。圖1顯示在標(biāo)稱(chēng)電壓,鎖存器 對(duì)于此類(lèi)SEU只比SRAM健壯20 % 。 隨著這種裝置對(duì)SEU的敏感性增加,最近提出許多技術(shù)來(lái)解決此問(wèn)題。在面積、性
能、功率開(kāi)銷(xiāo)以及這種附加健壯性方面通常存在權(quán)衡。 存在可解決此問(wèn)題的三種主要方式。 第一,觸發(fā)器/鎖存器可設(shè)計(jì)成使得更難以因SEU而翻轉(zhuǎn)單元。 第二,可設(shè)計(jì)檢測(cè)這種軟錯(cuò)誤的裝置。在這種裝置中,如果數(shù)據(jù)因?yàn)镾EU而損壞,
則可檢測(cè)到該情況并且因此可通過(guò)從其清除錯(cuò)誤由系統(tǒng)來(lái)改正錯(cuò)誤。 第三,該裝置可設(shè)計(jì)成即使SEU翻轉(zhuǎn)單元之一時(shí),輸出也不會(huì)改變。 一般而言,這 涉及在裝置內(nèi)增加冗余來(lái)檢測(cè)與糾正錯(cuò)誤。 第一項(xiàng)技術(shù)具有開(kāi)銷(xiāo),例如重新調(diào)整大小、對(duì)節(jié)點(diǎn)新增容量以及新增與之相關(guān)的 反饋。 第二項(xiàng)技術(shù)涉及對(duì)系統(tǒng)增加冗余,并且將存儲(chǔ)值與冗余值比較,由此檢測(cè)錯(cuò)誤。錯(cuò) 誤檢測(cè)觸發(fā)器在2008年3月27日提交的共同轉(zhuǎn)讓的共同未決的美國(guó)申請(qǐng)US12/078189中 描述,其完整內(nèi)容由此通過(guò)引用結(jié)合。
此項(xiàng)技術(shù)有兩個(gè)主要問(wèn)題。 首先,此技術(shù)檢測(cè)錯(cuò)誤,但是并未糾正錯(cuò)誤。因此,需要進(jìn)行系統(tǒng)級(jí)別的復(fù)位來(lái)清 除錯(cuò)誤。這在性能與功率方面耗費(fèi)極大。 第二,該技術(shù)會(huì)檢測(cè)到假陽(yáng)性。例如,冗余元件中發(fā)生的SEU將產(chǎn)生錯(cuò)誤信號(hào),并且無(wú)法區(qū)分真與偽錯(cuò)誤。 本發(fā)明可解決所有這些問(wèn)題。 第三項(xiàng)技術(shù)具有檢測(cè)與糾正錯(cuò)誤而避免需要系統(tǒng)級(jí)別復(fù)位的優(yōu)點(diǎn)。這種錯(cuò)誤糾正技術(shù)在S. Mitra、 N. Seifert、 M. Zhang、 Q. Shi和K. S. Kim等
人 的"Sequential Element Design with Built_In Soft ErrorResilience,, (IEEE
Transactions on VLSI Systems, Vol. 14, No. 12,2006年12月)中描述。 圖2顯示這種觸發(fā)器的示例。其思想是復(fù)制主和從鎖存器,并且使用C元件比較
兩個(gè)輸出。當(dāng)新數(shù)據(jù)鎖存在鎖存器PH2,則它也鎖存在鎖存器LA內(nèi)。類(lèi)似地,當(dāng)數(shù)據(jù)鎖存在
鎖存器rai內(nèi),則它也鎖存在鎖存器lb內(nèi)。換言之,鎖存器la/lb是鎖存器ra2/ra1內(nèi)鎖
存器中的實(shí)際數(shù)據(jù)的影子。C元件具有只在兩個(gè)輸入(01和02)匹配時(shí)才使新數(shù)據(jù)傳播、否 則保留舊數(shù)據(jù)的特性。因此,若在任一個(gè)鎖存器內(nèi)有軟錯(cuò)誤,則不會(huì)傳播該錯(cuò)誤并且由該保 持者鎖存器在輸出保持先前的數(shù)據(jù)。 除了異步C元件以外,圖2的設(shè)計(jì)還具有五個(gè)順序元件(四個(gè)主從式鎖存器以及 保持者鎖存器)。 備選的錯(cuò)誤糾正技術(shù)是三重模塊冗余方案,其中復(fù)制存儲(chǔ)元件三次并且執(zhí)行投票 來(lái)輸出大多數(shù)支持的數(shù)據(jù)值。這種技術(shù)在A. Drake、 A. J. Kleinosowski、 A. K. Martin的"A Self-Correcting Soft ErrorTolerant Flop-Flop"(第12屆VLSI設(shè)計(jì)NASA會(huì)議,2005 年)中描述,并且在圖3中示出。Drake的方案是反饋糾正的示例,其中在設(shè)計(jì)中鎖存回?cái)?shù) 據(jù)來(lái)進(jìn)行糾正。 在Drake等人的方案中,在SEU的情況下,時(shí)鐘信號(hào)經(jīng)過(guò)修改來(lái)讓大多數(shù)值回到系
統(tǒng)中。修改時(shí)鐘路徑可造成其它問(wèn)題,例如設(shè)置違反(set-up violation)。例如,在時(shí)鐘的
上升沿附近發(fā)生SEU的情況下,觸發(fā)器正忙于糾正錯(cuò)誤時(shí)可能不會(huì)取得新數(shù)據(jù)。 期望有一種可檢測(cè)并且糾正SEU、同時(shí)限制例如增加面積、功率等等的附加開(kāi)銷(xiāo)的
順序存儲(chǔ)元件。

發(fā)明內(nèi)容
從一個(gè)方面來(lái)看,本發(fā)明提供用于集成電路的順序存儲(chǔ)電路,包括存儲(chǔ)電路,所述 存儲(chǔ)電路包含第一存儲(chǔ)元件,用于在時(shí)鐘信號(hào)的第一相位期間,存儲(chǔ)由所述順序存儲(chǔ)電路 接收的輸入數(shù)據(jù)值的第一指示;第二存儲(chǔ)元件,耦合到所述第一存儲(chǔ)元件的輸出,用于在所 述時(shí)鐘信號(hào)的第二相位期間存儲(chǔ)所述輸入數(shù)據(jù)值的第二指示;以及錯(cuò)誤檢測(cè)電路,用于檢 測(cè)所述第一和第二存儲(chǔ)元件的任一個(gè)中的單次事件顛覆錯(cuò)誤,其包含兩個(gè)附加存儲(chǔ)元件, 用于響應(yīng)從所述時(shí)鐘信號(hào)得出的脈沖信號(hào)而分別存儲(chǔ)所述輸入數(shù)據(jù)值的第三和第四指示; 比較電路,用于比較所述輸入數(shù)據(jù)值的所述第三和第四指示;以及進(jìn)一步的比較電路,用于 在所述時(shí)鐘信號(hào)的第一相位期間比較所述第一指示和所述第三和第四指示的至少之一,并 且用于在所述時(shí)鐘信號(hào)的第二相位期間比較所述第二指示和所述第三和第四指示的至少 之一;以及輸出電路,用于糾正所述存儲(chǔ)電路中任何檢測(cè)到的錯(cuò)誤,并且用于輸出輸出值; 所述輸出電路響應(yīng)所述比較電路的不匹配,在所述時(shí)鐘信號(hào)的第一相位期間輸出所述第一 指示以及在所述時(shí)鐘信號(hào)的所述第二相位期間輸出所述第二指示;以及所述輸出電路響應(yīng) 所述比較電路的匹配,根據(jù)由所述進(jìn)一步的比較電路執(zhí)行的比較來(lái)輸出值;所述輸出電路響應(yīng)所述時(shí)鐘信號(hào)的第一相位期間所述進(jìn)一步的比較電路的匹配,在所述第一時(shí)鐘周期期
間輸出所述第一指示,以及響應(yīng)不匹配,輸出所述第一指示的反相值;以及所述輸出電路響
應(yīng)所述時(shí)鐘信號(hào)的第二相位期間所述進(jìn)一步的比較電路的匹配,在所述時(shí)鐘信號(hào)的所述第
二相位期間輸出所述第二指示,以及響應(yīng)不匹配,輸出所述第二指示的反相值。 根據(jù)本發(fā)明,可檢測(cè)到發(fā)生在順序存儲(chǔ)電路的第一存儲(chǔ)元件或第二存儲(chǔ)元件中的
單次事件顛覆錯(cuò)誤,并且實(shí)時(shí)糾正而不改變?cè)O(shè)計(jì)的任何鎖存器中的值。實(shí)際上,糾正只發(fā)生
在最后復(fù)用器階段,這產(chǎn)生前饋錯(cuò)誤糾正系統(tǒng)并且避免需要將錯(cuò)誤糾正反饋到系統(tǒng)中。這
提供有效率的系統(tǒng),其反應(yīng)能快過(guò)將錯(cuò)誤反饋給系統(tǒng)中并且改變鎖存器內(nèi)值的系統(tǒng)。而且,
因?yàn)殒i存器不需要翻轉(zhuǎn),所以功率需求較低。該系統(tǒng)簡(jiǎn)單利用以下事實(shí),即如果錯(cuò)誤存儲(chǔ)在
鎖存器中之一中,則不輸出其值,而是簡(jiǎn)單地輸出其值的反相就可提供正確應(yīng)答。因此,并
不需要改變所存儲(chǔ)的值。 因而根據(jù)本發(fā)明,發(fā)生在順序存儲(chǔ)電路的第一存儲(chǔ)元件或第二存儲(chǔ)元件中的單次
事件顛覆錯(cuò)誤可以使用兩個(gè)附加存儲(chǔ)元件以及某些比較電路來(lái)檢測(cè)和糾正。 根據(jù)本發(fā)明,附加存儲(chǔ)元件由從用來(lái)控制第一和第二存儲(chǔ)元件的時(shí)鐘信號(hào)得出的
脈沖信號(hào)來(lái)驅(qū)動(dòng)。特別是在這種脈沖信號(hào)發(fā)生時(shí),附加存儲(chǔ)元件存儲(chǔ)由順序存儲(chǔ)電路所接
收的輸入數(shù)據(jù)值的指示。此輸入數(shù)據(jù)值的指示可以是數(shù)據(jù)值本身,或可以是某些其它指示,
例如數(shù)據(jù)值的反相。 然后使用比較電路形式的錯(cuò)誤檢測(cè)電路來(lái)檢測(cè)任何存儲(chǔ)元件中的單次事件顛覆 錯(cuò)誤,若檢測(cè)到兩個(gè)附加存儲(chǔ)元件的任一個(gè)中有這種錯(cuò)誤,則不進(jìn)行錯(cuò)誤糾正,因?yàn)檫@樣的 錯(cuò)誤實(shí)際上是偽錯(cuò)誤,其原因是這些附加存儲(chǔ)元件是冗余元件,并且不存儲(chǔ)輸出的數(shù)據(jù)。這 樣,此電路能夠檢測(cè)偽錯(cuò)誤并且因而不繼續(xù)采取動(dòng)作。 如果在第一或第二存儲(chǔ)元件中發(fā)生錯(cuò)誤,則在時(shí)鐘信號(hào)的第一相位期間,錯(cuò)誤檢 測(cè)電路可通過(guò)將它與附加存儲(chǔ)元件的任一個(gè)中存儲(chǔ)的值相比較,來(lái)檢測(cè)第一存儲(chǔ)元件中的 單次事件顛覆錯(cuò)誤。第一存儲(chǔ)元件內(nèi)存儲(chǔ)的值是在時(shí)鐘信號(hào)的第一相位期間輸出的值,因 此此時(shí)單次翻轉(zhuǎn)錯(cuò)誤的檢測(cè)使當(dāng)前正在輸出的值能夠被糾正(如果有必要的話(huà))。在時(shí)鐘 信號(hào)的第二相位期間,電路通過(guò)將第二存儲(chǔ)元件存儲(chǔ)的值與附加存儲(chǔ)元件任一個(gè)中的值之 一進(jìn)行比較,來(lái)檢測(cè)第二存儲(chǔ)元件中的錯(cuò)誤。存儲(chǔ)值之間的任何差異指示第二存儲(chǔ)元件內(nèi) 的錯(cuò)誤,然后在時(shí)鐘周期的第二相位期間輸出的這個(gè)值可以被糾正。 這樣,若在存儲(chǔ)數(shù)據(jù)的兩個(gè)順序存儲(chǔ)元件的任一個(gè)中發(fā)生單次事件顛覆錯(cuò)誤,則 可糾正由電路輸出的數(shù)據(jù)。 在某些實(shí)施例中,所述順序存儲(chǔ)電路包含錯(cuò)誤檢測(cè)信號(hào)產(chǎn)生電路,用來(lái)組合所述 比較電路與該進(jìn)一步的比較電路的輸出,以產(chǎn)生要發(fā)送到所述輸出電路的錯(cuò)誤或no—error 信號(hào),其中所述比較電路包含響應(yīng)所述第三和第四指示的差異來(lái)輸出errorjiiask(錯(cuò)誤 屏蔽)信號(hào)至所述錯(cuò)誤檢測(cè)信號(hào)產(chǎn)生電路的電路,所述錯(cuò)誤檢測(cè)信號(hào)產(chǎn)生電路響應(yīng)所述 error_mask信號(hào)來(lái)產(chǎn)生所述no_error信號(hào),所述輸出電路響應(yīng)所述no_error信號(hào)不糾正 所述存儲(chǔ)電路的輸出,所述存儲(chǔ)電路的所述輸出包含所述時(shí)鐘周期的第一相位期間的所述 第一指示以及所述時(shí)鐘周期的第二相位期間的所述第二指示。 若由附加存儲(chǔ)元件輸出的第三和第四指示存在差異,這指示在附加存儲(chǔ)元件中已 經(jīng)發(fā)生了單次事件顛覆錯(cuò)誤,這實(shí)際上是偽錯(cuò)誤,因?yàn)檫@些元件內(nèi)的數(shù)據(jù)值是不用作輸出數(shù)據(jù)、而是僅用來(lái)檢測(cè)第一和第二存儲(chǔ)元件內(nèi)錯(cuò)誤的冗余值。因此,產(chǎn)生error—mask信號(hào), 其向輸出電路指示不應(yīng)對(duì)數(shù)據(jù)值輸出執(zhí)行糾正。應(yīng)該注意,以此方式,該電路能夠檢測(cè)單次 事件顛覆錯(cuò)誤,但是無(wú)法檢測(cè)兩個(gè)這種錯(cuò)誤發(fā)生,因?yàn)榇祟?lèi)錯(cuò)誤發(fā)生在附加存儲(chǔ)元件內(nèi),使 得它們無(wú)法再用于檢測(cè)第一和第二存儲(chǔ)元件內(nèi)的錯(cuò)誤。因此,如果在那也發(fā)生錯(cuò)誤,則它無(wú) 法被糾正。但是,這些軟錯(cuò)誤一般被稱(chēng)為單次事件顛覆錯(cuò)誤,因?yàn)樗鼈冇捎谥凶踊虬柗?粒子撞擊造成并且通常作為單次事件發(fā)生。因此,一般來(lái)說(shuō)無(wú)法檢測(cè)時(shí)鐘周期內(nèi)發(fā)生的兩 個(gè)錯(cuò)誤并不是問(wèn)題,因?yàn)橛|發(fā)器與鎖存器中錯(cuò)誤如此發(fā)生確實(shí)很少(由于它們的大布局面 積)。 在某些實(shí)施例中,所述錯(cuò)誤檢測(cè)信號(hào)產(chǎn)生電路響應(yīng)由所述進(jìn)一步的比較電路所 檢測(cè)的所述存儲(chǔ)電路的輸出和所述第三或第四指示的輸出間的差異,以及響應(yīng)未接收到 error—mask信號(hào)來(lái)產(chǎn)生所述錯(cuò)誤信號(hào),所述輸出電路響應(yīng)所述錯(cuò)誤信號(hào),通過(guò)將所述輸出 反相來(lái)糾正所述存儲(chǔ)電路的輸出。 附加存儲(chǔ)指示的任一個(gè)的輸出與輸出電路所輸出指示間的差異指示該值輸出中 的錯(cuò)誤,并且這只要通過(guò)將其反相就可糾正。因此,僅值輸出被改變并且不需改變存儲(chǔ)元件 內(nèi)存儲(chǔ)的值。 在某些實(shí)施例中,用于將數(shù)據(jù)從所述存儲(chǔ)電路輸出至所述輸出電路的數(shù)據(jù)輸出路 徑以及包含所述進(jìn)一步的比較電路和用于將不匹配信號(hào)從所述進(jìn)一步的比較電路輸出至 所述輸出電路的路徑的錯(cuò)誤糾正路徑都已平衡,使得響應(yīng)于由于所述單次事件錯(cuò)誤而切換 值的來(lái)自所述存儲(chǔ)電路的輸出,所述輸出電路在大約與所述不匹配信號(hào)的相同時(shí)間接收所 述切換的值。 為使本技術(shù)有效率地工作而不在信號(hào)輸出中產(chǎn)生小干擾,則來(lái)自進(jìn)一步的比較電 路的不匹配信號(hào)必須與切換的值大約同時(shí)間到達(dá)輸出電路。這是因?yàn)椴黄ヅ湫盘?hào)是到輸出 電路糾正該值輸出的信號(hào)。因此,若糾正該值輸出的信號(hào)大約與錯(cuò)誤同時(shí)到達(dá)輸出電路, 則幾乎立即糾正該值并且無(wú)小干擾或極小干擾在系統(tǒng)內(nèi)發(fā)生。若這些路徑未很好平衡,則 不匹配信號(hào)晚到達(dá)并且輸出值切換至錯(cuò)誤值且在稍后被糾正,由此產(chǎn)生小干擾,或者不匹 配信號(hào)早到達(dá)并且正確值切換到不正確值,這在不正確值到達(dá)并且它本身被切換時(shí)得到糾 正。這種小干擾不影響功能性,但是會(huì)導(dǎo)致額外的功率消耗。然而,路徑的仔細(xì)設(shè)計(jì)與平衡 基本上可減少這種問(wèn)題。 在某些實(shí)施例中,到所述輸出電路的所述比較電路輸出路徑短于所述進(jìn)一步的比 較電路至所述輸出電路的所述輸出路徑,使得所述輸出電路在所述進(jìn)一步的比較電路的所 述比較結(jié)果之前接收所述比較電路的所述比較結(jié)果。 此技術(shù)的其它潛在問(wèn)題是在冗余元件內(nèi)錯(cuò)誤的產(chǎn)生,它事實(shí)上是偽錯(cuò)誤且需要被 如此檢測(cè),并且該檢測(cè)在錯(cuò)誤糾正輸出電路用于糾正不存在的錯(cuò)誤之前被發(fā)送到錯(cuò)誤糾正 輸出電路。因而,至輸出電路的比較電路輸出路徑比進(jìn)一步的比較部件至輸出電路的輸出 路徑短是重要的。如果情況是輸出電路在接收任何潛在偽錯(cuò)誤信號(hào)之前接收到冗余元件內(nèi) 有軟錯(cuò)誤的信息,則它在偽錯(cuò)誤到達(dá)時(shí)知道不應(yīng)該執(zhí)行糾正。 在某些實(shí)施例中,至所述錯(cuò)誤檢測(cè)信號(hào)產(chǎn)生電路的所述比較電路輸出路徑短于所 述進(jìn)一步的比較部件至所述錯(cuò)誤檢測(cè)信號(hào)產(chǎn)生電路的所述輸出路徑,使得所述進(jìn)一步的電 路在所述進(jìn)一步的比較電路的所述比較結(jié)果之前接收所述比較電路的所述比較結(jié)果。
9
在某些實(shí)施例中,使用其它電路來(lái)組合比較電路與進(jìn)一步的比較電路的輸出,并
且產(chǎn)生錯(cuò)誤信號(hào),然后發(fā)送到輸出電路。若使用這種實(shí)施例,則從比較部件和進(jìn)一步的比較
部件到此其它電路的輸出路徑需要仔細(xì)被選取,使得在偽錯(cuò)誤信號(hào)之前在此其它電路接收
到錯(cuò)誤屏蔽信號(hào),因此實(shí)際上屏蔽偽錯(cuò)誤信號(hào)并且不產(chǎn)生偽錯(cuò)誤。若路徑未正確平衡,則會(huì)
有小干擾,因?yàn)閭五e(cuò)誤將在響應(yīng)error—mask信號(hào)而覆蓋糾正之前導(dǎo)致正確值的糾正。 在某些實(shí)施例中,所述輸出電路包含反相器,用于將所述存儲(chǔ)電路輸出的信號(hào)反
相,所述存儲(chǔ)電路在所述時(shí)鐘周期的第一相位期間輸出所述第一指示以及在所述時(shí)鐘周期
的第二相位期間輸出所述第二指示,以及包含復(fù)用器,用于響應(yīng)所述錯(cuò)誤檢測(cè)電路輸出的
錯(cuò)誤檢測(cè)信號(hào)而在所述輸出信號(hào)或所述反相的輸出信號(hào)之間進(jìn)行選擇。 雖然,由輸出電路進(jìn)行的糾正可用許多方式完成,但反相器是將存儲(chǔ)電路輸出的
信號(hào)反相的簡(jiǎn)單方式,其中復(fù)用器用于在反相的輸出信號(hào)和未反相的輸出信號(hào)之間進(jìn)行選
擇。這是糾正第一或第二存儲(chǔ)元件內(nèi)所發(fā)生軟錯(cuò)誤的簡(jiǎn)單面積與功率效率方式。 在某些實(shí)施例中,所述錯(cuò)誤檢測(cè)電路包含錯(cuò)誤檢測(cè)信號(hào)產(chǎn)生電路,用于產(chǎn)生所述
錯(cuò)誤檢測(cè)信號(hào)以響應(yīng)來(lái)自所述比較電路的匹配信號(hào)和來(lái)自所述進(jìn)一步的比較電路的不匹
配信號(hào)。 本發(fā)明的其它方面提供一種集成電路,其包含多個(gè)根據(jù)本發(fā)明第一方面的順序存 儲(chǔ)電路元件,以及用于響應(yīng)所述時(shí)鐘信號(hào)的所述第一相位的開(kāi)始而產(chǎn)生時(shí)鐘脈沖的時(shí)鐘脈 沖產(chǎn)生器,所述時(shí)鐘脈沖產(chǎn)生器將所述時(shí)鐘脈沖供應(yīng)給所述多個(gè)順序存儲(chǔ)電路元件。
在某些實(shí)施例中,所述集成電路還包含插入所述多個(gè)順序存儲(chǔ)元件之間的組合電 路。 本發(fā)明還有的其它方面提供一種糾正集成電路的順序存儲(chǔ)電路中單次事件顛覆 錯(cuò)誤的方法,所述集成電路的所述順序存儲(chǔ)電路包含第一存儲(chǔ)元件和耦合到所述第一存儲(chǔ) 元件的輸出的第二存儲(chǔ)元件,以及第三和第四存儲(chǔ)元件,該方法包含以下步驟在時(shí)鐘信號(hào) 的第一相位期間,將由所述順序存儲(chǔ)電路接收的輸入數(shù)據(jù)值的第一指示存儲(chǔ)在所述第一存 儲(chǔ)元件中;在所述時(shí)鐘信號(hào)的第二相位期間,將所述輸入數(shù)據(jù)值的第二指示存儲(chǔ)在所述第 二存儲(chǔ)元件中;在從所述時(shí)鐘信號(hào)得出的脈沖信號(hào)發(fā)生時(shí),將所述輸入數(shù)據(jù)值的分別的第 三和第四指示存儲(chǔ)在所述第三和第四存儲(chǔ)元件中;通過(guò)以下步驟檢測(cè)所述存儲(chǔ)元件的任一 個(gè)中的單次事件顛覆錯(cuò)誤(i)比較所述第三和第四指示并響應(yīng)差異檢測(cè)到所述單次事件 顛覆錯(cuò)誤在所述第三或第四存儲(chǔ)元件中;(ii)在所述時(shí)鐘信號(hào)的所述第一相位期間比較 由所述第一指示所指示的所述輸入數(shù)據(jù)值和所述輸入值的所述第三和第四指示的至少之 一,并且若有差異以及步驟(i)發(fā)現(xiàn)無(wú)差異,則檢測(cè)到所述單次事件顛覆錯(cuò)誤在所述第一 存儲(chǔ)元件中以及(iii)在所述時(shí)鐘信號(hào)的所述第二相位期間比較由所述第二指示所指示 的所述輸入數(shù)據(jù)值與所述輸入值的所述第三和第四指示的至少之一,并且若有差異以及步 驟(i)發(fā)現(xiàn)無(wú)差異,則檢測(cè)到所述單次事件顛覆錯(cuò)誤在所述第二存儲(chǔ)元件中以及通過(guò)以 下步驟在輸出值中糾正所述第一或第二存儲(chǔ)元件中檢測(cè)的單次事件顛覆錯(cuò)誤,并輸出所述 輸出值在所述時(shí)鐘信號(hào)的所述第一相位期間,輸出所述輸入值的所述第一指示,以響應(yīng)所 述第一存儲(chǔ)元件中無(wú)單次事件顛覆錯(cuò)誤的檢測(cè);或輸出所述輸入值的所述第一指示的反相 值,以響應(yīng)所述第一存儲(chǔ)元件中的單次事件顛覆錯(cuò)誤的檢測(cè);以及在所述時(shí)鐘信號(hào)的所述 第二相位期間,輸出所述輸入值的所述第二指示,以響應(yīng)所述第二存儲(chǔ)元件中無(wú)單次事件顛覆錯(cuò)誤的檢測(cè);或輸出所述輸入值的所述第二指示的反相值,以響應(yīng)所述第二存儲(chǔ)元件 中無(wú)單次事件顛覆錯(cuò)誤的檢測(cè)。 本發(fā)明的還有的其它方面提供一種順序存儲(chǔ)部件,其包含存儲(chǔ)部件,用于在時(shí)鐘 信號(hào)的第一相位期間將接收的數(shù)據(jù)的指示存儲(chǔ)在第一存儲(chǔ)元件中,以及用于在所述時(shí)鐘信 號(hào)的第二相位期間將所述數(shù)據(jù)的指示存儲(chǔ)在第二存儲(chǔ)元件中;進(jìn)一步的第三和第四存儲(chǔ)部 件,用于響應(yīng)從所述時(shí)鐘信號(hào)得出的脈沖信號(hào)而存儲(chǔ)所述數(shù)據(jù)的指示;錯(cuò)誤檢測(cè)部件,用 于通過(guò)以下步驟檢測(cè)所述存儲(chǔ)部件中的單次事件顛覆錯(cuò)誤如果所述存儲(chǔ)的值中有差異, 則檢測(cè)到所述單次事件顛覆錯(cuò)誤在所述第三或第四存儲(chǔ)部件中;并且若無(wú)差異,則如果 在所述時(shí)鐘信號(hào)的所述第一相位期間,在所述存儲(chǔ)值和所述第三和第四存儲(chǔ)部件中的所述 存儲(chǔ)值的至少之一存在差異,則檢測(cè)到所述單次事件顛覆錯(cuò)誤在所述第一存儲(chǔ)元件中;以 及如果在所述時(shí)鐘信號(hào)的所述第二相位期間,在所述存儲(chǔ)值和所述第三和第四存儲(chǔ)部件中 的所述存儲(chǔ)值的至少之一存在差異,則檢測(cè)到所述單次事件顛覆錯(cuò)誤在所述第二存儲(chǔ)元件 中;以及輸出部件,用于在輸出值中糾正發(fā)生在所述第一或第二存儲(chǔ)元件中的所述單次事 件顛覆錯(cuò)誤,并輸出所述輸出值,所述輸出部件包含糾正部件,用于將所述存儲(chǔ)部件輸出 的值反相,以響應(yīng)所述第一或所述第二存儲(chǔ)元件中的單次事件顛覆錯(cuò)誤的檢測(cè),以及不反 相所述值,以響應(yīng)未檢測(cè)到所述單次事件顛覆錯(cuò)誤。 從下面將結(jié)合附圖閱讀的說(shuō)明性的實(shí)施例的詳細(xì)說(shuō)明,將明白本發(fā)明的上述和其 它目的、特征及優(yōu)點(diǎn)。


圖1示意示出對(duì)于不同VDD在45nm的鎖存器對(duì)比特單元穩(wěn)定性的比率(定義為 臨界電荷Qcrit); 圖2示出根據(jù)現(xiàn)有技術(shù)的錯(cuò)誤糾正觸發(fā)器設(shè)計(jì); 圖3示出根據(jù)現(xiàn)有技術(shù)的備選錯(cuò)誤糾正觸發(fā)器設(shè)計(jì); 圖4示意示出結(jié)合順序存儲(chǔ)電路、組合邏輯和管道架構(gòu)的集成電路; 圖5是示出根據(jù)本發(fā)明的一個(gè)實(shí)施例的順序存儲(chǔ)電路的布置的框圖; 圖6是示出圖5的順序存儲(chǔ)電路的一個(gè)特定實(shí)施例的電路圖; 圖7是無(wú)錯(cuò)誤情況下的圖6的電路的操作的時(shí)序圖; 圖8是當(dāng)軟錯(cuò)誤翻轉(zhuǎn)鎖存器a或鎖存器b時(shí)圖6的電路的操作的時(shí)序圖;
圖9和10示出當(dāng)軟錯(cuò)誤翻轉(zhuǎn)圖6的冗余鎖存器的任一個(gè)時(shí)的錯(cuò)誤糾正;以及
圖11是示出執(zhí)行本發(fā)明實(shí)施例的方法的流程圖。
具體實(shí)施例方式
圖4顯示集成電路2,其包含在可為觸發(fā)器形式的順序邊沿觸發(fā)存儲(chǔ)電路8之間延 伸的管道階段(pipeline stage)4、6。在順序存儲(chǔ)電路之間是組合邏輯電路10的各自影響 范圍(incidence),其用于接收來(lái)自一個(gè)或多個(gè)前面階段的信號(hào),并且產(chǎn)生要通過(guò)一個(gè)或多 個(gè)后續(xù)階段的信號(hào)。由順序存儲(chǔ)元件8所進(jìn)行的信號(hào)值的捕獲之間的時(shí)間期對(duì)于連續(xù)時(shí)鐘 周期來(lái)說(shuō),就是對(duì)于組合邏輯電路10評(píng)估其輸入以便產(chǎn)生其輸出可用的時(shí)間。本發(fā)明的實(shí) 施例提供用于順序存儲(chǔ)電路8的新設(shè)計(jì),其可檢測(cè)并糾正由于中子或阿爾法粒子撞擊在順序存儲(chǔ)電路上而在順序存儲(chǔ)電路內(nèi)發(fā)生的SEU或軟錯(cuò)誤。 集成電路2還包含脈沖產(chǎn)生電路12,其從時(shí)鐘信號(hào)clk產(chǎn)生脈沖,并將此脈沖傳輸 至每個(gè)順序存儲(chǔ)電路8。此脈沖電路用于觸發(fā)冗余鎖存器中數(shù)據(jù)的保持,這將從圖5和圖6 的說(shuō)明變得更清楚。 圖5顯示示意示出第4圖的順序存儲(chǔ)電路8的框圖。順序存儲(chǔ)電路8包含存儲(chǔ)部 分50,該部分具有與從鎖存器22串聯(lián)的主鎖存器20,主鎖存器20經(jīng)由時(shí)鐘驅(qū)動(dòng)開(kāi)關(guān)31接 收輸入數(shù)據(jù)值D。此值D通過(guò)時(shí)鐘驅(qū)動(dòng)開(kāi)關(guān)32傳遞到從鎖存器22,然后繼續(xù)傳遞到輸出Q。 在此實(shí)施例中,時(shí)鐘驅(qū)動(dòng)開(kāi)關(guān)31響應(yīng)時(shí)鐘的上升沿,而時(shí)鐘驅(qū)動(dòng)開(kāi)關(guān)32響應(yīng)下降沿。本領(lǐng) 域技術(shù)人員將了解,主鎖存器20與從鎖存器22是基于電平的裝置(level based device), 但是通過(guò)將它們串聯(lián)地置于順序存儲(chǔ)電路15內(nèi),則變成邊沿觸發(fā)裝置。特別是,主鎖存器 20和從鎖存器22由時(shí)鐘的交替相位驅(qū)動(dòng),使得在時(shí)鐘的第一相位期間,主鎖存器20存儲(chǔ)數(shù) 據(jù)值的第一指示,而時(shí)鐘驅(qū)動(dòng)開(kāi)關(guān)32將存儲(chǔ)的值輸出至從鎖存器22。在時(shí)鐘的第一相位 內(nèi),從鎖存器是透明的,并且因此僅將此輸入值傳遞通過(guò)到達(dá)輸出Q。然而,在時(shí)鐘的第二相 位期間,主鎖存器100變成透明的并且時(shí)鐘驅(qū)動(dòng)開(kāi)關(guān)32關(guān)閉,從而將到從鎖存器22的輸入 與主鎖存器20隔離。在第二相位期間,從鎖存器22變成不透明的并且存儲(chǔ)數(shù)據(jù)值以及在 輸出Q提供該數(shù)據(jù)值。 在此實(shí)施例內(nèi),提供兩個(gè)附加冗余存儲(chǔ)鎖存器40和42以用于軟錯(cuò)誤的檢測(cè)。這 些由脈沖驅(qū)動(dòng)開(kāi)關(guān)45來(lái)控制。雖然在此實(shí)施例中這些脈沖驅(qū)動(dòng)開(kāi)關(guān)顯示為兩個(gè)獨(dú)立的開(kāi) 關(guān),但本領(lǐng)域技術(shù)人員將了解,也可使用具有兩個(gè)輸出的單個(gè)開(kāi)關(guān)。脈沖驅(qū)動(dòng)開(kāi)關(guān)45每個(gè) 時(shí)鐘周期接收短暫脈沖信號(hào)一次,此脈沖信號(hào)由脈沖產(chǎn)生電路12產(chǎn)生。脈沖產(chǎn)生電路12 從時(shí)鐘信號(hào)clk產(chǎn)生脈沖信號(hào)。在此實(shí)施例中,脈沖產(chǎn)生電路12在時(shí)鐘信號(hào)的上升沿發(fā)生 時(shí)產(chǎn)生脈沖,但本領(lǐng)域技術(shù)人員了解,響應(yīng)時(shí)鐘信號(hào)的下降沿也可同樣很好地產(chǎn)生脈沖。在 任一情況下,它每個(gè)時(shí)鐘周期僅產(chǎn)生單個(gè)脈沖。雖然在第4圖中將脈沖產(chǎn)生電路12顯示作 為為集成電路2上的所有順序存儲(chǔ)電路8產(chǎn)生脈沖的單個(gè)電路,但在其它實(shí)施例中,脈沖產(chǎn) 生電路12可在順序存儲(chǔ)電路8內(nèi),如本圖中虛線(xiàn)框所示。 在脈沖發(fā)生時(shí),脈沖驅(qū)動(dòng)開(kāi)關(guān)45提供數(shù)據(jù)D給附加存儲(chǔ)鎖存器40和42。當(dāng)脈沖
結(jié)束時(shí),鎖存器40和42變成不透明的,并且存儲(chǔ)從脈沖驅(qū)動(dòng)開(kāi)關(guān)45接收的數(shù)據(jù)。同樣,此
時(shí)關(guān)閉脈沖驅(qū)動(dòng)開(kāi)關(guān),以避免附加存儲(chǔ)鎖存器40和42接收到任何新值。 順序存儲(chǔ)電路可認(rèn)為是分成三個(gè)部分,它們由虛線(xiàn)框50、53和55所示。部分50
是存儲(chǔ)部分,并且包含主鎖存器20和從鎖存器22。部分53可看成是錯(cuò)誤檢測(cè)電路,并且包
含冗余存儲(chǔ)鎖存器40和42。它還包含比較器60和65以及附加邏輯70。部分55是輸出
部分,如果錯(cuò)誤檢測(cè)電路53檢測(cè)到錯(cuò)誤,則其糾正存儲(chǔ)部分50所輸出的數(shù)據(jù)值,并且如果
未檢測(cè)到錯(cuò)誤則輸出未經(jīng)糾正的值,或如果已檢測(cè)到錯(cuò)誤則輸出糾正過(guò)的值。 錯(cuò)誤檢測(cè)電路53具有比較器60,其比較兩個(gè)附加存儲(chǔ)鎖存器40和42中存儲(chǔ)的
值。若這些值不相等,則輸出error—mask信號(hào)到錯(cuò)誤信號(hào)產(chǎn)生電路70。該error—mask信
號(hào)向錯(cuò)誤信號(hào)產(chǎn)生電路70指示這兩個(gè)附加存儲(chǔ)鎖存器之一中已發(fā)生軟錯(cuò)誤,因?yàn)樗鼈儧](méi)
有存儲(chǔ)相同值,并且因此假設(shè)主鎖存器與從鎖存器中存儲(chǔ)的值是正確的。應(yīng)該注意,即使在
主鎖存器或從鎖存器的任一個(gè)中發(fā)生軟錯(cuò)誤,它也無(wú)法被糾正,因?yàn)椴磺宄蓚€(gè)附加存儲(chǔ)
鎖存器當(dāng)中哪一個(gè)存儲(chǔ)正確值。因此,響應(yīng)于從比較器60接收錯(cuò)誤屏蔽信號(hào),錯(cuò)誤信號(hào)產(chǎn)生電路70輸出no_error信號(hào)給輸出電路55。輸出電路55響應(yīng)no_error信號(hào),以經(jīng)由復(fù) 用器80選擇存儲(chǔ)電路50的輸出,即Q。 若比較電路60未輸出error—mask信號(hào),換言之,存儲(chǔ)在兩附加存儲(chǔ)鎖存器40和 42中的值相等,則可使用比較電路65檢測(cè)主鎖存器20或從鎖存器22中的錯(cuò)誤。比較電路 65比較附加存儲(chǔ)鎖存器之一中存儲(chǔ)的值,在此例中,附加存儲(chǔ)鎖存器40具有當(dāng)前正由存儲(chǔ) 電路50輸出的值。在此實(shí)施例中,其將是時(shí)鐘周期的第一相位期間主鎖存器20中存儲(chǔ)的 值,以及時(shí)鐘周期的第二相位期間從鎖存器22中存儲(chǔ)的值。若比較電路65檢測(cè)到附加存 儲(chǔ)鎖存器40中存儲(chǔ)的值與存儲(chǔ)電路50輸出的值的差異,則它產(chǎn)生錯(cuò)誤信號(hào)給錯(cuò)誤信號(hào)產(chǎn) 生邏輯70,并且如果當(dāng)前此電路未正在接收error—mask信號(hào),則此錯(cuò)誤信號(hào)傳播至輸出電 路55內(nèi)的復(fù)用器80。響應(yīng)于此錯(cuò)誤信號(hào),復(fù)用器80選擇存儲(chǔ)元件50的已反相的輸出。因 此,在此例中,輸出電路的反相值被輸出,因?yàn)橹垒敵龅漠?dāng)前值事實(shí)上不正確。若比較電 路65發(fā)現(xiàn)附加存儲(chǔ)鎖存器40中存儲(chǔ)的值等于存儲(chǔ)電路50輸出的值Q,則它產(chǎn)生no—error 信號(hào)并且復(fù)用器80響應(yīng)于此而輸出Q。 圖6顯示圖5的順序存儲(chǔ)電路的一個(gè)特定實(shí)施的電路圖。在此電路中,時(shí)鐘驅(qū)動(dòng) 開(kāi)關(guān)31將輸入數(shù)據(jù)D與主鎖存器20分離,并且時(shí)鐘驅(qū)動(dòng)開(kāi)關(guān)32將主鎖存器20與從鎖存 器22分離。如可見(jiàn)的,這些時(shí)鐘驅(qū)動(dòng)開(kāi)關(guān)設(shè)計(jì)成在時(shí)鐘信號(hào)的不同相位上操作。還顯示有 脈沖產(chǎn)生電路12。在此圖中,與圖5內(nèi)使用的相同的引用編號(hào)用于說(shuō)明相似特征。因此,圖 5的比較電路60就是此圖中的異或門(mén)60,若兩個(gè)輸入不相等時(shí)則該門(mén)輸出1的error—mask 信號(hào),若相等時(shí)則輸出0的信號(hào)。類(lèi)似地,比較存儲(chǔ)電路50的輸出Q的比較電路65是異或 門(mén)65,并且若兩個(gè)輸入相等則輸出0的Q—diff,若不等則輸出1。在此實(shí)施例中,錯(cuò)誤信號(hào) 產(chǎn)生電路70是在其輸入104上具有反相器的與門(mén)。因此,若輸出1的error—mask信號(hào),則 該信號(hào)作為0出現(xiàn)在與門(mén)上,因此產(chǎn)生0,也就是no—error信號(hào)。
現(xiàn)在將結(jié)合圖7至圖10的時(shí)序圖來(lái)說(shuō)明圖6的電路的操作。 在圖7中,當(dāng)時(shí)鐘信號(hào)上升時(shí),脈沖產(chǎn)生電路12產(chǎn)生脈沖CPLSE。此電路可由多個(gè) 順序存儲(chǔ)電路8共享,來(lái)降低面積開(kāi)銷(xiāo)。脈沖的寬度由反相器13的數(shù)量來(lái)控制。上升CLK 信號(hào)鎖存主鎖存器20中的數(shù)據(jù)。脈沖CPLSE大約同時(shí)鎖存兩個(gè)影子鎖存器40、42中的數(shù) 據(jù)。 一旦在CPLSE的高相位期間數(shù)據(jù)得以存儲(chǔ)在影子鎖存器中,則數(shù)據(jù)保持穩(wěn)定直到CLK 的下一個(gè)上升沿產(chǎn)生下一個(gè)脈沖。在不具任何錯(cuò)誤的情況下,當(dāng)CLK為1時(shí),存儲(chǔ)在影子或 冗余鎖存器40和42內(nèi)的數(shù)據(jù)將與主鎖存器內(nèi)的相同,當(dāng)CLK為0時(shí),則與從鎖存器內(nèi)的數(shù) 據(jù)相同,這從圖7的時(shí)序圖中可看到。 因此,在主鎖存器20內(nèi)于時(shí)鐘的上升沿輸入與捕獲的數(shù)據(jù)也在兩個(gè)影子鎖存器 40和42中捕獲。 一旦已鎖存,鎖存器40和42中的數(shù)據(jù)將不改變,直到下一個(gè)脈沖前都無(wú) 任何錯(cuò)誤,CPLSE發(fā)生在CLK的下一個(gè)上升沿。在CLK的高周期期間主鎖存器20是不透明 的,并且在CLK的低周期期間從鎖存器22是不透明的。在CLK的兩個(gè)相位內(nèi),Q值反映主 鎖存器20在CLK的上升沿鎖存的數(shù)據(jù)。在無(wú)任何軟錯(cuò)誤的理想情況中,節(jié)點(diǎn)Q、Q1和Q2將 具有相同值,如圖7中所示,這就是該設(shè)計(jì)在沒(méi)有SEU錯(cuò)誤的情況下如何操作的。
因?yàn)镼l和Q2 —致,所以errorjnask信號(hào)停留在0。同樣,因?yàn)镼和Ql —致,所 以Q_DIFF信號(hào)和后續(xù)錯(cuò)誤信號(hào)也停留在0。 0錯(cuò)誤信號(hào)表示SEU并未損壞系統(tǒng)的狀態(tài),因 此復(fù)用器80將Q傳播至Qout。因此,在不具任何錯(cuò)誤的情況下,Qout遵循D,因而該提出的順序存儲(chǔ)電路的行為類(lèi)似于傳統(tǒng)觸發(fā)器。 如果粒子撞擊改變四個(gè)鎖存器的任一個(gè)中存儲(chǔ)的值,則節(jié)點(diǎn)Q、 Ql和Q2將不同。 提出的設(shè)計(jì)使用兩個(gè)異或門(mén)、與門(mén)和2 : l復(fù)用器,來(lái)確定損壞的數(shù)據(jù)不會(huì)傳播至輸出。為 了理解觸發(fā)器如何糾正軟錯(cuò)誤,考慮以下單次比特錯(cuò)誤情況。 圖8顯示其中主鎖存器20中發(fā)生SEU的第一情況。將明白,這與軟錯(cuò)誤發(fā)生在從 鎖存器22中將發(fā)生的情況一致,除了圖8的時(shí)序圖將顯示在時(shí)鐘相位的低部分期間而非高 相位期間發(fā)生粒子撞擊以外。 從圖8的時(shí)序圖可看見(jiàn),只有當(dāng)CLK為高時(shí),主鎖存器20才是不透明的。因此在 本例中,假設(shè)當(dāng)時(shí)鐘在高相位內(nèi),主鎖存器20中發(fā)生粒子撞擊。從時(shí)序圖可看到,粒子撞擊 翻轉(zhuǎn)鎖存器20,如星號(hào)所標(biāo)記的,并且在此點(diǎn),鎖存器20從1變?yōu)?,因此Q從1切換到0。 Qout遵循Q并且它也轉(zhuǎn)換成0。 Q與Ql的差異導(dǎo)致Q_diff變成1。 errorjnask信號(hào)保持 為0,因?yàn)镼l和Q2 —致,這指示軟錯(cuò)誤不在冗余鎖存器中之一中。因此,Q_diff的轉(zhuǎn)換導(dǎo) 致與門(mén)70輸出的錯(cuò)誤信號(hào)變成1。錯(cuò)誤信號(hào)的高轉(zhuǎn)換導(dǎo)致復(fù)用器選擇反相器85輸出的Q 的反相值,Qout得以糾正。如可見(jiàn)到的,輸出Qout在短小干擾之后復(fù)原正確值。在此有些 事項(xiàng)要注意,小干擾的持續(xù)時(shí)間可通過(guò)平衡數(shù)據(jù)路徑與錯(cuò)誤路徑來(lái)最小化或至少減少。因 此,當(dāng)Q翻轉(zhuǎn)時(shí),如果輸出此翻轉(zhuǎn)的Q所耗費(fèi)的時(shí)間類(lèi)似于檢測(cè)錯(cuò)誤并變更復(fù)用器的選擇所 耗費(fèi)的時(shí)間,則它是有利的。換言之,從節(jié)點(diǎn)90到復(fù)用器80的輸入的路徑應(yīng)該類(lèi)似于從節(jié) 點(diǎn)90到復(fù)用器80的選擇輸入的路徑。 應(yīng)該注意,對(duì)于當(dāng)主鎖存器20從0翻轉(zhuǎn)為1時(shí)的情況,以及還對(duì)于當(dāng)在時(shí)鐘周期
的低相位期間在從鎖存器內(nèi)發(fā)生粒子撞擊時(shí)的情況,上面的分析同樣保持正確。 因此,如可見(jiàn)到的,用于錯(cuò)誤糾正的此方案將糾正時(shí)鐘的任一相位期間主鎖存器
或從鎖存器內(nèi)發(fā)生的所有單次比特錯(cuò)誤。應(yīng)該注意,對(duì)于此電路存在易損性窗口,其在脈沖
CPLSE期間發(fā)生。如果那個(gè)時(shí)間發(fā)生軟錯(cuò)誤,則此電路將無(wú)法檢測(cè)它。 圖9和圖IO顯示當(dāng)在冗余鎖存器的任一個(gè)中發(fā)生軟錯(cuò)誤時(shí)將發(fā)生什么。在圖9 中,在冗余鎖存器40中發(fā)生錯(cuò)誤,并且在圖10中,在冗余鎖存器42中發(fā)生錯(cuò)誤。
因?yàn)殒i存器40和42是冗余鎖存器,所以關(guān)鍵在于不會(huì)將這些鎖存器內(nèi)的軟錯(cuò)誤 標(biāo)記為真正的錯(cuò)誤。圖中再次顯示為星號(hào)的粒子撞擊將鎖存器40或42從1翻轉(zhuǎn)為0,因此 Q1或Q2變更為0。因?yàn)镼l和Q2不同,所以errorjnask信號(hào)轉(zhuǎn)換成1。 error_mask信號(hào) 門(mén)控錯(cuò)誤,因此這兩種情況中的錯(cuò)誤將被抑制為0。然而,由于路徑長(zhǎng)度的差異,因此在錯(cuò)誤 信號(hào)中可能存在小干擾。若路徑是平衡的,則錯(cuò)誤信號(hào)中的小干擾可減少、最小化或去除, 并且Qout上的影響將可忽略,如圖9和圖10中所示。 如注意到的,錯(cuò)誤信號(hào)中的小干擾的持續(xù)時(shí)間可通過(guò)平衡路徑來(lái)最小化或完全去 除。在此例中,重要的路徑是error—mask路徑,其應(yīng)該與通過(guò)比較器65的路徑平衡或優(yōu)選 為比通過(guò)比較器65的路徑短。若鎖存器40接收來(lái)自軟錯(cuò)誤的撞擊,則比較器65將產(chǎn)生偽 錯(cuò)誤。應(yīng)該注意,因?yàn)殒i存器42在輸出信號(hào)Q的比較中未使用,所以它無(wú)法產(chǎn)生偽錯(cuò)誤或 小干擾。因此,從節(jié)點(diǎn)100到102處的與門(mén)70的輸入的路徑應(yīng)該比從節(jié)點(diǎn)100通過(guò)比較器 60到104處的與門(mén)70的輸入的路徑更長(zhǎng)。如果通過(guò)比較器60的路徑更短,則error—mask 信號(hào)在Q—diff信號(hào)到達(dá)與門(mén)70之前到達(dá)與門(mén)70,并且屏蔽掉Q—diff信號(hào)產(chǎn)生的任何錯(cuò) 誤。如果它不是更短的,則Q—diff信號(hào)導(dǎo)致從與門(mén)70產(chǎn)生錯(cuò)誤信號(hào),并且選取Q的反相輸
14出直到error—mask信號(hào)到達(dá)并且將錯(cuò)誤信號(hào)糾正為n0_error信號(hào),然后選擇正確輸出Q。
應(yīng)該注意,對(duì)于當(dāng)冗余鎖存器從O翻轉(zhuǎn)為1時(shí)的情況,以及當(dāng)在時(shí)鐘的低相位期間 發(fā)生粒子撞擊時(shí)的情況,上面的分析也有效。 圖11顯示說(shuō)明本發(fā)明實(shí)施例的順序存儲(chǔ)電路的操作方法的流程圖。響應(yīng)于時(shí)鐘 轉(zhuǎn)換的接收,數(shù)據(jù)存儲(chǔ)在第一存儲(chǔ)元件中,并且由脈沖產(chǎn)生電路產(chǎn)生脈沖。脈沖的產(chǎn)生觸發(fā) 數(shù)據(jù)存儲(chǔ)在冗余存儲(chǔ)元件3和4中。然后執(zhí)行元件3和4中存儲(chǔ)的數(shù)據(jù)的比較,并且如果 數(shù)據(jù)不相等,則輸出元件l中存儲(chǔ)的數(shù)據(jù)。若存儲(chǔ)在元件3和4(冗余存儲(chǔ)元件)中的數(shù)據(jù) 相同,則這指示這些元件內(nèi)無(wú)軟錯(cuò)誤,并且將第一存儲(chǔ)元件中存儲(chǔ)的數(shù)據(jù)與元件3或4的任 一個(gè)中存儲(chǔ)的數(shù)據(jù)進(jìn)行比較。如果它們不相同,則這顯示元件1中已經(jīng)發(fā)生軟錯(cuò)誤,并且應(yīng) 該反相從此元件輸出的數(shù)據(jù)。如果它們相同,則這顯示對(duì)于元件l中存儲(chǔ)的數(shù)據(jù)并無(wú)軟錯(cuò) 誤,并且可輸出此數(shù)據(jù)本身。 接收下一個(gè)時(shí)鐘轉(zhuǎn)換,并且將元件1中的數(shù)據(jù)存儲(chǔ)在元件2中。然后再次檢查以 查看元件3中的數(shù)據(jù)以及元件4中的數(shù)據(jù)是否仍舊相同。換言之,這些元件內(nèi)是否發(fā)生軟 錯(cuò)誤。如果數(shù)據(jù)不相同,則已發(fā)生軟錯(cuò)誤并且輸出元件2中存儲(chǔ)的數(shù)據(jù)。這是因?yàn)樵谶@種 情況中,在元件3或4的任一個(gè)中已經(jīng)發(fā)生單次錯(cuò)誤,因此假設(shè)元件2中未發(fā)生錯(cuò)誤。如果 數(shù)據(jù)相同,則將這些元件之一中存儲(chǔ)的數(shù)據(jù)與元件2中存儲(chǔ)的數(shù)據(jù)進(jìn)行比較。如果它們相 同,則輸出元件2中存儲(chǔ)的數(shù)據(jù),并且如果它們不相同,這顯示元件2中已經(jīng)發(fā)生軟錯(cuò)誤并 且輸出元件2中存儲(chǔ)的數(shù)據(jù)的反相數(shù)據(jù)。 然后再次接收時(shí)鐘轉(zhuǎn)換,并且將在輸入接收的數(shù)據(jù)存儲(chǔ)在元件1中,然后重復(fù)該 過(guò)程??偟膩?lái)說(shuō),應(yīng)該注意,本發(fā)明的實(shí)施例能夠糾正主鎖存器與從鎖存器中的單次事件顛 覆錯(cuò)誤,以及檢測(cè)它們何時(shí)在冗余鎖存器中發(fā)生,由此避免對(duì)偽錯(cuò)誤進(jìn)行糾正。因?yàn)檫@是自 行糾正的順序存儲(chǔ)電路,所以系統(tǒng)在軟錯(cuò)誤事件中不需要被復(fù)位,而錯(cuò)誤永遠(yuǎn)不會(huì)傳播出 該存儲(chǔ)電路。此外,該設(shè)計(jì)忽略在冗余鎖存器內(nèi)發(fā)生的軟錯(cuò)誤,并且因此不檢測(cè)或糾正假陽(yáng) 性。該設(shè)計(jì)在此順序存儲(chǔ)電路內(nèi)檢測(cè)并糾正錯(cuò)誤,這比起在電路之外具有檢測(cè)和/或糾正 成本更低。 此外,使用基于脈沖的冗余鎖存器可在給定時(shí)間有三個(gè)鎖存器來(lái)比較和糾正錯(cuò) 誤。由于該基于脈沖的方案,所以開(kāi)銷(xiāo)小于其它的提出的現(xiàn)有技術(shù)。而且,該設(shè)計(jì)可輕松適 合于無(wú)額外需求(例如無(wú)額外引腳)的標(biāo)準(zhǔn)設(shè)計(jì)流程。 雖然本文已經(jīng)參考附圖詳細(xì)描述了本發(fā)明的說(shuō)明性實(shí)施例,但應(yīng)理解,本發(fā)明不 受限于這些特定實(shí)施例,而且本領(lǐng)域技術(shù)人員在不背離所附權(quán)利要求所定義的本發(fā)明范圍 或精神的前提下可在其中實(shí)現(xiàn)多種變更與修改。例如,在不背離本發(fā)明范圍的情況下,可進(jìn) 行所附從屬權(quán)利要求的特征與獨(dú)立權(quán)利要求的特征的各種組合。
權(quán)利要求
一種用于集成電路的順序存儲(chǔ)電路,包括存儲(chǔ)電路,包括第一存儲(chǔ)元件,用于在時(shí)鐘信號(hào)的第一相位期間,存儲(chǔ)由所述順序存儲(chǔ)電路接收的輸入數(shù)據(jù)值的第一指示;第二存儲(chǔ)元件,耦合到所述第一存儲(chǔ)元件的輸出,用于在所述時(shí)鐘信號(hào)的第二相位期間存儲(chǔ)所述輸入數(shù)據(jù)值的第二指示;以及錯(cuò)誤檢測(cè)電路,用于檢測(cè)所述第一和第二存儲(chǔ)元件的任一個(gè)中的單次事件顛覆錯(cuò)誤,包括兩個(gè)附加存儲(chǔ)元件,用于響應(yīng)從所述時(shí)鐘信號(hào)得出的脈沖信號(hào)分別存儲(chǔ)所述輸入數(shù)據(jù)值的第三和第四指示;比較電路,用于比較所述輸入數(shù)據(jù)值的所述第三和第四指示;以及進(jìn)一步的比較電路,用于在所述時(shí)鐘信號(hào)的第一相位期間比較所述第一指示和所述第三和第四指示的至少之一,并且用于在所述時(shí)鐘信號(hào)的第二相位期間比較所述第二指示和所述第三和第四指示的至少之一;以及輸出電路,用于糾正所述存儲(chǔ)電路中任何檢測(cè)到的錯(cuò)誤,并且用于輸出輸出值;所述輸出電路響應(yīng)所述比較電路的不匹配,在所述時(shí)鐘信號(hào)的第一相位期間輸出所述第一指示以及在所述時(shí)鐘信號(hào)的第二相位期間輸出所述第二指示,以及所述輸出電路響應(yīng)所述比較電路的匹配,根據(jù)由所述進(jìn)一步的比較電路執(zhí)行的比較來(lái)輸出值;所述輸出電路響應(yīng)所述時(shí)鐘信號(hào)的第一相位期間所述進(jìn)一步的比較電路的匹配,在所述第一時(shí)鐘周期期間輸出所述第一指示,以及響應(yīng)不匹配,輸出所述第一指示的反相值;以及所述輸出電路響應(yīng)所述時(shí)鐘信號(hào)的第二相位期間所述進(jìn)一步的比較電路的匹配,在所述時(shí)鐘信號(hào)的所述第二相位期間輸出所述第二指示,以及響應(yīng)不匹配,輸出所述第二指示的反相值。
2. 如權(quán)利要求l所述的順序存儲(chǔ)電路,包含錯(cuò)誤檢測(cè)信號(hào)產(chǎn)生電路,用于組合所述比較電路和所述進(jìn)一步的比較電路的輸出,以產(chǎn)生要發(fā)送到所述輸出電路的錯(cuò)誤或no—error信號(hào),其中所述比較電路包含響應(yīng)所述第三和第四指示中的差異將error—mask信號(hào)輸出到所述錯(cuò)誤檢測(cè)信號(hào)產(chǎn)生電路的電路,所述錯(cuò)誤檢測(cè)信號(hào)產(chǎn)生電路響應(yīng)所述error—mask信號(hào)來(lái)產(chǎn)生no—error信號(hào),所述輸出電路響應(yīng)所述no—error信號(hào)不糾正所述存儲(chǔ)電路的輸出,所述存儲(chǔ)電路的所述輸出包含所述時(shí)鐘周期的第一相位期間的所述第一指示以及所述時(shí)鐘周期的第二相位期間的所述第二指示。
3. 如權(quán)利要求2所述的順序存儲(chǔ)電路,其中所述錯(cuò)誤檢測(cè)信號(hào)產(chǎn)生電路響應(yīng)所述第三或第四指示的輸出和由所述進(jìn)一步的比較電路檢測(cè)的所述存儲(chǔ)電路的輸出之間的差異,以及響應(yīng)未接收到error—mask信號(hào)來(lái)產(chǎn)生所述錯(cuò)誤信號(hào),所述輸出電路響應(yīng)所述錯(cuò)誤信號(hào),通過(guò)將所述輸出反相來(lái)糾正所述存儲(chǔ)電路的輸出。
4. 如權(quán)利要求1所述的順序存儲(chǔ)電路,其中所述存儲(chǔ)電路包含主從觸發(fā)器,所述第一存儲(chǔ)元件包含所述主鎖存器并且該第二存儲(chǔ)元件包含所述從鎖存器。
5. 如權(quán)利要求1所述的順序存儲(chǔ)電路,其中數(shù)據(jù)輸出路徑和錯(cuò)誤糾正路徑被平衡,所述數(shù)據(jù)輸出路徑用于將數(shù)據(jù)從所述存儲(chǔ)電路輸出至所述輸出電路,所述錯(cuò)誤糾正路徑包含 所述進(jìn)一步的比較電路和用于將不匹配信號(hào)從所述進(jìn)一步的比較電路輸出至所述輸出電 路的路徑,使得響應(yīng)由于所述單次事件錯(cuò)誤而切換值的來(lái)自所述存儲(chǔ)電路的輸出,所述輸 出電路在大約與所述不匹配信號(hào)的相同時(shí)間接收所述切換的值。
6. 如權(quán)利要求1所述的順序存儲(chǔ)電路,其中到所述輸出電路的所述比較電路輸出路徑 短于所述進(jìn)一步的比較部件到所述輸出電路的所述輸出路徑,使得所述輸出電路在所述進(jìn) 一步的比較電路的所述比較結(jié)果之前接收所述比較電路的所述比較結(jié)果。
7. 如權(quán)利要求3所述的順序存儲(chǔ)電路,其中到所述錯(cuò)誤檢測(cè)信號(hào)產(chǎn)生電路的所述比較 電路輸出路徑短于所述進(jìn)一步的比較部件到所述錯(cuò)誤檢測(cè)信號(hào)產(chǎn)生電路的所述輸出路徑, 使得所述進(jìn)一步的電路在所述進(jìn)一步的比較電路的所述比較結(jié)果之前接收所述比較電路 的所述比較結(jié)果。
8. 如權(quán)利要求1所述的順序存儲(chǔ)電路,其中所述輸出電路包含反相器及復(fù)用器,所述 反相器用于將所述存儲(chǔ)電路輸出的信號(hào)反相,所述存儲(chǔ)電路在所述時(shí)鐘周期的第一相位期 間輸出所述第一指示以及在所述時(shí)鐘周期的第二相位期間輸出所述第二指示,所述復(fù)用器 用于響應(yīng)由所述錯(cuò)誤檢測(cè)電路輸出的錯(cuò)誤檢測(cè)信號(hào)而在所述輸出信號(hào)或所述反相的輸出 信號(hào)之間進(jìn)行選擇。
9. 如權(quán)利要求8所述的順序存儲(chǔ)電路,其中所述錯(cuò)誤檢測(cè)電路包含錯(cuò)誤檢測(cè)信號(hào)產(chǎn)生 電路,用于產(chǎn)生所述錯(cuò)誤檢測(cè)信號(hào)以響應(yīng)來(lái)自所述比較電路的匹配信號(hào)和來(lái)自所述進(jìn)一步 的比較電路的不匹配信號(hào)。
10. —種集成電路,包括如權(quán)利要求1所述的多個(gè)順序存儲(chǔ)電路元件,以及用于響應(yīng)所 述時(shí)鐘信號(hào)的所述第一相位的開(kāi)始而產(chǎn)生時(shí)鐘脈沖的時(shí)鐘脈沖產(chǎn)生器,所述時(shí)鐘脈沖產(chǎn)生 器將所述時(shí)鐘脈沖供應(yīng)到所述多個(gè)順序存儲(chǔ)電路元件。
11. 如權(quán)利要求io所述的集成電路,還包括插入所述多個(gè)順序存儲(chǔ)元件之間的組合電路。
12. —種糾正集成電路的順序存儲(chǔ)電路中的單次事件顛覆錯(cuò)誤的方法,所述集成電路 的所述順序存儲(chǔ)電路包括第一存儲(chǔ)元件和耦合到所述第一存儲(chǔ)元件的輸出的第二存儲(chǔ)元 件,以及第三和第四存儲(chǔ)元件,所述方法包含以下步驟在時(shí)鐘信號(hào)的第一相位期間,將由所述順序存儲(chǔ)電路接收的輸入數(shù)據(jù)值的第一指示存 儲(chǔ)在所述第一存儲(chǔ)元件中;在所述時(shí)鐘信號(hào)的第二相位期間,將所述輸入數(shù)據(jù)值的第二指示存儲(chǔ)在所述第二存儲(chǔ) 元件中;在從所述時(shí)鐘信號(hào)得出的脈沖信號(hào)發(fā)生時(shí),將所述輸入數(shù)據(jù)值的分別的第三和第四指 示存儲(chǔ)在所述第三和第四存儲(chǔ)元件中;通過(guò)以下步驟檢測(cè)所述存儲(chǔ)元件的任一個(gè)中的單次事件顛覆錯(cuò)誤(i) 比較所述第三和第四指示并且響應(yīng)差異檢測(cè)到所述單次事件顛覆錯(cuò)誤處于所述第 三或第四存儲(chǔ)元件中;(ii) 在所述時(shí)鐘信號(hào)的所述第一相位期間比較由所述第一指示所指示的所述輸入數(shù) 據(jù)值和所述輸入值的所述第三和第四指示的至少之一,并且如果存在差異以及步驟(i)發(fā) 現(xiàn)無(wú)差異,則檢測(cè)到所述單次事件顛覆錯(cuò)誤在所述第一存儲(chǔ)元件中以及(iii)在所述時(shí)鐘信號(hào)的所述第二相位期間比較由所述第二指示所指示的所述輸入數(shù) 據(jù)值和所述輸入值的所述第三和第四指示的至少之一,并且如果存在差異以及步驟(i)發(fā) 現(xiàn)無(wú)差異,則檢測(cè)到所述單次事件顛覆錯(cuò)誤在所述第二存儲(chǔ)元件中以及通過(guò)以下步驟在輸出值中糾正所述第一或第二存儲(chǔ)元件中檢測(cè)的單次事件顛覆錯(cuò)誤, 并輸出所述輸出值在所述時(shí)鐘信號(hào)的所述第一相位期間輸出所述輸入值的所述第一指示,以響應(yīng)所述第一存儲(chǔ)元件中無(wú)單次事件顛覆錯(cuò)誤的 檢測(cè);或輸出所述輸入值的所述第一指示的反相值,以響應(yīng)所述第一存儲(chǔ)元件中的單次事件顛 覆錯(cuò)誤的檢測(cè);以及在所述時(shí)鐘信號(hào)的所述第二相位期間輸出所述輸入值的所述第二指示,以響應(yīng)所述第二存儲(chǔ)元件中無(wú)單次事件顛覆錯(cuò)誤的 檢測(cè);或輸出所述輸入值的所述第二指示的反相值,以響應(yīng)所述第二存儲(chǔ)元件中無(wú)單次事件顛 覆錯(cuò)誤的檢測(cè)。
13. —種順序存儲(chǔ)部件,包括存儲(chǔ)部件,用于在時(shí)鐘信號(hào)的第一相位期間將接收的數(shù)據(jù)的指示存儲(chǔ)在第一存儲(chǔ)元件 中,以及用于在所述時(shí)鐘信號(hào)的第二相位期間將所述數(shù)據(jù)的指示存儲(chǔ)在第二存儲(chǔ)元件中;進(jìn)一步的第三和第四存儲(chǔ)部件,用于響應(yīng)從所述時(shí)鐘信號(hào)得出的脈沖信號(hào)而存儲(chǔ)所述 數(shù)據(jù)的指示;錯(cuò)誤檢測(cè)部件,用于通過(guò)以下步驟檢測(cè)所述存儲(chǔ)部件中的單次事件顛覆錯(cuò)誤 如果在所述存儲(chǔ)的值中存在差異,則檢測(cè)到所述單次事件顛覆錯(cuò)誤在所述第三和第四存儲(chǔ)部件中;并且如果不存在差異,則如果在所述時(shí)鐘信號(hào)的所述第一相位期間,在所述存儲(chǔ)的值和所述第三和第四存儲(chǔ)部件中所述存儲(chǔ)的值的至少之一中存在差異,則檢測(cè)到所述單次事件顛覆錯(cuò)誤在所述第一存儲(chǔ)元件中;以及如果在所述時(shí)鐘信號(hào)的所述第二相位期間,在所述存儲(chǔ)的值和所述第三和第四存儲(chǔ)部 件中所述存儲(chǔ)的值的至少之一中存在差異,則檢測(cè)到所述單次事件顛覆錯(cuò)誤在所述第二存 儲(chǔ)元件中;以及輸出部件,用于在輸出值中糾正發(fā)生在所述第一或第二存儲(chǔ)元件中的所述單次事件顛 覆錯(cuò)誤,并輸出所述輸出值,所述輸出部件包括糾正部件,用于將所述存儲(chǔ)部件輸出的值反相,以響應(yīng)所述第一或所述第二存儲(chǔ)元件 中的單次事件顛覆錯(cuò)誤的檢測(cè),以及不反相所述值,以響應(yīng)未檢測(cè)到所述單次事件顛覆錯(cuò) 誤。
14. 如權(quán)利要求13所述的順序存儲(chǔ)部件,其中所述存儲(chǔ)部件用于在時(shí)鐘信號(hào)的所述第 一相位期間輸出所述第一存儲(chǔ)元件中接收的數(shù)據(jù)的所述指示,以及用于在所述時(shí)鐘信號(hào)的 第二相位期間輸出所述第二存儲(chǔ)元件中的所述數(shù)據(jù)的指示。
15. 如權(quán)利要求14所述的順序存儲(chǔ)部件,其中所述輸出部件包括反相部件,用于將所 述存儲(chǔ)部件輸出的所述值反相;以及選擇部件,用于選擇所述反相的值以響應(yīng)所述第一或所述第二存儲(chǔ)元件中單次事件顛覆錯(cuò)誤的檢測(cè),以及用于選擇所述輸出值以響應(yīng)未檢測(cè)到 所述單次事件顛覆錯(cuò)誤。
全文摘要
本發(fā)明為集成電路的順序存儲(chǔ)電路內(nèi)單次事件顛覆錯(cuò)誤的糾正。公開(kāi)一種用于集成電路的順序存儲(chǔ)電路,其包括存儲(chǔ)電路、錯(cuò)誤檢測(cè)電路和輸出電路,存儲(chǔ)電路包含第一存儲(chǔ)元件和第二存儲(chǔ)元件,錯(cuò)誤檢測(cè)電路包含兩個(gè)附加存儲(chǔ)元件、比較電路和進(jìn)一步的比較電路,輸出電路用于糾正所述存儲(chǔ)電路內(nèi)任何檢測(cè)到的錯(cuò)誤,并且用于輸出輸出值。
文檔編號(hào)G11C29/00GK101714397SQ20091020612
公開(kāi)日2010年5月26日 申請(qǐng)日期2009年10月9日 優(yōu)先權(quán)日2008年10月7日
發(fā)明者V·錢(qián)德拉 申請(qǐng)人:Arm有限公司
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
台湾省| 特克斯县| 青州市| 孝义市| 多伦县| 合江县| 巴彦淖尔市| 迁安市| 张家港市| 宁强县| 陕西省| 滦平县| 陆河县| 南召县| 南丹县| 萨嘎县| 锦屏县| 玉溪市| 永福县| 郑州市| 尼玛县| 进贤县| 宁城县| 鄂州市| 神木县| 澄江县| 沧州市| 龙陵县| 益阳市| 河源市| 金门县| 昌黎县| 胶州市| 临清市| 平和县| 徐闻县| 沾化县| 罗城| 光山县| 莱芜市| 双牌县|