110
uzilish manbalari bo‘ladi, shuning uchun interfeys orqali sifatli almashuvni
ta’minlash uchun kontroller zarurdir.
Uzilish kontrolleri
– bu komponent, u kristaldagi tizimdan (SoC) barcha
apparatli voqealarni yig‘adi va ishlov berish uchun protsessorli yadroga ularni
havola qiladi. Uzilish kontrolleri uzilish tufayli sodir bo‘lgan
voqeani mosligini
aniqlashga imkon beradi, protsessorning ishlov berish mexanizmi boshqarishni mos
kelgan ishlov berish vazifasini berib yuborishi mumkin. 8.1-chizmada uzilish
kontrollerining tarkibi keltirilgan.
Uzilish kontrolleri uchta registrdan tashkil topgan bo‘lib, ular har bir uzilish
manbaiga ajratilgan bittali bitli maydonni saqlaydi. Uzilishlar status registri uzilish
yo‘llariga kiruvchi hozirdagi holatni aks ettiradi. Uzilishlar status registri uzilish
so‘rovi faol bo‘lganda o‘rnatiladi va qoldirilgan uzilish bo‘lmaganda tozalanadi.
8.1-chizma. Uzilish kontrollerining umumlashtirilgan tarkibi
Ikkinchi registr – uzilishni maskalash (ruxsat etish) registri. Qurilmalarning
qoldirilgan uzilishlari uzilish maskasi yordamida protsessorni yadrosi tomonidan
tanlashga kiritilmasligi mumkin. Agarda maska registrida bit 1 ga o‘rnatilgan
bo‘lsa, tegishli uzilish protsessorning uzish yo‘liga yetib bormaydi. Uzilish status
registri maskalanmagan uzilish yo‘llarining holatini ko‘rsatadi. YoKI bo‘yicha
birlashib faol maskalanmagan uzilishlar protsessor uchun uzilishni hosil qiladilar.
Qachonki u faol bo‘lsa, protsessor o‘z holatini saqlab qoladi va boshqarishni tashqi
Кириш
1
1…N
статус регистри
1...N маска регистри
Қолдирилган узилишлар
регистри
Процессор
Кириш
2
Протсессор
йули
Узилиш контроллери
Регисторлар
йули
111
uzilish vektoriga uzatadi. Bu ARM arxitekturali qurilmalar uchun harakterli.
Uzilishlarga ishlov beruvchi status registrini o‘qiydi va ustunlikka binoan faol
bitlarni taxlillaydi. Odatda
joriy etishda faraz qilinadiki, kichik bitlar ancha yuqori
ustunlikka ega deb. Bu jarayon dasturiy boshqariluvchi bo‘lganligi uchun, bitlarni
tekshirish navbatini oson o‘zgartirish mumkin.
Qoldirilgan uzilishlar registri qayd qilish registri (registr zaщyolka) kabi joriy
etilgan. Qachonki maskalanmagan uzulishlar faol bo‘lsa, qoldirilgan uzilishlar
registrining tegishli biti 1 ga o‘rnatiladi. So‘ng hatto uzilish signali passiv bo‘lib
qolsa ham qoldirilgan uzilishlar registridagi bit 1 ga o‘rnatilgan holda qolishni
davom etadi. Uzilishga ishlov berishni boshlab, hizmat ko‘rsatishni
tasdiqlash
uchun ishlov beruvchi 1 ni registrning tegishli razryadiga yozishi kerak. Bu
“Tozalash uchun birni yozish” deb ataladi.
1 dan...N gachan bo‘lgan signallarni ichki tashqi qurilmalar tomonidan va
shuningdek kiritish-chiqarish portlarining tashqi kirishlari tomonidan hosil qilinishi
kerak.
Tizim uzulishning har bir turiga alohida har hil ishlov berishi kerak (qurilma
drayverlari ham). Protsessor uchun bosqichli uzilish faol va qoldirilgan bo‘lib
qoladi, toki signal qiymati passiv holatga o‘tmaguncha. Bosqichli uzulishga ishlov
berayotgan qurilma drayveri signalni faol bo‘lmagan holatga qaytarish uchun
mahsus harakatlarni bajarishni ta’minlashi kerak. Aks holda qurilma doimiy
uzilishni talab qilib turadi. Yuqori holatdan past holatga o‘tish bo‘yicha uzilishni
amalga oshirish aksincha o‘zini-o‘zi tozalaydi. Ko‘pchilik
hollarda qurilma
uzilishni hosil bo‘lishini majburlovchi bir necha ichki voqealardan iborat bo‘ladi.
Yuqori holatdan past holatga o‘tish bo‘yicha uzilish uchun ishlov beruvchi barcha
xodisalarni ko‘rib chiqilishini ta’minlashi kerak. Bosqichli uzulish holatida esa
teskarisi boshqa voqealar avtomatik ravishda protsessorni uzadilar, agarda drayver
barcha ichki uzilish manbalarini darhol tozalamasa. Bosqichli uzilish umumiy yo‘lni
montajli YoKI yordamida taqsimlashi mumkin.