Құрудың жалпы қағидаларі. RISC база концепциясының негізінде құрылған жұмыс бекеттері мен серверлері өздерінің ерекше сипаттамаларының арқасында озық қатарлы орындарға қол жеткізілді. Тіпті мәселе дәстүрлі CISC- жүйелерінің жойылуын болжауға дейін барды. 80жылдардағы RISC сәулетіне жай қызығушылық 90жылдары RISC –жүйелерінің өнеркәсібінің өндірісінің қарқынды түрде өсуіне септігін тигізді. Жалпы барлық өндірушілер - IBM, Hewlett-Packard, DEC, Silicon Graphics – RISC-сәулетінің үрдісшісін құрды және нарыққа олардың базасының негізінде жаңа жұмыс бекеттері мен серверлердің топтарын шығарды. Сонымен қатар RISC-жүйелері тар кәсіби қосымшалар шекарасынан шығып, қарапайым қолданушылар арасында да кең қолданысқа те болды.
Сандық логикалық жүйелердің теориясында белгілі аксиома бар ол кез-келген компьютер тек бір тип вентиль-элементін қолданылуы арқылы құрылуы мүмкін «ЖӘНЕ-ЕМЕС», «НЕМЕСЕ-ЕМЕС». 60-70жылдардың машиналарын құрушылардың біреуінің ойына он немесе жүздеген микросұлбалардың тізімінен бас тартып, тек бір венитль типінен компьютер жобалау келмеген.
Сеймур Крейден басқа. Нәтиже белгілі: CRAY-1 компьютері рекордты қысқа уақытта құрылып, оның алдындағылардан кішірек және жылдамдырақ болып шықты. Мұндай сияқты құбылыс RISC-сәулетінің құрылу үрдісінде де кездескен еді. RISC-сәулетінің негізіне қойылған идея келесіден тұрды: ол командалар жүйесінде тек бірнеше көбірек қолданылатын және әмбебап нұсқауларды қалдырып, күрделі және аз қолданылатындар алып тастау.
Нәтижесінде орталық басқарудың оңайланып, мәліметтерді өңдейтін қуатты құрылғыларды орнату үшін үрдісшінің беткі бет криссталының босатылуы. Осылайша RISC-сәулетінің философиясы – «аз команда - жоғарырақ жылдамдық », екі іргелі постулаттарға негізделген:
Компьютерлік өңдеу жылдамдығы аппараттық құрылғылардың тез әрекетімен ғана емес, бағдарламалық қамтамасыздандырудың және құрылғылардың жақсы тезәсерлесуімен анықталады
Жылдамдық үшін әрдайым не құрылғыны күрделендіру арқылы не болмаса бағдарламалық құрылғылар арқылы, не болмаса екеуін де күрделендіру арқылы төлеу керек.
Оларды іске асыру бұрыннан МҮЖ жасаушыларын қызықтырды. Компьютерлерді RISC және CISC топтарына бөлгенге дейін есептеудің екі әдісі меңгерілді – «жылдам» технологиялар және өңдеу параллелизмі. Мәліметтерді өңдеуді жылдамдату жолындағы мақсаттар жақсы белгілі: арсенид галлийдегі сұлба кремнийлік негіздегі сұлбаларға қарағанда өнімдірек, тезәсерлесудегі қаныққан логика қалады, компилинирленген теория кодты тиімділеу 2-4 есе бағдарламаның орындалу уақытын қысқартуға мүмкіндік береді.
RISC- сәулетінің концепциясы анық логикалық формула негізінде жасалынған: егер «жылдам» технологиялар және бүкіл командалар тізімін параллельді өңдеу жоғары деңгейлі шығындарға жетуге болады, жиі орындалатын операцияларды жылдамдатып, ал сирек қолданылатындар мен күрделілермен жалпы өнімділікті жоғарылату үшін бас тартуға мәжбүр болады. 80-90 жылдардың RISC- компьютерлері мен 60-жылдардағы CISC- машиналарының арасындағы айқын айырмашылығы нұсқауларға келетін аппараттық қадамдар санында жатыр. RISC- үрдісшілерде нұсқау бір қадамда орындалады, CISC-те сол нұсқау жүздеген және мыңдаған аппараттық әрекеттерді шақыра алады.
Осындай қаныққан үрдістер көмегімен бағдарламалау тығыз орындаушы модульді алуға болады, бірақ осыдан сұрақ шығады: «жай нұсқаулары бар қысқа бағдарламалар дұрыс па, әлде тез нұсқаулары бар ұзын бағдарламалар ма?». Бұған жауап ІВМ фирмасындағы зертханалардағы қолданбалы зертееулер көмегін берді. PL/8 атты PL/1 тілінің ішкі жиыны құрылған еді және гипотетикалық компьютерлер үшін тиімділеу коды бар компиляторлар жазылған, «тіркегіш-тіркегіш» қысқа нұсқаулар типін қолданылатын командалар жүйесін қолданады. Бұл компьютерлер жұмыс имитациясы 168 моделінің ІВМ/370 мэйнфреймде іске асырылған. Бұл тәжірибе аса ерекше нәтиже берді: стандартты PL/1 тілінің нұсқасының көмегімен бағдарламаланған IBM 370/168 қарағанда жиі қолданылатын бағдарламалық операторлардың көбісімен компьютер 2-3 есе тез жасайды.
ІВМ өндірісінің келесі мэйнфреймдер тобы үшін берілген қатынас үрдісшілерді және кэш-жадының үлкен көлемін конвейерлеу арқасында азайды, бірақ ІВМ-нен тәжірибеден шығатын мақсаттық нәтиже еш өзінің мағынасын жоғалтпады: сирек нұсқауды қолданудан бас тарту және тіркегіштерді қолдану тиімділігі есептеу үрдісін екі есе жылдамдатады.
Сонымен, сирек қолданылатын нұсқаулардан командалар жүйесін алу және «тіркегіш-тіркегіш» типіндегі операциясының аппараттық және бағдарламалық құрылғыларына бағытталу өнімділіктен еш жоғалтпау құрылғыларын үнемдеу үшін кең мүмкіндіктер ашады. Бірақ үрдісші криссталында қалай бос орын пайда болысымен, одан да жылдам қуатты өңдеу құрылғыларының орнын басатындар шыға келді. Осылай 1995 жылы Acorn Corporation of England фирмасы 32-разрядты ARM RISC-үрдісшісін шығарды, шамамен 8-разрядты CISC-үрдісшісінің Intel 8080 эквивалентті, бірақ әлдақайда үлкен тезәсерлесуі бар.
Шындығында, бұл RISC- сәулетінің негізгі заңдары құрылған кейін ғана болған еді. RISC заңдары 80 жылдардың басында Калифорниялық университетте жүрген RISC- сәулетінің теориялық зерттеулері бір уақытта аяқталды. Дәл сол кезде RISC- сәулетінің негізгі төрт принциптері құрылған:
Әр команда өзінің типіне қарамастан бір машина циклінде орындалады, оның ұзақтығы үрдісшінің тактілік жиілігіне кері пропорционал және максимал қысқа болуы керек. RISC- үрдісшілері үшін стандартты болып екі толық уақытты қосқанға тең машиналық циклдің ұзақтығы болып есептеледі (қазіргі заманғы технологияларды дамыту үшін бұл көлем 3 тен 10нс-ке дейін құрады).
Барлық командалар бірдей ұзындықта болуы керек және минимум адрестік форматты қолданады; бұл орталық басқару логикасын бірден оңайлату. Адрестеудің қарапайымдылығының ең басты принципі, ол RISC-үрдісшісі өңдеу темпіндегі кезекті командасын таңдау мүмкіндігі, яғни команданы бір циклде орындау.
Жадыға арнау тек амалдарды оқып және жазғанда ғана орындалады, жадыдағы операндының модификациялау тек «жазба» командасы арқылы қол жеткізуге болады. Барлық мәліметтерді өңдеу үрдісшінің тіркегіш құрылымында жүзеге асырылады.
Командалар жүйесі жоғары деңгейлі тілдерді қолдауын қамтамасыз етеді. Командалар жүйесін таңдау, әртүрлі бағдарламалау тілдерінің тиімдісін таңдау.
Әрине айтылып кеткен RISC-сәулетінің базалық мақсаты RISC-ң негізгі заңдарынан бөлек болмайды: командалар жүйесі жиі қолданылатын мен ең қарапайым нұсқаулардан тұруы қажет.
Әрине, компьютерлік тәжірибеде, RISC мақсатын талдаудың аз емес мысалдарын табуға болады. Алайда RISC-сәулетінің RISC-сәулетінің бір заңы барлық жасаушылармен сақталынады. Мәліметтерді өңдеу тіркегіш құрылым негізінде іске асырылуы қажет және ол «тіркегіш-тіркегіш» форматында ғана іске асырылады.
Тіркегіштер - RISC-ң негізгі артықшылығы және оның ең басты мәселесі. Барлық RISC-үрдісшілері «тіркегіш-тіркегіш» мәліметтер форматының жалғыз өңдеу типінде іске асырылады, яғни «тіркегіш-тіркегіш-тіркегіш»: R1:=R2,R3. Бұл еш артық уақыт шығынынсыз адрестелетін жедел тіркегіштер арқылы операндыларды таңдауға мүмкіндік береді және тіркегішке операциялар нәтижелерін жазуға болады. Сонымен қатар, үшорынды үрдістер компиляторға CISC-тіркегішінің «тіркегіш-жады» типтік екі орынды үрдістерімен салыстырғанда үлкен иілгіштік береді. «Тіркегіш-тіркегіш» типіндегі RISC-операциясының тез әсерлесетін арифметикасымен бірге үрдісшінің өнімділігін жоғарылататын қуатты құралдар болып табылады. Ең басты мәселе, RISC-жүйесінің шараларын орындау үрдісінде үрдісшінің тіркегіш құрамын жаңалатып тұру қажет. CISC- жүйесі үшін мұндай қиындықтар кездеспейді, себебі тіркегіштер модификациясы «жады-жады» форматтарын өңдеу командалар желісінде іске асырылуы мүмкін.
RISC-сәулетінің тіркегіштерінің модификациялау мәселесін шешуде екі жол бар: аппараттық, Беркли университетінің RISC-1 және RISC-2 проекттерінде ұсынылған және бағдарламалық ІВМ мамандарымен және Станфорд университетімен ұсынылған. Олардың арасындағы мақсатты айырмашылғы, ол бағдарламалық шешімі үрдісті шақыру уақытын қосымша үрдісші құрылғылары арқылы уақытты азайтуға бағытталған, ал бағдарламалық болса, компилятор мүмкіндігіне негізделген және орталық үрдісшінің құрылғыларының көзқарасы жағынан үнемді болып табылады.
RISC-сәулетінде MORS (Multiple Overlapping RegisterSets) тіркеуші терезелерін жабушысын қосып отырушы механизм іске асырылады. Ол кейде Rolodex тіркеуші файлының құрылымы болып табылады. MORS механизмі RISC-1 сәулетінің негізгі сәулеті болып қызмет атқарды, осыған сәйкес үрдісші берілген мәліметтерді сақтау үшін 138 тіркеушіден тұрады. Оның оны жаһандық дер аталатындары, әрдайым бағдарламаға «көрініп» тұрады; олардың негізгі мақсаты – бағдарламаның кезекті контекстіндегі барлық үрдісшілер үшін жалпы болып табылатын мәліметтерді сақтау. Қалған 128 тіркеушілер 22 тіркеушіден тұратын сегіз жабық терезелерге бөлінген. Әр уақыт мезетінде RISC-1 де орындалатын бағдарлама он жаһандық тіркеушілерді «бақылайды» және бір толық терезе, яғни барлығы 32 тіркеуші.
MORS құрылымының негізгі идеясы процедураларға қатысты үрдісші уақытының шығынын үнемдеу. Ол үшін сегіз терезенің әрқайсысы нақты үрдістікпен байланысты болады, ал терезенің тіркеушілері жоғарғы, жергідікті және төменгі бөліктерге бөлінген. В үрдістік А үрдістікпен шақырған кезде тіркегіш файлдың белсенді терезесі, А үрдістіғімен жоғарғы тіркеушілері В үрдістікпен төменгі тіркеушілерін жауып тұратындай алты орынға жылжиды.
Терезе аумағын жауып тұрушылар - олар физикалық тұрғыда бір тіркеушілер екі процедураларға да қол жетімді болып келеді. Олар параметрлерді, қайтару адрестерін жіберу үшін қолданылады және жедел жадымен мәліметтер алмаспай-ақ үрдістікті қарауға мүмкіндік береді. Осылайша, үрдістікті шақыру тіркеуші операндыларды қосқаннан күрделі болмайды. Сонымен қатар операция негізінен бір мезетте орындалады: процедураға қарату үшін немесе шақыру нүктесін қайтару үшін тіркегіш файлдың белсенді терезесінің көрсеткішін жылжыту жеткілікті болып табылады. Осы RISC-1 сәулетінің негізгі ерекшелігі болып есептеледі.
RISC-1 сәулеті өзінің логикалық нақтылығының арқасында Pyramid және SPARC массалық үрдісшілерінің жасауының негізіне көп үлес қосты, алайда Rolodex тіркеуші файлының ұйымдастырылуында аздаған өзгерістерімен (SPARC-та бағдарлама сол 32 тіркеушіден тұратын терезені «көреді», бірақ жаһвндық, жоғарғы, жергілікті және төменгі тіркеушілердің саны бірдей- әр аумақта сегізден).
Алайда MORS құрылымының екі кемшілігі бар - ОС үшін үрдістікті тіркеуші файлдардың терезелеріне тиімді түрде орналастыру тривиалды шарт болып табылмайды. Ал тіркеуші файлдарда сақталушы сегіз үрдістіктің ішінен таңдалған сан, эмпирикалық білім арқылы көрсетіледі. Дегенмен де, берілеген шарт есептелгеннен көп процедуралардан тұратын және сонымен қатар жедел жадыда сақталып, үрдістікті белсенді ету үшін бір немесе бірнеше терезелердің модификациясымен қиындықтар туындайтын мысалдар да кездеседі.
RISC-1 компьютеріндегі жағдай, кезекті енгізілген үрдістікті шақыруды орындау қажет болып, ал барлық тіркегіш файлдар терезелері бос емес болса, арнайы бағдарламалық жағдайды құратын үрдісшінің логикасы арқылы рұқсат етіледі. Сонымен үрдісші бір немесе бірнеше тіркеуші терезелерінің ОС бағдарламасын қайталайды, яғни жедел жадыға тіркеушілердің құрамын жібереді. Жалпы тағайындалған машина ретінде RISC-1 қолдану жағдайында , мұндай шешімді қабылдау өте ыңғайлы болып есептеледі, себебі жалпы жағдайда trap үрдістікті жүз арнаулардың ішінен тек біреуінде ғана пайда болады.
Бірақ нақты уақыт ішіндегі жұмыс үшін бір пайыз жағдайда үлкен көлемі мүмкін болмайды. Расымен де, егер тоқтату барлық тіркегіш терезлер бос емес болғанда жүзеге асса, онда trap үрдістікті орындау жасалынады және реакция уақыты детерминирленбегенге айналады - жағдай нақты уақыт жүйесі үшін өте қауіпті болып табылады. Егер сонымен бірге бір шарттан басқаға контектстілік қайта қосылуы керек болған жағдайда, жадыға бірден сегізге дейін терезелерді жіберу қажет болады, бөлінген бағдарламаның күйіне байланысты. Ал бұл өз кезегінде, контекстілік қайта қосылулар уақыты кең шектер арасында өзгеріп жатады: 60-тан 840 машиналық циклге дейін (RISC-1 тіркеуші файлының ішінде орындалатын бөлу, үш циклден артық емес).
Дәл осы тарату реакциялар периоды қатал түрде детерминирленген болу қажет, нақты уақыт жүйесінде қабылданбайды. Бұл мәселені шешу талпыныстары Беркли университетіндегі Omega жобасында RISC-2 жобасы trap процедурасының дамуына әкелді. RISC-1 жобасынан аталмыш жобалардың негізгі айырмашылығы, арнайы жадыға тіркегіш терезлердің тез сақталатын динамикалық механизмдеріндегі компьютер сәулетіне енгізу болып табылады.
Достарыңызбен бөлісу: |