Реверс-инжиниринг звукового усилителя популярной портативной консоли — обсуждаем основные находки

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.
В начале мая на Hacker News опубликовали материал, автор которого провел reverse engineering усилителя звука, установленного в Nintendo Game Boy Color. Обсудим главное.

Ранее мы рассказывали о Sound Blaster 1.0 и карте для IBM PC — Innovation SSI-2001.


Фото Elias Castillo / Unsplash

Game Boy Color выпустили в 1998-м, и приставка быстро стала популярной. Для нее выпустили несколько сотен игр разных жанров. Были и хорроры — например, Alone in the Dark.

Погрузиться в атмосферу игр позволяла поддержка стереонаушников и встроенный монодинамик. За их работу отвечал микрочип с тремя усилителями. Программист и поклонник олдскульной техники Кен Ширифф (Ken Shirriff) провел обратную разработку чипа и составил его схему. Для этого инженер использовал фото кристалла, на которой заметны несколько необычных технических решений.

Структура чипа


В целом интегральную схему устройства можно разбить на пять компонентов. Прямо посередине расположен усилитель для динамика, а слева от него — крупные выходные транзисторы. Они повышают мощность частотных колебаний до рабочих значений динамической головки. Также усилитель содержит дифференциальную пару, токовые зеркала и другие служебные ИС.



В правом верхнем и нижнем углах размещены усилители для наушников. Их выходные каскады состоят из десяти параллельно подключенных транзисторов. Системы делят между собой источники тока и токовые зеркала — эти компоненты установлены между усилителями. В нижней части чипа находится управляющая логика. Она переключает систему между усилителями для динамика и наушников.

Особенности транзисторов


В своем Twitter Кен Ширифф отметил, что звуковой усилитель Game Boy содержит примерно сто NPN- и PNP-транзисторов. Они состоят из трех полупроводниковых слоев с чередующимся типом проводимости: эмиттера, базы и коллектора и управляются током. Использование этих транзисторов нетипично для цифровой схемотехники, где распространены МОП-транзисторы (металл-оксид-полупроводник) — в отличие от биполярных транзисторов, они управляются напряжением.

Один из резидентов Hacker News в тематическом треде рассказал, что если бы звуковой усилитель Game Boy разрабатывали в наше время, то его основу составила бы именно КМОП-структура.

В ретрочипе Nintendo на основе NPN- и PNP-транзисторов также построены несколько схем, которые могут показаться необычными для цифровой схемотехники. Но они вполне обыденны для аналоговых ИС. Одной из них являются токовые зеркала, которые играют роль стабилизаторов тока. Например, на схеме можно найти токовое зеркало, состоящее из шести PNP-транзисторов.

При этом самые крупные транзисторы на схеме — NPN-транзисторы. Они расположились в левом верхнем углу ИС и играют роль выходных каскадов для динамика.

Резисторы и конденсаторы


Резисторы на схеме представляют собой длинные зигзагообразные полосы, выполненные из полупроводника p-типа (кремния). Такой подход позволил инженерам сэкономить место на кристалле.

Также на чипе размещены три крупных конденсатора — по одному для каждого усилителя. Они выглядят как «бутерброд» из металла, кремния и изолирующей оксидной пленки и играют роль стабилизаторов для усилителей.

Другие проекты энтузиастов Game Boy


В прошлом году французский инженер провел обратную разработку SoC для Game Boy. Он составил схемы APU, PPU, а также I/O-систем, и опубликовал их на GitHub. В сумме на поиск всех соединений и составление чертежей он потратил 191 час.


Фото Hello I'm Nik / Unsplash

Энтузиасты не только проводят reverse engineering олдскульных игровых приставок, но и разрабатывают их эмуляторы. На GitHub можно найти Mooneye GB на Rust. Эмулятор поддерживает как оригинальную приставку Nintendo, так и более поздние версии консоли — например, Game Boy Player, выпущенную в начале нулевых.

Еще один проект из этой же серии — Cinoop. Это — открытый мультиплатформенный эмулятор (работает на Windows, DS, GameCube, 3DS, Linux, PSP и PS4), написанный на языке Си. Пример работы можно посмотреть на YouTube — автор играет в Тетрис.



Дополнительное чтение в «Мире Hi-Fi»:

«Ритм-игры, которые стоит знать»: какие проекты поставили на звук и сделали его частью жанра
Создатели музыки к компьютерным играм: несколько выдающихся имён
Где брать аудио для разработки игр? Библиотеки со звуками природы
В чем особенности и задачи звукового сопровождения игр



У нас на Хабре: странные аудиогаджеты, звуки, которых нам не хватает, и как отвлечься от кризиса.


Источник: https://habr.com/ru/company/audiomania/blog/502350/


Интересные статьи

Интересные статьи

На протяжении последних 40 лет Nintendo активно экспериментирует в сфере мобильного гейминга, пробуя разнообразные концепции и порождая новые тренды, которые вслед за ней подхватыва...
Тем, кто любит гикпорн-фотографии от BarsMonster и его товарищей по цеху, наверняка интересно научиться расшифровывать логическую схему по её фотографии. Например, что делает вот этот...
BattlEye — это преимущетвенно немецкий сторонний античит, в основном разрабатываемый 32-летним Бастианом Хейко Сутером. Он предоставляет (или пытается предоставить) издателям игр простую в прим...
В прошлый раз мы рассказывали о картах, на которые нанесена разного рода аудиоинформация. Продолжаем тему музыкальных находок и говорим о сервисах, в которых можно «залипнуть». ...
Если Вы используете в своих проектах инфоблоки 2.0 и таблицы InnoDB, то есть шанс в один прекрасный момент столкнуться с ошибкой MySQL «SQL Error (1118): Row size too large. The maximum row si...