# AY-3-8910

* Demo de PSG (no s'utilitza soroll)
El AY-3-8910 és un circuit integrat generador de sons que va ser àmpliament usat els anys 1980 en els microordinadors MSX i màquines recreatives, com consoles de jocs i pinballs. Aquest circuit integrat va ser fabricat per l'empresa General Instrument (GI). Actualment existeix una versió VHDL d'aquest integrat, denominat KC89C72 i usat en slot machines.

## Descripció

El 8910 és essencialment una màquina d'estat finit, amb l'estat carregat en una sèrie de 16 registres de 8 bits. Aquests són programats sobre un bus de 8 bits que s'utilitzen per a adreçament i dades a través dels pines externs. Per exemple, un cicle típic posaria el bus en mode adreçament per seleccionar un registre, i llavors canvia al mode dades per fixar el contingut.
Sis registres controlen els tons produïts als tres canals primaris. El to a generar s'emmagatzema en dos registres de 8 bits dedicats a cada canal, però el valor està limitat a 12 bits per altres raons, amb un total de 4096 tons diferents. Un altre registre controla el període d'un pseudoaleatòri generador de soroll blanc, mentre que un altre controla la barreja d'aquest soroll als tres canals de so.
Tres registres addicionals controlen el volum dels canals, igual que activen i desactiven l'envolupant. Finalment els tres últims registres controlen els temps del control envolupant ADSR (Attack, Decay, Sustain, Release o Atac, Decaïment, Sostingut i Relaxació), fixant la durada de cada estat en el cicle. A diferència d'altres sistemes, el 8910 usa temps fixos per al Sostingut i la Relaxació, i un patró repetible d'Atac i Decaïment. Per exemple, el sistema pot repetir el cicle AD del so repetidament, o alternativament invertir-ho, començant sorollosament i reduint al nivell de Sostingut sense fase d'Atac.

## Versions del xip

El CI 8910 va ser venut en tres encapsulaments diferents:
* AY-3-8910: tenia dues portes paral·leles d'E/S d'ús general, de 8 bits, A i B. Les portes estaven disponibles per a la versió de 40 pins.
* AY-3-8912: el mateix xip en un encapsulament de 28 pins, amb el port paral·lel B desconnectat. Encapsulaments menors reduïen el cost i economitzaven espai en la placa mare. El 8912 va ser de lluny la versió més popular.
* AY-3-8913: el mateix xip en un encapsulament de 24 pins, amb ambdues portes paral·leles desconnectades. La petita reducció de patilles feta en relació al 8912 va fer aquesta versió menys interessant.

### Similars

* YM-2149: posseïa el mateix nombre de patilles del AY-3-8910, amb la petita diferència que si fos arrencat el pin 26, podia dividir el rellotge principal. Si deixat connectat, en el cas de substituir un xip AY-3-8910, el rellotge principal no era dividit.

## Usos creatius

Encara que el xip no va ser dissenyat per manejar dades crues PCM (Sampler digital), l'efecte pot simular-se. El xip usa una simple funció de barreja basada en OR per combinar soroll i to als seus tres canals i es podia persuadir per produir una ona de nivell no zero. Alterant el volum aquesta ona de nivell pot disfressés d'ona de format. Òbviament, això requereix més ús de CPU que un xip dissenyat per a aquest propòsit (com el xip de so 8364 Paula del Commodore Amiga), però era no obstant això una tècnica àmpliament utilitzada en plataformes tals com l'Atari ST per reproduir música a mostres, i a l'Amstrad CPC per reproduir mostres curtes en diversos videojocs.
Fer la mateixa cosa diverses vegades per segon (de l'ordre de centenars per segon) pot reemplaçar la limitada funcionalitat envolupant (qualsevol envolupant que es pugui pensar), i al final treballar amb cadascun dels tres canals individualment. Això pren recursos insignificants de la CPU (proporcionada quan hi ha una interrupció del comptador de temps o del sincronisme vertical) i es pot utilitzar en jocs.
Alternativament, la funcionalitat ara inútil de l'envolupant es pot fixar a una alta freqüència, generant realment una forma d'ona que no sigui el la ona quadrada habitual. La granularitat amb que l'alta freqüència es pot fixar no obstant això és baixa, i així la música composta per al xip generalment usa aquesta tècnica per a les línies de baixos.
Un altre mètode és posar una sortida de canal a nivell alt, usar llavors el control de volum com un simple DAC logarítmic de 4 bits. Això produeix mala qualitat perquè només té 16 nivells de sortida i estan espaiades logarítmicament.
El mètode més sofisticat és usar els tres canals units, i explotar la no linialitat de la barreja per produir més nivells intermedis de sortida. La no linialitat no té actualment cap model matemàtic adequat, i per això els desenvolupadors deuen trobar valors adequats per experimentar. Havent fet això, es produeix una taula de recerca de 8 bits a 3x4 bits. Això permet mostres d'àudio de 8 bits bastant adequats, encara que no tant com la d'un veritable convertidor digital-analògic de 8 bits.
Alguna gent, especialment usuaris del ZX Spectrum, usen el xip AI per crear música. Veure els enllaços externs de Chiptune i els AI Riders per ampliar la informació.

## Desenvolupaments posteriors

Yamaha va usar el nucli YM-2149 per produir una família completa de xips de so que van ser utilitzats en telèfons mòbils, videojocs, etc. Per exemple, el YM-2203 (també conegut com a OPN) és un YM-2149 amb FM. No obstant això, el seu successor, el YM-2612 (també conegut com a OPN2) hereta només la part FM del YM-2203.

## Referències

* ↑ «Gyruss».
* ↑ «Radio Shack Speech/Sound Cartridge Technical Reference Manual».

## Enllaços externs

* GI AY-3-8910 Datasheet PDF (anglès)
* AY-3-8914, AY-3-8916 and AY-3-8917
* General Instruments Micro Electronics Data Catalog 1978
* AY Music and Audio a Curlie