ASIC Design之初(2)-我們在對抗甚麼

hockchen@digwise-tech.com 2020/6/8

1. 我們到底在對抗甚麼?

把數據視覺化能讓自己跟團隊夥伴們更冷靜地深度思考: 我們在實體設計過程中所選擇與關注的PVT corners, 所加的設計餘量(design margin), 跟晶片從微觀到巨觀所量測到的行為與趨勢等到底科不科學? 我們或許都習慣到國立交通大學周邊的數個土地公廟拜「仙草蜜」, 祈求晶片「效能」與「良率」能符合預期. 如題, 在實體設計這個領域我們可能已經辛苦奮戰了大半輩子,耗盡了比家人相處還要久的時間, 而我們到底在忙甚麼? 守備甚麼? 我們到底在對抗甚麼?

1.1. 晶片效能梯度 (Performance Gradient)

我們先來看看稍微巨觀, 屬於系統層級「靜態的」晶片效能梯度(gradient)問題, 其隱含在晶圓製造過程中經過許多光學、化學、機械等物理綜效所導致的不平坦. 下圖Fig. 1 左邊呈現了四分之一晶圓區域, 由晶片內6 個不同位置的Ring-Oscillator(RO)頻率所擬合的曲面, 圖中Z 軸為RO 的頻率. 圖的右邊則顯示在該區域中選擇四顆比鄰的晶片做局部放大, 淺粉色曲面則是由6顆RO(0~5 以不同顏色表示)取平均值的擬合, 而該曲面梯度隱含了晶片內變異性(On-chip Variation: OCV)的問題. 梯度像是由㇐個相對較大的波浪(平均值), 影響了晶片內局部效能體質不均(請注意它不是隨機的, 沒有cancellation 效應!), 再疊加上微觀6 個不同位置RO 所形成的小漣漪(它相較有隨機性).

Fig. 1 晶片效能梯度(gradient)

上圖Fig. 1 告訴我們, 南北半球(若將晶圓視為一個2D 圓球)的效能梯度可能是完全不同的, 這跟晶圓廠的製程控制能力有關, 此外晶圓內/外圈的梯度可能也不同! 因此, 等晶片實際量產與封裝測試時, 沒道理critical paths 會是由同一群壞蛋所組成. 這或許讓我們可以好好反思,STA 所用的AOCV 或LVF 方法學是否完善? 如何反饋真實的效能梯度到STA? 為何Small-delay fault 或MBIST 跟Fmax correlation 不好? 或許工具與演算法推選出來的(sensitized) critical path 先天在物理上就是不同群, 再加上後天許多因素使問題堆積地更撲朔迷離. 正向思考, 我們已經看到LDO Array 提供區域補償或以多個小晶片封裝(chip-let)取代單一大晶片在良率成功提升的案例. 或許我們該思考新的測試電路(test key)與方法, 以利量產時能逮到上述製程的問題. 若能搭配機器學習(machine-learning)對不同電壓-頻率與錯誤特徵(error signature)做訓練, 或許未來用在傳統SOC design 可以取代small-delay fault, 大大降低at speed 測試成本!

1.2. 大波浪上的小波浪

大家是否思考過一個問題: 我們身處在銀河系內, 如何得知銀河系的外貌? 是的, 我們要設法跳脫自己所處的思想框架, 透過觀察外星系把所學(例如視差、光度、微波輻射、吸收譜線等等)組織起來進行模擬. 或許大家早已經知道太陽系在星際間怎麼移動的, 所以鮮少人再跳出來思考或去挑戰這個習知的問題? 下面Fig. 2 的鏈結有段影片若有空可以看看, 它或許可以激發我們一些新的想法.

