将向量数据表示和流水线技术结合起来,构成向量流水处理
体系结构详细概念

计算机体系结构考试范围一.概念1.计算机系统结构、计算机组成、计算机实现的定义:Flynn分类法及最典型机型系统结构定义:把由程序设计者所看到的一个计算机系统的属性,即概念性结构和功能性特性;组成定义:是指计算机系统的逻辑实现,包括机器内部的数据流和控制流的组成以及逻辑设计等。
实现的定义:是计算机组成的物理实现。
三者的关系:计算机系统结构是计算机系统的软、硬件分界面,是机器语言程序设计者或是编译程序生产系统为是其设计或者生成的程序能在机器上运行所看到的计算机属性;计算机组成是计算机系统结构的逻辑实现;计算机实现是计算机组成的物理实现。
Flynn分类法:按照指令流和数据流的多倍性状况对计算机系统进行分类。
四大类:1.单指令流单数据流(SISD) 例子:平常生活中使用的机器,如PC、V AX、IBM360/370、4300系列、CDC66002.单指令流多数据流(SIMD)例子:ILLIAC-IV、PEPE、STARAN、早期的MPP3.多指令流多数据流(MISD)例子:脉动阵列(systolic)4多指令流多数据流(MIMD)例子:1)C.mmp、Cra-2、S-1、Cray X-MP 2).IBM3081/3084、IBM370/168MP、UNIV AC1100/80、Tandem/16多处理器系统:多个cpu不带存储系统多处理机系统:多cpu带存储系统2.透明性的概念及判断透明性概念:在计算机技术中,一种本来是存在的事物或属性,但从某种角度看却好像是不存在;通常,在一个计算机系统中,低层机器级的概念性结构和概念特性,对高级程序员来说是透明的。
对于目前的通用型机器,计算机系统结构(传统机器程序员所看到的属性)一般包括:(1)机器内的数据表示,包括硬件能直接识别和处理的数据类型和格式等;(2)寻址方式,包括最小寻址单位,寻址方式的种类、表示和地址计算等;(3)寄存器组织,包括操作数寄存器、变址寄存器、控制寄存器及某些专用寄存器的定义、数量和使用约定;(4)指令系统,包括机器指令的操作类型和格式、指令间的排序方式和控制机构等;(5)存储系统,包括最小编址单位、编址方式、主存容量和最大可编址空间等;(6)中断机构,包括中断的类型、中断分级、中断处理程序的功能和入口地址等;(7)机器工作状态的定义及切换,如在管态,处理机可以使用系统的全部指令和全部资源,而在目态,处理机只能执行用户程序;(8)输入输出机构,包括输入输出设备的连结方式,处理机/存储器与输入输出设备间数据传送的方式与格式、传送的数据量、以及输入输出操作的结束与出错标志等;(9)信息保护,包括信息保护方式和硬件对信息保护的支持等3.操作码的三种表示方法(1)。
计算机系统结构复习

n
2
pi (pi 表示第 i 种操作码在程序中出现的概率)
4
Copyright 2011
计算机系统结构复习提纲
© 计 081
固定长编码相对于 Huffman 编码的信息冗余量: R 1 必须知道每种操作码在程序中出现的概率
pi log i
1
n
2
pi
log n
2
扩展编码法
Huffman 操作码的主要缺点: 操作码长度很不规整,硬件译码困难 与地址码共同组成固定长的指令比较困难 扩展编码法:由固定长操作码与 Huffman 编码法相结合形成
存在的问题
以硬件为主固件为辅 固件的主要缺点是: 执行速度低。目前,ROM 的速度低于 SRAM 一条机器指令通常要多条微指令解释执行 固件的主要优点是: 便于实现复杂指令,便于修改指令系统 以硬联逻辑为主来实现指令系统 对于少数复杂的指令,目前的许多处理机也用微程序技术实现。 RISC 对编译器造成的困难主要有: (1)必须精心安排每一个寄存器的用法,以便充分发挥每一个通用寄存器的效率,尽量减少访问主存储器的次数。 (2)做数据和控制相关性分析,要调整指令的执行序列,并与硬件相配合实现指令延迟技术和指令取消技术等。 (3)要设计复杂的子程序库,RISC 的子程序库通常要比 CISC 的子程序库大得多。
2. 数据表示的含义及与数据结构的关系
数据表示的定义: 数据表示是指计算机硬件能够直接识别,可以被指令系统直接调用的那些数据类型。 例如:定点、逻辑、浮点、十进制、字符、字符串、堆栈和向量等 数据类型:文件、图、表、树、阵列、队列、链表、栈、向量、串、实数、整数、布尔数、字符等 确定哪些数据类型用数据表示实现,是软件与硬件的取舍问题
西安交大-计算机系统结构复习提纲(可打印)

