?

面向FPGA 的低功耗多路選擇器設計方法

2014-04-01 01:01李列文桂衛華陽春華胡小龍
關鍵詞:閾值電壓選擇器晶體管

李列文 ,桂衛華,陽春華,胡小龍

(1. 中南大學 信息科學與工程學院,湖南 長沙,410075;2. 長沙師范學院 電子信息工程系,湖南 長沙,410100)

現場可編程門陣列(field programmable gate array,FPGA)因其可編程特性好、開發周期短、高性能、低成本等優勢,被廣泛應用于原型驗證、工業控制、計算機硬件、通信、汽車電子、航空航天等領域[1],此外,由于其具有獨特的可重構特性,還被認為是構建自適應系統的首選器件[2]。然而,隨著集成電路的制造工藝進入納米階段,FPGA 的設計面臨著一系列新的難題,功耗問題就是其中之一。功耗問題不但影響著FPGA 的性能、封裝、測試以及系統可靠性,還在很大程度上決定著FPGA 未來的發展方向。從功耗來源角度看,FPGA 芯片的功耗可以分為動態功耗和靜態功耗, 在CMOS 工藝到達90 nm 之前,FPGA 的功耗主要由動態功耗構成,約占總功耗的62%以上[3]。近年來,隨著集成電路工藝特征尺寸的減小,晶體管的柵氧化層厚度和閾值電壓也必須相應的縮小,導致漏電流功耗的指數性增長。當芯片制造工藝到達45 nm 時,FPGA 的靜態功耗已超過動態功耗成為芯片總功耗的決定因素。在FPGA 幾種主要資源中,多路選擇器消耗的靜態功耗所占的比例較大,約占FPGA 總靜態功耗的34%[4],因此,降低FPGA 布線資源中多路選擇器的泄漏功耗對有效降低FPGA 整體靜態功耗有著重要的現實意義。

針對FPGA 靜態功耗問題,國內外已有一些相關的研究,典型的靜態功耗優化技術有電源門控技術[5]、雙電壓技術[6]、反向襯底偏置技術[7]等。電源門控技術通過關斷電路的電源降低電路的功耗,該技術最適合應用于移動設備,其主要缺點是需要增加門控晶體管,因此,增加額外硬件開支及增大電路面積是應用電源門控技術時首要考慮的問題。雙電壓技術是FPGA 低功耗設計領域中一種有效常用的方法,該方法可以同時降低電路的動態功耗和靜態功耗。由于雙電壓技術的實現是基于電路中存在非時序關鍵路這一前提,因此其應用領域有一定的局限性,同時雙電壓技術也存在增加硬件開支等缺點。反向襯底偏置技術是一種降低漏電功耗的通用方法,已經成功應用于FPGA 的靜態功耗優化并取得了較好的效果[7]。然而,在以往的研究中,由于對反向襯底偏置技術會造成晶體管延時這一缺陷沒有很好的考慮和處理,采用該項技術在降低靜態功耗的同時往往會增加電路的延時,導致系統性能急劇下降。針對此問題,本文作者提出了一種適合于FPGA 的低功耗多路選擇器設計方法。該方法充分考慮了當前FPGA 中多路選擇器設計存在大量閑置晶體管這一特點,采用反向襯底偏置技術對FPGA 中被使用多路選擇器內閑置晶體管的泄漏電流進行優化,該方法克服了反向襯底偏置技術在降低靜態功耗時增加電路延時的缺陷,在不影響電路性能的前提下有效的降低了FPGA 的靜態功耗。

1 FPGA 中多路選擇器結構

典型的FPGA 器件主要包含3 類基本資源:可編程邏輯塊(configurable logic block,CLB)、布線資源和可編程輸入/輸出模塊??删幊踢壿媺K四周被預制的布線資源通道包圍,可編程輸入/輸出模塊分布在FPGA四周,除了上述3 種資源以外,通常在FPGA 中還包含塊RAM、乘法器等可選資源[8]。

