论文部分内容阅读
多核处理器的发展对内存系统的延迟、带宽和功耗等方面提出了更高的要求。访存延迟和带宽是评价内存系统性能的主要标准。相对于多核处理器性能的快速提高,访存延迟的改进速度较为缓慢。访存带宽的增加通常以提高内存系统功耗为代价。为平衡内存系统的性能需求和功耗开销,内存控制器优化工作应当首先立足于内存系统性能和功耗分析方法的研究,并在传统内存控制器结构基础上提出新的内存控制器设计方法。 通用多核处理器内存控制器设计的主要挑战之一是应用程序访存特性的多样性。内存系统由内存控制器和内存芯片组成。本文结合内存芯片的结构特征,从应用程序访存特性入手,通过建立内存系统性能模型分析影响内存系统性能和功耗开销的关键因素。在该内存系统性能模型的基础上,本文提出一系列内存控制器设计和优化方法。这些方法在提高内存系统性能的前提下,兼顾功耗开销。 本文的主要贡献和创新点如下: 1.内存系统性能模型。在分析应用程序访存特性和内存芯片结构特征的基础上,本文通过建立内存系统性能模型,从理论上给出应用程序访存特性和内存系统结构参数对内存系统性能和功耗的影响。既简化了内存系统性能分析过程,又可以发现多核处理器内存系统的性能瓶颈所在。 2.内存控制器优化方法。本文总结了一系列指导内存控制器优化的关键策略,并提出了一套基于冲突距离控制的访存调度算法。该算法突出了Bank级并行度对内存系统性能的影响,有利于提高内存系统性能。本文还分析了内存控制器异步设计对内存系统性能和功耗的影响。 3.面向数据流并行性的多微通道内存控制器设计。本文在单通道内存控制器设计中引入数据流并行的概念,并提出一种面向应用程序数据流并行性的多微通道内存控制器设计方法。通过使多个数据流独立并行访问内存芯片的各个芯片,多微通道内存控制器可以提高内存系统峰值带宽,缩短访存延迟,具有较高的性能功耗有效性。此外,通过对内存芯片芯片进行细粒度的低功耗状态控制,多微通道内存控制器可以在访存带宽压力较低时进一步降低功耗开销。 4.面向访存多样性的多微通道内存控制器设计。本文提出一种面向应用程序访存多样性的多微通道内存控制器设计方法,使不同访存特性的应用程序使用不同宽度的访存通道,以满足各种访存特性对延迟和带宽的不同要求。在此基础上提出一种适用于该内存控制器的分组访存调度算法和基于带宽分配的通道选择算法,将访存请求按照通道宽度分组,并以组为单位进行调度,在满足不同应用程序访存特性的同时,保证了内存系统的带宽利用率。