2011-12-21 103 views
0

我目前在學習中斷,但不明白你如何計算下面問題的數據速率。我有答案,但 我不知道你如何到達那裏。如果有人可以請我向 解釋它是如何計算的,這將非常感激。計算中斷數據速率

這裏的問題...

這個問題涉及使用中斷來處理輸入和 存儲在到達輸入接口的數據的存儲,以及 考慮數據速率,使用可實現這個機制。在 這個特定的問題中,每個新數據項的到達觸發了一箇中斷請求,用於輸入數據並將其存儲在隊列中的一個隊列中。問題是關於計算在這種情況下可實現的最大數據速率 。

您首先需要計算時間,以響應來自接口的 中斷,運行中斷服務例程(ISR) 並返回此被中斷的program.From並且在每個數據比特 輸入的數目中斷,則需要計算可以處理的最大數據速率(以每秒位數爲單位)。給出了你在下面給出的 :CPU需要響應的時鐘週期數 中斷和切換到ISR,由ISR執行的指令 的數量,在ISR中每個 指令執行的平均時鐘週期數,在每個中斷上輸入的數據項中的位數和時鐘頻率。 [你可以假設的是,當 CPU可以立即再次儘快ISR完成後, 但不是在這之前打斷]時鐘週期

響應中斷ISR = 70個 平均時鐘週期執行= 15所 說明每條指令= 5 數每數據項= 32
時鐘頻率的比特= 10MHz的

問題

一)這是在微秒到從 整型到的中斷作出響應的時間erface,運行中斷服務程序(ISR)並返回到中斷程序 ?

b)以千比特/秒爲單位的最大數據速率是多少?

答案

一)36.5 - 我明白這個

B)876.7 - ????

回答

1

因爲每個ISR需要36.5 us,所以在一秒鐘內可能發生的ISR的絕對最大數目是27,397.2603。

在每個ISR中,處理32位數據。

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

+0

非常感謝!這令我困惑不已! – user1110773 2011-12-21 23:31:25