Fig. 2 大波浪上的小波浪 [Source: YouTube 2012 https://youtu.be/C4V-ooITrws]

太陽系距離銀河系中心大約2.77 萬光年的位置, 位於被稱為獵戶臂的螺旋臂的內側邊緣, 繞著銀河系中心旋轉周期大約為2.5 億年, 也就是說我們地球所在的太陽系大約以250km 每秒的速度繞著銀河系中心旋轉, 並且以110 公里/秒的速度靠近仙女座星系, 此外整個銀河系對銀河系外的參考坐標系還以大約每秒600 公里的速度在移動. 相較太陽系行星的運動, 太陽繞行銀河系中心意味著有個更大的力量牽引著, 而行星運動只不過是疊加在繞行銀河系這大波浪上的小漣漪.

我們把前面所討論的晶片效能梯度(gradient)問題放大到整個晶圓級別來看, 如下圖Fig. 3 裡面6 個不同顏色的細點分別屬於一個晶片(die)內不同位置的RO, XY 座標表晶片在晶圓的位置,Z 軸表示RO 頻率值, 淺灰色曲面為每一個晶片中6 個RO 平均值的擬合. 我們或許從沒感到奇怪,晶圓(wafer)不是一片一一片的嗎? 而眼前這個一得像火山錐的晶圓級RO 效能曲面又是甚麼?

透過資料科學的輔助, 我們有機會在晶片內的變異性有些初步的認識與理解. 更重要的是: 以往我們所認知的隨機性, 其實是疊加在一個更大的趨勢上, 然而它並不隨機(沒有cancellation).我們現在所面臨的設計餘量(design margin)問題, 也有類似的現象. 接下來, 讓我們繼續用資料分析驅動的顯微鏡來看看這個事實上更巨大的趨勢確鮮少人探究它的「暗力量」.

Fig. 3 Global & Local Effect

很顯然, 圖Fig. 3 提醒我們: 一片wafer 可能同時有全域(global)與局部區域(local)的效能差異, 而晶片面積越大將越容易面臨此困境. 實體設計時所加的margin 必須同時能扛住該局部梯度的變化, 這也說明為何小晶片(chip-let)能有效提高良率, 因為一般晶圓廠給我們的時序簽核配方(timing sign-off recipe)很可能不適用! 傳統我們以為能守住兩個3σ的極端就能守住99%良率的這觀念極有可能是個「晶片效能殺手」, 因為全域的偏差其實可以透過電壓等校性來補償而不至於造成太大問題(只要漏電流能被控制住), 而局域的梯度才是真的要命!

1.3. 測量數據與統計學上的誤差

我們可能常常私底下抱怨說晶圓廠給的SPICE model 不準確, 或是製程(process)參數沒有達標(on-target), 但究竟對元件速度效能的目標誤差多少又給不出精確值? 此時我們更應該思考資料科學的創新, 透過資料分析我們才有機會「科學化」地把這些懸置的物理量精確標示出來. 請大家把下面參考表格資料放在心裡有個底: 以統計學來看, 一片晶圓產生的WAT 數據樣本(~72 points full map)若要達95%置信度(confidence level), 我們應合理預期其結果約有至少10%以上誤差.

我們再把資料層級往外擴展至對製程物理的分析(例如次臨界電壓的物理性), 晶圓廠(Foundry)調節製程工藝的語言, 例如 Isat, Vtl, R, C, …等等對實體設計工程師而言通常是霧裡看花,而這些WAT 物理電性的量測在量產階段每片wafer 可能只有9 點. 實體設計端面對的是標準元件delay, power, …等等, 而往往一片晶圓它能有500~4000 等級的樣本數量(CF>95%, error<5%).

未來晶片設計端與晶圓製造端勢必會有更多的數據交流, 透過跨領域數據的分享(foundry & design house data sharing), 以資料科學的創新搭配對元件物理的深度理解來讓晶片「能效」(energy-efficiency; 指同時優化晶片的「功耗」與「效能」)可以做得更極致, 例如妥善運用製程與電壓補償的等效性原理來規劃設計晶片架構與實體設計, 或是市場導向的分BIN 與量產出貨的策略.

2. Timing Sign-Off

我們總是習慣在自己的井內觀看所擅⾧的物理世界, 然後要求別人配合. 若您總是善於撒下數百種PVT corners, 然後透過大數據分析STA 各種timing report 來推論實體設計餘量(design margin)與時序簽核(timing sign-off)守備範圍的老手, 那或許您真的需要好好跟製程營運(operation)團隊討論討論, 要不這極悲觀然而又扛不住現實的方法學實際很容易落入「晶片效能殺手」與「資源殺手」的罪人.

在晶片實體設計過程中為了拿到較高的良率, 工程師們常常為了許多摸不著邊的設計餘量(design margin)而傷腦筋. 先撇開晶片設計端可能潛在的問題, 例如PDN(power delivery network)品質, clock tree 品質, SPICE 模型的準確度以及整個系統RLC 與軟體運行過程所可能產生的電壓抖動等問題, 晶片製造拿回來後其製程可能會在甚麼水平? 系統運行時可能處於甚麼電壓? 甚麼溫度? 我們往往基於希望晶片能運行在甚麼樣的工作頻率, 準備妥協損失多少良率等等思路與討論來建立時序簽核的守備範圍(signoff corners).

2.1. 製程配方優化(Process Recipe Optimization)

若把製程優化比喻成打靶, 那麼調整製程配方的過程(process recipe tuning), 就像是用一把散彈槍打靶. 若依據晶圓廠提供的SPICE 模型描繪適當的靶心與邊界, 並對量產過程每片晶圓(wafer)的WAT 數種量測值做二維散佈圖描點(例如Isat 或Vtl 等等), 當量產數據夠多時我們可以觀察實際silicon 與SPICE 差異, 如下圖Fig. 4.

Fig. 4 WAT IsatNP Distribution

一般我們實際會面臨的狀況可能是, 投片生產後晶圓廠才能告訴我們P-MOS 不達標(例如Isat 偏弱5%), 而這物理量實際影響實體設計多少與我們事前埋下的餘量(margin)有關, 這也是競爭力損失的其中一個關鍵來源. 往往我們一開始就假設晶片會運行在一個實際上就根本不會發生的物理環境條件上, 然後期待包山包海包3σ的過度設計(over design)方式可以對抗一切. 上圖Fig.4 中灰色區域是所有WAT 參數散佈點的分布範圍, 黑色點是整個批量(lot)的平均值, 而SPICE mode 3σ邊界則如黃色框顯示, 請注意灰色區域都是我們量產過程實際會拿到的晶片製程參數偏移. 其中, 每一個批量約25 片wafers, 每片wafer 約有9~74 WAT test points一般我們實際會面臨的狀況可能是, 投片生產後晶圓廠才能告訴我們P-MOS 不達標(例如Isat 偏弱5%), 而這物理量實際影響實體設計多少與我們事前埋下的餘量(margin)有關, 這也是競爭力失的其中一個關鍵來源. 往往我們一開始就假設晶片會運行在一個實際上就根本不會發生的物理環境條件上, 然後期待包山包海包3σ的過度設計(over design)方式可以對抗一切. 上圖Fig. 4 中灰色區域是所有WAT 參數散佈點的分布範圍, 黑色點是整個批量(lot)的平均值, 而SPICEmodel 3σ邊界則如黃色框顯示, 請注意灰色區域都是我們量產過程實際會拿到的晶片製程參數偏移. 其中, 每一個批量約25 片wafers, 每片wafer 約有9~74 WAT test points..

實務上製程調節最困難的部分通常是這把散彈槍必須同時瞄2~3 張靶(一旦我們晶片設計用了兩個以上的VT), 而另外一張靶往往不在彼此的慣性軌道上, 如圖Fig. 5. 當我們嘗試將靶心瞄準ULVT 時, LVT 的彈著點偏移了(可能偏快但更漏電了), 反之當我們將靶心瞄準LVT 時, ULVT 的彈著點偏移了(可能偏慢使得速度不達標了). 最後真正能量產的目標配方都不在兩者的靶心上,而是妥協的下的某個偏移位置, 若加入第三張靶這問題將更加嚴峻.

Fig. 5 Process Recipe Tuning

就像是設計團隊須依照晶圓廠的指示畫一個「超級大的靶」好讓晶圓廠來打, 這簡直是一場賭博!這意味著靶心(margin)若畫的不夠大, 生產時掉靶機率極高. 換句話說, 若沒彈著點可能連彈道修正的機會都沒有, 而代價就是用晶片面積與效能(design efficiency)做交換! 這顯然困擾製程營運的團隊, 也讓時序簽核與系統驗證團隊大感意外, 然而這也提供了我們創意思考解決問題的契機!

2.2. Temperature Inversion Phenomenon

我們所習知的逆溫「異常」(temperature inversion phenomenon), 即高溫時晶格震盪使電子電動遷移(mobility)變慢這事兒到了低壓(尤其是近鄰界電壓)工作時反倒變成了「常態」, 因為VT 效應強過mobility 效應. 如下圖Fig. 6 所示, 某個製程下元件的速度(Y-軸)隨著操作電壓不同其對溫度的表現從0.8V 沒有逆溫變成0.75V 開始出現逆溫, 這現象會在較高的VT 或較大的channel-length 提早發生. 值得注意的是: 原本我們放最大心力去守備3σ(3/1000)機率的高低溫搭配高低壓的策略似乎扛不住majority? 即當製程落在TT 且晶片運行在室溫與常壓的轉折點. 這對一般應用場景組合較多的晶片(例如手機晶片)格外需要關注, 尤其當我們晶片混雜了不同VT 元件時, 它像是率領一支步伐不同調的混雜隊伍, 面對各種環境的感受(PVT sensitivity)與對指令做出的反應(PVT compensation)都不同調, 而前面談論到用散彈槍打靶調彈道(process tuning)的過程也會遭遇同樣的問題.

Fig. 6 Temperature & Voltage Effect

上圖Fig. 6 也顯示其它以往晶圓廠以常態分佈描述製程變異性的錯誤指導(在LVF 出現以前),這是另一個「晶片效能殺手」. 例如製程與電壓個別對溫度的分佈是log-normal, 而不是normal!此外, 元件速度對溫度的感受與反應也不是線性(而是受制於工作電壓), 它也不完全能套用cancellation 的設計方法學(沒有隨機性)! 幸運的是, 我們可以用不同觀測尺度的手法去測量到非常接近的物理趨勢與結果.

以圖Fig. 6 的手法把晶圓廠給的所有liberty corner 全部放進來看, 我們很容易知道全域變異性(global variation)分佈的⾧相(並不需要費時或耗費資源去打Monte, 因為是一樣的東西), 我們會得到類似上圖的答案, 它會是呈skew-normal 甚至是log-normal 分佈(early & late 是不對稱的). 但我們得擔心晶圓廠給的局域變異性(local variation)或是被model 在SPICE 模擬環境裡的local variation 參數是足否夠真實? 全域變異性(global variation)老實說並不可怕而且有很多招數可以對抗, 而local variation 更需多放點巧思!

是不是每次問工程師:「如何測量晶片內變異性?」, 常常得到的是「不可能」或「代價很高, 要在晶片內放很多偵測電路」等等之類的答案? 若我們今天把問題改成:「能不能看看小於晶片尺度的RO 效能分佈呢?」, 或許答案又變得簡單許多而且有許多專利與論文可供參考, 但其實它們背後的目的與可量測訊息所帶來的洞見是等價的.

2.3. On-chip variation

以半導體IC 設計為例, 不科學與不合理的設計餘量(design margin)會造成over design, 也就是競爭力的損失. 談到design margin, 我們接下來討論一下相對微觀, 侷限在晶片內部的變異性, 也就是on-chip variation(OCV). 這個問題持續困擾全球的IC 設計工程師, 但如何以「科學化」精確得知OCV? 這將有賴以資料科學的創新來理解元件物理, 掌握更全面的趨勢與洞見以改善這個問題.

Fig. 7 RO-to-RO Variation

最經濟的做法, 比如在每一個晶片裡面我們只能放一個RO, 我們依然可以得到晶片尺度的RO 效能擬合曲面. 如上圖Fig. 7 所示, 任意四個比鄰晶片內RO(adjacent die RO-to-RO)所形成的區域與一個晶片尺度的梯度是等價的. 若資源允許的話, 我們也可以在晶片內不同位置多放幾個RO, 例如在最前面第一個章節中我們在一個晶片中不同位置均勻地放置了6 個RO. 若我們對這些晶片內的RO 取mean 值(RO_μ), 再看兩兩相鄰晶片同樣位置的RO_μ, 如圖Fig. 7 右上紅色框. 計算兩相鄰晶片RO_μ 的傾斜度(slope), 觀察由傾斜度換算成晶片內元件加速或減速因子(early & late)與其分佈, 如圖Fig. 7 左側(它大致呈skew 或log-normal 分佈), 暫且先稱之為「大波浪」.

RO_μ 效能曲面⾧得像(或類似)圖Fig. 7 右上會形成一個問題: 若晶片在生產製造時位於晶圓(wafer)相對較平坦的區域(例如上圖的donut 區域), 其加速或減速因子(early & late)的分佈較窄, 但若晶片是位於RO 斜率梯度較大(如center 與edge 斜坡區域)的位置上, 其early & late 分佈很寬且會呈log-normal, 而不是normal! 更精確一點, 「大波浪」它更像是靜態系統級的缺陷(systematic defect), 沒有隨機性(沒有cancelation 效應)!

若我們細部對晶片內6 個不同位置的RO 兩兩計算其RO-to-RO slope, C(6,2)共有15 種組合,再將這15 個slope 值的2σ分布算出來(假設我們打算只守備2σ). 同理將範圍擴大至四個比鄰晶片, 我們可以得到C(24,2)共276 種組合, 如圖Fig. 7 我們把這樣的效應稱為「小波浪」,而此區域尺度的變異regional variation 可視為有隨機性(將其套用cancelation 方法學比較恰當, 但它跟距離有關).

像上圖Fig. 7 這樣把「小波浪」疊加在「大波浪」上, 就是我們晶片實體設計時「必須要去守備的最小範圍」. 實務上這值在不同批量(lot)應該差異不大, 建議先把晶片位於晶圓中edge 與center 區域梯度異常的晶片(outlier)先拿掉, 分析策略性的守備範圍(例如2σ分佈, 在妥協預期效能與良率後). 之後配合silicon correlation 我們可以再細部研究以界定出比較甜蜜的守備範圍, 才不會為了這些極可能救不活或代價極高的3/1000, 淪為另一個「晶片效能殺手」.

RO 曲面坡度(RO-to-RO slope)可以根據我們要保留多少良率(yield)變得平滑, 例如暫時先宰掉晶圓edge 區域的樣本(好的製程工藝可以控制在2%左右, 犧牲不算多), 而3σ variation 就會大幅減少(比較不會over design, 也比較有意義). 過度的設計餘量(margin)是以犧牲非常昂貴的晶片面積與效能為代價, 然而有些較差的製程因為均勻性的問題(uniformity), 多加margin 可能也救不了! 折衷方式是執行各式良率與成本分析, 策略性地優先篩掉(kill)梯度過大的量產晶片(或先將其降級down BIN), 例如3~5%, 6~10%, 11~15%, …等等, 計算該策略下3σ variation 守備範圍(實體設計成本)與晶片成本, 進行類似的分析與指導並給予市場部門擬定決策. 我們也可以透過晶片身分認證(UID), 重新定位篩選晶片的方式與分BIN 的策略, 以及構思新的RO 結構, 例如把兩個較遠的RO(functional RO)串接成較大尺度的gross-effect RO.

2.4. 製程與電壓補償的等效性

Fig. 8 Equality of Process & Voltage Compensation

以往我們總是寄望晶圓廠(foundry)能夠把製程調好(process tuning), 短期盡快能把良率調上來(yield ramp-up), 或多花點錢直接找比較靠譜的晶圓廠, 有點聽天由命的感覺. 因此, 既使產品良率很高也不見得有好效能, 也就是晶片普遍不夠efficient! 如上圖Fig. 8 左(概念性), 傳統過度依賴晶圓廠以製程調校(process tuning)的方式, 在能量維度往往呈指數發散不可控, 例如漏電流(leakage). 速度雖然達標了, 但是電流可能受限於晶片封裝與散熱成本使得量產也變得不太可行. 此外, 晶圓級(wafer-level)其它維度各種物理量的變異性也會隨著製程往高速移動呈指數擴大. 然而以電壓補償製程不足的手法相較就可預測的多, 如圖Fig. 8 右所示(概念性), 晶圓級各種物理量的變異性呈較線性的擴散(可預測). 這個概念也衍生出許多創新的架構與設計方法, 而且逐漸成熟與普及, 例如DVFS, AVS, PVT/aging compensation, binning 策略等等.

Fig. 9 Traditional Binning Strategy

如圖Fig. 9, 假設原本某個晶片在實體設計防守策略上期望在最糟的情況下都能有99%良率通過900MHz(例如WCL corner), 但現實上總會面臨許多其它非預期因素造成的良率損失(有些可能是在能量維度超標). 透過電壓補償的技巧使得原本不達標的晶片可以符合標準, 而超標的晶片可以降低電壓使其能效更趨優化. 再巧妙地搭配分BIN 的策略, 我們甚至還能篩選出在市場上較具優勢(無論是價格或能效)的晶片來豎立標竿.

3. 硬體監測器(hard-ware monitor)

談到硬體監測器(hard-ware monitor), 其實並不需要多高大尚的設計, 我們只需簡單的ringoscillator(RO)搭配機器學習的手法就夠了! 未來我們可以持續分享更多其他手法與相關細節,但我們在此只討論最簡單的RO, 它仍然可以呈現許多驚人效果. 以往我們會根據元件使用率在晶片裡面放幾種不同的RO, 工程師期待晶片生產製造回來能對效能或速度(Fmax)有好的關聯性.但往往不太順遂, 於是電路可能就被遺棄在哪裡浪費電, 資料也再也沒人去收集與分析. 其實,我們只要在量產前期的工程實驗階段(幾乎不浪費設計與量產測試成本), 透過巧妙規劃與測試安排, 數據將會展現驚人的洞見.

3.1. Voltage & Frequency Calibration

若公司願意也負擔得起一些測試成本, 可以試著這麼做: 在一顆晶片裡各個不同位置放置多個RO(使用相同元件組成的硬核), 如下圖Fig. 10 左所示. 在晶片生產製造回來前, 只需準備幾個不同電壓與溫度條件的測試樣本等待資料量測與收集.

Fig. 10 RO Frequency-Voltage Calibration

首先, 我們可以掃描分析數個不同的電壓與頻率, 做voltage calibration(得到ΔV vs. ΔF的關係), 我們將發現RO V-F curve 有非常良好的線性關係. 資料收集過程我們也可以分別量測數個極端的corner wafers(pilot lots), 並觀察所有的數據分佈與趨勢.

如此, 我們可以根據不同的RO 數據來反向推測每一個偵測點的等效電壓(effective voltage).量測數據十分有趣, 若我們將所分析的單一晶片各自來看, 區域等效電壓的不平坦性表徵呈現隨機性, 每個晶片(不同顏色表不同晶片)乍看之下各有不同起伏趨勢, 如圖Fig. 11.

Fig. 11 WID (within-die) Effective Voltage Distribution

但若我們將一晶圓(wafer)上所有的晶片, 針對RO 在晶片的各個座標位置計算其均值(LOC_μ,即針對RO 特定位置的within-wafer mean), 我們會發現不管用哪一片corner wafer(圖Fig.12 中用了TT, 1.5SS 與1FS 三片corner wafer 說明), 分析其中LOC_μ 的趨勢, 即with-indie(WID)分佈都相當接近! 這現象可以解讀為: 在晶片實體設計與製造過程中基於某些原因讓晶片內不同座標位置呈現了快快慢慢的類似等高線區域(contour). 明顯地, 它反映了metal & device density, layout effect 或PDN & bump assignment 等等整體體質綜效的不平坦性.

而這種結構非常穩定的不平坦性就像是套用了不同bias 電壓效果一樣的等高線趨勢, 它反映了一種非隨機性的系統級缺陷(systematic defeat), 在實體設計過程必須被考慮. 以2σ守備範圍為例, 至少±3% OCV early & late 沒有cancelation 效應, 在前面我們已經示範了用相較巨觀的手法來觀察同一物理現象. 必須再強調一次: 它的分佈是log-normal(effectivevoltagedrop 或換算的減速因子分佈會有⾧尾), 不是normal!

Fig. 11 WID (within-die) Effective Voltage Distribution

透過大量的實驗數據分析我們可以觀察到, 晶片內所有相同位置RO 的mean 值並沒有隨機性(可以從WIW 等大量數據得到驗證), 而且不同極端的corner wafer 看到的趨勢相同. 在不同製程參數傾斜的晶圓(TT, 1.5SS 和1FS)上,機率密度(probability density)分佈看起來也相似,此外增加電壓或降低電壓補償無法彌補其差距.

3.2. 晶片內有效電壓曲面擬合

透過對RO 的V-F 量測與製表(regression model), 我們可以將RO 數值反向計算其於晶片位置上的等效電壓(effective-voltage). 若晶片內RO 數量配置夠多, 我們可以得到如圖Fig. 13在晶片內數個離散的等效電壓點.

Fig. 13 WID (within-die) Effective Voltage Surface

我們若將離散的資料點做2~3 次式的曲面回歸, 可以得到effective-voltage 等高線的熱圖,如圖Fig. 14 右邊所示. 近一步分析與診斷這個熱圖的原因可以發現, 其結果跟我們power bump 配置密度與底層元件的電流密度高度正相關. 我們同時也需檢討IR 模擬分析軟體失效的原因並修正, 因為習知的理論基礎與模型假設並不完善! 傳統的IR 模擬分析模型是基於某些軟體執行的pattern, 在某個時間解析度下執行一段極短暫模擬的時間的結果, 而這個方法學:1)function 原本就有涵蓋率(coverage)不夠的問題, 2)軟體模擬的時間解析度會有取樣(sampling)導致的等效電壓能量積分過度樂觀或悲觀的問題, 3)工程模擬週期時間不足, 無法反映中低頻諧振引起的電源雜訊大波浪, 4)假造的週期性樣本產生原本不存在的低頻諧振, 5)實體設計後期才看到的問題通常無解 …等等許多問題.

