Kesh-hotiradagi axborotlarni yangilash




Download 2,55 Mb.
Pdf ko'rish
bet39/154
Sana10.01.2024
Hajmi2,55 Mb.
#133982
1   ...   35   36   37   38   39   40   41   42   ...   154
Bog'liq
UMK OT (3)

 
Kesh-hotiradagi axborotlarni yangilash. Kesh-hotira bilan ishlaganda bir 
vaqtning o‘zida axborotning ikkita nusxasi mavjut bo‘lishi mumkin: birinchisi kesh-
hotirada, ikkinchisi esa asosiy hotirada joylashadi. Asosiy hotiradagi axborotni 
nafaqat protsessor o‘zgartira oladi, hotiraga bevosita ega bo‘lish kanali orqali 
ishlochi kiritish-chiqarish qurilmasi ham o‘zgartira oladi. Shuning uchun ularni bir 
–birini inkor qilmasligini yoki kogerentligini quvvatlash kerak. Umumiy hotiradan 
foydalanuvchi bir necha mikrokontroller bo‘lgan tizimlarda ham shuningdek 
kogerentlikni quvvatlash kerak, lekin bu mikrokontrollerlarning keshlarini ham. 
Kesh-hotira 
kontrollerini 
boshqa 
protsessorlardan 
va 
kiritish-chiqarish 
qurilmalaridan magistraldagi so‘rovlarni nazorat qilib, kesh-hotira magistraldan 
so‘rovlarni olaoladigan va zarur harakatlarni amalga oshira oladigan qilib
loyihalashtiriladi. Bu qurilmalarni kuzata oluvchi kesh-hotira (snooping cashe) deb 
ataladi. Kesh-hotiraning bir necha bloklarida axborotlarning turli variantlarini paydo 
bo‘lishini oldini olish uchun kesh-hotira, protsessorlar va asosiy hotira bajaradigan
qoidalar to‘plami keshlashni kogerentlik protokolini hosil qiladi. Kesh-hotirada 
saqlash va uzatish birligi  qator yoki kesh-hotira bloki deb ataladi (32 yoki 64 bayt). 
Eng oddiy keshlashning kogerentlik protokolini o‘zaro yozish`(write 
through) deb ataladi. So‘zni yozishda kesh-mo‘ljalga olaolmadi holati bo‘lgan
holda, u asosiy hotiraga yoziladi. Kerakli so‘z majut qator kesh-hotiraga 
yuklanmaydi. Yozishda kesh-mo‘ljalga oldi holati hosil bo‘lsa kesh yangilanadi, 
yana so‘z esa MK ga yoziladi. Har doim kesh-hotira yangilanganda asosiy hotira 
ham bir vaqtning o‘zida yangilanadi. 
Yozish bo‘yicha kesh-mo‘ljalga olaolmadi holatining boshqa varianti – kesh-
hotirani yuklash (yozish bo‘yicha to‘ldirish siyosati – write allocate). Kesh-
mo‘ljalga olaolmadi holatini keltirib chiqargan so‘zga qayta murojat bo‘lish
extimoli yuqori bo‘lganda yozish bo‘yicha to‘ldirish samaralidir.


76 
Misol tariqasida 486 protsessorining kesh-hotirasini tashkillanishini batafsi 
ko‘rib chiqamiz. 
486 protsessorining birinchi bosqich keshi to‘rt kanalli tarkibga ega (4.5-
chizma). Har bir kanal 128 qatordan iborat bo‘lib, ularning har biri 16 baytdandir. 
Barcha to‘rtta kanalning bir hil nomli qatorlari 128 to‘plamni to‘rtta qatordan tashkil 
qiladi, ularning har biri o‘zining hotira manzillariga hizmat ko‘rsatadi. Har bir 
qatoriga tizimli hotira blokidan unga nusxa olingan manzil haqida 21-razryadli 
axborot to‘g‘ri keladi. Bu axborot qator tegi (Tag) deb nomlanadi. 
Undan tashqari, kesh tarkibiga dispetcher kiradi, ya’ni 128x7 tarzida 
tashkillashtirilgan hotira xududi bo‘lib, unda 128 to‘plamdan har biri uchun 4-bitli 
haqiyqiylik teglari saqlanadi va 128 to‘plamning har biri uchun 3-bitli LRU (Least 
Recently Used) kodlari saqlanadi. To‘plamning haqiyqiylik tegi ushbu to‘plamga 
kiruvchi 4 qatordan har birining o‘z tarkibiga 4 bit chinlik bitini oladi. Birga 
o‘rnatilgan chinlik biti tegishli qator to‘lganligini bildiradi, agarda u nolga 
o‘tkazilgan bo‘lsa u holda qator bo‘sh bo‘ladi. LRU biti ushbu to‘plamga qancha 
oldin murojat bo‘lganligi haqida ma’lumot beradi. Bu esa eng kam ishlatilayotgan 
to‘plamni yangilash uchun kerak bo‘ladi.
4.5-chizma. 486 protsessorining ichki keshining tarkibi 
Kesh – hotirani manzillash 28 razryadli manzil yordamida amalga oshiriladi. 
Ularning ichidan kichik 7 razryadi 128 to‘plamdan birini tanlaydilar, katta 21 
razryad tanlangan to‘plamning barcha 4 qatorning teglari bilan solishtiriladi. Agarda 
teglar manzil razryadlari bilan mos kelganda, kesh-mo‘ljalga oldi holati hosil 
16 байт 
21 бит 
16 байт 
21 бит 
3 бит 
4 бит 

127 
127 
127 


LRU 
Тэглар Қаторлар 
Тэглар Қаторлар 
Тэглар 
Хақиқатда эса 
диспетчер 
Канал 1 
Канал 4 


77 
bo‘ladi, razryadlari mos kelmaganda – kesh-mo‘ljalga olaolmadi holati hosil 
bo‘ladi. 
O‘qish sikli holatida kesh-mo‘ljalga oldi holati yuzaga kelganda bayt yoki 
so‘z kesh-hotiradan o‘qiladi. Kesh-mo‘ljalga olaolmadi holati yuzaga kelganda esa 
(qayta yuklash) kesh-hotiraning qatorlaridan birini yangilash sodir bo‘ladi. 
Yozish sikli holatida kesh-mo‘ljalga oldi holati yuzaga kelganda kesh-
hotiraga va shuningdek asosiy tizimli hotiraga yozish amalga oshiriladi. Kesh-
mo‘ljalga olaolmadi holati yuzaga kelganda esa faqat tizimli hotiraga yozish 
bajariladi, kesh-hotira qatorining yangilanishi amalga oshirilmaydi. Bu qatorni 
egallab bo‘lmaydigan bo‘lib qoladi (uning haqiyqiylik biti nolga o‘tkaziladi). 
Yozishning bundek siyosati bevosita yozish deb nomlangan (Write Through, 
pryamoy zapisyu ili skvoznoy). Protsessorning ancha keyingi modellarida teskari 
yozish (Write Back, obratnaya zapis) qo‘llanilgan, u ancha tez ishlovchi bo‘lib, 
sababi tashqi shinaga murojat qilish soni ancha kam talab qilinadi. 
Teskari yozish ishlatilganda yoziladigan axborot faqat kerakli qator keshda 
bo‘lmasagina asosiy hotiraga jo‘natiladi. Kesh-mo‘ljalga oldi holatida esa faqat 
kesh modifikatsiyalanadi. O‘zgartirilgan axborot faqat keshda yangi qator qayta 
yozilgandagina asosiy hotiraga tushadi. Oldingi qator esa butunligicha asosiy 
hotiraga qayta yoziladi, shu bilan birga kesh qiymatlari bilan asosiy hotira 
qiymatlarining bir hilligi tiklanadi. 
Talab etilgan qator keshda berilmagan hol bo‘lsa (kesh-mo‘ljalga olaolmadi 
holati), yozishga so‘rov tashqi shinaga yo‘naltiriladi, o‘qishga so‘rovga bir muncha 
murakkabroq ishlov beriladi. Agarda bu so‘rov hotiraning keshlanadigan xududiga 
tegishli bo‘lsa, u holda keshni butun qatorini to‘ldirish sikli bajariladi (16 bayt 
hotiradan to‘plamning qatorlaridan biriga qayta yoziladi, ushbu manzilga hizmat 
ko‘rsatadigan). Agarda so‘ralgan axborotlar bitta qatorga sig‘masa, u holda qo‘shni 
qator to‘ldiriladi. Protsessor qatorini eng tez usulda to‘ldirishga harakat qilinadi – 
paketli sikl bilan, biroq hotirani tashqi kontrolleri ancha sekin uzatishlarni 
ishlatilishini talab qilishi mumkin. 


78 
Protsessorni axborotlarga bo‘lgan ichki so‘rovini darhol qoniqtiriladi, 
hotiradan axborotlar o‘qilishi boshlanishi bilan, qatorni to‘ldirish jaroyoni
axborotga ishlov berish bilan parallel ravishda olib borilishi mumkin. Hotiraning 
ushbu manzili hizmat ko‘rsatadigan to‘plamda agarda bo‘sh qator bo‘lsa aynan u 
to‘ldiriladi. Agarda bo‘sh joy bo‘lmasa ko‘p vaqt murojat qilinmagan qator
to‘ldiriladi. Buning uchun LRU bitlari ishlatiladi, ular ushbu to‘plam qatoriga har 
bir murojat qilganida modifikatsiyalanadi. 
Undan tashqari, qatorlarni bekor qilish (ularni haqiqiy emas deb e’lon qilish) 
va butun kesh – hotirani tozalash imkoniyati mavjut. Bevosita yozishda keshni 
tozalash protsessorning mahsus tashqi signali yordamida amalga oshiriladi, dastur 
yordamida mahsus buyruqlar orqali va shuningdek dastlabki nolga o‘tkazishda – 
RESET signali bo‘yicha. Keshni tozalash yozuvga ishlov berishida, barcha 
modifikatsiya qilingan qatorlarni asosiy hotiraga bo‘shatish nazarda tutiladi. 

Download 2,55 Mb.
1   ...   35   36   37   38   39   40   41   42   ...   154




Download 2,55 Mb.
Pdf ko'rish