题7

题目

【2009 统考真题】某计算机的 CPU 主频为 500MHz,CPI 为 5(即执行每条指令平均需 5 个时钟周期)。假定某外设的数据传输率为 0.5MB/s,采用中断方式与主机进行数据传送,以 32 位为传输单位,对应的中断服务程序包含 18 条指令,中断服务的其他开销相当于 2 条指令的执行时间。请回答下列问题,要求给出计算过程。
(1) 在中断方式下,CPU 用于该外设 I/O 的时间占整个 CPU 时间的百分比是多少?
(2) 当该外设的数据传输率达到 5MB/s 时,改用 DMA 方式传送数据。假定每次 DMA 传送块大小为 5000B,且 DMA 预处理和后处理的总开销为 500 个时钟周期,则 CPU 用于该外设 I/O 的时间占整个 CPU 时间的百分比是多少(假设 DMA 与 CPU 之间没有访存冲突)?

分析

题17

按题意,外设每秒传送 ,中断时每次传送 。由于 为 5,在中断方式下,CPU 每次用于数据传送的时钟周期为 (中断服务程序 + 其他开销)。 为达到外设 的数据传输速率,外设每秒申请的中断次数为

1 秒内用于中断的开销为 个时钟周期。

用于外设 的时间占整个 时间的百分比为

当外设数据传输速率提高到 时改用 DMA 方式传送,每次 DMA 传送一个数据块,

大小为 ,则 1 秒内需产生的 DMA 次数为

CPU 用于 DMA 处理的总开销为 个时钟周期。

CPU 用于外设 I/O 的时间占整个 CPU 时间的百分比为