沈 婧,薛海衛(wèi),陳玉蓉,張猛華,王 蕾
(中國(guó)電子科技集團(tuán)公司第58 研究所,江蘇 無錫 214035)
高能帶電粒子在器件的靈敏區(qū)內(nèi)產(chǎn)生大量帶電粒子的現(xiàn)象,它屬于電離效應(yīng)。當(dāng)能量足夠大的粒子射入集成電路時(shí),由于電離效應(yīng)(包括次級(jí)粒子的),產(chǎn)生數(shù)量級(jí)多的電離電子-空穴對(duì),引起半導(dǎo)體器件的軟件錯(cuò)誤,使邏輯器件和存儲(chǔ)器產(chǎn)生單粒子翻轉(zhuǎn),CMOS 器件產(chǎn)生單粒子閉鎖,甚至出現(xiàn)單粒子永久損傷的現(xiàn)象,輻射主要包括質(zhì)子、中子、重離子和α 粒子[1-3]。集成度的提高、特征尺寸的降低、臨界電荷和有效LET 閾值下降等會(huì)使抗單粒子擾動(dòng)能力降低。器件的抗單粒子翻轉(zhuǎn)能力明顯與電路設(shè)計(jì)、版圖設(shè)計(jì)、工藝條件等因素有關(guān)[4]。
鎖存器經(jīng)常被用于現(xiàn)在的超大規(guī)模集成電路中,特別是SoC 和CPU 的流水線結(jié)構(gòu)中[5-6]。數(shù)據(jù)讀出電路的數(shù)據(jù)鎖存也是必不可少的,因此提高鎖存器的抗單粒子能力意義重大。本文基于雙互鎖(DICE)結(jié)構(gòu)[7-8]和Muller_C單元[9-10],對(duì)SoC 片上SRAM 的數(shù)據(jù)讀出電路進(jìn)行了抗輻射加固設(shè)計(jì),并先后提出了兩種不同結(jié)構(gòu)的讀出電路。
在讀出電路設(shè)計(jì)的過程中,需要考慮以下幾個(gè)問題:
(1)保留數(shù)據(jù)鎖存能力;
(2)盡量提高抗單粒子和抗閂鎖能力;
(3)不能影響數(shù)據(jù)讀出的速度;
(4)翻轉(zhuǎn)后恢復(fù)時(shí)間要盡量短。
本文提出了SoC 片上RAM 的兩種讀出電路結(jié)構(gòu),第一種電路結(jié)構(gòu)是基于DICE 單元和Muller_C 延時(shí)結(jié)構(gòu)的單模讀出通路設(shè)計(jì),靈敏放大器的輸出通過基于Muller_C單元的延時(shí)結(jié)構(gòu)[11]分別為DICE 單元提供兩組輸入信號(hào),該設(shè)計(jì)不僅可以保證信號(hào)的抗SEU 能力,也能有效地降低單粒子的瞬態(tài)擾動(dòng),缺點(diǎn)是延時(shí)單元會(huì)增加數(shù)據(jù)讀出的時(shí)間;第二種電路結(jié)構(gòu)是基于DICE 結(jié)構(gòu)的雙模讀出電路,在DICE 單元的基礎(chǔ)上,對(duì)靈敏放大器采用雙模設(shè)計(jì),該設(shè)計(jì)抗單粒子能力略高于第一種讀出電路設(shè)計(jì),同時(shí)靈敏放大器的輸出在作為DICE 單元輸入的同時(shí)又與最后一級(jí)Muller_C 單元直接相連,從而減少了數(shù)據(jù)讀出時(shí)間。
圖1 是常見的數(shù)據(jù)讀出電路,位線的0/1 通過SA 運(yùn)放之后經(jīng)過一級(jí)Muller_C 單元讀出,Muller_C 結(jié)構(gòu)前是一個(gè)鐘控的鎖存器。靈敏放大器使能信號(hào)控制靈敏放大器工作,將這一電壓差放大為滿擺幅的DPU 和DPN 信號(hào),將存儲(chǔ)的數(shù)據(jù)讀出。當(dāng)讀出結(jié)束后靈敏放大器停止工作,并且將其差分輸入端口充電至“1”,這時(shí)DPN 為“1”,DPU 為“0”,使數(shù)據(jù)無法寫入鎖存器中從而保證讀出數(shù)據(jù)的正確性。靈敏放大器結(jié)構(gòu)如圖1 所示。在讀出存儲(chǔ)節(jié)點(diǎn)信號(hào)時(shí),SP 為“1”,這時(shí)鎖存器的反饋鏈被打斷,從而提高了數(shù)據(jù)讀出的速度,當(dāng)讀出結(jié)束后,SP 跳變?yōu)椤?”,從而所存讀出的數(shù)據(jù)。它們?cè)赟P 信號(hào)的控制下被鎖存,并在Q 端輸出。
圖1 一般讀出電路
1.2.1 單模雙互鎖結(jié)構(gòu)讀出電路
該讀出電路結(jié)構(gòu)主要由靈敏放大器、Muller_C 單元和延時(shí)電路組成,基于DICE 單元,數(shù)據(jù)經(jīng)過靈敏放大器為DICE 輸入信號(hào)QI1,通過延時(shí)結(jié)構(gòu)為DICE 單元提供另一路信號(hào)QI2,電路結(jié)構(gòu)圖如圖2 所示。
圖2 基于DICE 結(jié)構(gòu)單模讀出電路
該結(jié)構(gòu)中延時(shí)電路由多級(jí)反相器組成,使得DICE單元的兩組輸入信號(hào)形成一定的延時(shí)錯(cuò)位,該延時(shí)必須要大于單粒子瞬態(tài)擾動(dòng)的脈寬[12-13]。結(jié)合工藝與器件仿真,該部分電路的延時(shí)時(shí)間在200 ps~300 ps。
加固后讀出電路的抗SEU 工作原理為:在讀出過程中,如果QI1、QI2 中的一個(gè)節(jié)點(diǎn)被打翻,這時(shí)Q 輸出高阻,數(shù)據(jù)不能寫入DICE 鎖存單元,當(dāng)轟擊脈沖過去后,QI1、QI2 節(jié)點(diǎn)恢復(fù)到正確值,這時(shí)Q 輸出讀出的數(shù)據(jù),同時(shí)數(shù)據(jù)被保存到DICE 單元中。在讀出數(shù)據(jù)后,節(jié)點(diǎn)QI1、QI2 與靈敏放大器的通路斷開,這時(shí)輸出Q 只與DICE 鎖存器中存儲(chǔ)的數(shù)據(jù)有關(guān),由DICE 鎖存器的抗SEU 特性可知,這時(shí)的輸出具有抗SEU 的能力。
但該結(jié)構(gòu)有一個(gè)缺點(diǎn),就是QI2 通路的延時(shí)1 會(huì)增加數(shù)據(jù)輸入到Q 的時(shí)間,而對(duì)于SoC 芯片來說,該部分的延遲是希望被省下的,為了改進(jìn)SoC 時(shí)序的問題,對(duì)SRAM 讀出電路部分進(jìn)行了優(yōu)化改進(jìn),這就形成了第二種雙模雙互鎖結(jié)構(gòu)電路。
1.2.2 雙模雙互鎖結(jié)構(gòu)讀出電路
本結(jié)構(gòu)在單模讀出電路基礎(chǔ)上做了改進(jìn)優(yōu)化,將延時(shí)電路產(chǎn)生的QI2 信號(hào)用雙模靈敏放大器來替代,并將QI1、QI2 直接與后兩級(jí)讀出單元相連,保證DICE 鎖存特性的同時(shí)進(jìn)一步縮短數(shù)據(jù)的讀出時(shí)間,電路結(jié)構(gòu)如圖3所示。
圖3 雙模雙互鎖結(jié)構(gòu)讀出電路
雙模雙互鎖的結(jié)構(gòu)基礎(chǔ)上增加了一個(gè)兩級(jí)OE 控制的讀出單元,鎖存單元的輸出QI1、QI2 經(jīng)過第一級(jí)OE控制的傳輸門作為第二級(jí)讀出單元的輸入,OE 使能關(guān)斷的情況下,第一級(jí)傳輸門關(guān)閉,鎖存單元的數(shù)據(jù)不會(huì)傳輸?shù)降诙?jí)讀出單元;第二級(jí)讀出單元因OE 的關(guān)斷而被上拉到固定高電平,第二級(jí)讀出單元也將關(guān)斷,沒有新的數(shù)據(jù)傳輸?shù)絈。只有OE 使能,Q 的數(shù)據(jù)才會(huì)更新。
兩級(jí)帶OE 開關(guān)的讀出結(jié)構(gòu)對(duì)數(shù)據(jù)讀出做了更好的隔離,只要OE 使能不打開,端口的數(shù)據(jù)就不會(huì)發(fā)生變化,數(shù)據(jù)的擾動(dòng)也將會(huì)在經(jīng)過兩級(jí)OE 開關(guān)的讀出電路后降低,再加上Muller_C 單元的本身特性,該SRAM 讀出電路讀出單元有很好的抗單粒子擾動(dòng)的性能,傳輸門的延時(shí)很小,也不會(huì)增加數(shù)據(jù)讀出的時(shí)間。
本結(jié)構(gòu)的抗SEU 工作原理與第一種電路結(jié)構(gòu)一樣,雙模電路結(jié)構(gòu)對(duì)數(shù)據(jù)輸入的加固起到了更好的效果,兩級(jí)的Muller_C 單元起到了更好的抗擾動(dòng)作用。而數(shù)據(jù)讀書時(shí)間方面,通過仿真實(shí)驗(yàn)對(duì)比,雙模雙互鎖結(jié)構(gòu)的讀出電路數(shù)據(jù)讀出時(shí)間比第一種結(jié)構(gòu)縮短了約350 ps。
基于sign off 工藝角和電壓,采用SPICE 仿真工具,分別對(duì)兩種結(jié)構(gòu)的SRAM 進(jìn)行了詳盡的仿真驗(yàn)證,4 kB容量的SRAM 讀出時(shí)間對(duì)比如表1 所示。
表1 兩種SRAM 結(jié)構(gòu)讀出時(shí)間對(duì)比(ns)
由表1 的仿真數(shù)據(jù)可以得出,在相同容量的條件下,采用雙模雙互鎖讀出結(jié)構(gòu)的SRAM 讀出時(shí)間縮短10%左右。
為了防止數(shù)據(jù)輸入通路的兩個(gè)節(jié)點(diǎn)同時(shí)翻轉(zhuǎn),在版圖設(shè)計(jì)過程中充分考慮兩組信號(hào)輸入通路之間的間距。
圖4 為單模雙互鎖結(jié)構(gòu)的SRAM 讀出電路,敏感節(jié)點(diǎn)設(shè)計(jì)為間距5.4 μm;圖5 為雙模雙互鎖結(jié)構(gòu)的SRAM讀出電路,敏感節(jié)點(diǎn)設(shè)計(jì)為間距4 μm。
圖4 單模輸入雙互鎖讀出電路版圖
圖5 雙模輸入雙互鎖讀出電路版圖
本設(shè)計(jì)的兩種不同結(jié)構(gòu)的SRAM 分別應(yīng)用于同一款SoC 芯片的兩個(gè)版本,片內(nèi)SRAM 容量為32 kB,流片工藝為0.18 μm CMOS 工藝,單粒子仿真采用結(jié)合TCAD及SPICE 軟件相結(jié)合的方法[14-15]。
單粒子翻轉(zhuǎn)試驗(yàn)采用中國(guó)原子能科學(xué)研究院的HI-13重離子加速器,分別在F、CL、Ti、Ge 和I 五種離子下對(duì)電路進(jìn)行了輻射實(shí)驗(yàn),兩種結(jié)構(gòu)的實(shí)驗(yàn)測(cè)得結(jié)果如表2所示。
表2 SoC 片內(nèi)SRAM 5 種離子輻射實(shí)驗(yàn)結(jié)果對(duì)比
在F 離子和CL 離子下,片內(nèi)SRAM 均未發(fā)生單粒子翻轉(zhuǎn)現(xiàn)象,在Ti 離子、Ge 離子、I 離子下片內(nèi)SRAM均發(fā)生了不同位數(shù)的翻轉(zhuǎn),實(shí)驗(yàn)結(jié)果表明在受到較高能量輻射時(shí),芯片的單粒子翻轉(zhuǎn)效應(yīng)更容易產(chǎn)生。
通過SEU 數(shù)目和單粒子翻轉(zhuǎn)截面的數(shù)據(jù)對(duì)比,相同試驗(yàn)條件下雙模DICE 結(jié)構(gòu)的SRAM 的單粒子翻轉(zhuǎn)數(shù)略少于單模DICE 結(jié)構(gòu)的SRAM,計(jì)算得出的單粒子翻轉(zhuǎn)截面結(jié)果數(shù)量級(jí)一致,實(shí)驗(yàn)結(jié)果表明兩種結(jié)構(gòu)的SRAM具有相當(dāng)?shù)目箚瘟W臃D(zhuǎn)能力。
本文提出的兩種基于DICE 結(jié)構(gòu)和Muller_C 單元的讀出電路結(jié)構(gòu)均能有效地提高SoC 片內(nèi)SRAM 的抗單粒子能力和抗擾動(dòng)能力。采用兩種結(jié)構(gòu)SRAM 的SoC 電路于0.18 μm CMOS 工藝線流片驗(yàn)證。雙模DICE 讀出結(jié)構(gòu)的SRAM 電路讀出時(shí)間比單模DICE 讀出結(jié)構(gòu)的SRAM 電路讀出時(shí)間縮短10%,在實(shí)際設(shè)計(jì)SoC 片上RAM時(shí),可綜合考慮面積、速度、抗SEU 能力來選擇讀出電路的設(shè)計(jì)結(jié)構(gòu)。