论文摘要
多线程(MT)处理器技术是当前微处理器体系结构的研究热点之一,而单芯片多处理器(CMP)也广泛应用于商用处理器中。随着硬件技术的发展,在单个芯片上,不但可以集成多个处理器核,而且每个处理器核都可以采用多线程结构。多核多线程处理器必将成为未来处理器研究的热点和发展方向。开发一款支持多核多线程处理器的模拟器将对处理器体系结构的研究提供重要的支持。本文深入分析了同时多线程体系结构,包括流水线、分支预测器、存储层次、寄存器文件等部分。提出了一种简单的多核同时多线程体系结构MSMT,同时掌握了当前主流模拟器的设计方法——执行驱动的模拟方法,以及在执行驱动方法的基础上提出的时序优先的设计方法。并基于威斯康星大学的GEMS体系结构模拟器,提出了我们的MSMT结构模拟器的设计方法,建立了同时多线程的流水线、寄存器文件等结构,同时利用C++语言面向对象技术实现多核多线程的模拟。初步的实验表明,我们设计的模拟器模拟行为正确,性能统计结果能够为体系结构研究提供定量依据,支持全系统模拟,并且具有良好的用户接口和灵活的软件结构。
论文目录
摘要ABSTRACT第一章 绪论§1.1 课题背景1.1.1 指令级并行的局限性1.1.2 线程级并行的发展机遇1.1.3 多核多线程式体系结构1.1.4 处理器模拟器的发展趋势§1.2 问题提出1.2.1 多核多线程处理器及其模拟器研究的关键问题1.2.2 课题的重要意义§1.3 本文工作§1.4 论文结构第二章 同时多线程处理器结构和GEMS模拟器概述§2.1 同时多线程处理器体系结构模型2.1.1 流水线2.1.2 分支预测器2.1.3 存储层次§2.2 SMT处理器中共享资源的分类和特性2.2.1 共享资源的分类2.2.2 共享资源的特性分析§2.3 GEMS模拟器2.3.1 GEMS模拟器的设计方法2.3.2 GEMS模拟器组成和结构§2.4 小结第三章 MSMT模拟器的设计和实现3.1 具有三级cache结构的MSMT3.1.1 MSMT的cache结构3.1.2 简单的共享指令队列的同时多线程处理器核§3.2 模拟器的设计方法3.2.1 模拟的驱动机制3.2.2 性能模拟与功能模拟的耦合3.2.3 MSMT模拟器的设计方法§3.3 MSMT模拟器与SIMICS的接口3.3.1 API3.3.2 命令的实现§3.4 多核以及多线程的设计与实现3.4.1 多核的实现t'>3.4.2 线程类:threadt§3.5 MSMT模拟器流水线的设计与实现3.5.1 取指段3.5.2 译码段3.5.3 调度段3.5.4 执行段3.5.5 提交段§3.6 存储结构、寄存器结构以及功能单元3.6.1 带有预取和牺牲缓冲的存储结构3.6.2 各线程独立的寄存器结构及共享的功能单元§3.7 MSMT模拟器的分支预测器3.7.1 Gshare分支预测器3.7.2 Agree分支预测器3.7.3 YAGS分支预测器§3.8 性能统计方法§3.9 小结第四章 实验分析§4.1 实验环境§4.2 实验一:模拟器正确性验证4.2.1 功能正确性4.2.2 性能正确性§4.3 实验二:MSMT结构性能评价§4.4 实验三:同时多线程处理器核性能分析第五章 结束语§5.1 工作总结§5.2 展望致谢参考文献作者在学期间取得的学术成果
相关论文文献
标签:多核论文; 多线程论文; 模拟器论文; 踪迹驱动论文; 时序优先论文;