"" O'qish "va" Yozish "dan tashqari barcha buyruqlar registr-registr formatiga ega.
Ko'pgina ko'rsatmalarning bajarilishini soddalashtirish va ularni registr-registr formatiga o'tkazish uchun siz protsessorga juda katta miqdordagi umumiy registrlarni taqdim etishingiz kerak. Bu keyingi operatsiyalarda operandlar sifatida ishlatiladigan oraliq natijalarni vaqtincha saqlashni ta'minlashga imkon beradi va operatsiyalarni bajarilishini tezlashtiradigan xotiraga kirish sonining kamayishiga olib keladi. 32 ga teng bo'lgan minimal registrlar soni aksariyat RISC kompyuter ishlab chiqaruvchilari tomonidan amalda standart sifatida qabul qilinadi.
Shakl: 9.38. VLIW registr oynalarini kesishgan tsiklik bufer
Juda uzun qo'llanma so'zi (VLIW) arxitekturasi 1980-yillarning boshlaridan beri bir qator universitet loyihalaridan ma'lum bo'lgan. VLIW g'oyasi shundan iboratki, ko'rsatmalarning parallel bajarilishini samarali rejalashtirish vazifasi "aqlli" kompilyatorga tegishli. Bunday kompilyator dastlab manba dasturini tahlil qiladi. Tahlilning maqsadi bir vaqtning o'zida bajarilishi mumkin bo'lgan barcha buyruqlarni aniqlash va buyruqlar o'rtasida ziddiyatlar yuzaga kelmasligi. Tahlil paytida kompilyator hatto ko'rib chiqilayotgan dasturning bajarilishini qisman taqlid qilishi mumkin. Keyingi bosqichda kompilyator bunday buyruqlarni paketlarga (to'plamlarga) birlashtirishga harakat qiladi, ularning har biri bitta super-uzun buyruq sifatida qaraladi. Bir nechta oddiy buyruqlarni bitta super-uzunga birlashtirish quyidagi qoidalarga muvofiq amalga oshiriladi:
„Bitta super-uzun buyruqqa birlashtirilgan oddiy buyruqlar soni protsessordagi funktsional (bajarilish) bloklari (FB) soniga teng;
«Ekstremal buyruqqa faqat turli xil FBlar tomonidan bajariladigan shunday oddiy buyruqlar kiradi, ya'ni ortiqcha uzunlikdagi buyruqning barcha tarkibiy qismlarining bir vaqtning o'zida bajarilishi ta'minlanadi.
Juda uzun buyruq odatda 256 dan 1024 bitgacha bo'ladi. Bunday meta-buyruq bir nechta maydonlarni o'z ichiga oladi (uni tashkil etadigan oddiy buyruqlar soniga ko'ra), ularning har biri ma'lum bir funktsional blok uchun operatsiyani tavsiflaydi.
Bu shakl. 9.39, bu qo'shimcha uzun buyruqning mumkin bo'lgan formatini va uning maydonlari va individual operatsiyalarni amalga oshiradigan FBlar o'rtasidagi munosabatni ko'rsatadi.
Rasmdan ko'rinib turibdiki, har bir o'ta uzun buyruqlar maydoni o'z funktsional blokiga moslangan bo'lib, bu buyruqni bajarish bloki apparatidan maksimal darajada foydalanish imkonini beradi.
RISC tipidagi buyruqlar odatda oddiy super-uzun buyruqlar sifatida ishlatiladi, shuning uchun ba'zan VLIW arxitekturasi post RISC arxitekturasi deb ataladi. Ultra uzun buyruqdagi maydonlarning maksimal soni hisoblash moslamalari soniga teng va odatda 3 dan 20 gacha. Barcha hisoblash moslamalari bitta ko'p qurilmali registr faylida saqlangan ma'lumotlarga ega.
VLIW arxitekturasini statik super skalar arxitekturasi deb hisoblash mumkin. Bu shuni anglatadiki, kod ish paytida dinamik ravishda emas, balki kompilyatsiya vaqtida parallellanadi. Uzoq muddatli buyruqning bajarilishida ziddiyatlar ehtimoli chiqarib tashlanganligi VLIW protsessorining apparatini nihoyatda soddalashtirishga va natijada yuqori ko'rsatkichlarga erishishga imkon beradi. Raqamli signal protsessorlari va multimedia protsessorlarining katta qismi VLIW arxitekturasi asosida 1 milliard operatsiya / s dan ortiq ishlash qobiliyatiga ega.
VLIW arxitekturasidagi ikkita muammo:
• registr faylining murakkabligi va, avvalambor, ushbu faylning hisoblash qurilmalari bilan aloqalari;
"Dasturda mustaqil buyruqlarni topishga qodir kompilyatorlarni yaratish, bunday buyruqlarni uzun satrlarga bog'lash va ularning parallel bajarilishini ta'minlashdagi qiyinchiliklar. Rossiyada VLIW kontseptsiyasi Elbrus 3-1 superkompyuterida amalga oshirildi va uning izdoshi Elbrusda yanada rivojlandi. 2000 "(E2k).
Сообще ства
Shakl: 9.39. Buyruqning o'ta uzun formati va buyruqlar maydonlarining EPIC ijro etuvchi bo'limi komponentlari bilan aloqasi
VLIW g'oyasining keyingi rivojlanishi EPIC (aniq Parallel Instruction Computing) arxitekturasi - aniq ko'rsatma parallelligi bilan hisoblash edi. Intel va Hewlett - Packard firmalarining birgalikdagi rivojlanishi sifatida paydo bo'lgan me'morchilik VLIW texnologiyasining takomillashtirilgan versiyasi bo'lgan yangi yondashuvni amalga oshiradi. Ushbu strategiyani birinchi bo'lib Intelning Itanium mikroprotsessori amalga oshirdi. Intel mahsulotlarida IA-64 (Intel Architecture - 64) deb nomlangan EPIC arxitekturasida Hewlett-Packard Corp. protsessor yuz yigirma sakkizta 64 bitli umumiy registrlar (RON) va yuz yigirma sakkizta 80- mavjudligini taxmin qiladi. bit suzuvchi nuqta registrlari. Bundan tashqari, IA-64 protsessorida 64 bitli predikat registrlari mavjud.
IA-64 arxitekturasidagi buyruq formati shakl. 9.40. ularning dizaynlarida.
Shakl: 9.40. IA-64 arxitekturasidagi juda uzoq buyruq formati
Buyruqlar kompilyator tomonidan ortiqcha uzunlikdagi buyruq - 128 bit uzunlikdagi to'plamga qadoqlangan (guruhlangan). Bu havolada uchta buyruq va shablon mavjud bo'lib, ular buyruqlar o'rtasidagi bog'liqlik (I1 buyrug'ini I0 buyrug'i bilan parallel ravishda bajarish mumkinmi yoki I1 faqat I0dan keyin bajarilishi kerakmi), shuningdek boshqa havolalar (S0 havolasidan I2 buyrug'i bilan parallel ravishda buyruqni bajarish mumkinmi yoki yo'qmi). S3 to'plamidan I3).
Biz uchta buyruq to'plamini yaratish uchun barcha variantlarni sanab o'tamiz:
„I0 || I1 || I2 - barcha buyruqlar parallel ravishda bajariladi;
„I0 & I1 || I2 - avval I0, keyin I1 va I2 parallel ravishda bajariladi;
„I0 || I1 & I2 - I0 va I1 parallel ravishda qayta ishlanadi, ulardan keyin - I2;
„I0 & I1 & I2 - buyruqlar I0, I1, I2 ketma-ketlikda bajariladi.
Bir nechta uchta ko'rsatmalar protsessorning uchta funktsional bloklari to'plamiga to'g'ri keladi. IA-64 protsessorlari boshqa bloklarni o'z ichiga olishi mumkin, shu bilan birga kodga mos keladi. Shablon, shuningdek, to'plamlar orasidagi bog'liqlikni ko'rsatishi sababli, uchta FB dan N bir xil bloklarga ega bo'lgan protsessor N × 3 ko'rsatmalarining (N to'plamlari) ortiqcha uzunlikdagi ko'rsatmalariga mos keladi. Bu IA-64 ning o'lchovliligini ta'minlaydi.
To'plamdagi uchta jamoaning har biri o'z navbatida beshta maydondan iborat:
Operatsion kodining 13-bitli maydoni;
64 ta predikatlar registrlaridan birining raqamini saqlaydigan 6 bitli predikat maydoni;
Birinchi operandni o'z ichiga olgan umumiy maqsadli registr yoki suzuvchi nuqta registrining sonini ko'rsatadigan birinchi operandning 7-bitli maydoni (birinchi manba); „Ikkinchi operandning 7-bitli maydoni (ikkinchi manba), bu umumiy maqsadli registr yoki ikkinchi operandni o'z ichiga olgan suzuvchi nuqta registrining sonini bildiradi;
"Natijaning 7-bitli maydoni (qabul qiluvchi), bu erda umumiy maqsadlar uchun registr yoki suzuvchi nuqta registrining raqami ko'rsatilgan, bu erda
buyruq natijasi qayd qilinadi. Predikatlar maydonining roli aniqlanishi kerak. Predication - bu shartli filiallarni boshqarish usuli. Xulosa shuki, kompilyator ikkala filial ham protsessorda parallel ravishda bajarilishini bildiradi, chunki EPIC protsessorlari ko'plab funktsional bloklarga ega bo'lishi kerak. Agar manba dasturida shartli tarmoqlanish sodir bo'lsa (statistik ma'lumotlarga ko'ra har olti buyruq), u holda turli filiallarning buyruqlari turli predikatlar registrlari bilan belgilanadi (buyruqlar buning uchun mos maydonlarga ega), keyin bu buyruqlar birgalikda bajariladi, ammo ularning natijalari registr qiymatlariga qadar yozilmaydi. predikat (RP) aniqlanmagan. Tarmoqlanish sharti nihoyat baholanganda, "to'g'ri" shoxga mos keladigan RP 1 ga, ikkinchisi 0 ga o'rnatiladi, natijalarni yozishdan oldin protsessor predikat maydonini tekshiradi va faqat predikat maydoni bitta qiymat bilan RP ni ko'rsatadigan buyruqlarning natijalarini yozadi. Bashoratlar ikkita registrda saqlangan qiymatlarni taqqoslash orqali hosil bo'ladi. Taqqoslash natijasi ("To'g'ri" yoki "Noto'g'ri") RPlardan biriga kiritiladi, ammo shu bilan birga olingan natijaning teskari qiymati ikkinchi RPda qayd etiladi. Ushbu mexanizm protsessorga IF-THEN-ELSE kabi tuzilmalarni yanada samarali bajarishga imkon beradi. Bajarish uchun buyruqlar berish mantig'i VLIW kabi an'anaviy protsessorlarga qaraganda ancha murakkab, ammo super skaler tasodifiy protsessorlarga qaraganda ancha sodda. Intel va HP kompaniyalarining fikriga ko'ra, EPIC kontseptsiyasi VLIW me'moriy tashkilotining barcha afzalliklarini saqlab qolgan holda, aksariyat kamchiliklardan xoli. EPIC arxitekturasining xususiyatlari:
„Ko'p sonli registrlar;
"Arxitekturani ko'p sonli funktsional bloklar uchun miqyosi. Intel va HP ushbu mulkni "Shaxsiy miqyosda ko'rsatmalar to'plami" deb atashadi;
• mashina kodidagi aniq parallellik. Buyruqlar orasidagi bog'liqlikni qidirish protsessor tomonidan emas, balki kompilyator tomonidan amalga oshiriladi;
"Predication - shartli bandning turli tarmoqlari buyruqlari predikat maydonlari (shart maydonlari) bilan ta'minlanadi va boshlanadi
Do'stlaringiz bilan baham: |