在多個第三方IP核、外部接口和低功耗設計驅動下,數十億門級的專用集成電路(ASIC)已具備幾十甚至數百個異步時鐘域,而要解決跨時鐘域(CDC)問題,RTL仿真和靜態時序分析(STA)都不是最理想的解決方案。
對數字開發者而言,CDC問題主要源于以下四種常見的跨時鐘域場景。
如果沒有合適的時鐘同步器,由異步時鐘域之間的抖動引起的亞穩態可能會導致功能故障。此外,設計中還存在更復雜的路徑和場景,例如多條同步后的路徑經過組合邏輯匯聚在一起可能會由于同步器的不確定性而導致時序不匹配。此類缺陷通常無法在流片前解決,因此出錯后可能會導致芯片設計返工,從而付出高昂的代價!
CDC驗證是流片前的關鍵簽核標準。那么要實現這一標準,ASIC開發團隊將會面臨哪些挑戰呢?
周轉時間
CDC違規清零是芯片簽核的必要條件。
解決CDC問題的難度與芯片的設計規模成正比。在數十億門級的ASIC設計中可能存在數百個異步時鐘和數百萬個跨異步路徑。開發者通常需要消耗萬億字節內存,并花費數天時間才能完成全芯片的扁平級CDC分析。在此過程中,周轉時間非常重要。
在進行CDC分析時,開發者們可采取自下而上的分層分析法,就像進行綜合和靜態時序分析那樣,每次分析一個模塊,逐個模塊解決CDC錯誤。在向上一個層級移動的過程中,開發者們可以用抽象的CDC模型替換CDC違例已經清理干凈的模塊。這一模型將只包含與上一層相關的時鐘路徑,而不考慮所有內部跨異步路徑,每清理完一個層級,就會繼續進行下一層級的CDC清理,以此類推。
通過這種方式,CDC分析可左移到開發流程的早期階段,而無需等到流片前才完成。如果在臨近流片時還在修復CDC錯誤,會對設計造成極大的破壞性,代價極其高昂!
新思科技VC SpyGlass CDC擁有CDC簽核以及層次化驗證流程,采用高效的分層方法,在不改變結果質量(QoR)的情況下,減少了內存需求,將周轉時間提高至少3倍。
誤報問題
CDC分析的另一個重大挑戰是誤報問題。
當設計中有數以百萬計的CDC跨異步路徑時,出現的違例數量也會非常龐大,那么要確定問題究竟出在哪就會如同大海撈針一般,非常困難,這就導致開發者可能會遺漏一些十分重要的CDC違例從而沒有進行bug修復。因此,對于大型ASIC開發者來說,CDC分析十分棘手。
幸運的是,數據科學為我們提供了解題思路──機器學習(ML)技術可以成為解決這一問題的關鍵。ML技術可以根據問題根源對違例行為進行分類,我們會發現,很多違例行為都可以歸因為同一個問題,且歸類的前五大問題幾乎可以覆蓋95%以上的違例行為,只要解決這五大問題,就可以極大減少違例誤報,對開發者來說,發現并解決剩余5%的問題也將容易不少。
VC SpyGlass CDC通過采用ML技術對違例誤報執行根本原因分析(RCA)來解決誤報問題。這種ML RCA方法不僅可以分門別類地識別違例,還可以通過調試線索提示根本原因,助力開發者高效找到解決方案。例如,由于缺少同步機制,開發者們可以通過更改RTL來糾錯,但更常規的做法是對CDC約束文件進行優化或補充。這種約束優化過程能夠快速迭代,大幅減少違例行為,并快速識別需要在設計中修復的真正的CDC問題。
約束是否正確
CDC分析是由約束驅動的,約束由開發者編寫,不正確的約束可能會導致不正確的CDC分析,比如約束錯誤可能會導致真正的CDC違例沒有被發現,因此沒有被修復并最終導致流片失敗。當芯片設計中需要輸入約束文件(如新思科技設計約束(SDC)文件)時,檢查這些輸入文件的正確性至關重要。確保這些約束文件正確的方法之一是將約束轉化為斷言并把他們放到動態仿真環境里去驗證。這種方法將為開發者們提供更高級別的約束驗證。
豁免是否正確
除約束外,還可以運用違例豁免?;砻庖彩荂DC分析工作流所需的輸入文件,通過分析手動生成。錯誤地運用豁免可能會導致CDC的真實錯誤被掩蓋。即使豁免最初是正確的,但為解決功能或性能問題,開發者也可能需要修改RTL或網表ECO。在這種情況下,開發者需要對豁免進行核查,因為之前有效的條件可能不再成立。
更困難的收斂問題
大多數CDC問題都可以進行靜態結構性分析,但在某些情況下動態分析也是有必要的,比如在設計中存在很復雜的匯聚問題,尤其是時序匯聚深度很深并且工具默認檢查深度不夠的話,就會遺漏這類問題。
所以比較好的解決辦法是使用亞穩態注入進行仿真。VC SpyGlass CDC將生成亞穩態模型的CDC數據庫,該數據庫將在仿真運行時動態注入隨機抖動。
新思科技的VCS仿真可在運行時進行本地數據庫讀取,新思科技的Verdi自動調試系統可以對故障進行調試,并對亞穩態注入信號進行監控,生成覆蓋率報告注入了多少次亞穩態抖動。
處理第三方IP核
大多數數十億門級ASIC會集成多個第三方IP核,這些IP核可能提供了CDC約束,但沒有提供簽核CDC抽象模型。開發者們肯定不希望對所有IP核都進行扁平化CDC分析,因此開發者們可以針對IP生成其對應的SAM 抽象模型并把它集成到頂層的CDC驗證流程。
調試效率
與驗證一樣,調試工具的有效性也會極大地影響開發者的工作效率。以CDC調試為例,最有效的解決方案是將良好的圖形可視化與波形分析相結合。此外,熟悉的調試環境和在多個驗證平臺使用統一的調試工具對開發者來說也十分重要。新思科技的Verdi調試器能夠確??缙脚_一致性,提高CDC的調試效率。
如何處理MBIST
最后一個要考慮的問題是如何處理MBIST插入。
MBIST通常在產品開發生命周期要結束時完成,可能占最終設計總邏輯的3%左右。MBIST的插入可能會導致芯片設計中CDC跨異步路徑大幅增加。這一點在流片前的CDC簽核過程中一定不能忽略。開發者們可以先單獨對MBIST做CDC分析,清理CDC違例,之后再插入MBIST,從而減少設計迭代。
結 語
VC SpyGlass CDC是新思科技在Verification Continuum平臺上集成的靜態分析解決方案之一,可提供全面的CDC簽核方法,實現高效能、大容量和高調試效率。該方法原生地與VCS仿真工具等其他工具協同工作,并通過與Verdi調試器集成為開發者們提供高效的調試體驗。
原文標題:CDC驗證:數十億門級ASIC設計的最大挑戰之一
文章出處:【微信公眾號:新思科技】歡迎添加關注!文章轉載請注明出處。
審核編輯:湯梓紅
-
芯片
+關注
關注
456文章
51018瀏覽量
425331 -
集成電路
+關注
關注
5390文章
11588瀏覽量
362498 -
asic
+關注
關注
34文章
1205瀏覽量
120600
原文標題:CDC驗證:數十億門級ASIC設計的最大挑戰之一
文章出處:【微信號:Synopsys_CN,微信公眾號:新思科技】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論