Главная страница

CISC және RISC процессорларының архитектурасы. CISC және RISC архитектураларының салыстырмалы талдауы. CISC және RISC процессорларының архитектурасы. Cisc жне risc процессорларыны архитектурасы cisc жне risc архитектураларыны салыстырмалы талдауы


Скачать 291.5 Kb.
НазваниеCisc жне risc процессорларыны архитектурасы cisc жне risc архитектураларыны салыстырмалы талдауы
АнкорCISC және RISC процессорларының архитектурасы. CISC және RISC архитектураларының салыстырмалы талдауы
Дата07.06.2022
Размер291.5 Kb.
Формат файлаdoc
Имя файлаCISC және RISC процессорларының архитектурасы.doc
ТипДокументы
#574671
страница13 из 13
1   ...   5   6   7   8   9   10   11   12   13

Intel P5 архитектурасы


RISC архитектурасы бар процессорлар көбінесе мамандандырылған тауашаларды иеленді, алайда жұмыс үстелі жүйелерінде x86 архитектурасы бар кристалдар қолданыла берді. Олардың дамуы біршама өзгерістермен болса да жалғасты.

Intel өзінің i860 және i960 шешімдерімен RISC процессорлары нарығына шыққанына қарамастан, компания әлі де x86 кристалдарына қатты сенді. «Тастардың» келесі ұрпағы 1993 жылы шығарылған P5 архитектурасына негізделген әйгілі Pentium болды.

Көптеген жұмыстар атқарылды. Біріншіден, P5 суперскаляр болды. Архитектура екі құбырмен жұмыс істеді, олардың әрқайсысы сағатына екі операцияны орындай алады. Екіншіден, деректер шинасы 64-битке айналды, бұл бір циклде екі есе көп деректерді тасымалдауға мүмкіндік берді. Үшіншіден, деректер мен нұсқаулар кэші екі бөлек 8 КБ блокқа бөлінді. Сонымен қатар, процессорға тармақты болжау блогы қосылды және өзгермелі нүкте модулі тиімдірек болды.

Алғашқы Pentium процессорлары 60 МГц немесе 66 МГц жиілікте жұмыс істеді. Сонымен бірге олардың жұмысы үшін 5 В кернеу қажет болды, сондықтан олар өте ыстық болды. Сондай-ақ, алғашқы «төкпелер» өзгермелі нүктені есептеу блогының дұрыс жұмыс істемеуімен танымал болды, ол кейбір жағдайларда сандарды бөлу кезінде дұрыс емес нәтиже берді. Сондықтан Intel көп ұзамай өңделген P54C архитектурасы бар процессорларды іске қосты.

Intel Pentium процессоры

P54C қателерді түзетудің бір түріне айналды. Жаңа процессорлар өндірісі 0,6 микрондық техникалық процеске ауыстырылды. Кристалдардың өздері қазір 3,3 В кернеуінде жұмыс істеп тұрды, бұл қызып кету мәселесін шешті. Архитектура деңгейіндегі өзгерістерге келетін болсақ, P54C-ге бір жарым фактор қосылды - бұдан былай процессорлар жүйелік шинаға қарағанда жоғары жиілікте жұмыс істеді. Процессордың жылдамдығы 75 МГц, 90 МГц немесе 100 МГц болды. P54C сонымен қатар 5-ші ұяшыққа немесе 7-розеткаға орнатылды. Тек 4-розеткаға қолдау көрсететін P5-тен айырмашылығы. P54C архитектурасының өзі 1995 жылы 350 нм технологиялық технологияға ауыстырылған кезде тағы бір жаңарту алды. Бұл қайтадан кристалдардың қуат тұтынуын азайтуға, сондай-ақ олардың тактілік жиілігін 200 МГц-ке дейін арттыруға мүмкіндік берді.

Кіріспе

RISC (Reduced Instruction Set Computer) – қысқартылған нұсқаулар жинағы бар компьютер. RISC келесі қасиеттермен сипатталады:

· Тұрақты ұзындықтағы машина нұсқаулары (мысалы, 32 бит) және қарапайым нұсқау пішімі.

