论文部分内容阅读
微处理器的硬件多线程架构是计算机体系结构中一种重要的线程级并行方式,其以增加少量逻辑资源为代价,将单核映射为多个逻辑核,使处理器可以同时执行多个线程的指令。本文基于MIPS32指令集,设计了单核微处理器,在此基础上设置多个线程上下文环境以及共享流水线,将单核映射为四个逻辑核,使多个线程的指令可以在处理器内部交叉执行。本文在对同时多线程结构深入研究与总结的基础之上,设计了一个适用于RISC处理器核心的多线程微结构,用硬件实现可以同时运行四个线程指令的设计目标,处理器取指部件设计四个程序计数器,通过线程控制器完成各个线程的取指切换,每个线程拥有独立的通用寄存器文件,设计多线程流水线寄存器用于保存当前周期各线程的执行结果,设计协处理单元以实现其精确异常处理,多线程流水级执行部件中的译码器、功能部件ALU和访存控制器采用共享方式,处理器所有模块均使用Verilog硬件描述语言设计完成。针对多线程软核微处理器构建测试用例,完成了指令功能与系统功能的定向测试,并且搭建基于UVM验证方法学的SystemVerilog验证平台进行大规模随机验证,构造覆盖点数据完成了功能覆盖率统计分析。该硬件多线程微处理器内核在TSMC 40nm工艺下使用Design Compiler完成逻辑综合,其运行时钟频率达到550MHz,同时运行四个线程的指令使处理器的吞吐率和并行度大幅度提升。