鄒文英,徐新宇,徐 睿
(中國(guó)電子科技集團(tuán)公司第58研究所,江蘇 無錫 214035)
集成電路的后端設(shè)計(jì)過程是從RTL綜合到GDSII數(shù)據(jù)的實(shí)現(xiàn)過程,一個(gè)好的芯片版圖設(shè)計(jì)為集成電路物理設(shè)計(jì)和實(shí)施奠定了良好的基礎(chǔ)。隨著集成電路工藝與設(shè)計(jì)技術(shù)的不斷發(fā)展,如何縮短芯片的設(shè)計(jì)周期,同時(shí)解決芯片特征尺寸縮小、芯片規(guī)模增大、時(shí)鐘頻率提高以及電壓降等因素使芯片物理設(shè)計(jì)復(fù)雜度越來越高的問題,已成為版圖設(shè)計(jì)師需面臨的主要挑戰(zhàn)。用自動(dòng)布局布線工具來完成芯片后端設(shè)計(jì)可以節(jié)省寶貴的設(shè)計(jì)時(shí)間,但后端設(shè)計(jì)絕不僅僅是自動(dòng)化工具的掌握和應(yīng)用,結(jié)合電路特點(diǎn)開發(fā)有針對(duì)性的后端設(shè)計(jì)流程對(duì)芯片的成功起著關(guān)鍵性作用。
本文介紹了采用Cadence公司Soc Encounter后端工具對(duì)基于0.18μm工藝的ASIC芯片后端設(shè)計(jì)的過程,其中包括了設(shè)計(jì)之前的數(shù)據(jù)準(zhǔn)備、布局規(guī)劃、電源設(shè)計(jì)、單元放置及優(yōu)化、時(shí)鐘樹綜合、布線過程,另外還介紹了如何預(yù)防串?dāng)_和如何保證芯片時(shí)序能夠滿足設(shè)計(jì)要求。
芯片是一款為用戶定制的專用芯片,采用0.18μm 1P4M Salicide CMOS工藝。芯片內(nèi)部集成一個(gè)雙端口的SRAM IP宏單元,規(guī)模約為15萬門,工作頻率100MHz。電路電源電壓為3.3V,電源、地引腳分為兩組,其中一組為芯片內(nèi)核及端口前級(jí)驅(qū)動(dòng)供電;另一組為芯片上所有端口后級(jí)驅(qū)動(dòng)供電。
此芯片后端設(shè)計(jì)采用Cadence公司Soc Encounter工具進(jìn)行自動(dòng)布局布線,芯片物理驗(yàn)證使用Mentor Graphics公司Calibre進(jìn)行版圖的DRC/LVS等檢查,最后使用主流寄生參數(shù)提取工具Star-RCXT進(jìn)行寄生參數(shù)提取并將抽取的網(wǎng)表用于門級(jí)與晶體管級(jí)的混合后仿真驗(yàn)證。
此芯片后端布局布線設(shè)計(jì)流程見圖1。
這一步Soc Encounter完成對(duì)芯片做布局布線之前的準(zhǔn)備,首先創(chuàng)建一個(gè)設(shè)計(jì)庫(kù),然后把創(chuàng)建的設(shè)計(jì)庫(kù)與參考庫(kù)鏈接起來,讀入網(wǎng)表,并將網(wǎng)表展開。打開設(shè)計(jì)庫(kù)創(chuàng)建一個(gè)初始單元,然后把讀入的網(wǎng)表捆綁到該初始單元中。
布局規(guī)劃是芯片設(shè)計(jì)的最初步驟,主要包含了芯片大小的規(guī)劃、芯片輸入輸出單元的規(guī)劃以及硬核或模塊的規(guī)劃等。 此芯片封裝引腳240個(gè),輸入輸出單元的放置位置是按照封裝的要求與用戶的實(shí)際情況擺放。芯片僅一個(gè)硬核,所以布局規(guī)劃相對(duì)簡(jiǎn)單。
后端布局規(guī)劃采取以下幾個(gè)原則:(1)使關(guān)鍵路徑上的模塊放置較近,連線比較短,這樣更短的連線更利于減小互連線上的寄生效應(yīng);(2)減少大的布線擁塞,以避免過長(zhǎng)的繞線;(3)合理擺放宏單元,保證模塊放置與外部引腳的安排相對(duì)應(yīng)。
圖1 芯片布局布線流程
電源規(guī)劃是給整個(gè)芯片設(shè)計(jì)均勻的、供電充分、滿足長(zhǎng)期工作可靠性的供電網(wǎng)絡(luò),并解決不同電壓之間的隔離問題,其中主要包括電源環(huán)(Power Ring)和電源條線(Power Stripes)規(guī)劃。根據(jù)此芯片的功耗(600mW)及電源網(wǎng)絡(luò)的電遷移、電壓降方面的要求,采用了增加電源/地線的寬度及供電引腳數(shù)量的常用方法。由于芯片是采用0.18μm 1P4M Salicide CMOS工藝,根據(jù)工藝線提供的參數(shù)可知高層金屬較底層金屬厚,方塊電阻值小,承受電流能力最強(qiáng),因此設(shè)計(jì)時(shí)主要選擇了高層金屬作為電源環(huán)。依照這個(gè)原則,水平方向放置Metal 3,垂直方向放置Metal 4,在芯片內(nèi)部水平、垂直方向每隔一定距離放置電源、地線的Stripes,以減小到達(dá)晶體管上的電壓降。將芯片的電源、地環(huán)連到電源/地PAD的VDD/VSSPAD上,將Stripes連到主電源環(huán)上,將硬核的Ring 連到主電源環(huán)上,用一系列與標(biāo)準(zhǔn)單元等寬的水平電源/地線將標(biāo)準(zhǔn)單元的電源/地與主電源環(huán)和 Stripes 連接起來,就形成了芯片完整、密集的電源、地線供電“井”型網(wǎng)絡(luò)。
為了更好地穩(wěn)定電源、地線網(wǎng)絡(luò),在芯片設(shè)計(jì)過程中,我們自行設(shè)計(jì)了專門的片內(nèi)去耦電容,片內(nèi)去耦電容設(shè)計(jì)為標(biāo)準(zhǔn)單元形式,并生成布局布線工具所需要的EDA模型,納入本芯片的布局布線流程,與標(biāo)準(zhǔn)單元及其他宏單元一起完成自動(dòng)布局布線,很好地保證了設(shè)計(jì)流程的可重復(fù)性,使芯片物理設(shè)計(jì)的反復(fù)迭代簡(jiǎn)單易操作。
時(shí)鐘樹綜合是時(shí)序優(yōu)化處理中最重要的一步,時(shí)鐘樹綜合的目的是減小時(shí)鐘偏斜和插入延時(shí)。在本芯片的時(shí)鐘樹綜合中主要考慮以下幾點(diǎn):第一,要評(píng)價(jià)芯片時(shí)鐘樹綜合的先后順序,結(jié)合本芯片存在15路不同頻率時(shí)鐘的特點(diǎn),我們?cè)u(píng)價(jià)了各路時(shí)鐘進(jìn)行時(shí)鐘樹綜合的優(yōu)先順序,最終選擇了把最重要的時(shí)鐘放在最后綜合的時(shí)鐘樹綜合方案;第二,本芯片在邏輯設(shè)計(jì)過程中采用三模結(jié)構(gòu),因此存在不同時(shí)鐘域之間的時(shí)鐘平衡問題,利用Soc Encounter工具時(shí)鐘樹綜合提供不同時(shí)鐘域之間的時(shí)鐘平衡處理方法,使復(fù)雜的時(shí)鐘樹綜合問題得以解決;第三,在Soc Encounter中要明確時(shí)序參數(shù)及模型的設(shè)置;第四,為時(shí)鐘網(wǎng)絡(luò)設(shè)置專門的布線規(guī)則,我們采用了2倍于正常設(shè)計(jì)規(guī)則的線寬規(guī)則作為時(shí)鐘線的連線規(guī)則以降低連線負(fù)載等負(fù)效應(yīng),采用了2倍于正常設(shè)計(jì)規(guī)則的線間距規(guī)則作為時(shí)鐘線的間距規(guī)則以減小時(shí)鐘毗鄰連線的耦合電容及由此帶來的信號(hào)間串?dāng)_;第五,不斷調(diào)整約束便于更好地控制時(shí)鐘樹上的偏斜及插入延遲;第六,考慮RC參數(shù)的優(yōu)先布線原則并進(jìn)行線長(zhǎng)優(yōu)化等策略;第七,采用雙通孔規(guī)則增強(qiáng)時(shí)鐘線可靠性。
芯片中有多種工作模式,主要的兩種工作模式是DFT模式與Function模式,DFT模式的優(yōu)先級(jí)低于Function模式。時(shí)鐘樹綜合時(shí)采用先綜合低優(yōu)先級(jí)時(shí)鐘,再綜合高優(yōu)先級(jí)時(shí)鐘的策略,即先綜合DFT模式下的時(shí)鐘樹,再綜合Function模式下的時(shí)鐘樹。前端設(shè)計(jì)人員把SDC文件分成DFT模式下的SDC文件和Function模式下的SDC文件,這兩個(gè)文件分別導(dǎo)入以上兩種工作模式。時(shí)鐘樹綜合的流程示意圖如圖2所示。經(jīng)過這種時(shí)鐘樹綜合策略,綜合后的時(shí)鐘樹便能很好地滿足此芯片嚴(yán)格的時(shí)序要求。
布線是繼布局和時(shí)鐘樹綜合后的一項(xiàng)重要工作,其目的是將分布在芯片內(nèi)部的模塊、標(biāo)準(zhǔn)單元和輸入輸出(I/O)單元按邏輯關(guān)系進(jìn)行互聯(lián)。在自動(dòng)布線的過程中分為三個(gè)步驟,即全局布線(Global routing)、詳細(xì)布線(Detail routing)和布線修正(Search & Repair)。全局布線速度快、時(shí)間短,如果布線發(fā)現(xiàn)問題,可以及時(shí)解決調(diào)整,從而節(jié)省時(shí)間。詳細(xì)布線是布線的具體實(shí)現(xiàn)。在布線開始時(shí)選擇布線修正功能,在詳細(xì)布線完成發(fā)現(xiàn)有錯(cuò)誤時(shí),布線工具會(huì)自動(dòng)去搜尋并修正錯(cuò)誤。
圖2 芯片時(shí)鐘樹綜合流程
在0.18μm設(shè)計(jì)中,互連線的耦合電容已不再是金屬線與電氣地之間的耦合,而是金屬連線與其毗鄰連線之間的耦合,即串?dāng)_電容。串?dāng)_會(huì)給芯片帶來噪聲,使延遲變大,影響芯片的性能,因此信號(hào)完整性分析已經(jīng)必不可少,它要解決的首要問題就是串?dāng)_。設(shè)置串繞阻止選項(xiàng)可以在全局布線及詳細(xì)布線階段有效阻止大部分串?dāng)_現(xiàn)象。
本芯片設(shè)計(jì)時(shí)采用的串?dāng)_抑制方法包括:(1)控制電源網(wǎng)絡(luò)噪聲,通過加入片上(On-Chip Decoupling Capacitance)去耦電容等各種策略以最大限度地降低芯片電源網(wǎng)絡(luò)噪聲,具體做法已在電源規(guī)劃小節(jié)中介紹過;(2)增加信號(hào)線的布線間距;(3)轉(zhuǎn)換到另一層連線;(4)通過設(shè)置約束,由布局布線工具實(shí)現(xiàn)對(duì)走線線長(zhǎng)的控制。在此芯片中,時(shí)鐘是頻率最高的信號(hào)線,與其他信號(hào)線發(fā)生串?dāng)_的幾率很大,所以通過有意增加時(shí)鐘網(wǎng)絡(luò)布線間距的方法,使時(shí)鐘樹這個(gè)大的噪聲源本身的信號(hào)間噪聲得到有效控制。
在芯片的設(shè)計(jì)中,時(shí)序控制一直是后端設(shè)計(jì)的重中之重。
但是在整個(gè)后端布局布線流程中,特別是時(shí)鐘樹綜合過程極大地影響芯片的時(shí)序。在芯片時(shí)鐘樹結(jié)合階段,需達(dá)到的關(guān)鍵性、針對(duì)性目標(biāo)是最小的插入延遲、最小的時(shí)鐘到達(dá)觸發(fā)器或其他時(shí)序單元的時(shí)序端口的偏斜(Skew)。在CTS階段,Soc Encounter為達(dá)到上述時(shí)鐘樹綜合的主要目標(biāo),一定程度上會(huì)通過移動(dòng)其他單元位置等途徑來優(yōu)化時(shí)鐘樹,從而影響了芯片的時(shí)序。事實(shí)上,通過反復(fù)的分析,我們已經(jīng)發(fā)現(xiàn)在完成CTS之后,芯片的時(shí)序一定會(huì)出現(xiàn)一定程度的惡化現(xiàn)象,所以必須在CTS之后再針對(duì)芯片時(shí)序完成進(jìn)一步的時(shí)序優(yōu)化。由于本電路采用三模結(jié)構(gòu)的特點(diǎn),只能在完成CTS之后對(duì)芯片進(jìn)行時(shí)序優(yōu)化,其他階段的時(shí)序優(yōu)化均會(huì)改變?nèi)=Y(jié)構(gòu),這是設(shè)計(jì)過程中不允許的。但是我們?cè)谄渌A段例如布線階段、串?dāng)_優(yōu)化階段都會(huì)進(jìn)行時(shí)序檢查與分析。
經(jīng)過以上步驟分析,我們發(fā)現(xiàn)還存在一些時(shí)序方面不滿足的情況,我們?cè)诹鞒讨胁扇×肆硗庖环N補(bǔ)救策略。主要過程描述如下:首先在Soc Encounter完成布局布線及時(shí)序優(yōu)化,將網(wǎng)表及寄生參數(shù)SPF文件輸出至靜態(tài)時(shí)序分析工具Prime Time中,由Prime Time靜態(tài)時(shí)序分析工具分析兩種工作模式下的時(shí)序情況,如果出現(xiàn)建立、保持時(shí)間的違例,再將違例信息反饋至Soc Encounter中,借助Soc Encounter的內(nèi)嵌工具在時(shí)序違例處加入修復(fù)單元,并進(jìn)行ECO布線,完成后再次將網(wǎng)表及寄生參數(shù)SPF文件輸出至Prime Time中,由Prime Time工具分析。通過這個(gè)過程的反復(fù)迭代,直至滿足芯片所需的100MHz工作時(shí)序要求。
本文介紹了采用Cadence公司Soc Encounter后端工具對(duì)一款A(yù)SIC芯片進(jìn)行后端設(shè)計(jì)的過程,是作者后端設(shè)計(jì)實(shí)踐工作的一些經(jīng)驗(yàn)總結(jié)。后端設(shè)計(jì)過程不能單純僅靠利用工具來實(shí)現(xiàn),而需緊密結(jié)合電路具體特點(diǎn)才能更好地實(shí)現(xiàn)。高度重視電源網(wǎng)絡(luò)、時(shí)鐘樹、時(shí)序、串?dāng)_等各方面問題,同時(shí)認(rèn)真分析和控制其他一些物理因素,如天線效應(yīng)、電遷移、電壓降等,并找出針對(duì)芯片的具體解決方案,方能設(shè)計(jì)出成功的芯片。
芯片采用0.18μm 1P4M CMOS工藝,在7.26mm×9.56 mm芯片尺寸內(nèi)完成了一款用戶定制的、工作頻率100MHz、15萬門左右的ASIC芯片的后端設(shè)計(jì),流片后經(jīng)過測(cè)試,芯片的功能及性能滿足用戶要求。
[1] 陳春章,艾霞,王國(guó)雄. 數(shù)字集成電路物理設(shè)計(jì)[M]. 北京:科學(xué)出版社,2005.
[2] Weste NHE,Harris D.CMOS VLSI Design:A Circuit and Systems Perspective,3rd Ed[M]. 2005.
[3] WANG Dong-hui, YU Qian, HONG Ying, HOU Chao-huan.SuperV Back-End Design Flow Based on Astro[J]. 2005 IEEE.
[4] Cadence User Manual[P].Soc Encounter User Guide.