實現(xiàn)數(shù)字孿生比在工具之間轉換數(shù)據(jù)要復雜得多。
半導體設計、制造和測試正變得更加緊密地集成,因為芯片行業(yè)尋求使用更少的工程師來優(yōu)化設計,為提高效率和潛在降低芯片成本奠定基礎,而不僅僅是依靠規(guī)模經(jīng)濟。
這些不同流程之間的粘合劑是數(shù)據(jù),芯片行業(yè)正在努力通過在更多地方利用這些數(shù)據(jù),將這些流程中的各個步驟編織在一起。目標包括在異構設計中進行權衡時更好的可見性、更快的上市時間以及提高現(xiàn)場可靠性。這將通過芯片內和系統(tǒng)內監(jiān)控功能以及在從設計到制造的流程中來回共享和利用數(shù)據(jù)來實現(xiàn)。
“全球有近23,000個電氣工程師職位空缺,”是德科技解決方案研究員DuaneLowenstein說?!拔覀儧]有培養(yǎng)出足夠的電氣工程師。我們會在未來 5 年或 10 年內填補這一空白嗎?可能不會。部分原因是所謂的“灰色海嘯”,即 35% 的人口年齡在 65 歲或以上,并且每天增加 10,000 人。我們不能每天培養(yǎng) 10,000 名新員工來填補其中一些工作崗位。即使在新冠流行之前,普通人也只在美國一家公司工作了 4.1 年,這對我們公司意味著什么?我們得到了一位偉大的工程師,我們很興奮,并且需要一年到兩年的時間來培訓他們以了解我們的流程。然后他們?yōu)槲覀児ぷ髁舜蠹s一兩年,然后就離開了。這是個大問題。”
它也是增加使用數(shù)字孿生和相關方法的主要驅動力之一?!皵?shù)字孿生消除了系統(tǒng)中的工作,我們今天需要能夠用更少的工程師來做事,”Lowenstein 說?!拔覀儧]有足夠的人手,但即使我們有,我們也必須改變流程以縮短上市時間,并能夠轉化為無處不在的可重復性?!?/p>
除了勞動力短缺之外,人們還擔心芯片和材料的可用性以及供應鏈的穩(wěn)健性。
“我不能去找一個這樣的供應商,那個供應商經(jīng)歷了地震、海嘯、火災或流行病,突然我就被關閉了。”?這正是芯片制造商正在發(fā)生的事情,”他說?!白钪匾氖?,存在產(chǎn)能限制,但生產(chǎn)定制化程度更高。這意味著我必須能夠更快地進行設計。我必須更準確地設計,因為這會影響產(chǎn)量和可預測性等因素。如果我不能立即構建一些東西,然后慢慢地增加,那么增加時間就是一個問題,因為這是一個容量限制。如果我能在一周內提高速度而不是六個月,因為我的數(shù)字雙胞胎正是我所想的那樣,那會很有幫助。”
打破孤島
在過去,設計和測試是不同的領域?!澳銖墓δ艿慕嵌仍O計你的產(chǎn)品,你甚至根本不關心產(chǎn)品的物理實現(xiàn)是什么樣的,” Cadence數(shù)字與簽核組產(chǎn)品管理組總監(jiān) Rob Knoth 說?!凹词鼓鞘欠珠_的。隨著設計技術的發(fā)展,產(chǎn)品的功能設計和產(chǎn)品的物理設計開始融合。這樣做有很大的動力,因為它縮短了上市時間并有助于降低利潤。在過去的 5 到 10 年里,測試已經(jīng)開始成為同一個話題的一部分。”
由于某些關鍵原因,設計人員不能再忽視測試,這一點已被廣泛接受。
“在安全關鍵、高可靠性產(chǎn)品中,您希望確保零缺陷、預期的較長使用壽命以及以正確的方式處理安全問題,”Knoth 說?!坝捎谶@些原因,測試越來越多地開始滲透到設計規(guī)劃中。這與高級節(jié)點相結合,并確保您正在測試這些高級節(jié)點上的所有新缺陷,并在它們處于現(xiàn)場時密切關注它們。頓時,三方都以非常平等的位置坐在桌邊。與其說設計人員必須為測試做準備,不如說是產(chǎn)品設計正在將測試視為三個重要品質之一。你擁有產(chǎn)品的最終功能。你有你的產(chǎn)品的物理實現(xiàn)。”
這意味著設計團隊需要牢記測試的物理現(xiàn)實——它會占用一些區(qū)域并需要布線。對于先進的數(shù)字設計,了解測試的功率、性能、面積和擁塞影響也很重要。同時,各個部分的交叉方式仍然存在差距,因此需要在填補差距時調整流程。
“有些技術在一些公司中被廣泛采用,但在 RTL 插入測試等方面仍然落后。我們看到了這一點,但肯定還有一些地方?jīng)]有,”Knoth 說。
因此,僅添加 DFT、在測試器中運行測試結構并獲得通過/失敗結果已經(jīng)不夠了?!拔覀兊膹碗s性要高得多,”Siemens Digital Industries Software的 Tessent Embedded Analytics 產(chǎn)品經(jīng)理 Richard Oxland 說。“我們在 3nm 處下降,所以事情變得更難了。我們如何處理?好吧,我們需要把廚房的水槽扔過去。但我們也不能大幅增加在測試儀中進行測試的成本,以及我們獲得的任何后續(xù)成本。這意味著我們也需要變得更聰明?!?/p>
特別是對于安全關鍵系統(tǒng)的功能驗證,將測試內容呈現(xiàn)在 RTL 而不是門級是至關重要的。“RTL 是由許多在物理設計之前并行完成的功能驗證模擬工作所驅動的,以確保您擁有一個可用的產(chǎn)品,”Knoth 指出。“因此,測試對設計的功能越重要,測試 IP 就必須出現(xiàn)在用于功能驗證的文件中。該內容已經(jīng)從門級向上遷移到 RTL,以便功能驗證能夠看到它?!?/p>
以不同的方式使用數(shù)據(jù)
這就是數(shù)字孿生變得尤為重要的地方。數(shù)字孿生是物理事物的數(shù)字表示,通過進行某種傳感和監(jiān)控來實現(xiàn)。“如果你沒有傳感和監(jiān)控能力,你就不可能擁有數(shù)字孿生,”O(jiān)xland 說。“你需要有一些定期報告重要指標的東西。這就是有助于推動業(yè)務價值的因素?!?/p>
Oxland 指出,可以使用兩種不同類型的數(shù)字孿生應用程序來推動業(yè)務價值?!耙粋€是閉環(huán)應用程序,可以在其中通過設計流程收集數(shù)據(jù),并在設計階段、仿真階段甚至制造階段將數(shù)據(jù)輸入數(shù)據(jù)庫。然后,在硅片中,你也在輸入數(shù)據(jù),可以在沿著流程向下移動時,將這些相互對應的程度關聯(lián)起來?!?/p>
這種閉環(huán)數(shù)字孿生的明顯應用是提高性能,但它也可能對產(chǎn)量和可靠性產(chǎn)生重大影響?!斑@意味著你可以開始說,‘我做出了這些設計決定,我在仿真中測試了它們,但在硅片中它并沒有像我預期的那樣工作?!悄銚碛兴械臄?shù)據(jù)來關閉循環(huán)并看到設計決策是錯誤的,因為,例如,你應該輸入 5nm 的偏移量。這種方法就像是 Shift Left 的延伸?!?/p>
還有一些工作流樣式的應用程序包含真實硅的數(shù)字孿生,可以為其設置警報。因此,如果互連延遲大于 500 毫秒,例如,它可以觸發(fā)警報,指示軟件堆棧中某處存在問題需要修復。
在芯片上監(jiān)控的內容可以在物理上或結構上進行分類,例如 PVT,然后使用proteanTecs的片上代理進行參數(shù)化分類。該公司利用基于芯片遙測技術的所謂“深度數(shù)據(jù)分析”,使用在測試和任務模式下運行的多維代理。因此,這些代理可以實時監(jiān)控性能,并發(fā)送有關由于老化和制造過程中未發(fā)現(xiàn)的潛在缺陷導致性能下降的警報。此外,該技術還可用于運營、環(huán)境和應用程序監(jiān)控,測量硬件上的工作負載和軟件壓力,以及監(jiān)控高級封裝中的互連。
“在這個級別,您可能想要檢測總線延遲,”O(jiān)xland 說。“如果在不同層面監(jiān)控這些東西,你可以將它們用于不同的目的。ProteanTecs 有一個關于老化參數(shù)傳感器的精彩故事,它可以提高可靠性,然后讓您在預測性維護中創(chuàng)造商業(yè)價值。因此,不用停機,您可以說,“我現(xiàn)在就派一名工程師出去,因為看起來這個芯片在兩周后就會出現(xiàn)故障?!边@可能會使您免于違反 SLA 或造成另一種緊急情況?!?/p>
嵌入式分析對于檢查特定版本的軟件與設計之間的交互尤為重要。“我們有能力在更細粒度的層面上看到正在發(fā)生的事情,以及硬件和軟件之間的交互是什么,”他指出?!耙苍S您對該軟件運行的所有測試看起來都不錯。把它放到野外,一些最終用戶做了一些非常古怪的事情導致了問題,但它每 1000 億個周期只發(fā)生一次。將如何檢測到它?如果有一種在芯片上檢測到非常長的延遲時自動發(fā)送警報的方法,就可以修復它。
進入測試空間,存在導致問題的離群用例。
“Meta 最近發(fā)布的一件事涉及靜默數(shù)據(jù)損壞,”O(jiān)xland 說?!皼]有人知道他們?yōu)槭裁丛谀抢锘蛉绾握业剿麄?。但是,如果?DUT 上有測試結構,則可以根據(jù)奇怪的事件觸發(fā)這些結構。也許您在芯片未被頻繁使用的那一天有某個時間點,可以將其取下,運行測試,收集數(shù)據(jù),在芯片上進行分析,或者將其發(fā)送到云端并在那里進行分析。可以在芯片上做的越多越好。如果你有監(jiān)視器,你可以檢測到問題,如果存在結構性問題,你可以通過測試找出問題的根源——所有這些都可以自動化?!?/p>
缺少什么
對測試的各個方面的物理感知越多,它與設計過程的吻合就越好。
“在這方面總會有改進的空間,”Cadence 的 Knoth 說。將測試內容轉移到 RTL 空間有時會使這項工作變得更加困難。當你在實現(xiàn)過程中插入一些東西時,這很自然也很容易理解,“這是測試,我可以用不同于功能電路的方式來操作它。”但是當在 RTL 級別插入內容時,這可能會有點棘手。因此,總會有改進實施流程、驗證、流程等的空間。”
此外,芯片需要配備正確類型的傳感器,以指示何時需要進行更多測試,或者是否需要重新測試某些內容。例如,芯片某個部分的溫度可能很高,或者交易時間過長。
Oxland 說:“我們仍在摸索到底是什么類型的觸發(fā)因素。我們需要了解所有這些復雜性的方法,以及最終如何更好地指導測試。我們有時會說,“為更多測試而設計,并且為更多測試而設計?!?你必須以某種方式兩者兼顧——更智能、更全面、更便宜的測試——但也要使用其他類型的數(shù)據(jù)(例如 PVT、參數(shù)和功能)來增強測試。”
其中一些已經(jīng)在可靠性被認為至關重要的市場中進行了多年。Imperas首席執(zhí)行官 Simon Davidmann 說:“我們想確切地知道我們交付的是什么。如果有缺失,我們需要知道。如果有一些不符合我們預期的質量,我們需要知道。這種方法使我們能夠選擇何時準備好交付產(chǎn)品?!?/p>
Imperas 設計了一種測試驅動的設計策略,其中測試與正在實施的工作同時實施?!爱斘覀兲岢鲆粋€項目并編寫規(guī)范時,我們會花費大量時間來計劃對其進行測試,以便我們知道何時完成,這就像硬件設計一樣,”Davidmann 解釋道?!拔覀冊诎l(fā)展處理器模型時編寫測試計劃。編寫測試計劃的人往往與實施模型的人不同,因此有兩個人閱讀規(guī)范。一個是在模型中的模擬器中實現(xiàn)它,另一個是在一堆測試中實現(xiàn)它。有時在較小的項目中可能是一個人,但通常是兩個人。在一些項目中,我們使用三個,一些負責報道的人確定我們需要確保涵蓋的內容。團隊的所有成員都從規(guī)范中獲取它。一個實施它。一個寫測試。一個決定如何衡量它,因為它不僅僅是代碼覆蓋率,它是功能覆蓋率。我們使用這種測試驅動的方法,以便在我們開發(fā)產(chǎn)品時。我們知道我們在它的質量方面所處的位置,我們在非常詳細的層面上工作,并對每項功能和特性進行白盒點測試?!?/p>
將這些概念變?yōu)楝F(xiàn)實需要建模,然后將其與現(xiàn)實世界中發(fā)生的事情進行對比。Synopsys產(chǎn)品營銷總監(jiān) Robert Ruiz 表示:“你想要來自現(xiàn)實生活的數(shù)據(jù),并希望將其反映回數(shù)字雙胞胎中?!?/p>
Ruiz 指出,ATPG工具通常通過生成一些刺激來處理設計元素的抽象?!啊屛覚z查一下輸出是什么,然后將其應用到測試儀上的硅片上?!@在幾年前還可以,但改進模型需要更深入地研究這一點。就我們在生產(chǎn)中看到的實際使用而言,相當新的是說,'讓我們看一下 SPICE 級網(wǎng)表、晶體管,并更接近數(shù)字孿生概念,讓我們注入缺陷。讓我們拆開電線,讓我們在某些情況下引入短路。然后,讓我們不要運行 ATPG。讓我們運行一些更接近現(xiàn)實世界的東西,這更像是 SPICE 模擬,看看它是如何響應的。然后我們將其反映回來。”
在其他情況下,實時測試是獲得高質量測試的主要方法之一,大多數(shù)先進的設計都是這樣做的。如果設計應該以 3 GHz 運行,理想情況下您希望設計在內部以 3 GHz 運行。傳統(tǒng)的 ATPG 方法是假設它將以 3 GHz 運行,然后創(chuàng)建某種類型的測試。然而,由于缺乏建模或與數(shù)字孿生的連接,ATPG 工具并不知道如何做到這一點。
“近年來,我們從靜態(tài)計時工具中獲取信息,并將其注入,現(xiàn)在 ATPG 工具說,‘根據(jù)這些信息,我知道路徑 A 是一條更長的路徑。所以我將嘗試讓測試沿著這條路徑而不是更短的路徑進行。通過這樣做,我更有可能捕捉到一種類型的缺陷,因為較長的路徑是 3 GHz,而較短的路徑是 2 GHz??梢酝ㄟ^查看硅來改進時序模型,路徑余量監(jiān)視器可以測量來自實際硅的路徑的時序。該數(shù)據(jù)可以返回到時序模型,然后該信息提供給它,循環(huán)就完成了?!?/p>
雖然今天有許多方法可用,但它們可能無法與其他可以組合以創(chuàng)建數(shù)字孿生類型仿真模型的部分聯(lián)系起來。
“隨著時間的推移,很多事情都會發(fā)生變化,”戴維曼指出?!拔覀?yōu)槲覀兊漠a(chǎn)品開發(fā)了一種方法。我們不稱之為數(shù)字孿生,但我們使用模擬,我們在我們所做的之外構建其他模型。例如,如果我們正在處理一些非常復雜的事情,例如密碼學或 DSP,我們會找到一些加密算法,例如 C 語言,將其用作我們的參考,然后用我們正在使用的語言實現(xiàn)它處理。然后,我們得到了一個黃金參考,它實際上是一種模擬數(shù)字孿生類型的上下文,但非常微觀。這與數(shù)字孿生的概念完全相同,因為當我們與 RISC-V 世界的客戶打交道時,他們在做什么?他們把我們當作他們的數(shù)字雙胞胎。他們有 RTL,他們想知道 RTL 是否做了正確的事情。這是一個完整的驗證策略。我們的 RISC-V 驗證產(chǎn)品就像一個插在他們產(chǎn)品后面的插頭。當他們在他們的 RTL 中得到一個完整的模擬時,他們可以在它后面插入我們的技術,它用手指圍繞著它并觀察正在發(fā)生的事情。它是一個核心的完整功能的孿生,配置為正是他們所擁有的。它坐在那里監(jiān)視每個事件,如果它發(fā)現(xiàn)它不喜歡的東西,它就會報告?!?/p>
Synopsys 的 Ruiz 預計,隨著監(jiān)視器的發(fā)展,它們將獲取數(shù)據(jù)并改進模型,不僅針對 ATPG,而且針對設計本身。“當然,更好的計時模型不僅僅有利于 ATPG,”他說?!八麄兲岣吡送瞥鰸M足性能要求的設計的能力,以及對 EDA 流程的其他改進?!?/p>
結論
當這些不同的方法與收集、分析數(shù)據(jù)并投入使用的系統(tǒng)部署相結合時,就會看到最大的好處。這個謎題有很多動人的部分,而且演變過程很復雜。
Keysight 的 Lowenstein 說:“數(shù)字孿生與解決方案之間的哲學聯(lián)系比其他任何東西都重要。”“我怎么把它放在一起?我該如何改變我的哲學,接受它,是因為它會發(fā)生?”
他預測,在 10 年內,這將成為芯片和系統(tǒng)開發(fā)和測試的主要方式?!跋氤鲆环N非常簡單的方法并利用所有聯(lián)系的公司將會成功。它將非常類似于 SAP 或 Oracle 實施。當最初提出這些系統(tǒng)的想法時,每個人都說它太復雜了,沒有人會接受這個?,F(xiàn)在,每個人都有一個 MRP 系統(tǒng)。對于類似數(shù)字孿生的系統(tǒng)來說,這將是一回事?!?/p>
編輯:黃飛
?
評論
查看更多