YM2149

YM2149
AY-3-8910A производства Microchip на плате компьютера Daewoo CPC-300E

AY-3-8910 — электронный компонент, микросхема, выполняющая функцию трёхголосного программируемого звукогенератора (PSG, Programmable Sound Generator по терминологии производителя). Разработана фирмой General Instrument (нынешний Microchip), изначально предназначалась для использования с 16-разрядным процессором CP1610 той же фирмы, и с 8-разрядными микроконтроллерами серии PIC1650. AY-3-8910 и её варианты широко использовались во многих игровых автоматах, игровых приставках и домашних компьютерах. Помимо General Instrument, эта микросхема производилась по лицензии разработчика фирмами Microchip (в то время - сторонний производитель кристаллов), Micrel (под оригинальным названием) и другими (под различными названиями), а также фирмой YM2149, SSGSoftware-controlled Sound Generator по терминологии производителя).

Одно из первых применений AY-3-8910 относится к 1980 году, в игровом автомате Carnival от Sega. Совместимые с AY-3-8910 микросхемы применяются и в настоящее время. Их производство прекращено, однако сохранился запас ранее произведённых микросхем, и они продолжают продаваться, например, для ремонта старых компьютерных систем. Существует FPGA-репликах игровых автоматов и других ретро-компьютерных систем. Исходный VHDL-код свободно доступен в сети Интернет, в скомпилированном виде он занимает около 10 процентов объёма

Считается, что AY-3-8910 имеет возможности генерации звука, аналогичные микросхеме Texas Instruments SN76489 (создана и продавалась в тот же период времени). Однако, хотя их общие характеристики похожи, эти микросхемы имеют достаточно различные возможности. Творческий подход к использованию AY-3-8910 позволяет получать гораздо более сложный звук, чем у SN76489.

Содержание

Известность в России

В нашей стране микросхема AY-3-8910 получила известность благодаря её применению в компьютере ZX Spectrum 128, и, соответственно, в его многочисленных отечественных клонах. За время популярности ZX Spectrum в нашей стране существовало более тысячи людей, писавших музыку для AY-3-8910. Всего для чипа было написано более 22 000 композиций.[1] Эта микросхема создала среди отечественных компьютерных музыкантов начала 90-х годов свою субкультуру, аналогичную созданной микросхемой SID компьютера Commodore 64 в других странах. В настоящее время осталось некоторое количество энтузиастов, продолжающих писать музыку для AY-3-8910. В рамках различных фестивалей компьютерного искусства, таких, как Chaos Constructions, присутствуют и соревнования по написанию музыки для этой микросхемы.

Радиолюбители подключали AY-3-8910 ко многим отечественным бытовым компьютерам, в частности, к Вектор-06Ц, Орион-128 и БК-0011.

Описание

AY-3-8910 имеет следующие возможности:

  • Три программируемых генератора прямоугольных импульсов (генераторы тона)
  • Один генератор амплитудной огибающей
  • Один программируемый генератор белого шума
  • Логический микшер (смешивает выход генераторов шума и огибающей с одним или несколькими каналами тона)
  • Программируемое усиление
  • Раздельные выходы звука трёх каналов тона (могут быть смешаны как в монофонический, так и в псевдо-стереофонический сигнал)
  • Два порта ввода-вывода общего назначения

AY-3-8910 представляет собой конечный автомат, состояние которого задаётся с помощью шестнадцати 8-разрядных регистров. Они программируются через 8-разрядную внешнюю шину, использующуюся как для передачи данных, так и для задания адреса регистра — режим переключается сменой уровня на специальном выводе микросхемы. Типичный цикл передачи значения: шина переключается в режим задания адреса, передаётся адрес, шина переключается в режим передачи данных, передаются данные.

Шесть регистров R0..R5 управляют частотой звука, генерируемой тремя основными каналами, с помощью задания значения делителя входной тактовой частоты. Делитель хранится в двух 8-разрядных регистрах для каждого из каналов, однако реальная разрядность счётчика-делителя — 12 разрядов, что даёт 4096 вариантов значения частоты звука.

