当前位置:主页 > 科技论文 > 计算机论文 >

多线程环境下寄存器文件的设计与优化

发布时间:2020-03-20 12:13
【摘要】: 如何挖掘处理器的并行性一直是处理器设计者努力的重要方向。传统RISC处理器体系结构和编译优化技术主要专注于开发程序执行中的指令级并行性,通过在一个时钟周期内发射多个操作来提高处理器的IPC。但是,单个程序的有限指令级并行性决定了多发射处理器的资源利用率不高。因此,多线程技术应运而生。 多线程技术通过多个线程共享功能单元,开发线程级并行来提高处理器资源利用率。多线程处理器通过执行来自不同线程的指令流,使得单个线程中的长延迟操作得到很好的隐藏,使处理器的性能得到显著提高。然而,多线程并行执行也对寄存器文件提出了很大的挑战。 作为处理器的重要组成部件,寄存器文件的有效设计对于提高微处理器的性能具有举足轻重的作用。寄存器文件也称寄存器堆,其作用就像一个小的快速的缓冲器,用于微处理器存放操作数和运算的中间结果。在计算机系统的整个存储层次体系中,寄存器文件位于最顶层,离CPU运算部件距离最近,访问速度最快。 本文设计了一款支持多线程的高性能通用寄存器文件,它有3个读端口和2个写端口,支持4线程并行。我们首先研究了多线程体系结构的特点以及寄存器文件的功能和结构,分析了过程调用与寄存器窗口的关系。然后针对多线程环境的特点,我们对寄存器文件的结构、功能和实现进行了研究和设计。在设计中综合应用了寄存器划分、重叠寄存器窗口、层次扩展等技术,构造了“两级寄存器窗口”结构。从实现的角度,我们还研究了两级寄存器文件的数据一致性管理策略,给出了寄存器文件的端口描述和时序设计,并对设计进行了验证。另外,我们对窗口异常处理和控制进行了详细设计。最后,我们对Active寄存器文件进行电路设计,并给出了面积分析。 通过采用合理的组织结构以及有效管理策略,我们设计的寄存器文件具有很好的性能,满足了四个线程并行执行的需要,达到了预期的设计目标。
【图文】:

多线程环境下寄存器文件的设计与优化


Odd/Even窗口关系

时序图,寄存器文件,功能验证,时序


图 4.7 寄存器文件功能验证时序图 4.7 是我们从设计验证的截得得一段波形。图中可以看出以下几个操作:对端口 0 的写:当写端口 0 的写使能 a_wr_en_p0 和写地址 a_wr_addr_p0(4’b0001)在 clk 的下降沿之前准备好后,数据在下降沿后存储在单元active_window[1]中。当读端口 0 读使能 a_rd_en 和 ard_addr_p0(4’b0001)在下降沿之前准备好之后,数据在下降沿之后读出,如 a_rd_data_p0 所示。系统在执行global save 操作时,即 a_save_global_en 为 1 时,时序变化如 intrinsic_globals[8]所示,是将 active_window 中的 global 数据,保存到 Intrinsic 中的 global 中。系统在执行 global restore 操作时,即 a_restore_global_en 为 1 时,时序变化如active_window[0]所示,是将 global 中的数据恢复到 active_window 中。
【学位授予单位】:国防科学技术大学
【学位级别】:硕士
【学位授予年份】:2008
【分类号】:TP332

【引证文献】

相关期刊论文 前1条

1 陈勇;曹玉保;王林强;;基于寄存器窗口互相重叠的多核间数据交换方法[J];中国集成电路;2012年08期



本文编号:2591762

资料下载
论文发表

本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/2591762.html


Copyright(c)文论论文网All Rights Reserved | 网站地图 |

版权申明:资料由用户cced0***提供,本站仅收录摘要或目录,作者需要删除请E-mail邮箱bigeng88@qq.com