IPB

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в эту темуОткрыть новую тему
> Подключение музыкального процессора к БК0011М, AY-3-8910 AY-3-8912 Yamaha YM2149F YM2149 AY8910 AY8912
SuperMax
сообщение 4.8.2020, 0:17
Сообщение #1


Администратор
*****

Группа: Root Admin
Сообщений: 6 282
Регистрация: 7.1.2006
Из: Красноярск
Пользователь №: 1



Схема RDC (Денис Сотченко) она же московская, частота работы чипа 1.5МГц.
с делителем на распространнёной микросхеме ТМ2.

Используются:
AY-3-8910 AY-3-8912 Yamaha YM2149F
оригинал
Прикрепленное изображение
документация
Прикрепленное изображение
Прикрепленное изображение

перерисовка
Прикрепленное изображение
Прикрепленное изображение

Вообще в идеале частота должна быть 1/2 от поднесущей NTSC (3 579 545,5)
те 1 789 772,75

Однако есть проблема - красивого подключения не получится - будет куча соплей:Прикрепленное изображение


Ссылки
https://zx-pk.ru/threads/27705-podklyuchenie-muzykalnogo-protsessora-k-bk0011m-na-primere-ym2149f.html
https://zx-pk.ru/threads/20933-plata-bk0011...rbo-74f198.html




--------------------
Живы будем - Не помрем !
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
SuperMax
сообщение 4.8.2020, 0:18
Сообщение #2


Администратор
*****

Группа: Root Admin
Сообщений: 6 282
Регистрация: 7.1.2006
Из: Красноярск
Пользователь №: 1



Cамарская схема, для частоты 1.75 Мгц, т.е. как на синклере-спектруме,
ныне подобная используется в новоделе БК11М с AY и одной микросхемой ОЗУ.




--------------------
Живы будем - Не помрем !
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
SuperMax
сообщение 27.10.2021, 21:25
Сообщение #3


Администратор
*****

Группа: Root Admin
Сообщений: 6 282
Регистрация: 7.1.2006
Из: Красноярск
Пользователь №: 1



Правильная схема

Прикрепленное изображение



--------------------
Живы будем - Не помрем !
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
SuperMax
сообщение 9.11.2021, 13:49
Сообщение #4


Администратор
*****

Группа: Root Admin
Сообщений: 6 282
Регистрация: 7.1.2006
Из: Красноярск
Пользователь №: 1



Подборка даташитов

Прикрепленный файл  AY_3_8910_AY_3_8912_AY_3_8913.pdf ( 535.45 килобайт ) Кол-во скачиваний: 464

Прикрепленный файл  AY_3_8910_AY_3_8912_AY_3_8913_.pdf ( 532.37 килобайт ) Кол-во скачиваний: 468

Прикрепленный файл  ym2149.pdf ( 6.08 мегабайт ) Кол-во скачиваний: 492

Прикрепленный файл  AY_3_8910_AY_3_8912.pdf ( 720.51 килобайт ) Кол-во скачиваний: 464

Прикрепленный файл  ym2149_.pdf ( 769.14 килобайт ) Кол-во скачиваний: 486

Прикрепленный файл  home.udmnet.ru.rar ( 64.28 килобайт ) Кол-во скачиваний: 467

Прикрепленный файл  generalinstrument_ay_3_8910.pdf ( 905.99 килобайт ) Кол-во скачиваний: 539

Прикрепленный файл  AY_3_8910_AY_3_8912_.pdf ( 445.16 килобайт ) Кол-во скачиваний: 467

Прикрепленный файл  Data_Manual_GI_AY_3_8910_Feb_1979.pdf ( 1.9 мегабайт ) Кол-во скачиваний: 516



--------------------
Живы будем - Не помрем !
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
SuperMax
сообщение 29.5.2022, 0:16
Сообщение #5


Администратор
*****

Группа: Root Admin
Сообщений: 6 282
Регистрация: 7.1.2006
Из: Красноярск
Пользователь №: 1



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

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

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





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

  • Три программируемых генератора треугольных импульсов (тона), без возможности изменения скважности сигнала
  • Один программируемый генератор псевдо шума с периодичностью 16 кб (128 кбит)
  • Один генератор огибающей, производящей амплитудную модуляцию тона, шума, либо их смеси, а также звучащий сам по себе при выборе звуковой частоты
  • Логический микшер (смешивает выход генераторов шума и огибающей с одним или несколькими каналами тона)
  • Раздельные выходы звука трёх каналов тона (могут быть смешаны как в монофонический, так и в стереофонический сигнал)
  • Два порта ввода-вывода общего назначения
  • Программируемое усиление [2]>
AY-3-8910 представляет собой конечный автомат, состояние которого задаётся с помощью шестнадцати 8-разрядных регистров. Они программируются через 8-разрядную внешнюю шину, использующуюся как для передачи данных, так и для задания адреса регистра — режим переключается сменой уровня на специальном выводе микросхемы. Типичный цикл передачи значения: шина переключается в режим задания адреса, передаётся адрес, шина переключается в режим передачи данных, передаются данные. Эта шина изначально была реализована на собственных процессорах GI, но ее пришлось воссоздавать с помощью логики или дополнительного интерфейсного адаптера, такого как MOS Technology 6522, однако чип использовался с гораздо более распространенной технологией MOS 6502 или Zilog Z80

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

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

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

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

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

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











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

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

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

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

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

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

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

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

Микросхемы Winbond WF19054, China JFC95101, WB5300 и Jile KC89C72 также являются клонами AY-3-8910.



--------------------
Живы будем - Не помрем !
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
SuperMax
сообщение 22.9.2022, 14:03
Сообщение #6


Администратор
*****

