Chiplet(芯粒)已經成為設計師的戰略資產,他們將其應用于各種應用中。到目前為止,Chiplet的驗證環節一直被忽視。ESD聯盟的執行董事Robert(Bob)Smith與Breker Verification Systems的首席執行官Dave Kelf就該話題進行了討論。
01
Chiplet的驗證需求有哪些變化?
對單個零部件的功能驗證不會發生改變,但在封裝中使用Chiplet時與單個芯片不同,它對驗證提出了新的要求。我認為這對整個SoC驗證過程都有著重大而戲劇性的影響!
02
您能具體談一下嗎?
Chiplet具有許多優勢,包括極大地提高了靈活性,因為在一個封裝中,芯片可以來自不同的制造商甚至采用不同的技術。例如,英特爾的處理器可以是一個Chiplet,另一家公司的專用IP也可以是另一個Chiplet。每個Chiplet制造商都只負責制造他們自己的小芯片,因此最終封裝中可以包含來自不同代工廠制造的、具有不同功率、性能等參數的器件。
雖然Chiplet為半導體行業帶來了巨大飛躍,但其最主要的復雜性來自于Chiplet中各芯片之間的接口或連接。這可能會讓Chiplet的驗證更困難。
當單個芯片進行封裝時,芯片的I/O需要連接到封裝的引腳,這種互連可能存在延遲的問題。通常,在片外時,對性能要求則較低。因此,芯片到引腳的互連不是一個問題。
通過連接多個Chiplet來構建系統與考慮單個芯片大不相同,因為設計者通常所需處理的信號都只是在一個SoC內流動。在SoC中,設計者可能需要有高性能的片上網絡或結構,考慮到設計中的復雜性和各個不同分區,他們需要這種性能。
將SoC分解為不同的Chiplet意味著信號將從一個Chiplet轉移到另一個,這很像引腳互連。但可能導致系統內存在潛在的延遲和功率問題,因為信號必須從一個Chiplet傳遞到另一個Chiplet。這些連接的信號延遲是至關重要的。
在設計基于Chiplet的系統之前,工程師無需應對單個Chiplet之間存在的高性能、低延遲連接的挑戰。
此外,從一個Chiplet到另一個Chiplet的延遲可能會導致定時危害,從而導致整個系統中數據一致性問題的增加。這也是需要面對的一個復雜的驗證挑戰。
03
Chiplet的驗證要怎樣變化來支持這一需求?
首先是如何處理Chiplet-to-Chiplet的接口問題。PCI Express互連標準(PCIe)是一種用于互連組件的通用標準。CXL是一種建立在PCIe之上的較新標準,專注于將處理器或計算單元與存儲或內存單元進行連接。它在PCIe的基礎上,還添加了一致性協議。
一致性是指確保設備中存在于不同區域的相同數據保持一致。一個很好的例子就是多個內存級別之間的經典緩存一致性問題,如位于處理器旁邊的高速緩存、多個處理器之間共享的低速內存以及片外存儲。這三個級別的緩存在各自的地址位置中必須具有相同的數據。當執行存儲系統時,數據頁在各存儲器級別之間進行交換。在不同內存級別定義不同數據,可能會丟失一致性。再加上位于同一總線上的多個處理器,都對這些存儲器進行讀取和寫入,其他I/O組件或專門的IP塊也需對存儲器進行讀取或寫入,有時它們還會繞過處理器。
隨著系統變得越來越復雜,出現一致性問題的幾率也越來越大。在復雜的SoC中保持一致性是一個大問題,目前它通過處理器和結構使用各種協議來進行處理,例如Arm的ACE協議。
再來看一下Chiplet和Chiplet之間的接口延遲問題。處理這些接口涉及的額外延遲導致的一致性問題,讓原本的問題更復雜,原本的設備之間就已經存在違反一致性的問題。
一種名為UCIe的新標準已經出現,可以幫助解決這一問題。研究Chiplet的公司也正參與開發該標準,在CXL和PCIe的基礎上,添加更多協議,以實現這些需保持一致性、低延遲、高性能的接口。UCIe將是處理低延遲和高性能問題的重要標準,同時它也可確保同一封裝中多個Chiplet的一致性。
那么,如何驗證這些多Chiplet系統之間的一致性呢?業界已經開發了一系列一致性測試協議,以一種旨在梳理一致性問題的方式來鍛煉系統。同時也圍繞SoC構建了一個測試系統,該系統在整個芯片上進行讀取和寫入,充分發揮了一致性。這些公共協議的一個典型例子就是Dekker算法,它為存儲器子系統和結構的各個區域提供了在特定范圍內的不同讀取和寫入。
除了這些公共算法外,還需要針對多Chiplet系統中的Chiplet和數據流開發特定方法。新的專有算法已經在開發中,它將被用來執行適用于多Chiplet系統的負載存儲運行測試。
與進行常規功能驗證的驗證平臺不同,多Chiplet系統需要專用驗證平臺來測試其中的“管道”,以確保系統周圍不存在數據風險或不一致性。
04
看起來Chiplet驗證范圍比傳統功能驗證更廣泛
這是肯定的。測試系統基礎架構變得非常重要。以性能和功率測試為例,我們在SoC級別看到了這種需求,性能問題可能會導致棘手的bug,而對于基于Chiplet的系統來說,這更具挑戰性。同時運行多個測試以驗證整個系統性能的機制是必須的。
再來看一下三維覆蓋的概念。維度一是一個區域在一瞬間的規則組合覆蓋或功能驗證。覆蓋檢查特定部件的范圍也已被同時覆蓋。維度二將是順序覆蓋,其中時間上的組合覆蓋元素序列被確認為被正確覆蓋。第三個維度是并發覆蓋,以確保這些序列中的幾個序列可以在設備上同時并發操作。
為了測試一個復雜系統,特別包含多個具有快速和慢速接口的Chiplet,驗證工程師需要在整個系統上同時運行許多操作。該設計可能有一個處理器通過一個接口與內存通信,運行一組測試,同時第二個處理器還與I/O進行通信。第三個測試可能是另一個I/O對Chiplet上的其他地方的另一個存儲器執行直接存儲器訪問功能。
所有這些數據都在同一組接口中流動,因此并行測試可以解決這些接口中的性能和潛在的電源問題。它會發現系統中的瓶頸,例如,當多個操作正在運行時,有一個接口可能已被過度使用。這一點很難被發現,除非在軟件模擬器或硬件模擬器上運行完整的并發執行視圖。
05
并發是一個主要因素。Chiplet的驗證工具還需要具備什么功能?
還有就是一些核查項目,但它們也不屬于傳統意義上核查進程的一部分。例如,安全測試已成為許多系統的必要測試項目,以確保設備不會被惡意入侵。某些設備的安全測試也很重要。很長一段時間以來,行業在早期就討論了軟硬件測試的重要性,現在這也成為這些新系統的強制性要求。
例如,有兩個不同來源的Chiplet。一個Chiplet會使用敏感數據,安全性在其整個開發過程中都顯得非常重要。假設第二個Chiplet可以對第一個Chiplet進行讀寫,并且訪問安全區域的協議尚未被完全驗證。那在Chiplet的新世界里,第二個Chiplet有可能會被用來為另一塊安全功能Chiplet增添漏洞。這聽起來有些異想天開,但國防領域已經就預防該問題進行了數百萬美元的投資。
06
你認為這會是一個新領域嗎?
肯定是的。功能缺陷通常是在功能塊級別才被發現,但性能和瓶頸問題通常仍然是系統級別的問題。它們不是一類bug,是基礎架構錯誤。
基礎架構驗證是一個新類別,它屬于SoC驗證,我們在我們合作的公司中已經看到了更多。我們討論過的無法在功能塊級別進行測試的系統級錯誤正變得越來越普遍。Chiplet與其使用的UCIe接口使這種情況變得更糟。
07
對于Chiplet,我們需要新的驗證標準嗎,如UVM或便攜激勵(Portable Stimulus)?
我認為不需要。Accellera的便攜刺激標準(PSS)在系統層面就處理了這些需求。它允許定義一個圖形模型,該模型描述了系統中的交互及其應用場景,可用于生成并發測試。UVM在功能塊級別表現很好,但很難擴展到系統級別。PSS也能處理系統級別的必要重用,從而能夠為許多場景創建可配置的SystemVIP。
08
你是否看到有很多公司已經開始采用Chiplet設計?
是的。生產各類半導體系統的公司,尤其是處理器公司,都對Chiplet很感興趣。大多數重要的半導體公司都已經加入了UCIe標準聯盟。他們都認為Chiplet將是未來半導體行業發展的關鍵。
09
Chiplet適用于所有的市場和應用嗎?
我認為是的,盡管有些領域會需要更長時間才能使用Chiplet。半導體應用最多的市場將首先受益,包括服務器市場和所有的通信和移動電話基站、大型汽車芯片以及人工智能芯片。Chiplet的應用領域是沒有限制的。
審核編輯:劉清
-
處理器
+關注
關注
68文章
19293瀏覽量
229939 -
存儲器
+關注
關注
38文章
7493瀏覽量
163873 -
模擬器
+關注
關注
2文章
877瀏覽量
43242 -
PCIe接口
+關注
關注
0文章
120瀏覽量
9712 -
chiplet
+關注
關注
6文章
433瀏覽量
12599
原文標題:聚焦Chiplet驗證
文章出處:【微信號:IP與SoC設計,微信公眾號:IP與SoC設計】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論