Семейство PowerPC 600 было первым семейством процессоров PowerPC , созданным. Они были разработаны на заводе Somerset в Остине, штат Техас , совместно финансировались и были укомплектованы инженерами IBM и Motorola в рамках альянса AIM . Somerset был открыт в 1992 году, и его целью было создание первого процессора PowerPC, а затем продолжение разработки процессоров PowerPC общего назначения для персональных компьютеров . Первым воплощением стал PowerPC 601 в 1993 году, а вскоре последовало второе поколение с PowerPC 603, PowerPC 604 и 64-битным PowerPC 620.
PowerPC 601 был первым поколением микропроцессоров, поддерживающих базовый 32-битный набор инструкций PowerPC . Проектирование началось всерьез в середине 1991 года, и первые прототипы чипов были доступны в октябре 1992 года. Первые процессоры 601 были представлены в рабочей станции IBM RS/6000 в октябре 1993 года (вместе с более мощным многочиповым кузеном линейкой процессоров IBM POWER2 ) и первыми компьютерами Apple Power Macintosh 14 марта 1994 года. 601 был первой усовершенствованной одночиповой реализацией архитектуры POWER/PowerPC, разработанной по ускоренному графику для утверждения PowerPC на рынке и укрепления альянса AIM. Для того чтобы достичь чрезвычайно агрессивного графика, в то же время включив существенно новые функциональные возможности (такие как существенное повышение производительности, новые инструкции и, что немаловажно, первую реализацию симметричной многопроцессорной обработки (SMP) в POWER/PowerPC), проект использовал ряд ключевых технологий и стратегий управления проектами. Команда 601 использовала большую часть базовой структуры и частей процессора IBM RISC Single Chip (RSC) [1] , но также включила поддержку подавляющего большинства новых инструкций PowerPC, отсутствующих в наборе инструкций POWER . Хотя почти каждая часть конструкции RSC была изменена, и многие блоки конструкции были существенно изменены или полностью переработаны с учетом совершенно другой унифицированной структуры шины ввода-вывода и поддержки когерентности SMP/памяти . Новые изменения PowerPC, использование базовой структуры RSC было очень полезно для снижения неопределенности в области кристалла/планировке этажей и анализе/настройке синхронизации. Стоит отметить, что 601 не только реализовал существенные новые ключевые функции, такие как SMP, но и выступил в качестве моста между POWER и будущими процессорами PowerPC, чтобы помочь IBM и разработчикам программного обеспечения в их переходе на PowerPC. От начала проектирования до выпуска первого прототипа 601 прошло всего 12 месяцев, чтобы приложить все усилия для скорейшего вывода PowerPC на рынок.
Чтобы помочь усилиям по быстрому внедрению архитектуры шины 88110 в 601 для выгоды альянса и его клиентов, руководство Motorola предоставило не только спецификации архитектуры шины 88110, но и несколько проектировщиков, разбирающихся в шине 88110, для помощи в реализации и проверке логики шины 60x. Учитывая, что команда разработчиков систем Apple была знакома со структурой шины ввода-вывода из Motorola 88110, а реализация этой шины ввода-вывода была хорошо определена и задокументирована, команда 601 приняла технологию шины для сокращения времени выхода на рынок. Шина была переименована в шину 60x после реализации на 601. [2] Эти проектировщики Motorola (и небольшое количество Apple) присоединились к более чем 120 проектировщикам IBM в создании 601.
Использование шины 88110 в качестве основы для шины 60x помогло спланировать графики несколькими способами. Это помогло команде Apple Power Macintosh, сократив объем перепроектирования их вспомогательных ASIC , и сократило время, необходимое проектировщикам и архитекторам процессоров для предложения, документирования, согласования и закрытия нового интерфейса шины (успешно избежав «войн шин», ожидаемых командой управления 601, если бы шина 88110 или предыдущие шины RSC не были приняты). Стоит отметить, что принятие шины 88110 в интересах усилий Apple и альянса было за счет усилий первой группы разработчиков системы IBM RS/6000, у которых уже были реализованы их вспомогательные ASIC вокруг совершенно другой структуры шины RSC.
Эта шина 60x впоследствии стала довольно долговечным базовым интерфейсом для многочисленных вариантов процессоров 601, 603, 604, G3 , G4 и Motorola/Freescale PowerQUICC .
Чип был разработан для широкого спектра приложений и имел поддержку внешнего кэша L2 и симметричной многопроцессорной обработки . Он имел четыре функциональных блока, включая блок с плавающей точкой , целочисленный блок , блок ветвления и блок секвенсора. Процессор также включал блок управления памятью . Целочисленный конвейер имел длину в четыре этапа, конвейер ветвления — в два этапа, конвейер памяти — в пять этапов, а конвейер с плавающей точкой — в шесть этапов.
Впервые представленный в системах IBM осенью 1993 года, он был представлен IBM как PPC601, а Motorola как MPC601. Он работал на частотах от 50 до 80 МГц. Он был изготовлен с использованием 0,6 мкм КМОП- процесса с четырьмя уровнями алюминиевых межсоединений . Кристалл имел размер 121 мм2 и содержал 2,8 миллиона транзисторов. 601 имел 32 КБ унифицированного кэша L1 , емкость, которая в то время считалась большой для кэша на кристалле. Частично благодаря большому кэшу он считался высокопроизводительным процессором в своем сегменте, превосходя конкурирующий Intel Pentium . PowerPC 601 использовался в первых компьютерах Power Macintosh от Apple , а также в различных рабочих станциях RS/6000 и серверах SMP от IBM и Groupe Bull .
IBM была единственным производителем микропроцессоров 601 и 601+ на своих производственных предприятиях в Берлингтоне, штат Вермонт , и Ист-Фишкилле, штат Нью-Йорк . 601 использовал процесс IBM CMOS-4s, а 601+ использовал процесс IBM CMOS-5x. Чрезвычайно небольшое количество этих процессоров 601 и 601+ были перемаркированы логотипами и номерами деталей Motorola и распространены через Motorola. Эти факты несколько затуманены, учитывая, что существуют различные фотографии "Motorola MPC601", в частности, один конкретный случай мастерского маркетинга Motorola, когда 601 был назван одним из "Продуктов года" журнала Time Magazine 1994 года с маркировкой Motorola.
Обновленная версия, PowerPC 601v или PowerPC 601+ , работающая на частоте от 90 до 120 МГц, была представлена в 1994 году. Она была изготовлена по новому 0,5 мкм КМОП-процессу с четырьмя уровнями межсоединений, в результате чего размер кристалла составил 74 мм 2 . Дизайн 601+ был перенесен с CMOS-4s на CMOS-5x командой, состоящей только из IBM. Чтобы избежать задержек во времени выхода на рынок из-за изменений в инструментах проектирования и унификации основных правил производства, как 601, так и 601+ были разработаны с помощью инструментов IBM EDA на системах IBM и были изготовлены на предприятиях, принадлежащих только IBM. [3] [4] [5] [6]
PowerPC 603 был первым процессором, реализующим полную 32-битную архитектуру PowerPC , как указано. Представленный в 1994 году, он был передовой конструкцией для своего времени, будучи одним из первых микропроцессоров, предлагающих двойную выдачу (до трех с разверткой ветвей) и внеочередное выполнение в сочетании с низким энергопотреблением 2,2 Вт и небольшим кристаллом 85 мм2 . [7] [8] [9] [10] Он был разработан как недорогой, маломощный процессор для портативных приложений. Одной из главных особенностей были функции энергосбережения (режим дремоты, сон и сон), которые могли значительно снизить требования к питанию, потребляя всего 2 мВт в спящем режиме. 603 имеет четырехступенчатый конвейер и пять исполнительных блоков: целочисленный блок, блок с плавающей точкой, блок предсказания ветвлений , блок загрузки/сохранения и блок системного реестра. Он имеет отдельные 8 КБ кэшей L1 для инструкций и данных, а также 32/64-битную 60-кратную шину памяти, достигающую 120 МГц при 3,8 В. [10] Ядро 603 не имело аппаратной поддержки SMP .
PowerPC 603 имел 1,6 миллиона транзисторов и был изготовлен IBM и Motorola по 0,5 мкм CMOS-технологии с четырьмя уровнями межсоединений. Кристалл был большой 85 мм 2 , потреблял 2,2 Вт на частоте 80 МГц. [10] [11] Архитектура 603 является прямым предком архитектуры PowerPC 750 , продаваемой Apple как PowerPC "G3".
603 предназначался для использования в портативных компьютерах Apple Macintosh, но не мог запускать программное обеспечение эмуляции 68K с производительностью, которую Apple считала адекватной, из-за меньшего кэша процессора. В результате Apple решила использовать 603 только в своей недорогой настольной линейке Performa. [12] [13] Это вызвало задержку Apple PowerBook 5300 и PowerBook Duo 2300 , поскольку Apple решила дождаться обновления процессора. Использование Apple 603 в линейке Performa 5200 привело к тому, что процессор получил плохую репутацию. Помимо проблемы с производительностью эмуляции 68K, машины Performa поставлялись с различными недостатками дизайна, некоторые из которых были серьезными, связанными с другими аспектами дизайна компьютеров, включая производительность и стабильность сети, проблемы с шиной (ширина, скорость, конкуренция и сложность), ошибки ПЗУ и производительность жесткого диска. [14] [15] Ни одна из проблем линейки 5200, за исключением производительности эмуляции 68K, не была изначально связана с 603. Скорее, процессор был модернизирован для использования с материнскими платами 68K и другими устаревшими деталями. [16] Сайт Low End Mac оценивает Performa 5200 как худший Mac всех времен. [17] 603 нашел широкое применение в различных встраиваемых устройствах. [ необходима цитата ]
Проблемы производительности 603 были решены в PowerPC 603e . Кэш L1 был увеличен и улучшен до 16 КБ четырехканальных наборно-ассоциативных кэшей данных и инструкций. Тактовая частота процессоров также была удвоена, достигнув 200 МГц. Уменьшение процесса изготовления до 350 нм позволило увеличить скорость до 300 МГц. Эту часть иногда называют PowerPC 603ev . 603e и 603ev имеют 2,6 миллиона транзисторов каждый и имеют размер 98 мм 2 и 78 мм 2 соответственно. 603ev потребляет максимум 6 Вт на частоте 300 МГц. [18] [19]
PowerPC 603e был первым массовым процессором для настольных ПК, достигшим 300 МГц, который использовался в Power Macintosh 6500. 603e также использовался в ускорительных картах от Phase5 для линейки компьютеров Amiga с процессорами со скоростями от 160 до 240 МГц. PowerPC 603e по сей день продается IBM и Freescale, а также другими компаниями, такими как Atmel и Honeywell , которые производят радиационно-стойкий вариант RHPPC . PowerPC 603e также был сердцем BeBox от Be Inc. BeBox примечателен тем, что является многопроцессорной системой, для чего 603 не был предназначен. IBM также использовала процессоры PowerPC 603e в серии IBM ThinkPad 800. В некоторых сериях цифровых осциллографов LeCroy использовал PowerPC 603e в качестве основного процессора. [20] [21] Процессоры 603e также питают все 66 спутников в телефонном флоте Iridium . Каждый спутник содержит семь процессоров Motorola/Freescale PowerPC 603e, работающих примерно на 200 МГц каждый. Специальный процессор 603e также используется в Mark 54 Lightweight Torpedo .
Ядро PowerPC 603e, переименованное Freescale в G2 , является основой для многих встраиваемых процессоров PowerQUICC II , и, как таковое, оно продолжает развиваться. Процессоры PowerQUICC II SoC от Freescale имеют обозначение MPC82xx и поставляются в различных конфигурациях, достигающих 450 МГц. Название G2 также используется в качестве ретронима для процессоров 603e и 604 для приведения в соответствие с G3, G4 и G5.
Freescale усовершенствовала ядро 603e, назвав его e300 , во встраиваемых процессорах PowerQUICC II Pro . Были добавлены более крупные кэши L1 объемом 32/32 КБ и другие меры по повышению производительности. Процессоры Freescale PowerQUICC II Pro SoC имеют обозначение MPC83xx и поставляются в различных конфигурациях, достигающих скорости до 667 МГц. E300 также является ядром процессора MPC5200B SoC, который используется в небольшом компьютере EFIKA .
PowerPC 604 был представлен в декабре 1994 года вместе с 603 и был разработан как высокопроизводительный чип для рабочих станций и серверов начального уровня и, как таковой, имел поддержку симметричной многопроцессорной обработки на аппаратном уровне. 604 широко использовался в высокопроизводительных системах Apple, а также в клонах Macintosh , низкопроизводительных серверах и рабочих станциях RS/6000 IBM , платах ускорителей Amiga и в качестве встроенного ЦП для телекоммуникационных приложений.
604 — это суперскалярный процессор, способный выдавать четыре инструкции одновременно. 604 имеет шестиступенчатый конвейер и шесть исполнительных блоков, которые могут работать параллельно, завершая до шести инструкций за один цикл. Два простых и один сложный целочисленный блок , один блок с плавающей точкой , один блок обработки ветвлений, управляющий внеочередным выполнением , и один блок загрузки/сохранения. Он имеет отдельные кэши данных и инструкций L1 объемом 16 КБ. Внешний интерфейс — это 32- или 64-битная шина 60x, работающая на тактовой частоте до 50 МГц.
PowerPC 604 содержит 3,6 миллиона транзисторов и был изготовлен IBM и Motorola с использованием 0,5 мкм CMOS-процесса с четырьмя уровнями межсоединений. Кристалл имел размеры 12,4 мм на 15,8 мм (196 мм 2 ) и потреблял 14-17 Вт на частоте 133 МГц. Он работал на скоростях от 100 до 180 МГц. [22] [23] [24]
PowerPC 604e был представлен в июле 1996 года и добавил блок регистра условий и отдельные 32 КБ кэши данных и инструкций L1 среди других изменений в его подсистеме памяти и блоке предсказания ветвлений, что привело к увеличению производительности на 25% по сравнению с его предшественником. Он имел 5,1 миллиона транзисторов и был изготовлен IBM и Motorola по 0,35 мкм CMOS-технологии с пятью уровнями межсоединений. Кристалл был большой 148 мм 2 или 96 мм 2 , произведенный Motorola и IBM соответственно, потреблял 16–18 Вт на частоте 233 МГц. Он работал на скоростях от 166 до 233 МГц и поддерживал шину памяти до 66 МГц. [25] [26]
PowerPC 604ev , 604r или "Mach 5" был представлен в августе 1997 года и по сути был 604e, изготовленным IBM и Motorola с более новым процессом, достигающим более высоких скоростей при меньшем потреблении энергии. Кристалл был 47 мм 2 маленьким, изготовленным по 0,25 мкм CMOS-процессу с пятью уровнями межсоединений, и потреблял 6 Вт на частоте 250 МГц. Он работал на скоростях от 250 до 400 МГц и поддерживал шину памяти до 100 МГц.
Хотя Apple отказалась от процессора 604ev в 1998 году в пользу PowerPC 750 , IBM продолжала использовать его в моделях начального уровня своих компьютеров RS/6000 в течение нескольких лет.
PowerPC 620 был первой реализацией всей 64-битной архитектуры PowerPC. Это было второе поколение PowerPC наряду с 603 и 604, но ориентированное на рынок высокопроизводительных рабочих станций и серверов. Он был мощным на бумаге и изначально должен был быть запущен вместе со своими собратьями, но был отложен до 1997 года. Когда он появился, производительность была сравнительно низкой, и значительно более дешевый 604e превзошел его. [27] Поэтому 620 никогда не производился в больших количествах и нашел очень мало применения. Единственным пользователем PowerPC 620 была Groupe Bull в своих машинах Escala UNIX , но они не поставляли больших партий. IBM, которая намеревалась использовать его в рабочих станциях и серверах, решила вместо этого дождаться еще более мощных 64-битных процессоров RS64 и POWER3 .
620 производился компанией Motorola по 0,5 мкм техпроцессу. Он имел 6,9 миллионов транзисторов, а площадь кристалла составляла 311 мм 2 . Он работал на тактовых частотах от 120 до 150 МГц и потреблял 30 Вт на частоте 133 МГц. Более поздняя модель была построена с использованием 0,35 мкм техпроцесса, что позволило достичь 200 МГц. [ необходимо дополнительное объяснение ]
620 был похож на 604. Он имел пятиступенчатый конвейер, ту же поддержку симметричной многопроцессорной обработки и то же количество исполнительных блоков; блок загрузки/сохранения, блок ветвления, FPU и три целочисленных блока. С большими кэшами инструкций и данных на 32 КБ, поддержкой кэша L2, который может иметь емкость 128 МБ , и более мощными блоками ветвления и загрузки/сохранения, которые имели больше буферов, 620 был очень мощным. Таблица истории ветвлений также была больше и могла отправлять больше инструкций, так что процессор мог обрабатывать выполнение вне очереди более эффективно, чем 604. Блок с плавающей точкой также был улучшен по сравнению с 604. Благодаря более быстрому циклу выборки и поддержке нескольких ключевых инструкций на аппаратном уровне (например, sqrt) он, в сочетании с более быстрыми и широкими шинами данных, был более эффективным, чем FPU в 604. [ необходимо дополнительное объяснение ]
Системная шина представляла собой более широкую и быструю 128-битную шину памяти, называемую шиной 6XX . Она была разработана как системная шина для многопроцессорных систем, в которых процессоры, кэши, память и ввод-вывод должны были быть соединены с помощью микросхемы управления системой. Она поддерживает как 32-, так и 64-битные процессоры PowerPC, адреса памяти больше 32 бит и среды NUMA . Она также использовалась в системах POWER3, RS64 и 601, а также в системах RS/6000 на базе 604 (с мостовой микросхемой). [28] Позже шина превратилась в шину GX в POWER4 , а затем в GX+ и GX++ в POWER5 и POWER6 соответственно. Шина GX также используется в мэйнфреймах IBM z10 и z196 System z .
PowerPC 602 был урезанной версией PowerPC 603, специально созданной для игровых консолей Motorola и IBM, представленной в феврале 1995 года. [29] Он имел меньшие кэши L1 (4 КБ инструкций и 4 КБ данных), блок с плавающей точкой одинарной точности [29] и уменьшенное устройство предсказания ветвлений. Он предлагался на скоростях от 50 до 80 МГц и потреблял 1,2 Вт на частоте 66 МГц. Он состоял из 1 миллиона транзисторов и имел размер 50 мм 2 , изготовленный по 0,5 мкм КМОП-технологии с четырьмя уровнями межсоединений. [30]
Компания 3DO разработала игровую консоль M2 , которая использовала два процессора PowerPC 602, [29] [31], но она так и не была выпущена на рынок.
21 октября 1996 года компания Quantum Effect Devices (QED), занимающаяся производством полупроводников без собственных производственных мощностей, анонсировала на Microprocessor Forum процессор, совместимый с PowerPC 603, под названием « PowerPC 603q » . Несмотря на свое название, он не имел ничего общего ни с одним другим 603. Это была реализация с нуля 32-битной архитектуры PowerPC, нацеленной на рынок высокопроизводительных встраиваемых систем, которая разрабатывалась в течение двух лет. Таким образом, он был небольшим, простым, энергоэффективным, но мощным; равным более дорогому 603e, потребляя при этом меньше энергии. Он имел последовательный пятиступенчатый конвейер с одним целочисленным блоком, блоком с плавающей точкой двойной точности (FPU) и отдельными кэшами инструкций объемом 16 КБ и данных объемом 8 КБ. В то время как целочисленный блок был совершенно новой разработкой, FPU был получен из R4600 для экономии времени. Он имел размер 69 мм 2 , был изготовлен с использованием технологического процесса 0,5 мкм и потреблял всего 1,2 Вт на частоте 120 МГц. [32] [33]
603q был разработан для Motorola, но они отказались от контракта до того, как 603q был запущен в серийное производство. В результате 603q был отменен, поскольку QED не могла продолжать продавать процессор, поскольку у них не было собственной лицензии PowerPC.
"PowerPC 613" , похоже, — это название, которое Motorola дала третьему поколению PowerPC. [34] [35] [36] Предположительно, его переименовали в " PowerPC 750 " в ответ на процессор x704 компании Exponential Technology , который был разработан, чтобы значительно превзойти 604. Однако едва ли есть какие-либо источники, подтверждающие что-либо из этого, и это может быть чистой воды спекуляцией или ссылкой на совершенно другой процессор.
Подобно PowerPC 613, "PowerPC 614" могло быть названием, данным Motorola третьему поколению PowerPC, [34] [36] и позже переименованным по той же причине, что и 613. Было высказано предположение, что часть была переименована в " PowerPC 7400 ", и Motorola даже перенесла его в четвертое поколение PowerPC, хотя архитектурные различия между "G3" и "G4" были небольшими. Однако едва ли есть какие-либо источники, подтверждающие что-либо из этого, и это может быть чистой спекуляцией или ссылкой на совершенно другой процессор.
« PowerPC 615 » — процессор PowerPC, анонсированный IBM в 1994 году, но так и не поступивший в массовое производство . Его главной особенностью было включение ядра x86 на кристалл, что позволяло процессору изначально обрабатывать как PowerPC, так и x86 инструкции. [37] Операционная система, работающая на PowerPC 615, могла либо выбрать выполнение 32-битных или 64-битных инструкций PowerPC, 32-битных инструкций x86 или смеси трех. Смешивание инструкций включало бы переключение контекста в ЦП с небольшими накладными расходами. Единственными операционными системами, которые поддерживали 615, были Minix и специальная версия разработки OS/2 . [38]
Он был размером 330 мм 2 и производился IBM по 0,35 мкм процессу. Он был совместим по выводам с процессорами Intel Pentium и сопоставим по скорости. Процессор был представлен только как прототип, и программа была убита отчасти тем фактом, что Microsoft никогда не поддерживала процессор. Инженеры, работавшие над PowerPC 615, позже нашли свой путь в Transmeta , где они работали над процессором Crusoe . С прогрессом, продемонстрированным в разработке динамического программного обеспечения для трансляции, такого как технология FX!32 от Digital , был выражен скептицизм относительно выделения аппаратных ресурсов для запуска иностранных двоичных файлов, когда такие ресурсы могли бы использоваться для улучшения собственной производительности, что также принесло бы пользу производительности транслируемых двоичных файлов. [39] : 94
«PowerPC 625» было ранним названием 64-битных процессоров PowerPC серии Apache, разработанных IBM на основе набора инструкций «Amazon» PowerPC-AS. Позднее они были переименованы в « RS64 ». Обозначение «PowerPC 625» никогда не использовалось для конечных процессоров.
«PowerPC 630» было ранним названием 64-битного процессора PowerPC высокого класса, разработанного IBM для объединения наборов инструкций POWER и PowerPC . Позднее он был переименован в « POWER3 », вероятно, чтобы отличать его от более ориентированных на потребителя процессоров «PowerPC», используемых Apple .
"PowerPC 641" , кодовое имя Habanero , — несуществующий проект PowerPC от IBM в 1994–96 годах. Было высказано предположение, что это было третье поколение PowerPC на базе процессора 604. [40] [41]
Крошечные 8-килобайтные кэши 603 были печально известны своей неэффективностью для программного обеспечения Mac OS, особенно для эмуляции 68K; даже кэши 603e вызывают значительное падение производительности на более высоких тактовых частотах. Учитывая целевую частоту Артура в 250 МГц и выше, удвоение кэшей снова имело смысл.