Mis on katkestus: tüübid ja selle rakendused

Proovige Meie Instrumenti Probleemide Kõrvaldamiseks





Arvutid kasutavad mitmesuguste riistvarafunktsioonide haldamiseks katkestustaotlusi. Riistvaralised katkestused võeti esmakordselt kasutusele UNIVAC 1103 poolt aastal 1953. Esimese katkestuste maskeerimise esinemissageduse lisas IBM 650 1954. aastal. Erinevate riistvaraseadmete jaoks on hädavajalik määrata erinevad IRQ-d erinevate funktsioonide täitmiseks. Programmi käivitamise ajal vajavad seadmed nagu klaviatuurid, hiir protsessori teenuseid ja tekitavad katkestuse, et protsessorilt tähelepanu saada ja taotletud teenust töödelda. Need on tuntud kui katkestab . Üks sisend- / väljundseadme siinidest on pühendatud selle eesmärgi täitmisele, on tuntud kui katkestusteenuse rutiin (ISR). Neid kasutatakse erinevates rakendustes, näiteks ajaliselt tundlike sündmuste jaoks, andmeedastuseks, ebanormaalsete sündmuste rõhutamiseks, valvekoera taimeritele, lõksudele jne.

Mis on katkestus?

Definitsioon: Seda nimetatakse sisendiks signaal millel on kõrgeim prioriteet riist- või tarkvarasündmuste jaoks, mis nõuavad sündmuse viivitamatut töötlemist. Arvutamise esimestel päevadel protsessor pidi ootama signaali, et mis tahes sündmusi töödelda. Protsessor peaks kontrollima kõiki riist- ja tarkvaraprogramme, et mõista, kas töödeldavat signaali on olemas. See meetod kulutaks mitu tsüklit ja muudab protsessori hõivatud. Igaks juhuks, kui signaali genereeritakse, võtab protsessor sündmuse töötlemiseks jälle aega, mis viib süsteemi kehva jõudluseni.




Selle keerulise protsessi ületamiseks võeti kasutusele uus mehhanism. Selles mehhanismis saadab riist- või tarkvara signaali protsessorile, mitte protsessor kontrollib riist- või tarkvara signaale. Signaal hoiatab protsessorit kõrgeima prioriteediga ja peatab praegused tegevused, salvestades selle praeguse oleku ja funktsiooni, ning töötleb katkestuse kohe, seda nimetatakse ISR-iks. Kuna see ei kesta kaua, taaskäivitab protsessor tavapärase tegevuse kohe pärast selle töötlemist.

Vahele segama

Vahele segama



Katkestuse tüübid

Need liigitatakse kahte põhitüüpi.

Riistvara katkestab

Elektrooniline signaal, mis saadetakse protsessoriga suhtlemiseks väliselt seadmelt või riistvaralt, mis näitab, et see vajab kohest tähelepanu. Näiteks katkestused klaviatuurilt või hiire toiming riistvarakatkestused põhjustavad protsessori lugemise ja töötlemise. Nii et see saabub asünkroonselt ja käsu täitmise ajal mis tahes ajahetkel.

Riistvarakatkestused liigitatakse kahte tüüpi


  • Maskeeritavad katkestused - Protsessorid peavad katkestama maski registri, mis võimaldab riistvara katkestusi lubada ja keelata. Iga signaal on natuke maskiregistrisse paigutatud. Kui see bitt on määratud, lubatakse katkestamine ja keelatakse, kui natuke pole määratud, või vastupidi. Signaale, mis katkestavad protsessorid nende maskide kaudu, nimetatakse maskeeritud katkestusteks.
  • Mittemaskeeritavad katkestused (NMI) - NMI-d on kõige prioriteetsemad tegevused, mida tuleb töödelda kohe ja igas olukorras, näiteks valvuritaimerilt genereeritud ajalõpu signaal.

Tarkvara katkestab

Protsessor ise taotleb tarkvara katkestamist pärast teatud juhiste täitmist või kui teatud tingimused on täidetud. Need võivad olla spetsiifilised juhised, mis käivitavad katkestuse, näiteks alamprogrammi kõned, ja võivad käivituda ootamatult programmi täitmisvigade tõttu, mida nimetatakse eranditeks või lõksudeks.

Käivitamismeetodid

Üldiselt on need signaalid loodud käivitamiseks kas loogilise signaali taseme või signaali serva abil. Neid meetodeid on kahte tüüpi.

Taseme käivitatud katkestus

Seda tüüpi sisendmoodul kutsub katkestuse, kui selle teenuse tase on kinnitatud. Kui katkestuse allikat jätkatakse, kui püsivara katkestuse käitleja sellega tegeleb, taastub see moodul ja käivitab käitleja uuesti kutsuma. Taseme käivitatavad sisendid ei ole head, kui neid kinnitatakse pikemaks ajaks.

Servaga käivitatav katkestus

Servaga käivitatud katkestuse sisendmoodul kutsub katkestuse kohe, kui ta tuvastab kinnitava serva - langeva või tõusva serva. Serva märgatakse siis, kui allika tase muutub. Seda tüüpi käivitamine vajab viivitamatut tegutsemist, olenemata allika aktiivsusest.

Taseme serva käivitamine

taseme serva käivitav

Süsteemi juurutamine

Katkestused rakendatakse riistvarale kui komponendile koos juhtimisliinidega või integreeritud sisse mälu alamsüsteemid. Kui juurutamine toimub riistvaras, vajab see protsessori sisendnõela ja katkestusseadme vahel ühenduse loomiseks programmeeritavat katkestuskontrollerit (PCI). PCI multipleksib erinevad katkestuse allikad ühe või kahe protsessori liinile. Kui see on rakendatud seoses mälukontrolleriga, kaardistatakse süsteemi mäluaadressi pesa otse katkestustega.

