最近,國外科技媒體semiengineering 與Movellus公司總裁兼執行長Mo Faisal、Synopsys產品管理執行總監Hany Elhak、 是德科技 產品經理Cedric Pujol以及Siemens EDA定製IC驗證首席產品經理Pradeep Thiagarajan,就異構整合對內部模擬工具的影響以及它如何改變設計流程進行了深入討論。以下是對話摘錄。
https://semiengineering.com/big-changes-ahead-for-analog-design/
SE:透過協同設計異構整合,協同設計不僅僅是模擬和數字,還包括封裝、互連和資料傳輸。這對模擬設計有何影響?
(從左至右依次為:Synopsys的Elhak、Movellus的Faisal、Siemens的Thiagarajan、Keysight的Pujol)
Elhak:模擬和數字仍然是關鍵要素——讓數字佈局佈線和模擬佈局相互通訊。但是,您還需要將其擴充套件到封裝、中介層上。
Pujol:這就是為什麼靈活性是所有工作流程的關鍵。但最重要的是,我們還在與新一代的工程師打交道,他們接受過 Python 和其他語言的培訓,在傳統流程中可能較少,他們希望將他們的 Python 知識帶到晶片設計中。一些客戶告訴我們,我們有 100 名 EDA 工程師可以制定流程,你需要適應他們,這樣我們才能在上面進行最佳化。因此,作為 EDA 供應商,我們需要提供靈活性,以便我們能夠適應他們的工作流程。他們想擁有它。他們將依賴我們的最佳化器完成大約 80% 的工作。但是對於一些關鍵問題,他們希望利用自己的知識,因為他們知道他們可以在這方面有所作為 — 減少熱量、降低功率。
Thiagarajan:還有一個我們尚未提及的更大依賴因素。在開發過程中,模擬設計師會面臨代工廠PDK(工藝設計套件)的演變挑戰。模擬設計師可能從v0.5版本的PDK開始,設計出一個完美的功率放大器——在各個角落都經過驗證,效能完美——然後他們收到PDK的更新版本v0.6或v0.7,裝置中的某些東西就發生了變化。下次simulate時,一切都會出問題。而現在設計公司正試圖加快流片速度,所以他們在做早期設計,但在先進節點,這項技術即使在v1.0版本也可能發生變化,缺失的良率會直接反映到模擬設計上,看起來就像是模擬故障。生態系統中存在巨大的依賴關係,我不知道該如何解決。
SE:過去,模擬設計師對使用EDA工具持抵制態度,因為它並沒有給他們帶來明顯的好處。這種情況是否有所改變?
Elhak:確實發生了很大的變化。這種轉變正在傳統的模擬IC公司中發生。儘管許多閱讀此內容的人可能會問:“我們在現代化嗎?”但在模擬領域,這是事實。公司正在從內部的模擬器、可靠性分析環境和變化分析工具轉向商業EDA。原因是先進節點帶來了新問題,這些傳統工具無法處理——包括器件模型、變化以及FinFET和先進節點帶來的不同型別的可靠性問題。更新和維護這些工具的成本變得越來越高。我個人親眼見證了多次這樣的轉變。
Thiagarajan:這正是大型EDA公司與代工廠在開發週期早期建立合作關係將有所幫助的原因。
Pujol:你說的問題很對。自研工具已經使用了很長時間。十年前,我們在射頻領域看到的大多數問題都涉及提取關鍵路徑。當時我們討論的是三四個節點和不到10個埠。五年前,這個數字激增到可能60個埠,然後是200個。現在我們需要提取超過1000個埠來接地。而我們還沒有談到真正的高頻——可能只是28Ghz。頻率將迅速達到300Ghz,甚至1Thz,那時情況將更糟。自研流程無法很好地處理這些問題。你需要依賴具有可追溯性和其他功能的資料庫,而這正是困難所在。他們想要在Python上的最佳化器,但仍然依賴EDA工具。因此,他們要求許多公司在工具中提供API,以便能夠在GUI中放入自己的東西,但由於一切變化得太快,他們仍然需要依賴EDA工具,因為很難再使用他們的自研工具了。
Faisal:在模擬設計方面,我們缺乏人才。沒有足夠的新模擬設計師接受培訓或從學校畢業。同時,模擬設計的需求卻在不斷增長。那麼如何解決這個問題呢?世界上沒有足夠的模擬工程師,甚至沒有新的人對成為電氣工程師和模擬設計師感興趣。另一方面,優秀的模擬設計師會進行手工計算,他們知道預期的結果,然後再用工具進行驗證。這可以在子塊級別進行,但不能在系統級別進行。然而,在關鍵塊級別,他們通常知道預期的結果,有誤差範圍,然後模擬進來進行驗證。因為如果他們不能這樣做,那麼你就會得到一些只會執行掃描的新鮮工程師,然後他們進行試錯,再試錯。在實驗室裡,這是一個很好的品質,但在設計時不知道方向的情況下進行試錯,可能會浪費大量的時間和資源。
SE:那麼,在模擬設計中,大部分時間都花在哪裡?是在前端嗎?還是在驗證上?與數字設計相比如何?
Elhak:由於我們今天看到的變化,每個不同階段的工作量都發生了變化。傳統上,模擬設計在佈局前階段進行得很快。我設計好原理圖後,就會進行simulate,驗證設計的正確性,然後開始佈局並提取寄生引數。如果有問題,我就開始解決這些問題,進行更多的整體模擬,然後就完成了。如今,在先進節點上,設計引數與寄生引數的數量級相同。這不僅僅是寄生引數數量的激增,隨著先進節點的出現,寄生引數的重要性也在增加。它不僅僅是改變結果5%或10%的問題,而是改變了電路的行為。由於電晶體非常小,設計引數與這些寄生引數的數量級相同。因此,佈局前模擬與佈局後模擬之間的差異巨大。所以設計不能按照傳統方式進行。在你有佈局之前,你無法驗證電路,這改變了佈局應該如何進行。它必須逐步進行。你需要估計寄生引數。你需要在設計過程中進行驗證。傳統上,設計進行得很快,然後大量的時間花在驗證上。現在情況正在改變。設計時間正在增加,驗證是隨著設計的進行而進行的。
Thiagarajan:它必須進入佈局後階段,並且你需要更進一步。對於佈局後階段,你必須進行全功率-地提取。這是必須的。在這個時代,電路中的電壓才是真正重要的。如果你試圖設計一個1V的電路電源,並且你做了一個完美的設計和塊級全模擬,然後你上升到下一個更高的級別,猜猜會發生什麼?你的C4可能會在一個完全不同的點上。它會有如此多的IR壓降,以至於當你看到那個電路時,它已經不是1V了。所以一定要在塊級進行佈局後驗證,但你必須將EM和IR分析提前很多。通常在設計週期中,人們會先完成原理圖、透過、佈局、透過,然後在接近流片的時候進行EMIR分析。所以你會發現問題,然後這是一場爭分奪秒的競賽。你必須將EMIR分析提前到你的日程中,以確保你的電路電壓是存在的,並且沒有因為與設計師不擁有的另一個塊的互連而出現問題。
Elhak:這是一個很好的觀點。例如,電源分配網路(PDN)正在變得越來越大,因此更難simulate。但不僅僅如此。正如你所說,它不僅僅是電遷移和IR壓降問題的來源。它實際上正在改變設計的行為。它是一個非常大的寄生網路,你甚至需要在電路功能中將其考慮在內。所以,它不僅僅是因為更大,我們需要simulate更長的時間。我們需要比過去更頻繁地進行模擬。以前這是籤核階段的事情。“我會做我的電源完整性simulate。那就是我需要PDN的時候。”現在,它是設計的一部分,必須由設計來simulate。如何在存在大型PDN的情況下加速傳統的瞬態模擬——並且與設計一起準確地完成,而不是像EMIR中通常那樣採用兩步法——是當今關鍵的技術變革。例如,你可以使用GPU來simulate PDN。所有這些技術都在加速simulate過程,這不僅僅是因為PDN更大了。PDN更大是一個給定的事實,因為寄生引數的數量和電路本身都更大了。但我們必須從一開始到籤核都進行simulate。
Pujol:它仍然是佈局驅動的設計。原理圖雖然很好,但在很多情況下幾乎沒用。我們過去擁有的電壓有一定的餘量,但現在我們沒有了這個餘量。電壓正在下降,你需要考慮到這一點。如果你只做原理圖,那幾乎就是死路一條。我們談到了對優秀模擬設計師的需求。他們需要考慮到佈局,考慮到它是如何構建的。如果你只有小的原理圖,你將得到的東西與你最終得到的東西絕對不一樣。缺少的東西之一是知識傳遞。我們有很多EDA工具,但沒有知識傳遞工具。你沒有一堆原理圖或佈局,然後你將它們節點對節點地移植。今天有很好的工具可以構建這種節點對節點的傳遞,並透過AI進行最佳化,但知識並沒有傳遞。這會變得更糟。所以最後,當我們有更少的電壓和延遲時,它會變得更復雜。在射頻方面,我們已經處理這個問題多年了。射頻工程師知道在原理圖上放置東西時要避免什麼,因為你會有耦合和所有這些問題。這是我們需要採取的相同方法。
Faisal:這是一個非常大的問題。我會將“知識傳遞”擴充套件到“經驗傳遞”。我們對設計直覺的很多都來源於痛苦。它來源於在實驗室和模擬不收斂的掙扎中。而我們擁有的自動化越多,就越遠離真正的問題。因此,存在一個危險,即新一代工程師在社交媒體和自動化的世界中成長,他們相信一切,而在現實世界中,結果卻截然不同。一旦你經歷了一次晶片失敗,你就會知道你的原理圖simulation 實際上是在撒謊。其中一些是很難教授的。人們必須親身經歷。
Pujol:我們需要這樣的環境來進行協同設計。如果沒有知識傳遞,它就是一個黑盒。而上市時間不會增加,只會不斷縮短。
倒計時 3天!