假定CPU主频为50MHz,CPI为4。设备D采用异步串行通信方式向主机传送7位ASCII字符,通信规程中有1位奇校验位和1位停止位,从D接收启动命令到字符送入I/O端口需要0.5ms。 请回答下列问题,要求说明理由。 设备D采用中断方式进行输入,输出,

admin2017-08-16  29

问题 假定CPU主频为50MHz,CPI为4。设备D采用异步串行通信方式向主机传送7位ASCII字符,通信规程中有1位奇校验位和1位停止位,从D接收启动命令到字符送入I/O端口需要0.5ms。
请回答下列问题,要求说明理由。
设备D采用中断方式进行输入,输出,示意图如下:

I/O端口每收到一个字符申请一次中断,中断响应需10个时钟周期,中断服务程序共有20条指令,其中第15条指令启动D工作。若CPU需从D读取1000个字符,则完成这一任务所需时间大约是多少个时钟周期?CPU用于完成这一任务的时间大约是多少个时钟周期?在中断响应阶段CPU进行了哪些操作?

选项

答案一个字符传送时间包括:设备D将字符送I/O端口的时间、中断响应时间和中断服务程序前15条指令的执行时间。时钟周期为1/(50 MHz)=20 RS,设备D将字符送I/O端口的时间为0.5 ms/20 ns=2.5×104个时钟周期。一个字符的传送时间大约为2.5×104+10+15×4=25070个时钟周期。完成1 000个字符传送所需时间大约为1 000×25070=25070000个时钟周期。 CPU用于该任务的时间大约为1000×(10+20×4)=9×104个时钟周期。在中断响应阶段,CPU主要进行以下操作:关中断、保护断点和程序状态、识别中断源。

解析
转载请注明原文地址:https://jikaoti.com/ti/9nfjFFFM
0

最新回复(0)