· Жад операцияларына арналған мамандандырылған командалар – оқу немесе жазу. Оқу-өзгерту-жазу операциялары жоқ. Кез келген «өзгерту» операциялары тек регистрлердің мазмұны бойынша орындалады (жүктеу және сақтау архитектурасы).

· Жалпы мақсаттағы регистрлердің үлкен саны (32 және одан да көп).

· Қысқартылған деректер түрлері бойынша «өзгерту» сияқты операцияларды қолдаудың болмауы - байт, 16-биттік сөз. Мысалы, DEC Alpha командалық жүйесі тек 64 разрядты сөздермен операцияларды қамтыды және байт, 16 және 32 разрядты сөздермен операцияларды орындау үшін процедураларды әзірлеуді және кейіннен шақыруды талап етті.

· Процессордың өзінде микробағдарламаның болмауы. CISC процессорында микробағдарламалар арқылы орындалатын нәрсе, RISC процессорында қарапайым (арнайы сақтау қоймасында болса да) машиналық код ретінде орындалады, ол ОЖ ядросының және қолданбалы бағдарламалардың кодынан түбегейлі айырмашылығы жоқ.

RISC типтік шешімдері:

· Спекуляциялық орындау... Шартты тармақталған нұсқауды кездестірген кезде процессор тармақты басқару өрнегін бағалау аяқталғанша бірден екі тармақты да орындайды (немесе кем дегенде нұсқау кэшінде оқиды). Шартты тармақтау кезінде құбырдың тоқтап қалуын жояды.

· Регистрлердің атын өзгерту... Процессордағы әрбір регистр шын мәнінде мәннің бірнеше нұсқасын сақтайтын бірнеше параллель регистрлер болып табылады. Спекуляциялық орындауды жүзеге асыру үшін қолданылады.

RISC процессоры нұсқауларды жеңілдету арқылы өнімділікті арттырды, осылайша оларды оңай декодтау және орындау уақыты қысқарады. Алғашқы RISC процессорларында көбейту және бөлу нұсқаулары да болған жоқ. Сондай-ақ, ол үдеткішті жеңілдетеді және суперскалярды (бірнеше орындау бірліктері бойынша нұсқауларды параллельдеу) тиімдірек етеді.

Бірінші RISC архитектураларында декодтауды жеңілдетуге арналған нұсқаулардың көпшілігінің ұзындығы бірдей және құрылымы ұқсас, арифметикалық операциялар тек регистрлермен жұмыс істейді, ал жадпен жұмыс жеке жүктеу және сақтау нұсқаулары арқылы өтеді. Бұл қасиеттер құбырларды жақсырақ теңестіруге, RISC жүйесіндегі құбырларды әлдеқайда тиімдірек етуге және жоғары тактілік жылдамдықтарға мүмкіндік беруге мүмкіндік берді.

Қарапайым нұсқауларға назар аудару RISC архитектурасына әкеледі, оның мақсаты нұсқауларды оңай құбырға салуға болатындай қарапайым ету және жоғары жиіліктегі құбырдың әрбір қадамында бір сағаттық циклден артық емес өткізу болып табылады.


Кейінірек RISC-тің деректерді өңдеу және жадыға кіру нұсқауларын бөлудегі ең маңызды сипаттамасы - жадқа кіру тек жүктеу және сақтау нұсқаулары арқылы өтеді, ал басқа командалардың барлығы ішкі регистрлермен шектеледі. Бұл процессордың архитектурасын оңайлатты: ол нұсқаулардың бекітілген ұзындыққа, жеңілдетілген конвейерлерге мүмкіндік берді және тек екі нұсқауда жадқа кіру кідірісімен айналысатын логиканы оқшаулады. Нәтижесінде, RISC архитектуралары жүктеу/сақтау архитектуралары деп те аталады.

