Amaliy ish 4 Bajardi: Qo’ldashev Dilshod Tekshirdi: Rustam Yusupov toshkent – 2023



Yüklə 42,57 Kb.
səhifə1/6
tarix23.12.2023
ölçüsü42,57 Kb.
#156111
  1   2   3   4   5   6
kompyuter arxitekturasi4


OʻZBEKISTON RESPUBLIKASI AXBOROT TEXNOLOGIYALARI VA KOMMUNIKATSIYALARINI RIVOJLANTIRISH VAZIRLIGI
MUHAMMAD AL-XOZAZMIY NOMIDAGI TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI

Kompyuter arxitekturasi fanidan
Amaliy ish 4

Bajardi: Qo’ldashev Dilshod
Tekshirdi: Rustam Yusupov


TOSHKENT – 2023

Amaliy ish mavzusi: CISC va RISC arxitekturalari uchun xos bo‘lgan ko‘rsatmalarga misollar keltiring.



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:
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.



Yüklə 42,57 Kb.

Dostları ilə paylaş:
  1   2   3   4   5   6




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©genderi.org 2024
rəhbərliyinə müraciət

    Ana səhifə