2. 如何理解计算机的层次结构?
答:计算机硬件、系统软件和应用软件构成了计算机系统的三个层次结构。
(1)硬件系统是最内层的,它是整个计算机系统的基础和核心。
(2)系统软件在硬件之外,为用户提供一个基本操作界面。
(3)应用软件在最外层,为用户提供解决具体问题的应用系统界面。
3.诺依曼计算机的特点是什么?
解:计算机由运算器、控制器、存储器、输入设备、输出设备五大部件组成;
    指令和数据以同同等地位存放于存储器内,并可以按地址访问;
    指令和数据均用二进制表示;
    指令由操作码、地址码两大部分组成,操作码用来表示操作的性质,地址码用来表示操作数在存储器中的位置;
    指令在存储器中顺序存放,通常自动顺序取出执行;
    机器以运算器为中心(原始冯•诺依曼机)。
4. 主机:是计算机硬件的主体部分,由CPU主存储器模范教师材料MM合成为主机
  CPU:中央处理器,是计算机硬件的核心部件,CPU内除含有运算器和控制器和CACHE
  主存:计算机中存放正在运行的程序和数据的存储器,为计算机的主要工作存储器,可随机存取;由存储体、各种逻辑部件及控制电路组成。
存储单元:可存放一个机器字并具有特定存储地址的存储单位。
存储元件:存储一位二进制信息的物理元件,是存储器中最小的存储单位,又叫存储基元或存储元,不能单独存取。
存储字:一个存储单元所存二进制代码的逻辑单位。
存储字长:一个存储单元所存储的二进制代码的总位数。
存储容量:存储器中可存二进制代码的总量;(通常主、辅存容量分开描述)。
机器字长:指CPU一次能处理的二进制数据的位数,通常与CPU的寄存器位数有关。
指令字长:机器指令中二进制代码的总位数。
5. 指令和数据都存于存储器中,计算机如何区分它们?
解:通过不同的时间段来区分指令和数据,即在取指令阶段(或取指微程序)取出的为指令,在执行指令阶段(或相应微程序)取出的即为数据。
通过地址来源区分,由PC提供存储单元地址的取出的是指令,由指令地址码部分提供存储单元地址的取出的是操作数。
6.为什么要设置总线判优控制?常见的集中式总线控制有几种?各有何特点?哪种方式响应时间最快?哪种方式对电路故障最敏感?
答:总线判优控制解决多个部件同时申请总线时的使用权分配问题;
常见的集中式总线控制有三种:链式查询、计数器定时查询、独立请求;
特点:链式查询方式连线简单,易于扩充,对电路故障最敏感;计数器定时查询方式优先级设置较灵活,对故障不敏感,连线及控制过程较复杂;独立请求方式速度最快,但硬件器件用量大,连线多,成本较高。
6. 试比较同步通信和异步通信。
答:同步通信:指由统一时钟控制的通信,控制方式简单,灵活性差,当系统中各部件工作速度差异较大时,总线工作效率明显下降。适合于速度差别不大的场合。
异步通信:指没有统一时钟控制的通信,部件间采用应答方式进行联系,控制方式较同步复杂,灵活性高,当系统中各部件工作速度差异较大时,有利于提高总线工作效率。
7. 在一个32位的总线系统中,总线的时钟频率为66MHZ,假设总线最短传输周期为4个时钟周期,试计算总线的最大数据传输率。若想提高数据传输率,可采取什么措施?
解:总线传输周期=4*1/66M秒
总线的最大数据传输率=32/(4/66M)=528Mbps
若想提高数据传输率,可以提高总线时钟频率、增大总线宽度或者减少总线传输周期包含的时钟周期个数。
8.在异步串行传送系统中,字符格式为:1个起始位、8个数据位、1个校验位、2个终止位。若要求每秒传送120个字符,试求传送的波特率和比特率。
解:一帧包含:1+8+1+2=12位
  故波特率为:(1+8+1+2)*120=1440bps
    比特率为:8*120=960bps
