Из Википедии, бесплатной энциклопедии
Перейти к навигации Перейти к поиску
Процессор Sony Emotion Engine

Emotion Engine представляет собой центральный блок обработки данных, разработанный и изготовленный Sony Computer Entertainment и Toshiba для использования в PlayStation 2 консоли видеоигр . Он также использовался в ранних моделях PlayStation 3, продаваемых в Японии и Северной Америке (номера моделей CECHAxx и CECHBxx) для обеспечения поддержки игр PlayStation 2. Массовое производство Emotion Engine началось в 1999 году и закончилось в конце 2012 года с прекращением производства PlayStation 2. [1]

Описание [ править ]

Emotion Engine на материнской плате PS2
Архитектура PlayStation 2

Emotion Engine состоит из восьми отдельных «блоков», каждый из которых выполняет определенную задачу, встроенных в одну матрицу . Этими блоками являются: ядро ​​ЦП, два блока векторной обработки (VPU), 10-канальный блок DMA , контроллер памяти и блок обработки изображений (IPU). Существует три интерфейса: интерфейс ввода-вывода для процессора ввода-вывода, графический интерфейс (GIF) для графического синтезатора и интерфейс памяти для системной памяти. [2]

Ядро ЦП тесно связано с первым VPU, VPU 0 . Вместе они отвечают за выполнение кода игры и высокоуровневые вычисления моделирования. Второй VPU, VPU 1 , предназначен для преобразования геометрии и освещения и работает независимо, параллельно ядру ЦП, управляемый микрокодом . VPU 0 , когда он не используется, также может использоваться для преобразования геометрии. Списки отображения, сгенерированные CPU / VPU0 и VPU1, отправляются в GIF, который определяет их приоритет перед отправкой в Graphics Synthesizer для рендеринга.

Ядро процессора [ править ]

Ядра процессора является двусторонний суперскалярным в заказе RISC - процессоре. [3] Основанный на MIPS R5900, он реализует архитектуру набора инструкций MIPS-III (ISA) и большую часть MIPS-IV, в дополнение к пользовательскому набору инструкций, разработанному Sony, который работает с 128-битными группами либо 32-разрядных, либо 32-разрядных. битовые, 16-битные или 8-битные целые числа в одной инструкции с несколькими данными(SIMD) (то есть четыре 32-битных целых числа могут быть добавлены к четырем другим с помощью одной инструкции). Определенные инструкции включают в себя: сложение, вычитание, умножение, деление, мин. / Макс., Сдвиг, логический, счетчик до нуля, 128-битная загрузка / сохранение и сдвиг воронки с 256-битного на 128-битное в дополнение к некоторым, не описанным Sony для конкурентные причины. Вопреки некоторым заблуждениям, эти возможности SIMD не означают, что процессор является «128-битным», поскольку ни адреса памяти, ни сами целые числа не были 128-битными, а были только общие регистры SIMD / целочисленные. Для сравнения, 128-битные регистры и инструкции SIMD присутствовали в 32-битной архитектуре x86 с 1999 года, с появлением SSE.. Однако внутренние тракты данных были шириной 128 бит, и его процессоры могли работать с количествами 4x32 бит параллельно в отдельных регистрах.

Процессор основан на MIPS с модифицированным набором команд. Его основное ядро ​​VU0 представляет собой суперскалярную упорядоченную двухэтапную структуру с 6-ступенчатыми целочисленными конвейерами и 15-ступенчатыми конвейерами с плавающей запятой. Его набор регистров состоит из 32 128-битных регистров VLIW SIMD (именование / переименование), одного 64-битного накопителя и двух 64-битных регистров общих данных, 8 16-битных регистров функции исправления, 16 8-битных регистров контроллера. Процессор также имеет два 64-битных целочисленных ALU, 128-битный блок загрузки-хранения (LSU), блок выполнения ветви (BXU) и 32-битный сопроцессор VU1 FPU (который действовал как контроллер синхронизации для VPU0 / VPU1), содержащий ядро базового процессора MIPS с 32 64-битными регистрами FP и 15 32-битными целочисленными регистрами. ALU 64-битные, с 32-битным FPU, не совместимым с IEEE 754.Пользовательский набор инструкций 107 MMI (Multimedia Extensions) был реализован путем группирования двух 64-битных целочисленных ALU. И целое число, и с плавающей запятойтрубопроводы состоят из шести ступеней.

