好文档 - 专业文书写作范文服务资料分享网站

计算机组成基础学习知识原理第四章课后复习规范标准答案(终板)

天下 分享 时间: 加入收藏 我要投稿 点赞

-/

效信息为:0110

如果收到的汉明码为1100000,则p4p2p1=011,说明代码有错,第3位(b4)出错,有效信息为:1000

如果收到的汉明码为1100001,则p4p2p1=100,说明代码有错,第4位(c4)出错,有效信息为:0001

4.19 已知接收到下列汉明码,分别写出它们所对应的欲传送的代码。 (1) 1100000(按偶性配置) (4) 0011001(按奇性配置) 解:

(1)1100000(按配偶性)

注意:按偶配置,检测时, Pi=0 正确,代表本小组(gi)的1的个数为偶数。 Pi=1 错误

如果收到的汉明码为1100000,

则p4p2p1=011,说明代码有错,第3位(b4)出错,有效信息为:1000

(4)0011001(按奇配置) 则: p4p2p1=000

注意:按奇配置,检测时, Pi=0 错误,代表本小组(gi)的1的个数不为奇数个1 Pi=1 正确 代表本小组(gi)的1的个数为奇数个1(正确) 为了定位,可取反 p4p2p1=/0/0/0=111 即第7位出错,有效信息为:1000

4.25 什么是程序访问的局部性?存储系统中哪一级采用了程序访问的局部性原理。 答:局部性访问原理是指程序执行时对存储器的访问是不均匀的,这是由于指令和数据在主存的地址分布不是随机的,而是相对的集中(簇聚)。

存储系统的缓存----主存级和主存-----辅存级都用到程序访问的局部性原理。对缓存---主存级而言,把CPU最近期执行的程序放在容量较小,速度较高的缓存中。对主存---辅存级而言,把程序中访问频度高,比较活跃的部分放在主存中,这样既提高了访存的速度又扩大了存储器的容量。

4.26 计算机中Cache的作用是什么?能不能把Cache扩大,最后取代主存,WHY? 答:Cache的作用是提高访存速度。当Cache容量达到一定值时,命中率不因容量的增大而明显提高,而且Cache成本价高,所以不能取代主存。

-/

4.25(补充). Cache做在CPU芯片内有什么好处?将指令Cache和数据Cache分开又有什么好处?

答:Cache做在CPU芯片内主要有下面几个好处:

1)可提高外部总线的利用率。因为Cache在CPU芯片内,CPU访问Cache时不必占用外部总线。

2)Cache不占用外部总线就意味着外部总线可更多地支持I/O设备与主存的信息传输,增强了系统的整体效率。

3)可提高存取速度。因为Cache与CPU之间的数据通路大大缩短,故存取速度得以提高。

将指令Cache和数据Cache分开有如下好处:

1)可支持超前控制和流水线控制,有利于这类控制方式下指令预取操作的完成。 2)指令Cache可用ROM实现,以提高指令存取的可靠性。

3)数据Cache对不同数据类型的支持更为灵活,既可支持整数(例32位),也可支持浮点数据(如64位)。

4.28. 设主存容量为256K字,Cache容量为2K字,块长为4。 (1)设计Cache地址格式,Cache中可装入多少块数据? (2)在直接映射方式下,设计主存地址格式。

(3)在四路组相联映射方式下,设计主存地址格式。 (4)在全相联映射方式下,设计主存地址格式。

(5)若存储字长为32位,存储器按字节寻址,写出上述三种映射方式下主存的地址格式。

解:

(1) Cache 容量 2K字=211 字 (Cache地址 11位) 块长4字 4=22 字

Cached包含的块数= Cache 容量/块长 =211 /22 =29 块 Cache字块地址 9 字块内地址 2

(2)在直接映射方式下,设计主存地址格式

主存容量 256K字 =218 字 ( 主存地址 18位)

主存包含的块数: 218/22 =216 块

主存字块标记=主存地址长度- Cache地址长度=18-11=7 位

主存字块标记 7

(3)在四路组相联映射方式下,设计主存地址格式

四路组相联=>每组4块=>r=2 (4块=22 )

Cache可分的组数= 29/22 = 27 =>q=7 (组地址需要7位)

主存字块标记=主存地址长度- 组地址长度-字块内地址(b)=18-7-2=9 位

主存字块标记 9 组地址 7 字块内地址 2 Cache字块地址 9 字块内地址 2 -/

(4)在全相联映射方式下,设计主存地址格式:

主存字块标记=主存地址长度- 字块内地址(b)=18-2=16 位

主存字块标记 16 字块内地址 2

同理:若存储字长为32位,存储器按字节寻址,写出上述三种映射方式下主存的地址格式。

Cache 容量 2K字=211 *32/8=213 (Cache地址 13位) 每个块容量=4*32/8=16字节 (块内地址需4位) Cache包含的块数:2K字/4字=29 块

