對于芯片開發(fā)來說,EDA是工程師吃飯的工具。不過與其他軟件開發(fā)生態(tài)不同,加上IC設(shè)計(jì)本身的難度,半導(dǎo)體行業(yè)的EDA成了相對孤立的工具,催生了相對孤立的市場,開源生態(tài)想要在EDA領(lǐng)域插足,可以說是難上加難。
誰來降低設(shè)計(jì)成本
選擇開源EDA的另一個原因就是成本。如果你有參與過開源EDA社區(qū)的互動,就會發(fā)現(xiàn)大部分是學(xué)生、教師、愛好者或獨(dú)立開發(fā)者等等。對他們來說,選擇開源EDA就是為了省錢。要知道,在大部分EDA廠商眼中,不僅是這些群體,哪怕是一些小的初創(chuàng)公司,也得一視同仁,交納授權(quán)費(fèi)用。
從ZeroAsic的CEO Andreas Olofsson在2018年物理設(shè)計(jì)國際會議上公開的這張圖來看,在晶體管數(shù)量幾乎以線性速度提升的過程中,設(shè)計(jì)成本加驗(yàn)證成本構(gòu)成的總硬件開發(fā)成本卻是在指數(shù)級上漲。但不是每個人都在設(shè)計(jì)最先進(jìn)工藝的芯片,有時候?yàn)榱蓑?yàn)證一些理論,實(shí)際流片遠(yuǎn)比追求最大性能更重要。因此,選擇Icarus、GHDL、Yosys這些開源EDA軟件的同時,就直接節(jié)省了開銷。
PDK的缺失
商業(yè)EDA軟件之所以仍是主流,自然有其原因,PDK正是其中重要一環(huán)。PDK是臺積電、格芯和中芯國際這樣的代工廠給到fabless設(shè)計(jì)公司的工具包,包含了設(shè)計(jì)規(guī)則、物理限制、第三方IP庫、設(shè)計(jì)規(guī)則檢查器等等。優(yōu)秀而精確的PDK可以提高一次完成設(shè)計(jì)的成功率,而PDK和EDA是緊密聯(lián)系在一起的,這也就是不少EDA廠商都是直接與代工廠合作的原因。
但開源EDA就不一樣了,之所以不少開源EDA給人以half-baked的感覺,就是因?yàn)槿鄙倭薖DK。此處我們不能單從EDA軟件開發(fā)商的角度來看問題,也要考慮代工廠,依他們的看法,與幾個EDA公司合作花費(fèi)的精力明顯更少一點(diǎn)。更不用說對于臺積電這樣的廠商來說,PDK本身就是一個與開源不沾邊的東西,比如3nm、5nm這樣的工藝,其PDK只有重要的客戶才能拿到,即便是成熟工藝,也有各種保密協(xié)議需要簽署。
FreePDK15 / NCSU
目前開源PDK這塊在一些愿意燒錢的頭部公司推動下,也算有了一些進(jìn)展,比如Skywater Technologies就與谷歌合作,為他們的130nm節(jié)點(diǎn)推出了開源PDK,并提供了免費(fèi)流片的機(jī)會。在一些EDA廠商的支持下,一些大學(xué)也開始推出自己的PDK,比如北卡大學(xué)的FreePDK(15nm和45nm),亞利桑那州立大學(xué)的ASAP7 PDK(7nm),也都是開源的,不過這兩者都是用于學(xué)術(shù)研究的PDK,哪怕設(shè)計(jì)出來了也是沒地方生產(chǎn)制造。
國內(nèi)的開源EDA推進(jìn)
我國在商業(yè)EDA軟件上的市場占比上落后于國外大廠,在開源EDA上也落后于國外開源社區(qū)。但國內(nèi)除了有一眾優(yōu)秀的商業(yè)EDA公司仍在推陳出新外,也開始推動開源EDA發(fā)展的想法。比如由華大九天、東南大學(xué)等單位共同發(fā)起成立的南京集成電路設(shè)計(jì)服務(wù)產(chǎn)業(yè)創(chuàng)新中心有限公司(簡稱“EDA創(chuàng)新中心”),就成立了名為OpenEDA的開源平臺。
OpenEDA上的首個項(xiàng)目為OpenEDI這一數(shù)據(jù)基礎(chǔ)構(gòu)件,借助這一構(gòu)件,用戶可以訪問開源開放、接口豐富且統(tǒng)一高效的數(shù)據(jù)庫、算法庫和計(jì)算架構(gòu),利用高效的內(nèi)存與符號表管理功能。由此打造的EDA工具沒有數(shù)據(jù)壁壘,方便設(shè)計(jì)者在不同設(shè)計(jì)工具之間切換,而無需擔(dān)心數(shù)據(jù)的丟失。這對于開源EDA工具的開發(fā)者來說,是相當(dāng)實(shí)用的基礎(chǔ)構(gòu)件。
不過,OpenEDA平臺從2020年底成立至今,也僅僅只發(fā)布了OpenEDI一個項(xiàng)目而已,國內(nèi)開源EDA工具的發(fā)展和創(chuàng)新還有很長的一段路要走,EDA創(chuàng)新中心邁出了正確的第一步,隨后才會有人追隨這一腳步。
語言也是EDA的一種
近日在回答網(wǎng)友疑問時,中科院計(jì)算技術(shù)研究所副所長,同時也是香山處理器的負(fù)責(zé)人包云崗表示,除了像仿真驗(yàn)證工具、邏輯綜合等傳統(tǒng)EDA工具以外,像香山處理器所用的Chisel這種編程語言,用于生成Verilog代碼,降低前端開發(fā)和驗(yàn)證成本的輔助工具,也可以視為EDA工具的一種,畢竟RTL編程語言也是提升開發(fā)效率的一種方式。
但他也表示,開源EDA要做到全流程工具鏈,與Cadence、Synopsys和Mentor這些商業(yè)EDA相比難免在質(zhì)量上有所欠缺。每個流程如果都有一定的質(zhì)量欠缺,集合在一起,就會導(dǎo)致芯片PPA與商業(yè)EDA相去甚遠(yuǎn),而這才是開源EDA工具首先要解決的挑戰(zhàn)。
結(jié)語
總的來說,如果你追求的是商業(yè)可用性,那么開源EDA工具絕對不會是你的首選,這也不會是開源EDA工具開發(fā)者的目標(biāo)。因?yàn)楣饪块_源社區(qū)的無私奉獻(xiàn),與耕耘了數(shù)十年商業(yè)市場的EDA廠商抗衡,無疑是愚蠢的。
這些廠商不介意開源EDA生態(tài)的發(fā)展,甚至愿意給予一定的幫助,也是因?yàn)殚_源EDA能夠帶來更廣泛的應(yīng)用,對整個開發(fā)生態(tài)的發(fā)展有益無害。我們不妨將開源EDA視為給到所有設(shè)計(jì)者一個小規(guī)模嘗試的入口,讓他們有機(jī)會打造更多開源硬件。
-
EDA技術(shù)
+關(guān)注
關(guān)注
12文章
172瀏覽量
36841 -
開源
+關(guān)注
關(guān)注
3文章
3185瀏覽量
42241 -
半導(dǎo)體行業(yè)
+關(guān)注
關(guān)注
9文章
401瀏覽量
40421
發(fā)布評論請先 登錄
相關(guān)推薦
評論