论文部分内容阅读
现代计算机系统普遍采用基于虚拟存储的存储管理方式,通常在处理器内部需要集成存储管理单元与操作系统配合实现高效虚拟存储。存储管理单元的核心功能是将程序访存的虚拟地址转换为物理地址,同时进行存储保护。一般在其内部实现旁视变换缓冲器(简称TLB),以加快地址转换的速度。随着应用程序的规模不断增大,其对内存使用的需求也不断增长,近年来64位虚拟存储已经越来越普遍。64位虚拟存储可支持更大地址空间,但同时虚拟地址到物理地址的转变过程也更加复杂,实现代价也随之提高,地址转换的时间开销已经成为影响处理器性能的重要因素之一。因此,针对64位处理器的性能指标要求和虚拟存储需求,开展高性能存储管理单元研究和设计具有重要意义。 本文针对北京大学微处理器研发中心设计开发的64位超标量多核UniCore-3处理器,开展存储管理单元的研究、设计与优化,完成的主要工作包括: 1.调研并总结了7款主流64位处理器的存储管理单元设计特性,重点分析了存储管理单元在TLB管理方式、地址空间、页表结构和页面大小等问题上的设计权衡; 2.采用QEMU全系统模拟器,对TLB的容量、组织结构和替换算法等设计要素进行了定量的模拟评测。结合UniCore-3处理器的实际需求,制定了存储管理单元的基本设计框架; 3.完成了UniCore-3存储管理单元的设计实现,包括:功能特性设计、具体电路结构设计和寄存器传输级实现(2万余行代码)。在模拟环境内,开展了存储管理单元的模块验证和汇编验证。通过运行UniCore64操作系统,对设计的功能正确性进行了验证; 4.对存储管理单元进行性能评测,分析了原设计的性能瓶颈并提出了3个优化方案。基于原硬件设计,实现了所提出的优化方案。评测结果表明,优化方案可平均提升11.4%的处理器性能。