Для подачи на исполнительные устройства инструкций и данных имеется двухсторонний ассоциативный кэш инструкций с набором 16 КБ, ассоциативный неблокирующий кэш данных с двусторонним набором 8 КБ [4] и оперативная оперативная память объемом 16 КБ . Кеши инструкций и данных виртуально индексируются и физически маркируются, в то время как оперативная память RAM существует в отдельном пространстве памяти. Комбинированный буфер на 48 команд с двойным вводом и резервный буфер преобразования данных предназначен для преобразования виртуальных адресов . Предсказание ветвления достигается с помощью кэша целевого адреса ветвления на 64 элемента и таблицы истории ветвлений.который интегрирован в кэш инструкций. Штраф за неправильное предсказание перехода составляет три цикла из-за короткого шестиступенчатого конвейера.

Блоки векторной обработки [ править ]

Большая часть производительности Emotion Engine с плавающей запятой обеспечивается двумя блоками векторной обработки (VPU), обозначенными как VPU0 и VPU1. По сути, это были DSP, предназначенные для трехмерной математики, и предшественники аппаратных конвейеров вершинных шейдеров . Каждый VPU имеет 32  128-битных векторных SIMD- регистра (для хранения векторных данных 4D), 16 16-битных регистров с фиксированной запятой, четыре блока умножения-накопления с плавающей запятой (FMAC), блок деления с плавающей запятой (FDIV) и локальную память данных. . Память данных для VPU0 имеет размер 4 КБ, в то время как VPU1 имеет память данных 16 КБ.

Для достижения высокой пропускной способности память данных VPU подключается непосредственно к GIF, и обе памяти данных могут быть прочитаны непосредственно блоком DMA . Одна векторная команда состоит из четырех 32-битных значений с плавающей запятой одинарной точности, которые распределяются по четырем модулям FMAC одинарной точности (32-битные) для обработки. Эта схема аналогична расширениям SSEx от Intel.

Модулям FMAC требуется четыре цикла для выполнения одной инструкции, но, поскольку модули имеют шестиступенчатый конвейер , их пропускная способность составляет одну команду за цикл. Блок FDIV имеет девятиступенчатый конвейер и может выполнять одну инструкцию каждые семь циклов.

Блок обработки изображений (IPU) [ править ]

IPU позволял декодировать сжатые изображения MPEG-2 , позволяя воспроизводить DVD и игры FMV . Это также позволило выполнить векторное квантование для данных 2D-графики. [5]

DMA, DRAM и блок управления памятью (MMU) [ править ]

Блок управления памятью, контроллер RDRAM и контроллер DMA обрабатывают доступ к памяти в системе. [5]

Внутренняя шина данных [ править ]

Связь между ядром MIPS, двумя VPU, GIF, контроллером памяти и другими модулями обрабатывается 128-битной внутренней шиной данных, работающей на половине тактовой частоты Emotion Engine, но для обеспечения большей пропускной способности также имеется 128-битная внутренняя шина данных, работающая на половине тактовой частоты Emotion Engine. -битовый выделенный путь между CPU и VPU0 и 128-битный выделенный путь между VPU1 и GIF. На частоте 150 МГц внутренняя шина данных обеспечивает максимальную теоретическую пропускную способность 2,4 ГБ / с.

Внешний интерфейс [ править ]

