第2讲 计算机组成与体系结构

计算机体系结构分类(★★)

 计算机体系结构分类——Flynn

指令的基本概念

一条指令就是机器语言的一个语句,它是一组有意义的二进制代码,指令的基本格式如下:

操作码部分指出了计算机要执行什么性质的操作,如加法、减法、取数、存数等。地址码字段需要包含各操作数的地址及操作结果的存放地址等,从其地址结构的角度可以分为三地址指令,二地址指令、一地址指令和零地址指令。

寻址方式

指令寻址的方式包括两部分:

  • 一种是指令的寻址
    (是不是很晕?指令寻址怎么又包括指令寻址。hh因为这里的指令寻址指的是具体的操作码上发出的指令。是狭义上的指令寻址。)
  • 另一种是数据的寻址(可以理解为地址码上操作数的地址寻址)

数据寻址有哪些?

立即寻址主要执行取指令访存1次,不需要执行指令访存,一共访存1次。

直接寻址主要执行取指令访存1次,还有执行指令访存1次,一共访存2次。

间接寻址执行取指令访存1次,还要执行指令访存2次,一共访存3次。

寄存器寻址主要执行取指令访存1次,由于访问的是寄存器因此不需要执行指令访存,一共访存1次。

寄存器间接寻址主要执行取指令访存1次,还有一次是寄存器执行指令访存1次,一共访存2次。

CISC与RISC

在计算机系统结构发展的过程中,指令系统的优化设计有两个截然相反的方向,一个是增强指令的功能,设置一些功能复杂的指令,把一些原来由软件实现的、常用的功能改用硬件的指令系统来实现,这种计算机系统称为复杂指令系统计算机(Complex Instruction Set Computer,CISC);另一种是尽量简化指令功能,只保留那些功能简单,能在一个节拍内执行完成的指令,较复杂的功能用一段子程序来实现,这种计算机系统称为精简指令系统计算机(Reduced Instruction Set Computer,RISC)。

CISC与RISC比较,分哪些维度?

指令数量、指令使用频率、寻址方式、寄存器、流水线支持、高级语言支持

CISC:复杂,指令数量多,频率差别大,多寻址

RISC:精简,指令数量少,操作寄存器,单周期,少寻址,多通用寄存器,流水线。

流水线技术(★★★★)

概念

相关参数计算:流水线执行时间计算、流水线吞吐率、流水线加速比、流水线效率

流水线是指在程序执行时多条指令重叠进行操作的一种准并行处理实现技术。各种部件同时处理是针对不同指令而言的,它们可同时为多条指令的不同部分进行工作,以调高各部件的利用率和指令的平均执行速度。

 流水线计算

若每一条指令都可以分解为取指、分析和执行三步。己知取指时间t取指=4△t,分析时间t分析=3△t,执行时间t执行=5△t。如果按串行方式执行完100条指令需要 (1) △t。如果按照流水方式执行,执行完100条指令需要 (2) △t。
供选择的答案
(1)A. 1190        B.1195        C. 1200        D.1205
(2)A. 504         B.507         C. 508         D.510
(1)(4+3+5)*100=1200,选择C
(2)代入公式:(4+3+5)+(100-1)*5=507,选择B

超标量流水线

例题:

每条指令由取指、分析、执行3 个子部件完成,并且每个子部件的执行时间均为△t。若采用常规标量单流水线处理机(即该处理机的度为1),连续执行16 条指令,则共耗时(14)△t。若采用度为4 的超标量流水线处理机,连续执行上述任务16 条指令,则共耗时(15)△t。

(14) A. 16 B. 18 C. 32 D. 48

(15) A. 4 B. 5 C. 6 D. 8

答案(14)B,(15)C

试题分析:采用常规标量单流水线处理机(即该处理机的度m=1),连续执行16 条指令的时空图如下图1 所示,从中可以看出,连续执行16 条指令所需时间为18△t。

当采用度m 为4 的超标量流水线处理机,连续执行上述任务16 条指令时,时空图如下图2 所示。从中可以看出,连续执行16 条指令所需时间为6△t。

流水线吞吐率计算

流水线的吞吐率(Though Put rate,TP)是指在单位时间内流水线所完成的任务数量或输出的结果数量。计算流水线吞吐率的最基本的公式如下:

TP=指令条数/流水线执行时间

流水线最大吞吐率:

以例题一为基础来计算吞吐率?
答: 100/507约等于0.2。

存储系统(★★★★) 

 层次化存储结构

Cache-概念

在计算机的存储系统体系中,Cache是访问速度最快的层次(若有寄存器,则寄存器最快)

使用Cache改善系统性能的依据是程序的局部性原理

cache在存储系统中的位置

Cache-映像

直接相连映像:硬件电路较简单,但冲突率很高。

全相连映像:电路难于设计和实现,只适用于小容量的Cache,冲突率较低。

组相连映像:直接相连与全相连的折中。

地址映像是将主存与Cache的存储空间划分为若干大小相同的页(或成为块)

列如:某机的主存容量为1GB,划分为2048页,每页512KB;Cache容量为8MB,划分为16页,每页512KB。

  • 直接相连映像

优点:地址换算快,更好的运行效率。

缺点:冲突率太高,假设0区的第0块在和cache的第0块传递数据,第二区的第0块就不能传输,即使有别的cache块空闲着也不能传输,只能等。太浪费资源了。

  • 全相连映像

优点:很好的解决了冲突高的问题,资源利用率高

缺点:造价相对昂贵,地址转换速度较慢。

  • 组相连映像

是前两种的集大成者。组采用直接映像,块采用全相连映像。 

举例:

例题:假设某个计算机的主存地址空间大小为256MB,按字节编址,其数据Cache有8个Cache行,行长为64B。

256MB = 2^28B,所以主存地址共有28位。

其中,Cache行长为64B = 2^6B

假设某个计算机的主存地址空间大小为256MB,采用2路组相联,按字节编址,其数据Cache有8个Cache块,块长为64B。

256MB = 2^28B,所以主存地址共有28位。

其中,Cache行长为64B = 2^6B,又因为是2路组相联一共有8个cache块所以一共有4组4=2^2所以组号为2位

所以块内地址占6位,组号为2位,主存块号地址占据28-6-2= 20位。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值