9.少年派演员表说明存取周期和存取时间的区别。
解:存取周期和存取时间的主要区别是:存取时间仅为完成一次操作的时间,而存取周期不仅包含操作时间,还包含操作后线路的恢复时间。即:存取周期 = 存取时间 + 恢复时间
10. 什么叫刷新?为什么要刷新?说明刷新有几种方法。
解:刷新:对DRAM定期进行的全部重写过程;
刷新原因:因电容泄漏而引起的DRAM所存信息的衰减需要及时补充,因此安排了定期刷新操作;常用的刷新方法有三种:集中式、分散式、异步式。
集中式:在最大刷新间隔时间内,集中安排一段时间进行刷新,存在CPU访存死时间。
分散式:在每个读/写周期之后插入一个刷新周期,无CPU访存死时间。
异步式:是集中式和分散式的折衷。
11. 一个8K×8位的动态RAM芯片,其内部结构排列成256×256形式,存取周期为0.1μs。试问采用集中刷新、分散刷新和异步刷新三种方式的刷新间隔各为多少?
解:采用集中刷新方式刷新间隔为:2ms,其中刷新死时间为:256×0.1μs=25.6μs
采用分散刷新方式刷新间隔为:256×(0.1μs+×0.1μs)=51.2μs
采用异步刷新方式刷新间隔为:2ms
12. 写出1101、对应的汉明码。
校验位在汉明码中分别处于第1、2、4位
c1=b4⊕b3⊕b1
c2=b4⊕b2⊕b1
c3=b3⊕b2⊕b1
当有效信息为1101时,c3c2c1=001,汉明码为1010101。
13.已知收到的汉明码(按配偶原则配置)为1100100、检查上述代码是否出错?第几位出错?
解:假设接收到的汉明码为:c1’c2’b4’c3’b3’b2’b1’
纠错过程如下:
P1=c1’⊕b4’⊕b3’⊕b1’
P2=c2’⊕b4’⊕b2’⊕b1’
P3=c3’⊕b3’⊕b2’⊕b1’
如果收到的汉明码为1100100,则p3p2p1=011,说明代码有错,第3位(b4’)出错,有效信息为:1100
14. 设主存容量为256K字,Cache容量为2K字,块长为4
(1)设计Cache地址格式,Cache中可装入多少块数据?
(2)在直接映射方式下,设计主存地址格式。
(3)在四路组相联映射方式下,设计主存地址格式。
(4)在全相联映射方式下,设计主存地址格式。
(5)若存储字长为32位,存储器按字节寻址,写出上述三种映射方式下主存的地址格式。
惊雷这通天修为天塌地陷紫金锤下一句解:(1)Cache容量为2K字,块长为4,Cache共有2K/4=211/22=29=512块,
Cache字地址9位,字块内地址为2位
        因此,Cache地址格式设计如下:
Cache字块地址(9位)
字块内地址(2位)
  (2)主存容量为256K字=218字,主存地址共18位,共分256K/4=216块,
主存字块标记为18-9-2=7位。
        直接映射方式下主存地址格式如下:
挂裤架
主存字块标记(7位)
Cache字块地址(9位)
字块内地址(2位)
  (3)根据四路组相联的条件,一组内共有4块,得Cache共分为512/4=128=27组,
主存字块标记为18-7-2=9位,主存地址格式设计如下:
莫少聪妻子主存字块标记(9位)
组地址(7位)
字块内地址(2位)
  (4)在全相联映射方式下,主存字块标记为18-2=16位,其地址格式如下:
主存字块标记(16位)
字块内地址(2位)
  (5)若存储字长为32位,存储器按字节寻址,则主存容量为256K*32/4=221B,Cache容量为2K*32/4=214B,块长为4*32/4=32B=25B,字块内地址为5位,
在直接映射方式下,主存字块标记为21-9-5=7位,主存地址格式为:
主存字块标记(7位)
Cache字块地址(9位)
字块内地址(5位)
在四路组相联映射方式下,主存字块标记为21-7-5=9位,主存地址格式为:
主存字块标记(9位)
组地址(7位)
字块内地址(5位)
在全相联映射方式下,主存字块标记为21-5=16位,主存地址格式为:
挂面汤
主存字块标记(16位)
字块内地址(5位)
15. 假设CPU执行某段程序时共访问Cache命中4800次,访问主存200次,已知Cache的存取周期为30ns,主存的存取周期为150ns,求Cache的命中率以及Cache-主存系统的平均访问时间和效率,试问该系统的性能提高了多少倍?
解:Cache被访问命中率为:4800/(4800+200)=24/25=96%
则Cache-主存系统的平均访问时间为: ta=0.96*30ns+(1-0.96)*150ns=34.8ns
Cache-主存系统的访问效率为:e=tc/ta*100%=30/34.8*100%=86.2%
性能为原来的150ns/34.8ns=4.31倍,即提高了3.31倍。
16. 设某机主存容量为4MBCache容量为16KB,每字块有8个字,每字32位,设计一个四路组相联映射(即Cache每组内共有4个字块)的Cache组织。
(1)画出主存地址字段中各段的位数。
(2)设Cache的初态为空,CPU依次从主存第0,1,2,…,89号单元读出90个字(主存一次读出一个字),并重复按此次序读8次,问命中率是多少?
(3)若Cache的速度是主存的6倍,试问有Cache和无Cache相比,速度约提高多少倍?
解:(1)根据每字块有8个字,每字32位(4字节),得出主存地址字段中字块内地址为3+2=5位。
      根据Cache容量为16KB=214B,字块大小为8*32/8=32=25B,得Cache地址共14位,Cache共有214-5=29块。
      根据四路组相联映射,Cache共分为29/22=27组。
根据主存容量为4MB=222B,得主存地址共22位,主存字块标记为22-7-5=10位,故主存地址格式为:
主存字块标记(10位)
组地址(7位)
字块内地址(5位)
(2)由于每个字块中有8个字,而且初态为空,因此CPU读第0号单元时,未命中,必须访问主存,同时将该字所在的主存块调入Cache第0组中的任一块内,接着CPU读第1~7号单元时均命中。同理,CPU读第8,16,…,88号时均未命中。可见,CPU在连续读90个字中共有12次未命中,而后8次循环读90个字全部命中,命中率为:
(3)设Cache的周期为t,则主存周期为6t,没有Cache的访问时间为6t*90*8,有Cache的访问时间为t(90*8-12)+6t*12,则有Cache和无Cache相比,速度提高的倍数为: