TWI604326B - 基於fpga之系統功率評估裝置與方法 - Google Patents
基於fpga之系統功率評估裝置與方法 Download PDFInfo
- Publication number
- TWI604326B TWI604326B TW105134764A TW105134764A TWI604326B TW I604326 B TWI604326 B TW I604326B TW 105134764 A TW105134764 A TW 105134764A TW 105134764 A TW105134764 A TW 105134764A TW I604326 B TWI604326 B TW I604326B
- Authority
- TW
- Taiwan
- Prior art keywords
- power
- value
- circuit
- field
- target
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0218—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults
- G05B23/0243—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterised by the fault detection method dealing with either existing or incipient faults model based detection method, e.g. first-principles knowledge model
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3287—Power saving characterised by the action undertaken by switching off individual functional units in the computer system
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/20—Pc systems
- G05B2219/24—Pc safety
- G05B2219/24065—Real time diagnostics
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Automation & Control Theory (AREA)
- Supply And Distribution Of Alternating Current (AREA)
- Power Sources (AREA)
- Tests Of Electronic Circuits (AREA)
Description
本揭露是有關於一種功率評估技術,以及有關於一種基於FPGA之系統功率評估裝置與方法。
隨著電子產品的發展,「高效能」與「低功耗」需求已成為現今晶片設計兩個主要的設計考量。積體電路(integrated circuit, IC)設計工程師需要建立晶片模組的功率模型,以便進行系統晶片(system-on-chip, SoC)的系統功率評估。一般而言,SoC的系統功率評估需要透過模擬器(simulator)或者是擬真器(emulator)等設備來完成。
模擬器是藉由軟體模擬的一種評估工具。模擬器的執行效率/速度會隨著被測積體電路的尺寸的增加而大幅下降。模擬器的執行效率一般在每秒數千個週期(K週期/秒)。因此,模擬器的效率/速度並不適用於大型系統(例如SoC)。
擬真器是採用硬體加速(acceleration)手段的一種評估工具。擬真器的執行效率可以達到每秒數百萬個週期(M週期/秒)。因此,擬真器的效率/速度可以適用於大型系統(例如SoC)。無論如何,擬真器的價格十分昂貴。
本揭露提供一種基於現場可程式化閘陣列(Field Programmable Gate Array,以下稱FPGA)之系統功率評估裝置與方法,用以改善系統功率評估的執行效率。
本揭露的實施例提供一種基於FPGA之系統功率評估裝置,用以評估一目標矽智財(intellectual property, IP)電路的功率。此系統功率評估裝置包括FPGA以及功率分析電路。FPGA用以容置所述目標矽智財電路。功率分析電路被配置於FPGA中。功率分析電路可以擷取所述目標矽智財電路的內部操作狀態信號。功率分析電路檢查所述內部操作狀態信號來判斷目標矽智財電路的操作狀態,以及使用功率模型來將目標矽智財電路的所述操作狀態轉換為至少一功率值。
本揭露的實施例提供一種基於FPGA之系統功率評估方法,用以評估目標矽智財電路的功率。所述系統功率評估方法包括:提供FPGA,以容置該目標矽智財電路;將功率分析電路配置於此FPGA中;由功率分析電路擷取所述目標矽智財電路的內部操作狀態信號;檢查所述內部操作狀態信號來判斷目標矽智財電路的操作狀態;以及藉由使用功率模型來將目標矽智財電路的所述操作狀態轉換為至少一功率值。
基於上述,本揭露諸實施例所述基於FPGA之系統功率評估裝置與方法可以將目標矽智財電路與功率分析電路配置於一個FPGA中。功率分析電路可以檢查目標矽智財電路的內部操作狀態信號來判斷所述目標矽智財電路的操作狀態。藉由使用功率模型,功率分析電路可以將目標矽智財電路的所述操作狀態轉換為至少一功率值,以便評估所述目標矽智財電路的系統功率。相較於模擬器(simulator),藉由使用FPGA來進行系統功率評估,可以有效改善系統功率評估的執行效率。相較於擬真器(emulator),藉由使用FPGA來進行系統功率評估,可以有效減少系統功率評估的成本。
為讓本揭露的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
在本案說明書全文(包括申請專利範圍)中所使用的「耦接(或連接)」一詞可指任何直接或間接的連接手段。舉例而言,若文中描述第一裝置耦接(或連接)於第二裝置,則應該被解釋成該第一裝置可以直接連接於該第二裝置,或者該第一裝置可以透過其他裝置或某種連接手段而間接地連接至該第二裝置。另外,凡可能之處,在圖式及實施方式中使用相同標號的元件/構件/步驟代表相同或類似部分。不同實施例中使用相同標號或使用相同用語的元件/構件/步驟可以相互參照相關說明。
圖1是依照本揭露的一實施例所繪示的一種基於現場可程式化閘陣列(Field Programmable Gate Array,以下稱FPGA)之系統功率評估裝置的電路方塊示意圖。系統功率評估裝置包括FPGA 100以及功率分析電路120。FPGA 100可以容置一個或多個目標矽智財(intellectual property,以下稱IP)電路,例如圖1所示目標IP電路110。此系統功率評估裝置可以評估一個或多個IP電路(例如圖1所示目標IP電路110)的功率。依照設計需求,目標IP電路110可以包括處理器、記憶體、直接記憶體存取(Direct Memory Access, DMA)控制器以及/或是其他矽智財(IP)元件)。所述處理器可以是中央處理單元(central processing unit, CPU)、數位信號處理器(Digital Signal Processor, DSP)、微控制器(micro-controller)或其他處理器/控制器。
控制平台10耦接至FPGA 100。依照設計需求,在一些實施例中,控制平台10與FPGA 100可以配置在相同的一個印刷電路板(printed circuit board, PCB)上,例如配置在相同的驗證/除錯(verify/debug)板。外部主機(未繪示,例如電腦)可以對暫存器轉移級(register-transfer level, RTL)的網路連線表(netlist)進行合成(synthesis)、佈件(place)、繞線(route)以及/或是其他操作,以便經由控制平台10將目標IP電路110與功率分析電路120程設(programming)至FPGA 100中。在另一些實施例中,控制平台10可以是一台電腦或是其他計算/控制機台,而FPGA 100可以配置在一個印刷電路板(PCB,例如驗證板或除錯板)上,其中控制平台10可以對RTL的網路連線表進行合成、佈件、繞線以及/或是其他操作,以便經由通訊介面將目標IP電路110與功率分析電路120程設於FPGA 100中。
圖2是依照本揭露的一實施例所繪示的一種基於FPGA 100之系統功率評估方法的流程示意圖。請參照圖1與圖2,於步驟S210中,FPGA 100被提供至所述系統功率評估裝置中。於步驟S220中,目標IP電路110與功率分析電路120被配置於FPGA 100中,其中功率分析電路120不屬於目標IP電路110。控制平台10可以進行擬真設定程序(emulation setting process)11,以便設定FPGA 100的擬真參數。在目標IP電路110的擬真過程中,功率分析電路120可以擷取目標IP電路110的內部操作狀態信號111(步驟S230)。舉例來說(但不限於此),功率分析電路120可以擷取目標IP電路110內部的有限狀態機(finite state machine,未繪示)的狀態匯流排的信號,作為目標IP電路110的所述內部操作狀態信號111。有限狀態機乃為習知技術,故不再贅述。上述功率分析電路120將監視將目標IP電路110的操作狀態,但不會干涉目標IP電路110的操作,因此不需更改目標IP電路110的設計。
於步驟S240中,功率分析電路120可以檢查所述內部操作狀態信號111,來判斷目標IP電路110的操作狀態。舉例來說(但不限於此),若目標IP電路110為直接記憶體存取(DMA)控制器,則目標IP電路110的操作狀態可以包括閒置狀態、活動狀態以及/或是其他操作狀態。若目標IP電路110為處理器,則目標IP電路110的操作狀態可以包括配置狀態、活動狀態、快取錯失狀態、閒置狀態以及/或是其他操作狀態。
控制平台10可以將目標IP電路110的功率模型(power model)提給功率分析電路120。於步驟S250中,功率分析電路120可以使用功率模型來將目標IP電路110的所述操作狀態轉換為至少一功率值。依照設計需求,所述功率值可以包括靜態功率值、動態功率值或是其他功率資訊。所述功率模型記錄了目標IP電路110的功率模型。例如,所述功率模型可以提供計算所述至少一功率值所需的係數(譬如動態功率係數或是其他係數值)以及/或是計算式。又例如,所述功率模型記錄了目標IP電路110於不同操作狀態下的功率資訊(譬如靜態功率值、動態功率值或是其他功率資訊)。使用者可以根據目標IP電路110之規格書將功率資訊輸入所述功率模型中,或者由使用者自行設定所述功率模型中的功率資訊,或者使用傳統低階(low level)抽象層級模擬的方式將模擬後的功率資訊輸入至所述功率模型。所述低階抽象層級模擬例如是暫存器傳送層級(Register Transfer Level, RTL)、閘層級(gate level)、電晶體層級(Transistor Level)或是其他低階層級之功率模擬(power simulation)。
功率分析電路120使用功率模型,將目標IP電路110的所述操作狀態轉換為所述至少一功率值(步驟S250)。所述功率值可以包含動態功率值與/或靜態功率值。接下來,功率分析電路120可以將所述至少一功率值與對應的時間標記(time stamp)記錄於功率資料庫,以便作整個目標系統的功率分析使用。依照設計需求,所述功率資料庫可以配置在FPGA 100,或配置在控制平台10。
在一些實施例中,所述功率模型包含查找表(lookup table)。該查找表包括模式欄位與動態功率係數(Dynamic Power Coefficient)欄位。例如,所述功率模型可以包含表1所示查找表。 表1:功率模型
<TABLE border="1" borderColor="#000000" width="85%"><TBODY><tr><td> 模式 </td><td> 動態功率係數 </td></tr><tr><td> 活動狀態 </td><td> 0.00006683 </td></tr><tr><td> 閒置狀態 </td><td> 0.00005995 </td></tr></TBODY></TABLE>
在前述步驟S240中,功率分析電路120可以獲得目標IP電路110的操作狀態。依據目標IP電路110的操作狀態,功率分析電路120在前述步驟S250中可以查找所述功率模型中(如表1所示查找表)的模式欄位,而從該查找表取得對應的動態功率係數欄位的值。其中,該動態功率係數欄位的值可以為動態功率係數或動態電流係數。若該動態功率係數欄位的值為動態功率係數,則功率分析電路120可以計算目標IP電路110在目前操作狀態的動態功率值=動態功率係數×時脈頻率,其中該時脈頻率為目標IP電路110的目前操作頻率。若該動態功率係數欄位的值為動態電流係數,則功率分析電路120可以計算目標IP電路110在目前操作狀態的動態功率值=動態電流係數×電壓值×時脈頻率,其中該電壓值為目標IP電路110的目前操作電壓(系統電壓)。所述動態功率值可以作為目標IP電路110的功率值。然後,功率分析電路120可以將目標IP電路110的識別碼、目前操作狀態、動態功率值(功率值)與對應的時間標記寫入功率資料庫。或者,功率分析電路120可以將目標IP電路110的識別碼、目前操作狀態、動態功率值(功率值)與對應的時間標記傳送給控制平台10。控制平台10可以進行結果取回程序(result retrieval process)12,以便將目標IP電路110的識別碼、目前操作狀態、動態功率值(功率值)與對應的時間標記寫入功率資料庫。
在另一些實施例中,所述功率模型(查找表)包括模式欄位及/或靜態功率係數(Static Power Coefficient)欄位。例如,所述功率模型可以包含表2所示查找表。 表2:功率模型
<TABLE border="1" borderColor="#000000" width="85%"><TBODY><tr><td> 模式 </td><td> 靜態功率係數 </td></tr><tr><td> 活動狀態 </td><td> 0.00533 </td></tr><tr><td> 閒置狀態 </td><td> 0.00532 </td></tr></TBODY></TABLE>
依據目標IP電路110的操作狀態,功率分析電路120在前述步驟S250中可以查找所述功率模型中(如表2所示查找表)的模式欄位,而從該查找表取得對應的靜態功率係數欄位的值。其中,靜態功率係數欄位的值可以為靜態功率值或靜態電流係數。若該靜態功率係數欄位的值為靜態電流係數,則功率分析電路120可以計算目標IP電路110在目前操作狀態的靜態功率值=靜態電流係數×電壓值,其中所述電壓值為目標IP電路110的目前操作電壓(系統電壓)。所述靜態功率值可以作為目標IP電路110的功率值。然後,功率分析電路120可以將目標IP電路110的識別碼、目前操作狀態、靜態功率(功率值)與對應的時間標記傳送給控制平台10。
在又一些實施例中,所述功率模型的查找表包括模式欄位、動態功率係數欄位以及靜態功率係數欄位。例如,所述功率模型可以包含表3所示查找表。 表3:功率模型
<TABLE border="1" borderColor="#000000" width="85%"><TBODY><tr><td> 模式 </td><td> 動態功率係數 </td><td> 靜態功率係數 </td></tr><tr><td> 活動狀態 </td><td> 0.00006683 </td><td> 0.00533 </td></tr><tr><td> 閒置狀態 </td><td> 0.00005995 </td><td> 0.00532 </td></tr></TBODY></TABLE>
依據目標IP電路110的操作狀態,功率分析電路120在前述步驟S250中可以查找所述功率模型中(如表3所示查找表)的模式欄位,而從該查找表取得對應的動態功率係數欄位的值與靜態功率係數欄位的值。其中,該動態功率係數欄位的值可以為動態功率係數或動態電流係數。若該動態功率係數欄位的值為動態功率係數,則功率分析電路120可以計算目標IP電路110在目前操作狀態的動態功率值=動態功率係數×時脈頻率,其中該時脈頻率為目標IP電路110的目前操作頻率。若該動態功率係數欄位的值為動態電流係數,則功率分析電路120可以計算目標IP電路110在目前操作狀態的動態功率值=動態電流係數×電壓值×時脈頻率,其中所述電壓值為目標IP電路110的目前操作電壓(系統電壓)。而靜態功率係數欄位的值可以為靜態功率值或靜態電流係數。若該靜態功率係數欄位的值為靜態電流係數,則功率分析電路120可以計算目標IP電路110在目前操作狀態的靜態功率值=靜態電流係數×電壓值,其中所述電壓值為目標IP電路110的目前操作電壓(系統電壓)。所述動態功率值與靜態功率值作為目標IP電路110的功率值。然後,功率分析電路120可以將目標IP電路110的識別碼、目前操作狀態、靜態功率、動態功率與對應的時間標記傳送給控制平台10。
在其他實施例中,若所述目標IP電路110具有動態功率管理(dynamic power management, DPM)功能,則功率分析電路120還可以從所述目標IP電路110的DPM控制器、功率管理單元(power management unit, PMU)及/或其他控制電路接收額外的功率因素(power factor)。舉例來說,所述功率因素可以是所述目標IP電路110的操作電壓、時脈頻率、DPM狀態以及/或是其他操作條件。所述DPM狀態可能包含高電壓模式、低電壓模式以及/或是休眠模式等。功率分析電路120使用所述功率因素與功率模型,將目標IP電路110的所述操作狀態轉換為功率值,以及將功率值與對應的時間標記記錄於功率資料庫。基於額外功率因素,功率分析電路120可以動態並正確地反應不同狀態時的功率。
例如,所述功率模型的查找表至少具有功率因素欄位、模式欄位與功率係數欄位,其中功率係數欄位包含了動態功率係數欄位與/或靜態功率係數欄位。例如,表4所示查找表便包含了操作電壓欄位(即功率因素欄位)、模式欄位、動態功率係數欄位與靜態功率係數欄位。 表4:功率模型
<TABLE border="1" borderColor="#000000" width="85%"><TBODY><tr><td> 操作 電壓 </td><td> 模式 </td><td> 動態功率係數 </td><td> 靜態功率係數 </td></tr><tr><td> 0.8V </td><td> 配置狀態 </td><td> 0.0001175 </td><td> 0.0181 </td></tr><tr><td> 0.8V </td><td> 活動狀態 </td><td> 0.0001313 </td><td> 0.0271 </td></tr><tr><td> 0.8V </td><td> 快取錯失狀態 </td><td> 0.0000875 </td><td> 0.0269 </td></tr><tr><td> 0.8V </td><td> 閒置狀態 </td><td> 0.0001168 </td><td> 0.0175 </td></tr><tr><td> 0.9V </td><td> 配置狀態 </td><td> … </td><td> … </td></tr><tr><td> … </td><td> … </td><td> … </td><td> </td></tr></TBODY></TABLE>
在前述步驟S240中,功率分析電路120可以獲得目標IP電路110的操作狀態及功率因素(在此為操作電壓)。依據操作狀態及功率因素,功率分析電路120便可以查找功率模型(如表4所示)中的操作電壓欄位(即功率因素欄位)與模式欄位,而從該查找表取得對應的動態功率係數欄位的值與/或靜態功率係數欄位的值。表4所示動態功率係數欄位與靜態功率係數欄位可以參照表1至表3的相關說明來類推,故不再贅述。若該動態功率係數欄位的值為動態功率係數,則功率分析電路120可以計算目標IP電路110在目前操作狀態的動態功率值=動態功率係數×時脈頻率,其中該時脈頻率為目標IP電路110的目前操作頻率(功率因素)。若該動態功率係數欄位的值為動態電流係數,則功率分析電路120可以計算目標IP電路110在目前操作狀態的動態功率值=動態電流係數×電壓值×時脈頻率,其中所述電壓值為目標IP電路110的目前操作電壓(系統電壓,亦即功率因素)。而靜態功率係數欄位的值可以為靜態功率值或靜態電流係數。若該靜態功率係數欄位的值為靜態電流係數,則功率分析電路120可以計算目標IP電路110在目前操作狀態的靜態功率值=靜態電流係數×電壓值,其中所述電壓值為目標IP電路110的目前操作電壓(系統電壓,亦即功率因素)。所述動態功率值與/或靜態功率值作為目標IP電路110的功率值。然後,功率分析電路120可以將目標IP電路110的識別碼、目前操作狀態、靜態功率、動態功率與對應的時間標記傳送給控制平台10。
控制平台10可以進行結果取回程序12,以便將目標IP電路110的識別碼、目前操作狀態、動態功率值(功率值)與對應的時間標記寫入功率資料庫。舉例來說(但不限於此),所述功率資料庫可以包括模式欄位、時間標記欄位與功率值欄位。所述功率值欄位可以包含動態功率欄位與/或靜態功率欄位。表5說明目標IP電路110的功率資料庫的範例內容,其中識別碼「1」表示多個目標IP電路110其中一個的識別碼。 表5:功率資料庫
<TABLE border="1" borderColor="#000000" width="85%"><TBODY><tr><td> 識別碼 </td><td> 時間標記 </td><td> 動態功率 </td><td> 靜態功率 </td><td> 模式 </td></tr><tr><td> 1 </td><td> 0 </td><td> 0 </td><td> 0.00082 </td><td> 閒置狀態 </td></tr><tr><td> 1 </td><td> 0 </td><td> 0.053880 </td><td> 0.003786 </td><td> 寫入狀態 </td></tr><tr><td> 1 </td><td> 570118 ns </td><td> 0.029722 </td><td> 0.001438 </td><td> 讀取狀態 </td></tr><tr><td> 1 </td><td> 670251 ns </td><td> 0.037472 </td><td> 0.001438 </td><td> 讀取狀態 </td></tr><tr><td> … </td><td> … </td><td> … </td><td> … </td><td> … </td></tr></TBODY></TABLE>
圖3是依照本揭露的一實施例繪示圖1所示功率分析電路120的電路方塊示意圖。於圖3所示實施例中,功率分析電路120包括訊息入/出交易器電路121、擬真控制器(Emulation Controller)122、功率狀態指示器(Power State Indicator)電路123、功率計算器(Power Calculator)電路124以及輸出控制器(Output Controller)電路125。功率分析電路120可以透過訊息入/出交易器電路121而從控制平台10取得目標IP電路110的功率模型,以及透過訊息入/出交易器電路121而將目標IP電路110的功率值傳送至控制平台10。
擬真控制器122可以提供時間戳章(Time Stamp)以及執行(Run)與暫停(Stop)擬真(Emulation)的機制。例如,當控制平台10將目標IP電路110的功率模型設定至功率計算器電路124時,擬真操作應該處於暫停狀態。當功率模型被設定完畢後,擬真操作開始執行。當資料寫回的頻寬不足時,會造成輸出控制器電路125內的輸出訊息先進先出(Output Message FIFO)緩衝器溢滿,此時擬真控制器122可以暫停擬真操作,並且等待緩衝器空間以便繼續執行擬真操作。
功率狀態指示器電路123可以擷取目標IP電路110的內部操作狀態信號。功率狀態指示器電路123檢查所述內部操作狀態信號,來判斷目標IP電路110的操作狀態。功率計算器電路124耦接至功率狀態指示器電路123,以接收目標IP電路110的操作狀態。功率計算器電路124可以使用功率模型來將目標IP電路110的操作狀態轉換為所述至少一功率值(例如靜態功率值及/或動態功率值)。舉例來說(但不限於此),功率計算器電路124可以依據功率狀態指示器電路123所提供的所述操作狀態去查找功率模型的查找表,以獲得目標IP電路110的所述操作狀態所對應的功率值。
在另一些實施例中,功率狀態指示器電路123所提供的所述操作狀態還包括了目標IP電路110的系統時脈頻率值。功率計算器電路124依據此系統時脈頻率值去查找功率模型的查找表,以獲得系統時脈頻率值所對應的多個鄰近頻率值。功率計算器電路124使用這些鄰近頻率值去進行內插計算(或外插計算),以獲得目標IP電路110的所述功率值。
舉例來說,圖4是依照本揭露一實施例繪示功率模型的頻率功率曲線示意圖。圖4所示橫軸表示目標IP電路110的時脈頻率值F,縱軸表示目標IP電路110的功率值P。假設功率狀態指示器電路123所提供的目標IP電路110的系統時脈頻率值為FA。功率計算器電路124可以依據此系統時脈頻率值FA去查找功率模型的查找表,進而找出鄰近於此系統時脈頻率值FA的二個鄰近頻率值F1與F2,如圖4所示。這二個鄰近頻率值F1與F2所對應的候選功率值分別為P1與P2。功率計算器電路124可以使用這二個鄰近頻率值F1與F2與這二個候選功率值P1與P2去進行內插計算。例如(但不限於此),功率計算器電路124可以計算方程式PA=P1*(FA-F1)/(F2-F1),以獲得目標IP電路110的所述功率值PA。在一些情況下,當目標IP電路110的系統時脈頻率值FA落於功率模型的邊界外時,功率計算器電路124可以使用這些鄰近頻率值去進行外插計算,以獲得目標IP電路110的所述功率值。
在又一些實施例中,功率狀態指示器電路123所提供的所述操作狀態還包括了目標IP電路110的系統時脈頻率值與系統電壓值,而功率模型包含多個查找表。功率計算器電路124可以依據目標IP電路110的系統電壓值而從這些查找表中選擇一個候選查找表,其中此候選查找表對應於一個候選參考電壓值。功率計算器電路124依據目標IP電路110的系統時脈頻率值去查找此候選查找表,以獲得目標IP電路110的系統時脈頻率值所對應的候選功率值。功率計算器電路124使用該系統電壓值、該候選參考電壓值與該候選功率值去計算目標IP電路110的所述功率值。
舉例來說,圖5是依照本揭露另一實施例繪示功率模型的頻率功率曲線示意圖。圖5所示橫軸表示目標IP電路110的時脈頻率值F,縱軸表示目標IP電路110的功率值P。假設功率狀態指示器電路123所提供的目標IP電路110的系統時脈頻率值為FB,而目標IP電路110的系統電壓值為Vt。功率計算器電路124可以依據目標IP電路110的系統電壓值Vt而從多個查找表(例如圖5所示候選查找表501與502)中選擇一個候選查找表,其中候選查找表501對應於一個候選參考電壓值Vr1,而候選查找表502對應於另一個候選參考電壓值Vr2。在此假設,目標IP電路110的系統電壓值Vt大於候選參考電壓值Vr1且小於候選參考電壓值Vr2。相較於候選參考電壓值Vr2,因為系統電壓值Vt比較接近於候選參考電壓值Vr1,因此功率計算器電路124依據目標IP電路110的系統電壓值Vt而選擇候選查找表501。功率計算器電路124依據目標IP電路110的系統時脈頻率值FB去查找此候選查找表501,而獲得目標IP電路110的系統時脈頻率值FB所對應的候選功率值P3。功率計算器電路124可以使用系統電壓值Vt、候選參考電壓值Vr1與候選功率值P3去計算目標IP電路110的所述功率值PB。例如(但不限於此),功率計算器電路124可以計算方程式PB = P3*(Vt/Vr1)^2 = P3*(Vt/Vr1)*(Vt/Vr1),以獲得目標IP電路110的所述功率值PB。
圖6是依照本揭露又一實施例繪示功率模型的頻率功率曲線示意圖。圖6所示橫軸表示目標IP電路110的時脈頻率值F,縱軸表示目標IP電路110的功率值P。假設功率狀態指示器電路123所提供的目標IP電路110的系統時脈頻率值為FC,而目標IP電路110的系統電壓值為Vt。功率計算器電路124可以依據目標IP電路110的系統電壓值Vt而從多個查找表(例如圖6所示候選查找表601與602)中選擇一個候選查找表,其中候選查找表601對應於一個候選參考電壓值Vr1,而候選查找表602對應於另一個候選參考電壓值Vr2。在此假設,目標IP電路110的系統電壓值Vt大於候選參考電壓值Vr1且小於候選參考電壓值Vr2。相較於候選參考電壓值Vr2,因為系統電壓值Vt比較接近於候選參考電壓值Vr1,因此功率計算器電路124依據目標IP電路110的系統電壓值Vt而選擇候選查找表601。
功率計算器電路124依據目標IP電路110的系統時脈頻率值FC去查找此候選查找表601,進而找出鄰近於此系統時脈頻率值FC的二個鄰近頻率值F3與F4,如圖6所示。鄰近頻率值F3所對應的候選功率值為P3。功率計算器電路124可以使用這二個鄰近頻率值F3與F4與候選功率值P3去進行內插計算。例如(但不限於此),功率計算器電路124可以計算方程式P4 = P3*(FC-F3)/(F4-F3),以獲得目標IP電路110的參考功率值P4。功率計算器電路124可以使用系統電壓值Vt、候選參考電壓值Vr1與參考功率值P4去計算目標IP電路110的所述功率值PC。例如(但不限於此),功率計算器電路124可以計算方程式PC = P4*(Vt/Vr1)^2 = P4*(Vt/Vr1)*(Vt/Vr1),以獲得目標IP電路110的所述功率值PC。
請參照圖3,輸出控制器電路125耦接至功率計算器電路124,以接收目標IP電路110的所述功率值。輸出控制器電路125可以暫存所述功率值,並將所述功率值打包成輸出訊息。訊息入/出交易器電路121耦接至輸出控制器電路125,以接收所述輸出訊息。訊息入/出交易器電路121可以將所述輸出訊息傳送至FPGA 100外部的控制平台10。
值得注意的是,在不同的應用情境中,控制平台10、擬真設定程序11、結果取回程序12、目標矽智財(IP)電路110、功率分析電路120、訊息入/出交易器電路121、擬真控制器122、功率狀態指示器電路123、功率計算器電路124以及/或是輸出控制器電路125的相關功能可以利用一般的編程語言(programming languages,例如C或C++)、硬體描述語言(hardware description languages,例如Verilog HDL或VHDL)或其他合適的編程語言來實現為軟體、韌體或硬體。可執行所述相關功能的編程語言或硬體描述語言可以被佈置為任何已知的計算機可存取媒體(computer-accessible medias),例如磁帶(magnetic tapes)、半導體(semiconductors)記憶體、磁盤(magnetic disks)或光盤(compact disks,例如CD-ROM或DVD-ROM),或者可通過互聯網(Internet)、有線通信(wired communication)、無線通信(wireless communication)或其它通信介質傳送所述編程語言或硬體描述語言。所述編程語言或硬體描述語言可以被存放在計算機的可存取媒體中,以便於由計算機的處理器來存取/執行所述編程語言或硬體描述語言的編程碼(programming codes)。另外,本揭露的裝置和方法可以通過硬體和軟體的組合來實現。
綜上所述,本揭露諸實施例所述基於FPGA之系統功率評估裝置與方法可以將目標IP電路110與功率分析電路120配置於同一個FPGA中。功率分析電路120可以檢查目標IP電路110的內部操作狀態信號,以便判斷目標IP電路110的操作狀態。藉由使用功率模型,功率分析電路120可以將目標IP電路110的所述操作狀態轉換為至少一功率值,以便評估目標IP電路110的系統功率。相較於模擬器(simulator),藉由使用FPGA來進行系統功率評估,可以有效改善系統功率評估的執行效率。相較於擬真器(emulator),藉由使用FPGA來進行系統功率評估,可以有效減少系統功率評估的成本。
雖然本揭露已以實施例揭露如上,然其並非用以限定本揭露,任何所屬技術領域中具有通常知識者,在不脫離本揭露的精神和範圍內,當可作些許的更動與潤飾,故本揭露的保護範圍當視後附的申請專利範圍所界定者為準。
10‧‧‧控制平台
11‧‧‧擬真設定程序
12‧‧‧結果取回程序
100‧‧‧現場可程式化閘陣列(FPGA)
110‧‧‧目標矽智財(IP)電路
111‧‧‧內部操作狀態信號
120‧‧‧功率分析電路
121‧‧‧訊息入/出交易器電路
122‧‧‧擬真控制器
123‧‧‧功率狀態指示器電路
124‧‧‧功率計算器電路
125‧‧‧輸出控制器電路
501、502、601、602‧‧‧候選查找表
F‧‧‧時脈頻率值
F1、F2、F3、F4‧‧‧鄰近頻率值
FA、FB、FC‧‧‧系統時脈頻率值
P‧‧‧功率值
P1、P2、P3‧‧‧候選功率值
P4‧‧‧參考功率值
PA、PB、PC‧‧‧功率值
S210~S250‧‧‧步驟
11‧‧‧擬真設定程序
12‧‧‧結果取回程序
100‧‧‧現場可程式化閘陣列(FPGA)
110‧‧‧目標矽智財(IP)電路
111‧‧‧內部操作狀態信號
120‧‧‧功率分析電路
121‧‧‧訊息入/出交易器電路
122‧‧‧擬真控制器
123‧‧‧功率狀態指示器電路
124‧‧‧功率計算器電路
125‧‧‧輸出控制器電路
501、502、601、602‧‧‧候選查找表
F‧‧‧時脈頻率值
F1、F2、F3、F4‧‧‧鄰近頻率值
FA、FB、FC‧‧‧系統時脈頻率值
P‧‧‧功率值
P1、P2、P3‧‧‧候選功率值
P4‧‧‧參考功率值
PA、PB、PC‧‧‧功率值
S210~S250‧‧‧步驟
圖1是依照本揭露的一實施例所繪示的一種基於現場可程式化閘陣列(FPGA)之系統功率評估裝置的電路方塊示意圖。 圖2是依照本揭露的一實施例所繪示的一種基於FPGA之系統功率評估方法的流程示意圖。 圖3是依照本揭露的一實施例繪示圖1所示功率分析電路的電路方塊示意圖。 圖4是依照本揭露一實施例繪示功率模型的頻率功率曲線示意圖。 圖5是依照本揭露另一實施例繪示功率模型的頻率功率曲線示意圖。 圖6是依照本揭露又一實施例繪示功率模型的頻率功率曲線示意圖。
10‧‧‧控制平台
11‧‧‧擬真設定程序
12‧‧‧結果取回程序
100‧‧‧現場可程式化閘陣列(FPGA)
110‧‧‧目標矽智財(IP)電路
111‧‧‧內部操作狀態信號
120‧‧‧功率分析電路
Claims (32)
- 一種基於現場可程式化閘陣列(以下稱FPGA)之系統功率評估裝置,用以評估一目標矽智財電路的功率,該系統功率評估裝置包括: 一FPGA,用以容置該目標矽智財電路;以及 一功率分析電路,配置於該FPGA中,用以擷取該目標矽智財電路的內部操作狀態信號,檢查所述內部操作狀態信號來判斷該目標矽智財電路的一操作狀態,以及使用一功率模型來將該目標矽智財電路的所述操作狀態轉換為至少一功率值。
- 如申請專利範圍第1項所述的基於FPGA之系統功率評估裝置,其中該功率模型提供計算所述至少一功率值所需的係數或計算式。
- 如申請專利範圍第1項所述的基於FPGA之系統功率評估裝置,其中該功率模型包含一查找表,該查找表包括一模式欄位與一動態功率係數欄位,所述功率分析電路依據該目標矽智財電路的所述操作狀態去查找該查找表的該模式欄位而獲得對應的該動態功率係數欄位的值,以及所述功率分析電路將該動態功率係數欄位的所述值乘以該目標矽智財電路之時脈頻率或操作電壓,以獲得該目標矽智財電路的一動態功率值作為所述至少一功率值。
- 如申請專利範圍第1項所述的基於FPGA之系統功率評估裝置,其中該功率模型包含一查找表,該查找表包括一模式欄位與一靜態功率係數欄位,所述功率分析電路依據該目標矽智財電路的所述操作狀態去查找該查找表的該模式欄位而獲得對應的該靜態功率係數欄位的值,以及所述功率分析電路將該靜態功率係數欄位的所述值作為所述至少一功率值,或將該靜態功率係數欄位的所述值乘以該目標矽智財電路之操作電壓作為所述至少一功率值。
- 如申請專利範圍第1項所述的基於FPGA之系統功率評估裝置,其中該功率模型包含一查找表,該查找表包括一模式欄位、一動態功率係數欄位與一靜態功率係數欄位,所述功率分析電路依據該目標矽智財電路的所述操作狀態去查找該查找表的該模式欄位而獲得對應的該動態功率係數欄位的值與對應的該靜態功率係數欄位的值,所述功率分析電路將該動態功率係數欄位的所述值乘以該目標矽智財電路之時脈頻率或操作電壓以獲得該目標矽智財電路的一動態功率值,以及所述功率分析電路將該靜態功率係數欄位的所述值以及該動態功率值作為所述至少一功率值。
- 如申請專利範圍第1項所述的基於FPGA之系統功率評估裝置,其中該功率模型包含一查找表,該查找表包括一模式欄位、一動態功率係數欄位與一靜態功率係數欄位,所述功率分析電路依據該目標矽智財電路的所述操作狀態去查找該查找表的該模式欄位而獲得對應的該動態功率係數欄位的值與對應的該靜態功率係數欄位的值,所述功率分析電路將該動態功率係數欄位的所述值乘以該目標矽智財電路之時脈頻率或操作電壓以獲得該目標矽智財電路的一動態功率值,所述功率分析電路將該靜態功率係數欄位的所述值乘以該目標矽智財電路之操作電壓以獲得該目標矽智財電路的一靜態功率值,以及所述功率分析電路將該靜態功率值與該動態功率值作為所述至少一功率值。
- 如申請專利範圍第1項所述的基於FPGA之系統功率評估裝置,其中該功率模型包含一查找表,該查找表包括一功率因素欄位、一模式欄位與一動態功率係數欄位;所述功率分析電路依據動態功率管理的一功率因素而查找該查找表的該功率因素欄位,以及依據該目標矽智財電路的所述操作狀態而查找該查找表的該模式欄位,而獲得對應的該動態功率係數欄位的值;以及所述功率分析電路將該動態功率係數欄位的所述值乘以該功率因素以獲得該目標矽智財電路的一動態功率值作為所述至少一功率值。
- 如申請專利範圍第1項所述的基於FPGA之系統功率評估裝置,其中該功率模型包含一查找表,該查找表包括一功率因素欄位、一模式欄位與一靜態功率係數欄位;所述功率分析電路依據動態功率管理的一功率因素而查找該查找表的該功率因素欄位,以及依據該目標矽智財電路的所述操作狀態而查找該查找表的該模式欄位,而獲得對應的該靜態功率係數欄位的值;以及所述功率分析電路將該靜態功率係數欄位的所述值作為所述至少一功率值,或將該靜態功率係數欄位的所述值乘以該功率因素作為所述至少一功率值。
- 如申請專利範圍第1項所述的基於FPGA之系統功率評估裝置,其中該功率模型包含一查找表,該查找表包括一功率因素欄位、一模式欄位、一動態功率係數欄位與一靜態功率係數欄位;所述功率分析電路依據動態功率管理的一功率因素而查找該查找表的該功率因素欄位,以及依據該目標矽智財電路的所述操作狀態而查找該查找表的該模式欄位,而獲得對應的該動態功率係數欄位的值與對應的該靜態功率係數欄位的值;所述功率分析電路將該動態功率係數欄位的所述值乘以該功率因素,以獲得該目標矽智財電路的一動態功率值;以及所述功率分析電路將該靜態功率係數欄位的所述值與該動態功率值作為所述至少一功率值。
- 如申請專利範圍第1項所述的基於FPGA之系統功率評估裝置,其中該功率模型包含一查找表,該查找表包括一功率因素欄位、一模式欄位、一動態功率係數欄位與一靜態功率係數欄位;所述功率分析電路依據動態功率管理的一功率因素而查找該查找表的該功率因素欄位,以及依據該目標矽智財電路的所述操作狀態而查找該查找表的該模式欄位,而獲得對應的該動態功率係數欄位的值與對應的該靜態功率係數欄位的值;所述功率分析電路將該動態功率係數欄位的所述值乘以該功率因素,以獲得該目標矽智財電路的一動態功率值;所述功率分析電路將該靜態功率係數欄位的所述值乘以該功率因素,以獲得該目標矽智財電路的一靜態功率值;以及所述功率分析電路將該靜態功率值與該動態功率值作為所述至少一功率值。
- 如申請專利範圍第1項所述的基於FPGA之系統功率評估裝置,其中該功率分析電路透過一訊息入/出交易器電路而從一控制平台取得該功率模型。
- 如申請專利範圍第1項所述的基於FPGA之系統功率評估裝置,其中該功率分析電路透過一訊息入/出交易器電路而將所述至少一功率值傳送至一控制平台。
- 如申請專利範圍第1項所述的基於FPGA之系統功率評估裝置,其中該功率分析電路包括: 一功率狀態指示器電路,用以擷取該目標矽智財電路的所述內部操作狀態信號,以及檢查所述內部操作狀態信號來判斷該目標矽智財電路的所述操作狀態;以及 一功率計算器電路,耦接至該功率狀態指示器電路以接收所述操作狀態,用以使用該功率模型來將該目標矽智財電路的所述操作狀態轉換為所述至少一功率值。
- 如申請專利範圍第13項所述的基於FPGA之系統功率評估裝置,其中該功率分析電路更包括: 一輸出控制器電路,耦接至該功率計算器電路以接收所述至少一功率值,用以將所述至少一功率值打包成一輸出訊息;以及 一訊息入/出交易器電路,耦接至該輸出控制器電路以接收所述輸出訊息,用以將所述輸出訊息傳送至該FPGA外部的一控制平台。
- 如申請專利範圍第13項所述的基於FPGA之系統功率評估裝置,其中該功率計算器電路依據該功率狀態指示器電路所提供的所述操作狀態去查找該功率模型的一查找表,以獲得所述操作狀態所對應的所述至少一功率值。
- 如申請專利範圍第13項所述的基於FPGA之系統功率評估裝置,其中該功率狀態指示器電路所提供的所述操作狀態包括該目標矽智財電路的一系統時脈頻率值,該功率計算器電路依據該系統時脈頻率值去查找該功率模型的一查找表,以獲得該系統時脈頻率值所對應的多個鄰近頻率值,以及該功率計算器電路使用該些鄰近頻率值去進行一內插計算或一外插計算,以獲得所述至少一功率值。
- 如申請專利範圍第13項所述的基於FPGA之系統功率評估裝置,其中該功率狀態指示器電路所提供的所述操作狀態包括該目標矽智財電路的一系統時脈頻率值與一系統電壓值,該功率模型包含多個查找表,該功率計算器電路依據該系統電壓值而從該些查找表中選擇一候選查找表,該候選查找表對應於一候選參考電壓值,該功率計算器電路依據該系統時脈頻率值去查找該候選查找表,以獲得該系統時脈頻率值所對應的至少一候選功率值,以及該功率計算器電路使用該系統電壓值、該候選參考電壓值與該候選功率值去計算所述至少一功率值。
- 一種基於現場可程式化閘陣列(以下稱FPGA)之系統功率評估方法,用以評估一目標矽智財電路的功率,該系統功率評估方法包括: 提供一FPGA,用以容置該目標矽智財電路; 將一功率分析電路配置於該FPGA中; 由該功率分析電路擷取該目標矽智財電路的內部操作狀態信號; 檢查所述內部操作狀態信號來判斷該目標矽智財電路的一操作狀態;以及 藉由使用一功率模型來將該目標矽智財電路的所述操作狀態轉換為至少一功率值。
- 如申請專利範圍第18項所述的基於FPGA之系統功率評估方法,其中該功率模型提供計算所述至少一功率值所需的係數或計算式。
- 如申請專利範圍第18項所述的基於FPGA之系統功率評估方法,其中該功率模型包含一查找表,該查找表包括一模式欄位與一動態功率係數欄位,而所述將該目標矽智財電路的所述操作狀態轉換為至少一功率值之步驟包括: 由所述功率分析電路依據該目標矽智財電路的所述操作狀態去查找該查找表的該模式欄位,而獲得對應的該動態功率係數欄位的值;以及 由所述功率分析電路將該動態功率係數欄位的所述值乘以該目標矽智財電路之時脈頻率或操作電壓,以獲得該目標矽智財電路的一動態功率值作為所述至少一功率值。
- 如申請專利範圍第18項所述的基於FPGA之系統功率評估方法,其中該功率模型包含一查找表,該查找表包括一模式欄位與一靜態功率係數欄位,而所述將該目標矽智財電路的所述操作狀態轉換為至少一功率值之步驟包括: 由所述功率分析電路依據該目標矽智財電路的所述操作狀態去查找該查找表的該模式欄位,而獲得對應的該靜態功率係數欄位的值;以及 由所述功率分析電路將該靜態功率係數欄位的所述值作為所述至少一功率值,或將該靜態功率係數欄位的所述值乘以該目標矽智財電路之操作電壓作為所述至少一功率值。
- 如申請專利範圍第18項所述的基於FPGA之系統功率評估方法,其中該功率模型包含一查找表,該查找表包括一模式欄位、一動態功率係數欄位與一靜態功率係數欄位,而所述將該目標矽智財電路的所述操作狀態轉換為至少一功率值之步驟包括: 由所述功率分析電路依據該目標矽智財電路的所述操作狀態去查找該查找表的該模式欄位,而獲得對應的該動態功率係數欄位的值與對應的該靜態功率係數欄位的值; 由所述功率分析電路將該動態功率係數欄位的所述值乘以該目標矽智財電路之時脈頻率或操作電壓,以獲得該目標矽智財電路的一動態功率值;以及 將該靜態功率係數欄位的所述值以及該動態功率值作為所述至少一功率值。
- 如申請專利範圍第18項所述的基於FPGA之系統功率評估方法,其中該功率模型包含一查找表,該查找表包括一模式欄位、一動態功率係數欄位與一靜態功率係數欄位,而所述將該目標矽智財電路的所述操作狀態轉換為至少一功率值之步驟包括: 由所述功率分析電路依據該目標矽智財電路的所述操作狀態去查找該查找表的該模式欄位,而獲得對應的該動態功率係數欄位的值與對應的該靜態功率係數欄位的值; 由所述功率分析電路將該動態功率係數欄位的所述值乘以該目標矽智財電路之時脈頻率或操作電壓,以獲得該目標矽智財電路的一動態功率值, 由所述功率分析電路將該靜態功率係數欄位的所述值乘以該目標矽智財電路之操作電壓,以獲得該目標矽智財電路的一靜態功率值;以及 將該靜態功率值與該動態功率值作為所述至少一功率值。
- 如申請專利範圍第18項所述的基於FPGA之系統功率評估方法,其中該功率模型包含一查找表,該查找表包括一功率因素欄位、一模式欄位與一動態功率係數欄位,而所述將該目標矽智財電路的所述操作狀態轉換為至少一功率值之步驟包括: 由所述功率分析電路依據動態功率管理的一功率因素而查找該查找表的該功率因素欄位,以及依據該目標矽智財電路的所述操作狀態而查找該查找表的該模式欄位,而獲得對應的該動態功率係數欄位的值;以及 由所述功率分析電路將該動態功率係數欄位的所述值乘以該功率因素,以獲得該目標矽智財電路的一動態功率值作為所述至少一功率值。
- 如申請專利範圍第18項所述的基於FPGA之系統功率評估方法,其中該功率模型包含一查找表,該查找表包括一功率因素欄位、一模式欄位與一靜態功率係數欄位,而所述將該目標矽智財電路的所述操作狀態轉換為至少一功率值之步驟包括: 由所述功率分析電路依據動態功率管理的一功率因素而查找該查找表的該功率因素欄位,以及依據該目標矽智財電路的所述操作狀態而查找該查找表的該模式欄位,而獲得對應的該靜態功率係數欄位的值;以及 將該靜態功率係數欄位的所述值作為所述至少一功率值,或將該靜態功率係數欄位的所述值乘以該功率因素作為所述至少一功率值。
- 如申請專利範圍第18項所述的基於FPGA之系統功率評估方法,其中該功率模型包含一查找表,該查找表包括一功率因素欄位、一模式欄位、一動態功率係數欄位與一靜態功率係數欄位,而所述將該目標矽智財電路的所述操作狀態轉換為至少一功率值之步驟包括: 由所述功率分析電路依據動態功率管理的一功率因素而查找該查找表的該功率因素欄位,以及依據該目標矽智財電路的所述操作狀態而查找該查找表的該模式欄位,而獲得對應的該動態功率係數欄位的值與對應的該靜態功率係數欄位的值; 由所述功率分析電路將該動態功率係數欄位的所述值乘以該功率因素,以獲得該目標矽智財電路的一動態功率值;以及 將該靜態功率係數欄位的所述值與該動態功率值作為所述至少一功率值。
- 如申請專利範圍第18項所述的基於FPGA之系統功率評估方法,其中該功率模型包含一查找表,該查找表包括一功率因素欄位、一模式欄位、一動態功率係數欄位與一靜態功率係數欄位,而所述將該目標矽智財電路的所述操作狀態轉換為至少一功率值之步驟包括: 由所述功率分析電路依據動態功率管理的一功率因素而查找該查找表的該功率因素欄位,以及依據該目標矽智財電路的所述操作狀態而查找該查找表的該模式欄位,而獲得對應的該動態功率係數欄位的值與對應的該靜態功率係數欄位的值; 由所述功率分析電路將該動態功率係數欄位的所述值乘以該功率因素,以獲得該目標矽智財電路的一動態功率值; 由所述功率分析電路將該靜態功率係數欄位的所述值乘以該功率因素,以獲得該目標矽智財電路的一靜態功率值;以及 所述功率分析電路將該靜態功率值與該動態功率值作為所述至少一功率值。
- 如申請專利範圍第18項所述的基於FPGA之系統功率評估方法,更包括: 透過一訊息入/出交易器電路而從一控制平台取得該功率模型。
- 如申請專利範圍第18項所述的基於FPGA之系統功率評估方法,更包括: 透過一訊息入/出交易器電路而將所述至少一功率值傳送至一控制平台。
- 如申請專利範圍第18項所述的基於FPGA之系統功率評估方法,其中所述將該目標矽智財電路的所述操作狀態轉換為至少一功率值之步驟包括: 依據該功率狀態指示器電路所提供的所述操作狀態去查找該功率模型的一查找表,以獲得所述操作狀態所對應的所述至少一功率值。
- 如申請專利範圍第18項所述的基於FPGA之系統功率評估方法,其中所述操作狀態包括該目標矽智財電路的一系統時脈頻率值,所述將該目標矽智財電路的所述操作狀態轉換為至少一功率值之步驟包括: 依據該系統時脈頻率值去查找該功率模型的一查找表,以獲得該系統時脈頻率值所對應的多個鄰近頻率值;以及 使用該些鄰近頻率值去進行一內插計算或一外插計算,以獲得所述至少一功率值。
- 如申請專利範圍第18項所述的基於FPGA之系統功率評估方法,其中該功率狀態指示器電路所提供的所述操作狀態包括該目標矽智財電路的一系統時脈頻率值與一系統電壓值,該功率模型包含多個查找表,所述將該目標矽智財電路的所述操作狀態轉換為至少一功率值之步驟包括: 依據該系統電壓值而從該些查找表中選擇一候選查找表,其中該候選查找表對應於一候選參考電壓值; 依據該系統時脈頻率值去查找該候選查找表,以獲得該系統時脈頻率值所對應的至少一候選功率值;以及 使用該系統電壓值、該候選參考電壓值與該候選功率值去計算所述至少一功率值。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW105134764A TWI604326B (zh) | 2016-10-27 | 2016-10-27 | 基於fpga之系統功率評估裝置與方法 |
CN201611121588.1A CN108008715B (zh) | 2016-10-27 | 2016-12-08 | 基于fpga的系统功率评估装置与方法 |
US15/373,466 US10324517B2 (en) | 2016-10-27 | 2016-12-09 | FPGA-based system power estimation apparatus and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW105134764A TWI604326B (zh) | 2016-10-27 | 2016-10-27 | 基於fpga之系統功率評估裝置與方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI604326B true TWI604326B (zh) | 2017-11-01 |
TW201816639A TW201816639A (zh) | 2018-05-01 |
Family
ID=61023129
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW105134764A TWI604326B (zh) | 2016-10-27 | 2016-10-27 | 基於fpga之系統功率評估裝置與方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10324517B2 (zh) |
CN (1) | CN108008715B (zh) |
TW (1) | TWI604326B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109782890B (zh) * | 2018-12-11 | 2020-05-22 | 广东高云半导体科技股份有限公司 | 一种电子设备及其低功耗fpga器件 |
US10970442B1 (en) * | 2019-10-24 | 2021-04-06 | SK Hynix Inc. | Method of debugging hardware and firmware of data storage |
US11971774B2 (en) * | 2020-10-13 | 2024-04-30 | Nvidia Corporation | Programmable power balancing in a datacenter |
WO2023272615A1 (zh) * | 2021-06-30 | 2023-01-05 | 华为技术有限公司 | 一种静态功耗估计方法及相关装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7370299B2 (en) * | 2004-12-15 | 2008-05-06 | National Tsing Hua University | Method and computer program product for register transfer level power estimation in chip design |
US20130031390A1 (en) * | 2011-07-25 | 2013-01-31 | Servergy, Inc. | Method and system for building a low power computer system |
CN103354977A (zh) * | 2011-01-13 | 2013-10-16 | 吉林克斯公司 | 在集成电路内进行处理器系统的扩展 |
TWI463344B (zh) * | 2005-10-24 | 2014-12-01 | Cadence Design Systems Inc | 積體電路時序、雜訊、及功率分析技術 |
TWI528168B (zh) * | 2010-06-30 | 2016-04-01 | 威盛電子股份有限公司 | 微處理器、操作微處理器的方法以及電腦程式產品 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6871172B1 (en) | 2001-01-22 | 2005-03-22 | Xilinx, Inc. | Method and apparatus for determining power dissipation |
US7197651B2 (en) * | 2003-10-30 | 2007-03-27 | Intel Corporation | Power mode calibration for add-on cards on mobile platforms |
EP1894515B1 (en) * | 2005-06-21 | 2013-10-09 | Olympus Medical Systems Corp. | Electronic endoscope apparatus |
US8217679B2 (en) | 2010-10-07 | 2012-07-10 | Lockheed Martin Corporation | Method and system for determining power measurement inside a field programmable gate array without external components |
TW201224748A (en) | 2010-12-06 | 2012-06-16 | Ind Tech Res Inst | Transaction level system power estimation method and system |
WO2013112249A1 (en) | 2012-01-24 | 2013-08-01 | University Of Southern California | Digital circuit power measurements using numerical analysis |
JP5936415B2 (ja) * | 2012-03-29 | 2016-06-22 | キヤノン株式会社 | 半導体集積回路、情報処理装置および制御方法 |
US8495538B1 (en) | 2012-08-14 | 2013-07-23 | Xilinx, Inc. | Power estimation of a circuit design |
CN102866291B (zh) * | 2012-08-27 | 2014-11-05 | 中国科学院微电子研究所 | 基于硬件平台的门级功耗分析装置及方法 |
KR102001414B1 (ko) * | 2012-09-27 | 2019-07-18 | 삼성전자주식회사 | 데이터 트랜잭션에 따라 전력공급을 제어하는 시스템-온-칩 및 그 동작방법 |
US20140107999A1 (en) | 2012-10-12 | 2014-04-17 | Silicon Integration Initiative, Inc. | Multi-level abstract power modeling method |
CN104101777A (zh) * | 2013-04-08 | 2014-10-15 | 鸿富锦精密电子(天津)有限公司 | 功率测试装置 |
JP6264012B2 (ja) * | 2013-12-16 | 2018-01-24 | 富士通株式会社 | 制御装置、及び制御プログラム |
KR102165265B1 (ko) * | 2014-09-02 | 2020-10-13 | 삼성전자 주식회사 | 하드웨어 전력 관리 유닛을 이용하여 클락 신호를 조절할 수 있는 애플리케이션 프로세서와 이를 포함하는 장치들 |
US20160098339A1 (en) * | 2014-10-06 | 2016-04-07 | Qualcomm Incorporated | Smart power scheduling for user-directed battery duration |
-
2016
- 2016-10-27 TW TW105134764A patent/TWI604326B/zh active
- 2016-12-08 CN CN201611121588.1A patent/CN108008715B/zh active Active
- 2016-12-09 US US15/373,466 patent/US10324517B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7370299B2 (en) * | 2004-12-15 | 2008-05-06 | National Tsing Hua University | Method and computer program product for register transfer level power estimation in chip design |
TWI463344B (zh) * | 2005-10-24 | 2014-12-01 | Cadence Design Systems Inc | 積體電路時序、雜訊、及功率分析技術 |
TWI528168B (zh) * | 2010-06-30 | 2016-04-01 | 威盛電子股份有限公司 | 微處理器、操作微處理器的方法以及電腦程式產品 |
CN103354977A (zh) * | 2011-01-13 | 2013-10-16 | 吉林克斯公司 | 在集成电路内进行处理器系统的扩展 |
US20130031390A1 (en) * | 2011-07-25 | 2013-01-31 | Servergy, Inc. | Method and system for building a low power computer system |
Also Published As
Publication number | Publication date |
---|---|
CN108008715B (zh) | 2020-08-11 |
US20180120916A1 (en) | 2018-05-03 |
US10324517B2 (en) | 2019-06-18 |
TW201816639A (zh) | 2018-05-01 |
CN108008715A (zh) | 2018-05-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI604326B (zh) | 基於fpga之系統功率評估裝置與方法 | |
US8510694B2 (en) | Transaction level system power estimation method and system | |
US7331024B2 (en) | Power-consumption calculation method and apparatus | |
US9977758B1 (en) | Device profiling for tuning OpenCL applications on programmable integrated circuits | |
EP2179342B1 (en) | Method and apparatus for detecting clock gating opportunities in a pipelined electronic circuit design | |
US8428927B2 (en) | Simulation method and simulation apparatus | |
CN115146568B (zh) | 一种基于uvm的芯片验证系统及验证方法 | |
US20140249782A1 (en) | Dynamic power prediction with pin attribute data model | |
US20070043548A1 (en) | Verifying a simulated hardware environment for a simulated device under test | |
Nunez-Yanez et al. | Enabling accurate modeling of power and energy consumption in an ARM-based System-on-Chip | |
US7941680B2 (en) | Distributing integrated circuit net power accurately in power and thermal analysis | |
Moy et al. | Modeling power consumption and temperature in TLM models | |
US11636246B2 (en) | Systems and methods for predicting and managing power and energy use of semiconductor devices | |
KR20090094247A (ko) | 칩-패키지 시뮬레이션 | |
JP5040625B2 (ja) | Lsiの電力見積方法及びその装置 | |
US20230418724A1 (en) | Debug Trace of Cache Memory Requests | |
Celebican et al. | Energy estimation of peripheral devices in embedded systems | |
US8924788B2 (en) | Replaying architectural execution with a probeless trace capture | |
JP2007213556A (ja) | 回路解析装置 | |
Stralen et al. | A high-level microprocessor power modeling technique based on event signatures | |
US20140244232A1 (en) | Simulation apparatus and simulation method | |
US20230056423A1 (en) | Processor core simulator including trace-based coherent cache driven memory traffic generator | |
US9442788B2 (en) | Bus protocol checker, system on chip including the same, bus protocol checking method | |
US20200410149A1 (en) | High-level synthesis apparatus, high-level synthesis method, and computer readable medium | |
US12055988B1 (en) | Memory thermal protection |