AY-3-8910

Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den version , der blev gennemgået den 16. marts 2021; checks kræver 6 redigeringer .

AY-3-8910  er et mikrokredsløb , der er en tre-kanals lydgenerator ( PSG , Programmable Sound Generator i producentens terminologi ). Udviklet af General Instrument (nuværende Microchip ), oprindeligt beregnet til brug med 16-bit CP1610-processoren (en forenklet version af CP1600 ) fra samme virksomhed og med 8-bit mikrocontrollere i PIC1650-serien. AY-3-8910 og dens varianter er blevet meget brugt i mange arkademaskiner , spillekonsoller og hjemmecomputere . Ud over General Instrument blev dette mikrokredsløb fremstillet under en udviklerlicens af Microchip (på det tidspunkt - en tredjepartsproducent af krystaller), Micrel (under det originale navn) og andre (under forskellige navne) samt af Yamaha (under navnet Software -SSG,YM2149F ifølge producentens terminologi ) .

En af de første anvendelser af AY-3-8910 går tilbage til 1980, i Segas Carnival spillemaskine og senere på MSX platformen . Chips, der er kompatible med AY-3-8910, bruges stadig i dag. Deres produktion er ophørt, dog er et lager af tidligere producerede mikrokredsløb bevaret, og de sælges fortsat f.eks. til reparation af gamle computersystemer. Der er en VHDL- implementering af chippen til brug i FPGA -replikaer af spilleautomater og andre retro-computersystemer. Kilde-VHDL-koden er frit tilgængelig på internettet, i kompileret form optager den omkring 10 procent af Xilinx XC2S300 FPGA-volumen.

AY-3-8910 menes at have lignende lydgenereringsevner som Texas Instruments SN76489-chippen (bygget og solgt i samme tidsperiode). Men selvom deres generelle karakteristika er ens, har disse chips ganske forskellige muligheder. Kreativ brug af AY-3-8910 giver dig mulighed for at få en meget mere kompleks lyd end SN76489, takket være tilstedeværelsen i AY-3-8910 af den såkaldte envelope , som kan programmeres til en ikke-standard ( lyd) frekvens.

Berømmelse i Rusland

I Rusland fik AY-3-8910-chippen berømmelse på grund af dens brug i ZX Spectrum 128 -computeren og følgelig i dens talrige kloner . Under populariteten af ​​ZX Spectrum i Rusland var der mere end tusind mennesker, der skrev musik til AY-3-8910. I alt blev der skrevet mere end 25.000 sange til chippen. [1] Dette mikrokredsløb skabte sin egen subkultur blandt russiske computermusikere i begyndelsen af ​​1990'erne, svarende til den, der blev skabt af Commodore 64 computer SID mikrokredsløbet i andre lande. I øjeblikket er der et par entusiaster, der fortsætter med at skrive musik til AY-3-8910. Som en del af forskellige computerkunstfestivaler, såsom Chaos Constructions , DiHalt , ASCiI , ArtField og andre, er der også konkurrencer om at skrive musik til denne chip.

Radioamatører sluttede AY-3-8910 til mange husholdningscomputere i hjemmet, især til Vector-06Ts , Orion -128 , BK-0011 og IBM PC , samt til telefoner med Rus "Sonata" opkalds-id.

Beskrivelse

AY-3-8910 har følgende funktioner:

AY-3-8910 er en tilstandsmaskine, hvis tilstand er indstillet ved hjælp af seksten 8-bit registre. De programmeres via en 8-bit ekstern bus, som bruges både til dataoverførsel og til indstilling af registeradressen - tilstanden skiftes ved at ændre niveauet på en speciel pin på mikrokredsløbet. Typisk værdioverførselscyklus: bus skifter til adressetilstand, adresse overføres, bus skifter til dataoverførselstilstand, data overføres. Denne bus blev oprindeligt implementeret på GI's egne processorer, men skulle genskabes med logik eller en ekstra interface-adapter såsom MOS Technology 6522, men chippen blev brugt med den meget mere almindelige MOS 6502 eller Zilog Z80 teknologi

De seks registre R0..R5 styrer lydfrekvensen, der genereres af de tre hovedkanaler ved at indstille input clock divider værdien. Divideren er gemt i to 8-bit registre for hver af kanalerne, men dividertællerens reelle kapacitet er 12 bit, hvilket giver 4095 lydfrekvensværdier (0 og 1 er ækvivalente).

Register R6 indstiller 5-bit periodeværdien for pseudo-tilfældig støjgeneratoren.

Register R7 er en logisk mixer, der indeholder to bits for hver kanal, afhængigt af hvilket signal fra støjgeneratoren eller envelope-generatoren, der blandes i kanalerne. Også i register R7 er to generelle I/O-portkontrolbits.

