龙芯2号处理器多线程技术研究

龙芯2号处理器多线程技术研究

论文摘要

随着集成电路工艺技术的发展,单个芯片上可集成的晶体管数目已达到10亿个,如何利用这些晶体管资源设计高性能处理器成为当前重要的研究课题。多线程技术通过利用晶体管资源,开发线程级并行度来提高系统性能,是未来高性能处理器发展的趋势。本文重点研究多线程处理器技术,以挖掘程序的线程级并行、提高功能部件的利用率为切入点,以降低设计复杂度、提升处理器的性能为研究目标,从多线程处理器的设计、同时多微线程体系结构、存储一致性模型和寄存器同步和共享等方面对龙芯2号多线程处理器进行了深入研究。本文的主要贡献及创新点如下:1.在分析当前多线程技术的现状和发展趋势的基础上,结合龙芯处理器的结构特点,提出龙芯2号多线程处理器设计方案,并完成了具体的微体系结构设计以及逻辑设计。在此基础上,使用0.18um CMOS工艺进行综合,进行芯片性能和面积评估。龙芯2号多线程处理器拥有超标量、同时多线程和同时多微线程三种运行模式,允许软件根据应用程序进行模式选择,最大限度地发挥处理器的性能。2.提出一种融合同时多线程技术和微线程技术的新型体系结构——同时多微线程,并且在龙芯2号多线程处理器中实现此技术。同时多微线程有效结合同时多线程技术硬件代价小、资源利用率高和微线程技术能够加速单进程应用的优点,通过软硬件协同的方式充分挖掘单进程程序的微线程级并行性。3.提出一种新的存储一致性模型——单芯片多线程一致性模型,并给出其正确性证明。单芯片多线程模型提高了处理器系统的性能,而且不需要对程序员的编程做额外的限制,单处理机的软件无需作任何修改就可以在多线程处理器上正确运行。提出一种利用例外机制维护多线程处理器的存储一致性的方法,并给出单芯片多线程一致性模型在龙芯2号多线程处理器上的具体实现方案。4.提出龙芯2号多线程处理器的线程间寄存器的同步和共享的方案。龙芯2号多线程处理器的寄存器增加Full/Empty状态,并且在译码流水级进行执行条件的检测,既避免了修正重命名的物理寄存器号的复杂逻辑,又避免阻塞整个流水线。通过线程间的寄存器快速访问,龙芯2号多线程处理器实现了快速高效的同步以及线程间的数据传递。5.在分析同时多线程和同时多微线程模式的软件需求的基础上,提出龙芯2号多线程处理器的软硬件接口协同设计解决方案,给出相应的操作系统实现方案,设计实现了配套的龙芯2同时多线程和同时多微线程Linux操作系统。龙芯2同时多线程Linux操作系统将调度两个进程同时运行在龙芯2号多线程处理器上,以此提高整个软件系统的

