动态数据存储的功耗估计方法
1. 引言
随着多媒体应用和平台在多样性、复杂性和功能方面的快速发展,对内存和性能的需求急剧增加。这导致系统成本和功耗上升,而市场却要求低功耗的产品。同时,许多多媒体算法在编译时无法预测输入数据,因此严重依赖动态内存,使得动态内存子系统成为功耗的主要来源之一。
传统的硬件设计改进,如电压或技术缩放,只能部分弥补硬件/软件之间的差距。近年来,大规模集成系统的关键设计改进边界逐渐向软件侧转移。对于嵌入式设备,除了性能相关技术,功耗也至关重要,因为它关系到电路可靠性和封装成本。因此,嵌入式系统的优化需要同时考虑内存使用、功耗和性能这三个相互关联的目标。
为了优化嵌入式系统设计,需要在设计流程的早期阶段获得详细的功耗分析。然而,目前对于动态分配数据类型(DDT)的实现,在这个层面上还缺乏相关的详细信息。本文介绍了一种从C++代码进行高级分析的方法,能够分析和提取必要信息,用于对多媒体应用中涉及的DDT实现进行功耗优化。
2. 相关工作
现有的软件功耗估计技术大多在较低抽象级别提出,从可在最终平台上执行的代码开始。但这些技术都没有明确建模动态分配数据类型在平台内存层次结构中的贡献。一些高级别的功耗估计工作虽然将估计级别扩展到汇编代码和C代码,但缺乏运行时分析,无法处理动态内存应用。
大多数功耗估计系统侧重于为硬件 - 软件系统获取准确的绝对值,但在DDT优化和改进的框架中,动态内存子系统的相对功耗贡献更为重要。一些架构级的分析和抽象功耗估计模型虽然受到关注,但它们不关注系统的动态内存层次结构,无法分析动态数据主导的多媒体应用中DDT的功耗。
本文提出的方法部分受到相关工作的启发,
超级会员免费看
订阅专栏 解锁全文
115

被折叠的 条评论
为什么被折叠?



