|
14-mavzu: protsessorlar turlari. Matritsali va vektorli protsessorlar, multiprotsessorlar, soprotsessorlar. Reja
|
bet | 4/7 | Sana | 22.11.2023 | Hajmi | 441,05 Kb. | | #102984 |
Bog'liq 14-mavzu protsessorlar turlari. Matritsali va vektorli protsessVektorli protsessorlar
Vektor protsessori asosan bitta ko'rsatmada to'liq vektor kiritishni bajarish qobiliyatiga ega bo'lgan markaziy protsessordir. Aniqroq aytganda, bu bitta buyruq yordamida xotiradagi o'xshash ma'lumotlar elementlarining ketma-ket to'plamini bajaradigan apparat resurslarining to'liq birligi.
Biz bilamizki, vektor elementlari xotiraning ketma-ket manzillash formatiga ega bo'lishi uchun to'g'ri tartiblangan. Shuning uchun biz ma'lumotlarni ketma-ket amalga oshirishini eslatib o'tdik .
U bitta boshqaruv blokiga ega, lekin vektorning turli ma'lumotlar elementlarida bir xil operatsiyani bajaradigan bir nechta ijro birliklariga ega.
Faqat bitta juft ma'lumotda ishlaydigan skalyar protsessorlardan farqli o'laroq, vektor protsessor bir nechta ma'lumotlar juftligida ishlaydi. Biroq, skaler kodni vektor kodiga aylantirish mumkin. Ushbu konvertatsiya jarayoni vektorizatsiya deb nomlanadi. Shunday qilib, vektorni qayta ishlash bir ko'rsatma yordamida bir nechta ma'lumotlar elementlari bilan ishlashga imkon beradi, deyishimiz mumkin.
Bu ko'rsatmalar bitta ko'rsatma bir nechta ma'lumotlar yoki vektor ko'rsatmalari deyiladi. So'nggi paytlarda foydalanilgan protsessor vektorli ishlov berishdan foydalanadi, chunki u skalyar ishlov berishdan ko'ra foydalidir.
Keling, vektor protsessorining qanday ishlashini tushunish uchun ko'proq harakat qilaylik.
Quyidagi rasm vektorli kompyuter tomonidan vektorni qayta ishlashni ko'rsatadigan odatiy diagrammani ifodalaydi:
14.3-rasm. Vektor kompyuter funksional diagrammasi
Vektorli kompyuterning funksional birliklari quyidagilardan iborat:
IPU yoki ko'rsatmalarni qayta ishlash birligi
Vektor registri
Skaler registr
Skaler protsessor
Vektor ko'rsatmalar boshqaruvchisi
Vektor kirish nazorati
Vektor protsessor
Keling, vektor kompyuter tomonidan bajariladigan umumiy operatsiyani tushunamiz.U bir nechta funktsional quvurlarga ega bo'lgani uchun u operandlar bo'yicha ko'rsatmalarni bajarishi mumkin. Biz bilamizki, ma'lumotlar ham, ko'rsatmalar ham xotirada kerakli xotira joyida mavjud. Shunday qilib, buyruqni qayta ishlash bloki, ya'ni IPU ko'rsatmalarni xotiradan oladi.
Ko'rsatma olingandan so'ng, IPU olingan ko'rsatma skalyar yoki vektor tabiatini aniqlaydi. Agar u skalyar xarakterga ega bo'lsa, u holda ko'rsatma skalyar registrga o'tkaziladi va keyin keyingi skalyar ishlov beriladi.Agar ko'rsatma tabiatda vektor bo'lsa, u vektor ko'rsatma boshqaruvchisiga beriladi. Ushbu vektor yo'riqnomasi tekshirgichi avval vektor ko'rsatmasini dekodlaydi, so'ngra mos ravishda xotirada mavjud vektor operandning manzilini aniqlaydi.
Keyin u vektor kirish nazoratchisiga tegishli operand talabi haqida signal beradi. Ushbu vektorga kirish boshqaruvchisi keyin xotiradan kerakli operandni oladi. Operand olingandan so'ng, u vektor protsessorida qayta ishlanishi uchun ko'rsatmalar registriga beriladi.
Bir nechta vektor ko'rsatmalari mavjud bo'lganda, vektor ko'rsatmalari boshqaruvchisi vazifalar tizimiga bir nechta vektor ko'rsatmalarini beradi. Va agar vazifa tizimi vektor vazifasi juda uzun ekanligini ko'rsatsa, protsessor vazifani subvektorlarga ajratadi.
Ushbu subvektorlar bir vaqtning o'zida xotiradan olingan operand bo'yicha buyruqni bajarish uchun bir nechta quvur liniyasidan foydalanadigan vektor protsessoriga beriladi.
Turli vektor ko'rsatmalari vektor ko'rsatmalari boshqaruvchisi tomonidan rejalashtirilgan.
Vektor protsessorining tasnifi vektorni shakllantirish qobiliyatiga, shuningdek qayta ishlash uchun vektor ko'rsatmalarining mavjudligiga bog'liq. Shunday qilib, ushbu mezonlarga qarab vektorli ishlov berish quyidagicha tasniflanadi:
14.4-rasm. Vektor protsessorining tasnifi
Ushbu arxitektura vektorli kompyuterlarda keng qo'llaniladi. Ushbu arxitekturada bo'lgani kabi, operand yoki oldingi natijalarni olish bilvosita registrlar yordamida asosiy xotira orqali amalga oshiriladi.
Vektorli kompyuterda mavjud bo'lgan bir nechta vektor quvurlari registrlardan ma'lumotlarni olishda va natijalarni kerakli registrda saqlashda yordam beradi. Ushbu vektor registrlari foydalanuvchi ko'rsatmalari bilan dasturlashtiriladi.
Bu shuni anglatadiki, ko'rsatmada mavjud bo'lgan registr manziliga ko'ra ma'lumotlar olinadi va kerakli registrda saqlanadi. Ushbu vektor registrlari oddiy ishlov berish blokidagi registr uzunligi kabi sobit uzunlikka ega.
Arxitekturani ro'yxatdan o'tkazish uchun registrdan foydalanadigan superkompyuterning ba'zi misollari Cray - 1 , Fujitsu va boshqalar.
Vektorli protsessorning afzalliklari
Vektorli protsessor vektor ko'rsatmalaridan foydalanadi, ular yordamida ko'rsatmalarning kod zichligi yaxshilanadi.
Ma'lumotlarning ketma-ket joylashishi apparat tomonidan ma'lumotlarni yaxshiroq boshqarishga yordam beradi.
Bu ko'rsatmalarning o'tkazish qobiliyatini kamaytirishni taklif qiladi.
Shunday qilib, yuqoridagi muhokamadan xulosa qilishimiz mumkinki, ro'yxatga olish arxitekturasini ro'yxatdan o'tkazish xotira arxitekturasidan ko'ra yaxshiroq, chunki u vektorga kirish vaqtini qisqartirishni taklif qiladi.
Multiprotsessorlar.
Har qanday parallel kompyuter tizimida bitta vazifaning turli qismlarini bajaradigan protsessorlar ma'lumot almashish uchun qandaydir tarzda bir-biri bilan o'zaro ta'sir qilishi kerak. Ayirboshlash qanday amalga oshirilishi kerak? Buning uchun ikkita strategiya taklif qilingan va amalga oshirilgan: ko'p protsessorlar va ko'p kompyuterlar. Strategiyalar orasidagi asosiy farq umumiy xotiraning mavjudligi yoki yo'qligidir. Bu farq bunday tizimlarning dizayni, dizayni va dasturlashiga, shuningdek, ularning narxi va hajmiga ta'sir qiladi.
Barcha protsessorlari umumiy jismoniy xotiraga ega bo'lgan parallel kompyuter ko'p protsessorli yoki umumiy xotira tizimi deb ataladi (8.15a-rasm). Ko'p protsessorda birgalikda ishlaydigan barcha jarayonlar umumiy xotiraga ko'rsatilgan yagona virtual manzil maydoniga ega bo'lishi mumkin. LOAD va STORE buyruqlari yordamida har qanday jarayon xotiradan so‘zni o‘qishi yoki xotiraga so‘z yozishi mumkin. Boshqa hech narsa talab qilinmaydi. Ikkita jarayon oson ma'lumot almashish imkoniyatiga ega - buning uchun ulardan biri oddiygina umumiy xotiraga ma'lumotlarni yozadi, ikkinchisi esa ularni o'qiydi.
14.5-rasm
14.5-rasmda Xotirani taqsimlovchi 16 protsessorli multiprotsessor (a); tasvir 16 bo'limga bo'lingan, ularning har biri alohida protsessor tomonidan tahlil qilinadi (b)
Ikki yoki undan ortiq jarayonlar o'rtasida o'zaro ta'sir qilish imkoniyati tufayli ko'p protsessorlar juda mashhur. Ushbu model dasturchilar uchun tushunarli va keng ko'lamli muammolarni hal qilishga imkon beradi. Masalan, bitmapni tahlil qiluvchi va uning barcha ob'ektlari ro'yxatini ko'rsatadigan dasturni ko'rib chiqing. Rasmning bir nusxasi rasmda ko'rsatilganidek, xotirada saqlanadi. 14.5 b. 16 protsessorning har biri 16 bo'limdan birini tahlil qilish uchun mo'ljallangan bitta jarayonni boshqaradi. Agar jarayon uning ob'ektlaridan biri bo'lim chegarasini kesib o'tayotganini aniqlasa, bu jarayon shunchaki ob'ektni keyingi bo'limga kuzatib boradi va shu bo'limdagi so'zlarni o'qiydi. Bizning misolimizda, ba'zi ob'ektlar bir nechta jarayonlar bilan qayta ishlanadi, shuning uchun uylar, daraxtlar va samolyotlar sonini aniqlash uchun oxirida ba'zi muvofiqlashtirish kerak bo'ladi.
Ko'p protsessordagi barcha protsessorlar bir xil manzil maydonidan foydalanganligi sababli, operatsion tizimning faqat bitta nusxasi ishlaydi. Shunga ko'ra, faqat bitta xotira sahifasi xaritasi va bitta jarayon jadvali mavjud. Jarayon bloklanganda, uning protsessori operatsion tizim jadvallarida o'z holatini saqlaydi va keyin boshqa jarayonni ishga tushirish uchun ushbu jadvallarni qidiradi. Aynan shu tashkilot yagona tizimga asoslangan bo'lib, ko'p protsessorni ko'p kompyuterdan ajratib turadi.
Ko'p protsessor, barcha kompyuterlar kabi, kiritish-chiqarish qurilmalarini (disklar, tarmoq adapterlari va boshqalar) o'z ichiga olishi kerak. Ba'zi ko'p protsessorli tizimlarda faqat ma'lum protsessorlar kiritish-chiqarish qurilmalariga kirish huquqiga ega va shuning uchun maxsus kiritish-chiqarish moslamalariga ega. Boshqa ko'p protsessorli tizimlarda har bir protsessor istalgan kiritish-chiqarish qurilmasiga kirishi mumkin. Agar barcha protsessorlar barcha xotira modullariga va barcha kiritish-chiqarish qurilmalariga teng kirish imkoniga ega bo'lsa va protsessorlar o'rtasida to'liq almashinish mumkin bo'lsa, bunday ko'p protsessor simmetrik (Symmetrie Multiprocessor, SMP) deb ataladi.
|
| |