Fig. 14 Effective Voltage & PDN Quality

有些實體設計PDN 與bump 沒打那麼密, 僅僅上電有時甚至可以量到高達22~25mV 晶片內靜態的等效電壓差異(雖然static/dynamic IR 都審核通過), 這間接影響了良率. 在ERA(early rail analysis)階段打均勻的TAP current 去看PDN quality 反而很重要, 倒不需要購買甚麼昂貴的EDA 軟體(也看不到問題). 若我們可以把host-spot 拉平, 我們就等同降低了WID variation,將製程變異的隨機性疊加在較平坦的電壓趨勢上. 圖Fig. 14 顯示其post-silicon 結果跟修正過的ERA 分析結果正相關(圖中), 我們可以看到日後可能形成量產晶片上的低壓區塊(hotspot),而這個效應是靜態的沒有隨機性!

4. 製程均勻性(Process Uniformity)

看到許多實體設計同仁辛苦征戰多年, 每次為了滿足專案項目不許失敗而且量產能夠獲得高良率等使命, 接受了許多艱困也不清楚究竟合不合理的PVT corners + uncertainty 等挑戰. 我們總是不明就理地搞一大堆晶片面積去守備很容易補償的3/1000, 而真實狀況最可能發生的大宗(majority)卻往往輕忽而扛不住! 此外異常的梯度, 例如在晶圓周圍(edge)或是中心(center)位置, 往往由於物理性(應力)的破壞, 加再多margin 恐怕也救不了且得不償失!

