Allgemeines Instrument AY-3-8910 – Wikipedia

before-content-x4

Das AY-3-8910 ist ein programmierbarer 3-Sprach-Soundgenerator (PSG), der 1978 von General Instrument entwickelt wurde und zunächst für den 16-Bit-CP1610 oder einen der 8-Bit-Mikrocomputer der PIC1650-Serie verwendet wurde. Der AY-3-8910 und seine Varianten wurden in vielen Arcade-Spielen verwendet – Konamis Gyruss enthält fünf[1]– und Flipperautomaten sowie der Soundchip in den Videospielkonsolen Intellivision und Vectrex sowie in den Heimcomputern Amstrad CPC, Oric-1, Color Genie, Elektor TV Games Computer, MSX und späteren ZX Spectrum. Es wurde auch in den Mockingboard- und Cricket-Soundkarten für Apple II und die Speech / Sound Cartridge verwendet[2] für den TRS-80 Farbcomputer.

after-content-x4

Nach der Abspaltung von Microchip Technology durch General Instrument im Jahr 1987 wurde der Chip für einige Jahre unter der Marke Microchip verkauft. Es wurde auch unter Lizenz von Yamaha hergestellt (mit einem wählbaren Clock-Divider-Pin und einer Hüllkurventabelle mit doppelter Auflösung und doppelter Lautstärke) YM2149F;; Der Atari ST verwendet diese Version. Es liefert sehr ähnliche Ergebnisse wie das Texas Instruments SN76489 und war für einen ähnlichen Zeitraum auf dem Markt.

Die Chips werden nicht mehr hergestellt, aber funktional identische Klone werden noch aktiv produziert. Eine inoffizielle VHDL-Beschreibung ist für die Verwendung mit FPGAs frei verfügbar.

Beschreibung[edit]

Der AY-3-8910 war im Wesentlichen eine Zustandsmaschine, wobei der Zustand in einer Reihe von 16 8-Bit-Registern eingerichtet wurde. Diese wurden über einen 8-Bit-Bus programmiert, der sowohl für die Adressierung als auch für die Daten verwendet wurde, indem einer der externen Pins umgeschaltet wurde. Zum Beispiel würde ein typischer Einrichtungszyklus den Bus in den “Adressmodus” versetzen, um ein Register auszuwählen, und dann in den “Datenmodus” wechseln, um den Inhalt dieses Registers einzustellen. Dieser Bus wurde nativ auf GI-eigenen CPUs implementiert, musste jedoch in Klebelogik oder mithilfe eines zusätzlichen Schnittstellenadapters wie der MOS-Technologie 6522 neu erstellt werden, wenn der Chip mit der weitaus häufigeren MOS-Technologie 6502 oder Zilog Z80 verwendet wurde CPUs.

Sechs Register steuerten die Tonhöhen, die in den drei Primärkanälen erzeugt wurden. Die zu erzeugende Wellenlänge wurde in zwei Acht-Bit-Registern gehalten, die jedem Kanal zugeordnet waren, aber der Wert wurde aus anderen Gründen für insgesamt 4095 auf 12 Bit begrenzt (der Registerwert wird als Frequenzteiler verwendet und 0 wird als behandelt 1) verschiedene Tonhöhen. Ein anderes Register steuerte die Periode eines Pseudozufallsrauschgenerators (insgesamt 31 verschiedene Zykluszeiten), während ein anderes die Mischung dieses Rauschens in die drei Primärkanäle kontrollierte.

Drei zusätzliche Register regelten die Lautstärke der Kanäle und schalteten die optionalen Hüllkurvenregler ein oder aus. Schließlich steuerten die letzten drei Register die Zeiten der Hüllkurvensteuerung, indem sie den Hüllkurventyp und die Hüllkurvenzykluszeit einstellten. Insgesamt acht Umschlagtypen umfassen Sägezahnform oder Dreiecksform, beginnend mit Maximum oder Minimum. Die Form kann auch so eingestellt werden, dass sie sich für einen Zykluseffekt wiederholt. Insgesamt können 65535 verschiedene Zykluszeiten eingestellt werden. Da nur eine Hüllkurve von allen drei Kanälen gemeinsam genutzt wurde, ignorierten viele Programmierer diese und programmierten ihre eigenen Hüllkurven-Controller in Software (direkte Lautstärkeregelung). Ein bekannter Trick bestand darin, die Hardware-Hüllkurve bei Zykluszeiten über 20 Hz auszuführen, um Sägezahn- oder Pulswellen-ähnliche Bassklänge zu erzeugen.

