代下Cadence Virtuoso模擬IC設(shè)計(jì)流程優(yōu)化實(shí)戰(zhàn)指南)
說(shuō)實(shí)話我做了十多年的模擬與混合信號(hào)電路設(shè)計(jì)天天跟Cadence Virtuoso打交道。早些年覺(jué)得這東西又笨又重跑一次仿真等結(jié)果的時(shí)間夠我去泡杯咖啡再回來(lái)。但這兩年情況徹底變了AI這個(gè)詞開(kāi)始砸進(jìn)EDA的每個(gè)角落Cadence自己也在Virtuoso Studio、Allegro X乃至Cerebrus里不斷加入智能化能力。無(wú)論是剛?cè)胄械膽?yīng)屆生還是帶過(guò)好幾個(gè)項(xiàng)目的資深工程師都得重新回答一個(gè)問(wèn)題AI來(lái)了以后我們到底該怎么用Virtuoso才能真的把效率提上去這篇文章不講玄乎的AI大道理我想結(jié)合自己的實(shí)際使用經(jīng)驗(yàn)把EDA行業(yè)正在經(jīng)歷的變化、Virtuoso配合AI能做和不能做的事以及一些可以直接照抄的實(shí)操方法盡量講透。我會(huì)把原理圖輸入、仿真優(yōu)化、版圖布局這些環(huán)節(jié)拆開(kāi)看也會(huì)整理一些常見(jiàn)的坑比如仿真器件未定義、電阻不顯示阻值、瞬態(tài)仿真不收斂這類(lèi)問(wèn)題。無(wú)論你是在校做課程設(shè)計(jì)還是已經(jīng)上了車(chē)規(guī)級(jí)項(xiàng)目這篇文章應(yīng)該都能給你一些有價(jià)值的東西。1. 首先得搞清楚Virtuoso靠什么立足AI又為什么偏偏在這個(gè)時(shí)間點(diǎn)進(jìn)場(chǎng)1.1 Virtuoso在EDA江湖中的地位Cadence Virtuoso不是一天建成的。它從早期的模擬電路設(shè)計(jì)環(huán)境一路演進(jìn)到今天已經(jīng)覆蓋了原理圖輸入、混合信號(hào)仿真、版圖設(shè)計(jì)、物理驗(yàn)證、電磁分析等多個(gè)維度。業(yè)內(nèi)開(kāi)玩笑說(shuō)模擬工程師的命脈就是Virtuoso這話并不夸張。數(shù)字流程早就有大量的自動(dòng)化工具從綜合到布局布線工具幫人干了絕大多數(shù)活。但模擬電路不一樣版圖對(duì)稱(chēng)性、器件匹配、寄生參數(shù)耦合這些東西很難用一套固定規(guī)則去自動(dòng)生成所以長(zhǎng)期以來(lái)靠的是工程師的經(jīng)驗(yàn)和手工操作。這也是Virtuoso能在過(guò)去三十年里保持核心地位的原因它把模擬設(shè)計(jì)里最講究“手感”的操作比如畫(huà)版圖、調(diào)參數(shù)、看波形做成了非常成熟的一體化環(huán)境。IC 6.1.8到Virtuoso Studio底層數(shù)據(jù)庫(kù)、版圖編輯器、仿真引擎不斷升級(jí)但核心設(shè)計(jì)哲學(xué)沒(méi)有變始終是“讓工程師在一個(gè)環(huán)境里完成從原理圖到交付的全流程”。這一點(diǎn)非常重要因?yàn)锳I進(jìn)入EDA的時(shí)候不是要推翻這個(gè)生態(tài)而是在這個(gè)生態(tài)里找縫隙切入。1.2 為什么AI沒(méi)有更早進(jìn)入EDA很多人會(huì)覺(jué)得AI這么熱為什么EDA前幾年沒(méi)什么動(dòng)靜其實(shí)不是不想而是條件沒(méi)成熟。早期EDA工具的處理對(duì)象規(guī)模相對(duì)有限規(guī)則引擎就能應(yīng)付跑一個(gè)AI模型帶來(lái)的收益并不明顯。再加上模擬電路設(shè)計(jì)數(shù)據(jù)高度分散每個(gè)工藝節(jié)點(diǎn)的PDK不同、每個(gè)設(shè)計(jì)團(tuán)隊(duì)的習(xí)慣不同缺乏海量標(biāo)準(zhǔn)化數(shù)據(jù)去訓(xùn)練模型這是AI在EDA落地的最大障礙。真正把AI推上舞臺(tái)的是三個(gè)因素的疊加第一工藝節(jié)點(diǎn)推進(jìn)到5nm甚至更先進(jìn)之后設(shè)計(jì)復(fù)雜度指數(shù)級(jí)上升傳統(tǒng)的啟發(fā)式算法開(kāi)始力不從心第二AI在芯片設(shè)計(jì)里的驗(yàn)證性應(yīng)用越來(lái)越多比如Google用強(qiáng)化學(xué)習(xí)做芯片布局讓行業(yè)看到了AI在物理設(shè)計(jì)上的潛力第三Cadence、Synopsys這些頭部廠商把AI能力內(nèi)置到自家工具里工程師不需要單獨(dú)搭模型直接在Virtuoso界面里就能調(diào)用機(jī)器學(xué)習(xí)能力。也就是說(shuō)AI不是替代了工具而是長(zhǎng)在了工具里面。1.3 AI到底改變了EDA的什么本質(zhì)我個(gè)人的理解是AI改變的是“探索空間”的方式。傳統(tǒng)手動(dòng)設(shè)計(jì)流程像一個(gè)熟練工在黑屋子里一點(diǎn)點(diǎn)摸路AI則像是同時(shí)派出一百個(gè)人從不同方向探路然后告訴你哪些方向值得深挖。比如在仿真參數(shù)優(yōu)化里你手動(dòng)調(diào)W/L可能調(diào)幾十個(gè)點(diǎn)就累了AI可以在相同的仿真預(yù)算下把整個(gè)可行域都掃一遍然后挑出最接近設(shè)計(jì)指標(biāo)的組合。但它也有明顯的局限。模擬設(shè)計(jì)里很多“只能意會(huì)”的知識(shí)比如匹配性、溫度漂移、工藝角分析中的特殊行為AI不一定會(huì)替你考慮周全。所以真實(shí)的態(tài)度應(yīng)該是讓AI做重復(fù)性高、搜索空間大的事情把經(jīng)驗(yàn)判斷、風(fēng)險(xiǎn)控制留給人。這個(gè)原則我后面會(huì)用具體的實(shí)操來(lái)展開(kāi)。2. AI和Virtuoso結(jié)合以后設(shè)計(jì)流程到底變了什么2.1 數(shù)字后端已經(jīng)跑起來(lái)了模擬電路憑什么跟不上Cadence很早就在數(shù)字后端工具里推了AI驅(qū)動(dòng)布局布線通過(guò)強(qiáng)化學(xué)習(xí)來(lái)優(yōu)化時(shí)序、擁塞和功耗。反觀模擬電路因?yàn)榻Y(jié)構(gòu)多樣、版圖要求個(gè)性化AI自動(dòng)化的難度大得多。但這幾年Virtuoso Studio開(kāi)始加入一些基于機(jī)器學(xué)習(xí)的輔助功能尤其在版圖寄生提取后的優(yōu)化環(huán)節(jié)AI可以快速判斷哪些關(guān)鍵路徑的寄生對(duì)性能影響最大引導(dǎo)版圖工程師優(yōu)先處理。實(shí)際使用中你會(huì)發(fā)現(xiàn)這些功能更像“智能助手”而不是“自動(dòng)飛行”。它會(huì)用高亮或熱力圖的方式告訴你這條net的寄生電容超標(biāo)了那塊金屬需要換層繞行。最終做決策的還是人。對(duì)一個(gè)模擬版圖工程師來(lái)說(shuō)這其實(shí)已經(jīng)省了很多來(lái)回找問(wèn)題的時(shí)間尤其是項(xiàng)目后期關(guān)鍵參數(shù)的迭代次數(shù)明顯下降。2.2 原理圖階段從手動(dòng)打pin到半自動(dòng)生成原理圖輸入是大部分項(xiàng)目的第一步也是最容易被AI提升效率的地方。Virtuoso自帶Symbol生成功能但早期版本非常機(jī)械你建一個(gè)帶幾十個(gè)引腳的功能模塊要手動(dòng)一個(gè)個(gè)擺pin的位置和方向稍不注意還容易撞在一起。現(xiàn)在Virtuoso里只要你在CDF或電路描述里定義好端口順序和方向系統(tǒng)可以自動(dòng)生成規(guī)整的Symbol甚至在連線時(shí)提示你哪些端口應(yīng)該互連。這塊其實(shí)不算高深的AI靠的是規(guī)則引擎但在工程體驗(yàn)上提升非常大。再加上腳本輔助比如用Skill腳本批量處理多個(gè)Cell的Symbol生成整個(gè)前期準(zhǔn)備工作能壓縮一半時(shí)間。如果你在做課程設(shè)計(jì)或者小規(guī)模模塊可能體會(huì)不深。一旦到了上百個(gè)cell的混合信號(hào)系統(tǒng)手動(dòng)打pin真的是噩夢(mèng)。我親眼見(jiàn)過(guò)同事用一整天整理一張大原理圖的pin腳后來(lái)用Skill腳本加Virtuoso的自動(dòng)排序功能四十分鐘搞定。這就是工具認(rèn)知帶來(lái)的差距。2.3 仿真優(yōu)化從人看波形到機(jī)器找最優(yōu)參數(shù)仿真優(yōu)化是AI在Virtuoso里最能體現(xiàn)價(jià)值的地方。傳統(tǒng)做法是你在ADE L或ADE XL里設(shè)置好工藝角、變量和掃描范圍然后跑一批仿真人工看波形、記錄指標(biāo)、調(diào)整參數(shù)再跑下一批。這個(gè)循環(huán)特別耗費(fèi)時(shí)間尤其是運(yùn)放、LDO這類(lèi)指標(biāo)比較多的模塊。Cadence后來(lái)在Virtuoso里集成了更強(qiáng)的優(yōu)化引擎你可以直接定義設(shè)計(jì)目標(biāo)和約束比如帶寬大于500MHz、相位裕度大于60度、功耗小于2mW工具會(huì)自動(dòng)在變量空間里尋優(yōu)。這一代優(yōu)化算法開(kāi)始引入機(jī)器學(xué)習(xí)的代理模型用較少的仿真次數(shù)逼近全局最優(yōu)比早期單純的蒙特卡洛加隨機(jī)搜索高效得多。我自己的習(xí)慣是分兩步走先用AI優(yōu)化工具跑一輪大范圍的參數(shù)搜索把它給出的Top 10參數(shù)組合拿去跑完整工藝角和蒙特卡洛分析再做人工微調(diào)。這樣既利用了AI的搜索能力又保住了人工對(duì)魯棒性的判斷。2.4 版圖階段約束驅(qū)動(dòng)正在取代“純手工”模擬版圖是很多人覺(jué)得AI最不可能取代的環(huán)節(jié)因?yàn)槠ヅ?、?duì)稱(chēng)、融合這些概念太依賴(lài)人了。但Cadence在Virtuoso里推的還是“約束驅(qū)動(dòng)設(shè)計(jì)”這條路。你先在原理圖里定義好匹配組、對(duì)稱(chēng)軸、屏蔽要求版圖工具會(huì)盡量避免違反這些約束并且在布線過(guò)程中動(dòng)態(tài)提示。這談不上全自動(dòng)但已經(jīng)在改變很多團(tuán)隊(duì)的工作方式。以前畫(huà)一個(gè)差分對(duì)你需要用眼睛比對(duì)四周環(huán)境是否一致現(xiàn)在工具會(huì)自動(dòng)幫你檢查dummy器件、金屬密度、走線間距的一致性。AI在這個(gè)層面的價(jià)值不是替代版圖工程師而是把重復(fù)性的檢查和調(diào)整工作包掉讓人集中精力處理最關(guān)鍵的高風(fēng)險(xiǎn)局部。我在實(shí)際項(xiàng)目里版圖ECO的輪次明顯變少這和約束驅(qū)動(dòng)流程的成熟是直接相關(guān)的。3. 實(shí)操演示在Virtuoso里搭一個(gè)“AI輔助”的設(shè)計(jì)閉環(huán)3.1 環(huán)境準(zhǔn)備和庫(kù)配置想跑通這個(gè)閉環(huán)你需要的軟件基礎(chǔ)其實(shí)不復(fù)雜一套能正常運(yùn)行的Virtuoso環(huán)境帶LIB配置的PDK以及一個(gè)能跑Ocean腳本的仿真器。Cadence的版本選擇上IC 6.1.8已經(jīng)算穩(wěn)定Virtuoso Studio則更適合想體驗(yàn)新功能的人。安裝配置方面正規(guī)渠道獲取授權(quán)后關(guān)鍵是設(shè)置好.cdsinit和.cds.lib。我建議在項(xiàng)目目錄下建一個(gè)干凈的library把PDK的reference library正確掛載上。具體操作是在Library Manager里點(diǎn)擊Edit - Library Path把PDK路徑填進(jìn)去。這一步經(jīng)常有人漏掉結(jié)果一仿真就報(bào)“器件未定義”或者“model library找不到”。如果你用的是學(xué)校或公司的服務(wù)器環(huán)境還要確認(rèn).bashrc或.cshrc里的Cadence相關(guān)環(huán)境變量是否正確導(dǎo)出否則連virtuoso命令都起不來(lái)。3.2 用gm/id方法做器件尺寸掃描并讓腳本替代手動(dòng)觀察gm/id方法是模擬設(shè)計(jì)里非常實(shí)用的晶體管尺寸選定方法。早期大家都是在Virtuoso里建一個(gè)測(cè)試電路掃Vgs和Vds然后自己記錄gm、Id、ft這些數(shù)據(jù)再用Excel畫(huà)曲線選工作點(diǎn)。過(guò)程極其枯燥而且容易出錯(cuò)。你可以在Virtuoso里用parametric analysis完成掃描但更高效的做法是寫(xiě)一段Ocean腳本。大致流程如下先在schematic里搭一個(gè)簡(jiǎn)單的NMOS測(cè)試cell把柵壓設(shè)成變量vg再把寬長(zhǎng)比設(shè)成變量w、l然后在ADE XL里新建一個(gè)test把變量范圍填進(jìn)去。仿真結(jié)束后用Ocean的getData函數(shù)把gm、id、ft這些結(jié)果導(dǎo)出成CSV再用Python去畫(huà)gm/Id曲線。這里的關(guān)鍵是不要只看單個(gè)點(diǎn)的數(shù)值要把整條曲線拉出來(lái)觀察gm/Id從強(qiáng)反型到弱反型的變化趨勢(shì)。AI輔助優(yōu)化的思路在這里也非常直觀你可以把gm/Id設(shè)定為目標(biāo)變量直接讓優(yōu)化器去找滿(mǎn)足帶寬和功耗約束的最優(yōu)w、l組合而不是自己一條一條曲線去看。我在實(shí)際中會(huì)把優(yōu)化器跑出的結(jié)果再在完整電路里驗(yàn)證一遍防止單管工作點(diǎn)選在極端區(qū)域。3.3 用Ocean腳本與Python聯(lián)動(dòng)做自動(dòng)參數(shù)尋優(yōu)很多團(tuán)隊(duì)已經(jīng)在用Python腳本和Virtuoso的Ocean腳本做聯(lián)動(dòng)形成一個(gè)半自動(dòng)的優(yōu)化循環(huán)?;驹硎荘ython負(fù)責(zé)生成參數(shù)組合、解析仿真結(jié)果、執(zhí)行尋優(yōu)算法Ocean腳本負(fù)責(zé)調(diào)用Cadence仿真引擎Virtuoso只作為前端可視化環(huán)境。我提供一個(gè)簡(jiǎn)單的思路供參考你在Python里用pymoo或scipy的優(yōu)化算法每一輪生成一批候選參數(shù)寫(xiě)入到網(wǎng)表或Ocean腳本的變量定義中然后批量調(diào)用Virtuoso的仿真跑完后解析輸出文件把指標(biāo)反饋給優(yōu)化器繼續(xù)下一輪。這樣把AI尋優(yōu)和Virtuoso的精確仿真結(jié)合起來(lái)既比純手調(diào)高效又比純AI代理模型可信。如果你不太熟悉pymoo也可以用最基礎(chǔ)的網(wǎng)格搜索加貪心策略。重點(diǎn)是讓數(shù)據(jù)和腳本的格式統(tǒng)一比如每次仿真結(jié)果都輸出同一個(gè)CSV文件里面固定列是bandwidth、phase_margin、power、area這樣Python解析就非常簡(jiǎn)單。等這個(gè)流程穩(wěn)定了再往里面加更復(fù)雜的機(jī)器學(xué)習(xí)代理模型也不遲。3.4 版圖階段用Pcell和自動(dòng)布局減少重復(fù)勞動(dòng)版圖階段想引入自動(dòng)化最值得花時(shí)間的其實(shí)是PDK里的Pcell。很多PDK已經(jīng)提供了帶參數(shù)化的器件單元你只需要在放置時(shí)填入W、L、finger數(shù)版圖會(huì)自動(dòng)生成相應(yīng)的版圖和對(duì)應(yīng)的CDF參數(shù)。這樣做的好處有兩個(gè)一是原理圖和版圖之間的映射關(guān)系更不容易出錯(cuò)二是后期調(diào)整尺寸時(shí)可以直接改CDF參數(shù)讓版圖自動(dòng)更新不用手動(dòng)去改多邊形。Virtuoso還支持在約束管理器里定義匹配組和對(duì)稱(chēng)約束然后用輔助布線工具進(jìn)行半自動(dòng)連線。實(shí)際經(jīng)驗(yàn)是電源地網(wǎng)絡(luò)和敏感信號(hào)網(wǎng)絡(luò)建議手動(dòng)走線剩下的次級(jí)信號(hào)網(wǎng)絡(luò)可以用工具輔助。這個(gè)“人工具”的混合方式在項(xiàng)目交付緊張的時(shí)候特別實(shí)用。還有一點(diǎn)要提醒AI自動(dòng)布局的結(jié)果一定要做人工DRC/LVS檢查哪怕是官方工具也要保證版圖符合工藝規(guī)則和可靠性要求。4. 我踩過(guò)的坑Virtuoso里的高頻問(wèn)題與排查思路4.1 仿真報(bào)“器件未定義”或“模型庫(kù)缺失”怎么查這個(gè)報(bào)錯(cuò)我在新手期碰到過(guò)太多次。很多時(shí)候并不是電路畫(huà)錯(cuò)了而是library和model配置沒(méi)對(duì)齊。第一排查點(diǎn)是.cds.lib里是否包含了PDK的reference library第二排查點(diǎn)是仿真器的model library設(shè)置在ADE L里的Setup - Model Libraries中要確認(rèn)工藝角對(duì)應(yīng)的.scs或.lib文件路徑正確。如果器件來(lái)自PDK還需要確認(rèn)CDF參數(shù)里的modelName是否正確。有些PDK要求你在schematic里選特定的symbol比如nch_25而不是通用nmos4選錯(cuò)了就會(huì)提示未定義。還有多個(gè)庫(kù)版本并存的情況最好用Library Manager確認(rèn)當(dāng)前view所在庫(kù)別讓config文件指到舊版本的cell。4.2 電阻、電容不顯示阻值的處理思路Virtuoso里電阻不顯示阻值多半和CDF回調(diào)函數(shù)沒(méi)跑起來(lái)有關(guān)。很多PDK會(huì)在放置器件時(shí)動(dòng)態(tài)計(jì)算并顯示阻值如果你改了長(zhǎng)寬參數(shù)后顯示不更新可以去CDF里檢查callback是否被正確加載。還有一個(gè)常見(jiàn)問(wèn)題是用了通用模擬庫(kù)analogLib里的res這類(lèi)器件本身沒(méi)有工藝參數(shù)自然只顯示你手動(dòng)填的value。如果你用的是PDK里的電阻檢查實(shí)際調(diào)用的view是否為symbol且?guī)в衐isplay標(biāo)記。問(wèn)題嚴(yán)重時(shí)可以把整個(gè)cell刪掉重新放置或者用Verify - Check and Save刷新一下CDF參數(shù)。不要小看這個(gè)問(wèn)題高級(jí)版圖里阻值顯示錯(cuò)誤會(huì)導(dǎo)致你誤判分壓比我曾經(jīng)在一次LDO反饋網(wǎng)絡(luò)調(diào)試?yán)锉凰莺菘恿艘淮?。后?lái)養(yǎng)成了習(xí)慣放完電阻第一件事就是按下鍵盤(pán)q查看屬性面板里阻值是不是預(yù)期值。4.3 瞬態(tài)仿真不收斂的經(jīng)典情況和對(duì)策瞬態(tài)仿真不收斂是個(gè)大話題常見(jiàn)表現(xiàn)是仿真時(shí)間卡在某一點(diǎn)不往前走或者報(bào)“Matrix is singular”。排除電路本身錯(cuò)誤的前提下可以先調(diào)整仿真器參數(shù)。在ADE L或ADE XL的Simulation Options里把integration method從默認(rèn)的trap改成gear2有時(shí)候就能解決震蕩問(wèn)題。還可以調(diào)小reltol和abstol但代價(jià)是仿真時(shí)間變長(zhǎng)。另外很多不收斂和初始狀態(tài)有關(guān)。對(duì)于帶反饋的電路建議加一個(gè)合適的ic初始條件或者使用uic選項(xiàng)跳過(guò)DC工作點(diǎn)求解。如果是開(kāi)關(guān)電容電路或功率級(jí)還要檢查是否存在兩個(gè)理想電壓源直接并聯(lián)這類(lèi)拓?fù)鋯?wèn)題。最后有一個(gè)經(jīng)驗(yàn)之談先跑小規(guī)模、短時(shí)間的仿真定位不收斂的大致時(shí)間點(diǎn)再用分段仿真逼近不要一上來(lái)就全功率跑幾毫秒浪費(fèi)時(shí)間還不容易找到根因。4.4 在AI輔助流程中原理圖符號(hào)與版圖引腳對(duì)應(yīng)的重要性當(dāng)AI或腳本參與自動(dòng)連線時(shí)你繪制的原理圖符號(hào)和版圖單元之間的pin order必須嚴(yán)格一致否則后期LVS會(huì)冒出一堆short或open。很多團(tuán)隊(duì)建庫(kù)時(shí)不注意Symbol里的pin順序和Layout里的pin順序不一致手動(dòng)畫(huà)版圖時(shí)靠眼睛還能應(yīng)付自動(dòng)化工具介入后就全亂了。我的建議是在建庫(kù)初期就制定一套pin排列規(guī)范比如左輸入右輸出、上電源下地并讓所有模塊遵循同一套規(guī)則。配合Virtuoso的自動(dòng)打pin功能時(shí)也要檢查生成的pin是否與原理圖端口名完全一致大小寫(xiě)和前綴都不能馬虎。LVS報(bào)錯(cuò)不要只看最后的連線結(jié)果先查pin的映射關(guān)系通常能省下大量排查時(shí)間。5. 工具鏈選型與環(huán)境搭建哪些AI能力值得真金白銀去追5.1 Cadence全家桶還是混合工具鏈很多團(tuán)隊(duì)會(huì)糾結(jié)到底全套用Cadence工具還是在流程里混入開(kāi)源或者第三方的工具。我的想法是如果公司有預(yù)算、團(tuán)隊(duì)規(guī)模夠大用Cadence全家桶在集成度上省心很多。Virtuoso和Allegro之間的數(shù)據(jù)交互、PCB與芯片協(xié)同設(shè)計(jì)這些都是Cadence的護(hù)城河。AI能力嵌入得越多全家桶的優(yōu)勢(shì)越明顯。但如果只是學(xué)生項(xiàng)目或小團(tuán)隊(duì)驗(yàn)證完全可以在Virtuoso前面加一層Python腳本把優(yōu)化和批處理放在腳本里做沒(méi)必要一開(kāi)始就購(gòu)置昂貴的AI套件。市面上一些開(kāi)源的EDA工具比如KLayout、Ngspice、XSchem在教學(xué)和簡(jiǎn)單電路驗(yàn)證上也夠用但它們與Virtuoso的交互性和工程化能力有差距。基于我個(gè)人的經(jīng)驗(yàn)?zāi)阒辽僖幸惶啄芘芡═T/SS/FF三個(gè)工藝角的完整商業(yè)級(jí)流程才能真正體會(huì)到AI工具帶來(lái)的效率增益。5.2 開(kāi)源EDA與商業(yè)EDA的真實(shí)差距開(kāi)源EDA這些年進(jìn)步了不少KLayout看GDS、Ngspice跑電路仿真基本功能是完好的。但差距主要體現(xiàn)在三個(gè)方面第一PDK適配程度差很多先進(jìn)工藝節(jié)點(diǎn)的PDK在開(kāi)源工具里根本無(wú)法完整加載第二設(shè)計(jì)流程不閉環(huán)物理驗(yàn)證、寄生提取、可靠性檢查等環(huán)節(jié)需要自己拼裝容易出版本兼容問(wèn)題第三AI相關(guān)能力幾乎為零開(kāi)源工具目前沒(méi)有能對(duì)標(biāo)Virtuoso Studio里那種內(nèi)置優(yōu)化引擎的東西。不過(guò)對(duì)學(xué)習(xí)EDA設(shè)計(jì)方法本身來(lái)說(shuō)開(kāi)源工具有一個(gè)獨(dú)特優(yōu)勢(shì)你可以在代碼層面看到工具是怎么處理網(wǎng)表和版圖的。所以我建議在校學(xué)生可以用開(kāi)源工具練手但實(shí)習(xí)或工作后如果條件允許還是要盡快回到商業(yè)工具的生態(tài)里。畢竟業(yè)界招人的時(shí)候問(wèn)的最多的還是“你會(huì)不會(huì)用Virtuoso”而不是“你會(huì)不會(huì)用KLayout”。5.3 車(chē)規(guī)級(jí)項(xiàng)目里AI工具怎么過(guò)功能安全這一關(guān)最后聊一下車(chē)規(guī)級(jí)項(xiàng)目這是很多工程師關(guān)心的話題。車(chē)規(guī)級(jí)芯片對(duì)設(shè)計(jì)流程的要求極其苛刻ISO 26262功能安全標(biāo)準(zhǔn)要求每個(gè)環(huán)節(jié)都可追溯、可驗(yàn)證。AI工具在這個(gè)環(huán)境里的角色很尷尬一方面它能幫設(shè)計(jì)人員快速找到優(yōu)化方向另一方面如果工具本身是黑盒就很難滿(mǎn)足設(shè)計(jì)評(píng)審和AMS安全分析的要求。我在車(chē)規(guī)項(xiàng)目里的經(jīng)驗(yàn)是可以把AI用于離線分析和參數(shù)預(yù)篩選但關(guān)鍵的signoff仿真和可靠性評(píng)估一定要用確定性流程重新驗(yàn)證。Cadence也在努力為AI工具增加報(bào)告和日志輸出讓每一步優(yōu)化都有據(jù)可查。所以“車(chē)規(guī)級(jí)EDA flow能不能用AI”我的答案是可以但要給AI劃定邊界它負(fù)責(zé)探索人負(fù)責(zé)裁決流程負(fù)責(zé)證據(jù)鏈。6. 一點(diǎn)個(gè)人體會(huì)彎路走多了以后我現(xiàn)在的想法比較樸素AI在EDA里不是魔法它像一個(gè)效率放大器。你用得好Virtuoso這個(gè)老朋友會(huì)煥然一新你什么都不了解也不會(huì)因?yàn)楣ぞ叨嗔藗€(gè)AI按鈕就自動(dòng)做出好芯片。真正拉開(kāi)工程師差距的還是對(duì)電路本質(zhì)的理解、對(duì)工藝Know-how的積累以及愿不愿意把重復(fù)勞動(dòng)腳本化的習(xí)慣。如果你手頭正好在畫(huà)原理圖、調(diào)仿真我建議從今天就開(kāi)始做兩件小事第一把常用操作封裝成Skill腳本或快捷鍵第二嘗試用Ocean腳本加Python去優(yōu)化一個(gè)最簡(jiǎn)單的單管放大器參數(shù)。別管結(jié)果是否驚艷這扇門(mén)一旦推開(kāi)你會(huì)發(fā)現(xiàn)自己設(shè)計(jì)流程的效率提升是一個(gè)加速曲線。希望這篇文章能給你一點(diǎn)啟發(fā)也歡迎你在自己項(xiàng)目里試試這些方法然后回來(lái)聊聊哪些坑是你也踩過(guò)的。