Связь между Emotion Engine и RAM осуществляется через два канала DRDRAM (Direct Rambus Dynamic Random Access Memory) и контроллер памяти , который взаимодействует с внутренней шиной данных. Каждый канал имеет ширину 16 бит и работает на частоте 400 МГц DDR (удвоенная скорость передачи данных). В совокупности два канала DRDRAM имеют максимальную теоретическую пропускную способность 25,6 Гбит / с (3,2 ГБ / с), что примерно на 33% больше, чем у внутренней шины данных. Из-за этого контроллер памяти буферизует данные, отправленные из каналов DRDRAM, чтобы ЦП мог использовать дополнительную полосу пропускания.

Emotion Engine взаимодействует напрямую с синтезатором графики через GIF с выделенной 64-битной шиной 150 МГц с максимальной теоретической пропускной способностью 1,2 ГБ / с. [6]

Для обеспечения связи между Emotion Engine и процессором ввода-вывода (IOP) интерфейс ввода-вывода соединяет 32-битную шину ввода-вывода с частотой 37,5 МГц с максимальной теоретической пропускной способностью 150 МБ / с с внутренней шиной данных. Интерфейс обеспечивает достаточную пропускную способность для разъема расширения PCMCIA, который использовался для сетевого адаптера со встроенным интерфейсом P-ATA для более быстрого доступа к данным и онлайн-функциональности. Преимущество высокой пропускной способности заключалось в том, что ее можно было легко использовать для внедрения аппаратных расширений, таких как сетевой адаптер со встроенной поддержкой жестких дисков IDE или других расширений для расширения функциональности и жизненного цикла продукта, что можно рассматривать как конкурентное преимущество. Однако в более новых вариантах (например, в тонкой версии) интерфейс будет предлагать гораздо большую пропускную способность, чем требуется для PlayStation ».s устройства ввода-вывода, поскольку поддержка жестких дисков была удалена, а от конструкции разъема PCMCIA отказались в пользу более тонкой конструкции.

Изготовление [ править ]

Emotion Engine содержал 13,5 миллионов металл-оксид-полупроводниковых (MOS) транзисторов [7] на кристалле интегральной схемы (IC) размером 240 мм 2 . [8] Он был изготовлен Sony и Toshiba с использованием комплементарного метода металл-оксид-полупроводник (КМОП) с четырьмя уровнями межсоединения 0,25 мкм ( 0,18 мкм эффективная L G ) .

Упаковка [ править ]

Emotion Engine был упакован в решетку из пластиковых шариков с 540 контактами (PBGA).

Использует [ редактировать ]

В основном Emotion Engine использовался в качестве центрального процессора PlayStation 2 . Первые версии PlayStation 3 также имели Emotion Engine на материнской плате для достижения обратной совместимости с играми для PlayStation 2. Однако во второй версии PlayStation 3 отсутствовал физический движок Emotion Engine для снижения затрат, поскольку он выполнял все свои функции с помощью программной эмуляции, выполняемой процессором Cell Broadband., в сочетании с аппаратным синтезатором графики, который все еще присутствует для достижения обратной совместимости с PlayStation 2. Во всех последующих редакциях был удален синтезатор графики; однако программный эмулятор PlayStation 2 доступен в более поздних версиях системного программного обеспечения для использования с играми Sony PS2 Classics, доступными для покупки в Sony Entertainment Network.

Технические характеристики [ править ]

  • Тактовая частота : 294  МГц , 299 МГц (более поздние версии)
  • Набор команд: MIPS III, подмножество MIPS IV, 107 векторных инструкций
  • 2 выпуска, 2 модуля с фиксированной запятой по 64 бита, 1 модуль с плавающей запятой, 6 этапов конвейера
  • Кэш инструкций : 16 КБ, 2-полосный ассоциативный набор
  • Кэш данных : 8 КБ, двухсторонний ассоциативный набор
  • Оперативная память блокнота : 16 КБ
  • Трансляция смотрит в сторону буфер : комбинированная инструкция / данные на 48 записей
  • Блок векторной обработки: 4 блока FMAC, 1 блок FDIV
  • Регистры блока векторной обработки : 128-битные, 32 записи
  • Блок обработки изображений: декодер уровня макроблоков MPEG2
  • Прямой доступ к памяти : 10 каналов
  • V DD Напряжение : 1,8 В
  • Потребляемая мощность : 15  Вт при 1,8 В
  • Встроенная память: 1  КБ RAM , 4  КБ FeRAM , 16  КБ ROM [9]

Теоретическая производительность [ править ]

  • Плавающая точка : 6,2 миллиарда операций с плавающей запятой одинарной точности (32-бит) в секунду
  • Перспективное преобразование : 66 миллионов полигонов в секунду
  • С освещением и туманом : 36 миллионов полигонов в секунду
  • Пятна поверхности Безье : 16 миллионов полигонов в секунду
  • Распаковка изображения: 150 миллионов пикселей в секунду

Ссылки [ править ]

  1. ^ Гилберт, Бен. «Sony подтверждает прекращение производства PlayStation 2 во всем мире» . Engadget . Проверено 23 июня 2013 года .
  2. Стоукс, Джон (16 февраля 2000 г.). «Звук и зрение: технический обзор движка эмоций» . Ars Technica . Архивировано 10 июня 2018 года . Дата обращения 9 июня 2015 .
  3. ^ Diefendorff, Keith (19 апреля 1999). «Эмоционально заряженный чип Sony» (PDF) . Отчет микропроцессора . Vol. 13 нет. 5. Архивировано (PDF) из оригинала 25 июля 2018 года . Проверено 1 сентября 2017 года .
  4. ^ Транзисторная память, такая как RAM, ROM, флэш-память и размеры кеша, а также размеры файлов указываются с использованием двоичных значений для K (1024 1 ), M (1024 2 ), G (1024 3 ), ...
  5. ^ a b Sporny, Многие; Карпер, Грей; Тернер, Джонатан (2002). «Справочник по комплекту Linux для Playstation 2» . Фонд свободного программного обеспечения . Архивировано из оригинального 18 -го сентября 2003 года . Проверено 10 июня 2015 года .
  6. ^ Diefendorff 1999, стр. 5
  7. ^ Хеннесси, Джон Л .; Паттерсон, Дэвид А. (29 мая 2002 г.). Компьютерная архитектура: количественный подход (3-е изд.). Морган Кауфманн. п. 491. ISBN. 978-0-08-050252-6. Проверено 9 апреля 2013 года .
  8. ^ Diefendorff, Keith (19 апреля 1999). "Эмоционально заряженный чип Sony: убийца с плавающей точкой" Emotion Engine "для PlayStation 2000". Отчет микропроцессора . 13 (5). S2CID 29649747 . 
  9. ^ Скотт, JF (2003). «Нано-сегнетоэлектрики» . В Цакалакос, Томас; Овидько, Илья А .; Васудеван, Асури К. (ред.). Наноструктуры: синтез, функциональные свойства и применение . Springer Science & Business Media . С. 583-600 (584-5, 597). ISBN 9789400710191.

См. Также [ править ]

  • Видеокарта
  • Блок обработки графики
  • Компьютерная графика
  • Список тем по компьютерной графике и начертательной геометрии
  • Микропроцессор Cell , дизайн которого вдохновлен компоновкой CPU + VU0 / VU1 Emotion Engines, используемой в PlayStation 3

Ссылки [ править ]

  • Хеннесси, Джон Л .; Паттерсон, Дэвид А. (29 мая 2002 г.). Компьютерная архитектура: количественный подход (3-е изд.). Морган Кауфманн. ISBN 978-0-08-050252-6. Проверено 9 апреля 2013 года .
  • Дифендорф, Кит (19 апреля 1999 г.). «Эмоционально заряженный чип Sony». Отчет микропроцессора . Ресурсы микродизайна. 13 (5).

Внешние ссылки [ править ]

  • PlayStation2 против ПК: сравнение двух 3D-платформ на системном уровне
  • Научные вычисления на Sony PlayStation 2
  • PlayStation превращает суперкомпьютер