Jagatud katkestustaotlused (IRQ)

Servaga käivitatava katkestuse, üles- või allatõmbega takisti kasutatakse katkestusliini juhtimiseks. See liin edastab iga seadme poolt tekitatud impulsi. Kui erinevatest seadmetest genereeritud katkestusimpulsid toimuvad õigeaegselt, peab CPU kutsuma impulsi tagaosa, et katkestusi mitte vahele jätta, misjärel CPU tagab iga seadme kontrollimise teenusetaotluste suhtes. Hästi käituvad IRQ-liine jagavate tõmmetakistitega ISA-tüüpi emaplaadid peavad hästi töötama. Kuid mitmed seadmed, mis jagavad IRQ-liini vanemates süsteemides halvasti kujundatud programmeerimisliidesega, raskendab katkestuste töötlemist. Teiselt poolt aitab uus süsteemiarhitektuur, näiteks PCI, sellele probleemile märkimisväärset leevendust pakkuda.

Hübriid

Hübriidset tüüpi süsteemi juurutamisel on kombineeritud nii serva kui ka taseme käivitatud signaalimine. Riistvara otsib serva ja kontrollib ka seda, kui signaal on teatud aja jooksul aktiivne. Hübriidtüüpi kasutatakse tavaliselt maskeerimata katkestuse (NMI) sisendina, mis tagab, et vale katkestused süsteemi ei mõjuta.

Sõnum - Signaaliga

Sõnumiga signaalitud katkestustaotlus teenuse jaoks, kasutades seadmesignaale, edastades sõnumi a kaudu suhtlemine kanal, näiteks arvuti buss . Need ei kasuta füüsilist katkestusjoont. PCI Express toimib jadasiinina ja seda kasutatakse eranditult sõnumiga signaalitud katkestustena.

Uksekell

Uksekella katkestust kasutab tarkvarasüsteem tavaliselt mehhanismina, et anda arvuti riistvarale märku töö lõpetamiseks. Riistvara ja tarkvara vastastikusel kokkuleppel paigutab tarkvara andmed tuntud mälukohta ja helistab uksekella, et teavitada riistvara, et andmed on valmis ja ootavad töötlemist. Nüüd saab arvuti riistvaraseade aru, et andmed kehtivad, ja töötleb neid vastavalt.

Mitme protsessori IPI

Mitmeprotsessorilised süsteemid saadetakse protsessori katkestustaotlus protsessori vaheliste katkestuste (IPI) kaudu teisele protsessorile

Tüüpilised kasutusalad / rakendused

Need on võimsad sisendid, mida tavaliselt kasutatakse

  • Teenindage riistvaralisi taimereid, käsitsege klaviatuuri lööke ja hiire toiminguid
  • Reageerige kiiresti tundlikele või reaalajas toimuvatele sündmustele
  • Andmeedastus välisseadmetesse ja sealt välja
  • Reageerib esmatähtsatele ülesannetele nagu väljalülitamise signaalid, lõksud ja valvekoera taimerid
  • Näitab protsessori ebanormaalseid sündmusi
  • Väljalülitamise katkestus näeb ette voolukatkestuse, mis võimaldab seadme korralikult välja lülitada süsteemi
  • Perioodiline katkestus absoluutse aja jälgimiseks

KKK

1). Miks kasutatakse katkestusi?

Neid kasutatakse keskseadme tähelepanu saamiseks riistvara või tarkvara soovitud teenuste osutamiseks.

2). Mis on NMI?

NMI on maskeerimata katkestus, mida protsessor ei saa ignoreerida ega keelata

3). Mis on katkestuse kinnitamise rea funktsioon?

Protsessor saadab seadmetele signaali, mis näitab, et ta on valmis katkestusi vastu võtma.

4). Kirjeldage riistvara katkestust. Tooge näiteid

Selle genereerib väline seade või riistvara, näiteks klaviatuuriklahvid või hiire liikumine kutsub riistvarakatkestusi

5). Kirjeldage tarkvara katkestust.

See on määratletud kui spetsiaalne käsk, mis kutsub esile katkestuse, näiteks alamprogrammi kõned. Tarkvara katkestused võib käivitada ootamatult programmi täitmisvigade tõttu

6). Millisel katkestusel on kõrgeim prioriteet?

  • Käivitatud pole maskeeritav serv ja tase
  • TRAPil on kõrgeim prioriteet

7). Andke katkestuse mõned kasutusviisid

  • Reageerige kiiresti tundlikele või reaalajas toimuvatele sündmustele
  • Andmeedastus välisseadmetesse ja sealt välja
  • Reageerib esmatähtsatele ülesannetele nagu väljalülitamise signaalid, lõksud ja valvekoera taimerid
  • Näitab protsessori ebanormaalseid sündmusi

8). Mis on hübriidne süsteemi juurutamise tüüp?

Hübriidset tüüpi süsteemi juurutamisel on kombineeritud nii serva kui ka taseme käivitatud signaalimine. Riistvara otsib serva ja kontrollib ka seda, kui signaal on teatud aja jooksul aktiivne.

Selles artiklis oleme mõistnud katkestab ja kuidas neid kasutatakse taotletud teenuste täitmiseks. Samuti arutasime, millised on tüübid, süsteemi juurutamine ja selle kasutusalad.