在FPGA 各種資源中,可編程邏輯塊是實現用戶功能的基本單元,每個可編程邏輯塊包含1 個互連開關矩陣和4 個SLICEs,其中每個SLICE 包括2 個查找表(Look-Up-Table,LUT)、2 個觸發器和一些多路選擇器?;ミB開關矩陣主要由不同長度導線和多個布線開關組成,典型的布線開關結構如圖1 所示。

圖1 FPGA 布線開關結構圖Fig.1 FPGA routing switch structure

由圖1 可見:每個布線開關由多路選擇器、緩沖器和一些可編程的SRAM 單元構成。其中多路選擇器是連接各布線軌道和可編程邏輯塊的橋梁,其結構對FPGA 的性能和功耗都有較大的影響。根據多路選擇器所驅動的導線長度不同,FPGA 中多路選擇器的規模從4 選1 到30 選1 不等。圖2 所示為16 選1 的多路選擇器晶體管級電路結構。

圖2 多路選擇器的晶休管級電路結構圖Fig.2 Multiplexer circuit structure

多路選擇器的左邊是16 條輸入線,用于連接布線軌道或可編程邏輯塊等資源,S1~S6 代表6 個可編程SRAM 單元,通過配置SRAM 單元的內容可以從16條輸入線中選出1 條作為有效輸入端,例如,當S1~S6存儲單元的存儲值為“000100”時,輸入線I3被選擇中,信號所經過的有效路徑如圖2 中虛線所示。多路選擇器的主體部分是傳輸晶體管,由于NMOS 晶體管載流子的遷移效率高,電路速度快,因此,多路選擇器中的傳輸晶體管均采用NMOS 晶體管實現。

2 低功耗多路選擇器設計方法

2.1 襯底偏置技術

襯底偏置技術基于襯底偏置MOS 管的閾值電壓可調節特性,通過改變晶體管閾值電壓調節晶體管的功耗和性能。襯底偏置NMOS 管的截面如圖3 所示,其中,VBS為體偏置電壓;VDS為漏源電壓;VGS為柵源電壓。與傳統的柵驅動電路相似,信號從柵極輸入,通過在襯底端和源端加上一個小于PN 結導通電的體偏置電壓VBS來調節MOS 管的閾值電壓。

圖3 基于襯底偏置的NMOSFET 橫截面圖Fig.3 Cross section of a NMOSFET with body bias

襯底偏置技術分為前向襯底偏置技術和反向襯底偏置技術。前向襯底偏置技術通過降低晶體管的閾值電壓提高加晶體管的性能,該項技術存在的不足是增加晶體管的靜態功耗。反向襯底偏置技術通過調節體偏置電壓來增加晶體管的閾值電壓最終達到降低晶體管靜態功耗的目的,其主要缺點是會引起晶體管的延時增加。

基于襯底偏置技術設計思想,文獻[9]設計了一種可編程的閾值電壓結構,其實現機理如圖4 所示。在可編程閾值電壓結構中每個晶體管可以通過配置SRAM 單元的值確定其所加體偏置電壓,從而調節晶體管的閾值電壓最終達到提高晶體管的性能或降低晶體管靜態功耗的目的。在上述結構中,由于每個晶體管都采用了雙閾值結構,因此該結構會帶來較大的面積開銷。

圖4 可編程閾值電壓結構實現機理圖Fig.4 Programmable structure of threshold voltages realization mechanism

2.2 反向襯底偏置技術

當MOS 管的襯底和柵端的電壓差VBS≠0 時,MOS 管的閾值電壓VTH會隨之變化。這就是MOS 管二級效應中的體效應或背柵效應[10],NMOS 管的閾值電壓可以表示為

其中:VTH0為VBS=0 時的閾值電壓;λ 為體效應系數;φS為表面勢。文獻[11]對晶體管的閾值電壓與體偏置電壓的關系進行了研究,其結果如圖5 所示。從圖5可以看出:晶體管的閾值電壓和體偏置電壓密切相關,并且晶體管的閾值電壓隨著體偏置電壓減小而增大。

