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