«Қысқартылған нұсқаулар жинағы» нұсқаулықтар жинағындағы нұсқаулар санын азайту деп қате түсініледі. Іс жүзінде көптеген RISC процессорларында CISC процессорларына қарағанда нұсқаулар көп. Іс жүзінде әрбір жеке нұсқаулық үшін жұмыс көлемі (және уақыты) қысқартылды - ең көбі бір жадқа кіру циклі ретінде. CISC процессорының күрделі нұсқауларын аяқтау үшін жадқа қол жеткізудің жүздеген циклдары қажет болуы мүмкін.

RISC жүйесі деп атауға болатын бірінші жүйе - 1964 жылы Сеймур Крем жасаған CDC 6600 суперкомпьютері. Кейінірек RISC термині шын мәнінде «Сеймур Крей ойлап тапқан» («Шынында Сеймур Крэй ойлап тапқан») дегенді білдіреді деген әзіл пайда болды.

Чипте RISC процессорын жасаудың бірінші әрекетін 1975 жылы IBM жасады. Бұл жұмыс IBM 801 процессорлар тобын құруға әкелді, ол 1981 жылы ROMP атауымен чип түрінде шығарылды. ROMP Research OPD дегенді білдіреді ( Office Product Division) Микропроцессор, одан кейін «Зерттеу МП». Бірнеше зерттеу жобалары орындалды, олардың бірі POWER жүйесіне әкелді.

X86 архитектурасының процессорлары суперскалярлы RISC архитектурасына ауыстырылғаннан кейін, қазіргі процессорлардың басым көпшілігі RISC архитектурасына негізделген деп айтуға болады.

RISC архитектурасыең қарапайым, бірақ жиі қолданылатын нұсқаулардың қысқартылған жиынтығын компьютерде енгізуді болжайды, бұл процессордың аппараттық құралдарын жеңілдетуге және, демек, оның өнімділігін арттыруға мүмкіндік береді.

RISC архитектурасын пайдаланған кезде командалар жиынын және процессордың (микропроцессордың) құрылымын таңдау берілген командалардың процессорлық машинаның бір циклінде орындалуын қамтамасыз етуге бағытталған. Неғұрлым күрделі, бірақ сирек операциялар ішкі бағдарламалармен қамтамасыз етіледі.

RISC бар компьютерде Машина циклі – регистрлерден екі операнд алынатын, операция ALU-да орындалатын және нәтиже регистрде сақталатын уақыт. RISC пәрмендерінің көпшілігі жылдам регистр-регистр командалары болып табылады және ОС-ға қатынаусыз орындалады. ОС-ға сілтемелер регистрлерді жадтан жүктеу және оларды ОС-да сақтау нұсқауларында ғана сақталады. Бұл мүмкін болу үшін процессорда ортақ регистрлердің жеткілікті үлкен саны болуы керек.

RISC архитектурасының сипатты ерекшеліктеріне байланысты – қысқартылған командалар жиынтығы (әдетте 50-100-ден аспайды), аз саны (әдетте 2-3) қарапайым адресация әдістері (негізінен регистр), қарапайым нұсқау форматтарының аз саны бар. бекітілген өлшемдері және олардың өрістерінің функционалдық тағайындалуы - процессордың басқару құрылғысы жеңілдетілген, ол бұл жағдайда микробағдарламаның басқару деңгейі мен басқару жадысынан босатылады, ал оның басқару блогы «сұлба логикасы» негізінде орындалуы мүмкін.

Жоғарыда атап өтілген RISC архитектурасының орындалатын нұсқаулары мен басқа мүмкіндіктерінің санының азаюы процессор құрылымының соншалықты айтарлықтай жеңілдетілуіне әкеледі, оны үлкен регистр файлы мен кэшпен бірге бір чипте іске асыру мүмкін болады.

Регистрлердің үлкен саны, әсіресе оларды тиімді пайдалануды қамтамасыз ететін «оңтайландырушы компилятор» болған жағдайда, регистрлерде аралық нәтижелерді сақтау, операндтарды бір бағдарламадан екінші бағдарламаға ауыстыру немесе ОС-ға қолжетімділікті шектеуге дейін азайтуға мүмкіндік береді. үзілістердегі ОС регистрлеріне мазмұнды беруден бас тарта отырып, регистрлер арқылы ішкі бағдарлама.

