处理器全方位能耗测量的实现
许多嵌入式ARM处理器的系统都是基于电池供电的能量供应方式,而处理器的功耗对于整个SoC芯片至关重要,因此ARM处理器的低功耗优势可以充分节省能量消耗。总之,当前的典型功耗的电流图并不依赖于标准过程、标准集或工作负载。
EnergyBench提供若干工具,这些工具可容易低与经济实用的硬件结合使用,以便使用E EM B C开发的标准方法测量典型功耗。不过,除了处理器之外,具体芯片设计和集成到芯片内部的外围模块也是影响芯片功耗的重要因素。虽然许多芯片供应商都会在产品的datasheet中提供功耗参数,但是这些参数往往是不具可比性的。当设计者试图对集成到SoC中的不同处理器进行对比时,如果想要弄清楚处理器的真实功耗是怎样的,将会变得非常困难。这是因为,供应商经常使用典型功耗参数来描述他们的处理器,却很少表明进行这些测量时处理器的工作负载,而这将是决定能量和功率参数的关键因素。
许多嵌入式ARM 处理器的系统都是采用电池供电的方式。因此,ARM 被公认为是处理器领域的"低功率领导者"。
然而系统的功耗不仅仅取决于处理器,此外,具体芯片设计和集成到芯片内部的外围模块也将影响片上能量的消耗。
虽然许多芯片供应商都会在产品的datasheet中提供功耗参数,但是这些参数往往是不具可比性的。这是因为,供应商经常使用典型功耗参数来描述他们的处理器,却很少表明进行这些测量时处理器的工作负载。
以前业界通常将关注的焦点放在处理器的性能方面,但是随着E EM B C等组织开发出各种测试基准(诸如面向汽车、消费电子和网络等应用领域的基准测试),我们可以更清楚的了解处理器内部的真实情况。随着功耗问题正逐渐嵌入式应用中的关注焦点,因此在评价处理器时,必须将功耗作为与性能参数同等重要的指标。其最终目标是帮助系统设计人员在便携式应用中得到性能和功率间的最佳平衡。
EEMBC实现此目标的方法是开发基准软件实用工具Energy B ench,它可以在处理器实际工作负载时提供有关能量消耗的真实数据。设计人员可同时使用EnergyBench和EEMBC性能基准,以比较不同处理器在执行一系列标准化应用任务时的能量消耗效率。在使用EnergyBench查看单个设备的功耗时,显然不存在所谓的"典型功率",因为运行不同的E EM B C基准时,其平均功率有很大的变化。EnergyBench不能反映处理器的典型功率,但通过它可以在特定性能级别上得到某些特定算法或应用的典型功耗值。
使用美国国家仪器公司(National Instruments)的LabVIEW平台和数据采集(DAQ)卡,EEMBC已成功实现 EnergyBench。DAQ卡可提供多个差分测量通道,它们允许同时对多个电源输入进行功耗测量(每次测量都需要捕获电压和电流)和一个触发器通道。任何A R M处理器或使用评估板或自己硬件平台的供应商,只需修改其板级电路以实现电源输入线的可测量和添加分流电阻器。
EnergyBench就可以使用DAQ卡对电压和触发器通道进行采样并将所有采样结果写入文件。灵活的触发机制可实现性能基准测试与功率测量的同步进行。这确保了测量所得的代表的是基准代码运行时的功耗,而不包括基准初始化或保留记录阶段中的功耗。
在运行基准测试和功耗采样时,必须确保结果的可靠性、可重复性和一致性,这对该标准的普及显得尤其重要。EnergyBench通过多种方法来确保这些目标的实现:
1. 可靠性:
通常情况下,为获得精确的统计结果,必须以2 X N y q u i s t频率或更高频率进行采样,或者在随机点上采样。
EnergyBench采样模块接受将采样频率作为输入,然后必须使用不同的采样频率多次调用模块。基准运行期间使用未混淆频率进行多次采样所生成的采样点可避免与基准执行产生任何共振。换句话说,假设每个基准的重复测试大致上都发生在周期性的间隔内,使用未与周期混淆的频率可确保在每次重复中进行伪随机点采样。该方法易于实现,并可保证统计结果的精确性。使用这种灵活的方法可轻松检测与基准周期混淆的频率,因为这将在其中一个采样频率中导致不同的结果。如果检测到这种情况,会选择一组新的未混淆频率并进行测试,直至得到有效结果。
2. 一致性:
因为我们可以根据需要多次重复测试和任意提高采样频率,所以EnergyBench会进行多次采样,直到可以通过精确的统计数据得到平均功耗。如果每次重复的值偏差太大,则可以通过提高采样频率以增加精确性并降低偏差。
3. 可重复性:
测量过程重复多次以保证测量准确性,并计算最终结果的标准偏差。还可以很容易得到任何的检测偏差,因为每次运行每个基准都产生基准每次重复的平均耗电量。当然,如果假定供应商提供的目标器件是具有普遍性的,那么对该器件进行测试而得到结果就认为是可信的。同时EEMB一直都有非常严格的认证程序,以保证所选中的被测芯片具有代表性。
基于同样的原因,针对生产制造过程中出现任何细小偏差的潜在可能性,所有半导体制造商都应该事先有所考虑,而EnergyBench面向众多潜在应用的测试,恰恰可以帮助制造商深入了解如何选择测试芯片和测试,因为这些都会最终影响功耗测试结果。
在某个基准运行完多次重复测试,并捕获所有测量采样数据后,分析模块会根据这些数据计算出进行该基准测试的平均功耗。根据平均功耗值,EEMBC功率分析模块通过分析每次测试捕获的样本,寻找数据样本中的最小值和最大值。
如果特定采样频率的变动太大,用户可提高频率和/或基准重复次数,直至上述采样数据足够稳定,这样平均值的置信区间在落在指定公差(95%)范围内,从而保证所得数据的准确性。
EnergyBench测试的最终结果是芯片在运行某个基准测试时的平均功耗值。
典型功耗电流图 ARM处理器 EnergyBench 相关文章:
- 基于ARM处理器和Linux操作系统的电磁流量计设计方案(03-27)
- 基于ARM处理器的CAN节点设计(03-19)