微處理器功耗性能的測(cè)試標(biāo)準(zhǔn)
隨著嵌入式系統(tǒng)在消費(fèi)電子和工業(yè)設(shè)備中的廣泛應(yīng)用,功耗已經(jīng)開始像時(shí)鐘速度和系統(tǒng)性能一樣成為微處理器的一個(gè)核心特性。為了確定各種微處理器的功耗效率,嵌入式微處理器基準(zhǔn)協(xié)會(huì)開發(fā)了一個(gè)有力的工具DDEnergyBench。
本文引用地址:http://m.butianyuan.cn/article/193312.htm同協(xié)會(huì)的其他性能benchmark一起使用,EnergyBench可以測(cè)試處理器在進(jìn)行一系列標(biāo)準(zhǔn)應(yīng)用任務(wù)時(shí)的功耗大小。有了這樣一個(gè)同性能測(cè)試緊密聯(lián)系的功耗標(biāo)準(zhǔn)測(cè)度,設(shè)計(jì)工程師就能比較多個(gè)供應(yīng)商提供的微處理器的性能/功耗,從而選擇一款最適合自己應(yīng)用的產(chǎn)品。
測(cè)試方法
EnergyBench采用National Instruments公司的一個(gè)8通道的數(shù)據(jù)采集卡和LabVIEW軟件。可以支持三個(gè)能量(電壓和電流)測(cè)試加上一個(gè)觸發(fā)通道,數(shù)據(jù)采集卡對(duì)觸發(fā)通道和電壓一起采樣,并且把結(jié)果輸出到一個(gè)文件里。靈活的觸發(fā)機(jī)制可以將功耗測(cè)試同性能benchmark同步,這一點(diǎn)可以保證功耗測(cè)試是在benchmark代碼的同步部分內(nèi)進(jìn)行,從而避免將benchmark初始化階段的功耗包括進(jìn)去。LabVIEW采樣程序接受一個(gè)配置文件,它可以通過為觸發(fā)探測(cè)和電壓電流通道一起指定電
壓來定義觸發(fā)機(jī)制。
一個(gè)benchmark要稱得上標(biāo)準(zhǔn)化,它的結(jié)果必須是可靠的、可重復(fù)的,并且是一致的。EnergyBench采用幾種方法來達(dá)到統(tǒng)計(jì)學(xué)上的精確結(jié)果。
作為一個(gè)規(guī)則,采樣模塊必須使用不同的采樣頻率調(diào)用數(shù)次。一般的,為了得到精確的結(jié)果,采樣頻率必須是2倍以上Nyquist頻率或者是一些隨機(jī)數(shù)。偽隨機(jī)方法是benchmark以一個(gè)與benchmark執(zhí)行頻率無關(guān)的頻率運(yùn)行時(shí)進(jìn)行多次取樣。假定benchmark的每個(gè)遍歷(iteration)以周期性的時(shí)間間隔出現(xiàn),那么錯(cuò)開這個(gè)周期來取樣就可以保證每個(gè)遍歷(iteration)內(nèi)在偽隨機(jī)點(diǎn)時(shí)取樣。這種方法可以簡(jiǎn)單地實(shí)現(xiàn)和保證統(tǒng)計(jì)上的精確結(jié)果。一旦所有的測(cè)試取樣都已完成,分析模塊將開始計(jì)算benchmark的每個(gè)遍歷(iteration)上消耗的能量的平均值。嵌入式微處理器基準(zhǔn)協(xié)會(huì)的功耗分析模塊分析這些采樣,決定每個(gè)遍歷(iteration)所使用的能量,找出最大值和最小值。
對(duì)于某個(gè)特定的采樣頻率,如果測(cè)試值變化太大,用戶可以增大采樣頻率和/或遍歷(iteration)次數(shù),直到有足夠的采樣,以便滿足平均值誤差在規(guī)定的5%之內(nèi)。EnergyBench測(cè)試的最終結(jié)果是工作量一次遍歷(iteration)上消耗的能量的平均值,該工作量是指在目標(biāo)器件上運(yùn)行benchmark時(shí)的工作量,該過程如圖1所示。
圖1 EnergyBench的數(shù)據(jù)給出了評(píng)估處理器功耗效率的基礎(chǔ)
結(jié)果在功率分析模塊中以energy/iteration表顯示,圖1中同時(shí)顯示了分析的遍歷(iteration)次數(shù)。用戶也可以使用EEMBC測(cè)試套件來測(cè)試最大和最小功耗。
測(cè)試條件
EnergyBench規(guī)定,器件測(cè)試時(shí),至少預(yù)熱30分鐘,器件周圍的環(huán)境溫度為70°F±5°F,這些規(guī)定可以保證測(cè)試結(jié)果的一致性,因?yàn)槠骷囟壬邥r(shí),其功耗也會(huì)顯著增加。
EnergyBench的規(guī)定中還要求處理器上的所有功率軌(power rail)都要測(cè)試,對(duì)于有超過1個(gè)功率軌(power rail)(如核心功率和I/0功率)的處理器,有兩種方法來計(jì)算benchmark的每個(gè)遍歷(iteration)的功耗。使用數(shù)據(jù)采集卡,EnergyBench可以同時(shí)測(cè)試最多3個(gè)rail,在這種方法中,所有通道都以同樣速率采樣,因此,數(shù)據(jù)采集卡的采樣率可能需要降低,以便主機(jī)的處理能力與采樣率相匹配。另一種方法,是采取分別測(cè)試各個(gè)rail,將每個(gè)rail消耗的能量之和作為整個(gè)功耗。該如何決定采用哪種測(cè)試方法呢?首先,一些處理器有超過3個(gè)功率軌(power rail),在這種情況下,即使三個(gè)rail同時(shí)測(cè)試,但個(gè)別rail還是需要單獨(dú)測(cè)試。另外,要根據(jù)處理器的工作頻率選擇合適的采樣率,以便允許有足夠的采樣。為了滿足幾GHz的處理器,采樣率一般會(huì)非常高,以致主機(jī)因?yàn)闊o法跟得上這么快的速度而一次只能進(jìn)行一個(gè)rail的測(cè)試。
評(píng)論