RISC архитектурасының ерекшелігі механизм болып табылады регистр терезелерінің қабаттасуы,ОС-қа және регистраралық аударымдарға қоңыраулар санын азайтуға арналған, бұл компьютерлердің жұмысын жақсартады.

Тұрақты ұзындықтағы регистрлердің шағын топтары (тізілім терезелері) процедураларға динамикалық түрде бөлінген. Параметрлерді бір процедурадан екінші процедураға тасымалдауға мүмкіндік беретін ретімен орындалатын процедуралардың Windows қабаттары қабаттасады.Процедураны шақырған кезде процессор басқа регистр терезесімен жұмыс істеуге ауысады, ал регистрлердің мазмұнын жадыға көшірудің қажеті жоқ. .

Терезе регистрлердің үш ішкі тобынан тұрады (9.21-сурет). Бірінші топша шақырушыдан берілген процедураға жіберілген параметрлерді және ол қайтарылған кезде шақыру процедурасының нәтижелерін қамтиды. Екінші топша процедураның жергілікті айнымалыларын қамтиды. Үшіншісі, осы және келесі процедура арқылы шақырылатын арасындағы екі жақты алмасу үшін буфер бола отырып, осыдан соңғы параметрлерді береді, ол өз кезегінде осы буфер арқылы осы процедурадан нәтижелерді алады. Осылайша, бұл процедура үшін бірдей ішкі топ ұстау регистрлері, ал келесісі үшін - параметр регистрлері. Бағдарламаның барлық процедуралары үшін қолжетімді бөлек терезе оның ғаламдық айнымалылары үшін бөлінген.

Қазіргі уақытта шетелде RISC архитектурасы бар бірқатар микропроцессорлар шығарылды. Мысал ретінде Alpha 21264 микропроцессоры, WindowsCE үшін Intel StrongARM микропроцессоры негізіндегі өнімділігі жоғары жұмыс станцияларын келтіруге болады.

Өнеркәсіп шығаратын компьютерде RISC-архитектурасы қолданыла бастағанына қарамастан, осы архитектураның артықшылықтары мен кемшіліктері төңірегінде талқылаулар жалғасуда. Соңғысы, атап айтқанда, кәдімгі архитектурадағы машиналар кодының ұзындығымен салыстырғанда компиляциядан кейінгі бағдарлама кодының үлкен ұзындығын қамтиды. Мысалы, x86 пәрмендерін эмуляциялау кезінде оның әрбір пәрмені орта есеппен RISC архитектурасы бар машинадан бес-алты пәрменді қажет етеді. Дегенмен, зерттеулер көрсеткендей, команданың орындалу жылдамдығының артуы бағдарламаның объектінің кодын ұзартудан болған жоғалтудан асып түседі.

1989 жылы Intel компаниясы Gray-1 суперкомпьютерінің іс жүзінде кремний баламасы болып табылатын RISC архитектурасына негізделген бір чипті 80860 микропроцессорын жасай алды.

Микропроцессорлық архитектуралардың классификациясы

Олардың өнімділігін арттыруға бағытталған ЭЕМ архитектурасының дамуы көп жағдайда инструкциялар жүйесін (жиынтығын) кеңейту, жоғары деңгейлі тілдердің примитивтеріне жақындайтын процедураларды орындайтын күрделі командаларды енгізу, олардың санын көбейту арқылы процессорларды күрделендіру жолымен жүреді. қолданылатын адрестеу әдістерінің және т.б.

Дегенмен, нұсқаулықтар жиынтығының кеңеюі мен күрделенуі бірқатар қажетсіз жанама әсерлерге ие.

Командалар жиынтығының кеңеюі, адрестеу әдістерінің санының ұлғаюы, күрделі командалардың енгізілуі командалық кодтың ұзындығының, ең алдымен, операциялық кодтың ұлғаюымен бірге жүреді, бұл «жұмыс кодын кеңейту», пәрмен пішімдерінің санының артуы. Бұл операция кодының шифрын шешуді және басқа пәрмендерді өңдеу процедураларын қиындатады және баяулатады. Командаларды өңдеу процедураларының күрделене түсуі «қатты» («тізбек») логикасы бар жылдам басқару құрылғыларының орнына басқару жады бар микробағдарламаларды басқару құрылғыларына жүгінуге мәжбүр етеді.