4.1. 晶圓級有效電壓曲面擬合

我們延續之前晶片內變異性(on-chip variation)資料分析, 嘗試跳脫單晶片思維的框架. 若能在晶片CP 測試階段加上一些巧思, 例如以eFuse 紀錄晶片在wafer 的(X,Y)座標, 如此我們便能重建晶圓尺度製程變異性的巨觀趨勢.

Fig. 15 Wafer-level Effective Voltage Surface

我們先看下面Fig. 16 這張圖, 圖左邊是由一片晶圓(wafer)約5000 顆晶片, 每顆晶片由6 個RO(ring-oscillator)分佈在晶片不同的位置所構成之灰色細點, 而每顆晶片上所有RO 的平均值(RO_μ)則構成了紅色曲面. 圖的右邊則是將RO_μ 與各自RO 值疊加所做的曲面擬合, 它不同以往只有七十多點且非常容易以偏概全(當數據資料呈log-normal 分佈)的WAT 離散點, 它呈現的是一個近3 萬點RO 所組成晶圓級的高解析度特徵, 也可以呈現多種不同資料特徵(feature)維度, 例如SIDD, DIDD, Temperature, Famx …等等.

這張圖給我們一個警訊: 若製程工藝不佳, 真正符合WAT 參數目標設定的可能只有中間的甜甜圈(donut)區域, 因此各項製程參數將多偏向skew-normal 或log-normal 分佈, 傳統以觀察9~72個離散偵測點的製程參數不僅以偏概全, 而且以WAT mean 值或median 調教的方法可能都行不通(雖然mean 值對了, 但大部分樣本都不在目標上而且資料分佈呈⾧尾狀), 此時因該把心力放在優化uniformity! 一味的移動Isat 或Vtl 目標值, 只是浪費時間與資源!