圖2是位溫誤差與垂直速度的關系,可以看出,與水平方向誤差特征類似,垂直方向誤差也是集中在對流區域(圖2a、b),這進一步說明了在對流區域及其附近誤差容易快速增長。從時間演變來看,誤差最大值仍然是在颮線強盛時期(24日00時),中心值可達5 K(圖2b),隨后誤差大值區范圍不斷擴大而不局限于對流區域(圖2c、d)。整個颮線模擬過程中,在離對流區域不遠的地方也有小振幅的誤差存在,這可能是由于湍流的內部作用引起的。

在NMOS 晶體管中,泄漏電流主要包括源漏級反偏漏電流(reverse biased junction band to band tunneling,BTBT)、亞閾值泄漏電流(sub-threshold leakage)和柵極漏電流(gate-oxide leakage)3 種,其中,亞閾值泄漏電流仍是當前最主要的泄漏電流來源之一[12]。亞閾值泄漏電流是當晶體管的柵源電壓小于閾值電壓時,源極與漏極之間的溝道中存在的電流,亞閾值泄漏電流可以表示如下[13]:

圖5 閾值電壓隨體偏置電壓改變而變化趨勢圖Fig.5 Trend chart of threshold voltage of NMOSFET varying according to body biasing voltage

其中:Vt為閾值電壓;u 為載流子遷移率;n 為亞閾值擺幅系數;Cox為單位面積上柵氧電容;VT為熱電壓,W;L 為晶體管的有效寬度和長度。由式(2)可知,亞閾值泄漏電流與晶體管器件的幾何特性、工作溫度等因素相關。在其他條件不變的情況下,晶體管的亞閾值泄漏電流會隨閾值電壓的降低呈指數形式增長,增大晶體管的閾值電壓是減小晶體管亞閾值泄漏電流一種非常有效的方法。同時,由于晶體管的閾值電壓隨著體偏置電壓減小而增大,因此,可以通過降低晶體管的體偏置電壓來增加晶體管的閾值電壓,最終達到降低亞閾值泄漏電流的目的,這正是反向襯底偏置技術降低晶體管靜態功耗的思想。

反向襯底偏置技術作為一種有效的靜態功耗優化方法已被成功的應用于FPGA 布線資源低功耗設計中[7]。與電源門控技術和雙電壓技術相比,由于反向襯底偏置技術實現時只需增加少量的導線,因此具有易實現、增加電路面積小等優點。然而,由于反向襯底偏置技術的本質是通過增加晶體管的閾值電壓來降低其泄漏電流,而閾值電壓的增加將引起較大的晶體管延時,因此反向襯底偏置技術的最大缺點是將引起電路延時增加。在FPGA 中,電路的延時大部分是由布線資源的延時造成的,布線開關中的多路選擇器作為布線資源核心部分,其結構直接影響FPGA 器件的性能和功耗。因此,文獻[7]將反向襯底偏置技術應用于FPGA 布線資源功耗優化時,雖然該項技術在降低46%靜態功耗的同時還具有增加電路面積小、易實現等優點,但其主要問題是引起較大的晶體管延時,導致FPGA 器件性能急劇下降。為了解決上述矛盾,本文提出了一種適合于FPGA 的低功耗多路選擇器設計方法。

2.3 低功耗多路選擇器設計