Процессордың күрделілігінің артуы оны интегралдық схеманың бір микросхемасында жүзеге асыруды қиындатады немесе тіпті мүмкін емес етеді, бұл өзара қосылыстардың ұзындығын қысқарту арқылы жоғары өнімділікке қол жеткізуді жеңілдетеді.

Жоғары деңгейлі тілдердің компиляторлары жасаған бағдарлама кодының талдауы іс жүзінде «регистр, регистр -> регистр» және «регистр» пішімдерінің қарапайым командаларының шектеулі жиынтығы ғана қолданылатынын көрсетті.<->жады. "Компиляторлар күрделі нұсқауларды тиімді пайдалана алмайды. Дәл осы бақылау RISC процессорлары деп аталатын қысқартылған командалар жинағы процессорларының тұжырымдамасына әкелді.

RISC процессорларының пайда болуына нақты себеп болған тағы бір жағдай Cray сияқты құбырлы процессорлардың архитектурасын дамыту болды. Бұл процессорлар жадпен жұмыс істеу үшін жеке командалар жиынын және процессор регистрлеріндегі ақпаратты түрлендіру үшін бөлек нұсқаулар жиынын пайдаланады. Әрбір осындай пәрмен орындалу уақыты бірдей (пәрменді алу, пәрменнің шифрын шешу, орындау, нәтижені жазу) аздаған кезеңдерге біркелкі бөлінеді, бұл келесі нәтижені шығаруға қабілетті тиімді процессорлық құбырды құруға мүмкіндік береді. әр сағат цикліне пәрмен беріңіз.

Дегенмен, нұсқауларды құрастыру конвейерге дәйекті түрде орындалатын нұсқаулар арасындағы деректер мен басқару тәуелділіктеріне қатысты мәселелерді тудырды. Мысалы, егер келесі пәрмен алдыңғысының нәтижесін пайдаланса, онда бұл нәтижені алу үшін қажетті бірнеше цикл үшін оның орындалуы мүмкін емес. Ұқсас мәселелер шартты тармақты командаларды орындау кезінде туындайды, егер шартты тармақты команда декодтау кезінде секірілетін деректер әлі дайын болмаса.

Бұл мәселелер не конвейерде командалардың орындалу ретін орнататын және келесі пәрменді орындау мүмкін болмаған кезде «Операция жоқ» пәрмендерін кірістіретін компилятор арқылы немесе командалар арасындағы тәуелділіктерді бақылайтын және қайшылықтарды жойатын арнайы процессордың аппараттық құралдары арқылы шешіледі.

RISC процессорларын бөлек сыныпқа бөлгеннен кейін дәстүрлі нұсқаулар жиыны бар процессорлар толық нұсқаулар жиынтығы бар CISC процессорлары ретінде белгілі болды. Әдетте, бұл процессорлардағы нұсқаулар әртүрлі пішімдерге ие және оларды көрсету үшін жад ұяшықтарының әртүрлі санын қажет етеді. Бұл орындау кезінде оны декодтау кезінде нұсқаудың түрін анықтауға әкеледі, бұл процессордың басқару блогын қиындатады және тактілік жиіліктің бірдей элементтік база негізіндегі RISC процессорларында қол жеткізуге болатын деңгейге дейін ұлғаюына жол бермейді.

