假设某计算机所有指令都可用两个总线周期完成,一个总线周期用来取指令,另一个总线周期用来存取数据。假定总线宽度为8位,每个总线周期为250ns,因而每条指令的执行时间为500ns,若该计算机中配置的磁盘每个磁道有16个512字节的扇区,磁盘旋转一圈的时间是8.192ms。请回答下列问题:
问答题 在磁盘不工作时,主存频带空闲百分比是多少?
【正确答案】正确答案:因为所有指令的每个阶段都要访问主存,所以即使没有磁盘访问主存,CPU也把主存周期占满了。因此,主存频带空闲百分比是0。
【答案解析】
问答题 若采用周期挪用法进行DMA传送,则该计算机执行指令的速度由于DMA传送而降低了多少?
【正确答案】正确答案:磁盘的平均数据传输率为10 3 ×16×512B/8.192=1MB/s。当总线位宽为8位时,DMA控制器每隔1B/1MB=1μs申请一次数据传送,在1μs期间CPU共执行1μs/500ns=2条指令。因此,每两条指令的执行被插入一个总线周期用于一次数据传送,即平均每条指令延长了250/2=125ns。因而,计算机执行指令的速度降低了125/500=25%。
【答案解析】
问答题 若采用周期挪用法进行DMA传送,总线宽度为16位,则该计算机执行指令的速度由于DMA传送而降低了多少?
【正确答案】正确答案:当总线位宽为16位时,DMA控制器每隔2B/1MB=2μs申请一次数据传送,在2μs期间CPU共执行2μs/500ns=4条指令,因此,每4条指令的执行被插入一个总线周期用于一次数据传送,即平均每条指令延长了250/4=62.5ns。因而,计算机执行指令的速度降低了62.5/500=12.5%。
【答案解析】