假设一个主频为1GHz、CPI为5的CPU需要从某个成块传送的I/O设备读取1 000B的数据到主存缓冲区中,该I/O设备一旦启动即按50KB/s的数据传输率向主机传送1000B数据,每个字节的读取、处理并存入内存缓冲区需要1 000个时钟周期,则以下4种

admin2014-04-17  25

问题 假设一个主频为1GHz、CPI为5的CPU需要从某个成块传送的I/O设备读取1 000B的数据到主存缓冲区中,该I/O设备一旦启动即按50KB/s的数据传输率向主机传送1000B数据,每个字节的读取、处理并存入内存缓冲区需要1 000个时钟周期,则以下4种方式下,在1 000B的读取过程中,CPU用在该设备的I/O操作上的时间分别为多少?占整个CPU时间的百分比分别是多少?
采用周期挪用DMA方式,每挪用一次主存周期处理一个字节,一次DMA传送完成1 000B的传送,DMA初始化和后处理的时间为2 000个时钟周期,CPU和DMA之间没有访存冲突。

选项

答案DMA方式下,由于CPU和DMA没有访存冲突,因此不需考虑因DMA而影响到CPU执行其他程序。因此,传送1 000B CPU所用的时钟周期数就是2 000,在1 000B的读取过程中,CPU用在该设备的I/O操作上的时间为2 000×1 ns=2μs,占整个CPU时间的百分比为2/(1 000×20)=0.01%。

解析
转载请注明原文地址:https://kaotiyun.com/show/pexi777K
0

最新回复(0)