Группа: Root Admin
Сообщений: 6 282
Регистрация: 7.1.2006
Из: Красноярск
Пользователь №: 1



2AY реализованные варианты для БК

На момент написания этого текста существует три варианта подключения спаренных чипов AY-3-8910 (YM2149F) к БК-0011(0010).

Первый вариант. Маски разрядов 14. и 15. порта 177714.

Основан на переключении AY при помощи старших разрядов 14. и 15. порта 177714. Суть в следующем. Поскольку обмен с AY

происходит путем отправки пары "регистр AY (слово)- данные (байт)", то в момент отправки слова с номером регистра AY

один из битов 14. или 15. устанавливается, как маска, что позволяет подключить нужный AY. Например, нужно отправить

данные регистра 7 одного из AY в 177714:
Код


MOV #100007, R0 ;ПОМЕСТИЛИ НОМЕР РЕГИСТРА AY В МЛАДШИЙ БАЙТ
COM R0     ;ДАННЫЕ ДЛЯ ОТПРАВКИ В 177714 ИНВЕРСНЫЕ
MOV R0, @#177714;ОТПРАВИЛИ СФОРМИРОВАННОЕ СЛОВО И УСТАНОВИЛИ ДЛЯ ЗАПИСИ РЕГИСТР 7 ТРЕБУЕМОГО AY
MOV #100005, R0 ;ТЕПЕРЬ НУЖНО ОТПРАВИТЬ НАПРИМЕР ЗНАЧЕНИЕ 5 В УСТАНОВЛЕННЫЙ ВЫШЕ РЕГИСТР ПОДКЛЮЧЕННОГО AY
COMB R0     ;ИНВЕРСНЫЕ ДАННЫЕ ДЛЯ ОТПРАВКИ В 177714
MOVB R0, @#177714;ОТПРАВИЛИ БАЙТ И ЗАПИСАЛИ ЗНАЧЕНИЕ В УСТАНОВЛЕННЫЙ РЕГИСТР ПОДКЛЮЧЕННОГО AY

Для записи в регистр другого AY программный код будет аналогичным, только вместо MOV #100000,R0 следует указать MOV #40000,R0

т.е. установить 14.-й разряд.

Данный вариант подключения обратно совместим, т.к. все legacy ("старые") проигрыватели при отправке данных в 177714 ничего не

записывают в старший байт, и соответственно не трогают биты 14. и 15. Единственное "но" при этом оба AY "играют" параллельно

одно и то же. На слух это иногда звучит оригинально, но для истинных ценителей желательно предусмотреть возможность физического

отключения одного из AY.

Второй вариант. Стандарт TurboSound.

Плата TurboSound спроектирована и реализована так, что ее можно подключить на место существующего чипа AY-3-8910 (YM2149F)

и она будет работать как с legacy ("старыми") проигрывателями так и с новыми, которые поддерживают способ переключения двух AY.

Этот способ подключения очень прост. Что бы переключить AY потребуется отправка слова в порт 177714 с номером несуществующего

регистра AY. В стандарте TurboSound этими регистрами выбраны значения 255. и 254. Программно это выглядит достаточно просто.

Перед отправкой основных данных управления регистрами AY в порт 177714 пишется подключение нужного AY:
Код

MOV #255., R0 ;ДЛЯ ПОДКЛЮЧЕНИЯ AY#1 УСТАНОВИМ ЗНАЧЕНИЕ 255. (ИЛИ 254. ДЛЯ AY#2)
COM R0     ;ДАННЫЕ ДЛЯ ОТПРАВКИ В 177714 ИНВЕРСНЫЕ
MOV R0, @#177714;ОТПРАВИЛИ СЛОВО И УСТАНОВИЛИ НУЖНЫЙ AY
...     ;ДАЛЕЕ ИДЕТ ОБЫЧНАЯ ОТПРАВКА ДАННЫХ ДЛЯ AY

Для legacy проигрывателей все остается по старому. Т.е. после RESET на БК, порт 177714 устанавливается в инверсную -1,

что соответствует значению 255. или подключению AY#1.

Третий вариант. Внешнее устройство AZBK.

В AZBK произошел полный отказ от использования 177714 для 2хAY и были реализованы новые порты для управления 2xAY.
(legacy AY 177714 конечно поддерживается)
Это:
Код

177172    - для указания номера регистра AY#1
177173    - для записи данных указанного в 177172 номера регистра AY#1
177174    - для указания номера регистра AY#2
177175    - для записи данных указанного в 177174 номера регистра AY#2

Все порты байтовые! Кроме этого, для управления AY теперь не требуется инверсия передаваемых данных, а порты доступны как для записи, так и для чтения.

Запись данных в нужные AY выглядит просто:
Код

MOVB #2, @#177172;УСТАНОВИЛИ РЕГИСТР 2 AY#1
MOVB #124, @#177173;ОТПРАВИЛИ ДАННЫЕ В УКАЗАННЫЙ ВЫШЕ РЕГИСТР AY#1
MOVB #5, @#177174;УСТАНОВИЛИ РЕГИСТР 5 AY#2
MOVB #30, @#177175;ОТПРАВИЛИ ДАННЫЕ В УКАЗАННЫЙ ВЫШЕ РЕГИСТР AY#2

Все указанные реализации были проверены с помощью написанного мной универсального проигрывателя, который поддерживает все

варианты:

https://disk.yandex.ru/d/Rv26trQndwKexw

2022, Владимир 'KUVO' Кутяков / CSI

Прикрепленный файл  2AY_universal_player_by_KUVO.zip ( 5.89 мегабайт ) Кол-во скачиваний: 177



--------------------
Живы будем - Не помрем !
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 



Текстовая версия Сейчас: 29.3.2024, 3:45