與專用集成電路相比,FPGA 最大的特點是具有可編程的特性,用戶通過編程SRAM 單元的內容設計實現所需的各種電路,當FPGA 完成配制后,所制定的電路一般不再改變。分析完成配制后的FPGA 結構可以發現,在FPGA 布線開關中每個被使用的多路選擇器只有1條有效的輸入線和1條被使用的有效路徑,并且在有效路徑之外的晶體管一直處于閑置狀態。從圖2 可以看出:在整個多路選擇器中只有3 個位于有效路徑上的晶體管處于工作狀態,其余19 個在有效路徑外的晶體管一直處于閑置狀態,這些閑置的晶體管同樣要消耗大量的漏電功耗。針對上述問題,本文提出了一種低功耗多路選擇器設計方法。該方法的主要思想是:將布線開關中多路選擇器分成若干個區域,每個區域擁有各自實現反向襯底偏置技術的控制電路,具體實現時僅對處于閑置狀態分區中的晶體管采用反向襯底偏置技術降低其靜態功耗,而有效路徑所經過分區中的晶體管仍然維持其原來的狀態,確保電路正常工作。下面以16 選1 的多路選擇器為例闡述該方法實現的具體步驟。

步驟(1),將多路選擇器分成4 個區,并分別用A,B,C,D 表示,分區結果如圖6 所示。

圖6 分區后的多路選擇器晶體管級結構圖Fig.6 Structure of partition multiplexer transistor circuit

步驟(2),以區為單位,為每個分區中的晶體管配備實現反向襯底偏置技術的電路,具體實現方式如圖7 所示。圖中,S 代表SARM 存儲單元,另外每個分區增加1 個SRAM 單元,通過配置該SRAM 單元的值就可以給區中的晶體管加上體偏置電壓VBS,用于增大晶體管的閾值電壓。

步驟(3),確定多路選擇器中未被使用的區。實現這一步主要使用JBits 工具,JBits 是Xilinx 公司提供的一組用Java 語言實現API 函數,調用這些函數可以實現對FPGA 的配置位流文件按位回讀和定位修改等操作[14]。確定多路選擇器中未被使用的區具體操作分為2 步:1) 基于ISE 的FPGA 開發流程主要包括轉換、映射、布局布線等幾個主要階段,在布局布線階段產生的NCD 文件中包含當前設計的全部物理實現信息。用XDL 工具用于將布局布線產生的NCD 文件轉變成以文本的方式表示的XDL 文件,從XDL 文件可獲得FPGA 中各種資源詳細的使用情況[15],從而確定在該應用設計中被使用的多路選擇器。2) 用JBits工具獲取和每個被使用多路選擇器相關聯的SRAM單元存儲值,并根據這些SRAM 單元的存儲值就可確定有效的輸入線和信號所經過的有效路徑所在的區。以圖6 為例,如果S1~S6 的存儲值為“000100”,則可以確定在這個多路選擇器中,有效信號只經過了A區,剩下的B,C 和D 3 個分區均未被使用。

圖7 以區為單位的反向襯底偏置技術實現圖Fig.7 Implementation of reverse body-bias technology in district unit

步驟(4),降低多路選擇器中未被使用區內閑置晶體管的功耗。當確定多路選擇器中未被使用的分區后,就可以采用反向襯底偏置技術降低未被使用區內所有晶體管的泄漏電流,即通過配制圖7 中SRAM 單元,使該分區內的晶體管加上產生高閾值電壓的體偏電壓。隨著閾值電壓的增加,晶體管的亞閾值泄漏電流被有效地抑制,因此,可大幅度降低晶體管的靜態功耗。同時,有效路徑所經過分區中的所有晶體管保持原狀態不變,確保了電路的正常工作。以圖6 為例,由于有效信號的路徑只經過了A 區,因此,B,C 和D 3 個區中的晶體管都可采用反向襯底偏置技術降低其靜態功耗,A 區中的晶體管則保持其原來狀態,保證了電路的正常工作。

3 實驗與結果分析

基于TSMC 0.18 μm CMOS 工藝,電源電壓為1.8 V,在HSPICE 仿真平臺下對多路選擇器電路優化前后的靜態功耗進行模擬分析。表1 所示為體偏置電壓分別在-0.6,-0.8,-1.0 和-1.2 V 時新型結構多路選擇器和傳統結構多路選擇器在不同溫度下靜態功耗。圖8 所示為多路選擇器結構優化前后整體靜態功耗的量化對比。

