计算机体系结构课件 李学干

合集下载

计算机系统结构课件:第一章 计算机系统结构的基本概念

计算机系统结构课件:第一章 计算机系统结构的基本概念

第一章 计算机系统结构的基本概念
Amdahl定律可表示为:
Sp = Te / T0
T0= Te(1 – fe + fe /re)
例1:运行60s的程序中, 有20s的运算可加速,则: fe=20/60=33.3%
例2:系统改进后执行程序, 可改进部分花费时间为2s, 改进前改进部分花费时间为 5s,则:re=5/2=2.5
(三) Wolfgan Handler(汉德勒)法 (1977年德国)
➢从硬件设备结构的并行级和流水线的程度分类。
•程序控制部件的个数 。
•算术逻辑运算部件或处理部件的个数 。
•基本逻辑线路的套数。
t(Cray-1)=(1,12×8,64) t(ILLIAC-Ⅳ)=(1,64,64)
计算机系统结构
如RISC机、向量 机
MM
DS
计算机系统结构
Computer Architecture
第一章 计算机系统结构的基本概念
多指令流、多数据流( MIMD )结构
CU1 CS1 PU1 DS1
IS1
CS2
DS2
CU2
PU2
MM IS2
CSn
DSn
ISn
CUn
PUn
IBM 3081/3084、Univac 1100/80,Cray-2等均属这一类型
计算机系统结构
Computer Architecture
第一章 计算机系统结构的基本概念
单指令流、单数据流( SISD )结构
单指令流、单数据流( SISD-Single Instruction stream Single Data stream ) 结构
指令流
IS
控制流

[农学]计算机体系结构 李学干 第二章课件

[农学]计算机体系结构 李学干 第二章课件
不具有向量表示和相应向量运算指令的计算机。
第三十六页,共48页。
(2)向量 数据 (xiàngliàng)
向量的表示(biǎoshì)
数组 A=(a0,a1,a2,…,an-1)
ai为A的元素,可以为定点数、浮点数、整数等
向量在主存中的存放原则: 规律性、地址计算简单、访存冲突小
元素相邻存放 元素等间距存放
数据类型包含了数据取值集和可作用其上 的操作集,所以,相应的指令及处理部件是 识别这些数据类型所必需的。
即:对该数据类型的各种运 算(yùn suàn)操作都有相应的实 现硬件电路
第七页,共48页。
2、数据结构(shù jù jié ɡòu)
数据结构是指结构数据类型的组织方式. 它反映(fǎnyìng)了在应用中所用到的各种数据元素或信息 单元间的结构关系。 除了数据表示之外的所有数据类型,一般都是数据结
如何确定数据表示 是计算机系统结构设计人员要解决(jiějué)的难题之一。
第十三页,共48页。
(2)数据表示的设计(shèjì)原则
确定哪些数据类型用数据表示来实现的原则: 1) 缩短程序的运行时间, 2) 减少(jiǎnshǎo)CPU与主存储器之间的通信量
3) 考虑这种数据表示的通用性和利用率。
第十八页,共48页。
2.1.2 高级 数据表示 (gāojí)
第十九页,共48页。
传统的冯·诺依曼计算机中,指令本身指明了操作数 据类型.
例如对于(duìyú)加法指令,在IBM 370中就要分成定点 加、浮点加、十进制加等15种加法指令。
高级语言中,同一种运算(yùn suàn)操作,只采用一个操作符.
少取指令4 40 000次,程序执行时间缩短了一半以上。

计算机体系结构课件 李学干

计算机体系结构课件    李学干

