FinFET存儲器的設(shè)計挑戰(zhàn)以及測試和修復(fù)方法
同任何IP模塊一樣,存儲器必須接受測試。但與很多別的IP模塊不同,存儲器測試不是簡單的通過/失敗檢測。存儲器通常都設(shè)計了能夠用來應(yīng)對制程缺陷的冗余行列,從而使片上系統(tǒng)(SoC)良率提高到90%或更高。相應(yīng)地,由于知道缺陷是可以修復(fù)的,冗余性允許存儲器設(shè)計者將制程節(jié)點推向極限。測試過程已經(jīng)成為設(shè)計-制造過程越來越重要的補(bǔ)充。
本文引用地址:http://butianyuan.cn/article/201710/366276.htm存儲器測試始終要面臨一系列特有的問題?,F(xiàn)在,隨著FinFET存儲器的出現(xiàn),需要克服更多的挑戰(zhàn)。這份白皮書涵蓋:
FinFET存儲器帶來的新的設(shè)計復(fù)雜性、缺陷覆蓋和良率挑戰(zhàn)
怎樣綜合測試算法以檢測和診斷FinFET存儲器具體缺陷
如何通過內(nèi)建自測試(BIST)基礎(chǔ)架構(gòu)與高效測試和維修能力的結(jié)合來幫助保證FinFET存儲器的高良率
雖然這份白皮書以FinFET工藝(制程)為重點,但其中很多挑戰(zhàn)并非針對特定制程。這里呈現(xiàn)的存儲器測試的新問題跟所有存儲器都有關(guān),無論是Synopsys還是第三方IP供應(yīng)商提供的或是內(nèi)部設(shè)計的。
FinFET與平面工藝比較
英特爾首先使用了22nm FinFET工藝,其他主要代工廠則在14/16nm及以下相繼加入。自此,F(xiàn)inFET工藝的流行
性和重要性始終在增長。如圖1所示。
圖1:90nm 到 7/5nm FinFET工藝節(jié)點下活躍設(shè)計及投片項目的增長
要理解FinFET架構(gòu),設(shè)計人員首先應(yīng)與平面架構(gòu)進(jìn)行溝道對比,如圖2所示。左圖標(biāo)識平面晶體管。改為FinFET的制程相關(guān)的主要動機(jī)是制程工程師所謂的“短溝道效應(yīng)”和設(shè)計工程師所謂的“漏電”。當(dāng)柵極下面的溝道太短且太深以至于柵極無法正常地控制它時,即使在其“關(guān)閉”的情況下,其仍然會局部“打開”而有漏電電流流動,造成極高的靜態(tài)功率耗散。
中間這張圖指示的是FinFET。鰭片(灰色)較薄,柵極將它周圍完全裹住。鰭片穿過柵極的所有溝道部分充分受控,漏電很小。從工藝上說,這種溝道將載流子完全耗盡。這種架構(gòu)一般使用多個鰭片(兩個或三個),但未來工藝也可能使用更多鰭片。多鰭片的使用提供了比單鰭片更好的控制。
使用多鰭片突出了FinFET與平面架構(gòu)之間的重大差異。平面工藝使用晶體管寬度和長度尺寸的二維界面。而在FinFET中,鰭片大小是固定不變的,柵極厚度(其定義了溝道長度)也是固定不變的。改變FinFET的唯一參數(shù)是鰭片數(shù)量,而且必須是整數(shù)。比如:不可能有2? (兩個半)鰭片。
圖2:平面架構(gòu)與FinFET架構(gòu)對比
FinFET降低了工作電壓,提高了晶體管效率,對靜態(tài)功耗(線性)和動態(tài)功耗(二次方)都有積極作用??晒?jié)省高達(dá)50%的功耗。性能也更高——在0.7V上,性能(吞吐量)比平面工藝高37%。
FinFET復(fù)雜性帶來了制造困難
與平面工藝相比,F(xiàn)inFET的復(fù)雜性一般會導(dǎo)致更加昂貴的制造工藝,至少初期是這樣。隨著代工廠經(jīng)驗不斷豐富和對工藝過程的控制越來越嫻熟,這些成本可能會下降,但就目前而言,放棄平面工藝的話會增加成本。
FinFET還存在熱挑戰(zhàn)。由于鰭片直立,晶片的基體(襯底)起不到散熱片的作用,這可能導(dǎo)致性能下降和老化。熱挑戰(zhàn)還會影響修復(fù),因為在某些情況下,存儲器不僅需要在生產(chǎn)測試中修復(fù),以后還需要在現(xiàn)場修復(fù)。
在使該工藝投產(chǎn)、擴(kuò)大到量產(chǎn)等情況下,代工廠必須考慮這些挑戰(zhàn)。一般來說,代工廠還要負(fù)責(zé)存儲器位單元,需要對其做全面分析(通過模擬)和鑒定(通過運行晶圓)。IP提供商,無論是存儲器、標(biāo)準(zhǔn)單元還是接口提供商,也要在構(gòu)建自己的布局的同時考慮這些問題。
SoC設(shè)計人員受到的影響不大,至少對于數(shù)字設(shè)計流程來說是這樣。一般來說,設(shè)計人員見到鰭片的次數(shù)絕不會比他們以往見到晶體管的次數(shù)更多,除非他們想在其布局與布線工具所使用的,采用金屬結(jié)構(gòu)進(jìn)行連接的標(biāo)準(zhǔn)單元內(nèi)部一探究竟。
STAR存儲器系統(tǒng)
Synopsys生態(tài)系統(tǒng)(圖3)包括創(chuàng)建布局、完成提取、模擬等需要的所有工具。Synopsys內(nèi)部各IP小組能夠充分利用完整的Synopsys工具套件來設(shè)計、驗證并測試Synopsys IP,包括存儲器在內(nèi)。
圖3:Synopsys工具套件
Synopsys已經(jīng)從最底層起搭建了自己的專門知識。他們與所有不同的FinFET廠家均構(gòu)建了多個測試芯片:三星、TSMC、英特爾、GLOBALFOUNDRIES和UMC。截止2015年8月,Synopsys運行過的FinFET測試芯片有50個以上。這些芯片均使用了被稱之為DesignWare?STAR存儲器系統(tǒng)?的Synopsys測試和修復(fù)解決方案,其中STAR表示自測試與修復(fù)。
自測試和修復(fù)曾經(jīng)在很多代工藝制程上使用過,不只是FinFET。通過不斷投入,Synopsys改善了STAR存儲器系統(tǒng)。圖4中,STAR存儲器系統(tǒng)用紫色方塊指示。它們包含STAR存儲器系統(tǒng)IP編譯器生成的RTL模塊以應(yīng)對各種存儲器:SRAM、雙端口、單端口、寄存器文件等。包裝器通過STAR存儲器系統(tǒng)處理器聯(lián)系在一起,這些處理器向整個系統(tǒng)的總管理器即STAR存儲器系統(tǒng)服務(wù)器報告,而服務(wù)器則轉(zhuǎn)而提供所有必要的調(diào)度和握手信號。外部接口則經(jīng)由JTAG測試訪問端口(TAP)控制器。
圖4:DesignWare STAR存儲器系統(tǒng):針對制程優(yōu)化了的存儲器測試、修復(fù) 診斷
每個STAR存儲器系統(tǒng)處理器的能力都足以處理芯片上的檢測、診斷和缺陷修復(fù)。連接和配置所有紫色方框可能比較耗時且容易出錯,所以STAR存儲器系統(tǒng)還實現(xiàn)了以下工作的自動化:
生成、插入和確認(rèn)配置
完成測試向量的生成
執(zhí)行故障分類
定位失效
糾錯(如果可能)
Synopsys將所有這些自動化步驟映射在FinFET工藝上,以便處理與FinFET存儲器有關(guān)的新的分類和失效問題。
自2012年起,Synopsys就一直與產(chǎn)業(yè)生態(tài)系統(tǒng)中得以較早接觸制程參數(shù)的存儲器設(shè)計人員合作。在多個FinFET廠家的配合下,Synopsys分析了他們的位單元,也檢查、驗證了他們的模型,創(chuàng)建測試芯片并在Synopsys內(nèi)部實驗室中直接對硅芯片進(jìn)行了分析。這個過程讓Synopsys加深了對FinFET缺陷問題的認(rèn)識,使Synopsys可以優(yōu)化STAR存儲器系統(tǒng)來解決它們。
因此,如今STAR存儲器系統(tǒng)已被使用在多個方面:
工藝開發(fā):利用STAR存儲器系統(tǒng)特征化描述和理解晶圓制造工藝
IP鑒定:特征化描述和鑒定存儲器IP本身
SoC設(shè)計:將STAR存儲器系統(tǒng)納入SoC設(shè)計分析中,包括生產(chǎn)測試和修復(fù)
管理現(xiàn)場可靠性和老化:處理FinFET工藝中固有的、與鰭片突出和底層熱隔離有關(guān)的熱問題。SoC壽命中出現(xiàn)的問題可能是小到軟性錯誤的小問題,它們可以通過糾錯代碼(ECC)自動糾正。但是高可靠性系統(tǒng)中的老化可能需要定期或在上電時使用STAR存儲器系統(tǒng)修復(fù)生產(chǎn)測試完成很久以后在現(xiàn)場出現(xiàn)的故障。
當(dāng)然,存儲器并非芯片上唯一需要測試的部分。還有邏輯模塊、接口IP模塊、模擬混合信號(AMS)模塊等(也需要測試)。Synopsys提供了一組能與STAR存儲器系統(tǒng)平滑整合的全面的測試和IP方案(圖5)。對于邏輯模塊,Synopsys提供的是DFTMAX?和TetraMax?。接口IP (如DDR、USB和PCIe)有自己的自測試引擎,但它們都能無縫地配合STAR層次化系統(tǒng)(Synopsys的系統(tǒng)級測試方案)一起工作。僅有針對單個模塊的解決方案是不夠的,SoC必須流暢地在頂層上工作。
圖5:Synopsys測試和良率解決方案:提高質(zhì)量、可靠性和良率
認(rèn)識FinFET存儲器故障和缺陷
理解如何測試和修復(fù)存儲器之前,設(shè)計人員需搞清楚存儲器失效的方式。比如,電阻性故障顯現(xiàn)出來的是邏輯上的性能問題,雖然邏輯通過了測試但無法全速工作。在存儲器中,電阻性故障可以表現(xiàn)為更加微妙的方式。這種故障可能只有在多次操作(一次寫入操作后接著幾次讀操作)之后才引起可檢測性的錯誤,而不是在更標(biāo)準(zhǔn)的一次操作(一次讀操作)后。
設(shè)計人員還必須通過研究布局確定哪些錯誤可能真正發(fā)生。在數(shù)字邏輯測試中,可以通過分析哪些金屬是相鄰的而且可能短路來大幅提高覆蓋率。在存儲器中通過分析信號線可能出現(xiàn)失效等問題所在位置的潛在電阻性短路亦可做到這點。這需要綜合研究布局和分析測試芯片,發(fā)現(xiàn)可能的故障。深度分析的需求是Synopsys在多家代工廠中運行50多個FinFET測試芯片的理由之一。來自這些測試的信息用于改進(jìn)STAR存儲器系統(tǒng)。
圖6表明了FinFET工藝可能存在的幾種不同的缺陷類型。圖中每個晶體管只有一個鰭片,而實際上每個晶體管的鰭片通常不止一個。當(dāng)然,開路和短路都可能發(fā)生,但在FinFET中它們可能產(chǎn)生不同的表現(xiàn):鰭片開路、柵極開路、鰭片粘連、柵極-鰭片短路等。每種情形都可能是硬開路或短路,也可能是電阻性的,其中高低不等的電阻值產(chǎn)生不同的表現(xiàn)。
圖6:潛在FinFET缺陷類型
分析布局后,設(shè)計人員必須研究拓?fù)浣Y(jié)構(gòu),根據(jù)晶體管的物理結(jié)構(gòu)判斷故障是否真的會發(fā)生。
下一步對設(shè)計人員來說要從純晶體管上升一個層級。一個SRAM單元包含六個晶體管,所以要分析這個單元在內(nèi)部節(jié)點中的開路、可能發(fā)生的方式以及會產(chǎn)生什么結(jié)果。
下一個層次上的目標(biāo)是單元布局。比如,圖7表示六個晶體管SRAM單元中可能發(fā)生的所有可能的開路缺陷。第三,設(shè)計人員分析整個存儲器陣列的故障,如位線中的開路、字線之間的短路等等。最后,在模塊級上,整個存儲器,包括周圍的模塊(如地址解碼器)都需要檢驗,就如同讀出放大器那樣。
實際分析通過缺陷注入繼續(xù)進(jìn)行。這基于GDS (版圖)本身。缺陷注入在版圖和SPICE模型上進(jìn)行,使用了針對每個庫的缺陷庫,然后觀察它們會如何表現(xiàn)。缺陷注入在所有14/16nm FinFET提供商的晶體管上進(jìn)行,不論是IDM還是代工廠。缺陷注入也在較高節(jié)點(如45nm和28nm)的平面工藝上進(jìn)行。
圖7:FinFET存儲器單元版圖中注入的開路缺陷實例
缺陷注入展示了每種缺陷的行為方式。接下來的任務(wù)就是通過測試序列識別(TSI)找到檢測缺陷的測試序列。對于每種潛在的缺陷,一個或多個測試序列得以識別,同樣其檢測的條件及對應(yīng)的故障模型也被確定。通常需要使用大量的測試序列、應(yīng)力角和模擬設(shè)置,直至找出一個能明顯區(qū)別于零缺陷單元的序列。
有些情況下,這些缺陷會是以前在平面工藝中見過的故障模型,但FinFET存儲器有幾種額外的失效模式。比如,圖8給出了一種微妙的失效模式。下拉晶體管中的電阻性鰭片開路導(dǎo)致動態(tài)偽讀破壞故障(dDRDF)。在此,一個寫操作,接著7個讀操作,導(dǎo)致存儲器單元的位值翻轉(zhuǎn)。然后可以更加詳細(xì)地分析此故障,因為它原來與頻率有關(guān)。在1.2MHz頻率上,產(chǎn)生這個故障僅用了4次讀操作,而在4MHz上,則用了18次讀操作。溫度和電壓也會影響這些值。
圖8:缺陷注入調(diào)查結(jié)果:dDRDF-7
來自Synopsys關(guān)于FinFET工藝故障建模的部分普遍結(jié)論是:
FinFET存儲器比平面存儲器對動態(tài)故障更敏感
FinFET存儲器對制程變異故障更穩(wěn)定
靜態(tài)單單元和耦合故障在兩種存儲器中均很常見
應(yīng)力角(電壓、溫度、頻率)對于檢測FinFET故障非常重要,僅使用標(biāo)稱角會遺漏一些問題。
生成測試序列
故障建模背景完成后,設(shè)計人員要明確測試的電壓、溫度和頻率要求。給定應(yīng)力角的序列與稱為測試算法發(fā)生器(TAG)的引擎結(jié)合。TAG 將與針對個別故障類型的小測試序列組合在一起,產(chǎn)生使測試時間和測試成本最小化的最小測試算法。
圖9展示了針對FinFET的TAG。圖中的過程是全自動的,從故障注入到測試序列識別再到TAG本身。不同的算法片段可以分割以應(yīng)對不同的應(yīng)力角和不同的故障檢測級別。分割形成了一個針對不同條件的測試序列池,這是由于不同用戶和應(yīng)用具有不同的要求。比如,生產(chǎn)測試期間,設(shè)計人員必須識別故障,以便他們能夠糾錯,但是確定每個故障根源的完整分析可能十分耗時。然而,如果某種錯誤經(jīng)常發(fā)生,設(shè)計人員會執(zhí)行更加復(fù)雜而昂貴的測試,以縮小故障范圍,從而能采取相應(yīng)的糾錯措施。
圖9:FinFETs測試算法綜合
這些過程和測試全部在STAR存儲器系統(tǒng)中得以實現(xiàn),考慮了來自大多數(shù)FinFET提供商的故障,這些故障在不同提供商之間具有很大的共性,盡管位單元彼此相差很大。
STAR存儲器系統(tǒng)還將可編程能力納入其中??梢酝ㄟ^JTAG端口和TAP控制器更新算法,修改測試序列本身或為調(diào)試和診斷而升級算法,或者就是簡單的算法升級,甚至是在現(xiàn)場。
使用STAR存儲器系統(tǒng)檢測并修復(fù)故障
Synopsys對FinFET潛在故障和缺陷的深入而徹底的分析內(nèi)建在了STAR存儲器系統(tǒng)之中,使得該系統(tǒng)可以在很多層次上使用,如圖10所示。最高層次是了解哪個存儲器例化單元出現(xiàn)失效,這對于生產(chǎn)測試和糾錯可能就足夠了。下一個層次是故障的邏輯地址和物理地址。STAR存儲器系統(tǒng)可以確定故障位的物理X、Y坐標(biāo)。缺陷可以分類(單個位、成對位、整列等),故障可以分類并最終精確定位到故障部位。注意,所有這些都由芯片外面的STAR存儲器系統(tǒng)確定,而不是使用電子顯微鏡或其他更精細(xì)/昂貴的方式。
圖10:DesignWare STAR存儲器系統(tǒng):多層次精密診斷
開發(fā)為SoC用戶(或存儲器IP設(shè)計人員)帶來高質(zhì)量結(jié)果的工具和IP是一個漫長而持續(xù)的過程。從深入的存儲器設(shè)計知識開始,早期接觸多家代工廠的制程參數(shù)、大量的故障注入模擬、硅芯片特征化和精確的行為和結(jié)構(gòu)模型,該過程可能需要三年以上。深入理解FinFET特有缺陷得到了對面積影響更小和測試時間更少的優(yōu)化測試算法,外加對使缺陷易于顯現(xiàn)的應(yīng)力條件的認(rèn)識。最后,所有這些知識全部結(jié)合在STAR存儲器系統(tǒng)中用于創(chuàng)建自動插入、快速測試和使產(chǎn)出最大化。
FinFET為使用預(yù)先插入的一組可調(diào)度的存儲器優(yōu)化時序提供了更多的可能性。BIST多路復(fù)用器可隨共享測試總線落實到位。這些測試總線可由定制數(shù)據(jù)通路創(chuàng)建者和處理器內(nèi)核進(jìn)行復(fù)用。Synopsys創(chuàng)立了多存儲器總線(MMB)處理器來充分利用FinFET提供的可能性。MMB與映射到該總線上的所有緩存共享BIST/BISR邏輯,因此不再需要存儲器包裝器,減小了面積占用和功率消耗(圖11)。
圖11:搭建在傳統(tǒng)STAR存儲器系統(tǒng)處理器上的MMB處理器獲得更高FinFET性能及更小面積
圖12展示了一個SoC實例,其中部分存儲器傳統(tǒng)地使用STAR存儲器系統(tǒng),而CPU內(nèi)核中的存儲器則通過MMB處理器訪問。MMB處理器不直接處理包裝器,而是訪問圖12中紅色方框代表的總線端口。MMB處理器從CPU RTL中讀取信息,理解存儲器細(xì)節(jié)和寫入總線的配置,引起即時握手。
圖12:STAR存儲器系統(tǒng)MMB使用模型
維修故障
現(xiàn)代存儲器同時具有行和列冗余性(圖13)。檢測到故障時,可以通過在非易失性存儲器中記錄問題和使用維修方案配置冗余列。STAR存儲器系統(tǒng)通過縮小故障范圍和確定置換出故障的方法來自動進(jìn)行維修。這個過程可以對所有應(yīng)力角進(jìn)行優(yōu)化,故障在一個應(yīng)力角檢出并擴(kuò)大到下一個應(yīng)力角,以此類推。
圖13:使用行、列修復(fù)維持FinFET高良率
由于STAR存儲器系統(tǒng)的自動化程度如此之高,診斷和修復(fù)可以按預(yù)定間隔在現(xiàn)場重復(fù)進(jìn)行,比如系統(tǒng)上電時或按預(yù)定的時間長度。這種重復(fù)可以通過內(nèi)建冗余性消除因老化而產(chǎn)生的故障。
負(fù)偏壓溫度不穩(wěn)定性(NBTI)是FinFET最令人頭痛的一個特殊老化問題(平面晶體管沒有這樣的問題)。NBTI主要與溫度有關(guān),會導(dǎo)致取決于 FinFET 工作溫度范圍的性能逐漸下降。
單粒子效應(yīng)和糾錯
不僅會發(fā)生可預(yù)測的錯誤,間歇性的軟性錯誤也會發(fā)生。間歇性軟性錯誤不需要用內(nèi)建冗余性修復(fù)。它們一般是高能粒子引起的。隨著位單元在較小的制程節(jié)點中靠得越來越近,單粒子效應(yīng)(SEE)可能會影響不止一位,而多位缺陷必須檢測并糾正。
為了應(yīng)對此類錯誤,STAR存儲器系統(tǒng)包含一個ECC編譯器。該編譯器不僅提供“經(jīng)典”存儲器ECC(一般允許檢測多位錯誤),而且還能處理一位糾錯。另一方面,該ECC編譯器還能處理多位糾錯。STAR存儲器系統(tǒng)ECC編譯器定義了相關(guān)的存儲器配置,用ECC存儲器取代了存儲器(當(dāng)然,它比需要的數(shù)據(jù)更寬:一個32位存儲器的寬度約為40位)。然后用所有系統(tǒng)測試和修復(fù)邏輯包裝該存儲器。
圖14:3D-IC中的外部存儲器測試
外部DRAM或memory-on-logic呈現(xiàn)出一組新的挑戰(zhàn)。利用硅通孔(TSV)或其他方法,DRAM的物理位置處在芯片上方,如圖14所示。不過,外界不可以直接訪問存儲器,或者至少沒有達(dá)到測試它們所需要的性能。如果它們使用高速接口的話(如DDR4、JEDEC Wide I/O或Micron的混合存儲器立方體),測試工具無法輕易地攔截存儲器與邏輯芯片之間的信號。相反,坐落在SoC上能夠與芯片之外的DRAM交互的引擎則能以需要的高速度驅(qū)動這些接口。就像使用片上存儲器一樣,使用外部DRAM的SoC必須找出哪個存儲器、哪一位或者芯片堆疊中的哪個互聯(lián)失效及失效原因。STAR存儲器系統(tǒng)能夠滿足這個要求并經(jīng)常對其進(jìn)行修復(fù)。
STAR層次化系統(tǒng)
所有FinFET SoC都包括存儲器之外的其他模塊。它們會有其他混合信號IP,如PCIe、USB、DDR、PLL等。所有這些接口都需要自測試,很多情況下,故障需要檢測和維修。對快速I/O接口來說,維修意味著調(diào)整、校準(zhǔn)和組幀。有些接口IP本身就包含存儲器,使得測試和維修更加復(fù)雜化。這種復(fù)雜系統(tǒng)需要象STAR層次化系統(tǒng)(如圖15所示)這樣的全面測試和維修基礎(chǔ)架構(gòu)。
圖15:DesignWare STAR層次化系統(tǒng)
STAR層次化系統(tǒng)是對STAR存儲器系統(tǒng)的補(bǔ)充,可以測試、調(diào)試和糾正混合信號非存儲器IP。作為一種層次化解決方案,STAR層次化系統(tǒng)能從次芯片級直至整個SoC取得IP及其測試向量,創(chuàng)建存取訪問和接口,并在下一個級別上建立測試向量。
小結(jié)
如今Synopsys全面支持各種制程節(jié)點,包括14nm和16nm FinFET,而在10nm和7nm工藝上的工作也正在進(jìn)行之中。利用從這些制程節(jié)點的測試芯片中獲得的知識,STAR存儲器系統(tǒng)的各項創(chuàng)新將繼續(xù)提高針對嵌入式存儲器的測試和診斷能力,同時增加了優(yōu)化SoC良率的功能。
Synopsys還提供了STAR層次化系統(tǒng),通過利用任何現(xiàn)有標(biāo)準(zhǔn)互連(如IEEE 1500)以及TAP控制器全面測試各種其他
混合信號和接口IP。
作者:Yervant Zorian博士,首席架構(gòu)師兼研究員Synopsys
評論