contact us
联系我们POSTTIME:2024-05-16 作者:918博天堂 点击量:
功耗调试技术使软件工程师以求理解嵌入式系统的软件对系统功耗的影响。通过创建源代码和功耗之间的联系,使得测试和调整系统功耗沦为有可能,即所谓功耗调试。传统上,降低功耗仅有是硬件工程师的设计目标;然而在实际运营的系统中,功耗不仅各不相同硬件的设计,而且还与硬件如何被用于有关,而后者则是由系统软件来掌控的。 图1:IARSystems的C-SPY调试器需要在有所不同的视图中表明静态和动态的功耗数据。
功耗调试技术基于对功耗展开取样,并创建每个取样数据与程序的指令序列(以及源代码)之间的关联。其中的难题之一在于构建高精度的取样。理想情况下,对功耗的取样频率应当与系统时钟完全相同,但系统中的电容性元件不会减少此类测量的可靠性。
从软件工程师的角度来看,更加感兴趣的是功耗与源代码以及程序运行期间的各种事件之间的联系,而非个别的指令,因此所需的取样分辨率将大大高于对每个指令展开取样的频率。 对功耗的测量由调试工具已完成。
例如,IAREmbeddedWorkbench所反对的调试工具是IARJ-LinkUltra。它需要测量芯片的供电电源经过一个串联小电阻之后的压降,闻图2。该压降是用于差分放大器展开测量,并通过模数转换器展开取样的。
图2:IARJ-LinkUltra需要测量芯片的供电电源经过一个串联小电阻之后的压降。 要提升功耗调试的精确性,关键在于创建指令跟踪与功耗取样之间的较好关联。最佳的关联仅当需要展开几乎的指令跟踪时才能构建,但其缺点在于并非所有芯片都能反对这一功能;即便反对,也一般来说必须类似的调试工具。 要在较低的精确性下超过较好的关联度,可以用于一些现代片上调试架构所反对的PC取样功能。
该功能周期性地对PC展开取样,并得出每个取样的时间砍。与此同时,调试工具用于模数转换器对芯片的功耗展开取样。
通过核对功耗取样值和PC取样值的时间砍,调试器就需要在同一根时间轴上表明功耗数据以及中断纪录、变量监控等图形,并且将功耗数据与源代码关联一起,闻图3。 图3:PC和功耗取样校正。
一般来说,功耗优化与速度优化是十分相近的。一个任务运营得越慢,低功耗模式持续的时间就能就越宽。因此,将处理器的空闲时间最大化可以减少系统的功耗。
想找到系统中不必要的能耗以及在何处需要减少这些能耗是有可玩性的。一般来说它们并非源代码中显而易见地曝露出来的缺失,而更好地不存在于对硬件用于方式的调整之中。
本文来源:918博天堂-www.hnzhongyin.com