User Tag List

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

Тема: VG93EM - эмулятор м/с кр1818вг93 на МК STM32F205R(B,C..)T

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

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    Регистрация
    31.03.2008
    Адрес
    Москва
    Сообщений
    735
    Спасибо Благодарностей отдано 
    10
    Спасибо Благодарностей получено 
    80
    Поблагодарили
    37 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию VG93EM - эмулятор м/с кр1818вг93 на МК STM32F205R(B,C..)T

    Здесь продолжение темы из Новостей.
    С полной документацией.

    Устройство представляет собой эмулятор (на уровне портов) чипа ВГ93, предназначено оно для замены чипа, части обвязки, дисковода и кучи дискет. Тестировалось на ZXM-Phoenix v1.0. Общение с устройством производится с помощью UART-терминала на ПК (использовал PuTTY, в архиве файл с настройками сессии для комфортного отображения). Потребуется UART-TTL адаптер для ПК. Кроме UART, в устройстве также есть I2C-порт, который предполагается использовать для управления со Спека (пока не занимался).
    Идея устройства возникла после знакомства с проектом AYX-32 (TSL), только я использовал МК помедленней и подешевле (интересно, будет ли в результате мой эмулятор работать с 7 МГц, а тем более, с 14 МГц Спеками, или, хотя бы, не завешивать их).
    Образы дисков аккуратной эмуляции хранятся в придуманном мной формате MFD ( MFM декодированный: заголовок, 6400 байт данных дорожки, 800 байт синхрометок ). Для быстрой эмуляции (пока в процессе) будут загружаться образы TRD и SCL.
    Алгоритм эмулятора основан на блок-схемах из справочного листа и представляет собой цикл с состояниями. Каждому состоянию соответствует какая-нибудь микрооперация. Регистр состояния собирается из переменных в цикле же. Такой алгоритм позволяет с большой скоростью отрабатывать события. Эмуляция портов основана на EXTI-прерываниях (как и отслеживание RESET), написана для быстроты на ассемблере(есть вариант на С, тоже рабочий). Весь остальной проект написан на С, для сборки нужен EmBitz 1.11 (или, после адаптации, другой компилятор).
    Сейчас (10фев2018) потребление ресурсов такое:
    bin\Release\VG93EM.map|1|Program size (bytes): 28088
    Data size (bytes): 104
    BSS size (bytes): 40136|
    Total size (bytes): 68328 (R/W Memory: 40240)
    Я использовал чип с буквой "С" (почему-то он оказался в России дешевле, в отличие от Али) - 256 КБ ПЗУ, 80+16 ОЗУ.
    Для "B" надо будет пересоздать/отредактировать проект (128КБ ПЗУ, 48 + 16 КБ ОЗУ).
    Ресурсов "должно хватить всем" (с) Б.Гейтс

    Утилиты (для ПК, Tiny C Compiler 0.9.27): создание отформатированного образа диска TR-DOS, конвертер образа в текстовый вид для ручного анализа, конвертер стандартной TRD в MFD, а также проверялка TRD на основе программы Ивана Рощина (зачем-то понадобилась).
    Данный проект делался с учетом особенностей контроллера TRDOS(сигнал готовности соединен с загрузкой головок, он же мотор), но может быть адаптирован для других компьютеров.
    Изготовление устройства - только для подготовленных (и на свой страх и риск)!
    Платку надо бы переразвести, кварц попроще поставить, чтобы фен был не нужен(сказались габаритные ограничения платы).

    Для подключения устройства нужно демонтировать ВГ93, поставить туда две PBS-20, а на эмулятор - две гребенки(у меня наоборот, гребенка на месте чипа). Часть выводов из гребенки надо вынуть, на плате отверстия только для нужных сигналов! Ненужные выходы ВГ эмулятор давит на землю, висящих сигналов быть не должно. На эмулятор подается 2 сигнала с системного регистра (на моем Фениксе DD53 - вывод 2 - выбор диска; вывод 15 - сторона). Плотность не используется(всегда двойная) и одинарная не эмулируется(желаюшие могут добавить в код, но я лично смысла не вижу).

    Продолжаю допиливать код (эмуляция "быстрая"), но свободного времени у меня мало, поэтому, как только - так сразу, но не раньше.
    Желащие могут параллельно делать свои собственные версии, все в свободном доступе.
    Быстродействие чипа (120 МГц) достаточное для усовершенствований.

    Задавайте вопросы, буду заносить их в ЧАВО.

    ЧАВО:
    1) ВГ93 в других машинках (например Поиск) можно будет заменить на эмулятор?
    Да, но потребуется адаптация (вывести сигнал CPRDY, например). Точные изменения можно выяснить, посмотрев схему другого контроллера.

    2) ?
    Вложения Вложения
    Последний раз редактировалось IanPo; 10.02.2018 в 15:35.
    ZXM-Phoenix rev.01 2048K, VG93 hw emulator

    Этот пользователь поблагодарил IanPo за это полезное сообщение:

    emax73(26.02.2024)

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

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

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

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

Похожие темы

  1. КР1818ВГ93 изнутри ...
    от Robus в разделе Внешние накопители
    Ответов: 31
    Последнее: 09.09.2011, 17:46
  2. продажа кр1818вг93
    от sevol в разделе Барахолка (архив)
    Ответов: 24
    Последнее: 24.08.2010, 09:10
  3. Недокументированные особенности КР1818ВГ93
    от EARL в разделе Программирование
    Ответов: 6
    Последнее: 19.10.2009, 23:17
  4. КР1818ВГ93
    от breeze в разделе Внешние накопители
    Ответов: 16
    Последнее: 03.08.2007, 11:55
  5. КР1818ВГ93
    от lvd в разделе Барахолка (архив)
    Ответов: 10
    Последнее: 22.05.2005, 01:23

Ваши права

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