RISC процессорлары оперативті жадқа қол жеткізу уақытын қысқарту үшін құрылымдық әдістерді тиімді пайдалануға болатын қолданбаларда тиімді екені анық. Егер бағдарлама жадыға қол жеткізу адрестерінің ерікті тізбегін генерациялайтын болса және әрбір деректер бірлігі тек бір команданы орындау үшін пайдаланылса, онда іс жүзінде процессордың өнімділігі негізгі жадқа кіруге кететін уақытпен анықталады. Бұл жағдайда қысқартылған командалар жинағын пайдалану тек тиімділікті төмендетеді, өйткені ол жадты, жадтан жадқа нұсқауларды орындаудың орнына жады мен регистр арасында операндтарды тасымалдауды қажет етеді. Бағдарламалаушы жад деңгейлері арасында тасымалдау кезінде мүмкіндігінше тасымалданатын деректер блоктарының барлық деректері өңдеуге қатысатындай өңделетін деректердің жергілікті орнын анықтау қажеттілігін ескеруі керек. Егер программа мәліметтер ретсіз орналасатындай етіп жазылса және әрбір жіберілген деректер блогынан оның аз ғана бөлігі ғана пайдаланылатын болса, онда өңдеу жылдамдығы негізгі жадының жылдамдығына дейін бірнеше есе баяулайды. Мысал ретінде, 1.1-кестеде Hadamard түрлендіруін жүзеге асыру кезінде Alpha 21066 233 МГц микропроцессорының өнімділігін өлшеу нәтижелерін ұсынамыз. n = 8 - 20.

1.1-кесте Hadamard түрлендіруін орындау кезіндегі Alpha 2I066 микропроцессорының өнімділігі

Мысал деректер чиптік кэште болғанша өнімділік жақсы екенін көрсетеді. Деректер көлемі кэш жадының өлшемінен асып кеткен кезде және жадқа кірулер «біркелкі» бөлінген мекенжайларға ауысқан кезде өнімділік 7 еседен астам төмендейді.

Микропроцессорлардың дамуы бағдарламалық қамтамасыз етудің (бағдарламалық қамтамасыз етудің) үздіксіздігін сақтауға және архитектураны жақсарту және тактілік жиілікті арттыру арқылы өнімділікті арттыруға үнемі ұмтылумен жүреді. Бағдарламалық қамтамасыз етудің үздіксіздігін сақтау және өнімділікті арттыру, жалпы алғанда, бір-біріне қайшы келеді. CISC процессорлары ретінде жіктелген x86 нұсқаулар жинағы бар процессорлар RISC процессорларының жетекші өндірушілерінің микропроцессорларымен салыстырғанда сағаттық жылдамдығы төмен. x86 микропроцессорларының өнімділігі бірдей элементтік негізде жүзеге асырылған RISC процессорларына қарағанда айтарлықтай төмен қосымшалар бар. Дегенмен, соңғы онжылдықта шығарылған x86 процессорларының әртүрлі буындары үшін үйлесімді бағдарламалық жасақтаманы пайдалану мүмкіндігі оларға нарықта тұрақты үстем жағдайды береді.

Қазіргі уақытта Intel компаниясы қабылдаған NexGen және AMD әзірлемелерінің негізінде x86 архитектурасы аясында өнімділікті жақсарту мәселесін шешуге әрекет жасалуда. Бұл компаниялар соңғы әзірлемелерде x86 отбасының CISC микропроцессорларымен командалық жүйенің үздіксіздігін сақтай отырып, RISC архитектурасының элементтерін пайдалана отырып, жаңа құрылғылар жасайды. Бұл тәсілдің мысалы ретінде ажыратылған архитектура тұжырымдамасын және RISC ядроларын пайдаланатын Nx586 (NexGen), K5, K6 (AMD), Pentium PRO, Pentium II (Intel) микропроцессорларын келтіруге болады. Микропроцессорға аппараттық аудармашы орнатылған, ол x86 нұсқауларын RISC процессорының нұсқауларына түрлендіреді. Бұл жағдайда бір x86 нұсқауы RISC процессорының төрт нұсқауына дейін жасай алады. Нұсқаулар дамыған суперскалярлы процессордағыдай орындалады. Intel бұл тәсілді өзінің Pentium Pro микропроцессорымен қабылдады, ол RISC архитектурасындағы жетістіктер аясында өз орнын айтарлықтай нығайтты.

Суперскалярлық процессорлар
1   ...   5   6   7   8   9   10   11   12   13


написать администратору сайта