User Tag List

Показано с 1 по 10 из 93

Тема: Доработки General Sound

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Master Аватар для Northwood
    Регистрация
    06.01.2011
    Адрес
    г. Днепр, Украина
    Сообщений
    804
    Спасибо Благодарностей отдано 
    43
    Спасибо Благодарностей получено 
    198
    Поблагодарили
    100 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Доработки General Sound

    Всем добрый день.

    Хочу посвятить тему доработкам General Sound-а, разумеется я имею ввиду именно General Sound на рассыпухе, а не более современные разработки.

    1. Разгон GS:
    Самая главная проблема General Sound-а, которая и заставила меня поднять эту тему - нехватка вычислительных ресурсов процессора для одновременного воспроизведения инструментов в 4-х каналах. Увы, есть ряд MOD-мелодий, на которых эта проблема выливается в скрежет и снижение тональности.

    А теперь смотрим:
    Тактовая частота процессора и ОЗУ в GS - 12 МГц.
    Частота прерываний процессора - 37.5 КГц. Проигрывание звука происходит по прерываниям, т.е. частота дискретизации звука = частоте прерываний.

    При этом тактов за прерываний у процессора всего лишь 12000 / 37.5 = 320. И как показала практика, этого недостаточно.

    Например, запустите какой-нибудь редактор MODов, загрузите любую мелодию, имеющую зацикленные инструменты. Зайдите в режим редактирования, и очистите от нот и параметров текущую позицию. Выберите какой-нибудь зацикленный инструмент, введите любую ноту этого инструмента в одном канале - GS его будет отлично воспроизводить. Перейдите во второй канал, введите ноту этого же инструмента - GS будет уже отлично воспроизводить этот инструмент в двух каналах. Тоже самое проделайте и для третьего канала - тоже будет всё ОК.
    Наконец, как только вы введёте ноту этого же инструмента в 4-м канале, начнутся глюки - тональность воспроизведения упадёт сразу во всех 4 каналах, звук превратится в скрежет.

    Точно такой же скрежет наблюдается на ряде MOD-мелодий, которые увы, нормально не послушаешь.

    Причина этой ситуации понятно - когда (в 1995 г) авторы разрабатывали железо GS, тогда самое лучше, что было в наличии из Z80 - это 10-МГц вариант Z84C0010PEC, и авторы и так его разогнали его до 12 МГц. А снижать частоту прерываний ниже 37.5 КГц, тоже было уже нельзя - звук тогда был бы значительно хуже по качеству, и вся затея стала бы бессмысленной. Авторы выбрали золотую середину, доступной в те годы.

    Теперь же ситуация изменилась - появились Z84C0020PEC, расчитанные минимум на 20 МГц, а так же если постараться, то можно найти и статическое ОЗУ с временем доступа 55 нс и даже быстрее.

    Поэтому я предлагаю несколько вариантов доработки, одна из них наиболее простая и требует минимальных затрат. С неё и начну:

    Вариант 1)
    Нужно заменить кварцевый резонатор с 12 МГц на 15 МГц. Чтобы получить прежнюю частоту прерываний 37.5 КГц, нужно будет заменить микросхему двоичного счётчика 1533ИЕ19 на десятичный, если удастся найти двойной десятичный счётчик, то это будет то что доктор прописал. Коэффициент деления можно будет получить 400, что даст нам частоту прерываний 37.5 КГц и 400 тактов процессора за прерывания вместо 320.

    Кварц на 15 МГц достать можно, я поищу, что можно найти из подходящих счётчиков, и займусь доработкой.

    После этого хочу попробовать другие варианты, о которых напишу позже.

    2. Расширение памяти GS до 2Мб при обязательном отсутствии на плате GS микросхем памяти 62256.

    Суть простая:

    По классической схеме расширения ОЗУ до 2 Мб, на плате GS должны стоять двумя бутербродами 4 микросхемы основного ОЗУ общим объёмом 128 Кб, и на плате расширения установлено ОЗУ объёмом 2 Мб. При этом первые 128 Кб (4 страницы) просто перекрываются микросхемами ОЗУ на плате GS, поэтому на плате расширения эти страницы просто остаются не использованными.

    Моя плата расширения ОЗУ призвана устранить этот недостаток, теперь ставить на плату GS 2 бутерброда ОЗУ не надо, соответственно на 4 микросхемы 62256 уменьшаются и материальные затраты. Кроме этого, решается вопрос избавления от медленных микросхем ОЗУ 62256 с временем доступа 120-150 нс, что даёт возможность потом разогнать GS. Кроме этого, в качестве логики я решил использовать микросхемы в корпусах DIP, т.к. достать их проще, чем в SOP или SOIC корпусах.

    Эта схема расширения ОЗУ требует наличие 3-х доработок на плате GS. Если у вас GS собран из новодела на новой плате, на которой уже учтено расширение памяти до 2 Мб по старой схеме, то доработки № 2 и № 3 у вас уже есть, остаётся ввести только доработку № 1.

    Все обозначения сигналов я использовал по схеме GS из PDF файла, сами PDF с принципиальной и монтажной схемами GS во вложении.

    Описание всех доработок платы GS:

    № 1 B5 - берётся с DD9 (ИД7) выв.14 (сигнал RAM1) - активируется в адресном пространстве #4000-#7FFF
    № 2 B6 - подаётся на DD13 (ИД7) на выв.6 вместо сигнала /K1 (блокировка ПЗУ при обращении к любой странице ОЗУ)
    № 3 B7 - берётся с DD7 (ТМ8) выв.9 (тактовый сигнал порта #00)

    Принципиальная схема:



    Рисунок платы в масштабе 3х1:



    Смоделированное изображение будущей печатной платы, тоже в увеличенном масштабе:



    список микросхем:

    DD1-DD4 - K6T4008C1B-GB55 (можно GB70)
    DD5 - 1533КП11
    DD6 - 1533ТМ8
    DD7 - 1533ИД7
    DD8 - 1533ЛИ1 (лучше 1531 или 531 в случае разгона процессора)
    DD9 - 1533ЛЕ1 (лучше 1531 или 531 в случае разгона процессора)

    По микросхемам памяти: Самая главная здесь микросхема ОЗУ - DD1, без неё GS работать не будет. Остальные можно ставить, можно нет, от этого будет зависеть кол-во найденных страниц памяти.

    Сами микросхемы ОЗУ можно ставить и меньшего объёма, если они будут в таком же корпусе SOP-32.

    Доступный объём ОЗУ для МОДов будет точно таким же, как и с классическим расширением ОЗУ:

    1 микросхема DD1 емкостью 512 Кбайт - 512-16-32 = 464 Кб ("PRINT IN 179" должен выдать 14 страниц)
    2 микросхемы емкостью по 512 Кбайт - 1024-16-32 = 976 Кб ("PRINT IN 179" должен выдать 30 страниц)
    3 микросхемы емкостью по 512 Кбайт - 1536-16-32 = 1488 Кб ("PRINT IN 179" должен выдать 46 страниц)
    4 микросхемы емкостью по 512 Кбайт - 2048-16-32 = 2000 Кб ("PRINT IN 179" должен выдать 62 страницы)

    32 Кб из общего объёма памяти недоступны, т.к. 0-я страница ОЗУ перекрывается ПЗУ. Эта особенность присутствует и в классическом расширении, и в этом.

    16 Кб из общего объёма используются самим GS для собственных нужд, это 1-я страница ОЗУ, и её половинка проецируется в адресное пространство #4000...#7FFF.

    Фото готовых 4-х плат:



    Фото собранной платы:



    В идеале разъём на плате должен быть 36-контактным, но такой найти не реально. Зато без проблем можно купить 40-контактный, поэтому на плате я предусмотрел лишние 4 отверстия.

    Фото, как должна быть установлена плата расширения в случае применения 40-контактного разъёма:



    Результат:

    Вложения Вложения
    • Тип файла: pdf GS_CPG.pdf (91.5 Кб, Просмотров: 271)
    • Тип файла: pdf GS_E7+.pdf (91.4 Кб, Просмотров: 232)
    Последний раз редактировалось Northwood; 13.08.2013 в 00:44.
    С уважением, Александр

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. General Sound
    от GM BIT в разделе Программирование
    Ответов: 13
    Последнее: 31.05.2011, 01:34
  2. Ответов: 245
    Последнее: 28.05.2011, 21:48
  3. Куплю General Sound
    от Sayman в разделе Барахолка (архив)
    Ответов: 17
    Последнее: 18.11.2009, 09:29
  4. General Sound
    от newart в разделе Звук
    Ответов: 133
    Последнее: 11.10.2006, 22:58
  5. Куплю General Sound
    от dhau в разделе Барахолка (архив)
    Ответов: 13
    Последнее: 02.03.2006, 10:32

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •