Для начала напомним, что «обратный инжиниринг», «обратная разработка» или реверс-инжиниринг – это (определение с Википедии) – «исследование некоторого устройства, а также документации на него с целью понять принцип его работы и, чаще всего, воспроизвести устройство, программу или иной объект с аналогичными функциями, но без копирования как такового. Применяется обычно в том случае, если создатель оригинального объекта не предоставил информации о структуре и способе производства объекта. Использование обратной разработки может противоречить закону об авторском праве и патентному законодательству».

На российском форуме Emu-Russia.net началась коллективная обратная разработка процессора PlayStation (того самого «первого» плейстейшна), совершенно уникальный эксперимент, который никто в мире до этого не делал – возможно, по причинам, описанным в последнем предложении определения.

Команда из нескольких энтузиастов получила четкие снимки первого слоя металлизации процессора, сделанные микроскопом, и занялась трассировкой его логических схем. Площадь чипа с 250 тысячами транзисторов разбили на 19 блоков и распределили их между членами команды, занимающимися их векторизацией.

По результатам работы можно будет «легко всё переписать на Verilog, а имея исходники на нем — вероятность составить VLSI из всех чипов равна 100%». Однако производство копии процессора PlayStation, естественно, никто заниматься не будет. Цель несколько иная – полностью восстановить электрическую схему и написали визуальный эмулятор процессора на JavaScript.

Результаты частичной векторизации части первого слоя металлизации процессора

Работа представляет собой не только большую академическую ценность, но и позволит создать самый точный эмулятор PlayStation из существующих. Кто знает, может следующим чипом, который будет подвергнут обратному инжинирингу, станет процессор какой-нибудь консоли Panasonic 3DO, к которой вообще нет адекватных эмуляторов.

Параллельно работе над процессором PS, кстати, ведется работа по восстановлению электрической схемы процессора от приставки «Денди». Посмотреть на результаты можно на том же emu-russia.net.

Технические характеристики процессора Playstation:

  • MIPS R3000A-совместимый R3051, 32-разрядный RISC-микропроцессор
  • Рабочая тактовая частота — 33,88 МГц.
  • Производитель: LSI Logic Corp., технология производства лицензирована у SGI
  • Производительность — 30 MIPS
  • Пропускная способность шины — 132 Мбит/с
  • Кэш инструкций — 4 КБ
  • Кэш: 1 КБ SRAM

Напомним, что обратный инжиниринг был очень популярен в Советском Союзе, лихо копировавшем большое количество западных чипсетов и микропроцессоров вроде Z80А от Zilog и i8080, 86, 88, 286 от Intel или даже 32-битных RISC-чипов. 

Да и на западе были свои умельцы, хорошо разбирающиеся в вопросе: процессоры Super386 38600SX и 38600DX производства компании Chips and Technologies, например, также были созданы методом реверс-инжиниринга.