YM2612 , он же OPN2 , — звуковой чип , разработанный Yamaha . Он входит в семейство OPN чипов FM-синтеза Yamaha и является производным от YM2203 . [1]
YM2612 — это шестиканальный FM-синтезатор, используемый в нескольких игровых и компьютерных системах, в частности в игровой консоли Mega Drive/Genesis от Sega [2], а также в серии компьютеров FM Towns от Fujitsu . [3] Он также был доступен в КМОП- формате как YM3438, также известный как OPN2C. [1]
Как и YM3438, он использовался Sega в различных аркадных игровых системах, включая Mega-Play , Sega System C и Sega System 32 , при этом YM3438 был интегрирован в ASIC в более поздних моделях Mega Drive/Genesis.
YM2612 имеет следующие особенности: [1]
Блок синтеза FM YM2612 представляет собой расширенную версию блока FM, представленного в YM2203, в который добавлены три дополнительных канала FM и интегрирован ЦАП стереовыхода . [ 1] В YM2612 удален компонент SSG (хотя сохранены его генераторы огибающей ) и порты GPIO, обнаруженные в YM2203, YM2608 и YM2610 . [1] Хотя YM2612 в основном был основан на YM2203, его часто называли основанным на YM2608 из-за ряда сходств между двумя звуковыми чипами, за исключением отсутствия каналов ADPCM последнего среди других вышеупомянутых изменений.
В то время как высокопроизводительные чипы OPN, такие как YM2608, имеют выделенные каналы ADPCM для воспроизведения сэмплированного звука, YM2612 этого не делает. Однако его шестой канал может действовать как базовый канал PCM с помощью регистра «DAC Enable», отключая выход FM для этого канала, но позволяя ему воспроизводить 8-битные сэмплы импульсно-кодовой модуляции звука. [1] В отличие от других OPN с ADPCM, YM2612 не обеспечивает никакой синхронизации или буферизации сэмплов, поэтому все управление частотой и буферизация должны выполняться программно хост-процессором. [2]
В отличие от большинства FM-чипов Yamaha, которым требуется внешний ЦАП с плавающей точкой, YM2612 оснащен встроенным 9-битным ЦАП, который использует временное мультиплексирование для последовательного воспроизведения одного сэмпла каждого канала, аналогично YM2413 .
Из-за ошибки с амплитудным напряжением в оригинальной конструкции чипа в выходной сигнал вводится своеобразная форма искажения кроссовера, известная как искажение низкой громкости (и исторически известная как «эффект лестницы» или «искажение TDM»). Любой выходной сигнал, который имеет достаточно низкую громкость, подвергается преувеличенному квантованию, включая любое использование затухания в музыке видеоигр. Некоторые ранние игры Mega Drive/Genesis, такие как After Burner II, имели свою музыку, написанную вокруг этого искажения, и в результате музыка звучит слишком тихо на более поздних консолях Mega Drive/Genesis, которые используют интегрированный чип YM3438 на ASIC. Кроме того, из-за уменьшенного динамического диапазона встроенного ЦАП, могут возникать дополнительные искажения при воспроизведении звуков с очень высокой громкостью. [1]
В последние годы ошибка искажения низкой громкости в YM2612 была успешно эмулирована в программном обеспечении и с тех пор была реализована как функция во многих эмуляторах Mega Drive/Genesis. Другие варианты YM2612, которые уменьшили ошибку искажения низкой громкости, такие как YM3438, также эмулируются и были реализованы во многих эмуляторах Mega Drive/Genesis.
YM3438 , [1] он же OPN2C , является модифицированной версией CMOS YM2612, обычно используемой в игровых платах Sega . Эта версия имеет улучшенный встроенный ЦАП с более высоким отношением сигнал/шум , чем YM2612, а также значительно сниженным искажением на низкой громкости. Однако это не прямая замена YM2612, поскольку звуковые выходы имеют более высокое сопротивление.
YMF276 , [5] он же OPN2L , — это маломощная версия YM3438, используемая в более поздних моделях серии Fujitsu FM Towns (в частности, в моделях FM Towns II). Она выпускалась в меньшем 24-контактном корпусе SOP. В отличие от YM2612 и YM3438, YMF276 требует внешнего чипа ЦАП, как и большинство других чипов Yamaha FM. Обычно это внешний чип ЦАП YM3433B (используемый в моделях FM Towns II) или другие эквивалентные чипы ЦАП. Таким образом, он не создает значительных искажений низкой громкости, как чипы YM2612/YM3438, из-за использования внешнего чипа ЦАП.
Ядро YM3438 было интегрировано в пользовательские микросхемы ASIC [6], используемые в финальной версии версии Model 1 и большинстве версий версии Model 2 Sega Mega Drive/Genesis , а также в Genesis 3, выпущенной Majesco. Ядро YM3438 в этих версиях еще больше уменьшило наличие ошибки искажения низкой громкости, чем с автономными чипами YM3438.
Используемый совместно с Texas Instruments SN76489 PSG в качестве основного звукового генератора консоли Sega Mega Drive/Genesis, YM2612 активно использовался многочисленными плодовитыми композиторами видеоигровой музыки, наиболее известным из которых является Юдзо Косиро . [4] [7]