AY-3-8910

Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt közreműködők, és jelentősen eltérhet a 2021. március 16-án felülvizsgált verziótól ; az ellenőrzések 6 szerkesztést igényelnek .

Az AY-3-8910  egy mikroáramkör , amely egy háromcsatornás hanggenerátor ( PSG , programozható hanggenerátor a gyártó terminológiája szerint ). A General Instrument (jelenlegi Microchip ) által kifejlesztett , eredetileg ugyanazon cég 16 bites CP1610 processzorával (a CP1600 egyszerűsített változata ) és a PIC1650 sorozat 8 bites mikrovezérlőivel való használatra szánták. Az AY-3-8910 és változatai széles körben használatosak számos játéktermi gépben , játékkonzolban és otthoni számítógépben . A General Instrument mellett ezt a mikroáramkört fejlesztői engedély alapján a Microchip (akkoriban a kristályok harmadik fél gyártója), a Micrel (eredeti néven) és mások (különböző neveken), valamint a Yamaha gyártotta . ( YM2149F Szoftvervezérelt -SSGnéven a gyártó terminológiája szerint ).

Az AY-3-8910 egyik első felhasználása 1980-ra nyúlik vissza, a Sega Carnival játékgépében , majd később az MSX platformon . Az AY-3-8910-el kompatibilis chipeket ma is használják. Gyártásuk megszűnt, a korábban gyártott mikroáramkörökből azonban készletet őriztek meg, és továbbra is értékesítik őket például régi számítógépes rendszerek javítására. A chipnek van egy VHDL -megvalósítása, amelyet játékgépek és más retro számítógépes rendszerek FPGA -másolatában lehet használni. A forrás VHDL kód szabadon elérhető az interneten, lefordított formában a Xilinx XC2S300 FPGA kötet mintegy 10 százalékát foglalja el.

