Кіріспе

RISC нұсқаулар жиынтығы архитектурасы AIM альянсымен жасалды.

PowerPC (толық атауы Performance Optimization With Enhanced RISC – Performance Computing, кейде PPC деп қысқартылады) – 1991 жылы Apple, IBM және Motorola компаниялары құрған AIM альянсы жасаған қысқартылған нұсқаулар жиынтығы компьютердің (RISC) нұсқаулар жиынтығы архитектурасы (ISA). PowerPC, дамитын нұсқаулар жиынтығы ретінде, 2006 жылдан бері Power ISA деп аталады, ал ескі атауы Power Architecture негізіндегі процессорлардың кейбір нұсқалары үшін сауда белгісі ретінде қолданылады. Бастапқыда жеке компьютерлер үшін жоспарланған бұл архитектура 1994 жылдан 2006 жылға дейін Apple компаниясының үстел және ноутбуктер серияларында, сондай-ақ Microsoft-тың Xbox 360, Sony-дың PlayStation 3, Nintendo-ның GameCube, Wii және Wii U сияқты бірнеше бейне ойын консольдерінде қолданылғандығымен танымал. PowerPC Марстағы Curiosity және Perseverance роверлерінде, сондай-ақ түрлі спутниктерде де пайдаланылды. Қазір ол жеке компьютерлер үшін, әсіресе AmigaOS 4 нұсқаларында қолданылатын арнайы архитектураға айналды, бірақ кіріктірілген жүйелерде де кең таралған. PowerPC 1990-шы жылдары AIM альянсының PReP және Common Hardware Reference Platform (CHRP) жобаларының негізі болды. Ол негізінен IBM POWER архитектурасына негізделген және онымен жоғары деңгейде үйлесімді; архитектуралар бір-біріне жақын болғандықтан, егер дайындық шаралары сақталса, бірдей бағдарламалар мен операциялық жүйелер екеуінде де жұмыс істейді. Power сериясындағы жаңа чиптер Power ISA-ны қолданады.

Тарих

RISC тарихы IBM-нің 801 зерттеу жобасымен басталды, оның бас әзірлеушісі Джон Кокк болды, ол 1975–78 жылдары RISC концепцияларын жасады. 801 негізіндегі микропроцессорлар IBM-нің бірнеше кіріктірілген өнімдерінде пайдаланылды, соңында IBM RT PC-де қолданылған 16 регистрлі IBM ROMP процессоры болды. RT PC – RISC архитектурасын іске асыратын жылдам жасалған құрылғы. 1982 және 1984 жылдар аралығында IBM нарықтағы ең жылдам микропроцессорды жасау жобасын бастады; бұл жаңа 32 биттік архитектура даму циклының шамамен 5–6 жылға созған кезеңінде «Америка жобасы» деп аталды. Нәтижесінде 1990 жылдың басында RISC System/6000 жүйесімен ұсынылған POWER командалар жиынтығы архитектурасы пайда болды. POWER микропроцессоры, RISC-тің алғашқы суперскалярлық іске асырылымдарының бірі, жоғары өнімділігі бар, көп чипті дизайн болып табылады. IBM RS/6000 желісін төменгі деңгейден жоғары деңгейлі машиналарға дейін кеңейту үшін бір чипті микропроцессор қажет екенін бірте-бірте түсінді. Бір чиптік POWER микропроцессорымен жұмыс басталды, ол RSC (RISC Single Chip) деп белгіленді. 1991 жылдың басында IBM өзінің дизайны индустрия бойынша кеңінен қолданылатын, көптеп шығарылатын микропроцессорға айналуы мүмкін екенін түсінді.

Эндиандық режимдер