Fig. 16 RO (Performance) Surface Regression

4.2. 原來Wafer 不是一片一片的?

Fig. 17 Process Uniformity

這驚濤駭浪其實對design margin 影響非常巨大, 也就是uniformity 大大地影響了sign-off margin. 假設有三家晶圓廠分別有以上不同的製程控制力, 如圖Fig. 17, 紅線表示SIDD 的入庫門檻值, 一般要超越它晶片速度才能達標(然而SIDD 過大會有封裝散熱的問題), 大家會認為哪一家製程工藝比較有競爭力呢? 如圖Fig. 17 左, 原來晶圓廠的「碗狀」或「墨西哥帽狀」的uniformity 對OCV 是相對控制較好的(很陡峭的edge 與center 占比通常不到3%), 因為一般增加電壓就可以解決, 而圖右這種「火山錐狀」的大斜坡通常良率不會太好. 晶片位於斜坡處的梯度可能過大且沒有隨機性, 這也是AOCV 或LVF 方法學有時候並不管用的原因, 若我們沒有把製程的uniformity 考慮周全.

4.3. 低頻諧波噪聲(Low Frequency Harmonic Noise)

以往我們以為製程變異是隨機性(有cancelation), 然後寄望卡3σ corner(FF/TT/SS), 再加上幾個假設的電壓與溫度環境就能夠框住所有可能的變異性分布. 然而結果很明顯, 這樣的想法是大大有問題的: 用3σ(3/1000 機率)的corner case 不但失去競爭力, 也罩不住majority!所以搞了許多uncertainty, 最後margin 還是不敢放下! 如圖Fig. 18, 可以觀察每片晶圓的SIDD 曲面都有相似的圖案(pattern), 像是由好幾個低頻弦波成分組成的甜甜圈再加上類似沉積不均的傾斜, 這像是由某固定幾道製程引起的系統級缺陷(systematic defect).

