Mavzu: cisc, risc va vliw arxitekturalari. Reja: Vliw arxitekturasi haqida

|
Mavzu: cisc, risc va vliw arxitekturalari. Reja: Vliw arxitekturasi haqida
|
Sana | 09.01.2024 | Hajmi | 30,88 Kb. | | #133571 |
Bog'liq Mavzu cisc, risc va vliw arxitekturalari. Reja Vliw arxitektur
Muhamamd al Xorazmiy nomidfagi
Toshent Axborot texnalogiyalari universiteti
Radio va Mobil aloqa fakulteti
Kompyuter tarmoqlari fdanidan
Mustaqil ish
Guruh:831_20
Bajardi:Abdimannonov Asrorbek
Tekshirdi:Xadjayev Nodir
Toshkent 2022
Mavzu: CISC, RISC va VLIW arxitekturalari.
Reja:
1.Vliw arxitekturasi haqida.
2.CISC arxitekturasi.
3.RISC arxitekturasi.
4.Xulosa.
5.Foydalanilgan adabiyotlar.
CISC, RISC, VLIW... Va keling, yangi arxitekturani o'ylab ko'raylik
Protsessorlar
Yaqinda Habré-da VLIW arxitekturasining CISC va RISC-ga nisbatan afzalliklari/kamchiliklari haqida bir nechta maqolalar paydo bo'ldi. Ammo ikkalasi ham mukammallikdan yiroq! Superskalar protsessorlar ketma-ket ko'rsatmalarni parallellashtirish va mumkin bo'lgan o'tishlarni bashorat qilish uchun resurslarni sarflashga majbur bo'ladilar, bu nafaqat hisoblash resurslarining haddan tashqari ko'payishiga olib keladi, balki shunchaki xavflidir (Spektor va Meltdown haqida o'ylang).
VLIW 23 tagacha (Elbrus) parallel ko'rsatmalarning bajarilishini kutish mumkin bo'lgan uzun buyruq so'zlarini bajarishni o'z ichiga oladi. Biroq, bu strukturaning kamchiliklari yo'q emas: boshqaruv so'zining bajarilish vaqti eng sekin ko'rsatma bilan belgilanadi (masalan, bo'linish yoki xotiraga kirish); ko'rsatmalarning maksimal sonini parallel ravishda bajarish zaruratidan kelib chiqqan holda, har bir yadro uchun hisoblash quvvatining katta zaxirasini saqlash kerak; xotiraga kirish ko'rsatmalarini parallellashtirish uchun juda cheklangan imkoniyatlar; parallelizmning faqat bitta ko'rsatma bosqichi bilan cheklanishi; filialni bashorat qilish zarurati (superskalyar protsessorlarda bo'lgani kabi);
Ushbu maqolada men RISC, CISC va VLIW arxitekturalarining afzalliklarini birlashtirishi kerak bo'lgan muqobil protsessor arxitekturasi haqida o'z fikrlarimni taqdim etaman.
Shunday qilib, men sizning e'tiboringizga protsessorning protsessual arxitekturasini taqdim etaman:
Proseon hovuzi ( Proce ssor va Nucleon ( proton yoki neytron) dan) ko'rsatmalar poezdini kutayotgan yoki bajaruvchi SuperRISC protsessorlari to'plamidir. Yadro ko'rsatmalar oqimlarini bajarish va tashqi ma'lumotlar chaqiruvlarini boshqarish uchun boshqaruv protsessoridir. Ko'p kanalli kesh eng tez-tez talab qilinadigan ma'lumotlarga tezkor kirish imkonini beradi. Tashqi almashinuv bloki so'rovlarni tashqi (mikroprotsessorga nisbatan) xotiraga, tashqi qurilmalarga tarjima qiladi va tashqi uzilishlarni qabul qilishni ta'minlaydi.
Quyida yangi arxitektura (proceonik ramka) uchun tamoyillar keltirilgan.
Protsessor ko'p yadroli.
Yadro buyruqlarni bajarmaydi, faqat buyruqlar oqimini va xotiraga kirishni boshqaradi.
Ko'rsatmalar proceonlar tomonidan bajariladi - bu cheklangan ko'rsatmalar to'plamiga ega (birinchi navbatda dastur bajarilishini boshqarish bilan cheklangan) SuperRISC protsessor yadrolari.
Yadro butun buyruqlar blokini - paragrafni qayta ishlaydi (keyingi o'rinlarda bu yopiq buyruqlar to'plami deb tushuniladi, ular bajarilgandan so'ng dasturning holati o'zgaradi. Aytishimiz mumkinki, protsessor yadrosi uchun paragraf buyruqdir). , unda alohida ma'lumotlar va alohida bir yoki bir nechta ko'rsatmalar qatorlari mavjud.
Paragraf prefiks bilan boshlanadi va oxiri bilan tugaydi. Prefiks va tugatish yadro tomonidan boshqariladi.
Prefiks paragrafda qancha qator borligini, ularning uzunligi va turini aniqlaydi. Birinchi qator - ishchi qatorlarda joylashgan jamoalar uchun ma'lumotlar. Buning yordamida buyruqlarni ma'lumotlardan ajratish va har bir buyruqni belgilangan uzunlikka aylantirish mumkin.
Oxiri bandning barcha buyruqlari ishining oxirida registrlarga qanday natijalar qo'yilganligini belgilaydi. Shuningdek, keyingi qaysi paragraf bajariladi.
Buyruqlar satrlari parallel ravishda bajariladi (agar iloji bo'lsa, erkin proceonlar mavjud bo'lsa). Tarkibdagi jamoalar esa ketma-ket.
Proseonlar (va shuning uchun buyruq satrlari!) har xil bo'lishi mumkin (masalan, 32 bitli butun operatsiyalar uchun proceon, suzuvchi nuqta raqamlari bilan ishlash, qatorli ma'lumotlar bilan ishlash, qo'sh so'zlar bilan ishlash uchun va hokazo). Biroq, barcha proceonlar uchun buyruq formati bir xil.
Proceon buyruqlar tizimida o'tish buyruqlari mavjud emas, shart bo'yicha keyingi buyruqni bajarish / o'tkazib yuborish buyrug'i va qatorni tugatish, paragrafni tugatish buyruqlari bundan mustasno. Proseonlarda ijro bayroqlari ishlatilmaydi (keyingi ko'rsatmada hisobga olish uchun butun son operatsiyalarida tashishdan tashqari).
Proseonlar yadroga ulanmagan, lekin kerak bo'lganda ko'rsatmalarning ma'lum bir paragrafini bajarish uchun ajratilgan. Agar paragrafdagi satrlarga qaraganda proceonlar kamroq bo'lsa, u holda ba'zi qatorlar ketma-ket bajariladi.
Paragraf faqat halokatga olib keladigan halokatli xato bo'lsa, to'xtatilishi mumkin. Boshqa hollarda, uzilish xatboshi oxirigacha kechiktiriladi. Masalan, 0 ga bo'linish xatboshida zudlik bilan tanaffusga olib kelmaydi, faqat xatolik yuz bergan bitta o'lchagichni to'ldirishga olib keladi.
Protsessor registrlari 4 guruhga bo'linadi: Umumiy maqsadli registrlar (RON (R0-R15) - har biri 64 bitli 16 registr, nusxalar satrlar boshida proceonlarga o'tkaziladi, satrlar oxirida ularning kombinatsiyasi ko'chiriladi. yadroga), mahalliy (vaqtinchalik / vaqtinchalik) proseonlarning registrlari (RT - proseon turiga qarab 16 bitli registrlar, satr oxirida, qiymatlar yo'qoladi, boshida. satrda ular 0 dan 14 gacha bo'lgan qiymatlar bilan ishga tushiriladi, ikkinchisi -1 qiymatini oladi), ma'lumotlar registrlari (RD - faqat o'qish uchun, ma'lumotlar bilan ishga tushirilgan 0-chi registrlar, ma'lumotlar nolga qaytariladi), boshqaruv registrlari. (RF - 16 registrlari: dastur holati registri, dastur hisoblagichi, keyingi paragraf registri, keshni boshqarish, nusxa ko'chirish registrlari, qisqa xotiraga kirish bloki registri va boshqalar).
Proseon xotiraga to'g'ridan-to'g'ri faqat qisqa xotiraga kirish bloki registrida ko'rsatilgan segment chegaralarida kirishi mumkin (4 GB dan ko'p bo'lmagan - 32 bit bilan manzillangan bo'sh joy, o'ziga xos o'lcham bayroq registrida aniqlanadi). Ushbu segmentdan tashqariga kirish faqat kechiktirilgan xotiraga kirish buyruqlari shaklida mumkin (ularning bajarilishi paragraf oxirigacha kechiktiriladi).
Xotiraga kirishni kamaytirish uchun 3 ta nusxa ko'chirish registrlari mavjud (nazorat registrlari blokida): boshlang'ich manzili, tugash manzili va nusxa ko'chirish uchun baytlar soni.
Barcha xotiraga kirish va manzillarni tarjima qilish yadro tomonidan amalga oshiriladi. Proceon keshga ega emas va virtual manzillarni haqiqiy jismoniy manzillarga aylantirmaydi.
Paragraf tuzilishini ko'rib chiqing:
Tuzilishi
Prefiks
<1-chiziq turi> ….
Ma'lumotlar
<1-so'z> …..
1-qator
<1-jamoa>…..
.......
.........
N qator
…..
Oxiri
Prefiks kodi (4 bit + 3 bit zaxirasi) - paragrafning boshini va uning turini belgilaydigan kod
Ma'lumotlar uzunligi (5 bit) - ma'lumotlar registrlari uchun 64 bitli ma'lumotlar miqdori (K - 0 dan 16 gacha, ma'lumotlarning bir qismi). registrlarni o'qish yoki qolishni kechiktirish buyrug'i orqali ishga tushirish mumkin 0)
Satrlar soni (4 bit) - buyruqlar blokidagi satrlar soni (N - 1 dan 16 gacha)
Qator turi (4 bit) - qanday jarayon turi kerak ushbu satrni bajaring
Satrning uzunligi (4 bit) - tegishli buyruqlar qatoridagi buyruqlar soni (L 1 dan 16 gacha)
Tugatish kodi (8 bit) - paragraf qanday tugashini va proceonlardan qanday registrlar qayd etilishini belgilaydigan kod. yadro birlashtiriladi.
Yadro 1-turi (asosiy) bo'yicha paragrafni etarli miqdordagi proseon bilan qanday qayta ishlaydi:
Yadro prefiks kodi, ma'lumotlar uzunligi, qatorlar soni (jami 16 bit) bo'lgan prefiksni tanlaydi.
Satrlar uzunligi va turiga ega baytlarni tanlaydi (satrlar soni bo'yicha)
Ma'lumotlarni registr blokiga o'qiydi (yoki dangasa o'qish buyruqlaridan ma'lumotlarni to'ldiradi)
Umumiy proceonlardan kerakli proseonlarni so'raydi
Yadroning RON nusxasi bilan har bir proceonning umumiy registr blokini va Enddan keyingi manzil bilan keyingi paragraf registrini ishga tushiradi. Har bir proseonning vaqtinchalik registrlari bloki 0 dan 14 gacha (RT0 - RT14) va -1 (RT15) ga ishga tushiriladi.
Har bir proseonga o'z ko'rsatma chizig'ini uzatadi
Barcha satrlarning tugashini kutadi (hozirgi vaqtda yadro boshqa ipni bajarishga o'tishi mumkin - x86 protsessorlarida giper-threading texnologiyasiga o'xshash)
Shartga ko'ra barcha o'lchagichlardan ma'lumotlarni to'playdi (oxirgi kod RONni yig'ish tartibini belgilaydi, nazorat registrlari qat'iy ravishda oxirgi olingan ma'lumotlar bilan to'ldiriladi)
Boshqaruvni keyingi xatboshi reestridagi manzilga o'tkazadi
Yadro 2-turga (parallel tsikl) muvofiq paragrafni qanday qayta ishlaydi. Bunday holda, paragraf faqat bitta buyruq qatorini o'z ichiga oladi, lekin u bir nechta proceonlarda parallel ravishda bajariladi va proceonlar soni satr bajarilishining takrorlash sonidan kamroq bo'lishi mumkin. Keling, bu qanday sodir bo'lishini ko'rib chiqaylik.
Yadro 2-turdagi paragraf prefiksini tanlaydi, unda satrlar soni o'rniga RON ko'rsatiladi, u iteratsiyalar sonini o'z ichiga oladi (paragraf ichidagi uzilishlarni bajarish cheklovi tufayli iteratsiyalar soni 256 tagacha cheklangan). .
Ma'lumotlarni registrlar blokiga o'qiydi
Hovuzdan iteratsiyalar soniga teng miqdorda proceonlarni so'raydi.
Haqiqiy qabul qilingan proseonlarning soniga qarab, u har bir proseonga o'ziga xos takrorlashlar sonining bajarilishini ajratadi (masalan, takrorlash soni 16 va 4 proseon ajratiladi, ya'ni 1-chi 16 dan 13 gacha takrorlashni amalga oshiradi. , 2-chi - 12 dan 9 gacha, 3-chi - 8 dan 5 gacha, 4-chi - 4 dan 1 gacha)
Har bir kirishda har bir proseon o'z registrlarini ishga tushiradi, iteratsiyalar sonini o'z ichiga olgan registr iteratsiya raqami bilan ishga tushiriladi.
Har bir jarayon o'ziga tayinlangan iteratsiyalarni bajaradi.
Yadro barcha iteratsiyalarning tugashini kutadi va RONga qanday ma'lumotlarni qo'yish kerakligini hal qiladi (oxirgi kodga qarab, ma'lum bir proceonning registrlarini tanlash yoki registrlarda arifmetik / mantiqiy operatsiya yoki ularning kombinatsiyasi sodir bo'ladi). RONni natijalar bilan to'ldirish mexanizmi quyida batafsilroq muhokama qilinadi)
Oxirida boshqaruv keyingi bo'lim reyestridan manzilga o'tkaziladi (ma'lumotlar proceon buyrug'i bilan kiritilishi mumkin)
Barcha proceonlarning barcha buyruqlari (ko'rsatmalari) bir xil uzunlik va formatga ega. Yo'riqnoma formati quyidagicha: bitta buyruq - 24 bit, 7 bit COP, 5 bit - qabul qiluvchi, 6 + 6 bit - manba1 va manba2. Istisno - bu taqqoslash buyrug'i. Unda qabul qiluvchi o'rniga keyingi buyruqni bajarish sharti mavjud. Xotirani yozish operatsiyalarida maqsad registr o'rniga manba registr ko'rsatiladi va xotira manziliga 2 ta manba registrlari qo'shiladi.
Xotiraning tuzilishi va unga kirish.
Barcha xotira operatsiyalari yadroga chaqiruv orqali proseonlar tomonidan amalga oshiriladi. Yozish operatsiyalari yadro tomonidan qayta yozish keshi orqali amalga oshiriladi (ya'ni, dastur yozishning tugashini kutmaydi). O'qish operatsiyalarining natijasi ham kechiktiriladi - ma'lumotlar keyingi xatboshi boshlanishi bilan registrlarga tushadi, shunda proceonlar ma'lumotlarni kutishda bo'sh qolmaydi. Istisno - bu cheklangan segmentdagi xotiraga kirish, uning manzili tezkor xotiraga kirish registrida (RBOP) ko'rsatilgan va bayroq registrida o'zgartirilishi kerak bo'lgan manzil bitlarining niqobi uzunligi mavjud (uning ichida proceonlar. to'g'ridan-to'g'ri xotiraga kiring va ma'lumotlarni kuting). Bu RBOP tomonidan ko'rsatilgan ma'lumotlar blokini va bayroq registrida aniqlangan o'lchamni keshga oldindan yuklash imkonini beradi. Agar bunday blok keshga mos kelmasa, u asosiy xotiraga joylashtirilishi kerak,
Shuningdek, yadroga ma'lumotlarni nusxalash uchun maxsus proseonlarning qayta ishlash quvvatini tushirish uchun nusxa ko'chirish mantig'i qo'shildi - 3 ta nazorat registrlari: boshlang'ich manzil registri (PHA), yakuniy manzil registri (RKA) va nusxa ko'chirish uzunligi registri (RDK). RDK ishga tushirilganda yadro PHA+RDK manzilidan RPA+RDK manziliga nusxa ko'chirish operatsiyasini boshlaydi, so'ngra RDKni nusxalangan baytlar soniga qisqartiradi va RDK 0 ga aylanguncha nusxa ko'chirish operatsiyasini takrorlaydi. paragrafning boshiga yoki oxiriga bog'lanmasdan, asosiy dastur bilan parallel ravishda bajarilishi kerak. Bunday operatsiyaning tugash belgisi RDCda 0 ga teng.
Muhim eslatma: manzildagi belgi biti kirish RAMga yoki tashqi qurilmalarga ekanligini aniqlaydi. Shunday qilib, butun manzil maydoni RAMga (0-0x7FFFFFFFFFFFFFF manzillari) va kirish / chiqish portlariga (0x8000000000000000-0xFFFFFFFFFFFFFFFF manzillari) yarmiga bo'linadi. Bu 128 bitli protsessorlarga o'tishni osonlashtirish uchun amalga oshiriladi: 128 bitli manzil 64 bitli manzildan belgi bitini kengaytirish orqali olinadi.
RONni paragraf natijalari bilan to'ldirish mexanizmi
Paragrafning bajarilishi oxirida yadro buyruqlarning har bir bajarilgan satrining (yoki iteratsiyasining) RON nusxalarini o'z ichiga oladi. Yadro RON-ga joylashtirilishi kerak bo'lgan ma'lumotlarni tanlashi kerak (Boshqarish registrlariga eslatma - ular buyruqlar bajarilish tartibiga ko'ra ma'lumotlarni olishadi, shuning uchun Boshqarish registrlarini to'ldirish uchun javobgarlik dasturchiga yuklanadi! Istisno - bu quyida muhokama qilinadigan qo'shuvchidir), buning uchun buyruqlar blokining oxiri kodi ishlatiladi.
Keling, paragrafning oxirida RON qanday to'ldirilganligini batafsil ko'rib chiqaylik. Agar berilgan registr faqat bitta satrdan o'zgartirilgan bo'lsa, u holda u ushbu qatordan ko'chirilgan natija bilan to'ldiriladi. Agar bitta registr uchun ma'lumotlar ikki yoki undan ortiq satrdan kelib chiqsa, to'ldirish uchun natijani tanlash yakuniy kodga qarab amalga oshiriladi: a) ma'lumotlar eng yuqori raqamga ega bo'lgan qatordan olinadi (oxirgi ma'lumotlar printsipi oldingilar); b) eng past registr (R0) selektor hisoblanadi - ya'ni selektorga eng katta (yoki eng kichik) raqamni yozgan qatordagi ma'lumotlar "yutadi" (eslatma - barcha RONni 8 registrdan iborat 2 guruhga bo'lish mumkin) , ularning har birida o'z selektori bo'ladi); c) ma'lumotlar bitli operatsiyalar (AND, OR, XOR) orqali birlashtiriladi. Eng qiziqarli variant B - selektorga asoslangan ma'lumotlarni tanlash. Bunday holda, dastur bir nechta variantlarni parallel ravishda hal qilishi mumkin va paragraf oxirida keraksizlarni tashlab, to'g'ri variantni tanlang. Qulaylik uchun siz barcha RONni 2 guruhga bo'lishingiz mumkin, ularning har birida siz xatboshining oxirida o'zingizning to'ldirish qoidalarini qo'llashingiz mumkin (masalan, birinchi 8 registrdan natija C variantiga muvofiq tanlanadi va uchun R8-R15 registrlari - B variantiga muvofiq (bu holda selektor R8)).
Nazorat registrlari orasida alohida o'rinni Adder egallaydi. Abzats oxirida qo‘shimchaning past so‘zlari registriga kiritilgan ma’lumotlar umumlashtiriladi va natija qo‘shimchaning yuqori va past so‘zlari registrlariga kiritiladi.
Ushbu sxemaning afzalliklari:
Buyruqlarni parallellashtirish protsessor tomonidan emas, balki kompilyator tomonidan amalga oshiriladi, bu sizga buni yanada maqbulroq qilish imkonini beradi.
Parallelizatsiya elementar RISC ko'rsatmalari darajasida (x86 protsessorlaridagi mikroko'rsatmalarga o'xshash) individual ko'rsatmalar darajasida emas, balki ketma-ket bajariladigan ko'rsatmalar satrlari ko'rinishida sodir bo'ladi, bu ko'rsatmalarni turli xil bajarish vaqtlari bilan parallel ravishda bajarishga imkon beradi (uchun). Masalan, bir qatorda bo'linish buyrug'i bajariladi, ikkinchisida esa bu vaqt ichida bir nechta oddiy arifmetik buyruqlar bajarilishi mumkin)
Bir vaqtning o'zida bajariladigan buyruq qatorlari sonini dinamik ravishda o'zgartirish mumkin (bo'sh manbalarga qarab, qatorlarni ketma-ket yoki parallel ravishda bajaring)
Hisoblash quvvati (proseonlar) har qanday yadro tomonidan ishlatilishi mumkin (vazifalar o'rtasida hisoblash quvvatini dinamik qayta taqsimlash)
Energiyani tejash (ishlatilmagan proceonlarni vaqtincha o'chirish qobiliyati)
Shartli filial yo'riqnomasi (yadro darajasida) yo'qligi sababli, filialni bashorat qilish blokiga ehtiyoj qolmaydi. Keyingi bandning manzilini oldindan, joriy paragraf tugagunga qadar olish mumkin.
Protsessorlarni qulay masshtablash va ixtisoslashtirish - tegishli turdagi protsessorlar sonini ko'paytirish yoki kamaytirish kifoya.
Yadro tomonidan bir vaqtning o'zida bir nechta vazifalarni bajarish soddalashtirilgan (bir vazifani proseonlar tomonidan bajarish muddati davomida yadro boshqa vazifani bajarish uchun boshlashi mumkin.
Xotiraga kirish optimallashtirilgan - proceonlar cheklangan o'lchamdagi xotiradagi blokni o'qishlari kerak. Boshqa manzillardan (virtual xotirada joylashgan) o'qishlar kechiktirilishi mumkin va vazifani darhol to'xtatmaydi.Protsessorni nisbatan bir xil bloklarga bo'lish orqali mikroprotsessorlarning dizayni soddalashtiriladi.
Xulosa
Ushbu qisqa maqola umumiy maqsadli markaziy protsessorning muqobil strukturasini (klassik "von Neumann" protsessori doirasida) tasvirlashga harakat qiladi, bunda mikroko'rsatmalarga yaqin darajadagi parallel ko'rsatmalarni amalga oshirishga urg'u beriladi. Albatta, bu yondashuv yagona mumkin emas, lekin yuqorida bayon etilgan printsiplar (protsessor yadrosidan hisoblash modullarini olib tashlash, yadrolar o'rtasida resurslarni dinamik ravishda qayta taqsimlash qobiliyati, barcha ko'rsatmalar qatorlarini parallel ravishda bajarish (alohida ko'rsatmalar o'rniga), dinamik parallel hisoblash uchun resurslarni taqsimlash, blok filialini bashorat qilishning hojati yo'q va dangasa xotirani o'qish ko'rsatmalarini joriy etish) e'tiborga loyiqdir.
Mikroprotsessor - bu kompyuter protsessorining funktsiyalarini bajaradigan bir yoki bir nechta katta integral mikrosxemalar (LSI) bo'lgan qurilma. Klassik hisoblash qurilmasi arifmetik blok (AU), boshqaruv bloki (CU), xotira bloki (RAM) va kirish-chiqish blokidan (I/O) iborat.
Intel Celeron 400 Socket 370 plastik PPGA to'plamida , yuqoridan ko'rinishi.
Turli arxitekturadagi protsessorlar mavjud.
CISC (Complex Instruction Set Computing) - bu quyidagi xususiyatlar to'plami bilan tavsiflangan protsessor dizayni konsepsiyasi:
har xil format va uzunlikdagi ko'p sonli buyruqlar;
ko'p sonli turli xil adreslash rejimlarini joriy etish;
U murakkab ko'rsatmalar kodlashiga ega.
CISC protsessori teng bo'lmagan uzunlikdagi murakkabroq ko'rsatmalar bilan shug'ullanishi kerak. Bitta CISC buyrug'ini bajarish tezroq bo'lishi mumkin, ammo bir nechta bunday ko'rsatmalarni parallel ravishda qayta ishlash qiyinroq.
Assemblerda dasturlarni disk raskadrovka qilishni osonlashtirish mikroprotsessor blokini tugunlar bilan to'ldirishga olib keladi. Tezlikni oshirish uchun soat chastotasi va integratsiya darajasini oshirish kerak, bu esa takomillashtirilgan texnologiyaga va natijada qimmatroq ishlab chiqarishga bo'lgan ehtiyojni keltirib chiqaradi.
CISC arxitekturasining afzalliklari [ko'rsatish]
CISC arxitekturasining kamchiliklari [ko'rsatish]
RISC (Reduced Instruction Set Computing). Qisqartirilgan ko'rsatmalar to'plami protsessor. Buyruqlar tizimi soddalashtirilgan. Barcha buyruqlar oddiy kodlash bilan bir xil formatda. Xotiraga kirish yuklash va yozish buyruqlari orqali amalga oshiriladi, qolganlari registr-registr tipidagi buyruqlardir. CPUga kelgan buyruq allaqachon maydonlarga bo'lingan va qo'shimcha shifrni ochishni talab qilmaydi.
Qo'shimcha komponentlarni kiritish uchun kristallning bir qismi bo'shatiladi. Integratsiya darajasi avvalgi me'moriy dizaynga qaraganda pastroq, shuning uchun past soat tezligi yuqori tezlikda toqat qilinishi mumkin. Buyruq RAMni kamroq chalkashtirib yuboradi, protsessor arzonroq. Ushbu arxitekturalarda dasturiy ta'minot muvofiqligi yo'q. RISC dasturlarini disk raskadrovka qilish qiyinroq. Ushbu texnologiya dasturiy ta'minotga mos keluvchi CISC texnologiyasida (masalan, superskalyar texnologiya) amalga oshirilishi mumkin.
RISC ko'rsatmalari oddiy bo'lgani uchun ularni bajarish uchun kamroq mantiqiy eshiklar kerak bo'ladi, bu esa oxir-oqibat protsessorning narxini pasaytiradi. Ammo bugungi kunda ko'pgina dasturiy ta'minotlar Intelning CISC protsessorlari uchun maxsus yozilgan va tuzilgan. RISC arxitekturasidan foydalanish uchun joriy dasturlarni qayta kompilyatsiya qilish va ba'zan qayta yozish kerak.
RISC arxitekturasining afzalliklari [ko'rsatish]
RISC arxitekturasining kamchiliklari [ko'rsatish]
MISC (Ko'p maqsadli ko'rsatmalar to'plami kompyuter). Element bazasi ikkita qismdan iborat bo'lib, ular alohida hollarda yoki birlashtiriladi. Asosiy qism RISC protsessoridir, uni ikkinchi qismni - mikrodasturni boshqarish ROMni ulash orqali kengaytirish mumkin. Tizim CISC xususiyatlarini oladi. Asosiy buyruqlar RISC protsessorida ishlaydi, kengaytma buyruqlari esa proshivka manziliga tarjima qilinadi. RISC CPU barcha ko'rsatmalarni bir takt siklida bajaradi, ikkinchi qismi esa murakkab ko'rsatmalar to'plamiga ega protsessorga teng. ROMning mavjudligi RISC ning kamchiligini yo'q qiladi, bu yuqori darajadagi tildan kompilyatsiya qilinganida, mikrokod juda ko'p operativ xotirani egallagan standart funktsiyalar kutubxonasidan hosil bo'lishi bilan ifodalanadi. Mikrodastur allaqachon shifrlangan va dasturchi uchun ochiq bo'lganligi sababli, shifrni ochish uchun RAMga kirish vaqti talab qilinmaydi.
Protsessorlarning tasnifi. Cisc, risc, vliw, superscalar protsessorlari va boshqalar.
CISC (Complete Instruction Set Computer) mikroprotsessor ko'rsatmalarining to'liq to'plamidir.
aniqlanmagan buyruq uzunligi qiymati;
arifmetik amallar bitta buyruqda kodlangan;har biri qat'iy belgilangan funktsiyani bajaradigan oz sonli registrlar.
CISC arxitekturasining kamchiliklari:
apparatning yuqori narxi;
hisob-kitoblarni parallellashtirish bilan bog'liq qiyinchiliklar.
Ularning registrlarining tarkibi va maqsadi sezilarli darajada heterojendir, ko'rsatmalarning keng to'plami apparat resurslarini sarflaydigan ko'rsatmalarning dekodlanishini murakkablashtiradi. Ko'rsatmalarni bajarish uchun zarur bo'lgan davrlar soni ortadi. To'liq ko'rsatmalar to'plamiga ega protsessorlar x86 oilasini o'z ichiga oladi.
CISC protsessorlarini ishlab chiqish bo'yicha yetakchi o'zining x86 va Pentium seriyali Intel kompaniyasi hisoblanadi. Ushbu arxitektura mikrokompyuter bozori uchun amaliy standartdir.
CISC protsessorlari quyidagilar bilan tavsiflanadi:
umumiy maqsadli registrlarning nisbatan kichik soni;
ko'p sonli mashina ko'rsatmalari, ularning ba'zilari semantik jihatdan yuqori darajadagi dasturlash tillari operatorlariga o'xshash yuklangan va ko'plab tsikllarda bajariladi;
ko'p sonli manzil usullari;
har xil bit chuqurlikdagi ko'p sonli buyruq formatlari;
ikki manzilli buyruq formatining ustunligi;
registr-xotira turidagi ishlov berish ko'rsatmalarining mavjudligi.
RISC - Reduced Instruction Set Computer - qisqartirilgan ko'rsatmalar to'plamiga ega kompyuter arxitekturasi. RISC arxitekturasi kompyuterda sodda, ammo tez-tez ishlatiladigan buyruqlar to'plamini amalga oshirishni o'z ichiga oladi, bu protsessorning apparatini soddalashtirishga va shu tufayli uning tezligini oshirishga imkon beradi.
Zamonaviy RISC protsessorlari quyidagi xususiyatlar bilan ajralib turadi:
bir xil uzunlikka ega bo'lgan soddalashtirilgan buyruqlar to'plami.
Protsessorning tuzilishini murakkablashtiradigan va uning tezligini pasaytiradigan makroslar mavjud emas.
RAM bilan o'zaro aloqa ma'lumotlarni uzatish operatsiyalari bilan cheklangan.
Manzillash usullari sonining kamayishi
Buyruqlar quvuri ishlatiladi.
Yuqori tezlikdagi xotira ishlatiladi.
Protsessor ko'rsatmalari arxitekturasiga yangi yondashuv integral mikrosxemalar chipida unga talab qilinadigan maydonni sezilarli darajada qisqartirdi. Bu registrlar sonini keskin oshirishga imkon berdi (ma'ruzalarga ko'ra 100 dan ortiq va odatda RISC arxitekturalarida 8 - 16 registrlarga nisbatan 32 yoki undan ortiq registrlar odatiy RISC protsessorlarida amalga oshiriladi). Natijada protsessorning operativ xotiraga kirish imkoniyati 20-30 foizga kamaygan. Protsessor topologiyasi soddalashtirildi, uni ishlab chiqish vaqti qisqardi va arzonlashdi.
RISC arxitekturasining o'ziga xos xususiyati bir-biriga o'xshash oyna mexanizmi bo'lib , RAMga kirishlar sonini va registrlararo o'tkazmalarni kamaytirish uchun mo'ljallangan, bu esa kompyuterning ishlashini oshirishga yordam beradi.
Ish stollarida eng ko'p ishlatiladigan x86 protsessorlari CISC protsessorlari bo'lgan, ammo Intel 486DX dan boshlab yangiroq protsessorlar RISC yadroli CISC protsessorlaridir. Ular x86 protsessorlarining CISC ko'rsatmalarini bajarishdan oldin oddiyroq ichki RISC ko'rsatmalariga aylantiradi.
Superskalar protsessorlar quvur liniyasining keyingi rivojlanishidir. Ularning ajralib turadigan xususiyati bir protsessor siklida bir nechta buyruqlarni bajarish qobiliyatidir.
Ularning hisoblash yadrosining arxitekturasi ko'plab ijro birliklarini ish bilan yuklashi mumkin bo'lgan bir nechta ko'rsatmalar dekoderlaridan foydalanadi. Agar ish paytida quvur liniyasi tomonidan qayta ishlangan buyruqlar bir-biriga zid bo'lmasa va biri ikkinchisining natijasiga bog'liq bo'lmasa, unda bunday qurilma buyruqlarni parallel ravishda bajarishi mumkin. Superskalar tizimlarda buyruqlar boshqaruvi grafigini shakllantirish mikroprotsessorga yuklanadi, bu juda katta resurslarni talab qiladi.
Superskalar protsessor arxitekturasini tavsiflashda ko'pincha ijro oynasi modeli ishlatiladi . Dastur bajarilganda, mikroprotsessor, xuddi dasturning statik tuzilishi bo'ylab bajarish oynasini oldinga siljitadi. Amalga oshirish oynasidagi buyruqlar, agar ular o'rtasida bog'liqlik bo'lmasa, parallel ravishda bajarilishi mumkin . O'tish buyruqlari bilan bog'liqlikni bartaraf etish uchun bashorat qilish usuli qo'llaniladi .
VLIW - Rossiyada paydo bo'ldi. Bu fon Neyman tamoyillariga kirmaydi (bu dasturni boshqarish printsipini buzadi, ya'ni buyruqlarni ketma-ket bajarish).
Uzoq buyruq so'ziga ega kompyuter arxitekturasi ( VLIW - Juda Long Instruction Word) turli xil mustaqil buyruq qurilmalari asosida bir nechta buyruqlarni parallel ravishda berishni amalga oshirish uchun zarur bo'lgan uskunalar miqdorini kamaytirish imkonini beradi. Ushbu qurilmalarga ketma-ket buyruqlar berish o'rniga, operatsiyalar bitta juda uzun buyruqqa to'plangan. Bajarish uchun parallel ravishda berilgan buyruqlarning chiqishi uchun javobgarlik to'liq kompilyatorga yuklanadi.
VLIW protsessorlarida muammo kompilyatsiya vaqtida hisoblash modullari o'rtasida ishni taqsimlash yo'li bilan hal qilinadi. Parallel ishlov berishni amalga oshirish uchun zarur bo'lgan apparat yo'q.
VLIW-arxitekturaga ega mashinalar uchun buyruqlar berishni rejalashtirishning yangi usuli ishlab chiqilgan - kuzatishni rejalashtirish . Rejalashtirish vaqtida uzun nazorat so'zi hosil bo'ladi. Ketma-ket dastur ko'rsatmalarini uzoq ko'rsatmalar so'zlariga o'rash jarayoni butun dastur optimallashtirilgunga qadar davom etadi.
Ushbu arxitekturaga asoslangan protsessorlarga Intel Itanium (arxitektura IA-64, Merced), Elbrus seriyasining mikroprotsessorlari (Elbrus 2000, Elbrus S) misol bo'la oladi.
MISC , minimal ko'rsatmalar to'plami kompyuter - kompyuter buyruqlarining minimal to'plami.
Protsessorlarning bit chuqurligini oshirish bir nechta buyruqlarni bitta katta so'zga (to'plam, bog'langan) yig'ish g'oyasiga olib keldi. Bu kompyuterning yuqori unumdorligi va bir vaqtning o'zida bir nechta ma'lumotlar oqimini qayta ishlash qobiliyatidan foydalanish imkonini berdi. Bundan tashqari, MISC stacked hisoblash modelidan foydalanadi.
Minimal Instruction Set Computers (MISC) protsessorlari, RISC protsessorlari kabi, kam sonli tez-tez uchraydigan ko'rsatmalar bilan tavsiflanadi. Shu bilan birga, "juda uzun ko'rsatmalar so'zlari" (VLIW) printsipi bir protsessor siklida izchil ko'rsatmalar guruhining bajarilishini ta'minlaydi. Buyruqlarni bajarish tartibi ma'lumotlar oqimlari o'tadigan marshrutlar bo'ylab yukni maksimal darajaga ko'taradigan tarzda taqsimlanadi. Shunday qilib, MISC arxitekturasi superskalar va VLIW tushunchalarini birlashtirdi. Protsessor komponentlari oddiy va yuqori chastotalarda ishlaydi.
Risk arxitekturasining xususiyatlari.
RISC - Reduced Instruction Set Computer - qisqartirilgan buyruqlar to'plamiga ega kompyuter arxitekturasi.Ayrim buyruqlarni bajarish chastotasini tahlil qilish jarayonida 40% buyruqlar juda kam qo'llanilishi aniqlandi. RISC arxitekturasi kompyuterda sodda, ammo tez-tez ishlatiladigan buyruqlar to'plamini amalga oshirishni o'z ichiga oladi, bu protsessorning apparatini soddalashtirishga va shu tufayli uning tezligini oshirishga imkon beradi.
Zamonaviy RISC protsessorlari quyidagi xususiyatlar bilan ajralib turadi:
bir xil uzunlikka ega bo'lgan soddalashtirilgan buyruqlar to'plami. Masalan, odatiy buyruqning bajarilishini bosqichlarga bo'lish mumkin:
buyruqni olish
buyruqni dekodlash
operatsiyani bajarish
xotiraga kirish
natijani eslab qolish
RISC dagi barcha buyruqlar bir xil tuzilishga ega, buyruqlar soni odatda 50-100 dan oshmaydi.
Aksariyat buyruqlar 4-5 protsessor siklida bajariladi.
Protsessorning tuzilishini murakkablashtiradigan va uning tezligini pasaytiradigan makroslar mavjud emas.
RAM bilan o'zaro aloqa ma'lumotlarni uzatish operatsiyalari bilan cheklangan.
Manzillash usullari sonining kamayishi (bilvosita, odatda 2-3 oddiy usuldan foydalanilmaydi)
Buyruqlar quvuri ishlatiladi.
Yuqori tezlikdagi xotira ishlatiladi.
RISC kompyuterida mashina sikli registrlardan ikkita operandni olish, ALUda amalni bajarish va natijani registrda saqlash uchun ketadigan vaqtdir. RISC ko'rsatmalarining aksariyati tezkor ro'yxatdan o'tish bo'yicha ko'rsatmalar bo'lib, OPga qo'ng'iroq qilmasdan bajariladi. OPga havolalar faqat registrlarni xotiradan yuklash va OPda saqlash ko'rsatmalarida saqlanadi. Buning imkoni bo'lishi uchun protsessorda etarlicha katta miqdordagi umumiy registrlar bo'lishi kerak.
Protsessor ko'rsatmalari arxitekturasiga yangi yondashuv integral mikrosxemalar chipida unga talab qilinadigan maydonni sezilarli darajada qisqartirdi. Bu registrlar sonini keskin oshirishga imkon berdi (ma'ruzalarga ko'ra 100 dan ortiq va odatda RISC arxitekturalarida 8 - 16 registrlarga nisbatan 32 yoki undan ortiq registrlar odatiy RISC protsessorlarida amalga oshiriladi). Natijada protsessorning operativ xotiraga kirish imkoniyati 20-30 foizga kamaygan. Protsessor topologiyasi soddalashtirildi, uni ishlab chiqish vaqti qisqardi va arzonlashdi.
RISC arxitekturasining o'ziga xos xususiyati - bu operativ xotiraga kirishlar sonini va registrlararo o'tkazmalarni kamaytirish uchun mo'ljallangan, kompyuterning ishlashini oshirishga yordam beradigan bir-biriga o'xshash oynalar mexanizmi. Protseduralar doimiy uzunlikdagi registrlarning kichik guruhlari (ro'yxatga olish oynalari) dinamik ravishda ajratilgan. Ketma-ket bajariladigan protseduralar oynalari bir-biriga yopishib, parametrlarni bir protseduradan ikkinchisiga o'tkazish imkonini beradi. Bunday holda, registr tarkibini xotiraga o'tkazishning hojati yo'q.
Oyna registrlarning uchta kichik guruhidan iborat:
birinchi kichik guruhda ushbu protseduraga uni chaqirgan protseduradan o'tkazilgan parametrlar va unga qaytib kelganda chaqirish protsedurasi natijalari mavjud.
ikkinchi kichik guruh protseduraning mahalliy o'zgaruvchilarini o'z ichiga oladi.
uchinchisi - ikki tomonlama almashinuv uchun bufer.
1989 yilda Intel RISC arxitekturasi asosida Cray-1 superkompyuterining kremniy ekvivalenti bo'lgan 80860 bitta chipli mikroprotsessorni yaratishga muvaffaq bo'ldi.
Hozirgi vaqtda ko'pgina protsessor arxitekturalari RISC-ga o'xshaydi, masalan, ARM, DEC Alpha, SPARC, AVR, MIPS, POWER va PowerPC. Ish stollarida eng ko'p ishlatiladigan x86 protsessorlari CISC protsessorlari bo'lgan, ammo Intel 486DX dan boshlab yangiroq protsessorlar RISC yadroli CISC protsessorlaridir. Ular x86 protsessorlarining CISC ko'rsatmalarini bajarishdan oldin oddiyroq ichki RISC ko'rsatmalariga aylantiradi.
Xulosa
Men bu amaliy ishni yoritish davomida CISC buyruqlar to'plami ekanligini va unda asosiy buyruqlar berilishini amalga oshirilishini bilib oldim, oldin bu haqida ma'lumot menda kam edi yanada ko'paydi endi kimdur savol bersa albatta javob berolaman tushuntira olaman hozirgi kunda hammamizda ham bu ishlash pirinsipiga oid gadjetlar mavjud kunda bir bo`lsa ham duch kelmoqdamiz bular haqida faqat ishlatishni emas qanday prinsipda ishlashini bilib olsak foydadan holi emas deb o'ylayman. Bu CISC ni biz bosh miyya deb atasak boladi miyya buyruq beradi, tana uni bajaradi. Asosiy tushuncha shundan iborat.
|
| |