Регистр R6 задаёт 5-разрядное значение периода для псевдослучайного генератора шума.

Регистр R7 представляет собой логический микшер, содержащий по два бита для каждого канала, в зависимости от которых к каналам подмешивается сигнал генератора шума, либо генератор огибающей. Также в регистре R7 находятся два бита управления портами ввода-вывода общего назначения.

Три регистра R8..R10 управляют громкостью трёх основных каналов (16 уровней), а также имеют бит разрешения использования огибающей.

Три регистра R11..R13 управляют частотой (два регистра, 16-разрядное значение) и формой (один регистр, 16 вариантов) сигнала генератора ADSR-подобной огибающей. В отличие от большинства систем, 8910 использует фиксированные значения времени для фаз плато и затухания, и повторяющуюся последовательность фаз атаки и спада. Для примера, генератор может постоянно повторять цикл атаки-спада, или наоборот, начиная с максимального уровня, постепенно понижая его, без фазы атаки.

Регистры R14 и R15 управляют состоянием входных-выходных линий портов ввода-вывода общего назначения.

Варианты исполнения

AY-3-8912, DIP28

Оригинальный кристалл 8910 имел три варианта исполнения.

AY-3-8910 имела два параллельных восьмиразрядных порта ввода-вывода общего назначения — A и B. Выполнена в 40-выводном корпусе (DIP40).

AY-3-8912 выполнена в 28-выводном корпусе (DIP28). Сигналы порта B не подводятся ко внешним выводам. Такое исполнение снижало стоимость микросхемы и её габариты, что сделало это исполнение наиболее популярным.

AY-3-8913 выполнена в 24-выводном корпусе (DIP24). Сигналы портов A и B не выведены наружу. По сравнению с 8912, габариты уменьшились несущественно, а функциональность снизилась, поэтому это исполнение получило наименьшее распространение.

Назначение выводов микросхемы YM2149 соответствует AY-3-8910, за исключением вывода 26, который включает внутренний делитель входной частоты вдвое, если на него подан низкий уровень. Если этот вывод никуда не подключён, микросхема работает так же, как AY-3-8910. Помимо встроенного делителя входной частоты, YM2149 имеет отличие в разрядности ЦАП огибающей — 5 бит вместо 4 (с логарифмической шкалой). Это создаёт небольшое отличие в тембре звучания, делая его немного более резким, однако позволяющим получить бо́льшую гибкость баса.

YMZ284-D выполнена в 16-выводном корпусе (DIP16). YMZ284-M выполнена в 16-выводном корпусе (SOIC16). Функционально и программно полностью совместим с AY-3-8910, AY-3-8912 и AY-3-8913. Отличительная особенность — малое количество выводов, упрощенный интерфейс, моно аудиовыход.

Microchip AY38910A выполнена в 40-выводном корпусе (DIP40). Полностью совместима с YAMAHA YM2149.

Microchip AY8930. Совместим с Microchip AY38910A. Может быть переключен в расширенный режим: не 4 а 8-битный тональный период, не 5 а 8-битный шумовой период, шум генерируется не жёстким LFSR-механизмом, а с дополнительными программируемыми AND и OR масками.

Микросхемы Windond WF19054 и Jile KC89C22 также являются клонами AY-3-8910.

Творческое использование

Хотя микросхема не имеет специальных возможностей для проигрывания оцифрованных звуков, оно может быть реализовано программно, с помощью использования ЦАП одного или нескольких каналов при запрещённой логическим микшером генерации тона и шума. Такой подход требует большего использования времени процессора, чем при использовании микросхем, специально созданных для воспроизведения цифрового звука (таких, как чип Paula в компьютере Amiga). Но, тем не менее, он широко использовался на таких платформах, как компьютер Atari ST, для воспроизведения цифровой музыки, и на Amstrad CPC для воспроизведения коротких звуковых эффектов в некоторых играх.

