2009-09-01 7 views
0

La routine de service d'interruption (ISR) d'un périphérique transfère 4 octets de données du périphérique à chaque interruption de périphérique. A chaque interruption, l'ISR exécute 90 instructions avec chaque instruction prenant 2 cycles d'horloge à exécuter. L'unité centrale prend 20 cycles d'horloge pour répondre à une demande d'interruption avant que l'ISR commence à exécuter des instructions. Calculez le débit de données maximal, en bits par seconde, pouvant être entré à partir de ce périphérique si la fréquence d'horloge de la CPU est de 100 MHz.ISR - Débit de données maximal

Toute aide sur la résolution sera appréciée.

Ce que je pense - 90 instructions x 2 = 180 cycles 20 cycles retard = 200 cycles par une interruption

donc dans 100mhz = 100millions cycles = 100millions/200 = 500 000 cycles de 4 octets chacun donc 2million bytes ou 16million bits

Je pense que c'est juste mais je ne suis pas sûr à 100% quelqu'un peut-il confirmer? cheers/

Répondre

0

Votre calcul me semble bon. Si vous voulez une "réponse d'ingénierie" alors j'ajouterais une marge de 10%. Quelque chose comme: "taux de données max théorique est de 16 m bits par seconde en utilisant une marge de 10%, pas plus de 14,4 m bits par seconde"

+0

merci larry :) –