PowerPC — микропроцессорная RISC-архитектура, созданная в 1991 альянсом компаний Apple-IBM-Motorola, известном как AIM.
История
IBM PowerPC 601
История PowerPC начинается с прототипа чипа 801, созданного в IBM в конце 1970-х на основе идей Джона Коке (John Cocke) о RISC-архитектуре. Далее она была продолжена 16-тирегистровым дизайном IBM/RT в 1980-х годах, который в дальнейшем развился в архитектуру POWER, представленную RISC System/6000 в начале 1990-х. Дизайн POWER был основан на архитектуре предшествующих RISC-процессоров, таких как IBM 801, и архитектуре MIPS. Настоящий микропроцессор POWER, одно из первых суперскалярных воплощений архитектуры RISC, был высокопроизводительным и многоядерным. В IBM скоро поняли, что им требуется одночиповый дизайн, в котором не были бы воплощены некоторые инструкции POWER, чтобы линия процессоров RS/6000 включала решения всех уровней производительности, и работа над одночиповым микропроцессором POWER началась.
IBM предложила Apple сотрудничество в разработке семейства одночиповых процессоров, основанных на архитектуре POWER. Вскоре после этого Apple, как один из крупнейших заказчиков микропроцессоров класса настольных систем Motorola, попросила Motorola присоединиться к этому сотрудничеству, так как Apple считала, что Motorola, с её длинной историей работы с Apple, будет способна производить большие количества микропроцессоров, чем IBM. Этот тройственный союз стал известен как AIM, по первым буквам Apple, IBM, Motorola.
Для Motorola вступление в этот союз было чрезвычайно выгодным. Это позволяло им продавать хорошо протестированный и мощный RISC-процессор, не тратя денег на его разработку. У них также был крупный покупатель этих процессоров — Apple, и ещё один — потенциальный — в лице IBM, которая могла бы не производить свои младшие версии POWER, а покупать их у Motorola.
У Motorola уже был собственный RISC-дизайн, 88000, продававшийся чрезвычайно плохо. Одной из причин его провала была плохая совместимость с предыдущей версией, популярной серией 68000, также использовавшейся в компьютерах Apple Macintosh. Основными же причинами были — задержка вывода на рынок из-за проблем с дизайном и изготовлением, из-за которой Motorola упустила возможность успешно конкурировать.
Тем не менее, производство 88000 уже началось, и Data General продавал компьютеры на основе 88k. У Apple уже был работающий прототип компьютера с 88k. Было решено сделать новый одночиповый POWER-процессор совместимым по шине с 88000, что позволило бы Apple и Motorola начать продавать машины намного быстрее, не занимаясь переделкой материнских плат.
В результате сочетания всех этих требований появилась спецификация Power PC (Performance Computing). В выигрыше были все:
IBM получила желанный одночиповый процессор, практически бесплатно
Apple получила один из самых мощных RISC-процессоров на рынке, а заодно бесплатную рекламу в виде имени IBM в публикациях
Motorola бесплатно получила современный чип RISC, помощь в дизайне которого оказывала ей IBM, и возможность продавать его множеству компаний — включая Apple и IBM
Основы дизайна
PowerPC сконструированы в соответствии с принципами RISC, в рамках концепции возможна суперскалярная реализация. Существуют версии дизайна как для 32-х, так и для 64-хразрядных вариантов. Помимо базовых спецификаций POWER, PowerPC обладает:
Возможностью работы в двух (big-endian и little-endian) режимах; PowerPC может переключаться между режимами во время вычислений. Этой возможности нет в PowerPC G5.
Однопроходными формами некоторых инструкций для вычислений с плавающей точкой, в добавление к двухпроходным.
Дополнительными инструкциями для вычислений с плавающей точкой, введённые по настоянию Apple
Обратной совместимостью с 32-разрядным режимом в 64-разрядных версиях.
Отсутствием некоторых особо специфических команд POWER, некоторые из которых могут эмулироваться операционной системой, если понадобятся.
Процессоры PowerPC общего назначения
В процессорах PowerPC внутренняя шина выведена на поверхность чипа, и соединена с мостом, который транслирует команды на другие шины, соединяющиеся с оперативной памятью, шиной PCI и так далее.