PowerPC чиптерінің көпшілігі MSR (машинаның күй реестрі) биті арқылы эндиандықты ауыстырады, сонымен қатар ОС-тің басқа эндиандықта жұмыс істеуіне мүмкіндік беретін екінші бит қарастырылған. "Айналдырылған бет кестесіне" (TLB-ге ұқсас, чиптен тыс жадта сақталатын хэш-кесте) кіру әрқашан үлкен эндиан режимінде жүзеге асырылады. Процессор үлкен эндиан режимінде басталады. Кішкентай эндиан режимінде тиімді адрестің ең төменгі үш биті, операндтың ұзындығына сәйкес таңдалған үш биттік мәнмен XOR (Exclusive OR) операциясынан өтеді. Бұл, әдеттегі бағдарламалық қамтамасыз ету үшін толық кішкентай эндианды қамтамасыз етуге жеткілікті. Операциялық жүйе сыртқы чиптерге, мысалы бейне және желілік жабдыққа қол жеткізген кезде әлемді бұрмаланған түрде көреді. Бұл бұрмаланған көріністі түзету үшін аналық плата процессорға кіретін немесе одан шығатын барлық деректер үшін 64 биттік байт алмасуды міндетті түрде орындауы керек. Осылайша эндиандық аналық платаның қасиетіне айналады. Үлкен эндиандық аналық платада кішкентай эндиан режимінде жұмыс істейтін ОС кішкентай эндиан чиптерге қол жеткізген кезде байттарды ауыстыру және XOR операциясын кері қайтару керек. AltiVec операциялары 128 биттік болғанымен, 64 биттік ретінде қарастырылады. Бұл AltiVec-тен бұрын жасалған кішкентай эндиандық аналық платалармен үйлесімділікті қамтамасыз етеді. Бұл жүзеге асырудың бір қызықты салдары – бағдарлама 64 биттік мәнді (ең ұзын операнд форматы) жадыға бір эндиан режимінде сақтай алады, режимді ауыстырып, байт реті өзгере қоймай сол 64 биттік мәнді кері оқи алады. Егер аналық плата бір уақытта ауыстырылса, мұндай болмайды. Mercury Systems және Matrox PowerPC-ті кішкентай эндиан режимінде іске қосты. Бұл PCI платаларында копроцессорлар ретінде жұмыс істейтін PowerPC құрылғыларының x86 негізіндегі хост-компьютерлермен дерек құрылымдарын бөлісуі үшін жасалды. PCI және x86 екеуі де кішкентай эндианды қолдайды. OS/2 және PowerPC үшін Windows NT процессорды кішкентай эндиан режимінде, ал Solaris, AIX және Linux үлкен эндиан режимінде іске қосты. IBM-нің кейбір кіріктірілген PowerPC чиптері әр бет үшін эндиандық битті қолданады. Бұл ережелер оларға қатысты емес.

Қолданылу

