《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 模擬設(shè)計 > 業(yè)界動態(tài) > 國產(chǎn)EDA的新機(jī)會

國產(chǎn)EDA的新機(jī)會

2020-06-01
來源: 半導(dǎo)體行業(yè)觀察
關(guān)鍵詞: 集成電路 EDA 半導(dǎo)體

  什么是自動IP生成

  

  隨著半導(dǎo)體行業(yè)的發(fā)展,SoC已經(jīng)成為了芯片設(shè)計的最常見形式。在SoC中,通常都包括了多個半導(dǎo)體IP,之后在頂層把這些IP連接到一起組成完整的系統(tǒng)。

    常規(guī)的IP設(shè)計過程費時費力。一般來說,數(shù)字IP設(shè)計首先需要定義IP實現(xiàn)的功能、接口和高層架構(gòu)設(shè)計,此后進(jìn)一步細(xì)化到微架構(gòu)設(shè)計(如模塊劃分和RTL定義),然后再是映射到具體的電路設(shè)計。模擬IP設(shè)計則是需要首先定義模塊的性能指標(biāo)(spec),之后根據(jù)該指標(biāo)再去仔細(xì)調(diào)整電路/版圖設(shè)計并隨時進(jìn)行仿真驗證,在多次迭代之后獲得最終的模擬IP設(shè)計。在整個過程中,每一個環(huán)節(jié)都需要大量的時間和人力。  

  與之相對,自動IP生成則是希望能通過直接把頂層架構(gòu)設(shè)計(對于數(shù)字IP)或模塊指標(biāo)(模擬IP)映射到電路。這樣一來,就能大大節(jié)省設(shè)計的時間和成本,同時可以做更多的設(shè)計探索,最終收斂到最優(yōu)設(shè)計。

  

  數(shù)字領(lǐng)域的自動IP生成

  

  傳統(tǒng)的數(shù)字電路IP設(shè)計通常需要經(jīng)過以下幾個環(huán)節(jié):

  (1)制定頂層的架構(gòu)和算法(使用C語言等高級語言設(shè)計),并且進(jìn)行算法驗證;

  (2)根據(jù)頂層架構(gòu)做模塊劃分和微架構(gòu)設(shè)計/優(yōu)化,包括時序規(guī)劃、clock gating等;

  (3)根據(jù)微架構(gòu)設(shè)計RTL;

  (4)根據(jù)RTL進(jìn)行綜合生成門級網(wǎng)表;

  (5)根據(jù)門級網(wǎng)表做布局布線生成版圖GDS。

    而數(shù)字領(lǐng)域的自動IP生成則是指使用(1)中的高級語言設(shè)計,跳過(2)和(3),直接生成RTL/門級網(wǎng)表/GDS。

    我們認(rèn)為,數(shù)字領(lǐng)域的自動IP生成非常適合信號處理型IP。信號處理型IP主要是對于輸入信號做數(shù)學(xué)運算,其中的主要部分即做運算的數(shù)據(jù)通路(data path),典型的信號處理型IP包括數(shù)字濾波器、視頻編解碼等等?! ?/p>

  我們可以更進(jìn)一步把數(shù)字領(lǐng)域的自動IP生成分為兩大類。一類是對于某些算法和結(jié)構(gòu)相對固定的數(shù)字IP,根據(jù)頂層的IP spec輸入去自動生成電路設(shè)計。典型的例子是MathWorks Matlab中的數(shù)字濾波器自動RTL綜合,用戶只需要輸入數(shù)字濾波器的類型(FIR,IIR)、指標(biāo)(帶寬、中心頻率、濾波抑制比、通帶紋波等)等信息,就能自動生成高質(zhì)量的數(shù)字濾波器RTL代碼。在這類應(yīng)用中,使用自動生成的優(yōu)勢在于可以大大較少設(shè)計驗證的迭代時間。例如,在數(shù)字濾波器設(shè)計中,用戶最關(guān)心的就是帶寬、濾波抑制比等高層的頻域指標(biāo),但是如果使用RTL去做設(shè)計仿真的話,需要自行加入相應(yīng)的激勵波形,同時輸出的時域波形圖也無法直接反映頻域的特性,而需要去把該波形圖的數(shù)據(jù)點導(dǎo)出再去做傅立葉分析才能驗證設(shè)計是否滿足頻域指標(biāo)。這一來一去就會花很多時間,而使用數(shù)字IP直接生成則可以直接在Matlab里去驗證濾波器的性能以及把濾波器接入系統(tǒng)中的整體性能,這樣就大大加速了設(shè)計流程。

  另一種數(shù)字IP自動生成則是針對更一般電路,它通常使用C/C++/SystemC等高級語言作為輸入,其輸出則是功能和高級語言輸入等價的RTL/門級網(wǎng)表/GDS。這類數(shù)字自動生成工具通常又稱作“high-level synthesis”(HLS)。HLS的優(yōu)點和限制都很明確:優(yōu)點是整體設(shè)計和驗證速度都很快,省去了微結(jié)構(gòu)設(shè)計和RTL編寫的時間,驗證上也可以直接和使用高級語言的系統(tǒng)驗證方便地整合在一起。而其缺陷則在于高級語言在描述數(shù)字邏輯時的顆粒度較粗,且一般沒有時序的概念,因此HLS生成的電路通常僅能保證功能正確,但是在電路的速度(往往由時序劃分決定)和功耗(HLS對于常規(guī)的低功耗設(shè)計方法學(xué)如clock gating的支持還不方便)上比起手寫的RTL可能有差距。在信號處理模塊上,HLS生成的電路比起手寫RTL差距較小,差距可以在20%以內(nèi),甚至在一些場合可以做到HLS生成的電路與手寫RTL性能沒有差距。目前,HLS的主要產(chǎn)品包括Mentor Graphics的Catapult,Cadence的Stratus,Xilinx的Vivado HLS等。

  HLS的概念提出已經(jīng)有十多年,但是在最近得到了越來越多的重視。這除了和HLS本身技術(shù)發(fā)展之外,還和半導(dǎo)體行業(yè)的趨勢有關(guān)。在過去,半導(dǎo)體芯片的主要范式還是大的半導(dǎo)體廠商提供通用的處理器平臺,在這樣的范式下,由于在計算平臺上執(zhí)行的算法不確定,因此半導(dǎo)體廠商的策略就是把通用處理平臺的每一個細(xì)節(jié)都做到完美,這樣一來自然就沒有HLS的發(fā)展空間。而在最近,隨著人工智能、大數(shù)據(jù)和下一代多媒體需求的出現(xiàn),SoC上對于執(zhí)行固定算法的數(shù)字IP的需求在大大增強(qiáng),而且隨著互聯(lián)網(wǎng)廠商加入芯片戰(zhàn)局也為半導(dǎo)體芯片快速交付提出了需求。在這種情況下,HLS就變得越來越有價值。這是因為,對于這類執(zhí)行固定算法的數(shù)字信號處理IP,算法本身以及IP頂層架構(gòu)的優(yōu)化對于SoC芯片整體性能的影響往往遠(yuǎn)遠(yuǎn)大于具體電路實現(xiàn)帶來的影響。在較短交付周期的限制下,如果使用傳統(tǒng)的數(shù)字設(shè)計方法論,往往就意味著留給頂層架構(gòu)和算法探索的時間比較少,最后導(dǎo)致使用高效的RTL代碼實現(xiàn)了并非最優(yōu)的架構(gòu)/算法。反之,如果使用HLS,則可以大大壓縮RTL設(shè)計的時間,這樣就給架構(gòu)/算法探索留下了更多時間,最后盡管HLS生成的電路性能可能比手寫RTL要差20%,但是頂層架構(gòu)/算法的優(yōu)化帶來的影響可能是2-3倍的性能提升,而HLS帶來的time-to-market的改善則可能是更大的影響。

  微信圖片_20200601093658.png

  谷歌使用Catapult HLS實現(xiàn)了視頻解碼IP中的絕大部分模塊。該IP是典型的數(shù)字信號處理IP。

  

  模擬IP自動生成

  

  在模擬電路領(lǐng)域,自動IP生成也是EDA領(lǐng)域的一個熱門方向。

  模擬IP自動生成目前能做的是給定一種電路結(jié)構(gòu)(例如帶4-tap DFE的wireline receiver)和模塊指標(biāo),自動生成電路圖和版圖并完成仿真驗證。在未來,隨著電路庫中電路結(jié)構(gòu)數(shù)量的上升,也有機(jī)會能實現(xiàn)僅需輸入模塊功能和指標(biāo),IP自動生成器可以自主選擇最優(yōu)電路結(jié)構(gòu)并生成符合指標(biāo)的電路和版圖。

  模擬IP自動生成可以分成兩部分,即自動調(diào)優(yōu)電路中的晶體管參數(shù)和自動生成版圖。前者至少有30年的歷史,上世紀(jì)九十年代就有不少學(xué)者在研究用各種數(shù)學(xué)優(yōu)化方法來自動選擇模擬電路中晶體管的參數(shù)。在今天,如果僅僅是選擇電路中的晶體管參數(shù)而不考慮自動生成版圖,那么常規(guī)的EDA工具中的參數(shù)掃描就能滿足大部分需求。但是,電路圖設(shè)計中的晶體管參數(shù)自動調(diào)優(yōu)往往不能落實到實際設(shè)計中,這是因為隨著半導(dǎo)體工藝越來越先進(jìn),模擬電路中的版圖效應(yīng)也越來越顯著,而電路圖設(shè)計中的晶體管參數(shù)調(diào)優(yōu)并不能反映版圖的影響,因此往往掃描得到的電路圖最優(yōu)晶體管參數(shù)和版圖設(shè)計完成后的最優(yōu)參數(shù)有一定差別。因此常見的做法是先做一個版本電路圖設(shè)計,然后去畫版圖并做帶版圖效應(yīng)的電路仿真,然后再去調(diào)整電路圖設(shè)計中的晶體管參數(shù)。在這個過程中,即使電路圖中的晶體管參數(shù)都能自動化調(diào)優(yōu),但是整體的設(shè)計流程還是卡在了手工畫版圖——仿真——調(diào)整電路圖晶體管參數(shù)這個循環(huán)里。

  而模擬IP自動生成解決的最大痛點,就在于能自動生成版圖。這樣一來,整體的流程都可以做到自動化,僅需輸入指標(biāo),生成器可以自動生成一組晶體管參數(shù),自動生成版圖做仿真,并自動根據(jù)版圖仿真結(jié)果去調(diào)整電路圖晶體管參數(shù)。這就大大節(jié)省了模擬IP生成的人力和時間,并提升了設(shè)計效率。目前,模擬IP自動生成做的最領(lǐng)先的是UC Berkeley的BAG(Berkeley Analog Generator)項目,該項目已經(jīng)能自動生成SerDes、ADC等復(fù)雜的模擬/混合信號IP的電路設(shè)計和版圖,并且在28nm和16nm等先進(jìn)工藝下都得到了流片驗證。

  微信圖片_20200601093827.png

  BAG自動生成的ADC版圖

  

  自動IP生成是中國EDA的機(jī)會

  

  自動IP生成在美國得到了相當(dāng)?shù)闹匾?,美國國防高級研究計劃局(DARPA)2019年的電子復(fù)興計劃(ERI)中,自動IP生成(IDEA)是其重點扶持方向之一。我們認(rèn)為,這個領(lǐng)域?qū)τ谥袊陌雽?dǎo)體行業(yè)有重要價值,同時中國距離全球先進(jìn)的差距也并不大,因此如果得到足夠支持的話有機(jī)會能在未來數(shù)年內(nèi)追趕全球領(lǐng)先。

  對于數(shù)字IP自動生成來說,其主戰(zhàn)場在信號處理領(lǐng)域,這就從一個方面降低了工具所需要覆蓋的設(shè)計范圍。只要能加速設(shè)計流程,國產(chǎn)EDA版本的HLS完全可以考慮僅僅只支持一部分C/SystemC語言的特性或者甚至是自主的高級語言,只需要該語言能方便地描述這類信號處理電路即可。我們看到,在人工智能、大數(shù)據(jù)和下一代多媒體等新興市場,中國有一大批互聯(lián)網(wǎng)公司進(jìn)入了芯片設(shè)計領(lǐng)域(如阿里,百度,以及最近的字節(jié)跳動等),這些互聯(lián)網(wǎng)公司對于芯片的主要訴求就是加速信號處理,并且需要能快速交付,因此國產(chǎn)HLS對于這些互聯(lián)網(wǎng)公司的芯片項目將有很大的吸引力。

  對于模擬IP自動生成來說,我們看到自動版圖生成技術(shù)至今大約有5年的時間,可以說中國半導(dǎo)體行業(yè)如果有心發(fā)展的話,完全可以在未來幾年內(nèi)趕上并達(dá)到全球一流水平。擁有下一代的自動模擬IP生成工具,也有利于鞏固中國模擬IP設(shè)計強(qiáng)國的地位。


本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀點。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話:010-82306118;郵箱:aet@chinaaet.com。