多核多线程处理器模拟器的设计与实现
| 摘要 | 第1-11页 |
| ABSTRACT | 第11-12页 |
| 第一章 绪论 | 第12-21页 |
| §1.1 课题背景 | 第12-17页 |
| ·指令级并行的局限性 | 第12-13页 |
| ·线程级并行的发展机遇 | 第13-14页 |
| ·多核多线程式体系结构 | 第14-16页 |
| ·处理器模拟器的发展趋势 | 第16-17页 |
| §1.2 问题提出 | 第17-18页 |
| ·多核多线程处理器及其模拟器研究的关键问题 | 第17-18页 |
| ·课题的重要意义 | 第18页 |
| §1.3 本文工作 | 第18-19页 |
| §1.4 论文结构 | 第19-21页 |
| 第二章 同时多线程处理器结构和GEMS模拟器概述 | 第21-29页 |
| §2.1 同时多线程处理器体系结构模型 | 第21-24页 |
| ·流水线 | 第22-23页 |
| ·分支预测器 | 第23页 |
| ·存储层次 | 第23-24页 |
| §2.2 SMT处理器中共享资源的分类和特性 | 第24-26页 |
| ·共享资源的分类 | 第24-25页 |
| ·共享资源的特性分析 | 第25-26页 |
| §2.3 GEMS模拟器 | 第26-28页 |
| ·GEMS模拟器的设计方法 | 第27页 |
| ·GEMS模拟器组成和结构 | 第27-28页 |
| §2.4 小结 | 第28-29页 |
| 第三章 MSMT模拟器的设计和实现 | 第29-52页 |
| ·具有三级cache结构的MSMT | 第29-32页 |
| ·MSMT的cache结构 | 第30-31页 |
| ·简单的共享指令队列的同时多线程处理器核 | 第31-32页 |
| §3.2 模拟器的设计方法 | 第32-40页 |
| ·模拟的驱动机制 | 第32-37页 |
| ·性能模拟与功能模拟的耦合 | 第37-38页 |
| ·MSMT模拟器的设计方法 | 第38-40页 |
| §3.3 MSMT模拟器与SIMICS的接口 | 第40页 |
| ·API | 第40页 |
| ·命令的实现 | 第40页 |
| §3.4 多核以及多线程的设计与实现 | 第40-42页 |
| ·多核的实现 | 第40-41页 |
| ·线程类:thread_t | 第41-42页 |
| §3.5 MSMT模拟器流水线的设计与实现 | 第42-48页 |
| ·取指段 | 第43-44页 |
| ·译码段 | 第44-45页 |
| ·调度段 | 第45-46页 |
| ·执行段 | 第46页 |
| ·提交段 | 第46-48页 |
| §3.6 存储结构、寄存器结构以及功能单元 | 第48-49页 |
| ·带有预取和牺牲缓冲的存储结构 | 第48页 |
| ·各线程独立的寄存器结构及共享的功能单元 | 第48-49页 |
| §3.7 MSMT模拟器的分支预测器 | 第49-50页 |
| ·Gshare分支预测器 | 第50页 |
| ·Agree分支预测器 | 第50页 |
| ·YAGS分支预测器 | 第50页 |
| §3.8 性能统计方法 | 第50-51页 |
| §3.9 小结 | 第51-52页 |
| 第四章 实验分析 | 第52-59页 |
| §4.1 实验环境 | 第52-53页 |
| §4.2 实验一:模拟器正确性验证 | 第53-54页 |
| ·功能正确性 | 第53-54页 |
| ·性能正确性 | 第54页 |
| §4.3 实验二:MSMT结构性能评价 | 第54-56页 |
| §4.4 实验三:同时多线程处理器核性能分析 | 第56-59页 |
| 第五章 结束语 | 第59-60页 |
| §5.1 工作总结 | 第59页 |
| §5.2 展望 | 第59-60页 |
| 致谢 | 第60-61页 |
| 参考文献 | 第61-65页 |
| 作者在学期间取得的学术成果 | 第65页 |