AY-3-8910 on mikropiiri , joka on kolmikanavainen äänigeneraattori ( PSG , ohjelmoitava äänigeneraattori valmistajan terminologiassa ) . General Instrumentin (nykyinen Microchip ) kehittämä , alun perin tarkoitettu käytettäväksi saman yrityksen 16-bittisen CP1610-prosessorin (yksinkertaistettu versio CP1600 :sta ) ja 8-bittisten PIC1650-sarjan mikro-ohjainten kanssa. AY-3-8910 ja sen muunnelmia on käytetty laajalti monissa pelihallikoneissa , pelikonsoleissa ja kotitietokoneissa . General Instrumentin lisäksi tämän mikropiirin valmistivat kehittäjän lisenssillä Microchip (silloin - kolmannen osapuolen kiteiden valmistaja), Micrel (alkuperäisellä nimellä) ja muut (eri nimillä) sekä Yamaha . ( nimellä Ohjelmistoohjattu -SSG,YM2149F äänigeneraattori valmistajan terminologian mukaan ).
Yksi AY-3-8910:n ensimmäisistä käyttötavoista juontaa juurensa vuodelle 1980 Segan Carnival-peliautomaatissa ja myöhemmin MSX -alustalla . AY-3-8910:n kanssa yhteensopivia siruja käytetään edelleen. Niiden tuotanto on kuitenkin lopetettu, mutta aiemmin valmistettuja mikropiirejä on säilytetty ja niitä myydään edelleen esimerkiksi vanhojen tietokonejärjestelmien korjaukseen. Sirussa on VHDL -toteutus käytettäväksi peliautomaattien ja muiden retrotietokonejärjestelmien FPGA -kopioissa. VHDL-lähdekoodi on vapaasti saatavilla Internetissä, käännettynä se vie noin 10 prosenttia Xilinx XC2S300 FPGA -tilavuudesta.
AY-3-8910:llä uskotaan olevan samanlaiset äänen tuottoominaisuudet kuin Texas Instruments SN76489 -sirun (rakennettu ja myyty samana ajanjaksona). Vaikka niiden yleiset ominaisuudet ovat samanlaiset, näillä siruilla on kuitenkin melko erilaisia ominaisuuksia. AY-3-8910:n luova käyttö mahdollistaa paljon monimutkaisemman äänen saamisen kuin SN76489, koska AY-3-8910:ssä on niin kutsuttu kirjekuori , joka voidaan ohjelmoida epästandardille ( äänitaajuus.
Venäjällä AY-3-8910-siru saavutti mainetta sen käytön ansiosta ZX Spectrum 128 -tietokoneessa ja vastaavasti sen lukuisissa klooneissa . ZX Spectrumin suosion aikana Venäjällä yli tuhat ihmistä kirjoitti musiikkia AY-3-8910:lle. Yhteensä sirulle kirjoitettiin yli 25 000 kappaletta. [1] Tämä mikropiiri loi oman alakulttuurinsa 1990-luvun alun venäläisten tietokonemuusikoiden keskuudessa, samanlaisen kuin Commodore 64 -tietokoneen SID -mikropiiri muissa maissa. Tällä hetkellä muutama harrastaja jatkaa musiikin kirjoittamista AY-3-8910:lle. Osana erilaisia tietokonetaidefestivaaleja, kuten Chaos Constructions , DiHalt , ASCII , ArtField ja muita, järjestetään myös kilpailuja musiikin kirjoittamisesta tälle sirulle.
Radioamatöörit yhdistivät AY-3-8910:n moniin kotitaloustietokoneisiin, erityisesti Vector-06T :iin , Orion -128 :aan , BK-0011 :een ja IBM PC :hen , sekä puhelimiin, joissa on Rus "Sonata" soittajatunnus.
AY-3-8910:ssä on seuraavat ominaisuudet:
AY-3-8910 on tilakone, jonka tila asetetaan kuudellatoista 8-bittisellä rekisterillä. Ne ohjelmoidaan 8-bittisen ulkoisen väylän kautta, jota käytetään sekä tiedonsiirtoon että rekisteriosoitteen asettamiseen - tila vaihdetaan muuttamalla tasoa mikropiirin erityisellä nastalla. Tyypillinen arvonsiirtojakso: väylä vaihtaa osoitemoodiin, osoite siirretään, väylä vaihtaa tiedonsiirtotilaan, dataa siirretään. Tämä väylä toteutettiin alun perin GI:n omilla prosessoreilla, mutta se piti luoda uudelleen logiikalla tai lisäliitäntäsovittimella, kuten MOS Technology 6522:lla, mutta sirua käytettiin paljon yleisemmällä MOS 6502- tai Zilog Z80 -tekniikalla.
Kuusi rekisteriä R0..R5 ohjaa kolmen pääkanavan tuottamaa äänen taajuutta asettamalla sisääntulokellon jakajan arvon. Jakaja on tallennettu kahteen 8-bittiseen rekisteriin kullekin kanavalle, mutta jakajalaskurin todellinen kapasiteetti on 12 bittiä, mikä antaa 4095 äänitaajuusarvoa (0 ja 1 vastaavat).
Rekisteri R6 asettaa 5-bittisen jaksoarvon pseudosatunnaiskohinageneraattorille.
Rekisteri R7 on looginen mikseri, joka sisältää kaksi bittiä kullekin kanavalle riippuen siitä, kumman kohinageneraattorin tai verhokäyrägeneraattorin signaali sekoittuu kanaviin. Myös rekisterissä R7 on kaksi yleiskäyttöistä I/O-portin ohjausbittiä.
Kolme rekisteriä R8..R10 ohjaavat kolmen pääkanavan äänenvoimakkuutta (16 tasoa), ja niissä on myös bitti verhokäyrän käyttöä varten.
Kolme rekisteriä R11..R13 ohjaavat ADSR - tyyppisen verhokäyrägeneraattorin signaalin taajuutta (kaksi rekisteriä, 16-bittinen arvo) ja aaltomuotoa (yksi rekisteri, 16 vaihtoehtoa). Toisin kuin useimmat järjestelmät, 8910 käyttää kiinteitä aikoja tasanne- ja vaimenemisvaiheille sekä toistuville hyökkäys- ja vaimenemisvaiheille . Esimerkiksi generaattori voi jatkuvasti toistaa hyökkäys-pudotusjaksoa tai päinvastoin, alkaen maksimitasosta, laskemalla sitä asteittain ilman hyökkäysvaihetta.
Rekisterit R14 ja R15 ohjaavat yleiskäyttöisten I/O-porttien tulo/lähtölinjojen tilaa.
Alkuperäisellä 8910-kristallilla oli kolme versiota.
AY-3-8910:ssä oli kaksi rinnakkaista kahdeksanbitistä yleiskäyttöistä I/O-porttia - A ja B. Valmistettu 40-nastaisessa paketissa (DIP40).
AY-3-8912 on valmistettu 28-nastaisessa pakkauksessa (DIP28). Portin B signaaleja ei reititetä ulkoisiin nastoihin. Tämä malli alensi mikropiirin kustannuksia ja sen mittoja, mikä teki tästä mallista suosituimman.
AY-3-8913 on valmistettu 24-nastaisessa pakkauksessa (DIP24). Porttien A ja B signaaleja ei tuoda ulos. Verrattuna 8912:een mitat ovat vähentyneet oleellisesti ja toimivuus vähentynyt, joten tämä versio on saanut vähiten jakelua.
YM2149F :n nastajako on sama kuin AY-3-8910:ssa, lukuun ottamatta nastaa 26, joka kytkee sisäisen taajuudenjakajan päälle, kun se ajetaan matalaksi. Jos tätä nastaa ei ole kytketty mihinkään, mikropiiri toimii samalla tavalla kuin AY-3-8910. Sisäänrakennetun tulotaajuusjakajan lisäksi YM2149:ssä on ero verhokäyrän DAC -bittisyvyydessä - 5 bittiä 4:n sijasta (logaritmisella asteikolla). Myös vain alempia käytetään sävyyn. (hiljainen) 4 bittiä. Tämä luo eron kirjekuoren äänen sointiin, mikä tekee siitä kirkkaamman, mutta mahdollistaa enemmän basson joustavuutta.
YMZ284-D on valmistettu 16-nastaisessa paketissa (DIP16). YMZ284-M on valmistettu 16-nastaisessa pakkauksessa (SOIC16). Toiminnallisesti ja ohjelmisto on täysin yhteensopiva AY-3-8910, AY-3-8912 ja AY-3-8913 kanssa. Erottuva piirre on pieni määrä nastoja, yksinkertaistettu käyttöliittymä, monoäänilähtö.
Mikrosiru AY38910A on valmistettu 40-nastaisessa pakkauksessa (DIP40). Täysin yhteensopiva YAMAHA YM2149f :n kanssa .
Mikrosiru AY8930 . Yhteensopiva Microchipin AY38910A kanssa . Voidaan kytkeä laajennettuun tilaan: ei 4-8-bittinen äänijakso, ei 5-8-bittinen kohinajakso, kohinaa ei synny kova LFSR-mekanismi, vaan lisäohjelmoitavilla JA- ja TAI-maskeilla.
Winbond WF19054 , Kiina JFC95101 , WB5300 ja Jile KC89C72 IC:t ovat myös AY-3-8910-klooneja.
Vaikka mikropiirissä ei ole erityisiä ominaisuuksia digitoitujen äänten toistamiseen, se voidaan toteuttaa ohjelmistossa käyttämällä yhden tai useamman kanavan 4-bittistä DAC:ta, jonka äänen ja kohinan synnyttäminen on loogisen mikserin kieltämässä. Tämä lähestymistapa vaatii enemmän suoritinaikaa kuin erityisesti digitaaliseen äänentoistoon suunniteltujen sirujen käyttäminen (kuten Commodore Amiga -tietokoneen Paula-siru ). Mutta sitä käytettiin kuitenkin laajasti alustoilla, kuten Atari ST -tietokoneessa digitaalisen musiikin toistamiseen ja Amstrad CPC :ssä lyhyiden äänitehosteiden toistamiseen joissakin peleissä.
Käyttämällä samaa tekniikkaa, mutta sammuttamatta sävelten generointia, on mahdollista laajentaa mahdollisuuksia luoda erilaisia sävyjä . Tässä tapauksessa kanavan DAC-lähtötason vaihtamista käytetään sävelkorkeuden moduloimiseen eri taajuudella. Tällä tavalla voit saada esimerkiksi kolme riippumatonta amplitudiverhokäyrää minkä tahansa muotoisena tai SID -sirun ääntä muistuttavaa sointia . Tämän menetelmän tehokkaaksi toteuttamiseksi järjestelmän on kyettävä keskeyttämään prosessori riittävän korkealla taajuudella - esimerkiksi Atari ST -tietokoneessa, jossa tätä tekniikkaa käytettiin aktiivisimmin, rasteriviivan alussa käytettiin keskeytystä. Järjestelmissä, joissa ei ole tällaisia laitteistoominaisuuksia, tällaisen vaikutuksen toteuttamiseen tarvitaan lähes kaikki prosessorin aika. Digisid-demo on käynnissä ZX Spectrum -tietokoneessa , jossa ei ole Atari ST:n kaltaisia laitteistoominaisuuksia.
Vuonna 2006 kaksi MSX - tietokoneohjelmistojen kehittäjää loi edistyneen kooderin, joka muuntaa wave-tiedostot AY-kanaville sopivimmaksi dataksi Viterbi-hakualgoritmin avulla . Tämä mahdollisti 44 100 hertsin aaltotiedoston toistamisen 23-vuotiaalla MSX -tietokoneella , jonka signaali-kohinasuhde oli korkeampi kuin 8-bittisellä DAC:lla. Viterbi-algoritmi on erittäin resurssiintensiivinen, sitä ei voitu käyttää 80-luvulla, koska tuolloin ei ollut tarpeeksi tehokkaita tietokoneita tällaisen muunnoksen suorittamiseen.
Jotkut ihmiset, erityisesti ZX Spectrum -tietokoneen käyttäjät, käyttävät AY-sirua musiikin luomiseen, myös konserttiesityksiin. .
Osittainen luettelo järjestelmistä, jotka ovat käyttäneet 8910:tä tai sen variantteja. Ei sisällä erilaisia peliautomaatteja, joiden lukumäärä on yli tuhat.
Pelikonsolit:
Kotitietokoneet. Monilla niistä on useita malleja eri valmistajilta:
Tietokoneille, joissa käytettiin AY-3-8910-sirua, luotiin suuri määrä musiikkieditoreja käyttämällä sen äänentuotantoominaisuuksia. Useimmissa niistä oli seurantaliittymä . Usein ne muistuttivat voimakkaasti ensimmäisiä Amiga -tietokoneelle ilmestyneitä seurantalaitteita - esimerkiksi The Ultimate Soundtracker (1987), NoiseTracker (1989), ProTracker (1991). Myös tällaisten ohjelmien nimissä käytettiin samanlaisia tai täysin identtisiä nimiä. Tästä syystä myös eri tekijöiden eri ohjelmien nimet eri alustoilla ja jopa samalla alustalla osuivat usein yhteen.
Seuraavassa on osittainen luettelo AY-3-8910:n musiikkieditoreista. Se ei sisällä näyte - suuntautuneita editoreja (ns. digitaalisia musiikkieditoreja). Jotkut editoreista julkaistiin vain demoversioina. Luettelo sisältää vain ne demoversiot, joissa oli perustoiminnot, eli niillä voit muokata musiikkia.
Musiikkieditorien lisäksi on olemassa enemmän erikoistuneita ohjelmia, jotka on suunniteltu luomaan äänitehosteita (esimerkiksi peleihin).
Yamaha käytti YM2149F-ydintä koko perheessä musiikkisiruja, joita käytettiin matkapuhelimissa, videopeleissä jne. Esimerkiksi YM2203 -siru (tunnetaan myös nimellä OPN) sisältää oman taajuusmodulaatiosyntetisaattorinsa (FM) lisäksi. YM2149F:n täysimittainen analogi, joka on täysin yhteensopiva rekisterien lukumäärän ja tarkoituksen suhteen (sarjan seuraava siru YM2612 sisältää kuitenkin vain FM-osan 2203).
Monet MSX2 -tietokoneet ja jotkut MSX1-tietokoneet käyttävät eri yritysten erikoistuneita "piirisarjan" LSI :itä. Näitä ovat esimerkiksi Yamaha S1985 , S3527 , Toshiba T7775 , T7937 , T9769 mikropiirit . Suuren osan tietokonepiirin lisäksi ne sisältävät myös YM2149F:n täysimittaisen analogin.
Philips kehitti SAA1099 -sirun (käytettiin SAM Coupé -tietokoneessa ja varhaisissa Creative Labs -äänikorteissa IBM PC : lle ). Sen ominaisuudet ovat samanlaiset kuin kahdessa AY-3-8910:ssä (6 kanavaa, 2 kirjekuorta, 2 kohinageneraattoria), muutamalla lisäyksellä. Ohjelmistojen ja laitteistojen yhteensopivuus kuitenkin puuttuu.
Sen lisäksi, että siruemulaatio toteutetaan sitä käyttävien eri järjestelmien emulaattoreissa, on olemassa erilliset siruemulaattorit. Niiden avulla voit toistaa eri järjestelmiin kirjoitettua ja niiden erityismuotoihin tallennettua musiikkia tavallisella tietokoneella. Kuten muissakin vastaavissa äänigeneraattorisiruissa, ohjelmistoemulaatiossa on joitain eroja äänessä verrattuna todelliseen siruun, ja ehkä jopa parempaan suuntaan (selkeämpi ääni, ilman säröä, mikä tekee äänestä hieman erilaisen kuin alkuperäinen). Jos muissa, monimutkaisemmissa mikropiireissä nämä erot johtuvat mikropiirien logiikan epätarkasta emuloinnista, niin AY-3-8910:n ja yhteensopivien mikropiirien tapauksessa kaikki niiden työn hienoudet ja erot tutkitaan täysin. , ja ylinäytteitysongelmasta tulee signaalin erojen pääasiallinen lähde ( uudelleennäytteitys ) (sirun avulla voit tuottaa ääntä jopa useiden satojen kilohertsien taajuuksilla).
Yamahan äänigeneraattorisirut | |
---|---|
PSG | |
OPL | |
OPN |
|
OPM/OPP |
|
OPS |
|
sekalaiset |
|
DAC |
|
DSP |
|