组成原理.docx
《组成原理.docx》由会员分享,可在线阅读,更多相关《组成原理.docx(21页珍藏版)》请在冰豆网上搜索。
![组成原理.docx](https://file1.bdocx.com/fileroot1/2023-8/5/e26ef615-16b8-4f95-a89d-6b517634c0d8/e26ef615-16b8-4f95-a89d-6b517634c0d81.gif)
组成原理
4、冯·诺依曼型计算机的主要设计思想是什么?
它包括那些主要组成部分?
计算机的硬件是由有形的电子器件等构成的,它包括运算器、存储器、控制器、适配器、输入输出设备。
传统上将运算器和控制器成为CPU,而将CPU和存储器成为主机。
存储程序并按地址顺序执行,这就是冯·诺依曼型计算机的主要设计思想。
5、什么是存储容量?
什么是单元地址?
什么是数据字?
什么是指令字?
存储器所有存储单元的总数成为存储器的存储容量;存储器中是由许多存储单元组成的,每个存储单元都有编号,称为单元地址;如果某字代表要处理的数据,则称为数据字;如果某字为一条指令,则称为指令字。
9、什么是指令?
什么是程序?
指令是机器所能领会的一组编排成特定格式的代码串,它要求机器在一个指令周期内,完成一组特定的操作。
程序是为特定问题求解而设计的指令序列
7、用16K×16位的DRAM芯片构成64K×32位存储器。
问需要多少个这样的DRAM芯片?
画出该存储器的组成逻辑框图。
所需芯片总数(64K×32)÷(16K×16)=8片因此存储器可分为4个模块,每个模块16K×32位,各模块通过A15、A14进行2:
4译码
图C3.2
8、DRAM存储器为什么要刷新?
DRAM存储元是通过栅极电容存储电荷来暂存信息。
由于存储的信息电荷终究是有泄漏的,电荷数又不能像SRAM存储元那样由电源经负载管来补充,时间一长,信息就会丢失。
为此必须设法由外界按一定规律给栅极充电,按需要补给栅极电容的信息电荷,此过程叫“刷新”。
9、主存储器的性能指标有哪些?
含义是什么?
主存储器的性能指标有存储容量、存取时间、存储周期和存储器带宽。
在一个存储器中可以容纳的存储单元总数通常称为该存储器的存储容量。
存取时间又称存储器访问时间,是指从启动一次存储器操作到完成该操作所经历的时间。
存储周期是指连续启动两次读操作所需间隔的最小时间。
存储器带宽是单位时间里存储器所存取得信息量。
2、什么叫指令?
什么叫指令系统?
指令是机器所能领会的一组编排成特定格式的代码串,它要求机器在一个指令周期内,完成一组特定的操作。
一台计算机中所有机器指令的集合,称为这台计算机的指令系统。
4、假设某计算机指令长度为20位,具有双操作数、单操作数、无操作数三类指令格式,每个操作数地址规定用6位表示。
问:
若操作码字段固定为8位,现已设计出m条双操作数指令,n条无操作数指令,在此情况下,这台计算机最多可以设计出多少条单操作数指令?
解:
由于设定全部指令采用8位固定的OP字段,故这台计算机最多的指令条数为28=256条。
因此最多还可以设计出(256-m-n)条单操作数指令。
10、请说明指令周期、机器周期、时钟周期之间的关系。
指令周期是完成一条指令所需的时间。
包括取指令、分析指令和执行指令所需的全部时间。
机器周期也称为CPU周期,是指被确定为指令执行过程中的归一化基准时间,通常等于取指时间(或访存时间)。
时钟周期是时钟频率的倒数,也可称为节拍脉冲或T周期,是处理操作的最基本单位。
一个指令周期由若干个机器周期组成,每个机器周期又由若干个时钟周期组成。
2、说明总线结构对计算机系统性能的影响。
(1)最大存储容量
单总线系统中,最大内存容量必须小于由计算机字长所决定的可能的地址总线。
双总线系统中,存储容量不会受到外围设备数量的影响
(2)指令系统
双总线系统,必须有专门的I/O指令系统
单总线系统,访问内存和I/O使用相同指令
(3)吞吐量
总线数量越多,吞吐能力越大
6、总线的一次信息传送过程大致分哪几个阶段?
分五个阶段:
总线请求,总线仲裁,寻址(目的地址),信息传送,状态返回(或错误报告)。
7、何谓总线仲裁?
一般采用何种策略进行仲裁,简要说明它们的应用环境。
连接到总线上功能模块有主动和被动两种形态。
主方可以启动一个总线周期,而从方只能响应主方的请求。
每次总线操作,只能有一个主方占用总线控制权,但同一时间里可以有一个或多个从方。
除CPU模块外,I/O功能模块也可以提出总线请求。
为了解决多个主设备同时竞争总线控制权,必须具有总线仲裁部件,以某种方式选择其中一个主设备作为总线的下一次主方。
一般来说,采用优先级或公平策略进行仲裁。
在多处理器系统中对CPU模块的总线请求采用公平原则处理,而对I/O模块的总线请求采用优先级策略。
8、集中式仲裁有几种方式?
集中式仲裁有链式查询方式、计数器定时查询方式、独立请求方式。
9、一个计算机系统中的总线,大致分为哪几类?
一个计算机系统中的总线,大致分为三类:
(1)CPU内部连接各寄存器及运算部件之间的总线,称为内部总线。
(2)CPU同计算机系统的其他高速功能部件,如存储器、通道等互相连接的总线,称为系统总线。
(3)中、低速I/O设备之间互相连接的总线,称为I/O总线。
6、简要描述外设进行DMA操作的过程及DMA方式的主要优点。
(1)外设发出DMA请求
(2)CPU响应请求,DMA控制器从CPU接管总线的控制
(3)由DMA控制器执行数据传送操作
(4)向CPU报告DMA操作结束
(5)主要优点是数据传送速度快
第三章:
存储系统
1.有一个具有20位地址和32位字长的存储器,问:
(1)该存储器能存储多少个字节的信息?
(2)如果存储器由512K×8位SRAM芯片组成,需要多少芯片?
(3)需要多少位地址作芯片选择?
解:
(1)∵220=1M,∴该存储器能存储的信息为:
1M×32/8=4MB
(2)(1024K/512K)×(32/8)=8(片)
(3)需要1位地址作为芯片选择。
(选择两个512K×32位的存储体)
2.已知某64位机主存采用半导体存储器,其地址码为26位,若使用256K×16位的DRAM芯片组成该机所允许的最大主存空间,并选用模块板结构形式,问:
(1)每个模块板为1024K×64位,共需几个模块板?
(2)每个模块板内共有多少DRAM芯片?
(3)主存共需多少DRAM芯片?
CPU如何选择各模块板?
解:
(1)最大主存空间为:
226×64位,每个模块板容量为:
1024K×64位=220×64位
设:
共需模块板数为m:
则:
m=(226×64位)/(220×64位)=64(块)
(2).设每个模块板内有DRAM芯片数为n:
n=(
/
)×(64/16)=16(片)
(3)主存共需DRAM芯片为:
m×n=64×16=1024(片)
每个模块板有16片DRAM芯片,容量为1024K×64位,需20根地址线(A19~A0)完成模块
板内存储单元寻址。
一共有64块模块板,采用6根高位地址线(A25~A20),通过6:
64译码器译码,产生片选信号对各模块板进行选择。
3.用16K×8位的DRAM芯片组成64K×32位存储器,要求:
(1)画出该存储器的组成逻辑框图。
(2)设存储器读/写周期为0.5μS,CPU在1μS内至少要访问一次。
试问采用哪种刷新方式比较合理?
两次刷新的最大时间间隔是多少?
对全部存储单元刷新一遍所需的实际刷新时间是多少?
解:
(1)组成64K×32位存储器需存储芯片数为:
N=(64K/16K)×(32位/8位)=16(片)。
每4片组成16K×32位的存储区,有A13~A0作为片内地址,用A15、A14经2:
4译码器产生片选信号
,逻辑框图如下所示:
(2)依题意,采用异步刷新方式较合理,可满足CPU在1μS内至少访问内存一次的要求。
设16K×8位存储芯片的阵列结构为128行×128列,按行刷新,刷新周期T=2ms,则异步刷新的间隔时间为:
则两次刷新的最大时间间隔发生的示意图如下:
可见,两次刷新的最大时间间隔为tmax
tmax=15.5-0.5=15(μS)
对全部存储单元刷新一遍所需时间为tR
tR=0.5×128=64 (μS)
7.某机器中,已知配有一个地址空间为0000H-3FFFH的ROM区域。
现在再用一个RAM芯片(8K×8)形成40K×16位的RAM区域,起始地址为6000H,假定RAM芯片有
和
信号控制端。
CPU的地址总线为A15-A0,数据总线为D15-D0,控制信号为R/
(读/写),
(访存),要求:
(1)画出地址译码方案。
(2)将ROM与RAM同CPU连接。
解:
(1)依题意,主存地址空间分布如右图所示,可选用2片27128(16K×8位)的EPROM作为ROM区;10片的8K×8位RAM片组成40K×16位的RAM区。
27128需14位片内地址,而RAM需13位片内地址,故可用A15~A13三位高地址,经译码产生片选信号,方案如下:
(2)
8.存储器容量为64M,字长64位,模块数m=8,分别用顺序方式和交叉方式进行组织。
存储周期T=100ns,数据总线宽度为64位,总线周期τ=10ns.问顺序存储器和交叉存储器的带宽各是多少?
解:
信息总量:
q=64位×8=512位
顺序存储器和交叉存储器读出8个字的时间分别是:
t2=mT=8×100ns=8×10
(s)
t1=T+(m-1)
=100+7×10=1.7×10
(s)
顺序存储器带宽是:
W2=q/t2=512÷(8×10
)=64×10
(位/S)
交叉存储器带宽是:
W1=q/t1=512÷(1.7×10
)=301×10
(位/S)
9.CPU执行一段程序时,cache完成存取的次数为2420次,主存完成存取的次数为80次,已知cache存储周期为40ns,主存存储周期为240ns,求cache/主存系统的效率和平均访问时间。
解:
先求命中率h h=nc/(nc+nm)=2420÷(2420+80)=0.968
则平均访问时间为ta
ta=0.968×40+(1-0.968)×240=46.4(ns)
r=240÷40=6
cache/主存系统的效率为e e=1/[r+(1-r)×0.968]=86.2%
10.已知Cache存储周期40ns,主存存储周期200ns,Cache/主存系统平均访问时间为50ns,求Cache的命中率是多少?
解:
∵ta=tc×h+tr×(1-h)∴h=(ta-tr)/(tc-tr)=(50-200)/(40-200)=15/16=0.94
11.主存容量为4MB,虚存容量为1GB,则虚存地址和物理地址各为多少位?
如页面大小为4KB,则页表长度是多少?
解:
已知主存容量为4MB,虚存容量为1GB
∵
=4M∴物理地址为22位
又∵
=1G∴虚拟地址为30位
页表长度为1GB÷4KB=230÷212=218=256K
14.假设主存只有a,b,c三个页框,组成a进c出的FIFO队列,进程访问页面的序列是0,1,2.4,2,3,0,2,1.3,2号。
用列表法求采用LRU替换策略时的命中率。
解:
∴命中率为
第四章指令系统
1.ASCll码是7位,如果设计主存单元字长为32位,指令字长为12位,是否合理?
为什么?
解:
指令字长设计为12位不是很合理。
主存单元字长为32位,一个存储单元可存放4个ASCII码,
余下4位可作为ASCII码的校验位(每个ASCII码带一位校验位),这样设计还是合理的。
但是,设计指令字长为12位就不合理了,12位的指令码存放在字长32位的主存单元中,
造成19位不能用而浪费了存储空间。
3.指令格式结构如下所示,试分析指令格式及寻址方式特点。
解:
指令格式及寻址方式特点如下:
①单字长二地址指令;
②操作码OP可指定
=64条指令;
③RR型指令,两个操作数均在寄存器中,源和目标都是通用寄存器(可分别指定16个寄存器
之一);
④这种指令格式常用于算术逻辑类指令。
4.指令格式结构如下所示,试分析指令格式及寻址方式特点。
解:
指令格式及寻址方式特点如下:
①双字长二地址指令;
②操作码OP可指定
=64条指令;
③RS型指令,两个操作数一个在寄存器中(16个寄存器之一),另一个在存储器中,其有效地址通过变址求得:
E=(变址寄存器)±D,变址寄存器可有16个。
5.指令格式结构如下所示,试分析指令格式及寻址方式特点。
解:
指令格式及寻址方式特点如下:
①单字长二地址指令;
②操作码OP可指定
=16条指令;
③有8个通用寄存器,支持8种寻址方式;
④可以是RR型指令、SS型指令、RS型指令、
6.一种单地址指令格式如下所示,其中I为间接特征,X为寻址模式,D为形式地址。
I,X,D组成该指令的操作数有效地址E。
设R为变址寄存器,R1为基值寄存器,PC为程序计数器,请在下表中第一列位置填入适当的寻址方式名称。
解:
①直接寻址②相对寻址③变址寻址④基址寻址⑤间接寻址⑥基址间接寻址
7.某计算机字长16位,主存容量为64K字,采用单字长单地址指令,共有40条指令,试采用直接、立即、变址、相对四种寻址方式设计指令格式。
解:
40条指令需占用操作码字段(OP)6位,这样指令余下长度为10位。
为了覆盖主存64K字的地 址空间,设寻址模式(X)2位,形式地址(D)8位,其指令格式如下:
寻址模式定义如下:
X=00直接寻址有效地址E=D(直接寻址为256个存储单元)
X=01立即寻址D字段为操作数(S=D)
X=10变址寻址有效地址E=(RX)+D(可寻址64K个存储单元)
X=11相对寻址有效地址E=(PC)+D(可寻址64K个存储单元)
其中RX为变址寄存器(16位),PC为程序计数器(16位),在变址和相对寻址时,位移量D可正可负。
8.某机字长为32位,主存容量为1M,单字长指令,有50种操作码,采用页面寻址、立即、直接等寻址方式。
CPU中有PC,IR,AR,DR和16个通用寄存器,页面寻址可用PC高位部分与形式地址部分拼接成有效地址。
问:
(1)指令格式如何安排?
(2)主存能划分成多少页面?
每页多少单元?
(3)能否增加其他寻址方式?
解:
(1)依题意,指令字长32位,主存1M字,需20位地址(A19~A0)。
50种操作码,OP需6位,指令寻址方式X可取2位,指定寄存器Rn需4位。
设有单地址指令、双地址指令和零地址指令,现只讨论前二种指令。
单地址指令的格式为:
X=00时为立即寻址方式,指令的23~0位为立即数;
X=01时为直接寻址方式,指令的19~0位为有效地址。
双地址指令的格式为:
X1=10时为寄存器直接寻址方式,操作数S=(Rn);
X1=11时为寄存器间址寻址方式,有效地址E=(Rn)。
X2=00时为立即寻址方式,指令的13~0位为立即数;
X2=01时为页面寻址方式;
X2=10时为变址寻址方式,E=(Rn)+D;
X2=11时为变址间址寻址方式,E=((Rn)+D)。
(2)由于页面寻址方式时,D为14位,所以,页面大小应为214=16K字,则1M字可分为
=64个页面。
可由PC的高6位指出页面号。
(3)能增加其它寻址方式,因为寻址特征位尚有空余组合。
第五章中央处理器
2.参见下图(课本P166图5.15)的数据通路。
画出存数指令"STAR1,(R2)"的指令周期流程图,其含义是将寄存器R1的内容传送至(R2)为地址的主存单元中。
标出各微操作信号序列。
解:
"STAR1,(R2)"指令是一条存数指令,其指令周期流程图如下图所示:
6.假设某机器有80条指令,平均每条指令由4条微指令组成,其中有一条取指微指令是所有指令公用的。
已知微指令长度为32位,请估算控制存储器容量。
解:
微指令条数为:
(4-1)×80+1=241条,取控存容量为:
256×32位=1KB
8.某机有8条微指令I1-I8,每条微指令所包含的微命令控制信号如下表所示。
a-j分别对应10种不同性质的微命令信号。
假设一条微指令的控制字段为8位,请安排微指令的控制字段格式。
解:
经分析,(e,f,h)和(b,i,j)可分别组成两个小组或两个字段,然后进行译码,可得六个微命令信号,剩下的a,c,d,g四个微命令信号可进行直接控制,其整个控制字段组成如下:
11.已知某机采用微程序控制方式,其控制存储器容量为512×48(位)。
微程序可在整个控制存储器中实现转移,可控制微程序转移的条件共4个,微指令采用水平型格式,后继微指令地址采用断定方式。
请问:
(1)微指令中的三个字段分别应为多少位?
(2)画出围绕这种微指令格式的微程序控制器逻辑框图。
解:
(l)假设判别测试字段中每一位作为一个判别标志,那么由于有4个转移条件,故该字段为4位;又因为控存容量为512单元,所以下地址字段为9位,。
微命令字段则是:
(48-4-9)=35位。
(2)对应上述微指令格式的微程序控制器逻辑框图如下图所示。
其中微地址寄存器对应下地址字,P字段即为判别测试字段,控制字段即为微命令字段,后两部分组成微指令寄存器。
地址转移逻辑的输入是指令寄存器的OP码、各种状态条件以及判别测试字段所给的判别标志(某一位为1),其输出用于控制修改微地址寄存器的适当位数,从而实现微程序的分支转移(此例微指令的后继地址采用断定方式)。
12.今有4级流水线分别完成取值、指令译码并取数、运算、送结果四步操作,今假设完成各步操作的时间依次为100ns,100ns,80ns,50ns。
请问:
(1)流水线的操作周期应设计为多少?
(2)若相邻两条指令发生数据相关,而且在硬件上不采取措施,那么第二条指令要推迟多少时间进行。
(3)如果在硬件设计上加以改进,至少需推迟多少时间?
解:
(1)流水线的操作时钟周期t应按四步操作中最长时间来考虑,所以t=100ns;
(2)两条指令发生数据相关冲突情况:
:
ADDR1,R2,R3;R2+R3→R1
SUBR4,R1,R5;R1-R5→R4
两条指令在流水线中执行情况如下表所示:
ADD指令在时钟4时才将结果写入寄存器R1中,但SUB指令在时钟3时就需读寄存器R1了,显然发生数据相关,不能读到所需数据,只能等待。
如果硬件上不采取措施,第2条指令SUB至少应推迟2个操作时钟周期,即t=2×100ns=200ns;
(3)如果硬件上加以改进(采取旁路技术),这样只需推迟1个操作时钟周期就能得到所需数据,即t=100ns,或无延迟。
16.流水线中有三类数据相关冲突:
写后读(RAW)相关;读后写(WAR)相关;写后写(WAW)相关。
判断以下三组指令各存在哪种类型的数据相关。
(1)I1:
LADR1,A;M(A)→R1,M(A)是存储器单元;
I2:
ADDR2,R1;(R2)+(R1)→R2
(2)I3:
ADDR3,R4;(R3)+(R4)→R3
I4:
MULR4,R5;(R4)×(R5)→R4
(3)I5:
LADR6,B;M(B)→R6,M(B)是存储器单元;
I6:
MULR6,R7;(R6)×(R7)→R6
解:
(1)写后读(RAW)相关;
(2)不会引起相关冲突;
(3)写后读(RAW)相关。
第六章
3.用异步通信方式传送字符"A"和"8",数据有7位,偶校验1位。
起始位1位,
停止位l位,请分别画出波形图。
解:
字符A的ASCII码为41H=1000001B;
字符8的ASCII码为38H=0111000B;
串行传送波形图为:
注:
B:
起始位C:
校验位S:
停止位
17.PCI总线中三种桥的名称是什么?
桥的功能是什么?
解:
PCI总线有三种桥,即HOST/PCI桥(简称HOST桥),PCI/PCI桥和PCI/LAGACY桥。
在PCI总线体系结构中,桥起着重要作用:
(1)接两条总线,使总线间相互通信;
(2)是一个总线转换部件,可以把一条总线的地址空间映射到另一条总线的地址空间上,从而使系统中任意一个总线主设备都能看到同样的一份地址表。
(3)利用桥可以实现总线间的猝发式传送。
19.总线的一次信息传送过程大致分哪几个阶段?
若采用同步定时协议,请画出
读数据的同步时序图。
解:
分五个阶段:
请求总线、总线仲裁、寻址(目的地址)、信息传送、状
态返回(错误报告)。
读数据的同步时序图为:
20.某总线在一个总线周期中并行传送8个字节的数据,假设一个总线周期等于一个总线时钟周期,总线时钟频率为70MHZ,求总线带宽是多少?
解:
设总线带宽用Dr表示,总线时钟周期用T=1/f表示,一个总线周期传送的数据量用D表示,根据定义可得:
Dr=T/D=D×1/f=8B×70×106/s=560MB/
第八章输入输出系统
6.在图中,当CPU对设备B的中断请求进行服务时,如设备A提出请求,CPU能够响应中断吗?
为什么?
如果设备B一提出请求总能立即得到服务,问怎样调整才能满足此要求?
解:
(1)CPU不能响应中断
(2)因为同级中断不能嵌套,而A、B设备属于同级中断
(3)如果想要设备B一提出请求即能得到服务,则应该使设备B为最高优先级,这里可将设备B单独接至3级IR,处于最高优先级。
7.CPU响应中断的条件是什么?
(课堂归纳的5点)
(1)CUP内部的中断允许触发器必须是开放的,即CPU“允许中断”;
(2)外设接口中的中断使能触发器EI必须为“1”,才能把中断请求送到CPU;(3)中断请求触发器IRi必须为“1”,记录中断请求;(4)CUP内的中断屏蔽触发器IMi必须为“0”,才能使CUP受理中断;(5)CPU在现行指令结束的最后一个状态周期;(6)无DMA请求。
8.设某机有5级中断:
L0,L1,L2,L3,L4,其中断响应优先次序为:
L0最高,L1次之,L4最低。
现在要求将中断处理次序改为L1→L3→L0→L4→L2,试问:
(1)下表中各级中断处理程序的各中断级屏蔽值如何设置?
(2)若这5级中断同时都发出中断请求,按更改后的次序画出进入各级中断处理程
序的过程示意图。
解:
(1)
(2)次序改为L1→L3→L0→L4→L2(5级中断同时都发出中断请求)
9.某机器CPU中有16个通用寄存器,运行某中断处理程序时仅用到其中2个寄存器,请问响应中断而进入该中断处理程序时,是否要将通用寄存器内容保存到主存中去?
需保存几个寄存器?
解:
响应中断而进入该中断处理程序时,需将通用寄存器内容保存到主存中去,但为减少中断处理时间,不必保存所有通用寄存器内容,这里只需将2个中断处理程序中用到的