题34
题目
采用周期挪用进行 DMA 数据传送时, 每传送一个数据要占用一个 ( ) 的时间。
A. 指令周期
B. 机器周期
C. 时钟周期
D. 存取周期
分析
对于时钟周期机器周期这几个概念没有搞清楚。之前有个题,也做到了的。
解
B
Link to original
DMA 请求的是总线的使用权, 因此 CPU 对 DMA 请求的响应时机是一个总线周期结束时。
在流水线 CPU 中, 流水段的长度以最复杂的操作所花的时间为准, 总线周期 (访存时间) 通常是耗时最长的, 因此通常可认为总线周期、存取周期、机器周期和流水段长度是等价的。
解
D
当采用周期挪用进行 DMA 数据传送时, 每当 CPU 收到 DMAC 的总线申请, 就将下一个总线周期的总线控制权交给 DMAC。DMAC 利用这个总线周期完成一个数据字的传送后, 立即将总线控制权交回给 CPU, 因此这里的总线周期也等于存取周期的长度。