Используя ту же технику, но не отключая генерацию тона, возможно расширить возможности генерации различных тембров. В этом случае изменение выходного уровня ЦАП канала используется для модуляции основного тона другой частотой. Таким образом можно получить, например, три независимых амплитудных огибающих любой формы, или тембры, напоминающее звучание микросхемы ZX Spectrum, который не имеет аппаратных возможностей, подобных Atari ST.

В 2006 году два разработчика программ для компьютера MSX создали продвинутый энкодер, преобразующий wave-файлы в наиболее подходящие данные для каналов AY, используя алгоритм поиска Viterbi. Это позволило воспроизводить wave-файл с частотой дискретизации 44100 Герц на компьютере MSX двадцатитрёхлетней давности, с соотношением сигнал-шум выше чем у 8-разрядного ЦАП. Алгоритм поиска Viterbi очень ресурсоёмок, он не мог применяться в 80-х годах, так как в то время не существовало достаточно мощных компьютеров для выполнения такого преобразования.

Некоторые люди, в особенности пользователи компьютера ZX Spectrum, используют микросхему AY для создания музыки, в том числе и для концертных выступлений (см. раздел ссылок).

Список систем

Неполный список систем, в которых использовалась 8910 или её варианты. Не включает различные игровые автоматы, количество которых превышает тысячу.

Игровые приставки:


Wikimedia Foundation. 2010.

Смотреть что такое "YM2149" в других словарях:

  • YM2149 — Der AY 3 8910 Sound Chip Der AY 3 8910 war ein in früheren Heimcomputern und Spielautomaten sehr oft eingesetzter Sound und Multi I/O Chip, der von General Instrument in den frühen 80 er Jahren entwickelt wurde. Auch wurde er leicht verändert an… …   Deutsch Wikipedia

  • Yamaha YM2149 — AY 3 8910A производства Microchip на плате компьютера Daewoo CPC 300E AY 3 8910 электронный компонент, микросхема, выполняющая функцию трёхголосного программируемого звукогенератора (PSG, Programmable Sound Generator по терминологии… …   Википедия

  • YM2149F — AY 3 8910A производства Microchip на плате компьютера Daewoo CPC 300E AY 3 8910 электронный компонент, микросхема, выполняющая функцию трёхголосного программируемого звукогенератора (PSG, Programmable Sound Generator по терминологии… …   Википедия

  • MSX — This article is about the home computer family. For other uses, see MSX (disambiguation) and MSX2 (disambiguation). MSX Sony MSX, Model HitBit 10 P …   Wikipedia

  • AY-3-8912 — Der AY 3 8910 Sound Chip Der AY 3 8910 war ein in früheren Heimcomputern und Spielautomaten sehr oft eingesetzter Sound und Multi I/O Chip, der von General Instrument in den frühen 80 er Jahren entwickelt wurde. Auch wurde er leicht verändert an… …   Deutsch Wikipedia

  • YM-2149 — Der AY 3 8910 Sound Chip Der AY 3 8910 war ein in früheren Heimcomputern und Spielautomaten sehr oft eingesetzter Sound und Multi I/O Chip, der von General Instrument in den frühen 80 er Jahren entwickelt wurde. Auch wurde er leicht verändert an… …   Deutsch Wikipedia

  • General Instrument AY-3-8910 — AY 3 8912 chip en encapsulado DIP de 28 pines. AY 3 8910 chip en encapsulado DIP de 40 pines …   Wikipedia Español

  • Jochen Hippel — (born October 14, 1971) is a musician from Kirchheimbolanden in southwest Germany. He played one of the most prominent roles in computer music during the 16 bit microcomputer era, composing the music for tens of games. He was also an experienced… …   Wikipedia

  • General Instrument AY-3-8910 — pin, and a double resolution but double rate volume envelope table) as the YM2149.It produced very similar results to the Texas Instruments SN76489 and was on the market for a similar period.The chips are no longer made, but a declining stock is… …   Wikipedia

  • AY-3-8910 — Der AY 3 8910 Soundchip aus GI Produktion Der AY 3 8910 Soundchip aus Microchip Pro …   Deutsch Wikipedia


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»