Xilinx 功耗分析
在FPGA 設計中,功耗分析是成功設計的重要環節。針對 FPGA 設計中的功耗分析,Xilinx 公司推出了簡單的速查表格和專用的功耗分析工具——XPower。對于開發初期的 FPGA 功耗估算,設計者一般使用 Xilinx公司提供的簡單圖表和公式。例如,XC9500 系列器件的簡單功耗分析可以在其數據手冊中找到估算公式。Virtex-E 和 Virtex-Ⅱ系列器件的簡單功耗分析可以通過 Xilinx公司提供的功耗估算表格完成。對于基本完成邏輯設 計 的 FPGA 功 耗 估 算,設計者可以使用XPower進行詳細的功耗分析。
在 XPower功耗分析過程中,其功耗估算的基本方法是:(1)計算每個設計單元的功耗。(2)累加各個設計單元的功耗。由于CMOS電路的動態功耗很大程度上取決于電路的翻轉頻率,所以XPower采用如下公式計算單個設計單元的功耗[M]:
- XPower用戶界面
XPower的啟動方法有兩種:一種是單獨啟動XPower,直接點擊“開始” “程序” “Xilinx ISE 9.1i” “Accessories” “Xpower”即可啟動;另一種是在工程經過布局布線后,在過程管理區雙擊“Implementation” “Place and Router” “Analyze Power (XPower)”,則打開XPower,并自動加載當前工程。在例M的工程中,采用后一種方法打開XPower,其用戶界面如圖4-54所示。
?
圖4-54 XPower的啟動
XPower的用戶界面由菜單欄、工具欄、功耗結果顯示窗口、表格分析窗口、瀏覽窗口、信息顯示窗口以及狀態欄等部分組成。
在ISE過程管理區,雙擊“Generate Power Data”命令將自動生成設計的功耗分析報告,再雙擊“View XPower Report”命令來閱讀報告。典型的分析報告(例M的功耗分析報告)如圖M所示。報告會給出各個電壓相應的電流大小以及功耗,便于設計人員設計相應的電源模塊。
圖4-55 典型的Xpower分析報告
- XPower的操作流程
要準確利用XPower來分析功耗,關鍵是確定信號的工作頻率、信號翻轉率以及輸出負載等參數。XPower允許設計人員任意修改工作頻率、信號翻轉以及負載等參數,以便觀察某一參數對功耗的影響。此外,XPower支持VCD文件格式,可得到最全面的信號翻轉信息,減少手工輸入信號翻轉信息的繁瑣操作,提高功耗分析的效率和正確性。典型的XPower使用流程如下:
<1> 打開XPower軟件,選擇“File”菜單下的“Open”命令,則會彈出如圖M的對話框。其中“Design File”欄用于輸入設計文件,其后綴為.ncd;“Physical Constraints File”欄用于輸入物理約束文件,其后綴為.pcf;“Setting File”欄用于輸入設置文件,其后綴為.xml;“Simulation File”欄用于輸入仿真后的輸出文件,其后綴為.vcd。顯示類型(View Types)分為Types類型(分類視窗)和Hierarchical類型(分層視窗)兩類視窗模式。
圖4-56 XPower打開文件對話框
<2> 選中圖M中的“Launch New Design Wizard”參數,點擊“OK”按鍵,啟動設計向導,彈出如圖M所示的對話框。
?
圖4-57 設計向導對話框
單擊圖M中的“下一步(N)”按鍵,進入參數配置窗口,整體分為4個步驟。第1個步驟的界面如圖M所示。
圖4-58 XPower向導第1步
其中,“Voltage Source”用于設置FPGA芯片的電源參數,包括核電壓、輔助電壓以及IO端口參考電壓,根據所選的器件輸入相應的數值,一般選用默認值即可;“Battery Capacity and Battery Life”欄用于設定電池的容量和壽命,如輸入電池容量為1000mAH,則會自動給出電池的使用壽命為3.02小時;“Thermal”欄用于設定溫度參數,“Ambient”用于設定環境溫度,“Air”設定空氣對流強度。
<3> 點擊圖M的“下一步(N)”按鍵,進入設計向導第2步,設置各個信號的工作頻率,包括同步信號和異步信號,其界面如圖M所示。選中相應的信號,在“Frequency”文本框中輸入大小,并選擇合適的單位,單擊“Apply”按鍵確認,也可點擊“Reset”按鍵復位到初始值。
?
圖4-59 XPower向導第2步
<4>點擊圖M的“下一步(N)”按鍵,進入設計向導第3步,設置信號的輸出負載電容,其界面如圖M所示。選擇信號后,輸入電容大小,單擊“Apply”按鍵確認,也可以單擊“Reset”按鍵復位到初始值。
?
圖4- 60XPower向導第3步
<5> 點擊圖M的“下一步(N)”按鍵,進入設計向導第4步,設置信號的直流電流負載,其界面如圖M所示。選擇信號后,輸入電流大小,單擊“Apply”按鍵確認,也可以單擊“Reset”按鍵復位到初始值。此時,確認無誤后,可點擊“Finish”按鍵完成設計向導,如有錯誤,可單擊“上一步(B)”返回到先前界面進行修改。
?
圖4-61 XPower向導第4步
<6> 單擊XPower軟件的“File”菜單下的“Open Setting File…”命令,可加入設置文件;再選擇“Open Simulation File…”命令,加入仿真工具生成的.vcd文件。選擇相應的約束文件后,XPower會在信息提示窗口給出加載成功的指示信息。
等加載完約束文件后,可點擊瀏覽器窗口的“Report Views” “Power Report(HTML)”,察看設計功耗分析結果,其界面如圖M所示。
?
圖4-62 XPower輸出結果
- VCD文件
在 XPower功耗分析過程中,為保證功耗分析報告基本符合實際情況,應該準確設置功耗分析參數。在XPower中,用戶可以手工設置功耗分析參數,也可以通過讀入VCD文件自動設置功耗分析參數。利用 VCD文件設置功耗分析參數可以使當前設計的信號翻轉頻率、輸出負載等參數更符合實際情況。在使用ModelSim進行仿真時,VCD文件不是默認的輸出文件,用戶需要在仿真過程中指定輸出相應的VCD文件。其中,仿真Verilog HDL 設計文件時,需要在Testbench文件中加入適當語句,如下所示:
initial begin
// design.VCD表示將要生成的VCD文件名
$dumpfile("design.VCD");
//testbench表示測試名稱,uut表示待測試的模塊名稱
$dumpvars(1, testbench.uut);
end
仿真VHDL設計文件時,需要在DO文件中加入適當語句,如下所示:
--design.VCD表示將要生成的VCD文件名;
.VCD file design.VCD
-- testbench表示測試名稱,uut表示待測試的模塊名稱
.VCD add testbench /uut/*
3.簡易的功耗分析方法
Xilinx提供了兩種基于電子數據表和基于網站的簡易功耗估計工具:一種叫做Web Power Tools,另一種是XPower估計器。Web Power Tools和XPower估計器可通過http://china.xilinx.com/products/design_resources/power_central/獲得,二者都提供了根據邏輯利用率大概估計做出的功耗估算,其區別在于:Web Power Tools基于網站,用于早期芯片的功耗評估,支持Virtex-II Pro、Virtex-II以及Virtex/Virtex-E系列芯片;XPower估計器基于電子數據表格,支持Virtex5、Virtex-4、Spartan-3A DSP、Spartan-3A/3AN、Spartan-3E以及Spartan-3等較新系列芯片。
Xilinx會自動更新各個系列芯片的電子數據表格,用戶下載相應的電子數據表格時,可看到最后一次更新的時間。這兩種簡易功耗評估工具可以僅憑設計利用率估計就能獲得初步的功耗評估,而無需實際設計文件,是在設計流程的早期獲得器件功耗情況的最快捷和最方便的方法。此外簡易功耗評估工具不需要安裝,只需要擁有互聯網連接和Web瀏覽器,將電子表格下載到本地即可。
1)XPower估計器的用戶界面
每款型號所對應的XPower估計器的電子數據表格是不同的,下面以Virtex-4系列芯片的電子表格為例進行介紹。將網站上相應的電子數據表格下載到本地后,用OFFICE系列的Excel工具打開后,其界面如圖4-63所示。
圖4-63 Virtex系列芯片的XPower估計器
從圖4-63中可以看出,XPower評估器可分為不同的頁面,包括Summary頁面、CLOCK頁面、LOGIC頁面、IO頁面、BRAM頁面、DCM頁面、PMCD頁面、DSP頁面、PPC頁面、MGT頁面、EMAC頁面、Graphic頁面以及Release頁面。其中,主界面處輸出最終結果,可分為芯片欄、熱量信息欄、熱量總結欄、注釋欄、塊總結欄、功率總結欄、電壓源總結欄以及交互操作區域組成。其中,不同的顏色表明了用戶可進行的操作,詳細說明如表4-2所列。
表4-2 電子表格顏色說明
在Release頁面可以查看電子表格的更新版本記錄,如本書所用的電子表格版本為9.1.02,更新時間為2007-04-23,其相關信息如圖4-64所示。
圖4-64 Virtex系列芯片的XPower估計器
2)XPower估計器的使用流程
XPower估計器的使用方法非常簡單,設計人員直接在各個分頁面輸入相應的資源利用率和時鐘頻率,然后回到Summary頁面,就可以看到各個電壓的電流值,并得到FPGA的工作功率和工作溫度。下面以XC4VSX35-12芯片的設計為例,介紹XPower估計器的使用方法。
例4-4 使用XPower估計器預算XC4VSX35-12應用的功耗。
1. 雙擊打開XPower估計器,在Summaty頁面的Device欄的Part選項的下拉框中選擇“XC4VSX35”、Package選項選擇“FF668”、Grade選項選擇“industrial”、Process選項選擇“Typical”、Steeping選項選擇“Steeping1”,如圖4-65所示。同時,將Thermal Information欄選擇默認值。
圖4-65 XPower估計器的芯片配置界面
2. 由于Virtex-4族的SX系列芯片沒有PowerPC、MGT(吉比特收發器)以及EMAC(以太網接口)控制器,所以只需要設定時鐘、邏輯、IO、BRAM、DSP以及DCM即可。XPower估計器只是粗略預算,所以在輸入以上指標,應預留15%的裕量,即所有值按照真實值的115%輸入。在時鐘欄輸入所有可能用到的時鐘,并給出其扇出(Fanout)大小(一般設定為10即可),本例中,輸入了270MHz、120MHz以及60MHz這3個頻率的全局時鐘,如圖4-66所示。
圖4-66 XPower估計器的時鐘配置界面
在邏輯頁面,輸入a、b、c三個模塊,分別工作于不同的頻率,并給出了其大致的邏輯資源和平均扇出,如圖4-67所示。
圖4-67 XPower估計器的邏輯配置界面
在IO頁面,輸入各個模塊的端口數(注意:這里的端口是直接引到頂層模塊,和芯片管腳所對應的端口數),選擇工作電平標準以及工作頻率等參數,本例的配置如圖4-68所示。
圖4-68 XPower估計器的IO配置界面
接下來配置BRAM頁面,需要輸入BRAM各個端口的位寬、速率、數量以及應用類型(包括BRAM、FIFO以及ECC等類型),本例的BRAM使用狀況如圖4-69所示。
圖4-69 XPower估計器的BRAM配置界面
在DCM的配置頁面中,填入所使用的DCM時鐘的頻率即可,本例用到了270MHz、120MHz以及60MHz這3個DCM輸出,如圖4-70所示。
圖4-70 XPower估計器的DCM配置界面
最后需要配置的是DSP模塊,本例只在a模塊中使用了48個DSP模塊,工作在270MHz,因此配置界面如圖4-71所示。
圖4-71 XPower估計器的DSP配置界面
配置完后,點擊Graphic頁面,可以看到功耗隨設計的邏輯功能、電壓、電壓過程溫度以及工作環境溫度的變化曲線,如圖4-72所示。可以看到,本設計的邏輯所占功耗非常高,而大量的BRAM和DSP的功耗相對比較低。因此在設計中,應盡量使用芯片內部的硬核組件以降低功耗。
圖4-72 XPower估計器的圖形化分析結果
完成上述過程后,返回到Summary頁面,可以得到所有的功耗匯總結果,以及不同電壓的電流大小,為系統的電源模塊設計提供大致的參考范圍,如圖4-72所示。總的功耗為3.193W,1.2V核電壓的工作電流大致為2.5A(1.941A+2.028A)。
式中,P 表示功耗,單位是mW;C表示電容,單位是F;V表示電壓,單位是V;E表示翻轉頻率,指每個時鐘周期的翻轉次數;f表示工作頻率,單位是Hz。在XPower中,翻轉頻率既可以采用全局默認的翻轉頻率,也可以通過VCD文件獲得。另外,XPower允許手工輸入各個設計單元的翻轉頻率。
在XPower功耗分析過程中,主要涉及NCD文件、CTX文件、PCF文件、VCD文件和PWR文件。其中,NCD文件是經過實現的FPGA設計文件;CTX文件是經過物理實現(FIT)的CPLD設計文件;PCF文件是物理設計約束文件,該文件包含當前設計的時鐘頻率、電壓等特性參數;PW R文件是XPower的功耗分析報告;VCD文件是對當前設計進行仿真后生成的文件,該文件包含了每個設計單元的翻轉頻率。
2.XPower的用戶界面以及使用流程
XPower是一種設計后工具,用于分析實際器件利用率,并結合實際的適配后(post-fit)仿真數據(VCD文件格式),給出實際功耗數據。利用Xpower,您可以在完全不接觸芯片的情況下分析設計改變對總功耗的影響。
轉自:http://bbs.eccn.com/viewthread.php?tid=93673&extra=&page=2
總結
以上是生活随笔為你收集整理的Xilinx 功耗分析的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 行列式的计算方法(含四种,看完就会!)
- 下一篇: 教你三步优化宝贝标题,搜索流量翻倍获取