(15分)某CPU 中部分数据通路如图所示,其中,GPRs 为通用寄存器组;FR 为标志寄存器,用于 存放ALU产生的标志信息;带箭头虚线表示控制信号,如控制信号ReaD.Wr|te 分别表示主存读、主存 写 ,MDR|n 表示内部总线上数据写入MDR,MDRout 表示MDR的内容送内部总线。
(2)为什么要设置暂存器Y和Z?
(5)图中控制信号由什么部件产生?图中哪些寄存器的输出信号会连到该部件的输入端?
44 . (8分)假设某磁盘驱动器中有4个双面盘片,每个盘面有20000个磁道,每个磁道有500个扇区,每 个扇区可记录512字节的数据,盘片转速为7200rpm ( 转/分),平均寻道时间为5ms, 请回答下列问题。
(1)每个扇区包含数据及地址信息,地址信息分为3个字段,这3个字段的名称格式什么?对于该磁盘, 各字段至少占多少位?
(2)一个扇区的平均访问时间约为多少?
(3)若采用周期挪用DMA 方式进行磁盘与主机之间的数据传送,磁盘控制器中的数据缓冲区大小为64位, 则在一个扇区读写过程中,DMA 控制器向CPU 发送了多少次总线请求?若CPU 检测到DMA 控制器的 总线请求信号时也需要访问主存,则DMA 控制器是否可以获得总线使用权?为什么?
[tag_link]
[tag_link]
1)符号标志 SF 表示运算结果的正负性,因此 SF = F 15 对于加法运算 A + B → F ,若 A 、 B 为负,且 F 为正,则说明发生溢出:或者,若 A 、 B 为正, 且 F 为负,也说明发生溢出。因此,加运算时,溢出标志 OF = A 15 ⋅ B 15 ⋅ F 15 + A 15 ⋅ B 15 ⋅ F 15 。 对于减法运算 A − B → F ,若 A 为负、 B 为正,且 F 为正,则说明发生溢出:或者,若 A 为正、 B 为负,且 F 为负,也说明发生溢出。因此,减运算时,溢出标志 OF = A 15 ⋅ B 15 ⋅ F 15 + A 15 ⋅ B 15 ⋅ F 15 。 2)因为在单总线结构中,每一时刻总线上只有一个数据有效,而 ALU 有两个输入端和一个 输出端。因此,当 ALU 运算时,需要先用暂存器 Y 缓存其中一个输入端的数据,再通过 总线传送另一个输入端的数据。与此同时,ALU 的输出端产生运算结果,但由于总线正 被占用,因此需要暂存器 Z,以缓存 ALU 的输出端数据。 3)由图可知,rs 和 rd 都是 4bit,因此 GPRs 中最多有 2 4 = 16 个通用寄存器;rs 和 rd 来自指令寄 存器 IR;rd 表示寄存器编号,应连接地址译码器。 4)取指阶段需要根据程序计数器 PC 取出主存中的指令,并将指令写入指令寄存器 R 中。控制 信号序列如下: ①PCout,MARin // 将指令的地址写入 MAR ②Read // 读主存,并将读出的数据写入 MDR ③MDRout,Rin // 将 MDR 的内容写入指令寄存器 R 步骤①需要 1 个时钟周期,步骤②需要 5 个时钟周期,步骤③需要 1 个时钟周期,因此取指 令阶段至少需要 7 个时钟周期。 5)图中控制信号由控制部件(CU)产生。指令寄存器 IR 和标志寄存器 FR 的输出信号会连 到控制部件的输入端。 44 假设某磁盘驱动器中有 4 个双面盘片,每个盘面有 20000 个磁道,每个磁道有 500 个扇区,每个扇区可记录 512 字节的数据,盘片转速为 7200rpm(转/分),平均寻道时间为 5ms,请回答下列问题。
(1) 每个扇区包含数据及地址信息,地址信息分为 3 个字段,这 3 个字段的名称格式什么?对于该磁盘,各字段至少占多少位?
(2) 一个扇区的平均访问时间约为多少?
(3) 若采用周期挪用 DMA 方式进行磁盘与主机之间的数据传送,磁盘控制器中的数据缓冲区大小为 64 位,则在一个扇区读写过程中,DMA 控制器向 CPU 发送了多少次总线请求?若 CPU 检测到 DMA 控制器的总线请求信号时也需要访问主存,则 DMA 控制器是否可以获得总线使用权?为什么? CHS地址 DMA 查看答案与解析 收藏