Obwohl es nur 16 Register gibt, müssen die vier MSB-Bits des 8-Bit-Busses bei der Auswahl eines Registers auf den werkseitigen Standardwert ‘0000’ gesetzt werden. Durch falsches Setzen der MSB-Bits ignoriert der Chip den Registerwechsel. General Instruments hat Bestellungen für benutzerdefinierte MSB-Bits entgegengenommen (werkseitig auf “0000” eingestellt). Die Chips, die mit benutzerdefinierten MSB-Registerbits hergestellt wurden, ermöglichen es demselben Prozessor, mehr als einen AY-Chip auf demselben Bus zu steuern (z. B. Mockingboard-Soundkarte für Apple oder TurboSound für ZX Spectrum). Auf dem Sekundärmarkt gibt es viele NOS-Chips (New-Old-Stock), bei denen die MSB-Bits werkseitig auf einen Wert eingestellt sind, der nicht ‘0000’ ist. Der Wert ungleich 0000 kann für Entwickler und Reparaturtechniker erhebliche Entwicklungsprobleme verursachen. Software muss geschrieben werden, um den korrekten Wert der MSB-Bits auf einem bestimmten Chip zu identifizieren. Außerdem muss die Software geändert oder Hardware hinzugefügt werden, damit diese werkseitig eingestellten MSB-Chips anstelle der Standardchips ‘0000’ verwendet werden können.

after-content-x4

Der AY-3-8910 erzeugt Töne mit Grundfrequenzen von bis zu 125 kHz (4 MHz Eingangstakt oder 8 MHz mit dem YM2149F), weit über die menschliche Wahrnehmung hinaus und in den Ultraschallbereich. Das Vorhandensein von Ultraschallwerten ist eine Folge des Frequenzteilerdesigns; Um eine angemessene Auflösung bei hörbaren Frequenzen zu erreichen, muss die Gesamttaktrate (und damit die Ausgabe bei kleinen Teilern) erheblich höher sein als der hörbare Bereich. Nur Teiler unter 5 geben ausschließlich Ultraschall-Ausgangsfrequenzen an. Frequenzen, die der oberen Oktave einer Klaviertastatur entsprechen, können mit angemessener Genauigkeit gegenüber den akzeptierten Notenwerten für die gleichmäßig temperierte Skala mit einer Genauigkeit von fast 1 Hz im A440-Bereich und noch feiner bei niedrigeren Tonhöhen definiert werden. Trotz der hohen Maximalfrequenz bedeutet die Fähigkeit, diese Zahl durch 4096 zu teilen, dass die niedrigste direkt definierbare Ausgangsfrequenz 30,6 Hz beträgt, was ungefähr B0 entspricht, der drittniedrigsten Note eines normalen Klaviers mit 88 Tasten und so gut wie Unterschall mit Alltagslautsprechern Systeme. Im Wesentlichen ist der Chip in der Lage, eine anständige Musikausgabe in allen vernünftigen Tonhöhen zu erzeugen, die in den meisten Kompositionen zu finden sind.

Im Gegensatz dazu hat der SN76489 nur 10 Bit Genauigkeit für seine Frequenzteiler. Bei gleicher Grundfrequenz von 125 kHz sollten theoretisch die beiden niedrigsten Oktaven des PSG fehlen. Um dies zu umgehen, spielt der SN76489 seine Tongeneratoren eine Oktave niedriger als die berechnete Frequenz, sodass er im Bass eine Oktave weniger und im oberen Bereich eine Oktave weniger spielt als das PSG.

Varianten[edit]

AY-3-8912-Chip, 28-poliges DIP-Gehäuse mit Computergehäuseschraube für Waage

YM2149F-Chip, 40-poliges DIP-Gehäuse

Der 8910 Siliziumchip wurde in drei verschiedenen Paketen verkauft.

Das AY-3-8910 verfügt über zwei universelle 8-Bit-Parallel-E / A-Ports A und B, die im gleichnamigen 40-Pin-Gehäuse verfügbar sind.

Das AY-3-8912 ist der gleiche Chip in einem 28-poligen Gehäuse, wobei der parallele Anschluss B einfach nicht mit einem Stift verbunden ist. Kleinere Pakete sparen Kosten und Platz auf der Platine. Der 8912 war die am weitesten verbreitete Variante.

Das AY-3-8913 ist der gleiche Chip in einem 24-poligen Gehäuse, wobei beide parallelen Ports nicht verbunden sind. Einige Benutzer hielten die geringe Reduzierung der Pin-Anzahl gegenüber dem 8912 für weniger interessant. Die E / A-Register wurden jedoch nur selten von Designern verwendet, sodass General Instruments diese voll funktionsfähige 24-Pin-Alternative entwickelte und sie ungefähr 6 Monate nach den Chips 8910 und 8912 veröffentlichte. Ziel war es, die Komplexität für den Designer zu verringern und den Platzbedarf auf der Leiterplatte zu verringern.

