Важная информация

User Tag List

Страница 1 из 3 123 ПоследняяПоследняя
Показано с 1 по 10 из 24

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

  1. #1
    Master
    Регистрация
    31.03.2008
    Адрес
    Москва
    Сообщений
    725
    Спасибо Благодарностей отдано 
    10
    Спасибо Благодарностей получено 
    75
    Поблагодарили
    34 сообщений
    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

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

    emax73 (26.02.2024)

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

  4. #2
    Master
    Регистрация
    02.03.2015
    Адрес
    г. Санкт-Петербург
    Сообщений
    800
    Спасибо Благодарностей отдано 
    340
    Спасибо Благодарностей получено 
    71
    Поблагодарили
    56 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    ВГ93 в других машинках (например Поиск) можно будет заменить на эмулятор?

  5. #3
    Master
    Регистрация
    31.03.2008
    Адрес
    Москва
    Сообщений
    725
    Спасибо Благодарностей отдано 
    10
    Спасибо Благодарностей получено 
    75
    Поблагодарили
    34 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    В данном виде нет, но, в принципе, да.
    Возможно, потребуется вывести еще сигнал CPRDY(выв.32 ВГ).
    Надо смотреть по схеме и экспериментировать.
    ZXM-Phoenix rev.01 2048K, VG93 hw emulator

  6. #4
    Master
    Регистрация
    31.03.2008
    Адрес
    Москва
    Сообщений
    725
    Спасибо Благодарностей отдано 
    10
    Спасибо Благодарностей получено 
    75
    Поблагодарили
    34 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Thumbs down Я облажался

    Два диска сделать не получилось, новая версия почему-то жутко глючит.
    Выложенная ранее версия 0.05 работает устойчиво.
    Может кто поумней меня разберется, а я замучался уже.
    Версию 0.08 прилагаю.
    Замеченные глюки в новой версии:
    - если сделать ReadOnly, то выдает ошибки чтения;
    - мелкие ошибки в терминале;
    - сбои при чтении диска B;
    - сбои при записи в регистры или неожиданные изменения регистров (при тех же подпрограммах ISR, пытался модифицировать - безрезультатно), что приводит к менее редким сбоям при чтении диска A.
    Вложения Вложения
    ZXM-Phoenix rev.01 2048K, VG93 hw emulator

  7. #5
    Activist
    Регистрация
    07.02.2018
    Адрес
    г. Балашиха
    Сообщений
    200
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    какой смысл? вг93 стоит рублей 100, а матрица?

    - - - Добавлено - - -

    ЗЫ "Студия элетронной некромантии "КарапуZX" сообщает о пробитии очередного дна в деле гальванизации трупа под названием "Спектрум"."
    вопрос снимается. Энтузиазм бесценен

  8. #6
    Master
    Регистрация
    31.03.2008
    Адрес
    Москва
    Сообщений
    725
    Спасибо Благодарностей отдано 
    10
    Спасибо Благодарностей получено 
    75
    Поблагодарили
    34 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    какой смысл? вг93 стоит рублей 100, а матрица?
    При этом почему-то забыли про дисковод и дискеты, которых уже не выпускают.
    ZXM-Phoenix rev.01 2048K, VG93 hw emulator

  9. #7
    Activist
    Регистрация
    07.02.2018
    Адрес
    г. Балашиха
    Сообщений
    200
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    приводы и дискеты совершенно не проблема. Причем любых форматов.

  10. #8
    Member
    Регистрация
    12.10.2005
    Адрес
    San Francisco
    Сообщений
    144
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Спасибо что выложили интересный проект. Можно спросить чем продиктован выбор STM32F205? У меня самого давно STM32 - любимый контроллер, но что попроще делаю на 070 - раньше на 103, а где нужно больше ресурсов и скорости - 407. Благо китайцы продают плату с STM32F407VET6 + flash за $9. У 2хх серии есть преимущества?

  11. #9
    Activist
    Регистрация
    02.11.2007
    Адрес
    г. Краснодар
    Сообщений
    255
    Спасибо Благодарностей отдано 
    1
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    120 МГц для эмуляции чипа на 1 МГц........жестоко однако

  12. #10
    Master
    Регистрация
    31.03.2008
    Адрес
    Москва
    Сообщений
    725
    Спасибо Благодарностей отдано 
    10
    Спасибо Благодарностей получено 
    75
    Поблагодарили
    34 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Нашел жуткие ошибки в последней версии. Буду пробовать их устранять.

    alexfreed
    Выбрал 205 потому, что 1) скорость - чтобы успевать обрабатывать запросы шины, 2) цена чипа ниже, чем 407

    Nesser
    На меньшей скорости вы можете не успеть передать данные на шину, плюс надо, чтобы цикл конечного автомата был как можно короче.
    ZXM-Phoenix rev.01 2048K, VG93 hw emulator

Страница 1 из 3 123 ПоследняяПоследняя

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

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

Эту тему просматривают: 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

Ваши права

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