Úgy gondolják, hogy az AY-3-8910 hasonló hanggenerálási képességekkel rendelkezik, mint a Texas Instruments SN76489 chip (amelyet ugyanabban az időszakban gyártottak és értékesítettek). Azonban, bár általános jellemzőik hasonlóak, ezek a chipek meglehetősen eltérő képességekkel rendelkeznek. Az AY-3-8910 kreatív használata lehetővé teszi, hogy sokkal összetettebb hangzást kapjon, mint az SN76489, köszönhetően az AY-3-8910-ben található úgynevezett borítéknak , amely nem szabványosra programozható ( hangfrekvencia.

Hírnév Oroszországban

Oroszországban az AY-3-8910 chip hírnevet szerzett a ZX Spectrum 128 számítógépben , és ennek megfelelően számos klónjában való használatának köszönhetően . A ZX Spectrum oroszországi népszerűsége idején több mint ezer ember írt zenét az AY-3-8910-hez. Összesen több mint 25 000 dalt írtak a chipre. [1] Ez a mikroáramkör létrehozta saját szubkultúráját az 1990-es évek elején az orosz számítógépes zenészek körében, hasonlóan ahhoz, amit a Commodore 64 számítógépes SID mikroáramkör hozott létre más országokban. Jelenleg van néhány rajongó, aki továbbra is ír zenét az AY-3-8910-hez. Különböző számítógépes művészeti fesztiválok keretében, mint például a Chaos Constructions , a DiHalt , az ASCII , az ArtField és mások, versenyeket is írnak erre a chipre.

A rádióamatőrök az AY-3-8910-et számos háztartási számítógéphez csatlakoztatták, különösen a Vector-06T-hez , az Orion -128-hoz , a BK-0011- hez és az IBM PC -hez , valamint a Rus "Sonata" hívóazonosítóval ellátott telefonokhoz.

Leírás

Az AY-3-8910 a következő tulajdonságokkal rendelkezik:

Az AY-3-8910 egy állapotgép, amelynek állapota tizenhat 8 bites regiszter segítségével van beállítva. Programozásuk egy 8 bites külső buszon keresztül történik, amelyet adatátvitelre és a regisztercím beállítására egyaránt használnak - az üzemmódot a mikroáramkör speciális tűjén lévő szint változtatásával váltják. Tipikus értékátviteli ciklus: busz cím módba kapcsol, címátvitel, busz adatátviteli módba kapcsol, adatátvitel történik. Ezt a buszt eredetileg a GI saját processzoraira építették, de logikával vagy egy további interfész adapterrel, például a MOS Technology 6522-vel újra kellett létrehozni, azonban a chipet a sokkal elterjedtebb MOS 6502 vagy Zilog Z80 technológiával használták.

A hat R0..R5 regiszter szabályozza a három fő csatorna által generált hangfrekvenciát a bemeneti óraosztó értékének beállításával. Az osztó csatornánként két 8 bites regiszterben van tárolva, de az osztószámláló valós kapacitása 12 bit, ami 4095 hangfrekvencia értéket ad (0 és 1 egyenértékű).

Az R6 regiszter beállítja az 5 bites periódusértéket a pszeudovéletlen zajgenerátor számára.

Az R7 regiszter egy logikai keverő, amely csatornánként két bitet tartalmaz, attól függően, hogy a zajgenerátor vagy a burkológörbe generátor jele keveredik a csatornákba. Az R7 regiszterben két általános célú I/O port vezérlőbit is található.

Három R8..R10 regiszter szabályozza a három fő csatorna hangerejét (16 szint), és van egy bitje is, amely lehetővé teszi a burkológörbe használatát.

A három R11..R13 regiszter vezérli az ADSR - szerű burkológörbe generátor jel frekvenciáját (két regiszter, 16 bites érték) és hullámformáját (egy regiszter, 16 opció) . A legtöbb rendszertől eltérően a 8910 rögzített időket használ a fennsík és a lecsengés fázisaihoz, valamint a támadási és leállási fázisok ismétlődő sorozatához . Például a generátor folyamatosan meg tudja ismételni a támadás-esés ciklust, vagy fordítva, a maximális szintről kiindulva, fokozatosan csökkentve, támadási fázis nélkül.

Az R14 és R15 regiszterek szabályozzák az általános célú I/O portok bemeneti/kimeneti vonalainak állapotát.

Verziók

Az eredeti 8910 kristálynak három változata volt.

Az AY-3-8910 két párhuzamos nyolcbites általános célú I/O porttal rendelkezik – A és B. 40 tűs csomagban (DIP40) készült.

Az AY-3-8912 28 tűs csomagolásban (DIP28) készül. A B port jelei nem jutnak külső érintkezőkhöz. Ez a kialakítás csökkentette a mikroáramkör költségeit és méreteit, ami ezt a kialakítást a legnépszerűbbvé tette.

Az AY-3-8913 24 tűs csomagolásban (DIP24) készül. Az A és B port jelei nem jönnek ki. A 8912-höz képest jelentéktelenül csökkentek a méretek, és csökkent a funkcionalitás, így ez a verzió kapta a legkevesebb terjesztést.

Az YM2149F tűkiosztása megegyezik az AY-3-8910-éval, kivéve a 26-os érintkezőt, amely felével bekapcsolja a belső bemeneti frekvenciaosztót, ha alacsonyra hajtják. Ha ez a tű nincs sehova csatlakoztatva, akkor a mikroáramkör ugyanúgy működik, mint az AY-3-8910. A beépített bemeneti frekvenciaosztón kívül az YM2149 borítékolható DAC bitmélységben is különbözik - 4 helyett 5 bit (logaritmikus skálával). Emellett csak az alsókat használják hangszínre. (csendes) 4 bit. Ez különbséget hoz létre a burkológörbe hangszínében, világosabbá téve azt, de nagyobb mélyhang-rugalmasságot tesz lehetővé.

Az YMZ284-D 16 tűs csomagolásban (DIP16) készül. Az YMZ284-M 16 tűs csomagolásban (SOIC16) készül. Funkcionálisan és szoftveresen teljes mértékben kompatibilis az AY-3-8910, AY-3-8912 és AY-3-8913 szabványokkal. Megkülönböztető jellemzője a kis számú érintkező, az egyszerűsített felület, a mono hangkimenet.

Az AY38910A mikrochip 40 tűs csomagolásban (DIP40) készül. Teljesen kompatibilis a YAMAHA YM2149f -vel .

AY8930 mikrochip . Kompatibilis az AY38910A Microchippel . Átkapcsolható kiterjesztett módra: nem 4-8 bites hangperiódus, nem 5-8 bites zajperiódus, a zajt nem a kemény LFSR mechanizmus generálja, hanem további programozható ÉS és VAGY maszkokkal.

A Winbond WF19054 , Kína JFC95101 , WB5300 és Jile KC89C72 IC -k szintén az AY-3-8910 klónok.

Kreatív felhasználás

Bár a mikroáramkör nem rendelkezik speciális lehetőségekkel a digitalizált hangok lejátszására, szoftveresen megvalósítható egy vagy több csatornás 4 bites DAC használatával, a hang- és zajkeltést a logikai keverő tiltja. Ez a megközelítés több CPU-időt igényel, mint a kifejezetten digitális hanglejátszásra tervezett chipek használata (például a Commodore Amiga számítógép Paula chipje ). Ennek ellenére széles körben használták olyan platformokon, mint például az Atari ST számítógépen digitális zene lejátszására, vagy az Amstrad CPC -n a rövid hangeffektusok lejátszására egyes játékokban.

Ugyanezzel a technikával, de a hanggenerálás kikapcsolása nélkül, lehetőség nyílik a különböző hangszínek generálásának lehetőségeinek bővítésére . Ebben az esetben a csatorna DAC kimeneti szintjének megváltoztatásával a hangmagasságot más frekvenciával modulálják. Ily módon például három független amplitúdó borítékot kaphat, bármilyen alakú, vagy olyan hangszíneket, amelyek hasonlítanak egy SID chip hangjára . A módszer hatékony megvalósításához a rendszernek képesnek kell lennie a processzor kellően magas frekvenciájú megszakítására - például az Atari ST számítógépen, ahol ezt a technikát a legaktívabban használták, a rasztersor elején megszakítást alkalmaztak. Azokon a rendszereken, amelyek nem rendelkeznek ilyen hardverképességekkel, szinte a teljes processzoridőre szükség lesz egy ilyen hatás megvalósításához. Van egy Digisid demó, amely egy olyan ZX Spectrum számítógépen futtatja az effektust, amely nem rendelkezik Atari ST-szerű hardverképességekkel.

2006-ban két MSX számítógépes szoftverfejlesztő fejlesztett ki egy fejlett kódolót, amely a Viterbi keresőalgoritmus segítségével a wave fájlokat az AY csatornák számára legmegfelelőbb adatokká alakítja . Ez lehetővé tette egy 44 100 hertzes hullámfájl lejátszását egy 23 éves MSX számítógépen , amelynek jel-zaj aránya magasabb, mint egy 8 bites DAC-é. A Viterbi algoritmus nagyon erőforrásigényes, a 80-as években még nem lehetett használni, mivel akkoriban még nem voltak elég erős számítógépek egy ilyen átalakítás elvégzésére.

Vannak, akik, különösen a ZX Spectrum számítógép felhasználói, az AY chipet használják zenék létrehozására, beleértve a koncertelőadásokat is. .

Rendszerek listája

A 8910-et vagy annak változatait használó rendszerek részleges listája. Nem tartalmazza a különféle pénznyerő automatákat, amelyek száma meghaladja az ezret.

Játékkonzolok:

Otthoni számítógépek. Sokukban számos modell található különböző gyártóktól:

Zenei szerkesztők

Az AY-3-8910 chipet használó számítógépekhez számos zeneszerkesztőt hoztak létre annak hanggeneráló képességeinek felhasználásával. A legtöbben nyomkövető felülettel rendelkeztek . Gyakran erősen hasonlítottak az Amiga számítógépen megjelent első trackerekhez  - például The Ultimate Soundtracker (1987), NoiseTracker (1989), ProTracker (1991). Ezenkívül hasonló vagy teljesen azonos neveket használtak az ilyen programok neveként. Emiatt gyakran egybeesett a különböző szerzőktől származó, különböző platformokon, sőt ugyanazon a platformon belüli programok neve is.

Az alábbiakban az AY-3-8910 zenei szerkesztőinek részleges listája található. Nem tartalmazza a minta - orientált szerkesztőket (úgynevezett digitális zeneszerkesztőket). A szerkesztők egy része csak demóverzióban jelent meg. A listán csak azok a demóverziók szerepelnek, amelyek rendelkeznek az alapvető funkciókkal, vagyis lehetővé tették a zene szerkesztését.

A zeneszerkesztők mellett vannak speciálisabb programok, amelyek hangeffektusok létrehozására szolgálnak (például játékokban való használatra).

Továbbfejlesztés

A Yamaha az YM2149F magot a zenei chipek egész családjában használta, amelyeket mobiltelefonokban, videojátékokban stb. használtak. Például az YM2203 chip (más néven OPN) a saját frekvenciamodulációs (FM) szintetizátora mellett tartalmaz az YM2149F teljes értékű analógja, amely a regiszterek számát és célját tekintve teljesen kompatibilis (a sorozat következő chipje, az YM2612 azonban csak a 2203-as FM részt tartalmazza).

Sok MSX2 számítógép és néhány MSX1 számítógép speciális "chipset" LSI -ket használ különböző cégektől. Ilyenek például a Yamaha S1985 , S3527 , Toshiba T7775 , T7937 , T9769 mikroáramkörök . A számítógépes áramkör nagy része mellett az YM2149F teljes értékű analógját is tartalmazzák.

A Philips kifejlesztette az SAA1099 chipet (a SAM Coupé számítógépben és a korai Creative Labs hangkártyákban az IBM PC -hez használták ). Lehetőségei hasonlóak a két AY-3-8910-hez (6 csatorna, 2 boríték, 2 zajgenerátor), némi kiegészítéssel. A szoftver és a hardver kompatibilitása azonban hiányzik.

Emuláció

Amellett, hogy a chip emulációt különféle rendszerek emulátoraiban implementálják, léteznek külön chip-emulátorok. Lehetővé teszik különféle rendszerekre írt és speciális formátumukban mentett zenék lejátszását egy normál számítógépen. A többi hasonló hanggenerátor chiphez hasonlóan a szoftveres emulációnak is van némi hangzásbeli eltérése a valódi chiphez képest, sőt talán még jobb is (tisztább hangzás, torzítás nélkül, ami némileg eltér az eredetitől). Ha más, bonyolultabb mikroáramkörök esetében ezek a különbségek a mikroáramkörök logikájának pontatlan emulációjából adódnak, akkor az AY-3-8910 és a kompatibilis mikroáramkörök esetében a munkájuk minden finomságát és különbségét teljes mértékben tanulmányozzák. , és a túlmintavételezési probléma lesz az eltérések fő forrása.( resampling ) a jel (a chip lehetővé teszi akár több száz kilohertz frekvenciájú hang generálását).

Jegyzetek

  1. ZX TUNES gyűjtési statisztika . Letöltve: 2009. május 22. Az eredetiből archiválva : 2021. augusztus 23.
  2. [chrome-extension://oemmndcbldboiebfnladdacbdfmadadm/ http://map.grauw.nl/resources/sound/generalinstrument_ay-3-8910.pdf adatlap] .

Linkek