没有合适的资源?快使用搜索试试~ 我知道了~
我的作业论文1
需积分: 0 1 下载量 49 浏览量
2022-08-03
14:18:57
上传
评论
收藏 369KB PDF 举报
温馨提示
试读
4页
摘要本文通过作者对计算机体系结构课程的学习和研究取得的成果,探索“元宇宙”时代的计算机体系结构,提出量子以及分布式的计算机架构是未来计算机体系结构的发展方向。关
资源详情
资源评论
资源推荐
1
鲲鹏处理器流水线工作机理
(兰州大学 信息科学与工程学院 兰州 730107)
摘 要 本文通过作者对计算机体系结构课程的学习和研究, 针对华为推出鲲鹏处理器, 利用
现有常见流水线实现方法相关资料,给出其流水线工作机理。
关键词 流水线,鲲鹏,体系结构
Principles of the KungPeng CPU Pipeline
Songlin Jiang
(School of Information Science and Engineering, Lanzhou University, Lanzhou, 410073, China)
Abstract Through the author's study and research on the Computer Architecture course, aiming at the
KunPeng processor created by Huawei, this paper uses the relevant materials of the existing common
pipeline implementation methods, gives pipeline working principle of KunPeng.
Keywords Pipeline, KunPeng, Architecture
1 引言
流水线是指在程序执行的时候多条指令重叠进行的操作的一种准并行处理实现技术。传
统基本处理器的五个执行步骤为取指、译码、执行、访存、写回,对应形成了 5 级流水线的
处理器。流水线主要工作障碍为流水线竞争,其包括结构竞争、数据竞争、控制竞争。同时,
由于指令执行所需的时钟周期不同,多周期操作指令的流水实现十分复杂
[1]
。因而如何设计
出一种 CPU 流水线结构,做到在确保竞争问题得到解决的情况下实现更优化的性能,是目
前计算机体系结构研究的热点问题,而鲲鹏流水线架构是对其的一次绝佳尝试。
2 鲲鹏流水线架构
鲲鹏处理器为超标量(以鲲鹏 920 为例,其一个时钟周期内可以发射 4 条指令)乱序发
射流水线处理器,其 CPU 流水线主要阶段分别为:取指(Fetch)、译码(Decode)、分配
(Allocation)、发射(Issue)、执行(Execute)、写回(Write Back),提交(Commit)。
在取指(Fetch)阶段,通过分析分支预测(Branch Prediction)、分支目标缓冲区(Branch
Target Buffer)、返回地址堆栈(Return Address Stack)预测程序流来调整指令的执行,并分
析程序的数据流来选择指令执行的最佳顺序。随后根据时间局部性原理,访问指令缓存,如
果该地址最近被访问过则有可能在访问指令缓存中找到,否则访问内存读取指令。
在译码(Decode)阶段,首先将指令流分解为独立指令,并且将 X86 指令翻译为类似的
RISC 架构微指令(uOps),然后根据指令的类型(如控制指令,内存读写指令,运算指令)、
需要的资源(包括读写需要的寄存器)以及操作类型进行分类,从中选取出指令从而确保要
执行的指令是不相关的,确定该时钟周期中需要发射的指令。
在分配(Allocation)阶段,将指令中需要用到的寄存器进行修改重命名,以确保在发射
执行时不会产生寄存器使用的冲突。同时,通过安排插入资源停顿(resource stalls)预留出
发射的指令执行时需要使用的资源。
在发射(Issue)和执行(Execute)阶段,通过动态调度算法(记分牌策略或 Tomasulo 算
法)将指令分发到相应的执行单元,进行指令的乱序执行。
张景淇
- 粉丝: 39
- 资源: 276
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0