文章
54
粉丝
21
获赞
0
访问
4.2k
(1)2.5%。1s可传输指令数500M/5=100M,传输数据次数0.5MB/4B=0.125M,传输数据所需指令0.125M×20=2.5M,占比2.5M/100M×100%=2.5%。
(2)0.5%。DMA次数5MB/5000B=5K,所需时钟周期数500×5k=2.5M,占比2.5M/500M×100%=0.5%。
评分及理由
(1)得分及理由(满分4分)
学生答案:2.5%。计算过程为:1s可传输指令数500M/5=100M,传输数据次数0.5MB/4B=0.125M,传输数据所需指令0.125M×20=2.5M,占比2.5M/100M×100%=2.5%。
标准答案:2.5%。计算过程为:中断服务程序包含18条指令,其他开销相当于2条指令,共20条指令,每条指令平均5个时钟周期,故每次中断需要100个时钟周期。中断次数为0.5MB/4B=125000次,总时钟周期数为100×125000=12.5M,CPU主频500MHz,故百分比为12.5M/500M=2.5%。
评分:学生答案结果正确,计算过程与标准答案不同但合理。学生将"传输数据所需指令"理解为所需指令条数(20条指令/次),然后乘以中断次数得到总指令数2.5M,再除以1秒内可执行指令总数100M得到百分比。虽然表述中"传输数据所需指令"应为时钟周期数更准确,但计算中隐含了每条指令5个时钟周期的转换(因为除以了100M指令数,而100M指令数是由500M时钟周期/5 CPI得到的),最终结果正确。思路正确,不扣分。
得分:4分
(2)得分及理由(满分4分)
学生答案:0.5%。计算过程为:DMA次数5MB/5000B=5K,所需时钟周期数500×5k=2.5M,占比2.5M/500M×100%=0.5%。
标准答案:0.1%。计算过程为:DMA次数5MB/5000B=1000次,每次DMA开销500个时钟周期,总开销500×1000=0.5M个时钟周期,占比0.5M/500M=0.1%。
评分:学生答案结果错误。主要错误在于DMA次数计算:5MB/5000B = 5×10^6 B / 5000 B = 1000次,但学生计算为5K(即5000次),导致后续计算全部错误。虽然计算思路正确(次数×每次开销/总时钟周期),但逻辑错误(次...
登录后发布评论
暂无评论,来抢沙发