论文目录

  • 摘要
  • 图目录
  • 表目录
  • 第一章 绪论
  • 1.1 多线程技术研究的必要性
  • 1.1.1 半导体工艺的发展
  • 1.1.2 超标量技术的局限
  • 1.1.3 应用的需求
  • 1.2 多线程技术的简述
  • 1.3 实验方法及评测程序
  • 1.4 本文的贡献
  • 1.5 论文的组织
  • 第二章 多线程技术的相关研究
  • 2.1 显式多线程
  • 2.1.1 细粒度多线程
  • 2.1.2 粗粒度多线程
  • 2.1.3 同时多线程
  • 2.1.4 单芯片多处理器
  • 2.2 隐式多线程
  • 2.2.1 多标量处理器
  • 2.2.2 迹处理器
  • 2.2.3 超线程体系结构处理器
  • 2.2.4 动态多线程处理器
  • 2.2.5 猜测多线程处理器
  • 2.3 Intel Hyperthreading
  • 2.4 微线程
  • 2.5 小结
  • 第三章 龙芯2 号多线程处理器的整体设计方案
  • 3.1 龙芯2 号处理器
  • 3.1.1 概述
  • 3.1.2 取指和转移预测
  • 3.1.3 寄存器重命名
  • 3.1.4 动态调度
  • 3.1.5 功能部件
  • 3.1.6 存储访问与存储管理
  • 3.2 龙芯2 号多线程处理器的设计方案简述
  • 3.2.1 运行模式
  • 3.2.2 同时多微线程
  • 3.3 龙芯2 号多线程处理器微体系结构
  • 3.3.1 概述
  • 3.3.2 取指和转移预测
  • 3.3.3 寄存器重命名
  • 3.3.4 动态调度
  • 3.3.5 功能部件
  • 3.3.6 访存部件
  • 3.4 小结
  • 第四章 单芯片多线程一致性模型
  • 4.1 多线程中访存相关引起的问题
  • 4.2 并行执行的正确性
  • 4.3 常见的存储一致性模型
  • 4.3.1 顺序一致性模型
  • 4.3.2 处理机一致性
  • 4.3.3 弱一致性模型
  • 4.4 单芯片多线程一致性模型
  • 4.5 单芯片多线程一致性模型的正确性证明
  • 4.6 龙芯2 号多线程处理器上一致性模型的实现
  • 4.7 小结
  • 第五章 同步和共享
  • 5.1 同步的必要性
  • 5.2 几种常见的同步原语
  • 5.3 龙芯2 号多线程处理器中实现的同步方案
  • 5.4 寄存器共享
  • 5.5 小结
  • 第六章 软硬件接口设计
  • 6.1 同时多线程模式的软硬件接口设计
  • 6.1.1 操作系统和应用程序的需求分析
  • 6.1.2 相关问题的解决方案及接口设计
  • 6.1.3 龙芯2 同时多线程操作系统设计
  • 6.2 同时多微线程模式的软硬件接口设计
  • 6.2.1 操作系统和应用程序的需求分析
  • 6.2.2 相关问题的解决方案及接口设计
  • 6.2.3 龙芯2 同时多微线程操作系统设计
  • 6.3 龙芯2 号多线程处理器的软硬件接口协同设计总结
  • 第七章 龙芯2 号多线程处理器的实现及分析
  • 7.1 龙芯2 号多线程处理器的实现
  • 7.2 测试平台
  • 7.3 功能验证
  • 7.4 面积分析
  • 7.5 单进程负载分析
  • 7.6 多进程负载分析
  • 7.6.1 峰值性能分析
  • 7.6.2 各级流水线性能分析
  • 7.6.3 多进程负载性能分析
  • 7.7 同时多微线程分析
  • 7.8 小结
  • 第八章 结束语
  • 8.1 本文工作总结
  • 8.2 下一步研究方向
  • 参考文献
  • 致谢
  • 作者简历
  • 相关论文文献

    • [1].时钟共享多线程处理器存储结构的设计与实现[J]. 微电子学与计算机 2017(01)
    • [2].支持多线程处理器的实时操作系统实现研究[J]. 浙江大学学报(工学版) 2009(07)
    • [3].基于多核多线程处理器的网络设备设计与实现[J]. 电子设计工程 2009(12)
    • [4].同时多线程处理器共享资源的特性分析[J]. 计算机工程与科学 2009(08)
    • [5].时钟共享多线程处理器通信机制的设计与实现[J]. 电子技术应用 2016(03)
    • [6].片上多线程处理器调度策略分析[J]. 工业控制计算机 2016(06)
    • [7].MIPS公布即将推出代号为“Prodigy”的64位多核、多线程处理器IP[J]. 电子与电脑 2011(04)
    • [8].多线程处理器发展浅析[J]. 科技创新导报 2012(01)
    • [9].基于线程级的同时多线程处理器功耗评估[J]. 计算机工程 2010(14)
    • [10].基于芯片多线程处理器的性能测试及分析[J]. 计算机工程 2010(18)
    • [11].面向实时流处理的多核多线程处理器访存队列[J]. 计算机研究与发展 2009(10)
    • [12].MIPS将推出64位多核、多线程处理器IP——Prodigy[J]. 单片机与嵌入式系统应用 2011(05)
    • [13].多核多线程处理器的随机测试流量生成技术[J]. 计算机工程 2009(10)
    • [14].多核多线程处理器XLR732的多核间通信[J]. 重庆工学院学报(自然科学版) 2008(10)
    • [15].同时多线程技术[J]. 计算机工程与设计 2008(04)
    • [16].Arm首款多线程处理器增强驾驶员对大规模部署自动驾驶的安全信任[J]. 单片机与嵌入式系统应用 2019(02)
    • [17].MIPS多线程处理器为Mobileye新款C2-270防撞系统带来强大功能[J]. 单片机与嵌入式系统应用 2011(01)
    • [18].细粒度多线程处理器中前瞻性数据加载的设计与实现[J]. 计算机研究与发展 2011(S1)
    • [19].一种基于AC-Bloom技术的多线程处理器数据存取队列机制设计[J]. 微电子学与计算机 2015(06)
    • [20].多核多线程处理器二级Cache预取结构的设计[J]. 计算机工程与应用 2009(10)
    • [21].嵌入式多线程处理器的执行控制设计方法的研究[J]. 沈阳理工大学学报 2012(04)
    • [22].XMOS公司宣布采用微捷码Talus IC实现软件开发65纳米处理器[J]. 电子元器件应用 2009(02)
    • [23].同时多线程处理器的指令调度器设计[J]. 微电子学与计算机 2016(06)
    • [24].龙芯2号处理器的同时多线程设计[J]. 计算机学报 2009(11)
    • [25].MIPS32 1004K续写MIPS高性能IP[J]. 电子设计应用 2008(06)
    • [26].多核同时多线程处理器的线程调度器设计[J]. 电子技术应用 2016(01)
    • [27].嵌入式硬件多线程处理器设计与多线程机制[J]. 电子技术与软件工程 2015(21)
    • [28].产品推介[J]. 电子产品世界 2008(06)
    • [29].硬件多线程处理器的动态功耗控制方法(英文)[J]. 中国通信 2013(05)
    • [30].多线程处理器资源分配策略[J]. 计算机工程 2008(15)

    标签:;  ;  ;  ;  ;  ;  ;  ;  ;  

    龙芯2号处理器多线程技术研究
    下载Doc文档

    猜你喜欢