计算中断数据速率

时间:2011-12-21 22:57:32

标签: cpu-architecture

我目前正在学习中断但却不了解你的情况 计算以下问题的数据速率。我有答案但是 我不知道你是怎么到达那里的。如果有人可以请解释 我如何计算它真的很感激。

这是问题......

这个问题涉及使用中断来处理输入和 存储在存储器中的数据到达输入接口,以及 考虑使用这种机制实现的数据速率。在 这个特殊的问题,每个新数据项的到来触发 一个中断请求,用于输入和存储队列中的数据项 记忆。问题是关于计算最大数据速率 在这种情况下可以实现。

首先要求您计算回复时间 从接口中断,运行中断服务程序(ISR) 并返回到被中断的程序。从此和数据的数量 在每个中断输入位,你需要计算 可以处理的最大数据速率,以每秒位数为单位。在你下面 给出:CPU响应所需的时钟周期数 中断并切换到ISR,指令数量 由ISR执行,每个执行的平均时钟周期数 ISR中的指令,输入数据项中的位数 每个中断和时钟频率。 [你可以假设当 ISR完成后,CPU可立即再次中断, 但不是在此之前]

时钟周期响应中断= 15 在ISR = 70中执行的指令 每条指令的平均时钟周期= 5 每个数据项的位数= 32
时钟频率= 10MHz

问题

a)响应来自中断的时间(以微秒为单位) 接口,运行中断服务程序(ISR)并返回 中断的程序?

b)以Kbits /秒为单位的最大数据速率是多少?

答案

a)36.5 - 我理解这个

b)876.7 - ????

1 个答案:

答案 0 :(得分:1)

因为每个ISR需要36.5 us,所以一秒钟内可能发生的绝对最大 ISR数是27,397.2603。

在每个ISR中,处理32位数据。

因此,每秒处理27397.2603 * 32位= 876.712.33位