從表1 和圖8 可以看出:無論是在25 ℃還是在100 ℃的條件下,采用反向襯底偏置技術后的多路選擇器的靜態功耗都有較大的降幅。在100 ℃時,4 種不同體偏置電壓條件下多路選擇的靜態功耗平均值約為12.5 nW,與傳統結構多路選擇器的靜態功耗17.6 nW 相比,降低了約28.97%。此外,從圖8 還可以看出:在相同溫度的條件下,隨著體偏置電壓降低多路選擇器的靜態功耗也呈下降趨勢,即負偏壓越低靜態功耗優化效果越明顯。

表1 多路選擇器優化前后的靜態功耗Table 1 Static power of multiplexer before and after optimization 靜態功耗/nW

圖8 多路選擇器優化前后靜態功耗的對比Fig.8 Comparison of static power of multiplexer before and after optimization

在FPGA 的應用設計中,為了確保FPGA 布局、布線及映射的靈活性通常有相當一部分資源未被使用,這些未被使用的資源要消耗大量的靜態功耗,文獻[4]研究表明,當FPGA 中可編程邏輯塊資源的利用率為50%時,FPGA 中未被使用的資源所消耗的靜態功耗約占FPGA 總靜態功耗的56%,在這些未被使用的資源中存在大量閑置的多路選擇器,這些閑置的多路選擇器同樣可以采用本文所提出的方法進行靜態功耗優化,具體實現步驟是:

(1) 確定FPGA 中未被使用的多路選擇器。與前面提到的方法相同,用Xilinx 公司的ISE 工具對所設計的項目進行綜合、映射、布局布線產生NCD 文件。再用XDL 工具將布局布線產生的NCD 文件轉變成以文本的方式表示的XDL 文件,根據 XDL 文件的內容確定該設計中FPGA 內未被使用的多路選擇器。

(2) 對未被使用的多路選擇器中所有晶體管采用反向襯底偏置技術進行靜態功耗優化。由于未使用的多路選擇器中沒有信號經過,因此可以將這些閑置的多路選擇器中所有的晶體管都加上體偏置電壓,增加閾值電壓低其靜態功耗。

由于在FPGA 的布線開關中存在大量閑置的多路選擇器,因此,當該方法應用于FPGA 中閑置多路選擇器功耗優化時可以大幅降低FPGA 的靜態功耗。

4 結論

(1) 提出了一種適合于FPGA 的低功耗多路選擇器設計方法,該方法根據完成配制后的FPGA 中被使用多路選擇器的結構特點,采用反向襯底偏置技術對FPGA 中被使用的多路選擇器泄漏功耗進行優化。實驗結果表明,該方法在保持電路性能的前提下,以少量的面積開銷為代價,可大幅度降低多路選擇器的低靜態功耗。

(2) 充分考慮了完成配制后的FPGA 中多路選擇器內絕大部分晶體管處在閑置狀態這一特點,提出了只針對FPGA 中被使用的多路選擇器內閑置晶體管的泄漏電流進行優化的方法,該方法解決了反向襯底偏置技術在降低靜態功時增加電路延時的缺陷,同時也提出了一種根據FPGA 中資源的使用情況決定其功耗優化方法的思路。

(3) 本文所提出的方法不但可以降低FPGA 中被使用多路選擇器的靜態功耗,而且可降低FPGA 中未被使用的多路選擇器的靜態功耗。由于在基于FPGA應用設計中通常包括大量閑置的多路選擇器,因此,當將該方法應用于FPGA 中未被使用的多路選擇器時,可以進一步大幅度降低FPGA 中的靜態功耗。

[1] 楊海鋼, 孫嘉斌, 王慰. FPGA 器件設計技術發展綜述[J]. 電子與信息學報, 2010, 32(3): 714-726.YANG Haigang, SUN Jiabin, WANG Wei. An overview to FPGA device design technologies[J]. Journal of Electronics &Information Technology, 2010, 32(3): 714-726.