Fig. 18 Systematic Defect

我們比較不擔心隨機性, 因為它可以被描述在數學模型裡, 而我們怕的是這種「不」隨機性. 電壓補償可以減輕隨機過程的變化, 但是電壓不能補償均勻性(uniformity), 它某種程度算是系統級缺陷了(systematic defect), 也無法補償晶片上變異性(on-chip variation)。

4.4. 高頻諧波噪聲(High Frequency Harmonic Noise)

我們透過物理位置與各個數據之間的關聯性分析, 也可以很清楚看到類似光刻效應(Lithoeffect)除了在電性上的影響也能看到實際對電路timing(或元件delay)的影響. 如圖Fig. 19,我們將晶圓沿X 方向各個Y 軸的掃瞄線觀察紀錄SIDD 與元件delay 分佈並取其均值(黑色實線).每次光罩射擊(shot)的邊界像是產生漏光與建設性干涉, 邊界的地方(藍色縱線)SIDD 呈現非常規律的波峰狀, 其反映在元件delay 就是規律的波谷. 這比前項要再高頻一些的諧波並非巧合,所有製程都有類似現象, 而它又疊加在前項低頻的諧波成分之上. 由此, 值得我們細部調查Litho-effect 對數位電路的電性與時序的影響.

Fig. 19 Litho Effect

