计算机组成原理-第二版-唐朔飞著-课后习题详解 下载本文

9

P3=0⊕0⊕0=0

P3P2P1=001,第1位出错,可纠正为0100010,故欲传送的信息为0010。 (3)如接收到的汉明码为1101001, P1=1⊕0⊕0⊕1=0 P2=1⊕0⊕0⊕1=0 P3=1⊕0⊕1=0

P3P2P1=000,传送无错,故欲传送的信息为0001。

(二)假设接收到的汉明码为C1’C2’B4’C3’B3’B2’B1’,按奇性配置则:

P1=C1’⊕B4’⊕B3’⊕B1’⊕1 P2=C2’⊕B4’⊕B2’⊕B1’⊕1 P3=C3’⊕B3’⊕B1’⊕1

(4)如接收到的汉明码为0011001, P1=0⊕1⊕0⊕1⊕1=1 P2=0⊕1⊕0⊕1⊕1=1 P3=1⊕0⊕1⊕1=1

P3P2P1=111,第7位出错,可纠正为0011000,故欲传送的信息为1000。 (5)如接收到的汉明码为1000000, P1=1⊕0⊕0⊕0⊕1=0 P2=0⊕1⊕0⊕0⊕1=0 P3=0⊕0⊕0⊕1=1

P3P2P1=100,第4位出错,可纠正为1001000,故欲传送的信息为0000。

10

(6)如接收到的汉明码为1110001, P1=1⊕1⊕0⊕1⊕1=0 P2=1⊕1⊕0⊕1⊕1=0 P3=0⊕0⊕1⊕1=0

P3P2P1=000,传送无错,故欲传送的信息为1001。

20. 欲传送的二进制代码为1001101,用奇校验来确定其对应的汉明码,若在第6位出错,说明纠错过程。

解:欲传送的二进制代码为1001101,有效信息位数为n=7位,则汉明校验的校验位为k位,则:2k>=n+k+1,k=4,进行奇校验设校验位为C1C2C3C4,汉明码为C1C2B7C3B6B5B4C4B3B2B1, C1=1⊕B7⊕B6⊕B4⊕B3⊕B1=1⊕1⊕0⊕1⊕1⊕1=1 C2=1⊕B7⊕B5⊕B4⊕B2⊕B1=1⊕1⊕0⊕1⊕0⊕1=0 C3=1⊕B6⊕B5⊕B4=1⊕0⊕0⊕1=0 C4=1⊕B3⊕B2⊕B1=1⊕1⊕0⊕1=1

故传送的汉明码为10100011101,若第6位(B5)出错,即接收的码字为10100111101,则

P1=1⊕C1’⊕B7’⊕B6’⊕B4’⊕B3’⊕B1’=1⊕1⊕1⊕0⊕1⊕1⊕1=0 P2=1⊕C2’⊕B7’⊕B5’⊕B4’⊕B2’⊕B1’=1⊕0⊕1⊕1⊕1⊕0⊕1=1 P3=1⊕C3’⊕B6’⊕B5’⊕B4’=1⊕0⊕0⊕1⊕1=1 P4=1⊕C4’⊕B3’⊕B2’⊕B1’=1⊕1⊕1⊕0⊕1=0

P4P3P2P1=0110说明第6位出错,对第6位取反即完成纠错。

11

21. 为什么在汉明码纠错过程中,新的检测位P4P2P1的状态即指出了编码中错误的信息位?

答:汉明码属于分组奇偶校验,P4P2P1=000,说明接收方生成的校验位和收到的校验位相同,否则不同说明出错。由于分组时校验位只参加一组奇偶校验,有效信息参加至少两组奇偶校验,若果校验位出错,P4P2P1的某一位将为1,刚好对应位号4、2、1;若果有效信息出错,将引起P4P2P1中至少两位为1,如B1出错,将使P4P1均为1,P2=0,P4P2P1=101,

22. 某机字长16位,常规的存储空间为64K字,若想不改用其他高速的存储芯片,而使访存速度提高到8倍,可采取什么措施?画图说明。

解:若想不改用高速存储芯片,而使访存速度提高到8倍,可采取八体交叉存取技术,8体交叉访问时序如下图:

启动存储体0启动存储体1启动存储体2启动存储体3启动存储体4启动存储体5启动存储体6启动存储体7单体访存周期

24. 一个4体低位交叉的存储器,假设存储周期为T,CPU每隔1/4存取周期

12

启动一个存储体,试问依次访问64个字需多少个存取周期?

解:4体低位交叉的存储器的总线传输周期为τ,τ=T/4,依次访问64个字所需时间为:

t=T+(64-1) τ=T+63T/4=16.75T

28. 设主存容量为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