1. 开发 ILP 的两种方法 硬件动态,软件静态
2. 流水线中的调度策略 集中式调度、分布式调度 动态调度——乱序 Tomasulo 算法 分布式检测:重命名(换名)
3. 动态分支预测 针对控制相关,由硬件处理, 分支历史表 BHT——历史状态, 分支目标缓冲器 BTB——历史目标地址
5. 指令结构功能设计 CISC 机:三个目标优化 (也反映了编译,操作系统和系统结构的关系) 面向目标程序、面向高级语言、面向操作系统
RISC 机: 导致 RISC 机产生的缘由; (2-8 定理;控制器负责;不易纠错修改) 设计 RISC 机遵循的基本原则;
三、计算与设计
1. 指令格式设计 2. 指令格式的优化
延迟转移技术(延迟槽) 9. 流水线中的中断处理
不精确断点、精确断点 10. 向量处理机
向量数据表示,向量指令 向量处理方式
三、计算与设计
1. 时空图 2. 性能分析 3. 非线性流水线最小平均启动时间
第四章:指令级并行
一、基本概念——名词
超标量,超流水,动态调度,静态调度,超长指令字,保留站,Tomasulo 算法,ILP,BHT, BTB,ROB,前瞻执行(先执行再确认)
计算机系统结构是机器语言程序员或编译程序编写者所看到的外特性。所谓外特性,就 是计算机的概念性结构和功能特性。
(还有一个系统结构定义,这是由于存在计算机系统层次结构,不同的人看到不同的计 算机结构) 2. 计算机系统结构、组成与实现的三者关系:
系统结构——存在某个部件 计算机组成——罗技实现,门一级实现 计算机实现——物理实现,器件一级实现
第三章:流水线技术
一、基本概念——名词
先行控制,流水线,单功能流水线,标量流水线,重定向,分支预取,专用通道,无冲突调 度方法,冲突向量,启动距离,性能分析,时空图,缓冲技术,预处理等
将向量数据表示和流水线技术结合起来,构成向量流水处理

单发射与多发射
单发射处理机:
Hale Waihona Puke 每个周期只取一条指令、只译码一条指令,只执行 一条指令,只写回一运算结果 取指部件和译码部件各设置一套 可以只设置一个多功能操作部件,也可以设置多个 独立的操作部件 操作部件中可以采用流水线结构,也可以不采用流 水线结构 设计目标是每个时钟周期平均执行一条指令,ILP 的期望值1
超流水线处理机(续)
存结果
执行
译码
取指
12 2 5 8 11 1 4 7 10 3 6 9 12 2 5 8 11 1 4 7 10 3 6 9 12 2 5 8 11 1 4 7 10 3 6 9 12 2 5 8 11 1 4 7 10
3
6
9
每个时钟周期分时发送3条指令的超流水线
举例:
MIPS R4000
V7 向量寄存器组(8×64个) 移位 逻辑运算 V0
主
B
向量控制 R/W VM S7
存
地址寄存器 A
T
加 向量 功能 部件 迭代求倒数 相乘 加 浮点 功能 向量控制 部件
标量寄存器 S0
向量长度寄存器 VL
超级向量流水处理机举例
1972年成立CRAY公司,至今生产了400台以上的超级计算机 1979年CRAY-1S,CRAY-1改进型,有10条流水线 1983年CRAY X-MP,用4台CRAY-1 1985年CRAY-2S 1988年CRAY Y-MP,8台处理机 1991年CRAY Y-MP C-90 1996年12月,克雷研究公司也被SGI公司以7.5亿美元收购 2000年,被Tera公司合并,同年更名Cray 目前产品:MTA、SV1、SX_6、T3E 2002年Cray X1。运算速度最高为每秒52万亿次,支持65.5TB存储器。 宣布了在2010年以前实现能够连续地处理每秒1000万亿次 Cray公司称,他们将在2008年使用四核心的AMD Opteron处理器建造 XT4超级计算机,并将在2009年接近1Pflops(每秒1000万亿次浮点运 算)能力。 网址:
3-2 流水线技术