Tre registre R8..R10 styrer lydstyrken på de tre hovedkanaler (16 niveauer), og har også en smule til at muliggøre brugen af ​​kuverten.

De tre registre R11..R13 styrer frekvensen (to registre, 16-bit værdi) og bølgeformen (et register, 16 muligheder) af det ADSR -lignende indhyllingsgeneratorsignal. I modsætning til de fleste systemer bruger 8910 faste tider for plateau- og henfaldsfaserne og en gentagen sekvens af angrebs- og henfaldsfaser . For eksempel kan generatoren konstant gentage angreb-fald-cyklussen, eller omvendt, begyndende fra det maksimale niveau, gradvist sænke det uden en angrebsfase.

Registrene R14 og R15 styrer tilstanden af ​​input/output-linjerne for de generelle I/O-porte.

Versioner

Den originale 8910 krystal havde tre versioner.

AY-3-8910 havde to parallelle otte-bit generelle I/O-porte - A og B. Fremstillet i en 40-bens pakke (DIP40).

AY-3-8912 er lavet i en 28-benet pakke (DIP28). Port B-signaler dirigeres ikke til eksterne ben. Dette design reducerede omkostningerne ved mikrokredsløbet og dets dimensioner, hvilket gjorde dette design til det mest populære.

AY-3-8913 er lavet i en 24-bens pakke (DIP24). Port A- og B-signaler bringes ikke ud. I forhold til 8912 er dimensionerne faldet ubetydeligt, og funktionaliteten er faldet, så denne version har fået mindst udbredelse.

Pin-tildelingen af ​​YM2149F er den samme som AY-3-8910, med undtagelse af ben 26, som tænder for den interne indgangsfrekvensdeler med det halve, når den køres lavt. Hvis denne pin ikke er tilsluttet nogen steder, fungerer mikrokredsløbet på samme måde som AY-3-8910. Ud over den indbyggede input frekvensdeler har YM2149 en forskel i envelope DAC bit dybden - 5 bits i stedet for 4 (med en logaritmisk skala). Også kun de nederste bruges til tone. (stille) 4 bit. Dette skaber en forskel i klangen af ​​envelope-lyden, hvilket gør den lysere, men giver mulighed for mere basfleksibilitet.

YMZ284-D er lavet i en 16-benet pakke (DIP16). YMZ284-M er lavet i en 16-bens pakke (SOIC16). Funktionelt og software er fuldt kompatibel med AY-3-8910, AY-3-8912 og AY-3-8913. Et karakteristisk træk er et lille antal stifter, en forenklet grænseflade, en monolydudgang.

Microchip AY38910A er lavet i en 40-bens pakke (DIP40). Fuldt kompatibel med YAMAHA YM2149f .

Mikrochip AY8930 . Kompatibel med Microchip AY38910A . Kan skiftes til udvidet tilstand: ikke 4 til 8-bit toneperiode, ikke 5 til 8-bit støjperiode, støjen genereres ikke af den hårde LFSR-mekanisme, men med yderligere programmerbare OG- og ELLER-masker.

Winbond WF19054 , China JFC95101 , WB5300 og Jile KC89C72 IC'er er også AY-3-8910-kloner.

Kreativ brug

Selvom mikrokredsløbet ikke har særlige muligheder for at afspille digitaliserede lyde, kan det implementeres i software ved hjælp af en 4-bit DAC af en eller flere kanaler med tone- og støjgenerering forbudt af den logiske mixer. Denne tilgang kræver mere CPU-tid end at bruge chips, der er specielt designet til digital lydafspilning (såsom Paula-chippen i Commodore Amiga-computeren ). Men det blev ikke desto mindre meget brugt på platforme som Atari ST -computeren til afspilning af digital musik og på Amstrad CPC til afspilning af korte lydeffekter i nogle spil.

Ved at bruge samme teknik, men uden at slå tonegenereringen fra, er det muligt at udvide mulighederne for at generere forskellige klangfarve . I dette tilfælde bruges ændring af kanalens DAC-udgangsniveau til at modulere tonehøjden med en anden frekvens. På denne måde kan du f.eks. få tre uafhængige amplitudekonvolutter af enhver form, eller klangfarve, der ligner lyden af ​​en SID -chip . For effektivt at implementere denne metode skal systemet være i stand til at afbryde processoren ved en tilstrækkelig høj frekvens - for eksempel på Atari ST-computeren, hvor denne teknik blev mest aktivt brugt, blev der brugt en interrupt i begyndelsen af ​​rasterlinjen. På systemer, der ikke har sådanne hardwareegenskaber, vil næsten al processortiden være nødvendig for at implementere en sådan effekt. Der er en Digisid-demo, der kører effekten på en ZX Spectrum-computer , der ikke har Atari ST-lignende hardwarefunktioner.

I 2006 skabte to MSX -computersoftwareudviklere en avanceret encoder, der konverterer wave-filer til de bedst egnede data til AY-kanaler ved hjælp af Viterbi-søgealgoritmen . Dette gjorde det muligt at afspille en 44.100 hertz wave-fil på en 23 år gammel MSX -computer med et signal-til-støj-forhold, der er højere end for en 8-bit DAC. Viterbi-algoritmen er meget ressourcekrævende, den kunne ikke bruges i 80'erne, da der på det tidspunkt ikke var nogen kraftige nok computere til at udføre en sådan transformation.

Nogle mennesker, især brugere af ZX Spectrum-computeren, bruger AY-chippen til at skabe musik, herunder til koncertoptrædener. .

Liste over systemer

Delvis liste over systemer, der har brugt 8910 eller varianter. Omfatter ikke forskellige spilleautomater, hvis antal overstiger tusind.

Spillekonsoller:

Hjemmecomputere. Mange af dem har mange modeller fra forskellige producenter:

Musikredaktører

Til computere, der brugte AY-3-8910-chippen, blev et stort antal musikeditorer skabt ved hjælp af dens lydgenereringsfunktioner. De fleste af dem havde en tracker -grænseflade . Ofte havde de stor lighed med de første trackere, der dukkede op på Amiga -computeren  - for eksempel The Ultimate Soundtracker (1987), NoiseTracker (1989), ProTracker (1991). Også lignende eller fuldstændig identiske navne blev brugt som navne på sådanne programmer. Af denne grund faldt navnene på forskellige programmer fra forskellige forfattere på forskellige platforme, og endda inden for den samme platform, også ofte sammen.

Følgende er en delvis liste over musikredaktører til AY-3-8910. Det omfatter ikke prøve - orienterede redaktører (såkaldte digitale musikredaktører). Nogle af redaktørerne blev kun udgivet i demoversioner. Listen inkluderer kun de demoversioner, der havde den grundlæggende funktionalitet, det vil sige, de tillod dig at redigere musik.

Ud over musikredaktører er der mere højt specialiserede programmer designet til at skabe lydeffekter (for eksempel til brug i spil).

Videreudvikling

Yamaha brugte YM2149F-kernen i en hel familie af musikchips, der blev brugt i mobiltelefoner, videospil osv. YM2203- chippen (også kendt som OPN) indeholder for eksempel udover sin egen frekvensmodulationssynthesizer (FM). en fuldgyldig analog af YM2149F, fuldt kompatibel med hensyn til numre og formål med registrene (den næste chip i serien, YM2612 , indeholder dog kun FM-delen 2203).

Mange MSX2 -computere og nogle MSX1-computere bruger specialiserede "chipset" LSI'er fra forskellige virksomheder. Disse er for eksempel Yamaha S1985 , S3527 , Toshiba T7775 , T7937 , T9769 mikrokredsløb . Ud over en stor del af computerkredsløbet indeholder de også en fuldgyldig analog af YM2149F.

Philips udviklede SAA1099- chippen (brugt i SAM Coupé -computeren og tidlige Creative Labs -lydkort til IBM-pc'en ). Dens egenskaber ligner de to AY-3-8910'ere (6 kanaler, 2 kuverter, 2 støjgeneratorer), med nogle tilføjelser. Der mangler dog software- og hardwarekompatibilitet.

Emulering

Ud over at implementere chipemulering i emulatorer af forskellige systemer, der bruger det, er der separate chipemulatorer. De giver dig mulighed for at afspille musik skrevet til forskellige systemer og gemt i deres specielle formater på en almindelig pc. Som det er tilfældet med andre lignende lydgeneratorchips, har softwareemulering nogle forskelle i lyd i forhold til den rigtige chip, og måske endda en forskel til det bedre (klarere lyd, uden forvrængning, hvilket gør lyden noget anderledes end originalen). Hvis i tilfælde af andre, mere komplekse mikrokredsløb opstår disse forskelle på grund af unøjagtig emulering af mikrokredsløbenes logik, så studeres i tilfælde af AY-3-8910 og kompatible mikrokredsløb alle finesser og forskelle i deres arbejde fuldt ud. , og oversampling-problemet bliver hovedkilden til forskelle ( resampling ) af signalet (chippen giver dig mulighed for at generere lyd med frekvenser op til flere hundrede kilohertz).

Noter

  1. ZX TUNES indsamlingsstatistikker . Hentet 22. maj 2009. Arkiveret fra originalen 23. august 2021.
  2. [chrome-extension://oemmndcbldboiebfnladdacbdfmadadm/ http://map.grauw.nl/resources/sound/generalinstrument_ay-3-8910.pdf datasheet] .

Links