Fig. 20 Local Effect

圖Fig. 20 左側曲面是以單晶片6 顆RO 的平均值來顯示某一製程工藝的uniformity, 若我們更進一步取約六分之一晶圓的區域來放大檢視(淺黃色區域), 如圖右側所示不同顏色分別代表RO在晶片的不同位置. 這個製程工藝下其edge 與donut 區域有極大的梯度, 也就是在晶圓懸崖邊與中心區域的晶片其OCV margin 將要求較多(通常非常誇張). 此外晶片在南北半球的critical path 通常不會一樣, design margin 的需求也不會一樣!

5. 成本效益與競爭力(Cost-effectiveness & Competitiveness)

不久前分別給國立清華大學(NTHU)與創意電子(GUC)幾個分享與討論, 內容主要探討如何優化既有的設計流程來為客戶創造價值, 其中也隱含了實體設計良率與晶片產能的提升. 我們若把這個題目想成是一個平衡遊戲, 以往在降低設計成本(減少不良率、晶圓價格、封測成本、軟硬體資源與產品週轉時間等)的同時, 因為必須保持平衡可能無形中也削弱了終端系統產品的競爭籌碼.

5.1. From Cost-down to Cost-effectiveness

若要在降低設計成本的同時強化終端系統產品的競爭籌碼, 則需要系統性的通盤考量與結構性的創新. 也就是說: 我們必須更主動貼近客戶的需求, 甚至預先想好客戶將來可能的問題並預先提供解決方案. Wafer price, BOM cost, competitiveness, marketing strategy, 之間如何得到最佳的平衡? 結構性的方法扮演了一個重要的橋梁(移動支點).

