報告題名:
應用於功率管理使用延遲可規劃之數位式電壓調節電
路的設計與實現
Digital Voltage Adjustment Using Programmable Delay
Measurement for Power Management Design
作者:田靜樺 系級:電子工程學系 四乙 學號:D9930137 開課老師:鄭經華 課程名稱:專題研究 開課系所:電子工程學系 學年: 102 學年度 第 1 學期
中文摘要
在電路設計時,並未考量產品在運算時會不斷的改變電壓且造成功率浪費, 所以為了達到對外部電路消耗較低功率的期望,因此我們從這個方向開始了這次 的專題計畫 本文章中主要分為三個部分,其中包含雙電壓源供應,與電壓比較機制, 以及控制電壓源機制,我們將此雙電源設計在晶片上,依效能與功率消耗區分可 為三段的調節模式:高電壓、低電壓與休眠,因為雙電源的設計,所以待測晶片 上電壓供應的管理與分布會變更加的複雜。 比較電路藉由判斷外部電路產生的壓差在運作時,造成運算速度上的差別, 再用 DFF 來進行分別,藉由判斷電路以及控制電路去控制電壓,改變電壓源開 關,再回饋給外接電路,如此重複判斷外接電路在運作時所造成的電壓變化並且 進行調變,進而修正至不影響運算輸出的穩定電壓。 傳統的 DCDC 技術是提供合適的供應電壓的一項裝置,偵測到電壓,再將 電壓進行調整後,供應電壓給微處理器。其中有使用被動元件如電感和電容,因 此,晶片中被動元件佔據大多數面積,除此之外,為了減少對電路的雜訊干擾, 在大多數設計中,DCDC 是獨立設計在電路的外部。此設計使用數位電路來調節 電壓,除了可規劃的調整對電壓的靈敏度,自動化合成的電路設計,也可以很容 易地結合其他電路做在單一顆晶片上,設計目標是動態控制晶片中各個子系統的 電源電壓,在未來 SoC 晶片裡需要具備有功率管理單元,將可使整個系統晶片 達到低功率高效能的需求。關鍵字:
低功率、雙電壓、數位式調電壓、系統晶片Abstract
When the circuit was designed it was not considered that the product could continue to change the voltage and the resulting power would be wasted during the operation, so in order to meet the expectations of the external circuits low power consumption, so we started this project in this direction.
The circuit is mainly divided into three parts in this article, which includes the dual voltage supply source, the voltage comparator, and the control voltage sources
mechanism. We designed this chip with dual power, and it is according to
performance and power consumption that it can be distinguished into three adjustment modes: high voltage, low voltage and sleep. Because it is a dual power supply design, the management and distribution of the test chip voltage supply becomes more
complex.
The comparator circuit generated in the external circuit t by determining the differential voltage during operation, causing a difference in speed of operation, and then comparing by DFF, and controlling the voltage and the voltage source switch by the judgment circuit and a control circuit, and then feeding it back to the external circuitry. Repeating the operation can determine the external circuit when the voltage variation caused and performs modulation, and then correction does not affect the operation to stabilize the output voltage.
This design uses a digital circuit to regulate the voltage, in addition to adjusting the programming voltage sensitivity, and the automated synthesis circuit design can easily be combined with other circuits on a chip.
The goal to control the various subsystems of the wafer voltage supply can be dynamically. The chip will enable the whole system to achieve low-power and
high-performance. In the future, there is need to have a power management unit in the SOC chip.
Keyword:
目次
一、序論 ... 4 1.1 研究動機 ... 4 1.2 研究方向 ... 4 二、背景研究 ... 6 2.1 power gate ... 62.2 Programmable delay line... 6
三、研究方法及步驟 ... 12
3.1 設計的想法 ... 12
3.1.1 Power Switch Control Circuit ... 12
3.1.2 Two Programmable Delay Line ... 14
3.1.3 控制電壓電路 ... 20
3.2 電路的結合 ... 22
四、設計流程 ... 23
4.1 cell base design ... 23
五、實作結果與分析 ... 24 5.1 下線晶片 Floor plan ... 24 5.2 實作的 post- simulation 圖 ... 25 5.3 量測規劃 ... 27 5.4 量測環境 ... 27 六、結論 ... 28
一、序論
1.1 研究動機
電路本身設計時,並未考量產品在運算時會持續不斷的改變所需的電壓 而造成的浪費,所以為了達到對於外部電路消耗低功率的期望,因此我們便是從 這個方向,開始了這次的專題計畫。
1.2 研究方向
由於消費型產品仍為電路主要設計的準則,所以低功率設計已經被廣泛研究 和使用於各種電路設計之中,對於電路的設計要求也越來越高,希望所設計的電 路可以作達到很快的工作並且可以達到省電的效果。 傳統的 DCDC 技術是提供合適的供應電壓的一項裝置,偵測到電壓,再將 電壓進行調整後,供應電壓給微處理器。圖 1.1 示出了 DC-DC 電路結構,其中 有使用被動元件如電感和電容,因此,晶片中被動元件佔據大多數面積,除此之 外,為了減少對電路的雜訊干擾,在大多數設計中, DCDC 是獨立設計在電路 的外部。本文章中,使用數位電路來調節電壓,除了可規劃的調整對電壓的靈敏 度,也可以很容易地結合其他電路做在單一顆晶片上,設計目標是在未來 SOC 晶 片裡需要具備有功率管理單元,來動態控制晶片中各個子系統的電源電壓,將可 使整個系統晶片達到低功率高效能的需求。 圖 1. 1 DC-DC 電路結構 藉由一開始判斷外部電路在運作時在電壓上所產生的壓差,造成運算速度上 的差別,用 DFF 來進行分別,再藉由判斷電路以及控制電路控制電壓,改變輸出,再回饋給外接電路,如此重複判斷外接電路在運作時所造成的電壓變化並且 進行調變,進而修正至不影響運算輸出的最低電壓,本設計除了自動化的調變, 也可藉由一開始人為的控制去改變外部所需電壓,來符合使用者的需求進行改 變;換句話說,在電路運算時,可以自動的重覆「判斷輸入、修正、輸出電壓」 使得外部電路能在運算時,藉由此設計的幫助,達到降低功率的目的。
二、背景研究
2.1 power gate
power gate 電路結構如圖 2.1所示,加入一個 sleep transistor 作為開關來使
用,控制電路的 Virtual VDD 是否可以接到 VDD。這觀念使用的方式是整個電路 系統在工作的時候,並不是所有系統裡的電路區塊都是需要工作的,所以也就可 以利用這方式,將電路休息的區塊關閉,當電路需要工作時,sleep transistor 是 打開的,不影響電路工作的功能。而如果這電路區塊可以進行休息的動作時,就 送 sleep 信號給 sleep transistor 使之關閉,以達到節省功率的效果。
Sleep=0 VDD VDD1 GND
active
Sleep=1 VDD VDD1 GNDsleep
(a) (b) 圖 2.1 Power gate 的示意圖2.2 Programmable delay line
Programmable delay line 是類似於 Shift Register 的架構,DFF 與多工器組合, 再加上一解碼器 select add data line 選擇延遲大小 AddDt,如圖 2.2,利用多工器 的 AddDt 來選擇 PDL 從輸入到輸出的時間,如圖 2.8 與圖 2.9。
因程式碼為 RTL level 因此在 design compiler 後,觀察 DFF 與 MUX 實際合 成出來的邏輯閘,如圖 2.3、圖 2.4。在此設計中,將 DFF 與 MUX 結合作成一個 元件,盡量讓每一級在同一環境下傳遞資料時間相同如圖 2.5。 R en D Q Q rst_n d en clk q 圖 2.3 使用 design compiler 後,DFF 的邏輯閘電路 a_i b_i sel_i q_o
圖 2.4 使用 design compiler 後,mux 的邏輯閘電路
DFF
mux
R en D Q Q rst_n d en clk sel_i q_o將 DFF 與 MUX 合成的元件當成一級,將其串接如圖 2.6: 當串接一級的時:sel = 0,Tdelay = Tand + Tor
sel=1,Tdelay =(1-1) Tclk + Tand +Tor 當串接二級的時:sel皆為0時,Tdelay = 2*(Tand + Tor)
sel皆為1時,Tdelay = (2-1)*Tclk + Tand +Tor 當串接n級的時: 1.sel 皆為0時,Tdelay = n*(Tand + Tor)
2.sel皆為1時,Tdelay = (n-1)*Tclk + Tand +Tor 3.若 n 級中有 x 級的 sel 為 0
Tdelay = x*(Tand + Tor) + ((n-x)-1)*Tclk + Tand +Tor
R en D Q Q rst_n d en clk sel R en D Q Q rst_n d en clk sel 當sel=0,data的路徑 當sel=1,data的路徑 圖2.6 將DFF與MUX串接,依照選擇(sel)的不同,延遲時間也不同 在此設計中,將 DFF 與 MUX 元件串接 15 級,select add data line 是選擇要 經過幾的 clock 的延遲如表 2.1。 表 2.1 控制輸入 selAddDt 與輸出 AddDt selAddDt[4] AddDt[15] 0000 000_0000_0000_0000 0001 000_0000_0000_0001 0010 000_0000_0000_0011 0011 000_0000_0000_0111 0100 000_0000_0000_1111 0101 000_0000_0001_1111 0110 000_0000_0011_1111 0111 000_0000_0111_1111 1000 000_0000_1111_1111 1001 000_0001_1111_1111 1010 000_0011_1111_1111 1011 000_0111_1111_1111 1100 000_1111_1111_1111 1101 001_1111_1111_1111 1110 011_1111_1111_1111 1111 111_1111_1111_1111
當 selAddDt=0001 時,輸入經由第 1 個 clk 觸發,再經過 14 個多工器的延時 而輸出,如圖 2.7。
圖 2.7 selAddDt=0001, Tdelay = (1-1)Tclk + Tand +Tor
當 selAddDt=0100 時,輸入經由第 4 個 clk 觸發,再經過 11 個多工器的延時 而輸出,如圖 2.8。
因 AddDt 的不同,使得 data 輸入至輸出的時間不同。而在不同電壓且相同 selAddDt 下,PDL 運算的時間差,對於輸出造成的改變,運作在相對高的電壓 下,其運算速度較快,如 1.8v 與 1.2v (如圖 2.10),1.8v 與 0.9v (如圖 2.11)。
圖 2.9 在 selAddDt=0100 時,相同時間輸入,1.8v 與 1.2v 輸出時間的差異
在 selAddDt 不同時,可以發現運算時間差也有所不同,selAddDt=0011 代表 經由第三個 clock 觸發,再經過 12 個多工器的延時,selAddDt=1000 代表經由第 八個 clock 觸發,再經過 7 個多工器的延時,selAddDt=1011 代表經由十一個 clock 觸發,再經過 4 個多工器的延時。因為運作在不同電壓,sleAddDt 越小,表示經 過的多工器延時越多,運算的時間差較大,相反的 selAddDt 越大,表示經過的 多工器越少,運算時間差也較小。
三、研究方法及步驟
3.1 設計的想法
3.1.1 Power Switch Control Circuit
圖 2 是利用控制 PMOS 的 Power Switch Module (PSM)閘級電壓來達成 Power Switch (PS) 的開啟程度,因為如果提升 PMOS 閘極電壓,就會使得 PMOS input 原本的 low 信號變成不是 0v,而是 control 的電壓,因為 Power Switch 的輸入電 壓如果是在 0v 的話,就會完全地打開。但是調整並提升 control 電壓,就會使得 Power Switch 並不是完全地打開,所以產生的電流也就變小,利用這一點就可以 對 PS 做小範圍的微調。PS control 電路功能是控制 PS 開啟的個數,這樣子就可 以做大範圍的調整,如果電路的效能不夠的話,就可以開啟較多的 Power Switch 提供充足供應電壓源,但如果想要節省更多的功率,就可以開啟較少的 PSM, 從控制 PS 的數量來達到電壓調整的效果,PS 的數量採 1、2、4、8 個為群組的 方式構成,控制這些 PSM 群組的組合方式,便可達成相當於電壓調整的效果。 這樣子就可以在維持相同的效能之要求下,供一個彈性可規劃的電壓源的電路設 計,可以讓使用者選用不同的效能與功率消耗模式。 數位式的 Voltage Regulator 的設計想法:
圖 3.1 是利用並聯的 PMOS 數量來決定 PMOS 的 Size 以 W=1、2、4、8 為 例即可組合成 15 種不同的電阻,我們利用這個 Size 微關係組合成 16 種電流通 道,以此來控制 Virtual Vdd 那點的電壓,另一個方法是使用 Charge sharing 的原 理來控制 PMOS 的通過電流量,控制 PMOS 進入 Linear 操作區域即可達成此項 效果。
圖 3.1. 電壓調節將用 power switch 來控制
(1)Power Switch的設計
Dual Power Switch (DPS) 是一種雙電源開關,可以使電路工作在兩種不同的 高準位上。ㄧ般開關電路在開關(MOSFET)瞬間,會出現高的峰值電流,造成功 率消耗上升。但是,開關時大的尖峰電流損耗對於一個開關電路來說,是最關鍵 的問題,為此設計了開關控制電路。
圖 3.2 Power Switch 設計電路
vddh 與 vddl 為可理想供應電源,可分別供應兩種不同準位之電壓,因利用 PMOS 作為開關使用,每個 PMOS 所能經過的電壓源有所限制,因此利用了多 個 PMOS 並聯以達到可以傳送更多的電壓源避免因 PMOS 的限制而導致電源供 應不足。
(2)Power Switch Control Circuit (PSCC)
在理想上,雙電源開關(DPS)在切換時,一邊打開另一邊即為關閉,但是在 實際上在切換瞬間會因為短暫的 delay time,造成 DPS 同時為 ON 的狀況,因此 會造成非常大的鋒值電流,從高電壓源流向低電壓源因而可能造成電路 DPS 燒 毀,為此,設計了控制電路,為了確保 DPS 的切換時是可以一開一關的狀況, 避免電路燒毀與多餘的功率消耗,因而設計了 Power Switch Control Circuit (PSCC) 來解決此問題。 PSCC是為了使DSP在實務上面達到輸入可以確實一邊為high,另一邊就為 low的電路。當Hctrl從high轉變為low,此時Lctrl一定為high;同樣道理,當Hctrl 從low轉為high,此時Lctrl一定為low。這表示電路一定是一開一關或是全關。PSCC 電路如圖3.3。 Lctrl VddH sleep Sel Hctrl PSCC VddH VddH VddH VddH VddL VddH Voltage source Hctrl Lctrl sel sleep 0 0 0 0 1 1 1 1 0 or 1 CKVdd sleep Low Voltage sleep High Voltage Swing Voltage Voltage source
圖 3.3. Power Switch control circuit 詳細電路圖
Sel : 選擇電源為高準位 2.2V 或低準位 1.4V (0-> 1.4V ; 1->2.2V)。 Sleep: 使兩 Output 為 1,控制 DPS 使電源使用電路進入關電休眠狀態。 Hctrl Output 端,接在 DPS 的控制準位為 2.2V 的 Gate 端。
3.1.2 Two Programmable Delay Line
而電壓比較是使用 2 串 Programmable delay line,以及比較每級輸出的 DFF, 如圖 3.4,利用元件在不同電壓下的操作速度不同,令一串 PDL 工作在參考電壓 1.8v,另一串 PDL 工作在 PSM 輸出之 Voltage Source,再利用 DFF 的 Data 與 Clock,來比較上下兩個 PDL 延遲速度,進而分辨未知的電壓是否大於 1.8v。
圖 3.4 Programmable delay line*2 比較每一級輸出是否大於 1.8v
而有另一組 2 串 PDL,DFF 的 data 與 clock 相反接,來比較是否小於 1.8v 如圖 3.5。如果未知電壓大於 1.8v,則 outh 輸出有值 outl 為 0,反之未知電壓小 於 1.8v 則 outl 輸出有值 outh 為 0,當未知電壓等於 1.8v 時 outh=outl。
再觀察工作在小於 1.8v 的情況下,每一級輸出的變化,以及大於 1.8v 的情 況下每一級輸出的變化, Voltage Source 為 1.4v 與參考電壓 1.8v 比較以及 Voltage Source 為 1.6v 與參考電壓 1.8v 比較,在比較每一級輸出是否小於 1.8v 的情況下, 由 1.4v 與 1.6v 的輸出結果知道電壓上升,outl 下降如圖 3.6 與圖 3.7。
而由 Voltage Source 為 2.0 與參考電壓 1.8v 以及 Voltage Source 為 2.2 與參考 電壓 1.8v 比較(如圖 3.8 與圖 3.9),在比較每一級輸出是否大於 1.8v 的情況下, 由 2.0v 與 2.2v 的輸出結果知道電壓上升,outh 上升。
可發現在相同 selAddDt 下,未知電壓與參考電壓差越大,outh 與 outl 輸出 越大。
在 selAddDt 不同時,比較的輸出值也有所差異,在工作小於 1.8v 時,當 selAddDt 值越大,outl 輸出 1 的個數越少,而未知電壓 Voltage Source 與參考電 壓 1.8v 相差越大時,輸出 1 的個數越多,如表 3.1。 而在工作大於 1.8v 時,當 selAddDt 值越大,outh 輸出 1 的個數越少,而未 知電壓 Voltage Source 與參考電壓 1.8v 相差越大時,輸出 1 的個數越多,如表 3.2。 表 3.1 outl 輸出與 selAddDt 的關係 表 3.2 outh 輸出與 selAddDt 的關係
3.1.3 控制電壓電路
此控制電路如圖 3.10,連接 PDL 比較後的輸出 outh[15]與 outl[15],判斷電 壓的上升與下降,進而控制電壓供應源的開關。而在此控制電路中,多加了一個 外部輸入,可直接控制電壓源。 當未知電壓如果在大於參考電壓(1.8v)的情況下,且 outh 的值上升,表示電 壓上升,則輸出控制去 PSM 的值就要下降,是為了讓 PSM 再關閉一些,使輸出 的 Voltage Source 電壓下降,outh 值下降則相反;如果在小於參考電壓的情況下, 且 outl 的值上升,表示電壓下降,則輸出去控制 PSM 的值就要上升,為了讓 PSM 多開啟一些,使輸出的 Voltage Source 電壓上升,outl 值下降則相反;如果在等 於參考電壓的情況下,則輸出控制不變。其流程圖如圖 3.12。圖 3.10 控制電路
開始 invalue是否改變 SelAddDt是否有改變 新讀取到的值 是否大於1.8 輸出控制psm值 為invalue值 新讀取的值是否 比上一個值大 新讀取的值是否 比上一個值小 電壓上升,須關啟psm 因此輸出控制psm值下 降1 電壓下降,須開啟psm 因此輸出控制psm值上 升1 電壓不變,輸出控制 psm不變 新讀取到的值 是否小於1.8 新讀取的值是否 比上一個值大 新讀取的值是否 比上一個值小 電壓下降,須開啟psm 因此輸出控制psm值上 升1 電壓上升,須關啟psm 因此輸出控制psm值下 降1 電壓不變,輸出控制 psm不變 新讀取到的值 是否等於1.8 若都不是以上狀況,使 psm全開啟,輸出控制 psm=1111 yes no yes no yes yes yes yes yes yes yes no no no no no no no 圖 3.12 控制電路演算流程圖
3.2 電路的結合
雙電壓供應源是使用 Power Switch Control Circuit,而比較電路是使用兩 組的 Two Programmable Delay Line。將電壓供應源之輸出給外部電路,也給 本身電路的 Two Programmable Delay Line 做電壓的比較,再經由比較後的輸 出結果,利用控制電路改變電壓供應源的大小,再輸出給外部電路。 雙電壓 供應源 控制 電壓源電路 比較 電壓電路 圖 3.13 電路架構圖 圖 3.14 總電路圖
四、設計流程
在此設計中,雙電壓供應源為 full custom design,比較及控制電路為 Cell-based design
4.1 cell base design
圖 4.1 Cell-based design flow
五、實作結果與分析
5.1 下線晶片 Floor plan
圖 5.1 晶片 layout 圖
Technology TSMC 0.18um CMOS 1P6M
Supply Voltage 工作電壓 1.8v 高電壓 2.2v 低電壓 1.4v Pin 電壓 3.3V
Chip Size 1102.795um*1080.70um
圖 5.2 在顯微鏡下看到的晶片構造
5.2 實作的 post- simulation 圖
SelAddDt 從 7 到 8 的時候 psm 的開關變多,selAddDt 從 11 到 12 的時 候 psm 的開關變多。 圖 5.3 selAddDt 從 7 到 8 的變化(load5000)PSM
Comparison
& Control
圖 5.4 selAddDt 從 11 到 12 的變化(load5000)
在 selAddDt 較小時 psm 開關比較有變化,在 selAddDt 較大時 psm 開關 較無變化。
5.3 量測規劃
當晶片下完回來以後下個步驟就是開始量測,並驗證其效果,首先必須要先 做量測規劃。 1. 首先驗證電路是否正常工作,輸出值是否跟預想的一樣。 2. 假設實際值跟預想值不同,觀察內點的輸出值。 3. 測試該顆晶片可以達到調節的結果。5.4 量測環境
量測規劃完以後,再來就是要確認量測環境,並確保在量測過程中擷取數據 的準確性。 圖 5.5 量測規劃 圖 5.6 量測機台六、結論
此利用雙電壓源供應源的設計,在晶片製作完成後,可以有彈性的調整所規 劃電壓源區域的電壓,而電路可以依照選擇的模式調節對電壓的靈敏度,使其改 變輸出電壓供應源,省掉了 DCDC 被動元件的大面積,因此對整體的晶片面積, 改善了很多,而比較電路與控制電壓源電路都是使用自動繞線,可與其他電路晶 片整合。參考文獻
[1] 洪偉倫,”應用Clock 電壓使CMOS動態電路達成儲存值與省電功能Using
Clock Vdd for Data Retention Low Power CMOS Dynamic Circuit”, Department of Electronics Engineering, Feng-Chia University, TaiChung, Taiwan, R.O.C
[2]Ching-Hwa Cheng, Sheng-Wei Hsu, Jiun-In Guo, “A Low-Cost Digital Scalable Voltage-Frequency Adjustor Design with Low-Power Video Decoder System
Validation”, Department of Electronics Engineering, Feng-Chia University, TaiChung, Taiwan, R.O.C