中文引用格式: 高華,李輝. 14 nm工藝下基于CUPF的數(shù)字IC低功耗物理設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2017,43(9):25-29.
英文引用格式: Gao Hua,Li Hui. Digital IC physical design low power implement based on CUPF flow under 14 nm process[J].Application of Electronic Technique,2017,43(9):25-29.
0 引言
數(shù)字集成電路發(fā)展初期,芯片的面積和速度是衡量芯片設(shè)計(jì)質(zhì)量的重要標(biāo)準(zhǔn),而功耗問題并沒有引起芯片設(shè)計(jì)工作者的關(guān)注和重視。近年來(lái),伴隨著超大規(guī)模集成電路(Very Large Scale Integration,VLSI)集成度的急劇增加、工作頻率的大幅提高,以及生產(chǎn)工藝的提升,數(shù)字芯片的功耗顯著增加。眾所周知,功耗會(huì)影響封裝和生產(chǎn)成本,同時(shí)功耗的增加還會(huì)引起電遷移等一系列問題,從而影響信號(hào)的完整性、降低芯片的可靠性。因此,功耗逐漸成為了當(dāng)今數(shù)字IC設(shè)計(jì)的重要衡量標(biāo)準(zhǔn)[1]。
目前,數(shù)字集成電路的生產(chǎn)工藝進(jìn)入了超深亞微米時(shí)代。國(guó)內(nèi)集成電路行業(yè)在生產(chǎn)工藝和設(shè)計(jì)方面都比較落后。國(guó)際方面,芯片制造商臺(tái)積電(TSMC)、GF(Global Foundry)生產(chǎn)工藝達(dá)到了7 nm水平。芯片設(shè)計(jì)商Intel、AMD、NVIDIA也逐漸投入28 nm以及更先進(jìn)工藝芯片的設(shè)計(jì)工作。技術(shù)方面,芯片特征尺寸的減小給低功耗設(shè)計(jì)在系統(tǒng)級(jí)、算法級(jí)、電路級(jí)以及門級(jí)的實(shí)現(xiàn)提出了新的挑戰(zhàn),因此現(xiàn)有的低功耗設(shè)計(jì)方法面臨著優(yōu)化和淘汰,傳統(tǒng)的基于UPF的低功耗物理設(shè)計(jì)流程設(shè)計(jì)周期長(zhǎng)、可修復(fù)性比較差,很難保證設(shè)計(jì)的正確性,難以滿足目前大規(guī)模數(shù)字芯片快速精準(zhǔn)開發(fā)設(shè)計(jì)的要求。現(xiàn)階段,針對(duì)超深亞微米數(shù)字芯片的物理設(shè)計(jì)的文獻(xiàn)比較少,因此14 nm工藝實(shí)現(xiàn)芯片的低功耗物理設(shè)計(jì)具有現(xiàn)實(shí)意義和研究?jī)r(jià)值。
1 基于CUPF的低功耗設(shè)計(jì)流程簡(jiǎn)介
UPF為IEEE1801 Unified Power Format標(biāo)準(zhǔn)。數(shù)字IC設(shè)計(jì)人員將電源電壓、隔離單元以及電源開關(guān)等與功耗相關(guān)的設(shè)計(jì)約束寫入U(xiǎn)PF文件[2]。UPF以TCL 腳本的形式貫穿于RTL-to-GDSII設(shè)計(jì)流程的始終。
在傳統(tǒng)的物理設(shè)計(jì)流程中,物理設(shè)計(jì)的每一個(gè)階段都會(huì)讀入U(xiǎn)PF,即每一個(gè)設(shè)計(jì)步驟都進(jìn)行相應(yīng)的低功耗優(yōu)化。IC Compiler 會(huì)讀入U(xiǎn)PF文件,并且根據(jù)低功耗優(yōu)化引入的特殊元件,導(dǎo)致UPF產(chǎn)生新的連接關(guān)系從而直接修改原UPF文件。這種方式導(dǎo)致在物理設(shè)計(jì)的每一階段都會(huì)重新修改整個(gè)UPF,并且不利于追蹤變化。
基于CUPF的低功耗設(shè)計(jì)流程在物理設(shè)計(jì)過(guò)程中不會(huì)因?yàn)榈凸膬?yōu)化而改變?cè)糢PF文件,而是在每一個(gè)設(shè)計(jì)階段將UPF的變化寫入SUPF(Supplement UPF)。在物理設(shè)計(jì)的開始階段,IC Compiler讀入前端網(wǎng)表(Netlist)和UPF進(jìn)行芯片的布局規(guī)劃、單元放置、時(shí)鐘樹綜合以及布線工作。然而在布局優(yōu)化和時(shí)鐘優(yōu)化過(guò)程中,IC Compiler會(huì)根據(jù)時(shí)序、功耗、阻塞等因素插入或者刪除特殊單元,從而改變UPF定義的連接關(guān)系,本文將這些針對(duì)UPF的改變寫入SUPF而不是改變?cè)嫉腃UPF,然后將最終的SUPF和CUPF整合在一起交付PrimetimePX等工具進(jìn)行功耗分析[3]。具體流程如圖1所示。
基于CUPF的低功耗設(shè)計(jì)流程與基于UPF的傳統(tǒng)設(shè)計(jì)流程相比具有以下優(yōu)點(diǎn)和創(chuàng)新:
(1)CUPF避免了IC Compiler在設(shè)計(jì)的每個(gè)階段讀取原始UPF并且全局修改造成的時(shí)間浪費(fèi),有助于縮短芯片物理設(shè)計(jì)周期和提高良品率。
(2)CUPF在物理設(shè)計(jì)的每個(gè)階段只是保存了UPF發(fā)生改變的部分,而不是對(duì)原始文件進(jìn)行反復(fù)修改,從而利于UPF變化追蹤,及時(shí)反饋和修改不必要的約束。
(3)CUPF相對(duì)于UPF占用更少的存儲(chǔ)空間,有利于滿足龐大物理設(shè)計(jì)數(shù)據(jù)的內(nèi)存需求。
2 基于CUPF的14 nm芯片低功耗物理設(shè)計(jì)與實(shí)現(xiàn)
本設(shè)計(jì)針對(duì)GF 14 nm工藝下GPU的fch_sata_t模塊進(jìn)行低功耗設(shè)計(jì)。fch_sata_t是芯片內(nèi)部用于控制全局模塊電源開關(guān)的控制模塊,其內(nèi)部包含大約567 136個(gè)門單元,工作頻率在1.1 GHz??紤]到數(shù)目龐大的晶體管和較高的工作頻率帶來(lái)的靜態(tài)功耗和動(dòng)態(tài)功耗,此模塊使用門控電源、多電源電壓和多閾值電壓等低功耗技術(shù)進(jìn)行物理設(shè)計(jì)。
2.1 門控電源低功耗技術(shù)實(shí)現(xiàn)
門控電源技術(shù)基本原理是根據(jù)芯片中各個(gè)模塊的工作情況,選擇性地控制各模塊的電源供給,減少門電路不工作時(shí)的短路電流,從而降低芯片總體的動(dòng)態(tài)功耗。
用于實(shí)現(xiàn)門控電源技術(shù)的基本單元是電源開關(guān)單元(Power Switch Cell)。同時(shí),為了減少不同模塊在不同電源狀態(tài)下的相互干擾,需要插入隔離單元(Isolation Cell)將可掉電區(qū)域和常開區(qū)域進(jìn)行隔離[4]。電源開關(guān)單元和隔離單元如圖2所示。
2.1.1 電源開關(guān)單元的實(shí)現(xiàn)
在UPF文件中,將門控電源低功耗中用到電源開關(guān)單元命名為SW_PD_P1,在GF14制程工藝下,利用庫(kù)元件hdpghdr2vspacexssM160D4bl作為開關(guān)電源單元,并且指定SW_PD_P1控制的電源域?yàn)镻D_P1。開關(guān)電源單元在CUPF中的描述如下所示[5]:
create_power_switch SW_PD_P1
-domain PD_P1
-input_supply_port {vin VDDCR_SATA}
-output_supply_port {vout VDDINT_P1}
-control_port {Min u_fch_sata_A/mother_sleep/Y }
-control_port {Din u_fch_sata_A/daughter_sleep/Y}
-on_state {SW_ON vin {!Min && !Din}}
-off_state {SW_OFF {!(!Min && !Din)}}
map_power_switch SW_PD_P1
-domain PD_P1
-lib_cells {hdpghdr2vspacexssM160D4bl}
上述引入的電源開關(guān)單元SW_PD_P1陣列插入DEF的方式有兩種:網(wǎng)格型和環(huán)型。網(wǎng)格型的插入方式實(shí)現(xiàn)起來(lái)比較困難,對(duì)繞線資源和時(shí)序的影響比較大,但是這種網(wǎng)絡(luò)的優(yōu)點(diǎn)在于占用的面積比較??;環(huán)型的插入方式實(shí)現(xiàn)起來(lái)比較簡(jiǎn)單,并且占用的繞線資源較少,不會(huì)引起繞線阻塞,但是這種網(wǎng)絡(luò)對(duì)面積的占用比較大。因?yàn)閒ch_sata_t面積比較小,并且門電路的使用率比較高,因此本模塊使用網(wǎng)格型電源開關(guān)的插入方式。插入方式在UPF中描述為[6]:
create_power_switch_array
-lib_cell SW_PD_P1: hdpghdr2vspacexssM160D4bl
-bounding_box {302.145 -211.34 314.045 -200.94}
-x_increment 11.9
-y_increment 10.4
其中,-lib_cell指的是電源開關(guān)單元所用的庫(kù)元件;-bounding_box指的是電源開關(guān)單元放置的具體位置;-x_increment和-y_increment指的是相鄰的電源開關(guān)之間的橫向和縱向距離設(shè)置。當(dāng)然,以上的距離參數(shù)由實(shí)際的電源條帶的分布決定。SW_PD_P1在模塊中的具體實(shí)現(xiàn)效果如圖3、圖4所示。
由圖3可以看出,相鄰兩行的電源開關(guān)單元交錯(cuò)擺放,這樣有利于提高電源開關(guān)單元的利用率。每一個(gè)電源開關(guān)單元的面積約為2.16 μm2,模塊中共用到3 685個(gè)電源開關(guān)單元,因此電源開關(guān)單元共占用7 959.6 μm2,相當(dāng)于模塊1.9%的面積,滿足設(shè)計(jì)要求。
2.1.2 隔離單元的應(yīng)用
隔離單元是數(shù)字IC物理設(shè)計(jì)中出現(xiàn)的又一重要的物理單元(Physical Cell)。不同工作狀態(tài)的電源域不可避免的會(huì)有相互干擾,甚至有可能導(dǎo)致邏輯功能上的錯(cuò)誤。因此,在門控電源低功耗技術(shù)的實(shí)現(xiàn)過(guò)程中,需要在電源常開區(qū)域和可關(guān)斷電源區(qū)域插入隔離單元[7]。在placement階段,通過(guò)CUPF插入隔離單元,插入的實(shí)現(xiàn)過(guò)程如下:
set_isolation ISO_LO_P1_GLB
-domain PD_GLB
-source SS_P1
-diff_supply_only TRUE
-isolation_power_net VDDCR_SATA
-isolation_ground_net VSS
-name_suffix _ISO_LO_P1_GLB
-clamp_value 0
set_isolation_control ISO_LO_P1_GLB
-domain PD_GLB
-isolation_signal u_fch_sata_AON_0/d0nt_P/Z
-location self
-isolation_sense low
map_isolation_cell ISO_LO_P1_GLB
-domain PD_GLB
-lib_cells {hdvionoclamplonxss2ul}
可以看出在模塊中定義的隔離單元為ISO_LO_P1_GLB,其控制隔離的電壓源是PD_GLB,隔離單元的VDD來(lái)自電源條帶VDDCR_SATA,隔離單元的VSS來(lái)自電源條帶VSS。另外,UPF定義單元庫(kù)元件hdvionoclamplonxss2ul 等作為隔離單元。隔離單元在DEF里面的實(shí)現(xiàn)如圖5所示。
2.2 多電源電壓低功耗技術(shù)實(shí)現(xiàn)
多電源電壓低功耗技術(shù)是CUPF應(yīng)用于數(shù)字IC低功耗物理設(shè)計(jì)的又一重要體現(xiàn)。
在RTL設(shè)計(jì)階段,設(shè)計(jì)人員根據(jù)低功耗需求對(duì)芯片進(jìn)行模塊劃分,UPF也會(huì)根據(jù)劃分的模塊定義相應(yīng)的電源約束。IC Compiler需要讀入U(xiǎn)PF并且根據(jù)約束在不同模塊正確設(shè)計(jì)相應(yīng)模塊的電源結(jié)構(gòu)[8]。在UPF中,對(duì)電源域的定義如下:
create_power_domain DFT_AON -include_scope
create_power_domain DFT_AON
-elements{vl_sms_fch_sata_t1_sms_proc_sms_1_stp
fch_sata_t1_clken_sync fch_sata_t1_clksms_gate
fch_sata_t_wrck_gate}
create_supply_net VDDCR_SATA
-domain DFT_AON -reuse
create_supply_set SS_DFT_AON
-function { power VDDCR_SATA}
-function {ground VSS}
這里定義了名為DFT_AON的電源域用于為DFT模塊提供電源。因?yàn)?include_scope選項(xiàng),IC Compiler會(huì)自動(dòng)為DFT_AON電源域在DEF中映射為對(duì)應(yīng)的電壓域(voltage area)。
對(duì)于多電源電壓設(shè)計(jì),不同的電壓域之間需要插入電平轉(zhuǎn)換器單元(Level Shifter)。電平裝換器單元能夠過(guò)渡不同電壓域之間的切換,IC Compiler會(huì)在單元擺放階段根據(jù)UPF中關(guān)于轉(zhuǎn)換器單元的定義自動(dòng)插入電平轉(zhuǎn)換單元。CUPF中關(guān)于電平轉(zhuǎn)換器單元的定義為:
set_level_shifter
LS_VDDCR_FCH_S5_VDDCR_FCH -domain
PD_VDDCR_FCH_S5 -applies_to inputs -rule both
-location self
name_suffix LS_VDDCR_FCH_VDDCR_FCH
map_level_shifter_cell
LS_VDDCR_FCH_S5_VDDCR_FCH
-domain PD_VDDCR_FCH_S
-lib_cells {hdlsbf2g6011 …}
由以上CUPF命令可得,定義了名為L(zhǎng)S_VDDCR_FCH_S5_VDDCR_FCH的電平轉(zhuǎn)換器單元,并指定單元庫(kù)中hdlsbf2g6011等元件作為電平轉(zhuǎn)換器單元。單元所在的電源域?yàn)镻D_VDDCR_FCH_S,主要功能是完成電壓VDDCR_FCH_S5到VDDCR_FCH的轉(zhuǎn)變。通常,電平轉(zhuǎn)換器單元的面積比較大,占用比較多的繞線資源,因此對(duì)時(shí)序和阻塞有一定的影響。為了盡量減少電平轉(zhuǎn)換器單元帶來(lái)的負(fù)面影響,需要規(guī)定特定的區(qū)域?qū)㈦妷恨D(zhuǎn)換器單元放置在一起,并且靠近電壓域臨界區(qū)域。Level Shifter在DEF中的分布如圖6所示。
實(shí)現(xiàn)過(guò)程如下:
create_bounds -name Shifter_region
-coordinate { -120.23 30.83 -200.65 60.72}
-type soft shifter_cells
3 實(shí)驗(yàn)結(jié)果及分析
本次設(shè)計(jì)針對(duì)基本14 nm工藝的fch_sata_t模塊設(shè)計(jì),fch_sata_t是GPU中控制其他模塊電源模式的控制單元。模塊含有567 136個(gè)門電路單元、68個(gè)宏單元。fch_stat_t的DEF布局如圖7所示。
芯片設(shè)計(jì)全過(guò)程基于本文提出的基于CUPF的設(shè)計(jì)流程,應(yīng)用了電源開關(guān)技術(shù)、多電壓電源技術(shù)以及多閾值電壓等低功耗技術(shù)。參考目前主流數(shù)字IC設(shè)計(jì)公司的驗(yàn)證流程,本設(shè)計(jì)利用Synopsys的產(chǎn)品PrimetimePX進(jìn)行功耗分析,并利用圖形化界面的Show Power Analysis Driver選項(xiàng)得到優(yōu)化前后功耗分析柱狀圖如圖8、圖9所示。
由以上柱狀圖可以看出,優(yōu)化后模塊總功率減少了約為8.675%。其中靜態(tài)功耗即Leakage Power為7.691×10-3 W,占總功耗的19.23%;動(dòng)態(tài)功耗即Switch Power和Internal Power分別為5.652×10-3 W與0.026 7 W,占總功耗的80.77%;總功耗約為0.039 9 W,小于設(shè)計(jì)要求的0.050 W,滿足設(shè)計(jì)要求。
4 結(jié)論
本次設(shè)計(jì)主要對(duì)GF14 nm工藝下數(shù)字IC進(jìn)行低功耗物理設(shè)計(jì),提出全新的基于CUPF的物理設(shè)計(jì)流程,芯片中所用到的電源開關(guān)單元技術(shù)和多電源電壓技術(shù)等都是基于CUPF設(shè)計(jì)流程展開。最終經(jīng)過(guò)PrimetimePX分析表明該設(shè)計(jì)流程具有很好的魯棒性,較短的設(shè)計(jì)周期,并且芯片的功耗得到明顯降低。
參考文獻(xiàn)
[1] 王超,田太慶,王明江.SoC物理設(shè)計(jì)低功耗方法研究[J].微處理機(jī).2011(02).
[2] 石玉龍,張立超,柏璐.ASIC后端設(shè)計(jì)中低功耗時(shí)鐘樹綜合方法[J].信息通信.2009(04).
[3] 李娜.UHF RFID電子標(biāo)簽芯片的低功耗物理設(shè)計(jì)與時(shí)鐘樹綜合[D].西安:西安電子科技大學(xué),2013.
[4] 賀京.基于65 nm的低功耗設(shè)計(jì)與等價(jià)性驗(yàn)證[D].西安:西安電子科技大學(xué),2013.
[5] 鐘濤,王豪才.CMOS集成電路的功耗優(yōu)化和低功耗設(shè)計(jì)技術(shù)[J].微電子學(xué).2000(02).
[6] 高丹,劉海濤.CMOS數(shù)字電路低功耗的層次化設(shè)計(jì)[J].微電子學(xué)與計(jì)算機(jī).2008(01).
[7] 徐芝蘭,楊蓮興.CMOS集成電路低功耗設(shè)計(jì)方法[J].微電子學(xué).2004(03).
[8] 郝冬艷,張明,鄭偉.低功耗VLSI芯片的設(shè)計(jì)方法[J].微電子學(xué)與計(jì)算機(jī).2007(06).
作者信息:
高 華,李 輝
(中國(guó)科學(xué)技術(shù)大學(xué) 信息科學(xué)技術(shù)學(xué)院,安徽 合肥230026)