Die Yamaha YM2149F Der ‘SSG’-Chip hat die gleiche Pinbelegung wie der AY-3-8910, mit dem kleinen Unterschied, dass Pin 26 die Hauptuhr halbieren könnte, wenn er nach unten gezogen wird. Wenn die Verbindung nicht angeschlossen wird, wie dies beim Ersetzen eines AY-3-8910-Chips der Fall wäre, zieht ein interner Widerstand den Pin hoch, sodass der Haupttakt nicht halbiert wird.

Die Yamaha YM3439 ist eine CMOS-Version des YM2149F. Es ist in zwei Gehäusen erhältlich: 40-poliges DIP (YM3439-D) und 44-poliges QFP (YM3439-F).

Die Yamaha YMZ294 ist eine der neuesten Varianten des YM2149, jedoch in einem 18-poligen Gehäuse. Hat keine parallelen Ports und nur einen Soundausgang mit den drei gemischten Kanälen.

Die Yamaha YMZ284 ist eine noch kleinere Variante des YM2149 in einem 16-poligen Gehäuse. Es ist im Grunde YMZ294 ohne den 4/6-MHz-Auswahl-Pin und den / TEST-Pin.

Die Yamaha YMZ285 hat ein 28-poliges Gehäuse und verfügt über ein eingebautes PCM. Hat keine parallelen Ports und zwei Soundausgänge: einer mit den drei gemischten SSG-Kanälen, der andere mit dem PCM-Ausgang.

Das Toshiba T7766A ist ein kompatibler Chip mit der gleichen Pinbelegung wie der AY-3-8910 und wurde in einigen MSX-Modellen verwendet.

Der Winbond WF19054, JFC 95101 und die Datei KC89C72 haben die gleiche Pinbelegung wie der AY-3-8910 und sind zu 100% softwarekompatibel. Sie sind noch in Produktion und werden an vielen Spielautomaten eingesetzt.

Das AY-3-8914 hat die gleiche Pinbelegung und befindet sich im gleichen 40-Pin-Gehäuse wie die AY-3-8910, außer dass die Steuerregister auf dem Chip herumgemischt werden und der ‘erwartete Eingang’ am A9-Pin unterschiedlich sein kann. Ansonsten ist es genau das gleiche wie das AY-3-8910. Es wurde auf der Mattel Intellivision verwendet.

Das AY-3-8930, auch bekannt als AY8930ist eine verbesserte, aber größtenteils abwärtskompatible Version des AY-3-8910. Die Funktion des BC2-Pins wird geändert (er wird ignoriert und unabhängig vom Pin-Status als 0 angenommen), andernfalls ist die Pinbelegung dieselbe wie die AY-3-8910. Diese Variante des Chips fügt eine Reihe wichtiger Verbesserungen hinzu, wie separate Hüllkurven für die drei Kanäle (im Gegensatz zu einer gemeinsam genutzten Hüllkurve), variable Arbeitszyklen, mehr Genauigkeitsbits für Notenfrequenz, Lautstärke und Hüllkurvenfrequenz und a viel mehr konfigurierbarer Geräuschgenerator. Es wurde auf der Covox Sound Master-Soundkarte für den IBM-PC verwendet. Nur sehr wenige Spiele nutzten es über das Normale hinaus AY-3-8910 Eigenschaften. Dieser Chip wurde möglicherweise nur von Microchip Technology hergestellt.

Verwandte Chips[edit]

Yamaha verwendete den YM2149-Kern, um eine ganze Familie von Musikchips herzustellen, die in Mobiltelefonen, Heimcomputern, Heim- und Arcade-Videospielsystemen usw. verwendet wurden. Beispielsweise ist der YM2203 (auch als OPN bekannt) ein YM2149 plus FM. Neben den weitaus fortschrittlicheren Nachfolgern: dem YM2608 (auch als OPNA bekannt), der alle vorherigen Funktionen beibehielt und diese stark erweiterte, dem YM2612 (auch als OPN2 bekannt), der viele Funktionen einschließlich der YM2149-Soundkanäle und E / A-Ports entfernte und das YM2610 (OPNB), das andere Funktionen hinzufügte und den YM2149-Sound beibehielt, jedoch nicht die E / A-Ports.

Siehe auch[edit]

Verweise[edit]

Externe Links[edit]


after-content-x4