Rétro-ingénierie de l'amplificateur de son d'une console portable populaire - discussion des principales conclusions

Début mai, du matériel a été publié sur Hacker News, dont l'auteur a procédé à une ingénierie inverse de l' amplificateur de son installé dans la Nintendo Game Boy Color. Nous allons discuter de l'essentiel.

Plus tôt, nous avons parlé de Sound Blaster 1.0 et de la carte pour IBM PC - Innovation SSI-2001 .


Photo Elias Castillo / Unsplash

Game Boy Color est sorti en 1998 et la console est rapidement devenue populaire. Pour elle, plusieurs centaines de jeux de genres différents sont sortis. Il y avait de l'horreur - par exemple,Seul dans le noir.

L'immersion dans l'atmosphère des jeux a permis la prise en charge d'un casque stéréo et d'un haut-parleur mono intégré. Une micropuce avec trois amplificateurs était responsable de leur travail. Programmeur fan de la vieille école et de l'art, Ken Shiriff (Ken Shirriff) aprocédé àl'ingénierie inverse de la puce et l'a créée. Pour cela, l'ingénieur a utilisé unephoto du cristal, sur laquelle plusieurs solutions techniques inhabituelles sont perceptibles.

Structure de puce


En général, le circuit intégré de l'appareil peut être divisé en cinq composants. Au milieu se trouve l'amplificateur pour le haut-parleur, et à gauche de celui-ci se trouvent de grands transistors de sortie. Ils augmentent la puissance des oscillations de fréquence aux valeurs de fonctionnement de la tête dynamique. L'amplificateur contient également une paire différentielle, des miroirs de courant et d'autres circuits intégrés de service.



Les amplificateurs pour casque sont situés dans les coins supérieur droit et inférieur. Leurs étages de sortie sont constitués de dix transistors connectés en parallèle. Les systèmes partagent les sources de courant et les miroirs de courant - ces composants sont installés entre les amplificateurs. Au bas de la puce se trouve la logique de contrôle. Elle fait basculer le système entre les amplificateurs pour le haut-parleur et les écouteurs.

Caractéristiques du transistor


Ken Shiriff a noté sur son Twitter que l'amplificateur audio du Game Boy contient environ une centaine de transistors NPN et PNP. Ils sont constitués de trois couches semi-conductrices à conductivité alternée: émetteur, base et collecteur et sont contrôlés par le courant. L'utilisation de ces transistors n'est pas typique des circuits numériques, où les transistors MOS (métal-oxyde-semi-conducteur) sont courants - contrairement aux transistors bipolaires, ils sont commandés en tension.

L'un des résidents de Hacker News dans le fil thématique a déclaré que si l'amplificateur sonore Game Boy était développé à notre époque, ce serait la structure CMOS qui serait sa base.

Le retrochip Nintendo, basé sur des transistors NPN et PNP, a également construit plusieurs circuits qui peuvent sembler inhabituels pour les circuits numériques. Mais ils sont assez courants pour les circuits intégrés analogiques. L'un d'eux est les miroirs actuels, qui jouent le rôle de stabilisateurs actuels. Par exemple, dans le diagramme, vous pouvez trouver un miroir de courant, composé de six transistors PNP.

Les plus gros transistors du circuit sont des transistors NPN. Ils sont situés dans le coin supérieur gauche de l'IP et jouent le rôle d'étages de sortie pour le haut-parleur.

Résistances et condensateurs


Les résistances du diagramme sont de longues bandes en zigzag constituées d' un semi-conducteur de type p (silicium). Cette approche a permis aux ingénieurs d'économiser de l'espace sur la puce.

Également sur la puce, trois grands condensateurs - un pour chaque amplificateur. Ils ressemblent à un "sandwich" de métal, de silicium et d'un film d'oxyde isolant et jouent le rôle de stabilisateurs pour les amplificateurs.

Autres projets Game Boy Enthusiast


L'année dernière, un ingénieur français a procédé à une ingénierie inverse du SoC pour la Game Boy. Il a élaboré des systèmes APU , PPU et d'E / S et les a publiés sur GitHub . Au total, il a passé 191 heures à rechercher tous les composés et à rédiger les dessins.


Photo Bonjour, je suis Nik / Unsplash

Enthusiasts non seulement procède à l'ingénierie inverse des consoles de jeux à l'ancienne, mais développe également leurs émulateurs. Sur GitHub, vous pouvez trouver Mooneye GB sur Rust. L'émulateur prend en charge à la fois la console Nintendo d'origine et les versions ultérieures de la console - par exemple, Game Boy Player, sorti au début des années 2000.

Un autre projet de la même série est Cinoop . Il -émulateur multi-plateforme ouvert (fonctionne sur Windows, DS, GameCube, 3DS, Linux, PSP et PS4), écrit en langage C. Un exemple de l'œuvre peut être visionné sur YouTube - l'auteur joue dans Tetris .



Lecture supplémentaire dans « Salut-Fi World »:

« jeux de rythme qu'il faut savoir »: quels projets mis sur le son et fait partie du genre
créateurs de musique pour les jeux informatiques: plusieurs grands noms
Où puis - je obtenir audio pour le développement du jeu? Bibliothèques aux sons de la nature
Quelles sont les caractéristiques et les tâches de l'accompagnement sonore des jeux



On a sur Habré: d' étranges gadgets audio, des sons qui nous manquent, et comment sortir de la crise .



All Articles