论文部分内容阅读
嵌入式系统经过十几年的迅速发展,从简单的电子表、电子计算器到现在高数据吞吐量和密集计算的个人数字助理、移动式多媒体终端,它所包含的产品出现了显著变化。然而,随着处理器速度与存储器访问延迟的差距不断增大,面向多媒体应用的SoC芯片中存储子系统的访问延迟已经成为系统性能的主要瓶颈之一。因此,如何设计和优化存储子系统,便成了SoC芯片设计过程中必须要解决的一个问题。本文采用MP3解码作为目标应用,以Scratch-Pad存储器、外部存储器接口和片外存储器三者构建的存储子系统作为目标架构,提出了一套在芯片设计阶段进行存储子系统设计和性能优化的方法。本文基于SystemC语言构建了一套时钟周期级精度的SoC存储子系统性能仿真模型,作为目标应用的软硬件仿真环境和系统级优化技术的性能评估手段。与实际电路仿真结果相比,该模型仿真精度最大误差仅为万分之二,仿真速度超过实际电路仿真的800倍。针对片外存储器的物理结构,本文在外部存储器接口的设计中提出了两套缓存机制,组缓存机制和Cache机制,用于降低片外存储器的平均访问延迟;并使用性能仿真模型进行缓存组织结构的设计空间探索,确定针对目标应用的各种最佳设计参数。基于以往Scratch-Pad存储器内存布局优化技术的分析,本文提出了一套基于关系矩阵的优化技术。它根据控制流图将程序划分成一系列结点,使用性能仿真模型的统计信息计算出各结点对性能的影响,建立关系矩阵描述结点之间的关系,然后根据改进的分配算法选择合适结点放入Scratch-Pad存储器。该技术通过减少程序执行过程中片外存储器的访问次数来缩短程序执行时间,并在Scratch-Pad存储器容量大小和性能优化能力之间建立了联系。在芯片设计阶段,它用于探索在满足性能要求前提下针对目标应用的Scratch-Pad存储器最佳容量。最后,本文分析了Scratch-Pad存储器优化技术和外部存储器接口缓存设计两者之间的性能影响,并总结出两者组合的最佳设计参数。本文通过上述研究,提出了一套SoC存储子系统高层性能仿真模型,并基于Scratch-Pad存储器优化技术和外部存储器接口缓存设计,探索出针对目标应用的存储子系统最佳设计方案。实验结果表明,当系统时钟为50MHz时,最佳设计方案由两部分组成:外部存储器接口缓存设计采用128行二路组关联映射统一Cache(带4级写操作缓存),Scratch-Pad存储器容量为4096字节。两者总容量为8192字节。该方案有效降低了存储子系统访问延迟对系统性能的影响,目标应用运行速度显著提高,可达原来四倍。最后,对整篇论文的研究内容进行了总结,并指出本课题进一步发展的方向。