Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MPVI_Spausdinti2003M.doc
Скачиваний:
1
Добавлен:
01.03.2025
Размер:
3.88 Mб
Скачать

14.2.1. Radialinė pertraukčių sistema

Radialine vadinama pertraukčių sistema, naudojanti radialines linijas, kuriomis perduodami IRQ (angl. Interrupt Request) radialinės pertraukties reikalavimo signalai, vienareikšmiškai nurodantys fiksuotus pertrauktis aptarnaujančių paprogramių adresus.

Programiniu požiūriu ši sistema yra fiksuotų atminties lauko adresų (paprogramių startinių adresų) visuma, kurios kiekvienas adresas atitinka jam priklausanti IRQ signalą. Radialinės pertraukties reikalavimo signalams priimti naudojamos šios grandinės:

  • dinaminė;

  • statinė;

  • kombinuota.

Dinaminė pertraukties signalų priėmimo grandinė pateikta 28 pav.

INTE (angl. Interrupt Enable) pertraukčių leidimo signalas nustatomas (loginis 1) programiškai, naudojant specialiąją komandą (EI), kuri įjungia INTE trigerį. INTE signalas yra šio trigerio išėjimo signalas.

28 Pav. Dinaminė pertraukties signalų priėmimo grandinė

IRQ pertraukties reikalavimo signalui keičiantis iš loginio 0 į loginį 1 (dinaminis pokytis pagal priekinį frontą) D trigeris su dinaminiu įėjimu įjungiamas (nes D įėjime veikia loginio 1 signalas) ir jo tiesioginiame išėjime gaunamas IR (angl. Interrupt Request) signalas lygus loginiam 1. Taip sukuriamas pertraukties patvirtinimo signalas INTA (loginis 1), naudojamas pertraukties proceso duomenims skaityti. Šis signalas taip pat automatiškai išjungia IR trigerį. Dinaminės grandinės pagrindinis trūkumas yra didelis jautrumas trukdžiams, kurie gali įjungti IR trigerį ir sukelti klaidingas pertrauktis.

Statinė pertraukties signalų priėmimo grandinė pateikta 29 pav.

29 Pav. Statinė pertraukties signalų priėmimo grandinė

Statinėje schemoje sumažintas jautrumas trukdžiams, naudojant tik potencialinį IRQ (1 loginio lygio) signalą. INTA signalas gaunamas, kaip INTE ir IRQ signalų loginė sandauga. Tačiau atsiranda IRQ signalo blokavimo problema. Jeigu IRQ išlieka 1 loginio lygio po to, kai suformuojamas INTA signalas, tai gali būti iššaukta pakartotinė klaidinga pertrauktis. Ši problema sprendžiama, naudojant IS (angl. In Service) specialų blokavimo trigerį, kuris įjungiamas (IS signalas lygus loginiam 1), patvirtinus pertrauktį (INTA loginis 1) ir draudžiant pakartotiną pertrauktį, kol signalas IS lygus loginiam 1. Trigeris išjungiamas (leidžiama pertrauktis) programiškai vykdant operaciją EOI (angl. End Of Interrupt), kai tik signalas IRQ tampa lygus loginiam 0.

Kombinuota pertraukties signalų priėmimo grandinė pateikta 30 pav. Čia priimtas ir fiksuotas dinaminis pertraukties reikalavimo signalas turi būti patvirtintas potencialiniu lygiu. Dinaminis signalas fiksuojamas IR trigeryje, o patvirtinamas, sukuriant INTA signalą loginės sandaugos elemente.

30 Pav. Kombinuota pertraukties signalų priėmimo grandinė

Praktiškai visose pertraukčių sistemose numatytas papildomas programiškai valdomas pertraukčių blokavimo mechanizmas, kuris realizuojamas, naudojant leidimo ar draudimo požymius. Šie požymiai yra atskiri programos būsenos ar specialiųjų registrų, vadinamų maskavimo kaukės registrais, bitai vadinami maskavimo bitais.

Maskavimo bitai neveikia dinaminių pertraukties signalų fiksavimo, tačiau draudžia jų tolimesnį veikimą. Statinių pertraukties signalų veikimas maskuojamas, naudojant IS trigerį.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]