工業(yè)、汽車、通信、航空航天和安防市場(chǎng)對(duì)關(guān)鍵任務(wù)(Mission-critical)應(yīng)用的需求越來(lái)越大。如今,萊迪思NexusTM技術(shù)平臺(tái)為用于關(guān)鍵任務(wù)(Mission-critical)應(yīng)用的FPGA提供了絕對(duì)的優(yōu)勢(shì)。
引言(MPU vs.FPGA)
如今的關(guān)鍵任務(wù)系統(tǒng)可能要求相當(dāng)大的算力。一種計(jì)算解決方案就是采用微處理器單元(MPU),例如PC和工作站。盡管這種處理器看似很強(qiáng)大,但實(shí)際上它們只執(zhí)行簡(jiǎn)單的任務(wù),例如將兩個(gè)數(shù)字相加或者比較兩個(gè)數(shù)字的大小。同樣,它們看似很快,是因?yàn)橄到y(tǒng)時(shí)鐘以2.4 GHz或者更高頻率運(yùn)行。
問(wèn)題的關(guān)鍵在于,盡管MPU可以很好地處理決策任務(wù),在執(zhí)行很多數(shù)據(jù)處理任務(wù)時(shí)就不那么高效了。因此, MPU在執(zhí)行此類任務(wù)時(shí)往往功耗更大,產(chǎn)生熱量更多。
在嵌入式應(yīng)用中實(shí)現(xiàn)信號(hào)和數(shù)據(jù)處理的更有效方法是采用現(xiàn)場(chǎng)可編程門陣列(FPGA)。FPGA受益于自身的并行架構(gòu),能以低延遲并行執(zhí)行數(shù)據(jù)處理操作。正如專欄文章《FPGA基礎(chǔ)知識(shí):FPGA是什么?為什么需要FPGA?》所述:“任何FPGA的核心都在于其可編程架構(gòu),它以可編程邏輯模塊陣列的形式出現(xiàn)。每個(gè)邏輯模塊都包含多個(gè)要素:一個(gè)查找表(LUT)、一個(gè)多路開(kāi)關(guān)和一個(gè)寄存器,所有這些都可以配置(編程)執(zhí)行用戶所需的功能?!?/p>
圖1. 通用FPGA可編程架構(gòu)(圖片來(lái)源:Max Maxfield)
一種更為形象的描述方法是將可編程邏輯視為可編程互連這片“海洋”中的“島嶼”??删幊踢壿嬆K組可以經(jīng)過(guò)配置執(zhí)行所需的邏輯功能,而可編程互連則將邏輯模塊相互連接,并且連接到主要的通用輸入/輸出接口(GPIO)。
需要注意的是,以上描述只是極端簡(jiǎn)化的情況。除了可編程架構(gòu)之外,F(xiàn)PGA還可以包含相當(dāng)于數(shù)兆RAM的存儲(chǔ)模塊以及大量數(shù)字信號(hào)處理(DSP)單元。同樣,除了通用I/O外,F(xiàn)PGA還可以包括支持千兆位串行接口的高速SERDES模塊以及與外部存儲(chǔ)器連接的高速接口。
FPGA廣為人知的一個(gè)主要原因是其可編程邏輯可以配置為以大規(guī)模并行方式執(zhí)行相應(yīng)的數(shù)據(jù)處理算法,這不僅比MPU快幾個(gè)數(shù)量級(jí),而且功耗很低。此外,與算法“凍結(jié)在芯片中”的SoC不同,F(xiàn)PGA的設(shè)計(jì)可以隨時(shí)重新配置。此外,由于用戶IP由終端用戶自行編程, FPGA在制造時(shí)不包含任何用戶IP,這使得FPGA能夠在不受保護(hù)的供應(yīng)鏈中運(yùn)輸,而不會(huì)造成用戶IP被盜竊或篡改。這一點(diǎn)也和SOC及ASIC不同。因此,F(xiàn)PGA是包括工業(yè)機(jī)器人和通信基礎(chǔ)設(shè)施設(shè)備在內(nèi)的關(guān)鍵任務(wù)系統(tǒng)的理想選擇。
輻射的挑戰(zhàn)
為了拓展容量、提高性能、降低功耗和成本,每一代新芯片的晶體管都變得越來(lái)越小。如今芯片中制造的結(jié)構(gòu)大小僅為幾十納米(nm)(一納米等于一米的十億分之一)。這些結(jié)構(gòu)非常微小,可能會(huì)受到地球上輻射的影響。
此外,關(guān)鍵任務(wù)應(yīng)用的系統(tǒng)一般都部署在持續(xù)高水平輻射的環(huán)境中,包括高緯度地區(qū)甚至太空。
對(duì)這類應(yīng)用而言,有兩種輻射效應(yīng)影響最為嚴(yán)重:?jiǎn)瘟W有?yīng)(SEE)和電離總劑量效應(yīng)(TID)。
SEE是指由單個(gè)電離粒子(電子、質(zhì)子、離子、光子等)在集成電路中引起的即時(shí)效應(yīng)。處理SEE需要在輻射發(fā)生時(shí)能夠快速恢復(fù)。相比之下,由于長(zhǎng)期暴露在輻射下不斷累積,TID最終會(huì)導(dǎo)致半導(dǎo)體晶格老化。典型的TID效應(yīng)包括晶體管開(kāi)關(guān)閾值偏移、漏電流增加、性能下降以及最終導(dǎo)致功能故障。因此,解決TID需要長(zhǎng)時(shí)間抵御輻射并能從中恢復(fù)。
單粒子翻轉(zhuǎn)(SEU)是SEE的一種情形,指高能粒子撞擊微電路中的敏感節(jié)點(diǎn)并引起狀態(tài)變化。例如,SEU可能導(dǎo)致寄存器單元或存儲(chǔ)單元從邏輯0翻轉(zhuǎn)為邏輯1或由到0。與TID引起的問(wèn)題不同,SEU被定義為“軟錯(cuò)誤”,因?yàn)樗梢员恍U?/p>
圖2. 時(shí)序邏輯中的單粒子翻轉(zhuǎn)(SEU)(圖片來(lái)源:Max Maxfield)
不幸的是,制程越來(lái)越先進(jìn)會(huì)導(dǎo)致多單元翻轉(zhuǎn)(MCU)的趨勢(shì)愈發(fā)嚴(yán)重。這意味著,由于芯片中的結(jié)構(gòu)排列非常緊密,SEU實(shí)際上可能會(huì)使多個(gè)存儲(chǔ)元件發(fā)生邏輯翻轉(zhuǎn)。此外,多位翻轉(zhuǎn)(MBU)是指一種在同一數(shù)據(jù)字或幀內(nèi)出現(xiàn)的MCU,可能會(huì)對(duì)系統(tǒng)的糾錯(cuò)能力產(chǎn)生負(fù)面影響。
SEE的另一種形式是單粒子瞬態(tài)(SET),它是指輻射粒子影響一部分組合邏輯而形成脈沖(也稱為毛刺或尖峰)。
圖3. 組合邏輯中的單粒子瞬態(tài)(SET)(圖片來(lái)源:Max Maxfield)
SET本身并不會(huì)造成太大問(wèn)題,因?yàn)橥ǔT谙到y(tǒng)其他部分檢測(cè)到之前,它就已經(jīng)消失了。話雖如此,如果SET恰好發(fā)生在錯(cuò)誤的時(shí)間,則可能在時(shí)鐘信號(hào)控制下進(jìn)入寄存器元件或存儲(chǔ)單元中,這時(shí)它就會(huì)變?yōu)镾EU。
另一個(gè)潛在的問(wèn)題是單粒子鎖定(SEL),SEE會(huì)可能導(dǎo)致CMOS電路的電源和接地軌之間產(chǎn)生低阻抗通路(實(shí)際是短路)。如果發(fā)生這種情況,則需要立即對(duì)設(shè)備重啟(關(guān)閉電源然后再打開(kāi)),防止對(duì)其造成嚴(yán)重?fù)p壞。不言而喻,在許多情況下重啟關(guān)鍵任務(wù)設(shè)備的電源可能會(huì)造成很多問(wèn)題。
對(duì)于FPGA還需要進(jìn)一步考慮。FPGA除了寄存器元件和RAM單元之外,還包括用于配置可編程邏輯塊的配置單元、可編程互連和可編程通用I/O。并且不同的FPGA采用的配置單元技術(shù)也不盡相同。
萊迪思提供基于SRAM的全新器件,該器件采用萊迪思Nexus FPGA技術(shù)平臺(tái)開(kāi)發(fā),為實(shí)現(xiàn)用于執(zhí)行關(guān)鍵任務(wù)應(yīng)用的先進(jìn)系統(tǒng)提供了絕對(duì)的優(yōu)勢(shì)。
Nexus技術(shù)平臺(tái)
萊迪思的Nexus技術(shù)平臺(tái)基于28納米FD-SOI工藝,為FPGA市場(chǎng)提供了巨大的差異化優(yōu)勢(shì)。
FD-SOI工藝直接帶來(lái)兩大重要優(yōu)勢(shì)。首先,由于采用全耗盡型工藝,因此芯片本身具有很強(qiáng)的抗輻射能力。FD-SOI本質(zhì)上不受單粒子鎖定的影響,這意味著在關(guān)鍵任務(wù)應(yīng)用下無(wú)需停機(jī),而通常則需要重啟電源才能解除這種狀態(tài)。
第二個(gè)值得注意的優(yōu)勢(shì)是靈活性。通過(guò)改變基底的偏壓,用戶可以選擇采用高性能(HP)還是低功耗(LP)模式運(yùn)行。此外,可以通過(guò)程序控制讓系統(tǒng)在兩個(gè)模式下實(shí)時(shí)切換。
例如我們之前已經(jīng)討論過(guò),當(dāng)輻射以高能粒子的形式穿過(guò)寄存器元件或存儲(chǔ)器單元時(shí),就會(huì)出現(xiàn)單粒子翻轉(zhuǎn),使半導(dǎo)體材料電離(產(chǎn)生電荷),形成短暫的電流脈沖。這種脈沖可能足以干擾到存儲(chǔ)的數(shù)據(jù)。
觀察如圖4(a)所示的bulk CMOS工藝。輻射(紅色箭頭)穿過(guò)芯片生成一條電離路徑,隨之留下正負(fù)電荷。這些電荷隨后在入射點(diǎn)處聚集(藍(lán)色箭頭)。
圖4. SEU對(duì)Bulk CMOS工藝(a)和FD-SOI工藝(b)的影響比較
相比之下,我們?cè)賮?lái)觀察如圖4(b)所示的FD-SOI工藝。在此情況下,由于氧化物層(黃色)下方的任何電荷都無(wú)法在敏感節(jié)點(diǎn)處聚集,因此,該氧化物層可以將生成的電荷隔離開(kāi)來(lái)。較少的電荷意味著瞬態(tài)電流脈沖也較弱,也就不太可能使寄存器元件或存儲(chǔ)單元發(fā)生故障。
之前提到的另一個(gè)潛在問(wèn)題就是MCU和MBU,這兩種情況下單個(gè)粒子可能破壞多個(gè)存儲(chǔ)元件。在如圖5(a)所示的Bulk CMOS工藝下,輻射(紅色箭頭)穿過(guò)芯片生成一條電離路徑,隨之留下正負(fù)電荷。除了在入射節(jié)點(diǎn)處聚集(藍(lán)色箭頭)外,這些電荷還可能在相鄰節(jié)點(diǎn)處聚集(紫色箭頭),從而導(dǎo)致MCU或MBU。
圖5. Bulk CMOS工藝(a)容易受到MCU和MBU的影響,而FD-SOI工藝(b)可以防止這些干擾
相比之下,我們來(lái)考察一下圖5(b)所示的FD-SOI工藝。除了將入射節(jié)點(diǎn)與大部分生成的電荷隔離開(kāi)外,掩埋的氧化物層(黃色)還極大地縮小了每個(gè)單元的敏感區(qū)域,讓單個(gè)粒子軌跡很難影響到多個(gè)數(shù)據(jù)位,從而大幅減少了MCU和MBU的發(fā)生。
關(guān)鍵任務(wù)系統(tǒng)和安全系統(tǒng)的設(shè)計(jì)人員通常使用FIT(故障率)的概念。器件的FIT是指器件在十億(109)個(gè)小時(shí)的運(yùn)行中可以預(yù)期的故障次數(shù)(例如,一個(gè)器件運(yùn)行十億小時(shí),1000個(gè)器件每個(gè)運(yùn)行100萬(wàn)小時(shí),一百萬(wàn)個(gè)器件每個(gè)運(yùn)行1000小時(shí),以此類推)。
就28納米技術(shù)節(jié)點(diǎn)下采用Bulk CMOS工藝的FPGA而言,其FIT約為100。相比之下,同樣是28納米制程,采用Nexus平臺(tái)FD-SOI工藝的萊迪思FPGA其FIT僅為1。這意味著Nexus平臺(tái)就將FIT降低了兩個(gè)數(shù)量級(jí)。基于Nexus平臺(tái)的FPGA(例如Lattice CrossLink?-NX)提供了詳細(xì)的SEU描述報(bào)告,可用于估算輻射效應(yīng)導(dǎo)致的故障率。
Nexus平臺(tái)憑借自身優(yōu)勢(shì),讓基于該技術(shù)的FPGA真正脫穎而出,更好地服務(wù)于醫(yī)療、汽車、安防等領(lǐng)域。然而這僅僅是開(kāi)始,因?yàn)槿R迪思的使命是將FIT降低到幾乎為零,這可以通過(guò)強(qiáng)化FD-SOI工藝以及下面討論的技術(shù)實(shí)現(xiàn)。
萊迪思Nexus FPGA
糾錯(cuò)碼(ECC)存儲(chǔ)器是一種數(shù)據(jù)存儲(chǔ)方式,它可以檢測(cè)和校正任何內(nèi)部數(shù)據(jù)損壞,例如由輻射引起的數(shù)據(jù)損壞。由于SEU被稱為“軟錯(cuò)誤”,從而有了軟錯(cuò)誤檢測(cè)(SED)和軟錯(cuò)誤校正(SEC)的概念。
同時(shí),內(nèi)存刷洗(Memory Scrubbing)是指從每個(gè)存儲(chǔ)位置讀取數(shù)據(jù),使用糾錯(cuò)碼校正位錯(cuò)誤(如果有),然后將校正后的數(shù)據(jù)寫回到同一位置。內(nèi)存刷洗通常用于關(guān)鍵任務(wù)和安全系統(tǒng)以及易受高輻射環(huán)境影響的系統(tǒng)。
設(shè)計(jì)人員通常必須自己來(lái)實(shí)現(xiàn)內(nèi)存刷洗功能,但這會(huì)消耗寶貴的可編程邏輯資源。相比之下,Nexus FPGA已經(jīng)包括了專用的IP模塊,能夠在后臺(tái)自動(dòng)執(zhí)行基于ECC的內(nèi)存刷洗功能。
此外,Nexus FPGA在配置存儲(chǔ)器中還內(nèi)置了SED/SEC模塊,從而在不需要外部電路的情況下逐幀進(jìn)行快速檢測(cè)和錯(cuò)誤校正。盡管此類錯(cuò)誤很少見(jiàn),但理論上仍是有可能的。如果輻射以某種方式導(dǎo)致配置單元狀態(tài)翻轉(zhuǎn),此專用IP會(huì)將其翻轉(zhuǎn)回去。
因此在萊迪思Nexus FPGA中尚未觀察到不可糾正的SEU。底層工藝將理論FIT降低為1,這意味著仍有可能會(huì)遇到數(shù)位發(fā)生錯(cuò)誤的情形,但受到影響的數(shù)位幾乎會(huì)立即恢復(fù)正常。
雖然如此,但依然可能出現(xiàn)內(nèi)部SED/SEC引擎可能無(wú)法糾正錯(cuò)誤的情況。第一種情況是出現(xiàn)多個(gè)單獨(dú)的SEU,其中兩個(gè)或多個(gè)粒子隨機(jī)擾亂同一數(shù)據(jù)幀內(nèi)的多個(gè)數(shù)位。第二情況是出現(xiàn)MBU,單個(gè)粒子使同一數(shù)據(jù)幀內(nèi)的兩個(gè)或多個(gè)數(shù)位出現(xiàn)異常。
在分析Nexus平臺(tái)抵御MCU和MBU輻射影響時(shí),要特別注意觀察這些效應(yīng)。這些測(cè)試證實(shí)了上述技術(shù)優(yōu)勢(shì),表明單個(gè)粒子很少會(huì)影響到多個(gè)單元。此外,由于萊迪思的存儲(chǔ)器陣列設(shè)計(jì),所有觀察到的MCU都出現(xiàn)在不同的數(shù)據(jù)幀中,從而可以通過(guò)SED/SEC引擎進(jìn)行校正。
除了使用真實(shí)輻射源測(cè)試Nexus FPGA外,這些器件還提供能讓系統(tǒng)開(kāi)發(fā)人員自行注入模擬輻射的機(jī)制。實(shí)際上,開(kāi)發(fā)人員可以同步或異步輸入單位和多位錯(cuò)誤。通過(guò)這些機(jī)制,開(kāi)發(fā)人員可以驗(yàn)證內(nèi)存刷洗功能和SED/SEC引擎的運(yùn)作,以及器件是否正常運(yùn)行并生成正確的數(shù)據(jù),這樣可以確保器件和設(shè)計(jì)即便處于輻射密集的惡劣環(huán)境中也能夠按預(yù)期工作。
結(jié)論
與所有電子元件一樣,F(xiàn)PGA可能會(huì)受到輻射的負(fù)面影響,隨著芯片中結(jié)構(gòu)的不斷縮小,這種影響也變得更加明顯。萊迪思Nexus技術(shù)平臺(tái)基于28納米FD-SOI工藝,能讓用戶選擇高性能或低功耗模式運(yùn)行,并通過(guò)程序控制實(shí)時(shí)做出更改。此外,由于FD-SOI工藝本身具有抗輻射性,因此其故障率FIT僅為1,與同一技術(shù)節(jié)點(diǎn)下的標(biāo)準(zhǔn)CMOS FPGA相比,提高了兩個(gè)數(shù)量級(jí)。
出于以上原因,萊迪思Nexus FPGA非常適合用于商業(yè)、工業(yè)、通信、安防和汽車等領(lǐng)域的關(guān)鍵任務(wù)和安全應(yīng)用。
評(píng)論
查看更多