|
Tezroq ro'yxatga olish mashinasini ichkariga yashiradi
|
bet | 8/10 | Sana | 12.01.2024 | Hajmi | 35,2 Kb. | | #135582 |
Bog'liq 5-amaliy mashgulotTezroq ro'yxatga olish mashinasini ichkariga yashiradi
Ba'zi oddiy stakalash mashinalari individual registrlar darajasiga qadar to'liq moslashtiriladigan chip dizayniga ega. Stek manzilining yuqori registri va to'plamning N yuqori ma'lumotlar buferlari alohida qo'shimchalar va maxsus ulanishlar bilan alohida alohida registr zanjirlaridan qurilgan .
Shu bilan birga, ko'p sonli stak mashinalari katta hajmdagi elektron qismlardan tuzilgan bo'lib, u erda ma'lumotlar buferlari registr faylida birgalikda saqlanadi va o'qish / yozish avtobuslarini almashadi. Shifrlangan stek ko'rsatmalari ushbu yashirin registr faylida bir yoki bir nechta ketma-ket harakatlar bilan taqqoslanadi. ALU yuklari va operatsiyalari eng past registrlarda ishlaydi, yashirin to'kilishlar va to'ldirishlar eng past registrlarda ishlaydi. Dekoder buyruqlar oqimining ixcham bo'lishiga imkon beradi. Agar kod oqimida to'g'ridan-to'g'ri asosiy registr faylini boshqaradigan aniq ishlarni tanlash maydonlari bo'lsa, kompilyator barcha registrlardan yaxshiroq foydalanishi mumkin va dastur tezroq ishlaydi.
Mikroprogramlangan stek mashinalari bunga misoldir. Ichki mikrokod mexanizmi - bu bir nechta RISC-ga o'xshash registrlar mashinasi yoki VLIW-ga o'xshash mashinalar. To'g'ridan-to'g'ri ma'lum bir vazifaning mikrokodini manipulyatsiya qilish orqali, ushbu mexanizm bir xil vazifa uchun ekvivalent stek kodini bilvosita boshqarish bilan taqqoslaganda har bir tsiklda juda ko'p ish olib boradi.
Yana bir misol - HP 3000 va Tandem T / 16 uchun ob'ekt kodlari tarjimonlari . [13] [14] Ular stek kodlari ketma-ketligini teng RISC kodlar ketma-ketligiga aylantirdilar. Kichkina "mahalliy" optimallashtirish stack arxitekturasining katta qismini olib tashladi. Manzillarning qayta hisob-kitoblarini hisobga olish uchun zaxira registrlardan foydalanilgan. Tarjima qilingan kod manba va maqsadli mashinalarning mos kelmasligi tufayli hali ham ko'p emulyatsiya xarajatlarini tejab qoldi. Ushbu yukga qaramay, tarjima qilingan kod tsiklining samaradorligi stack manba kodlari loopi bilan mos keldi. Va optimallashtiruvchi kompilyatorlar yordamida manba kodi to'g'ridan-to'g'ri registrlar mashinasiga qayta kompilyatsiya qilinganida, samaradorlik ikki baravar oshdi. Bu stack arxitekturasi va uning optimallashtirmaydigan kompilyatorlari asosiy apparat kuchining yarmidan ko'pini behuda sarflaganligini ko'rsatadi.
Ro'yxatdan o'tish fayllari hisob-kitoblar uchun yaxshi vositadir, chunki ular kesh ma'lumotlari orqali xotiraga murojaat qilish bilan taqqoslaganda yuqori o'tkazuvchanlik va juda past kechikishlarga ega . Oddiy mashinada registr fayli ikkita mustaqil registrni o'qishga va uchinchisini yozishga imkon beradi, barchasi bitta ALU tsiklida bitta tsikl yoki undan kam kechikish bilan. Holbuki, tegishli ma'lumotlar keshi bitta tsiklda bitta o'qish yoki bitta yozishni (ikkalasini ham) qo'zg'atishi mumkin va o'qish odatda ikkita ALU davrining kechikishiga ega. Bu quvurning ikki baravar kechikishi bilan o'tkazuvchanlikning uchdan bir qismidir. Athlon singari murakkab mashinada bu bitta tsikl bo'yicha ikki yoki undan ortiq ko'rsatmalarni bajaradi, registr fayli to'rtta yoki undan ortiq mustaqil registrlarni o'qishga, qolgan ikkitasini esa bitta ALU tsiklida bitta tsiklni kechiktirish bilan o'qishga imkon beradi. Holbuki, mos keladigan ikkita portli ma'lumotlar keshi har bir tsiklda bir nechta kechikish davrlari bilan ikkita o'qish yoki yozishni boshlashi mumkin. Shunga qaramay, bu ro'yxatga olish o'tkazuvchanligining uchdan bir qismi. Bir binoning keshni qo'shimcha portlari bilan juda qimmat.
|
| |