IF
ID
IF
EX
MEM
WB
IF ID IF EX ID IF MEM EX ID IF WB MEM EX ID WB MEM EX
stall stall
3、控制冲突
由分支指令引起的延迟称为分支延迟。 分支指令在目标代码中出现的频度很高,性能 损失很大。
据统计,每3~4条指令就有一条是分支指令。 假设:分支指令出现的频度是30%, 流水线理想 CPI=1, 那么:流水线的实际 CPI = 1.9。系统性能损失将 近50%!
分支指令 分支目标指令 分支目标指令+1 分支目标指令+2 分支目标指令+3 IF ID IF EX MEM WB IF ID IF EX ID IF MEM EX ID IF WB MEM EX ID WB MEM EX
stall stall
简单处理分支指令:分支失败的情况
分支指令
分支后继指令 分支后继指令+1 分支后继指令+2 分支后继指令+3
将计算结果写入R1
6
7
8
9
MEM WB EX MEM ID IF EX ID IF
WB MEM WB EX MEM WB ID EX MEM
读R1
WB
(1)数据相关冲突的3种类型
根据指令读访问和写访问的顺序,可以将数据 冲突分为3种类型: 考虑两条指令i和j ,且i在j之前进入流水线, 可能发生的数据冲突有:
写后读冲突(RAW):在 i 写入之前,j 先去读。
j 读出的内容是错误的。这是最常见的一种数据
冲突,它对应于真数据相关。
数据相关冲突的3种类型
写后写冲突(WAW):在 i 写入之前,j 先写。最
6计算机组成原理第6章流水线原理

结果
6.1 先行控制技术
• 先行控制(look-ahead)技术最早在IBM公司研制的 STRETCH机器中采用。目前,许多处理机中都已经采 用了这种技术,包括超流水处理机和超标量处理机等。
6.4 线性流水线性能分析
衡量流水线的主要指标有吞吐率,加速比和效率。
6.4.1 吞吐率TP
吞吐率(TP ── ThroughPut)指流水线在单位时间内执行的任务数, 可以用输入任务数或输出任务数表示。
TP n Tk
其中k表示流水线划分的段数。
当满足 ti 条t 件时,有 Tk (n k 1) t。
第6章 流水线原理及其 §1 重叠方式
通常提高指令执行速度的途径有如下三种: 1. 提高处理机的工作主频。 2. 采用更好的算法和设计更好的功能部件。 3. 多条指令并行执行,称为指令级并行技术。
• 可以从两个方面来开发处理机内部的并行性:
– 空间并行性:即在一个处理机内设置多个独 立的操作部件,并让这些操作部件并行工作, 这种处理机称为多操作部件处理机或超标量 处理机;
• 超长指令字技术VLIW:指让一条指令包含多个独立的操 作字段,并且分别控制多个功能部件并行工作的技术。
一.重叠解释方式
1.一条指令的几个过程段
1)取指令:根据PC(指令计数器)从M(存储器)取 出指令送到IR(指令寄存器)
2)译码分析:译出指令的操作性质,准备好所需数 据
3)执行:将准备好的数按译出性质进行处理,主要 涉及ALU(算术逻辑运算部件)
计算机体系结构试题库—名词解释

