计算机系统组成 习题

 

 

Cache原理

  • 目的:为了解决CPU与主存速度不匹配的问题
  • 逻辑位置:在CPU与主存之间设置的一个高速度小容量存储器
  • 工作基础:程序访问的局部性原理 单位时间片内,处理器对存储器的访问总是局限在整个存储器的一小部分中。它包含3个方面的含义:时间局部性,最近访问的地址将会被再次访问(替换算法);空间局部性,最近访问的地址附近的地址很可能在将来被访问(一次调入多于需要数据);指令执行顺序方面:指令顺序执行比转移执行的可能性要大
  • 工作原理:在Cache存储系统中,把Cache和主存分别分块,块尺寸相同,数目不同。高速缓存中保存读取频度最高的主存内容。CPU访存时,先在Cache中查找,若命中则使用该值不再访问主存,只有未命中时才访问主存,同时把包括被访问地址在内的一(整)块数据装入Cache以备使用。只要Cache有足够内容,就可极大降低平均访问时间。
  • 计算机系统组成 习题
  • 性能:命中率、平均存取时间、访问效率、加速比
  • Cache-主存映射方式
  1. 直接映射:主存的块以Cache块数为模映射到Cache的固定位置。因此主存地址格式为区号+块号+块内地址。优点:标志位较短,访问Cache时仅需比较一次,比较电路成本低。缺点:易产生冲突,利用率和命中率低。
  2. 全相联映射:主存中的一个块能够映射到Cache中任意一块的位置。优点:利用率高,存取灵活,不易冲突。缺点:标志位较长,比较电路复杂,使用成本太高。
  3. 组相联映射:每个主存块可以映射到Cache的固定组的任意位置。1)主存按Cache大小分区;主存和Cache区内分组;组内分块。主存的组到Cache组之间采用直接映射,对应组内各块之间采用全相联映射。(用得少)2)主存按Cache组数分区,每个区的块与Cache的对应组直接映射,组内相联映射。即,主存的块以Cache组数为模映射到Cache的固定组的任意块。

第二章小测

1、对于有6个子过程,时钟周期为4ns的指令流水线,则其指令时延和处理器带宽是(C)

A.24ns,0.25MIPS                            B.24ns,25MIPS

C.24ns,250MIPS                             D.12ns,250MIPS

 

2、机器字长32位,其存储容量为4MB,若按字编址,它的寻址范围及需要的地址位数是(A)

A.0——1MW-1,20位                      B.0——1MB-1,20位

C.0——4MW-1,22位                       D.0——4MB-1,21位

 

3.CPU执行一段程序时,cache完成存取的次数为1900次,主存完成存取的次数为100次,则cache的命中率是(D)

A.92%               B.85%               C.                    D.95%

 

4.一个组相联映射cache由32块组成,每组4块,主存包含2048块,每块32个字节。主存地址中标志、组号和块内地址的位数分别是()

A.8,3,5              B.7,4,5              C.9,2,5              D.8,4,4

 

 

5.一个彩色显示器的分辨率为1024*1024,如需显示一全屏、真彩色的图像及全动画图像(每秒至少显示25帧),视频RAM和总的数据传输率需要()

A.1MB,75MB/s             B.2MB,75MB/s             C.3MB,75MB/s             D.24MB,600MB/s

 

6.波特率B和位率的关系式()(K为相位的编码数)

A.位率=B          B.位率与B无关             C.B=K位率               D.位率=KB

 

7.假设某指令流水线分为取指(IF)、指令译码(ID)、取操作数(FO)、执行(EX)和存结果(WB)五个子过程,现共有7条指令连续输入流水线

1)假设时钟周期为100ns,求流水线的实际吞吐率(单位时间执行完毕的指令数)

2)该流水线的加速比是多少?

 

 

 

计算机系统组成 习题

计算机系统组成 习题

 

 

8.由于电源线的尖峰电压干扰,4个数据位加3个校验位的汉(海)明码变成1101011,给出出错位(采用偶校验)和被校验的数据位

 

9.如果cache的访问时间是50ns,主存的访问时间是200ns,平均访问时间是90ns,请问cache的命中率是多少?

 

 

 

 

10.某磁盘由4片盘组成,每个记录面共有1024个磁道,每个磁道有64个扇区,每个扇区512字节,磁盘转速6000转/分,平均寻道时间12ms,计算磁盘容量、数据传输率(每秒字节数)及读写一个扇区的平均访问时间

 

 

 

11.某计算机存储器按字节编址,虚拟地址空间大小为16MB,主存地址空间大小为1MB,页面大小为4KB,cache采用直接映射方式,共8块,主存与cache之间交换的块大小为32B。问虚拟地址共有几位?哪几位表示表示虚页号?物理地址共有几位?哪几位表示表示物理页号?

使用物理地址访问cache时,物理地址应分为哪几个字段?并给出各字段的位数及位置。

 

 

 

 

 

12.某计算机存储器按字节编址,虚拟(逻辑)地址空间大小为16 MB,主存(物理)地址空间大小为1 MB,页面大小为4 KB;Cache采用直接映射方式,共8行;主存与Cache之间交换的块大小为32 B。系统运行到某一时刻时,页表的部分内容和Cache的部分内容分别如题44-a图、题44-b图所示,图中页框号及标记字段的内容为十六进制形式。

  虚页号有效位页框号… 行号有效位标记…

  0106… 01020…

  1104… 10-…

  2115… 2101D…

  3102… 31105…

  40-… 41064…

  512B… 5114D…

  60–… 60-…

7132… 7127A…

  请回答下列问题。

  (1)虚拟地址共有几位,哪几位表示虚页号?物理地址共有几位,哪几位表示页框号(物理页号)?

  (2)使用物理地址访问Cache时,物理地址应划分成哪几个字段?要求说明每个字段的位数及在物理地址中的位置。

 

(1)由于虚拟地址空间大小为16MB,且按字节编址,所以虚拟地址共有24位(224=16M)。由于页面大小为4KB(212=4K),所以虚页号为前12位。由于主存(物理)地址空间大小为1MB,所以物理地址共有20位(220=1M)。由于页内地址12位,所以20-12=8,即前8位为页框号。

  (2)由于Cache采用直接映射方式,所以物理地址应划分成3个字段,如下:

  12位 3位 5位

  主存字块标记Cache字块标记字块内地址

  分析:由于块大小为32B,所以字块内地址占5位。Cache共8行,故字块标记占3位,所以主存字块标记占20-5-3=12位。


(来源:Tianjin University 2015 侵删)