程序装入主存时 需要进行逻辑地址空间到物理地址空间的变换, 即进行程序的定位。
逻辑地址与主存物理地址
静态再定位:用软件方法把目标程序的逻辑地 址变换成物理地址,而在程序的执行过程中, 物理地址不再改变。
动态再定位:在执行每条指令时才形成访存物 理地址的方法。通过基址寻址。
逻辑地址与主存物理地址
变址寻址:支持向量、数组,实现循环; 基址寻址:支持逻辑地址到物理地址的变化, 实现动态再定位; 存储保护:设置多对上、下界寄存器。 整数边界存储
指令字格式的优化
定长地址码带来的问题
li:操作码优化表示的长度
Байду номын сангаас定长地址码发挥不出操作码优化表示的作用
指令字格式的优化
通过采用多种不同的寻址方式,地址制、地址形式和 地址码长度以及多种指令长度,将它们与可变长操作 码的优化表示结合起来,可构成冗余度尽可能少的指 令字。
指令字格式的优化
指令 OPR+OPD
操作码的Hufmann编码
操作码的Hufmann编码
操作码的Hufmann编码
操作码的Hufmann 编码
例(续)
操作码的Hufmann编码
扩展操作码宜于等长扩展 便于分级译码
如48 12码,步长为4。
操作码的Hufmann编码
15/15/15码
操作码的Hufmann编码
15/15/15码 8/64/512码
寻址方式的种类
变址寻址
ADD R3,(R1+R2)
寄存器间接寻址 ADD R1,@(R3) 自增自减寻址 ADD R1, (R2)+
R3R3+M[R1+R2]
R1 R1+M[M[R3]] R1 R1+M[R2] R2 R2+d

第8章李学干计算机系统结构南航精品PPT课件

第8章李学干计算机系统结构南航精品PPT课件
第 8 章 具有现代特色的计算机
第 8 章 具有现代特色的计算机
8.1 脉动阵列机 8.2 数据流机 8.3 归约机 8.4 智能机 8.5 大规模并行处理机MPP与机群系统
第 8 章 具有现代特色的计算机
8.2 数 据 流 机
8.2.1 数据驱动的概念
以计算一元二次方程ax2+bx+c=0的根作为例子。假定b24ac≥0,可以写出如下的FORTRAN
第 8 章 具有现代特色的计算机
(4) 指令执行的顺序只受操作数的需求所制约, 只要没有 数据依赖关系的函数,原则上都可以在不同处理器上并行处 理, 所以程序中的并行性较易检测和开发。
(5) 程序具有单一的递归结构,即函数又是由函数构成。 一个函数程序的功能只与组成该函数程序的各函数成分有关。 数据结构是目标的组成部分,不是程序的组成部分,因此同 一个函数程序可以处理结构、大小不同的目标,增强了程序 的通用性。
图 8.25 Manchester数据流机结构框图
第 8 章 具有现代特色的计算机
8.2.4 数据流机器存在的问题
(1) 数据流机主要目的是为了提高操作级并行的开发水平, 但如果题目本身数据相关性很强,内含并行性成分不多时,就 会导致数据流机的效率反而不如传统的Von Neumann型机器的 高。
(5) 专门适合于数据流机用的互连网络的设计较困难, 而且, 对数据流机的输入/输出尚待完善。
(6) 数据流机没有程序计数器, 给诊断和维护带来困难。
第 8 章 具有现代特色的计算机
8.3 归 约 机
从函数程序设计的角度看,一个程序就是一个函数的表达 式 。 通 过 定 义 一 组 “ 程 序 形 成 算 符 ” (Program Forming Operators), 可以用简单函数(即简单程序)构成任意复杂的程序, 也就是, 构成任意复杂函数的表达式。反过来,如果给出了一 个属函数表达式集合中的复杂函数的表达式,利用提供的函数 集合中的子函数经过有限次归约代换之后,总可以得到所希望 的结果, 即由常量构成的目标。函数表达式指的是函数之间的 映射。 从语法上讲是按规定的语法规则构成的符号串,从语义 上讲是多个运算符的组合。

计算机系统结构 李学干 第2章

计算机系统结构 李学干 第2章

表示。 类似的,若机器设臵有浮点运算指令(如浮点加、减、乘、
行各种处理,机器就有了浮点数据表示。
第 2 章 数据表示与指令系统
串、队、栈、向量、阵列、链表、树、图等是软件系统所要 处理的各种数据结构,它们反映了面向应用所要用到的各种数据
元素或信息单元之间的结构关系。数据结构是通过软件映象,将
信息变换成机器中所具有的各种数据表示来实现的,可见,数据 表示是构成数据结构的元素。不同的数据表示可以为数据结构的 实现提供不同的支持,表现在实现的效率和方便性上不同。因此, 数据结构和数据表示是软、硬件的交界面。系统结构设计者在确
将q=(2p-1)/log2 rm代入上式得
2p 1 1 p 1 e 2 (1 rm ) 1 log 2 rm
取 16, 则表示比

实际机器中阶码位数p一般都较大,至少p=8,这时若rm
8 1 2 1 1 8 0 .47 e 2 1 1 16 4
这从表 2.4 对大量指令执行后统计得出的浮点加法移位距离 和所占百分比情况可以看出。因此rm愈大,尾数右移的可能 性愈小,精度的损失就越小。
第 2 章 数据表示与指令系统
表 2.4 浮点加法的移位距离及百分比
(4) 能由硬件自动完成数据类型的变换。
(5) 支持了数据库系统的实现与数据类型无关的要求。
(6) 为软件调试和应用软件开发提供了支持。
第 2 章 数据表示与指令系统
采用标志符数据表示带来的问题可能有两个。
(1) 每个数据字因增设标志符, 会使程序所占用的主存空
间增加。 (2) 采用标志符会降低指令的执行速度。
其浮点数尾数的基。在机器中,一个rm进制的数位是用[log2

-计算机系统结构(版)李学干

-计算机系统结构(版)李学干
第6章 向量处理机
6.1 向量的流水处理和向量流水处理机 6.2 阵列处理机的原理 6.3 SIMD计算机的互连网络
6.4 共享主存构形的阵列处理机中并行存储器的无冲突访问
6.5 脉动阵列流水处理机 6.6 本章小结
第6章 向量处理机
6.1 向量的流水处理和向量流水处理机
6.1.1
虽然向量运算比标量运算更易发挥出流水线的效能,但 处理方式选择不当也不行。
第6章 向量处理机
运算结束后,V0中各个分量的内容如下:
(V00 ) (V00 ) (V10 ) 0(V10 ) (V01 ) (V00 ) (V11 ) 0(V11 ) (V0 2 ) (V00 ) (V12 ) 0(V12 ) (V03 ) (V00 ) (V13 ) 0(V13 ) (V0 4 ) (V00 ) (V14 ) 0(V14 ) (V05 ) (V00 ) (V15 ) 0(V15 ) (V06 ) (V00 ) (V16 ) 0(V16 ) (V07 ) (V00 ) (V17 ) 0(V17 )
与第一、二条指令在大部分时间内并行。它们的链接过程如
图6 - 3所示。
第6章 向量处理机
图 6-3 通过链接技术实现向量指令之间大部分时间并行
第6章 向量处理机
6.1.4
1.
当程序中出现条件语句或进行稀疏向量、矩阵运算时, 难以发挥出向量处理的优点。
2.
CRAY-1的向量指令还可以通过让源向量和结果向量使 用同一个向量寄存器组,并控制分量计数器值的修改,来实
现递归操作。
第6章 向量处理机
图6 - 4画出了其部分时间关系示意图。设源/结果向量寄 存器组用V0,另一源向量寄存器组用V1。在指令开始执 行前,先把V0的零分量(V00)置“0”。V1置入需要运算的全 部浮点数分量。向量长度寄存器VL的内容假定置为64

第5章-计算机系统结构(第五版)李学干

第5章-计算机系统结构(第五版)李学干

第5章 标量处理机
图 5 - 11 B一次相关与二次相关
第5章 标量处理机
由图5 - 11可见,B二次相关时,只需推后“分析k+2”的 始点到“执行k”送入通用寄存器的运算结果能在“分析k+2” 开始时出现于通用寄存器输出总线上即可,如图5 - 12(a)所 示。至于推后多少拍,这取决于通用寄存器组译码、读
如图5 - 20(b)所示。即使流水线每隔Δt0流入一条指令,也会
因来不及处理被堆积于2段,致使流水线仍只能每隔 3Δt0才流出一条指令。
第5章 标量处理机
图 5 - 20 最大吞吐率取决于瓶颈段的时间
第5章 标量处理机
消除瓶颈的一种办法是将瓶颈子过程再细分。例如将2
段再细分成21、22、23三个子段,如图5-21(a)所示。让各子
同,如图5 - 23所示那样,则在T时间里,流水线各段的效率
都相同,均为η0,即
nΔt0 n 1 2 m 0 T m (n 1)
第5章 标量处理机
整个流水线的效率

1 2 m
m

m0 mnΔt0 0 m mT
式中,分母mT是时空图中m个段和流水总时间T所围成
第5章 标量处理机
图 5 - 3 一次重叠工作方式
第5章 标量处理机
(2) 要解决“分析”与“执行”操作的并行。 (3) 要解决“分析”与“执行”操作控制上的同步。 (4) 要解决指令间各种相关的处理。 图5 - 4示意出条件转移时第k条指令和第k+1条指令的时
间关系。
第5章 标量处理机
图 5 - 4 第k条指令和第k+1条指令的时间关系
由于运算结果是在“执行”周期的末尾才送入通用寄存

第7章-计算机系统结构(第五版)李学干

第7章-计算机系统结构(第五版)李学干

第7章 多处理机
图 7-4 通过消息传送系统连接的松耦合多处理机结构
第7章 多处理机
卡内基-梅隆大学设计的松耦合多处理机Cm*是层次型总 线式多处理机,其结构如图7 - 5所示。
第7章 多处理机
图 7-5 Cm*多处理机结构
第7章 多处理机
2. 多处理机机间互连的形式是决定多处理机性能的一个重 要因素。 1) 多个处理机、存储器模块和外围设备通过接口与公用总 线相连,采用分时或多路转接技术传送。
第7章 多处理机
图7 - 10给出了一个42×32的Delta网络,这种互连网络比 较适用于输入端数和输出端数不等或通信不规则的多处理机 中。
第7章 多处理机
图 7-10 42×32的Delta网络(榕树形互连网络的特例)
第7章 多处理机
4) 如果每个存储器模块都有多个访问端口,将分布在交叉 开关矩阵中的控制、转移和优先级仲裁逻辑分别移到相应存 储器模块的接口中,就构成了多端口存储器形式的结构。图 7- 11是一个四端口存储器形式的结构。
第7章 多处理机
图 7-25 嵌套并行进程的优先执行过程
第7章 多处理机
7.3.4
使用多处理机的主要目的是用多个处理机并发执行多 个任务来提高解题速度。
第7章 多处理机
7.4 多处理机的操作系统
7.4.1
在主从型操作系统中,管理程序只在一个指定的处理机 (主处理机)上运行。
1. 优点 2. 缺点 3. 适用场合
图 7-21 计算Z=E+A*B*C/D+F的并行程序数据相关图
第7章 多处理机
这条语句又派生出S4,分配给空闲的处理机1,而处理机 2接着执行S3。同样,等S4和S3都先后结束后,才满足JOIN语 句的汇合条件,经GOTO 50进入S5。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