Архитектураның алғашқы іске асырылуы 1992 жылы шыққан PowerPC 601 болды, ол RSC негізінде POWER1 және PowerPC нұсқауларының гибридін іске асырды. Бұл IBM-ге чипті POWER1 негізделген платформаларында пайдалануға мүмкіндік берді, бірақ екінші буынның "таза" PowerPC дизайнына ауысқанда шамалы қиындықтар туды. Apple компаниясы чипке негізделген Macintosh компьютерлерінің жаңа желісі бойынша жұмысын жалғастырды және ақырында оларды 1994 жылдың 14 наурызында 601 негізделген Power Macintosh ретінде шығарды. Бірінші буын PowerPC чиптеріне негізделген үдеткіш карталар PowerPC-ге негізделген жаңа Amiga платформасына көшуді күтіп, Amiga үшін жасалды. Үдеткіш карталар сонымен қатар артқа қарай үйлесімділікті сақтау үшін Motorola 68040 немесе 68060 процессорларын қамтиды, өйткені сол кезде PPC чиптерінде өте аз бағдарламалар жұмыс істей алатын. Алайда жаңа машиналар ешқашан іске асырылмады, ал кейіннен Commodore банкроттығын жариялады. Он жылдан астам уақыттан кейін AmigaOS 4 шығарылды, бұл платформаны архитектураға тұрақты түрде енгізеді. OS4 сол бірінші буын үдеткіштерімен, сондай-ақ Amiga платформасының жаңа нұсқасы үшін жасалған бірнеше арнайы негізгі платалармен үйлесімді. IBM-де PowerPC-ге негізделген үстел компьютерлерінің толық желісі жасалып, жөнелтуге дайын болды; өкінішке орай, IBM осы үстел компьютерлерінде жұмыс істеуге ниеттенген операциялық жүйе (Microsoft Windows NT) 1993 жылдың басында, машиналар сатуға дайын болған кезде толық болған жоқ. Осыған сәйкес, және IBM-нің Microsoft-қа деген керісінше көзқарасы болғандықтан, IBM OS/2 операциялық жүйесін PowerPC-ге Workplace OS түрінде көшіруді шешті. Бұл жаңа бағдарламалық платформа үш жыл бойы (1992 жылдан 1995 жылға дейін) әзірленді және PowerPC 620-ның көңіл көншітпейтін іске қосылуынан кейін 1995 жылдың желтоқсанында әзірлеушілердің шығарылымымен тоқтатылды. Осы себепті IBM PowerPC үстелдері шығарылмады, бірақ PowerPC 601 процессорына негізделген эталондық дизайн (кодтық атауы Sandalbow) RS/6000 моделі ретінде шығарылды (Bytes журналының 1994 жылғы сәуір айындағы санында Apple және IBM PowerPC үстелдері туралы кең мақала жарияланды). Apple компаниясы, сондай-ақ PowerPC негізделген операциялық жүйесіне ие болмаған, басқа жолды таңдады. Құпия "Жұлдызды жол" жобасы берген портативті платформаны пайдаланып, компания Mac OS операциялық жүйесінің негізгі бөліктерін PowerPC архитектурасына көшірді және 68k негізделген қосымшаларды және операциялық жүйенің қайта жазылмаған бөліктерін орындай алатын 68k эмуляторын жазды. Екінші буын "таза" болды және "төменгі" PowerPC 603 және "жоғарғы" PowerPC 604 процессорларын қамтыды. 603 өзінің өте төмен бағасы мен қуат тұтынуымен ерекшеленеді. Бұл Motorola тарапынан қасақана жобаланған, олар 603 жобасын PPC чиптерінің барлық болашақ буындарының негізгі өзегін құру үшін пайдаланды. Apple 603-ті жаңа ноутбук дизайнында пайдалануға тырысты, бірақ 8 КБ деңгейлі 1 кэшінің кішкентайлығына байланысты мүмкін болмады. Mac OS-дегі 68000 эмуляторы 8 КБ-қа сыймады, сондықтан компьютерді күрт баяулатты. 603e бұл мәселені 16 КБ L1 кэшке ие болу арқылы шешті, бұл эмулятордың тиімді жұмыс істеуіне мүмкіндік берді. 1993 жылы IBM-нің Берлингтон штатындағы Essex Junction зауытындағы әзірлеушілер PowerPC нұсқасында жұмыс істей бастады, ол Intel x86 нұсқауларын тікелей процессорда қолданатын болды. Бұл IBM-нің бірнеше бір мезгілдегі қуат архитектурасының жобаларының бірі болса да, бұл чип IBM-де және БАҚ-та PowerPC 615 ретінде таныла бастады. Пайдалылық туралы алаңдаушылықтар мен x86 және PowerPC нұсқаулық жиынтықтарын ауыстырудағы өнімділік мәселелері туралы хабарлар 1995 жылы жобаның тоқтатылуына әкелді, өйткені тек шектеулі сандағы чиптер ішкі сынақтар үшін өндірілді. Коммутациялау процесі тек 5 циклды алды, яғни процессордың нұсқаулар құбырын босату үшін қажетті уақыт. Microsoft сонымен қатар PowerPC режимін қолдаудан бас тарту арқылы процессордың жойылуына көмектесті. 64 биттік алғашқы нұсқасы PowerPC 620 болды, бірақ ол Apple оны сатып алғысы келмегендіктен және үлкен өлшемімен кіріктірілген нарыққа өте қымбат болғандықтан, аз пайдаланылған сияқты. Ол уәде етілгеннен кейін және баяу болды, ал IBM өздерінің POWER3 дизайнын қолданды, 2002 жылдың соңында PowerPC 970 енгізілгенге дейін 64 биттік "кіші" нұсқасын ұсынбады. 970 - POWER4 серверлік процессорынан алынған 64 биттік процессор. Оны жасау үшін POWER4 өзегі 32 биттік PowerPC процессорларымен кері үйлесімді болу үшін өзгертілді және векторлық блок (Motorola 74xx сериясындағы AltiVec кеңейтулеріне ұқсас) қосылды. IBM-нің RS64 процессорлары PowerPC архитектурасының "Amazon" нұсқасын іске асыратын чиптер тобы. Бұл процессорлар RS/6000 және IBM AS/400 компьютерлер отбасыларында қолданылады; Amazon архитектурасы AS/400 жүйесінде қолданылатын эксклюзивті кеңейтулерді қамтиды. POWER4 және одан кейінгі POWER процессорлары Amazon архитектурасын іске асырады және RS/6000 және AS/400 отбасыларындағы RS64 чиптерін алмастырды. IBM кіріктірілген нарыққа бағытталған жеке өнімдер желісін "4xx" деп атады. Бұл дизайнға 401, 403, 405, 440 және 460 кірді. 2004 жылы IBM өздерінің 4xx өнімдер желісін Applied Micro Circuits Corporation (AMCC) компаниясына сатты. AMCC IBM технологияларының негізінде, сондай-ақ AMCC ішінде әзірленген технологиялардың негізінде жаңа жоғары өнімді өнімдерді әзірлеуді жалғастыруда. Бұл өнімдер желілік құрылғылар, сымсыз байланыс, сақтау, басып шығару/бейнелеу және өнеркәсіптік автоматтандыру сияқты әртүрлі салаларда қолданылады. Көрсеткіштер бойынша PowerPC көбінесе автомобильдердегі басқару құрылғыларында кездеседі. Автомобиль нарығы үшін Freescale Semiconductor бастапқыда көптеген MPC5xx отбасыларын ұсынды, мысалы, 601 өзегінің нұсқасы негізінде құрылған MPC555, және MSIL (Motorola Silicon Israel Limited) Израильде жобаланған. 601 өзегі бір реттік шығару болып табылады, яғни ол сағат циклында тек бір нұсқауды шығара алады. Оларға бір чипте I/O үшін қосымша аппараттық құралдар қосылды. 2004 жылы автомобиль нарығы үшін келесі буын төрт таңбалы 55xx құрылғылары ұсынылды. Бұл жаңа e200 сериялы PowerPC өзектерін пайдаланады. Желілік құрылғылар да PowerPC процессорларының көптеп қолданылатын саласы болып табылады. MSIL MC68302-ден QUICC қозғалтқышын алып, PowerQUICC MPC860 жасады. Бұл 1990 жылдардың соңында көптеген Cisco жиек маршрутизаторларында қолданылған өте танымал процессор болды. PowerQUICC-тің нұсқаларына MPC850 және MPC823/MPC823e кіреді. Барлық нұсқалар орталық процессордан байланыс өңдеу міндеттерін жеңілдету үшін және DMA функцияларын қамтитын жеке RISC микроқозғалтқышын (CPM) қамтиды. Бұл отбасының келесі чипі MPC8260, 603e негізіндегі өзегіне және басқа CPM-ге ие. Honda сонымен қатар өзінің ASIMO роботы үшін PowerPC процессорларын пайдаланады. 2003 жылы BAE Systems Platform Solutions F-35 истребителі үшін Vehicle Management Computer жеткізді. Бұл платформа Freescale компаниясы жасаған екі PowerPC процессорларынан тұрады және үш еселенген конфигурацияда орналасқан. 2024 жылы Aeronautical Development Establishment HAL Tejas Mark 1A ұшағында төрт ядролы PowerPC негізіндегі процессорлық конфигурацияда қуатты цифрлық ұшу басқару компьютерін сынап көрді.

Операциялық жүйелер

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