Fig. 21 From Cost-effective to Competitive

雖然「英格蘭理論」告訴我們, 成本優化(cost-down)有其侷限性, 但以近5 年全球半導體產值約4000 億美元的穩定增⾧格局, 若我們能協助整個產業生產率(productivity)提升5%(~200 億美元), 還是值得我們往下繼續扎根. 台灣是IC 設計王國, 擁有非常完整的半導體產業鏈可以由成本優化演進到提升競爭力這個課題! 也就是以成本優化為根基, 在追逐競爭力的創造與發明過程, 價值就被創造出來! 此時我們的思維從成本效益(cost-effective)內化成如何提升客戶產品競爭力(competitive), 進而創造價值.

5.2. From Cost-effectiveness to Competitiveness

晶片從實體設計到製造生產的過程, 協同材料/EDA/實體設計/晶圓/封裝測試等產業鏈, 好比由一塊塊石頭堆砌而成, 而競爭力的損失是在各流程與環節的些微間隙所積累造成. 傳統的縫隙如今變成一個個巨大的洞, 主要是對元件物理與系統行為的不甚了解. 再加上跨領域知識的壁壘使得傳統設計方法學無法串連的平順, 對設計餘量(design margin)的掌控不夠科學也不合理. 例如原本所謂的逆溫異常現象(temperature inversion phenomenon, 也就是高溫工作時元件表現反而變快), 到了近臨界電壓操作下反而變成了常態, 也就是臨界電壓閥值Vth 效應強過電子電洞的遷移率(mobility)受熱影響的表現.

傳統在實體設計時會先取得晶圓廠的SPICE model, liberty, …等等數據庫, 我們再根據此數據去分析並建立時序簽核的防守邊界. 但總是在量產驗收前才能得到晶圓廠場反饋WAT Isat 或Vtl 等參數不達標(mismatch target)多少百分比的消息, 而這物理量偏移目標(offset target)多少百分比實際反映邏輯設計端多少timing 又是另一回事, 這也是讓我們做起事來不科學的源頭之一. 再思考當下可拿到的測試數據, 無論是工程階段晶片的shmoo, CP/FT, 或SLT 等等量產測試其可能的誤差與信任水平, 例如CF<95%, error ~10%, 數據量包括Isat,Vtl, RC, SIDD 等等. 然而這是製程運營團隊(operation team)的語言, 這些參數最終仍得回歸到晶片實體設計中對元件速度的影響與sigma 分佈等特徵(features)產生關聯.

而這些大洞也形成許多新的機會醞釀創新方法與創造價值的機會, 如果我們立志要「提升整體半導體產業競爭力」, 可以從兩大面向探討: 一是Design-margin 科學化, 是透過數據分析與資料科學的創新對製程與元件物理有深入理解與掌握. 二是Energy-efficient 設計方法學, 即以資料科學為基礎對系統架構與設計方法進行通盤的重新思考與改善. 我們都知道所有競爭力的損失都是由各個微小環節over-design 的積累(例如OCV), 工程師可能窮其一生的工作都suffer 在這個design margin, 很可惜鮮少有人去挑戰它是否合理. 未來, 我們是否更應該清楚認識這個margin? 是否應該科學一點去測量它並且去分析它?

 

 

聯絡資訊

 連絡電話

(03) 5601386

 信箱

assistant@digwise-tech.com

 地址

 302 新竹縣竹北市環科一路21號8樓之3