计算机组成原理的一道题,看不懂答案

计算机组成原理的一道题,看不懂答案
CPU用于该外设I/O的时间是指什么?
整个CPU时间又是指什么?
我觉得 整个CPU时间 相当于 预处理时间+存取时间,可是题目只把存取时间算整个CPU时间,是为什么呢
某计算机的CPU主频为500MHz,CPI为5(即执行每条指令平均需5个时钟周期)。假定某外设的数据传输率为0.5MB/s,采用中断方式与主机进行数据传送,以32位为传输单位,对应的中断服务程序包含18条指令,中断服务的其他开销相当于2条指令的执行时间。请回答下列问题,要求给出计算过程。 (10分)
(1)在中断方式下,CPU用于该外设I/O的时间占整个CPU时间的百分比是多少?
(2)当该外设的数据传输率达到5MB/s时,改用DMA方式传送数据。假设每次DMA传送大小为5000B,
且DMA预处理和后处理的总开销为500个时钟周期,则CPU用于该外设I/O的时间占整个CPU时间的百分比是多少?(假设DMA与CPU之间没有访存冲突)
(1)在中断方式下,每32位(4B)被中断一次,故每秒中断次数:0.5MB/4B=0.5×106/4=0.125×106次
因为中断服务程序包含18条指令,中断服务的其他开销相当于2条指令的执行时间,且执行每条指令平均需5个时钟周期,所以,1秒内用于中断的时钟周期数为 (18+2)×5×0.125×106=0.125×108
所以CPU用于该外设I/O的时间占整个CPU时间的百分比是:0.125*108/500*106=2.5% (2)在DMA方式下,每秒进行DMA操作
5MB/5000B=5×106/5000=1×103 次因为DMA预处理和后处理的总开销为500个时钟周期,所以1秒
钟之内用于DMA操作的时钟周期数为 500×1×103=5×105
故在DMA方式下,占整个CPU时间的百分比是 ((5×105)/(500×106))×100%=0.1%
火焰男儿 1年前 已收到1个回答 举报

quanquan22 幼苗

共回答了23个问题采纳率:87% 举报

已经都用DMA了,还算存取时间干什么?
怀疑你根本没搞懂DMA的基本概念。为什么要用DMA,你知道吗?

1年前

8
可能相似的问题
Copyright © 2024 YULUCN.COM - 雨露学习互助 - 17 q. 0.026 s. - webmaster@yulucn.com