计算机体系结构试题库名词解释(100题)1.计算机体系结构:计算机体系结构包括指令集结构、计算机组成和计算机实现三个方面的内容。
2.透明性:在计算机技术中,对这种本来是存在的事物或属性,但从某种角度看又好像不存在的概念称为透明性(transparency)。
3.程序访问的局部性原理:程序总是倾向于访问最近刚访问过的信息,或和当前所访问的信息相近的信息,程序对信息的这一访问特性就称之为程序访问的局部性原理。
4.RISC:精简指令集计算机。
5.CPI——指令时钟数(Cycles per Instruction)。
6.Amdahl定律——加快某部件执行速度所获得的系统性能加速比,受限于该部件在系统中的所占的重要性。
7.系列机:在一个厂家内生产的具有相同的指令集结构,但具有不同组成和实现的一系列不同型号的机器。
8.软件兼容:同一个软件可以不加修改地运行于体系结构相同的各档机器,而且它们所获得的结果一样,差别只在于有不同的运行时间。
9.基准程序:选择一组各个方面有代表性的测试程序,组成的一个通用测试程序集合,用以测试计算机系统的性能。
10.合成测试程序:首先对大量的应用程序中的操作进行统计,得到各种操作的比例,再按照这个比例人为制造出的测试程序。
11.Benchmarks:测试程序包,选择一组各个方面有代表性的测试程序,组成的一个通用测试程序集合。
12.核心程序:从真实程序提取出来的用于评价计算机性能的小的关键部分。
13.通用寄存器型机器:指令集结构中存储操作数的存储单元为通用寄存器的机器,称之为通用寄存器型机器。
14.Load/Store型指令集结构:在指令集结构中,除了Load/Store指令访问存储器之外,其它所有指令的操作均是在寄存器之间进行,这种指令集结构称之为Load/Store型指令集结构。
15.虚拟机器:(virtual machine),由软件实现的机器。
16.操作系统虚拟机:直接管理传统机器中软硬件资源的机器抽象,提供了传统机器所没有的某些基本操作和数据结构,如文件系统、虚拟存储系统、多道程序系统和多线程管理等。
计算机系统结构 第3章 流水线技术PPT课件

