高级流水线-超长指令字

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
高级流水线技术
超长指令字
网工1101班
朱旭宏 张 旭 张佳煜 2011011317 2011011316 2011011331
成员介绍
?
?
?
成员介绍
其实
百度文库
张佳煜
张旭
朱旭宏
主要内容
一、流水线介绍 二、流水线核心思想 三、工作机制
四、其优缺点
流水线介绍
(1)定义
流水线(pipeline)技术是指在程序执行时多条指 令重叠进行操作的一种准并行处理实现技术。流水线是 Intel首次在486芯片中开始使用的。流水线的工作方式 就象工业生产上的装配流水线。在CPU中由5—6个不 同功能的电路单元组成一条指令处理流水线,然后将一 条X86指令分成5—6步后再由这些电路单元分别执行, 这样就能实现在一个CPU时钟周期完成一条指令,因此 提高CPU的运算速度。经典奔腾每条整数流水线都分为 四级流水,即指令预取、译码、执行、写回结果,浮点 流水又分为八级流水。
超长指令字
(3)优缺点
优点
① 把能并行执行的多条指令组装成一条很长的指令 ② 设置多个功能部件 ③ 指令字被分割成一些字段,每个字段称为一个操 作槽,直接独立地控制一个功能部件。 ④ 超长指令字结构的处理器采用软件静态编译的方 法替代动态调度,由编译器完成在更大范围内的指 令调度,有效地降低了流水线的复杂度,使单芯片 上可以容纳更多的重复资源以同时处理多条指令。
流水线介绍
(3) 计算机应用
CPU的工作也可以大致分为指令的获取、解码、 运算和结果的写入四个步骤,采用流水线设计之后,指 令(好比待装配的汽车)就可以连续不断地进行处理。 在同一个较长的时间段内,显然拥有流水线设计的CPU 能够处理更多的指令。
流水线核心思想
超常指令字
(1)定义
超常指令字(VLIW:VeryLongInstructionWord) 是由美国Yale大学教授Fisher提出的。它有点类似于超 级标量,是一条指令来实现多个操作的并行执行,之所 以放到一条指令是为了减少内存访问。通常一条指令多 达上百位,有若干操作数,每条指令可以做不同的几种 运算。那些指令可以并行执行是由编译器来选择的。通 常VLIW机只有一个控制器,每个周期启动一条长指令, 长指令被分为几个字段,每个字段控制相应的部件。由 于编译器需要考虑数据相关性,避免冲突,并且尽可能 利用并行,完成指令调度,所以硬件结构较简单。
谢谢!
超长指令字
(3)优缺点
缺点
①程序代码长度增加了提高并行性而进行的大量的 循环展开。指令字中的操作槽并非总能填满。 ②采用了锁步机制任何一个操作部件出现停顿时, 整个处理机都要停顿。 ③机器代码的不兼容性
超长指令字
(4)应用
超长指令字DSP面向MP3、PMP中的SoC应用
台湾地区的研究人员已自主开发出了一种超长指令 字(VLIW)DSP,适用于MP3、PMP及其它低功耗便携 产品中的SoC。同时,他们也在致力于开发下一代多内 核、多线程架构,以处理高清编码或视频搜索之类的任 务。
流水线介绍
(2) 产生背景
借鉴了工业流水线制造的思想,现代CPU也采用 了流水线设计。在工业制造中采用流水线可以提高单位 时间的生产量;同样在CPU中采用流水线设计也有助于 提高CPU的频率。例如装配一辆汽车需要4个步骤:冲 压、焊接、涂装、总装;同时对应地需要冲压、焊接、 涂装和总装四个工人。采用流水线的制造方式,同一时 刻四辆汽车在装配。如果不采用流水线,那么第一辆汽 车依次经过上述四个步骤装配完成之后,下一辆汽车才 开始进行装配,最早期的工业制造就是采用的这种原始 的方式。未采用流水线的原始制造方式,同一时刻只有 一辆汽车在装配。
流水线介绍
不久之后就发现,某个时段中一辆汽车在进行装配 时,其它三个工人处于闲置状态,显然这是对资源的极 大浪费!于是开始思考能有效利用资源的方法:在第一 辆汽车经过冲压进入焊接工序的时候,立刻开始进行第 二辆汽车的冲压,而不是等到第一辆汽车经过全部四个 工序后才开始。之后的每一辆汽车都是在前一辆冲压完 毕后立刻进入冲压工序,这样在后续生产中就能够保证 四个工人一直处于运行状态,不会造成人员的闲置。这 样的生产方式就好似流水川流不息,因此被称为流水线。
超常指令字
(2)工作机制
在一个基本时钟周期内能够分时发射多条指令的处 理机,一般流水线的级数多达8条及以上。超流水线处 理机采用多相的高频时钟。一台度为m的超流水线处理 机的时钟Δt’只是基本时钟周期Δt的1/m。如果一条指 令的解释需要K个Δt,则共需KmΔt’的时钟解释。让指 令之间错开一个Δt’的时间,重叠流水地工作,执行完 N条指令的时间为: [K+(N-1)/m] Δt 当N趋于无穷大时,并行度可达到最大值m。
相关文档
最新文档