[2] Savage J, Savage R. Adaptive FPGA-based robotics state machine architecture derived with genetic algorithms[C]//Proceedings of the ACM/SIGDA 20th International Symposium on Field Programmable Gate Arrays. California: ACM Press,2012: 22-24.

[3] Tuan T, Rahman A. A 90-nm low-power FPGA for battery-powered applications[J]. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems,2007, 26(3): 296-300.

[4] Tuan T, Lai B. Leakage power analysis of a 90 nm FPGA[C]//Proceedings of the IEEE Custom Integrated Circuits Conference.San Jose, CA: IEEE Press, 2003: 57-60.

[5] Naveena K, Kirthika N. A low power asynchronous FPGA with power gating and LEDR encoding[J]. Bonfring International Journal of Power Systems and Integrated Circuits, 2012, 2(1):68-72.

[6] Lin Y, He L. Statistical dual-Vdd assignment for FPGA interconnect power reduction[C]// Proceedings of the Conference on Design, Automation and Test in Europe. San Jose, CA: EDA Consortium, 2007: 636-641.

[7] Leming G V. Low-power FPGA routing switches using adaptive body biasing technique[J]. IEEE International Midwest Symposium on Circuits and Systems, 2009: 447-450.

[8] Hasan M, Kureshi A K, Arslan T. Leakage reduction in FPGA routing multiplexers[C]// IEEE International Symposium on Circuits and Systems. Taipei: IEEE Press, 2009: 1129-1132.

[9] Kawanami T, Hioki M, Matsumoto Y. Optimal set of body bias voltages for an FPGA with field-programmable Vthcomponents[C]// Proceedings of the IEEE International Conference on Field Programmable Technology. Bangkok: IEEE Press, 2006: 329-332.

[10] Hassan H, Anis M, Elmasry M. Input vector reordering for leakage power reduction in FPGAs[J]. IEEE Trans Comput Aided Design, 2008, 27(9): 1555-1564.

[11] Lee Y, Kim T. A fine-grained technique of NBTI-aware voltage scaling and body biasing for standard cell based designs[C]//16th Asia and South Pacific Design Automation Conference.Yokohama: IEEE Press, 2011: 603-608.

[12] Salami B, Zamani M S. VMAP: A variation map-aware placement algorithm for leakage power reduction in FPGAs[C]//14th Euromicro Conference on Digital System Design. Finland:IEEE Press, 2011: 81-87.

[13] Kursun V, Friedman E G. 多電壓CMOS 電路設計[M]. 馬俊婷,郭志川, 孫鵬, 譯. 北京: 機械工業出版社, 2006: 24-26.Kursun V, Friedman E G. Multi-voltage CMOS circuit design[M].MA Junting, GUO Zhichuan, SUN Peng, trans. Beijing: China Machine Press, 2006: 24-26.

[14] Das N. BIST to diagnosis delay fault in the LUT of cluster based FPGA[J]. International Journal of Information and Electronics Engineering, 2012, 2(2): 269-273.

[15] Jevtic R, Carreras C. Power measurement methodology for FPGA devices[J]. IEEE Transactions on Instrumentation and Measurement, 2011, 60(1): 237-247.

猜你喜歡
閾值電壓選擇器晶體管
科學家首次實現亞1納米柵極長度晶體管
2.6萬億個晶體管
一起因分接開關接觸不良導致的繞組直阻異常分析及處理
74151在數據選擇和組合邏輯電路中的靈活應用
功率晶體管擊穿特性及測試分析
DIV+CSS網頁布局初探
深入理解CSS3結構偽類選擇器
基于非均勻感知策略的MLC閃存系統①
新型抗總劑量效應版圖的加固器件
薄膜晶體管(TFT)介紹薄膜晶體管物理與技術
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合