Kaushal Sanghai,Rick Gentile
了解系统总线的活动情况可帮助开发工程师显著改善嵌入式应用的性能。过去,由于嵌入式处理器缺乏复杂的软硬件结合特性,因此监测系统总线的活动情况是一项挑战性难题。在系统级了解应用程序的行为对于有效利用系统资源非常关键,这些资源包括外部存储器、DMA控制器、仲裁、系统总线互连等。
Blackfin BF54x系列处理器提供性能计数器(指标寄存器),可帮助应用开发工程师在系统级别了解应用程序的行为。在掌握应用程序行为后,开发工程师可使用一些系统优化技术来提高性能和降低功耗。
在本文中,将介绍性能指标寄存器的各种配置,并提供在Blackfin处理器上利用它们的软硬件接口实例。此外,还针对一些典型的应用情形给出了提高性能的方法。
指标寄存器的定义
在典型的实际应用中有多种资源,如内核处理器、外设DMA,以及可同时访问外部存储器和几个系统总线的MDMA(存储器到存储器的DMA)。性能指标寄存器提供了一种捕捉外部存储器组访问数、页错失数、总线流量数和总线转向数的方式,有效地利用从这些寄存器获得的数据可显著提高系统的资源利用率。

表1是Blackfin BF54x系列处理器提供的指标寄存器及其简要说明。
我们可以使用存储器组读/写寄存器、组激活计数寄存器和总线转向寄存器来改善应用程序的代码和数据外部存储器布局。授权计数寄存器(EBIU-DDRGCx)可帮助合理定义系统仲裁策略,还能实现高的系统吞吐率。
我们可以利用代码和数据项映射到外部存储器的时间区间和空间位置来减少外部存储器的延迟。……