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

User Tag List

Страница 1 из 7 12345 ... ПоследняяПоследняя
Показано с 1 по 10 из 66

Тема: Пишу эмулятор БК0011М для FPGA MiST.

  1. #1
    Activist
    Регистрация
    27.11.2015
    Адрес
    г. Самара
    Сообщений
    314
    Благодарностей: 40
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию Пишу эмулятор БК0011М для FPGA MiST.

    Всем привет.
    Пишу эмулятор БК0011М для платы MiST: https://github.com/mist-devel/mist-board/wiki
    При этом хочу сделать максимально близко к железу.
    Использую модель процессора от Vslav: http://zx-pk.ru/showthread.php?t=23978

    Есть тут владельцы данной платы ну или может кто-то решится купить? (недавно закончил писать эмулятор ZX Spectrum 128K для этой платы со 100% такт-совместимостью с реальным железом).

    Мой эмулятор в общем-то готов. Но столкнулся с проблемами подгонки кода чтобы было в точности как на реальном железе. Поскольку последний раз держал БК в руках лет 20 назад, много уже позабылось.
    Нужен кто-то, у кого еще остались знания о точной работе разных регистров чтобы проверить и найти ошибки.

    В частности не могу понять что не так с клавиатурой. При удержании кнопки при старте, БК остается в мониторе и при этом печатается символ нажатой кнопки, хотя в оригинале не должен.
    Есть подозрение что регистр палитр иногда переключается в ненужное время.

    В общем, хотелось бы найти единомышленников, готовых помочь довести эмулятор до полной совместимости. Знания FPGA не требуются. Нужно лишь хорошо знать БК и желание тестировать в разных ситуациях.

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

  3. #2
    Moderator Аватар для CodeMaster
    Регистрация
    26.04.2009
    Адрес
    Воронеж
    Сообщений
    4,098
    Благодарностей: 567
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Saar Посмотреть сообщение
    Пишу эмулятор БК0011М для платы MiST:
    Там много ячеек используется, в Terasic DE1 поместится?
    Рыцарь ордена Хламовников

    Мои магазины на Мешке: Retro store и Компьютерные комплектующие

  4. #3
    Activist
    Регистрация
    27.11.2015
    Адрес
    г. Самара
    Сообщений
    314
    Благодарностей: 40
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Да, у меня V1.3.
    В ReVerSE и DEx будут сложности с портированием ввиду отсутствия MCU.
    MCU используется для доступа к SD. Точнее, даже не к самой SD а к образу. Поэтому придется изобретать дополнительные модули, реализующие как минимум функцию доступа к образу жесткого диска.

    По поводу ресурсов:
    Код:
    +----------------------------------------------------------------------------------+
    ; Fitter Summary                                                                   ;
    +------------------------------------+---------------------------------------------+
    ; Fitter Status                      ; Successful - Sat Jan 16 01:22:23 2016       ;
    ; Quartus II 64-Bit Version          ; 13.1.4 Build 182 03/12/2014 SJ Full Version ;
    ; Revision Name                      ; bk0011m                                     ;
    ; Top-level Entity Name              ; bk0011m                                     ;
    ; Family                             ; Cyclone III                                 ;
    ; Device                             ; EP3C25E144C8                                ;
    ; Timing Models                      ; Final                                       ;
    ; Total logic elements               ; 5,954 / 24,624 ( 24 % )                     ;
    ;     Total combinational functions  ; 5,504 / 24,624 ( 22 % )                     ;
    ;     Dedicated logic registers      ; 2,323 / 24,624 ( 9 % )                      ;
    ; Total registers                    ; 2375                                        ;
    ; Total pins                         ; 71 / 83 ( 86 % )                            ;
    ; Total virtual pins                 ; 0                                           ;
    ; Total memory bits                  ; 446,464 / 608,256 ( 73 % )                  ;
    ; Embedded Multiplier 9-bit elements ; 0 / 132 ( 0 % )                             ;
    ; Total PLLs                         ; 1 / 4 ( 25 % )                              ;
    +------------------------------------+---------------------------------------------+
    Раз некий интерес к проекту имеется, то я тогда создам на github репозиторий. Предлагаю вести один репозиторий, но сделать разные top модули для разных конфигураций. Таким образом изменений будут получать все конфигурации сразу.

  5. #4
    Veteran Аватар для Vslav
    Регистрация
    31.03.2013
    Адрес
    г. Киев
    Сообщений
    1,306
    Благодарностей: 1819
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от MVV Посмотреть сообщение
    По SoftCore К1801ВМ1 нужно Vslav спросить, ядро вроде около 2К LE's.
    Там скромно все - примерно 1400LE само ядро, + VPIC + UART в стиле ВП1-065 - в сумме весь проект примерно 1600LE. Сейча пишу универсальный Wisbone хаб + SDRAM контроллер, можно будет дальше PDP-компы типа ДВК за пару вечеров штамповать. Ну если ВМ2/ВМ3 осилим отреверсить . Разработку веду на DE0, но U16 у меня тоже есть, планирую порт на нее.

  6. #5
    Activist
    Регистрация
    27.11.2015
    Адрес
    г. Самара
    Сообщений
    314
    Благодарностей: 40
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Немного поофтоплю:
    В целом MiST меня устраивает, но есть одна серьезная проблема - это разъем VGA! У меня некуда его просто воткнуть. Тем более реально там идет телевизионная развертка. Поэтому использую конвертер SCART->HDMI. Но тут еще одна проблема: некоторые эмуляторы выводят не ТВ развертку, а VGA. А универсальных конвертеров, понимающих одновременно TV и VGA нет.
    В общем, я параллельно ищу другой вариант FPGA платы, с HDMI. Есть несколько вариантов типа того же ReVerSe или Марсоход. Но я уже понял, что MCU просто необходим. Да и любимая моя Амига без MCU не запустится
    Ну или нужна плата с довольно большой FPGA чтобы свободно разместить SoftMCU рядом. А тут уже вышеозвученные платы отпадают.

    Но вот буквально вчера я нешел практически Ultimate Solution. Это гибрид Zynq7000. Там шустрый MCU уровня RPi B+ и FPGA уровня Cyclone III.
    Если конкретно, то заказал вот такую борду: http://www.myirtech.com/list.asp?id=502
    Заказал версию на Zynq7020 чтобы уж наверняка перекрыть возможности MiST.

    По сути, на такой плате можно иметь эмуляторы обоих "лагерей". Есть неплохие эмуляторы на Raspberry Pi. Тот же SNES или N64. Их просто нет на FPGA. В то же время на FPGA тоже есть неплохие эмуляторы.
    Если бы набрать единомышленников, то можно было бы довольно быстро портировать оба типа эмуляторов в довольно короткие сроки. Ну как минимум те, что на FPGA.

    ----------------------------------------------------------

    Репозиторий тут: https://github.com/sorgelig/BK0011M
    Те, кто хочет непосредственно принять участие в разработке, откройте Issue - я добавлю.

    Если есть замечания по поводу оформления лицензий и тому подобное - сообщите мне, я поправлю.

    Небольшая вводная:
    В папке SW находится утилита, которая позволяет создать/разобрать образ HDD из отдельных флоппи дисков. Этот образ и используется в эмуляторе. На MiST board его надо положить в корень SD карты. Если дать имя bk0011m.vhd, то он автоматически откроется (и БК загрузится с HDD) при старте ядра - это делает MCU.
    Через OSD ядро позволяет открывать DSK - образ floppy, read-only. VHD - образ HDD read-write. DSK монтируется как Диск 0, а VHD как Диск 2+(то есть партиции начинаются с номера 2). В ПЗУ БК зашита автозагрузка сначала с диска 2, а при неудаче - с диска 0.
    Ну то есть основной упор сделан на работу с HDD, а не с отдельными дискетами, поскольку количество софта для БК намного больше одной дискеты
    Так же через OSD переключаются ЧБ/ЦТВ режимы экрана.

    Если есть какие вопросы по работе - задавайте. Возможно будут вопросы по работе самой MIST board - тоже готов пояснить.

    На мой взгляд, пока имеются две основных проблемы, которые я бы хотел решить:

    1) Работа прерываний клавиатуры. Я не могу понять, почему при удержании клавиши при загрузки в конце вылазит символ нажатой клавиши. Получается, что запрос на прерывание не сбрасывается. Я вроде всё проверил, но не могу пофиксить. Доступа к реальной БК у меня нет. Может что-то в модуле клавиатуры, а может глюк в модуле прерываний. Впрочем и вся клава должна быть тщательно проверена, поскольку писалась без использования модели ВП1-014. Хорошо бы заиметь человеческий verilog 014 как это сделано для 037.

    2) Времена обращения процессора к памяти довольно условны. Хотя я и использовал огрызок от 037, отвечающий за задержку, есть сомнения в его точности, поскольку он предназначен для шины Q-BUS, а не Wishbone. В целом времена я подобрал близкие и даже большинство моих старых демок для БК работают корректно, но, всё таки, не 100% как в реальной БК.

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

    Еще есть сомнения на счет срабатывания регистра палитр, поскольку если я запускаю БК0010 игру в CSIDOS, то включается 15 палитра, а по идее должна быть 0. Надо как-то оттрассировать это в БК.
    Вспоминать свой код 20 летней давности довольно сложно

    Вообще, наверное, надо добавить режим пульта. Это не сложно. Сложно найти дебаггер пультовый. Есть ли такой?
    Последний раз редактировалось Saar; 20.01.2016 в 22:39.

  7. Этот пользователь поблагодарил Saar за это полезное сообщение:
    Viktor2312 (20.01.2016)

  8. #6
    Master
    Регистрация
    22.07.2007
    Адрес
    St.Petersburg
    Сообщений
    585
    Благодарностей: 99
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Вот такой еще есть. Ядро проца - другое.
    https://code.google.com/p/bk0010/

  9. Этот пользователь поблагодарил AlecV за это полезное сообщение:
    svofski (25.01.2016)

  10. #7
    Activist
    Регистрация
    27.11.2015
    Адрес
    г. Самара
    Сообщений
    314
    Благодарностей: 40
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от AlecV Посмотреть сообщение
    Вот такой еще есть. Ядро проца - другое.
    ему сто лет в обед. Думаю, все кто хотел, его видели.

  11. #8
    Activist
    Регистрация
    27.11.2015
    Адрес
    г. Самара
    Сообщений
    314
    Благодарностей: 40
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ну и?
    Я думал что хотя бы какие-то отзывы получить.
    На какую-то помощь, я так понимаю, нет смысла рассчитывать?

  12. #9
    Moderator Аватар для CodeMaster
    Регистрация
    26.04.2009
    Адрес
    Воронеж
    Сообщений
    4,098
    Благодарностей: 567
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Saar Посмотреть сообщение
    Я думал что хотя бы какие-то отзывы получить.
    А в теме "засветился" хоть один владелец MiST?

    Цитата Сообщение от Saar Посмотреть сообщение
    На какую-то помощь, я так понимаю, нет смысла рассчитывать?
    В русле эксклюзивных just for fun проектов - обычно да.
    Рыцарь ордена Хламовников

    Мои магазины на Мешке: Retro store и Компьютерные комплектующие

  13. #10
    Guru
    Регистрация
    11.09.2009
    Адрес
    Москва
    Сообщений
    4,628
    Благодарностей: 2757
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Saar Посмотреть сообщение
    Я думал что хотя бы какие-то отзывы получить.
    Возможно, есть смысл создать тему на форуме БК.

Страница 1 из 7 12345 ... ПоследняяПоследняя

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

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

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

Похожие темы

  1. Ремонт БК0011м
    от лю в разделе БК-0010/0011
    Ответов: 17
    Последнее: 25.06.2015, 18:14
  2. Замена ОЗУ БК0011М
    от Woland в разделе БК-0010/0011
    Ответов: 35
    Последнее: 09.03.2013, 13:34
  3. СПб. Меняю БК0011М на ДВК.
    от SKcorp. в разделе Барахолка (архив)
    Ответов: 5
    Последнее: 08.12.2011, 19:32
  4. [Москва, Мир] Обменяю БК0011М
    от Mixey в разделе Барахолка (архив)
    Ответов: 40
    Последнее: 03.05.2010, 00:02

Ваши права

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