码制转换问题,如ASCII码与BCD码之间的转换。 在IBM 370计算机中就设置有专门的码制转换指令, 用一条指令就能完成一个字串的码制转换。
面向目标程序的优化方法

例:“翻译”指令用于码制变换,如EBCDIC码 ASCII 码
被变换符(源符)块 变换表 (B1)+D1 G L
YY
(B2)+D2
取决于所设计的系统中 指令的使用频度的分布。
使平均码长∑pili最短
指令字格式的优化
为了不降低访存取指令的速度,就要维持指令字 按整数边界存储。 可寻址224的 存储空间。 操作数地址的位数 从寻址范围看,越大越好 用各种方法,压缩操作数部分的位数。
指令中访存地址码部分
基寄存器址
4位
位移量(D)
12位
指令系统的设计和优化
指令系统是从程序设计者看到的机器的主要属性, 是软、硬件的主要界面 -指令系统是计算机系统结构的主要组成部分; -指令系统是软件与硬件分界面的一个主要标志; -指令系统是软件与硬件之间互相沟通的桥梁。
指令系统的基本特性

完备性指的是一个指令系统可以满足对给定的算 法编制出程序来加以实现的特性; 有效性指的是一个指令系统能用相当少的指令编 出实现某种算法的程序的特性; 简明性指的是一个指令系统既能简化处理机结构 的设计,又能简化编程的特性。
指令的使用频度


指令的静态使用频度指的是对多种典型程序源代 码中所用的指令和指令串进行统计所得出的百分 比。 指令的动态使用频度指的是对多种典型程序在运 行过程中所执行的指令和指令串进行统计所得出 的百分比。
着眼于减少目标程序所 占用的存储空间
着眼于减少目标 程序的执行时间
例:对IBM 360的19个典型程序进行统计:

面向目标程序优化实现的改进

优化的目的
提高目标程序的实现效率
衡量效率的主要标准
程序的实现速度和长度
优化的基本思想
对使用频率高的指令,
增强其功能并缩短字长; 对使用频率高的指令串, 增设新指令来替代它; 对使用频率低的指令, 取消或合并,但要考虑到 指令系统的兼容性问题 。
指令字格式的优化
定长地址码带来的问题
li:操作码优化表示的长度
定长地址码发挥不出操作码优化表示的作用
指令字格式的优化
通过采用多种不同的寻址方式,地址制、地址形式和 地址码长度以及多种指令长度,将它们与可变长操作 码的优化表示结合起来,可构成冗余度尽可能少的指 令字。
指令字格式的优化
指令 OPR+OPD
寻址方式在指令中的指明方式
操作码占用位
DJS200中:操作码中2位表示
地址码设置寻址方式字段 VAX-11的4位寻址方式字段; 寻址灵活、操作码短,需专门的寻址方式 位字段。
V:两种表示寻址方式的方法
2.2.2 程序在主存中的定位
逻辑地址与主存物理地址
逻辑地址:程序员编写程序时使用的地址。
物理地址:程序在主存中的实际地址。 逻辑地址空间和物理地址空间是不一致的。
面向高级语言的优化实现改进

优化的目的
尽可能缩短高级语言和机器语言间的语义差距
衡量效率的主要标准
程序的编译时间和长度

优化的基本思想
对高频指令增设与之语义差距小的新指令; 面向编译,优化代码生成; 设法改进指令系统,使其与各种语言间的语义差距都同
等缩小; 让机器具有分别面向各种高级语言的多种指令系统、多 种系统结构; 发展高级语言计算机。
寻址方式的种类
变址寻址
ADD R3,(R1+R2)
寄存器间接寻址 ADD R1,@(R3) 自增自减寻址 ADD R1, (R2)+
R3R3+M[R1+R2]
R1 R1+M[M[R3]] R1 R1+M[R2] R2 R2+d
V:当前指令集结构中所使用的一些操作数寻址方式 V:寻址方式使用情况统计结果
操作码的Hufmann编码
操作码的Hufmann编码
操作码的Hufmann编码
操作码的Hufmann 编码
例(续)
操作码的Hufmann编码
扩展操作码宜于等长扩展 便于分级译码

如48 12码,步长为4。
操作码的Hufmann编码
15/15/15码
操作码的Hufmann编码
15/15/15码 8/64/512码
第二章 数据表示与指令系统
2.2 寻址方式
寻址方式
寻址方式 指令按什么方式寻找(或访问)到所需的操作 数或信息。 寻址方式分析 目的:以最短的位描述给定的寻址方式。 逻辑地址与主存物理地址
2.2.1 寻址方式分析
寻址方式分析
存放数据或信息的部件通常有通用寄存器、主存、 堆栈以及像控制寄存器、设备寄存器及某些专门 寄存器等。 V: CPU中用来存储操作数的存储单元 面向寄存器的寻址方式 速度快,增加硬件 面向主存的寻址方式 容量大,速度稍慢,减少寄存器占用 面向堆栈的寻址方式 实现子程序、递归,减轻编译负担
寻址方式分析
编址方式(寄存器组、主存、I/O) 1)统一编址 所有从“0”开始 优点:可简化指令系统。 缺点:使地址形成复杂化。 2)分类编址 各自从“0”开始 优点:指令较短、地址形成简单、编址空间较大。 缺点:区分每类部件的标志。 3)隐含编址 事先约定好 优点:速度比较快,不必进行地址计算。
操作码的Hufmann编码
Hufmann树的构造
选取两个概率最小的节点合并成一个概率值是两者 之和的新节点,并把这个新节点与其他还没有合并 的节点一起形成新节点集合。 在新节点集合中选取两个概率最小的节点进行合并, 如此继续,直至全部节点合并完毕。 最后得到的根节点的概率值等于1。 每个节点都有两个分支,分别用0和1表示。 从根节点开始,沿箭头所指方向,到达属于该指令 的概率节点,把沿线经过的代码组合起来,就得到 这条指令的操作码编码。
ST L LA ST L REG, SAVE REG, VARIABLE REG, N, (REG) REG, VARIABLE REG, SAVE ; ; ; ; ; (REG)SAVE REG(VARIABLE) REG (REG)+N REG VARIABLE REG (SAVE)
逻辑地址与主存物理地址
IBM370
主存宽度64位
V:访问不同操作数大小的频率
64位 主存宽度64位
保证访存速度 造成浪费
速度和价格的权衡
字节地址为:… 半字地址为:… 0 单字地址为:… 00 双字地址为:… 000
2.3 指令系统的设计和优化
V:高级语言计算机指令系统
大多数采用分类编址的方法 缺点:设计不规范。
寻址方式的种类
寄存器寻址
ADD R4,R3
立即寻址 ADD R4,#3
R4R4+R3
R4 R4+3 R1 R1+M[2000] R4 R4+M[R1]
直接寻址
ADD R1, (2000) 间接寻址 ADD R4, (R1) 相对寻址(偏移寻址)
ADD R4,100(R1) R4 R4+M[100+R1]
地址码长度可以有很宽的变化范围,是可以和可 变长操作码配合 ——长操作码配短地址码
采用多种地址制式:三、二、一、0地址 最常用的指令操作码最短,其地址段个数多,功 能增强
指令系统的优化设计
目前,指令系统的优化设计有两个截然相反的方向。 1、增强指令的功能 强化指令功能,把一些原来由软件实现的、常用的功 能改用硬件的指令系统来实现复杂指令系统计算机 (complex instruction set computer,CISC)。
面向操作系统的优化实现改进

优化的目的
尽可能缩短操作系统和系统结构间的语义差距

衡量效率的主要标准
操作系统的时间和存储空间
优化的基本思想
根据高频指令(串)改进; 增设专用于操作系统的新指令; 将高频、影响大的“机构型”软件子程序硬化或固化; 发展让操作系统由专门的处理机来执行的功能分布处理
V:不同立即值大小的使用分布情况
操作码的优化表示
研究操作码的优化表示,是 为了缩短指令字的长度,减少程序的总位数 及增加指令字所能表示的操作信息和地址信息。

H ':操作码的实际平均长度
操作码的Hufmann编码
假设一台模型计算机共有7种不同的操作码, 已知各种操作码在程序中出现的概率如下表, 计算采用Huffman编码法的操作码平均长度, 并计算固定长操作码和Huffman操作码的信息 冗余量。
XX

XX


YY

翻译
0 8


B2
32 36
L
B1
16 20
D1
D2
47
(B1)+D1+G ((B2)+D2+((B1)+D1+G)) G=0, 1, ..., L-1
面向目标程序的优化方法
3.增强程序控制指令的功能
在CISC计算机中一般均设置了多种程序控制指令。
例如,VAX-11/280有29种转移指令。
2、尽量简化指令功能 尽量简化指令功能,只保留那些功能简单,能在一个 节拍内执行完成的指令,较复杂的功能用一段子程序 来实现 计算机系统称为精简指令系统 (reduced instruction set computer,RISC)。
CISC指令系统的发展
面向目标程序优化实现的改进 面向高级语言优化实现的改进 面向操作系统优化实现的改进
相关文档
最新文档