3.1 流水线的基本概念
➢ 流水技术适合于大量重复的时序过程,只有在输 入端不断地提供任务,才能充分发挥流水线的效 率。
➢ 流水线需要有通过时间和排空时间。
通过时间:第一个任务从进入流水线到流出结果 所需的时间。
入
S1
△t2=△t S2
△t3=△t S3
△t4=3△t S4a
S4b
△t5=△t S5
出
S4c
3.2 流水线的性能指标
段
S5
1 2 3 4 5 6 7 8 9 … n-2 n-1 n
S4c
3
6
9
…
n
S4b
2
5
8
…
n-1
S4a
1
4
7
…
n-2
S3
1 23 4 56 7 8 9
…
n
S2
1 23 4 5 6 7 E n k n1
➢ 最高效率为:
Ema x nl i mknn11
当n>>k时,E≈1。
3.2 流水线的性能指标
当流水线各段时间相等时,流水线的效率与吞吐率 成正比。 E=TP·△t
➢ 流水线的效率是流水线的实际加速比S与它的最 大加速 比k的比值。 E S
k
当E=1时,S=k,实际加速比达到最大。
…
n
3
…… n
3
…… n
3
…… n
(n-1)△t4
出 n
时间
(b)时空图
3.2 流水线的性能指标
➢ 各段时间不等的流水线的实际吞吐率为:
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
向量的流水处理(续)
向量处理工作方式 如:D=A×(B+C)
横向加工:bi+ci->k, k*ai->di
产生N次相关,2N次功能切换,适合标量循环
纵向加工:bi+ci->ki, ki*ai->di
产生1次相关,1次功能切换,可流水处理
纵横处理:对向量分组,组内纵向、组间横 向处理
V7 向量寄存器组(8×64个) 移位
逻辑运算
V0
主
加 向量 功能
B
部件
向量控制
迭代求倒数
R/W
VM S7
相乘 加
存
浮点
地址寄存器 A
T
向量控制
功能 部件
标量寄存器 S0 向量长度寄存器 VL
超级向量流水处理机举例
1972年成立CRAY公司,至今生产了400台以上的超级计算机 1979年CRAY-1S,CRAY-1改进型,有10条流水线 1983年CRAY X-MP,用4台CRAY-1 1985年CRAY-2S 1988年CRAY Y-MP,8台处理机 1991年CRAY Y-MP C-90 1996年12月,克雷研究公司也被SGI公司以7.5亿美元收购 2000年,被Tera公司合并,同年更名Cray 目前产品:MTA、SV1、SX_6、T3E 2002年Cray X1。运算速度最高为每秒52万亿次,支持65.5TB存储器。 宣布了在2010年以前实现能够连续地处理每秒1000万亿次 Cray公司称,他们将在2008年使用四核心的AMD Opteron处理器建造
两种不同并行性:
超标量处理机采用的是空间并行性 超流水线处理机采用的是时间并行性
指令执行时序
每隔1/n个时钟周期发射一条指令,流水线周 期为1/n个时钟周期
在超标量处理机中,流水线的有些功能段还可 以进一步细分
例如:ID功能段可以再细分为译码、读第一操 作数和读第二操作数三个流水段。也有些功能 段不能再细分,如WR功能段一般不再细分。
的期望值1
单发射处理机的指令流水线时空图
12
I1 IF ID
I2
IF
I3
指令
34 5 EX WR
6 时钟 周期
ID EX WR
IF ID EX WR
来自指 令Cache
IF ID
FA1 FA2 FA3 浮点加法部件
MD1 MD2 MD3 乘除法部件
AL 定点ALU部件
LS 取数存数部件
WR 通用寄存器 后行写数栈
向量流水处理机
向量流水处理机的指令系统 向量流水处理机的结构 超级向量流水处理机举例
向量流水处理机的指令系统
包含有向量型和标量型两类指令
向量型运算类指令
向量V1运算得向量V2,如V2=SIN(V1)
向量V运算得标量S,如
n
S Vi
i 1
向量V1与向量V2运算得向量V3,V3=V1^V2
IF ID
MD1 MD2 MD3
WR
乘除法部件
IF ID
WR
AL
定点ALU部件
LS
取数存数部件
超标量处理机:
一个时钟周期内能够同时发射多条指令的处理机称 为超标量处理机
必须有两条或两条以上能够同时工作的指令流水线
先行指令窗口:
能够从指令Cache中预取多条指令 能够对窗口内的指令进行数据相关性分析和功能部
超标量处理机典型结构:
多条指令流水线 进的超标量处理机有:定点处理部件CPU,浮点处理部件FPU,图形加
速部件GPU 大量的通用寄存器,两个一级高速Cache 超标量处理机的指令级并行度大于1
举例: Motorola公司的MC88110
10个操作部件 两个寄存器堆:整数部件通用寄存器堆,32个32位寄
因此有超流水线的另外一种定义:有8个或8个 以上流水段的处理机称为超流水线处理机
超流水线处理机(续)
存结果 执行 译码 取指
3 6 9 12 2 5 8 11 1 4 7 10 3 6 9 12 2 5 8 11 1 4 7 10 3 6 9 12 2 5 8 11 1 4 7 10 3 6 9 12 2 5 8 11 1 4 7 10
操作部件的个数多于每个周期发射的指令条数。 4个至16个操作部件
超标量处理机的指令级并行度:1<ILP<m; m为每个周期发射的指令条数。
IF ID
FA1 FA2 FA3 浮点加法部件
MD1 MD2
WR
AL
IF ID
定点ALU部件
先行指 令窗口
LS 取数存数部件
17.8
0.98
NEC SX2 424.2
9.5
0.98
Fujitsu VP400 207.1
6.6
0.97
向量平衡点(vector balance point)定义为:为了使向量硬 件设备和标量硬件设备的利用率相等,一个程序中向量代码 所占的百分比。
§3 指令级高度并行的超级处理机
超标量处理机 超流水线处理机 超标量超流水线处理机 超长指令字处理机
XT4超级计算机,并将在2009年接近1Pflops(每秒1000万亿次浮点运 算)能力。 网址:
超级向量流水处理机举例(续)
CDC公司1973年推出第一台超级计算机 STAR-100
1964年CDC-6600 RISC特征 1982年 CYBER 205 1999年 被Syntegra收购 ETA10:8个CPU 网址:
几种超级计算机的向量性能和标量性能
机器型号
向量性能 Mflops
标量性能 Mflops
向量平衡点
Cray IS
85.0
9.8
0.90
Cray 2S
151.5
11.2
0.93
Cray X-MP 143.3
13.1
0.92
Cray Y-MP 201.6
17.0
0.92
Hitachi S820 737.3
存器;浮点部件扩展寄存器堆,32个80位寄存器。每 个寄存器堆有8个端口,分别与8条内部总线相连接, 有一个缓冲深度为4的先行读数栈和一个缓冲深度为3 的后行写数栈。 两个独立的高速Cache中,各为8KB,采用两路组相联 方式。 转移目标指令Cache,在有两路分支时,存放其中一路 分支上的指令
IF IS RF EX DF DS TC WB
超流水线处理机
两种定义:
一个周期内能够分时发射多条指令的处理机称为 超流水线处 理机。
指令流水线有8个或更多功能段的流水线处理机称为超流水线 处理机。
提高处理机性能的不同方法:
超标量处理机是通过增加硬件资源为代价来换取处理机性能 的。
超流水线处理机则通过各硬件部件充分重叠工作来提高处理 机性能。
单发射处理机:
每个周期只取一条指令、只译码一条指令,只执行 一条指令,只写回一运算结果
取指部件和译码部件各设置一套 可以只设置一个多功能操作部件,也可以设置多个
独立的操作部件 操作部件中可以采用流水线结构,也可以不采用流
水线结构 设计目标是每个时钟周期平均执行一条指令,ILP
时间
度m=3的超标量处理机时空图
超标量处理机基本结构
一般流水线处理机:
一条指令流水线 一个多功能操作部件,每个时钟周期平均执行指令的条数小于1。
多操作部件处理机:
一条指令流水线 多个独立的操作部件,操作部件可以采用流水线,也可以不流水 多操作部件处理机的指令级并行度小于1
单发射与多发射(续)
多发射处理机:
每个周期同时取多条指令、同时译码多条指令,同 时执行多条指令,同时写回多个运算结果
需要多个取指令部件,多个指令译码部件和多个写 结果部件
设置多个指令执行部件,复杂的指令执行部件一般 采用流水线结构
设计目标是每个时钟周期平均执行多条指令,ILP的 期望值大于1
EX DF DS TC
标
志
ALU
数据 Cache
检 验
WB 寄存 器堆
IF:取第一条指令
IS:取第二条指令
RF:读寄存器堆,指令译码
EX:执行指令
DF:取第一个数据
DS:取第二个数据
TC:数据标志
校验;WB:写回结果
MIPS R4000正常指令流水线工作时序
IF IS RF EX DF DS TC WB
向量V1与标量S运算得向量V2,V2=S*V1
特殊操作指令
向量比较指令
向量压缩指令
归并指令
向量传送指令
向量流水处理机的结构
1972年首次交付使用CRAY-1向量流水处理机 分布异构型多处理机系统,由中央处理机、诊
断维护控制处理机、大容量磁盘存储子系统、 前端处理机组成 6个流水线单功能部件:整数加、逻辑运算、 移位、浮点加、浮点乘和浮点迭代求倒数 向量寄存器由512个64位寄存器组成,分成8组
每个时钟周期分时发送3条指令的超流水线
举例: MIPS R4000
MIPS R4000处理机每个时钟周期包含两个流水 段,是一种很标准的超流水线处理机结构。指 令流水线有8个流水段
有两个Cache,指令Cache和数据Cache的容量 各8KB,每个时钟周期可以访问Cache两次, 因此在一个时钟周期内可以从指令Cache中读 出两条指令,从数据Cache中读出或写入两个 数据。
IV A 地 址 部 件 程序计数器
浮点加法部件 转换部件
求平方根部件
MIPS
流水线 控制