Uzilish kechikishi[tahrir | manbasini tahrirlash]

|
Uzilish kechikishi[tahrir | manbasini tahrirlash]
|
bet | 9/10 | Sana | 21.07.2024 | Hajmi | 295 Kb. | | #268158 |
Bog'liq XFX Maxkamxo\'jayev Uzilish kechikishi[tahrir | manbasini tahrirlash]
Umumiy maqsadli kompyuterlardan farqli o'laroq, o'rnatilgan tizimlarda ishlatiladigan mikrokontrollerlar ko'pincha optimallashtirishga intilishadi uzilish kechikishi ko'rsatmalar o'tkazuvchanligi ustidan. Muammolarga kechikishni kamaytirish ham, uni bashorat qilish ham kiradi (Real vaqtda nazoratni qo'llab-quvvatlash uchun).
Elektron qurilma uzilishga olib kelganda, kontekstni o'zgartirish vaqtidagi oraliq natijalar (registrlar) uzilishlarni boshqarish uchun mas'ul bo'lgan dasturiy ta'minot ishga tushishidan oldin saqlanishi kerak. Bundan tashqari, ular bu kesish xandaqlari tugagandan so'ng tiklanishi kerak. Agar ko'proq protsessor registrlari mavjud bo'lsa, bu saqlash va tiklash jarayoni uzoqroq davom etishi va kechikish vaqtini oshirishi mumkin. (Agar ISR ma'lum registrlardan foydalanishni talab qilmasa, ularni saqlash va tiklash o'rniga ularni yolg'iz qoldirishi mumkin, shuning uchun bu holda bu registrlar kechikish bilan bog'liq emas.) Bunday kontekstni qisqartirish / kechikishlarni tiklash usullari ularning protsessorlariga nisbatan. kamroq registrlarga ega bo'lishni o'z ichiga oladi (istalmagan, chunki u ko'pchilik uzluksiz ishlov berishni sezilarli darajada sekinlashtiradi) yoki hech bo'lmaganda apparat ularning barchasini saqlamasligi kerak (agar dasturiy ta'minot qolgan qismini "qo'lda" saqlash bilan qoplashi kerak bo'lsa). Boshqa usullar silikon eshiklarni "soya registrlari" ga sarflashni o'z ichiga oladi: uzilish dasturi tomonidan ishlatiladigan faqat bitta yoki bir nechta takroriy registrlar maxsus to'plamni qo'llab-quvvatlaydi.
Joriy CPU faoliyatini bajarish uchun zarur bo'lgan tsikllar. Ushbu xarajatlarni minimallashtirish uchun mikrokontrollerlar qisqa quvur liniyalariga ega (ko'pincha uchta ko'rsatma yoki undan kam), kichik yozish tamponlariga ega va uzoqroq ko'rsatmalar doimiy yoki qayta ishga tushirilishini ta'minlaydi. RISC dizayn tamoyillari eng ko'rsatmalar ko'chadan bir xil miqdorda olib ta'minlash, eng bunday davom ettirish/restart mantiq zarurligini oldini yordam.
To'xtatilishi kerak bo'lgan har qanday tanqidiy qismning uzunligi. Muhim bo'limga kirish bir vaqtning o'zida ma'lumotlar tuzilishiga kirishni cheklaydi. Ma'lumotlar tuzilmasiga uzilish ishlov beruvchisi kirishi kerak bo'lganda, muhim qism ushbu uzilishni bloklashi kerak. Shunga ko'ra, uzilish kechikishi, uzilish bloklanganligi bilan ortadi. Tizimning kechikishida qattiq tashqi cheklovlar mavjud bo'lganda, ishlab chiquvchilar ko'pincha uzilish kechikishlarini o'lchash va qaysi muhim bo'limlar sekinlashuvga olib kelishini aniqlash uchun vositalarga muhtoj.
Bir umumiy texnikasi faqat bloklari muhim bo'limda davomida barcha uzilishlar. Bu amalga oshirish uchun oson, lekin ba'zan muhim bo'limlar bezovta uzoq olish.
Keyinchalik murakkab texnika ushbu ma'lumotlar tuzilishiga kirishni boshlashi mumkin bo'lgan uzilishlarni bloklaydi. Bu ko'pincha tizimning tegishli ma'lumotlar tuzilmalariga yaxshi mos kelmaslikka moyil bo'lgan uzilish ustuvorliklariga asoslanadi. Shunga ko'ra, ushbu uslub asosan juda cheklangan muhitda qo'llaniladi.
Protsessorlar ba'zi muhim bo'limlar uchun apparat yordamiga ega bo'lishi mumkin. Masalan, so'z ichidagi bitlarga yoki baytlarga atomik kirishni qo'llab-quvvatlash yoki ARMv6 arxitekturasida kiritilgan ldrex/STREX eksklyuziv kirish ibtidoiylari kabi boshqa atomik kirish ibtidoiylari.
Uyalashni to'xtatish. Ba'zi mikrokontrollerlar yuqori ustuvor uzilishlarga past ustuvor bo'lganlarni to'xtatishga imkon beradi. Bu dasturiy ta'minotga vaqtni tanqid qiladigan uzilishlarni unchalik muhim bo'lmaganlarga qaraganda yuqori ustuvorlik (va shu bilan pastroq va taxmin qilinadigan kechikish) berish orqali kechikishni boshqarish imkonini beradi.
Trigger darajasi. Uzilishlar orqa tomondan sodir bo'lganda, mikrokontrollerlar qo'shimcha kontekstni saqlash/tiklash tsiklidan quyruq qo'ng'iroqlarini optimallashtirish shakli bilan qochishlari mumkin.
Pastki so'nggi mikrokontrollerlar yuqori so'nggi bo'lganlarga qaraganda kamroq uzilish kechikishini boshqarishni qo'llab-quvvatlaydi.
|
| |