BPC-MIC05 - Principy obsluhy V-V periferií
Níže je uveden pouze náhled materiálu. Kliknutím na tlačítko 'Stáhnout soubor' stáhnete kompletní formátovaný materiál ve formátu PDF.
• Řadič přerušení rozpozná požadavek na
přerušení na některém ze svých vstupů.
• Pokud je generováno současně více
požadavků, řadič vybere požadavek s nejvyšší
prioritou.
• Řadič oznámí procesoru, že je požadována
obsluha přerušení a zašle mu číslo přerušení
pro vybraný požadavek.
Víceúrovňový systém přerušení
• Některá přerušení mají vyšší důležitost než
jiná.
– Např. přerušení při přijmu rámce řadičem
Ethernetu musí být obslouženo přednostně oproti
přerušení od klávesnice. Jinak je rámec přepsán
následujícím přijímaným rámcem.
– Uživatel mačká klávesy pomalu oproti příchodu
rámců 10 Gb Ethernetu.
Víceúrovňový systém přerušení
• Každému zdroji přerušení je v řadiči přiřazena
priorita
• Priorita
– Je nastavena („zadrátována“) napevno
• Např. V/V zařízení připojené na vstup 0 řadiče má
nejvyšší prioritu, zařízení připojené na vstupu 7 má
nejnižší prioritu.
– Lze ji programově nastavit
• Zápisem do konfiguračních registrů řadiče.
MSI (Message Signaled Interrupts)
• Tradiční systém přerušení používá dedikované
vodiče pro komunikaci mezi řadičem přerušení
a mikroprocesorem.
• MSI posílá speciální zprávy, které indikují
přerušení.
• V/V zařízení požádá o přerušení tím, že zapíše
hodnotu na speciální adresu v paměťovém
prostoru (pošle zprávu).
Činnost procesoru při zahájení
obsluhy přerušení
• Procesor uloží do zásobníku:
– Návratovou adresu.
– Obsah stavového registru,
– Některé procesory ukládají i obsah dalších
registrů.
• Ve stavovém registru (procesoru) zakáže
přerušení (bit I nastaví do 0).
Činnost procesoru při zahájení
obsluhy přerušení
• Použije číslo přerušení, které mu poslal řadič
přerušení, jako index do tabulky vektorů
přerušení.
– V příslušném vektoru musí být uložena adresa
první instrukce obslužné rutiny přerušení.
• Adresu z vektoru přerušení vloží do
programového čítače.
– Tím se začne provádět obslužná rutina.