Cache字块地址 9 字块内地址 4

(1)在直接映射方式下,设计主存地址格式

主存容量 256K字 =218 字 = 218 *32/8=220 字节 ( 主存字节地址 20位) 每个块容量=4*32/8=16字节 (块内地址需4位) 主存包含的块数: 218/22 =216 块

主存字块标记=主存地址长度- Cache地址长度=20-4-9=7 位

主存字块标记 7 Cache字块地址 9 字块内地址 4

(2)在四路组相联映射方式下,设计主存地址格式 四路组相联=>每组4块=>r=2 (4块=22 )

Cache可分的组数= 29/22 = 27 =>q=7 (组地址需要7位)

主存字块标记=主存地址长度- 组地址长度-字块内地址(b)=20-7-4=9 位

主存字块标记 9 组地址 7 字块内地址 4

(3)在全相联映射方式下,设计主存地址格式:

主存字块标记=主存地址长度- 字块内地址(b)=20-4=16 位

主存字块标记 16

4. 32. 设某机主存容量为4MB,Cache容量为16KB,每字块有8个字,每字32位,设计一个四路组相联映射(即Cache每组内共有4个字块)的Cache组织。

字块内地址 4 -/

(1)画出主存地址字段中各段的位数;

(2)设Cache的初态为空,CPU依次从主存第0、1、2……89号单元读出90个字(主存一次读出一个字),并重复按此次序读8次,问命中率是多少?

(3)若Cache的速度是主存的6倍,试问有Cache和无Cache相比,速度约提高多少倍? 解:(1)由于容量是按字节表示的,则主存地址字段格式划分如下: 1. 主存容量为4MB=222B (主存字节地址共22位) 2. Cache容量为16KB=214B (Cache字节地址14位)

3. 每字块有8个字,每字32位,=>8*32/8=25 (块内字节地址5位) 4. 四路组相联映射(即Cache每组内共有4个字块) 5. Cache包括的块数=214B/8*32=29 个

6. Cache的组数=29 / 4 =27 组 (组地址为7位)

7. 主存字块标记=主存地址长度- 组地址长度-字块内地址(b)=22-7-5=10 位

主存字块标记 10 组地址 7 字块内地址 5

8 7 2 3 2

(2)由于题意中给出的字地址是连续的,故(1)中地址格式的最低2位不参加字的读出操作。当主存读0号字单元时,每字块有8个字,将主存0号字块(0~7)调入Cache(0组0号块),主存读8号字单元时,将1号块(8~15)调入Cache(1组0号块)…… 主存读89号单元时,将11号块(88~89)调入Cache(11组0号块)。

共需调90/8 =12次,就把主存中的90个字调入Cache。除读第1遍时CPU需访问主存12次外,以后重复读时不需再访问主存。则在90×8 =720个读操作中: 访Cache次数 =(90-12)+630 =708次 Cache命中率 =708/720 ≈0.98≈ 98%

(3)设无Cache时访主存需时720T(T为主存周期),加入Cache后需时: 708′T/6+12T =(118+12)T =130T 则:720T/130T =5.54倍

有Cache和无Cache相比,速度提高了4.54倍左右。

4.41 设有效信息为110,试用生成多项式G(x) =11011将其编成循环冗余校验码。 解:编码过程如下: M(x) =110 n =3

G(x) =11011 k+1 =5 k =4 M(x)·x4 =110 0000

M(x)·x4/G(x) =110 0000/11011=100+1100/11011 R(x) =1100 M(x)·x4+R(x) =110 0000+1100=110 1100 =CRC码 (7,3)码

注:此题的G(x)选得不太好,当最高位和最低位出错时,余数相同,均为0001。此时只能检错,无法纠错

-/

4.42 有一个(7,4)码,生成多项式G(x)=x3+x+1,写出代码1001的循环冗余校验码。 解:编码过程如下: M(x) =1001 n =4

G(x) =1011 k+1 =4 k =3 M(x)·x3 =1001 000

M(x)·x3/G(x) =1001 000/1011=1010+110/1011 R(x) =110

M(x)·x3+R(x) =1001 000+110=1001 110 =CRC码 (7,4)码

计算机组成基础学习知识原理第四章课后复习规范标准答案(终板)

-/效信息为:0110如果收到的汉明码为1100000,则p4p2p1=011,说明代码有错,第3位(b4)出错,有效信息为:1000如果收到的汉明码为1100001,则p4p2p1=100,说明代码有错,第4位(c4)出错,有效信息为:00014.19已知接收到下列汉明码,分别写出它们所对应的欲传送的
推荐度:
点击下载文档文档为doc格式
1m09r1y2188iiwn479cv9uewu2s0h401e5n
领取福利

微信扫码领取福利

微信扫码分享