计算机组成原理复习笔记 本文关键词:复习,原理,计算机,笔记
计算机组成原理复习笔记 本文简介:计算机组成原理复习笔记前件知识:基本电路知识与、或、非、异或、与非、或非等如下表所示:真值表与或非(A)异或与非或非AB只0就为0只1就为1取反相异为1只0就为1只1就为000001011010111101001011011110000第一章计算机系统概论1.计算机系统组成计算机系统组成:计算机组成
计算机组成原理复习笔记 本文内容:
计算机组成原理复习笔记
前件知识:
基本电路知识
与、或、非、异或、与非、或非等如下表所示:
真值表
与
或
非(A)
异或
与非
或非
A
B
只0就为0
只1就为1
取反
相异为1
只0就为1
只1就为0
0
0
0
0
1
0
1
1
0
1
0
1
1
1
1
0
1
0
0
1
0
1
1
0
1
1
1
1
0
0
0
0
第一章
计算机系统概论
1.计算机系统组成
计算机系统组成:计算机组成原理由硬件系统与软件系统组成。
根据冯诺.依曼的存储程序控制原理由五大部件组成:运算器、控制器、存储器、输入设备和输出设备。
软件系统:系统软件、应用软件
计算机系统
硬件系统
软件系统
中央处理器(CPU)
外设:输入、输出设备、外存储器等
主机
内存储器:DDR2,DDR3
运算器
控制器
寄存器
系统软件
应用软件
操作系统
数据库管理系统
程序编译工具
通用软件
特制软件
摩尔定律:记住价格与时间成反比。
2.计算机系统性能指标
字长(处理机字长)是指计算机处理器一次能够完成的二进制位数(16,32,64)。
MIPS是指计算机处理器每秒执行百万条指令。
3.计算机系统的层次结构
计算机系统的层次结构分为五级以下图所示:
第4级
第3级
第2级
第1级
第5级
第二章
运算方法和运算器
1.原码、反码、补码、移码的计算方法
性质
原码
反码
补码
移码
正数
原码反码补码一样
移码主要用于表示浮点数中的阶码
负数
连同符号位一起使用二进制表示
除符号位以外其余位取反(0变1,1变0)
除符号位外其余位取反加1(性质等于在反码基础之上加1)
零
[+0]原=00…00
[-0]原=10…00
[+0]反=00…00
[-0]反=11…11
[+0]补=[-0]补=00…00
补码的真值公式:将所有位上的数按基数2n-1(n为数所在的位置)相乘后求出和,这个和的结果就是补码的真值。计算某个数大于或小于某个值得条件。
例:[X]补=(01101)2,[Y]补=(11101)2。则X与Y的十进制数是多少。
X=-0×24+1×23+1×22+0×21+1×20=8+4+1=(+13)10
Y=-1×24+1×23+1×22+0×21+1×20=-8+4+1=(-1)10
2.原码、反码、补码、移码的表示范围(n位二进制位数)
码制
定点整数
定点小数
范围
举例(n=8)
范围
原码
-(2n-1-1)~+(2n-1-1)
-127~+127
-(1-2-(n-1))~+(1-2-(n-1))
反码
-(2n-1-1)~+(2n-1-1)
-127~+127
-(1-2-(n-1))~+(1-2-(n-1))
补码
-2n-1
~+(2n-1-1)
-128~+127
-1~+(1-2-(n-1))
移码
-2n-1
~+(2n-1-1)
-128~+127
-1~+(1-2-(n-1))
浮点数的表示范围就省略了。
3.BCD和ASCLL码
BCD:俗称8421码。使用4位二进数才表现一位十进制数。(4位)
ASCLL码:用于表示字符。(用一个字节八位来表示,只使用了七位。最前后一位始终为0).记住特殊的字符的ASCLL码值:
字符
十进制数
ASCLL码
补充说明
A
65
1000001
大小到小写+32.小写到大小-32.要求字符在这三个上面推即可获得。
a
97
1100001
0
48
0110000
4.校验码:奇偶校验
奇偶校验(含校验码的个数)
110101
数
奇校验
奇数个1
110101
1
偶校验
偶数个1
110101
0
奇偶校验提供奇数个错误检测,无法检测偶数个错误,更无法识别错误信息的位置。
5.变形补码与溢出
判断溢出方法:
(1)双符号位
两个符号位异号,用异或门实现
变形补码是判断溢出的一种检测方法。采用变形补码后,任何正数,两个符号位都是“0”,任何负数,两个符号后都是“1”。如果两个数相加后,在符号位中出现了“10”或“01”则说明溢出。参考下表判断是否溢出。
(2)单符号位
最高位的进位和符号位进位异号。
结果溢出判断依据下表所示:
符号位
结果
0
0
正数
0
1
正溢出
1
0
负溢出
1
1
负数
6.运算器
(1)运算器是中央处理器的组成部分。主要功能是完成计算机的算术运算与逻辑运算。
运算器的组成部件有:算术逻辑运算单元(ALU)、数据缓冲寄存器、通用寄存器、多路转换器和数据总线等逻辑构件。
(2)提高运算器高速性采用的措施:
l
先行进位
l
阵列乘除法
l
流水线
(3)74181ALU(算术逻辑运算单元)
:4位算术逻辑运算单元,支持16种逻辑运算、16种算术运算
组内先行进位
(4)74182CLA(先行进位发生器)
先行进位部件,可以实现多组74181ALU的组间先行进位
组合形式
(5)ALU的设计:片内先行进位,片间串行进位。16位ALU和32位ALU的设计。
(6)编址:字节编址与字编址
字节编址:
某计算机内存按字节编址,内存地址区域从44000H到6BFFFH,共有___(11)___K字节。若采用16K×4bit的SRAM芯片,构成该内存区域共需___(12)___片。
算法为6BFFFH-44000H+1H=28000H=163840/1024=160K
(1+F=16
逢十六进一,所以6BFFFH+1H=6C000H)
内存按字节编址,这163839应该是Byte。内存160K,8bit,采用16K×4bit的SRAM芯片,需要160/16×8/4=20片
字编址:
给出容量、字长,计算寻址范围
例:
字长32位,存储容量64KB,寻址范围
64KB/32=64K*8/32=16K
按字编址的寻址范围是:0~64M。也即0000000~3FFFFFFH
计算步骤:256M字节=256*1024*1024*8位,按计算机按32位字长单字编址。
则单字的位数为32位,范围为(256*1024*1024*8位)/32位=64M。
此外若计算机按32位字长半字编址。则半字的位数为16位,范围为(256*1024*1024*8位)/16位=128M
计算机按32位字长双字编址。则双字的位数为64位,范围为(256*1024*1024*8位)/64位=32M
第三章
多层次的存储器
1.存储器的层次
因为对容量大、速度快、成本低要要求,在一个存储器中要求同时兼顾这三方法是不容易的。多级存储器体系结构,即使用高速缓冲存储器、主存储器、外存储器,来解决这个矛盾。CPU
可以直接访问内存储器(主存储器和cache),而不能直接访问外存储器(磁盘和光盘)。
2.外存和内存比较
存储器
容量
速度
价格
内存储器
小
快
高
外存储器
大
慢
低
3.半导体随机读写存储器
半导体随机读写存储器分为静态随机存储器(SRAM)和动态随机存储器(DRAM)的。
存储器
用处
刷新
行列地址复用
SRAM
cache
不需要
不是
DRAM
内存
需要
是
4.DRAM的两种刷新方式
DRAM刷新方式:集中式刷新、分散式刷新;
集中式刷新:每隔一段时间连接刷新所有行。
分散式刷新:每隔一段时间刷新一行。
5.主存的性能指标
存储容量、存取时间、存储周期、存储器带宽。
存储容量:存储器中可以存放内容的存储单元总数。
存取时间:一次读/写的时间。
存储周期:存储器进行连续读和写操作所允许的最短时间间隔。
存储器带宽:单位时间内存取的信息量(b/s,B/s做量度)。
存取时间、存储周期、存储器带宽三个概念反映了主存的速度指标。
6.存储器扩展
存储器容量的扩充主要有字长位数扩展和字存储容量扩展。
(1)字长位数扩展
d=设计要求的存储器容量/已知芯片存储容量
例:利用1MX4位的SRAM芯片,设计一个存储容量为1MX8位的SRAM存放器。
d=(1MX8)/(1MX4)=2(片)
(2)字存储容量扩展
例:利用1MX8位的DRAM芯片,设计2MX8位的DRAM存储器。
d=(2MX8)/(1MX8)=2(片)
7.地址线与数据线
一个512K×16的存储器,其地址线和数据线的条数
地址线:512K=512*1024=29*210=219,所以地址线为19。
数据线:16就是数据线。
8.只读存储器和闪速存储器
只读存储器(ROM):掩模ROM,可编程ROM(EPROM和E2PROM);
闪速存储器:Flash存储器。
EPROM:光擦可编程的只读存储器
E2PROM:电擦可编程的只读存储器
9.提高存储器访问速度的方法:
l
双端口存储:
两套相互独立的读写电路
l
交叉存储:同时读写,顺序传送(流水)
l
Cache:解决CPU和主存之间的速度匹配问题
10.地址映射和替换算法
知识点
名称
解释
主存与Cache地址映射
全相联映射
主存中的一块的地址(块号)和块的内容(字)一起放在cache的行中,块地址存在cache行的标记部分中。
直接映射
一种多对一的映射关系,但一个主存块只能复制到cache中一个特定位置。
组相联映射
前两种折衷方案。
Cache中替换算法(策略)
最不经常使用(LFU)
把一段时间内访问次数最少的那行数据换出。
近期最不经常使用(LRU)
近期长久未被访问的行换出。
随机替换
从特定位置随机选取一行换出即可。
11.虚拟存储器
采用虚拟存储器的主要目的是扩大存储器空间,并能进行自动管理。
常用的虚拟存储器系统由哪两级存储器组成?
主存——辅存
第四章
指令系统
1.指令
计算机程序:由一系统机器指令组成。
机器指令:被称为指令,由操作码字段(操作性质)与地址码字段(操作数,地址,结果等)组成。介于微指令与宏指令之间。每一条指令可以完成一个独立的算术运算或逻辑运算操作。
从操作数的物理位置来说,可将指令归结为三种类型:
寄存器—寄存器型(RR)、寄存器—存储器型(RS)、存储器—存储器型(SS)
2.指令系统
指令系统类别
特点
精简指令系统(RISC)
①.
选取使用频率最高的一些简单指令,指令条数少;
②.
指令长度固定,指令格式种类少,寻址方式种类少;
③.
只有取数/存数指令访问存储器,其余指令的操作都在寄存器之间进行。
复杂指令系统(CISC)
指令多,寻址方式多等。
3.计算机寻址方式
寻址方式种类
解释
隐含寻址
指令中隐含着操作数的地址
立即寻址
指令中直接给出操作数
直接寻址
指令中给出操作数在内存中的存储地址
间接寻址
指令中给出操作数地址在内存中的地址
寄存器寻址
指令中给出操作数在寄存器的地址。
寄存器间接寻址
操作数地址在通用寄存器中,操作数在通用寄存器指定的内存地址中
偏移寻址
直接与寄存器寻址方式结合:相对寻址,基址寻址,变址寻址。
段寻址
微机中采用这种寻址方式
堆栈寻址
寄存器堆栈和存储器堆栈
4.程序控制类指令的功能是?
答:程序控制指令用于程序执行流程的控制。程序控制指令又称转移指令,主要是改变程序执行的顺序。
5.汇编语言特性:硬件相关、编制难度大、执行速度快。
第5章
中央处理器
1.中央处理器
中央处理器(CPU)的作用:指令控制,操作控制,数据加工。由运算器、控制器和寄存器组构成。
CPU中的主要寄存器有:程序计数器(PC)、指令寄存器(IR)、地址寄存器(AR)、缓冲寄存器(DR),通用寄存器(R0~R3)、。状态条件寄存器(PSW)。
2.操作控制器
名称:操作控件器
作用
根据指令操作码和时序信号产生各种操作控制信号
分类
硬布线控制器
原理
公式
控制信号是指令操作码译码器输出Im、时序信号(节拍电位Mi,节拍脉冲Tk)和状态条件信号Bj的逻辑函数。
C=f(Im,Mi,Tk,Bj);
微程序控制器
原理:主要由控制存储器、微指令寄存器和地址转移逻辑三大部分组成,其中微指令寄存器分为微地址寄存器和微指令寄存器两部。
原理图如下图所示:
OP
地址转移逻辑
微地址寄存器
P字段
控制字段
控制存储器
地址译码码头
指令寄存器
IR
状态条件
微命令信号
微命令
寄存器
…
…
微程序控制器组成原理框图
3.指令周期
指令周期是指CPU从主存取出一条指令加上执行这条指令的时间。
4.水平型微指令与垂直型微指令比较
比较
水平性微指令一次可完成多个微操作,垂直型一次只能完成1到2个微操作。
①.
水平型微指令并行操作能力强,效率高,灵活性强,垂直型指令则较差。
②.
水平型微指令执行一条指令的时间短,垂直型微指令执行时间长。
③.
由水平型微指令解释指令的微程序,有微指令字较长而微程序短的特点。
垂直型微指令则相反,微指令字较短而微程序长。
④.
水平型微指令用户难以掌握,而垂直型微指令与指令比较相似,相对来说,比较容易掌握。
5.并行处理技术
并行性:并发性是指两个以上的事件在同一时间间隔内发生。
一个m段流水线处理器提高的效率
计算:第一条指令m,其他指令1,若有n条指令则m+(n-1),效率mn/[m+n-1]
若n很大,则mn/[m+n-1]约等于mn/n,即m
第六章
总线系统
1.系统总线
总线是构成计算机系统的互联机构,是多个系统功能部件之间进行数据传递的公共通路。
总路线分类
解释
内部总线
CPU内部连接各寄存器及运算部件之间的总线
系统总路线
CPU同其他高速功能部件之间连接的总线
分类名称
功能
数据总线
传输数据
控制总线
提供主存、I/O接口设备的控制信号和响应信号及时序信号
地址总线
指定主存和I/O设备接口电路的地址
I/O总路线
I/O设备之间互连的总线
2.总线仲裁方式
按仲裁电路位置分
解释
集中式仲裁
每个功能模块有两条线连到总线控制器:一条送往仲裁器的总线请求信号线BR,一条是仲裁器送出的总线授权信号线BG。
分类
说明
链式查询方式
解释
在查询链中离总线最近的设备具有最高优先级,离总线仲裁器越远,优先级低。
优点
用很少线就可以实现总线仲裁,易扩充设备。
缺点
低优先级设备难得到响应,对电路故障最敏感。
计数器定时
查询方式
解释
计数器来实现优先级的序列变更。
优点
可改变优先次序。
缺点
灵活性是以增加线数为代价的,若从零开始,低优先级设备难得到响应。
独立请求方式
解释
根据排队电路,它根据一定的优先次序决定设备请求的响应。
优点
响应时间最快,即确定响应设备时所花费时间少。对优先次序的控制相当灵活。
缺点
分散(分布)式仲裁
分布式仲裁不需要集中的总路线仲裁器,每个潜在的主能模块都有自己的仲裁号和仲裁器。需要将自己的仲裁号与共享的仲裁号进行比较,大于时仲裁号将被收回。最后,获胜者的仲裁号留在仲裁总线上。
3.单总线系统
从信息流的传送效率来看,单总线系统工作效率最低。
4.同步通信比异步通信具有较高的传输频率的原因
原因:用一个公共的时钟信号(统一时序信号)进行同步
第七章
外存与I/O设备
1.磁盘存储器
技术指标
解释
存储密度
存储密码分为道密度、位密度、面密度。
存储容量
可以存储的字节总数。
平均存取时间
根据读写指令,磁头从一个位置转移到新的记录位置,至开始读或写数据所需要的时间。
组成:寻道时间,等待时间,数据传输时间。
平均等时间等于转一圈时间的一半
数据传输率
在单位时间内向主机传送数据的字节数
2.磁盘驱动器向盘片磁层记录数据时,采用的写入方式是串行的还是并行的?
答采用的是并行。
第八章
输入输出系统
1.I/O控制方式
I/O控制方式
解释
实现方式
说明
程序查询方式
程序实现
是一种最简单的输入输出方式,数据传输靠计算机程序控件。
程序中断方式
由外设主动来通知CPU,当中断来时,CPU停止现行程序,转向中断处理程序。外设有中断优先级别。
说明的问题:尽管中断请求随机,只有在公操作时才处理中断请求
直接内存访问(DMA)方式
硬件实现
是一种全完由硬件执行I/O交换的工作方式。既考虑到中断响应,又节约中断开销。
通道方式
磁盘驱动器向盘片磁层记录数据时,采用的写入方式是串行的还是并行的?
2.DMA控制器与CPU分时使用内存时,通常采用那几种方法?
答:停止CPU访问、周期挪用、DMA和CPU交替访存。
采用DMA方式传送数据时,每传送一个数据要占用一个存储周期的时间。
计算题:
1、负整数原码表示,反码表示,补码表示和移码表示(用8位二进制表示,并设最高位为符号位,真值
为7位)。例如:-12
解题思路:
原码:先将十进制数换算成二进制表示。将其使用八位二进制进行表示,并将最高位设置为符号位,如正数是0表示,负数为1。这样表示出来的是原码。
反码:正数的反码为原码。负数为原码除符号以外其余位取反(原来为1的,反码中则为0,否则为1)。
补码:正数的补码为原码。负数为反码+1。注意溢出的判断(参考上面的解释)。
移码:正数与负数的移码都为补码符号位取反之后表示。
根据上述求解过程得出:
[-12]原=10001100;[-12]反=11110011;[-12]补=111110100;[-12]移=01110100;
2、已知X=(1100)2,Y=(-1101)2,用变形补码计算X+Y、
X-Y,并指出是否溢出。
解题思路:
先把X,Y原码,补码求出。并在在补码中使用两来来表示符号位进位情况。使用两个数进行相加结果两位符号进位中出现”01”和”10”则出现溢出情况。01为正溢,10为负溢。减法中,可以把减数当成负数进行计算,则X-Y=X+(-Y)。
根据上述计算规则,结果:
[X]原=[X]补=001100;
[Y]原=11101;[Y]补=110010;[-Y]补=001101;
X+Y=[X]补+[Y]补。
[X]补
001100
+[Y]补
110010
---------------------------------
[X+Y]补
111110
两个符号位出现了“11”,没有溢出。
X-Y=[X]补+[-Y]补。
[X]补
001100
+[-Y]补
001101
---------------------------------
[X+Y]补
011001
两个符号位出现了“01”,表示正溢出。
3、用原码阵列乘法器计算X×Y,X为0011,Y为-1101。
解题思路:先求出[X]原、[Y]原。再求出|X|和|Y|。|X|X|Y|。
[X]原=0011;
[Y]=11101,[Y]原=11101;
|X|=11;|Y|=1101;
|Y|
X
|X|
=
1101
X
11
------------------------
1101
1101
-------------------------
100111
固[XXY]原=1
100111.
简答题:
1.一个定点补码整数[N]补=XnXn-1……X0,写出补码的真值公式。
解:[N]补的真值:-Xn*2n-1+Xn-1*2n-2+….+X0*2n-n;
例:[X]补=011101;[Y]补=111101;求其补码真值;
[X]补补码值为0*25+1*24+1*23+1*22+0*21+1*20=0+16+8+4+0+1=29
[Y]补补码值为-1*25++1*24+1*23+1*22+0*21+1*20=-32+16+8+4+0+1=-3
2.
利用定点小数的补码真值公式,解决问题,例P62的第2题
例P62的第2题:
设[x]补=a7.a6a5….a0,其中ai取0或1,若要x>-0.5,求a0,a1,a2,…,a6的取值。
当a7=0时,无论a6~0取什么值,[x]补的真值都>-0.5;
当a7=1时,a6=1,a5~0之间至少有一个不为0.则[x]补的真值会>-0.5;
例:[x]补=1.1110000,其真值为;
[x]补=-1*20+1*2-1+1*2-2+1*-3+0*2-4+0*2-5+0*2-6+1*2-7=-1+0.5+0.25+0.125+0+0+0+0=-0.125;
3.
指令和数据均存放在内存中,计算机如何从时间和空间上区分它们是指令还是数据?
从时间上讲,取指令事件发生在“取指周期”;取数据事件发生在“执行周期”。
从空间上讲,从内存读出的指令流向控制器(指令寄存器);从内存读出数据流流向运算器(通用寄存器)。
4.
提高存储器速度可采用哪些措施,请说出至少五种措施。
①
采用高速器件
②
采用cache
(高速缓冲存储器)
③
采用多体交叉存储器
④
采用双端口存储器
⑤加长存储器的字长
5.
请说明指令周期、机器周期、时钟周期之间的关系。
指令周期是指取出并执行一条指令的时间,指令周期常常用若干个CPU周期数来表示,CPU周期也称为机器周期,而一个CPU周期又包含若干个时钟周期(也称为节拍脉冲或T周期)。
6.
RISC指令系统的三个重要特点是什么?
(1)选取使用频率最高的一些简单指令,以及很有用但不复杂的指令。
(2)指令长度固定,指令格式种类少,寻址方式种类少。
(3)只有取数/存数指令访问存储器,其余指令的操作都在寄存器之间进行。
应用题
应用题
1、8K*8位EPROM芯片组成16K*16位的只读存储器,试问:
(1)
数据寄存器多少位?
16
(2)
地址寄存器多少位?
14
(3)
共需要多少个EPROM芯片?
16K*16/(8K*8)=4
(4)画出此存储器与CPU的连接图。
A13
CPU
A12-A0
8K×8
8K×8
8K×8
8K×8
D7-D0
D15-D8
D15-D0
解题过程
:(下同)
(1)
数据寄存器位数就是就是扩充后的数据位数即16K*16位中的后一个16。
(2)
即16K=214中14。
(3)
D=设计要求的存储器容量/已知芯片存储容量
(4)
图如上所示。
8K*8位EPROM芯片组成32K*16位的只读存储器,试问?
(1)
数据寄存器多少位?
16
(2)
地址寄存器多少位?
15
(3)
共需要多少个EPROM芯片?
32K*16/(8K*8)=8
(4)画出此存储器与CPU的连接图。
2-4译码器
CPU
A14
A13
8K×8
8K×8
8K×8
8K×8
A12-A0
8K×8
8K×8
8K×8
8K×8
D7-D0
D15-D8
D15-D0
2、指令格式如下所示,OP为操作码字段,试分析指令格式特点。
(1)单字长还是双字长,单地址还是多地址
(2)OP操作码字段最多指定多少种操作
(3)寻址方式、
RS、SS、RR中的何种,寄存器个数,寻址方式个数
参考书上的例子。P121
3.
画出微程序控制器组成框图。P158,图5.23
OP
地址转移逻辑
微地址寄存器
P字段
控制字段
控制存储器
地址译码码头
指令寄存器
IR
状态条件
微命令信号
微命令
寄存器
…
…
微程序控制器组成原理框图
4.请画出中断处理过程流程图。
5.
解释流水线中都有哪些主要问题,其中数据相关有哪几种,举一例说明。
写出流水线中的三类数据相关,并判断以下指令各存在哪种类型的数据相关。
P171-P172
解:要使用流水线具有良好的性能,必须使流水线畅通流动,不发生断流。但由于流水过程中会出现以下三种相关冲突,实现流水线的不断流是困难的,这三种相关是资源相关、数据相关和控制相关。
三类数据相关:写后读(RAW)相关;读后写(WAR)相关;写后写(WAW)相关。
指出存在那些数据相关。参考P172。
6.
用时空图法证明流水计算机比非流水计算机具有更高的吞吐率。
指令流水线有取指(IF)、译码(ID)、执行(EX)、写回寄存器堆(WB)4个过程段
P170
图5.31
b
c
P170
图5.31
(1)若有30条指令连续输入此流水线,画出流水处理的时空图。
C的右侧加上
(2)假设时钟周期为50ns,求流水线的实际吞吐率(单位时间里执行完毕的指令数)。
P184
13题
指令数目/指令执行时间
30/[(4+29)*50*10-9]=
1.82*107条/秒
(3)求流水线的加速比。
非流水线执行时间/流水线执行时间
30*4/[4+29]=3.63