PDA

Просмотр полной версии : Интегральный периферийно-мультимедийный модуль Booster-11 для БК001x



Woland
30.12.2013, 15:38
Интегральный периферийно-мультимедийный модуль Booster-11.

Начинается разработка нового комплексного устройства для БК0010 / БК0011М, ориентировочные сроки выпуска в продажу - май-июнь 2014.

Функциональные узлы модуля
● SMK-512 без разъема IDE (останется только слот CF) по причине дефицита места; габаритная ПЗУ 27C210 (dip-40) будет заменена на компактную флеш-микросхему
● GPU (от БК12) с DVI выходом и поддержкой расширенных графических режимов
● 32Mb DRAM, включая стандартные 512кб памяти SMK, экранные буферы GPU и электронный диск
● Ядро процессора NIOS со встроенными графическими и аудио (mp3) тестами
● PS/2-контроллер для мыши и клавиатуры с эмуляцией [кнопка PC] = [кнопка БК]
● FPGA-реализация AY-3-8910
● Программно-аппаратный mp3-проигрыватель (fpga+NIOS) с DAC и общим усилителем с FPGA-AY
● Шина специализированного коммерческого стандарта UEXT (разъем idc-10)
● Картоприемник SD-card (драйверная поддержка не предусмотрена)
● (опционально) Быстродействующий fpga- ВМ1/ВМ3 из БК12 (потребует установки EP3C10E144C8N вместо EP3C5E144C8N)
● Флеш-память для хранения ПЗУ SMK512, тестов GPU и ВМ3 и т.п.

Основные используемые компоненты
● EP3C5E144C8N / EP3C10E144C8N - FPGA Cyclone III на 5000/10000 ячеек (10000 потребуется в случае установки ускоренного ВМ1/ВМ3 в fpga)
● MT48LC16M16A2P-75 - sdr sdram, общий объем 32 mb, 16-разрядная (под видеобуферы, электронный диск, и стандартное ДОЗУ 512кб для SMK)
● Chrontel CH7301C - одноканальный DVI-передатчик, поддерживающий вывод аналогового видеосигнала RGB через три 10-битных цифро-аналоговых конвертера
● FT2232h - двухканальный аппаратный USB-мост, UART, асинхронное FIFO, MPSSE и синхронное FIFO (программирование FPGA и флеш через USB-B)
● TDA7050 - двухканальный усилитель мощности НЧ с максимальной мощностью 2*0,15 W в стерео режиме
● CS4344 - аудио ЦАП
● Флешь-память (конкретный чип пока не выбран)

Глазами пользователя и программиста
Подключаемый к МПИ модуль, содержащий в "одном флаконе" практически всё необходимое для БКшника, включая стандартный SMK-512 для работы с дисководом/винчестером, а также новые мультимедиа-возможности. Прошивать FPGA, на которой построен модуль, будет возможно по USB-кабелю за счет входящей в состав модуля микросхемы FT2232h. За счет этого же чипа будет возможен вывод изображения стандартных БКшных видеорежимов через USB-кабель в окно Windows-приложения на PC. Предполагается, что само приложение будет написано силами энтузиастов (есть некоторые договоренности).
Стандартные БКшные видеорежимы, как и расширенные видеорежимы, будут также выводиться через DVI-выход на современный монитор. Предполагается, что максимальный видеорежим будет составлять порядка 800*600 точек при 16-битной цветности.
Процессор NIOS в составе модуля будет использован не столько в качестве привлекательного функционала, сколько в качестве суровой практической необходимости: писать тесты GPU и mp3 на ассемблере БК некому, а для NIOS существует компилятор C, под который есть масса готовых исходников, позволяющих решать указанные задач.
DVI-выход по умолчанию будет выдавать цветное изображение, имея на одной из ног разъема монохромный композитный сигнал. Как и на БК12, будет возможным переключение видеорежимов нажатием кнопки F10 клавиатуры PS/2 (поочередная смена видеорежимов ЦВ / ЧБ / МОНОХРОМ). Без клавиатуры PS/2 такое переключение будет возможно только тактовой кнопкой на верхней плате блока.

Форм-фактор
Блок будет реализован в формате двухэтажной платы под стандартный заводской корпус увеличенной высоты (такой используется для модуля АЦП/ЦАП). Конкретное расположение выходных разъемов будет установлено в процессе разводки платы, пока предположительно на нижней плате в торце блока будут расположены DVI-выход, два PS/2-разъема (мышь и клавиатура) и разъем idc-10 с реализацией шины UEXT. Разъем CF-50 будет распложен с правой стороны нижней платы, как и сейчас в SMK-512.
Нижняя и верхняя платы будут соединены межплатным соединителем (ориентировочно на 40 соединений), расположенным примерно там, где сейчас в SMK-512 располагается FDD-разъем. Также для скрепления двух плат будут использованы 1-2 стягивающие стойки с диаметром резьбовой части М2. На верхней плате в торце блока будут располагаться разъемы Audio (розетка jack 3.5), FDD-разъем (idc-34), разъем USB-B. В левой части верхней платы будет расположен картоприемник под SD-флэш (т.е. над разъемом CF-50), программная реализация обмена с которым будет отдана на откуп энтузиастам (пример - использование SD в качестве эмулятора дисковода или замены IDE-накопителя).
На верхней плате блока будут располагаться две тактовые кнопки, одна - RESET (Как сейчас в SMK512), вторая - поочередная смена видеорежимов ЦВ / ЧБ / МОНОХРОМ на DVI-выходе (она же - запуск встроенных тестов при зажатии на старте БК).

Программное управление модулем через новый регистр
● искл. из адресного пространства БК регистров всех новых устройств - GPU, электронный диск, PS/2, NIOS (по умолчанию - присутствуют)
● вкл/откл FPGA-AY-3-8910 (по умолчанию - включен, работает параллельно встроенному в оригинальную БК)
● эмуляция подключенной мыши "Марсианка" при наличии PS/2 мыши (по умолчанию - не эмулируется)
● замена клавиатурой PS/2 оригинальной клавиатуры (по умолчанию - не заменяется)

Управляющие перемычки
● искл. из адресного пространства БК регистров всех новых устройств - GPU, электронный диск, PS/2, NIOS (разомкнута - присутствуют, замкнута - отсутствуют)
● эмуляция клавиатуры и мыши "Марсианка" при наличии подключенных PS/2 клавиатуры и мыши (разомкнута - не эмулируется, замкнута - эмулируются)

Открытые вопросы
● распределение регистров новых, нестандартных для БК устройств, в адресном пространстве БК
● концепция сопряжения центрального ВМ1 с ускоренным fpga-вариантом ВМ1/ВМ3
● организация доступа к электронному диску
● способ запуска встроенных тестов GPU и mp3 (предварительно - запуск по зажатой при старте БК кнопке переключения видеорежимов DVI, или ручной старт по нужному адресу)
● другие интересные пожелания и замечания (что-то выкинуть, что-то добавить, изменить расположение разъемов, конкретные архитектурные решения)

Ориентировочная стоимость
● 3500 руб в виде конструктора для самостоятельной сборки
● 4500 руб в виде собранного и протестированного изделия

vlad
30.12.2013, 16:37
Копания не работает в сотрудничестве с Elite Systems? Похожая деятельность - Вторая жизнь легендарных компьютеров... (http://businessinweb.com/blog/hi-tech-news/8681.html) Возможно у них это в разы лучше и дешевле получиться? После того, как закончат аналогично с PC64. Двух ядерный Atom D525 (1,8 ГГц) + 4 Гб оперативной памяти DDR3 + винчестер от 1 ТБ, куда более лучше справиться со всей задачей в рамках целой системы, чем этот модуль на софт ядре - NIOS и множеством других аналогичных модулей системы.

vlad
30.12.2013, 16:56
Тогда уже лучше эмулятор BK на качественном процессоре
Несомненно лучше, если цель - возродить легендарный компьютер на новой базе и сделать его более удобным для современного пользователя, практичным и надежным :)

SKcorp.
30.12.2013, 17:26
После того, как закончат аналогично с PC64. Двух ядерный Atom D525 (1,8 ГГц) + 4 Гб оперативной памяти DDR3 + винчестер от 1 ТБ, куда более лучше справиться со всей задачей в рамках целой системы, чем этот модуль на софт ядре - NIOS и множеством других аналогичных модулей системы.

Засунуть "писюк" в "хлебницу" - большого ума не надо, там нету совместимости на аппаратном уровне с C64.

bigral
31.12.2013, 03:35
Может и нагло будет и неуместно, но поймал себя на мысли, что если бы эта тема появильсь лет 5 назад то можно было б поржать отдуши, а сейчас уже даже не смешно...

Какая целевая аудитория этого монстера???

Woland
31.12.2013, 11:38
Несомненно лучше, если цель - возродить легендарный компьютер на новой базе и сделать его более удобным для современного пользователя, практичным и надежным :)

Ну если эмулятор называть возрождением на новой базе, то да)
Но ИМХО - эмулятор только для минутной ностальгии подходит, или для автоматизации и удобства каких-то работ отладочных, а настоящая БК - это настоящая БК и ничто её не заменит.


Копания не работает в сотрудничестве с Elite Systems? Похожая деятельность - Вторая жизнь легендарных компьютеров... (http://businessinweb.com/blog/hi-tech-news/8681.html)
Нет, да и компания - сильно сказано, два человека и несколько энтузиастов, выполняющих некоторые (довольно существенные) части общего фронта работ.


Возможно у них это в разы лучше и дешевле получиться? После того, как закончат аналогично с PC64. Двух ядерный Atom D525 (1,8 ГГц) + 4 Гб оперативной памяти DDR3 + винчестер от 1 ТБ, куда более лучше справиться со всей задачей в рамках целой системы, чем этот модуль на софт ядре - NIOS и множеством других аналогичных модулей системы.

Дешево может получиться только за счет тиражей в тысячи штук, т.к. даже если пихать туда стандартную Intel-начинку с эмулятором БК, то изготовить аутентичную клавиатуру и корпус по приемлемой цене - невозможно при тиражах менее нескольких сотен штук. Но среди БКшников нет такой аудитории, за 2 года набралось пока порядка 50-60 покупателей. Разве что рекламу по Первому если покрутить))

Atom D525 (1,8 ГГц) + 4 Гб оперативной памяти DDR3 + винчестер от 1 ТБ - это явно не мой путь, от БК там будет только корпус, ради чего будет замут - непонятно.


Какая целевая аудитория этого монстера???
Думаю та же, что приобрела уже в общей сложности 75 конструкторов и собранных изделий (СМК64, СМК512, БК11М, БК11М-01).
Один из участников сообщества сейчас пытается написать компилитор Си под винду, выдающий исполняемый код под БК и стандартизированную отладочную информацию, что позволит моему разработчику интегрировать компилятор со стандартными средами отладки и разработки, т.е. в итоге дать общественности удобную виндовую систему программирования на БК001х, которая станет основным средством разработки и возможно, породит желающих чего-то новое написать под БК.

bigral
31.12.2013, 17:56
Думаю та же, что приобрела уже ... породит желающих чего-то новое написать под БК.

Более чем сомнительное предположение. Нет никаких оснований утверждать, что этот booster-11 входит в категорию ретро-железа (простой критерий: общая интеграция менее 10000 логических вентелей типа 2И-НЕ). Кроме того перечисленный софт так же не имеет никакого к нему отношения.

Выглядит как неоднократные и крайне неудачные попытки продать x86 под брендом Amiga.

Woland
31.12.2013, 18:42
Более чем сомнительное предположение.
На днях в блоге у уважаемого vinxru прочел, цитата:

всё что я делал по ретро компьютерам никому не нужно. Лишь некоторые работы нужны максимум одному человеку.
Этого человека уж точно никто не упрекнет в отсутствии ретроидеологии. Но тем не менее, это тоже никому не надо (по его словам), а следовательно возня с ретро в любом её виде - более чем сомнительное предположение востребованности результата.


Нет никаких оснований утверждать, что этот booster-11 входит в категорию ретро-железа (простой критерий: общая интеграция менее 10000 логических вентелей типа 2И-НЕ).
Похоже критерий в 10 тыс вентилей взят не иначе как с потолка: в оригинальной процессоре ВМ1 больше 50000 транзисторов, то есть 12500 простых вентилей. Про ВМ3 я молчу. Реализация ВМ1 на ПЛИС сейчас занимает порядка 3000 макроячеек, если померять в вентилях 2И-НЕ, будет намного больше. Так что критерий надо другой подыскать.


Кроме того перечисленный софт так же не имеет никакого к нему отношения.
Имеется ввиду Ядро процессора NIOS со встроенными графическими и аудио (mp3) тестами ? Для ярых идеологов расово чистого ретро, можно исключить эту составляющую из ПЛИС, и все, нет проблемы.


Выглядит как неоднократные и крайне неудачные попытки продать x86 под брендом Amiga.
Не вижу связи. x86 - конкретный железный проц с гигагерцами частоты, а сюда ставится только FPGA 5000-10000 ячеек, в котором при большом желании можно оставить только аппаратный GPU, а остальное выпилить и управлять этим GPU исключительно ассемблеными вызовами оригинального ВМ1.
STA015 тоже не представляет проблемы для ретро, никто же не возмущается, что подобные чипы ставят в Спектрум.

perestoronin
31.12.2013, 19:33
Процессор NIOS

Более чем сомнительное предположение.
Никто не мешает, как TS-Lab на ZX-Evo поставить на приглянувшуюся чужую железку своё ядрышко, даже наоборот приветствуется.

vlad
02.01.2014, 01:21
Засунуть "писюк" в "хлебницу" - большого ума не надо, там нету совместимости на аппаратном уровне с C64.
Вот к примеру не "писюк":

ODROID-U3 (http://hardkernel.com/main/products/prdt_info.php)
http://dn.odroid.com/homebackup/201312222305368236.jpg (http://www.devdotnet.org/post/2013/12/26/Hardkernel-predstavil-otladochnuu-platu-ODROID-U3-za-$59-na-SoC-Exynos-4412-Prime-Quad-Core.aspx)
The Powerful Linux Computer
1.7GHz Quad-Core processor and 2GByte RAM
10/100Mbps Ethernet with RJ-45 LAN Jack
3 x High speed USB2.0 Host ports
Audio codec with headphone jack on board
XUbuntu 13.10 or Android 4.x Operating System
Size : 83 x 48 mm, Weight : 48g including heat sink
Package includes the main board and the heat sink

Схема (https://drive.google.com/file/d/0B5aZmgmqP9rORU5xUXR5MHV5OGs/edit?usp=sharing)

Woland
09.01.2014, 00:19
К сожалению выяснился неприятный нюанс, точнее даже несколько:
1. Технически невозможно через МПИ-блок имитировать нажатия БК-клавиатуры внешней PS/2-клавиатурой, т.к. будет конфликт регистров. Придется отключать определенные ноги ВП1-014 и двух регистров УП (т.к. с имитацией "Марсианки" через PS/2 примерно та же беда). Т.е. что-то вроде тумблера понадобится, ну или навсегда перерезать две-три дорожки в общей сложности.
2. 144 ног ПЛИС не хватает на реализацию обмена с STA015, потому придется от нее отказаться и реализовывать проигрывание mp3 на NIOS (но разработчик скорее всего заниматься этим не станет).

perestoronin
09.01.2014, 11:20
к примеру

ног ПЛИС не хватает на реализацию
А установить два больших 4х циклона? такой один установлен в U16 у vlad.
http://zx.pk.ru/showthread.php?t=8993&highlight=u16
К примеру в Китае 4й циклон 15уе. Это очень дорого или есть трудности связать их через lvds ? Сколько ячеек съест в каждом циклоне связка двух 4х циклонов в одно целое через lvds и возможно ли такое ?

Woland
10.01.2014, 10:59
Микросхемы с бОльшим количеством ног туда просто не влезут - в размеры платы заводского КНГМД (учитывая все разъемы, остальные чипы и разводку).

perestoronin
08.03.2014, 12:08
Предварительный вид в 3D нижней платы Booster-11 (http://www.forum.pk-fpga.ru/viewtopic.php?f=15&t=5510)

Slava95
08.03.2014, 13:20
perestoronin, нельзя ли сделать выход изображения в формате обычного композита, или сделать HDMI выход? А так один телевизор принимает только композит, другой HDMI. Все таки композит не был бы лишним. Не все любят работать за современными мониторами.

perestoronin
08.03.2014, 13:56
нельзя ли сделать
Наверное всё можно, посмотрите на проект u16, но сейчас разработчик и архитектор проекта Booster-11 ответили следующее:

Цветной композит потребует еще одной микросхемы (там уже негде ни микросхему, ни разъем ставить).
HDMI- чисто цифровой интерфейс, не содержит среди своих ног RGB-сигналы, и требует лицензирования от производителей, потому выбор был сделан в пользу DVI, где есть как RGB-сигналы, так и аналоговый VGA.

Slava95
08.03.2014, 14:07
perestoronin, понятно. Жаль, но думаю, если будет все-таки реализована возможность вывода цветного композита - это будет очень хорошо, так как не всегда хочется кристальной четкости и высокого разрешения. В принципе это я уже говорил...

Woland
01.04.2014, 00:42
Добавлен проект в формате Altium (http://www.forum.pk-fpga.ru/viewtopic.php?f=15&t=5510&p=5917#p5917), внутри две платы, схемы, визуализирующие библиотеки компонентов - можно повертеть платы в 3D.

Также добавлена полная таблица-спецификация компонентов, каждый может ознакомиться, а при желании поискать ошибки. Завтра платы отправляются в производство.

Woland
07.05.2014, 10:56
Немного фотографий собранного для отладки Бустера (не хватает пока центральной FPGA и аудиоджека):

http://files.pk-fpga.ru/storage/temp/booster-11/IMG_1329.JPG
http://files.pk-fpga.ru/storage/temp/booster-11/IMG_1330.JPG
http://files.pk-fpga.ru/storage/temp/booster-11/IMG_1331.JPG
http://files.pk-fpga.ru/storage/temp/booster-11/IMG_1335.JPG
http://files.pk-fpga.ru/storage/temp/booster-11/IMG_1339.JPG

А заодно и фотографии отладочного прототипа БК12:

http://files.pk-fpga.ru/storage/temp/bk12/IMG_1343.JPG
http://files.pk-fpga.ru/storage/temp/bk12/IMG_1344.JPG
http://files.pk-fpga.ru/storage/temp/bk12/IMG_1345.JPG

CodeMaster
07.05.2014, 11:43
Немного фотографий собранного для отладки Бустера

Монструозненько, но выглядит приятненько ;-)


А заодно и фотографии отладочного прототипа БК12:

И что там от БК? В смысле того, что невозможно реализовать на некой универсальной дэвборде на FPGA?

bigral
07.05.2014, 16:59
И что там от БК?

там шелкографией надпись QBUS! значит это даже не БК (в том МПИ бы написали) а вражеский буржуйский terak

Woland
08.05.2014, 14:40
там шелкографией надпись QBUS! значит это даже не БК (в том МПИ бы написали) а вражеский буржуйский terak

Не верно, это как раз именно БКшная МПИ, а QBUS написал разработчик, аргументируя это чем-то вроде "никто за бугром не в курсе, что такое МПИ".

---------- Post added at 14:40 ---------- Previous post was at 14:32 ----------


Монструозненько, но выглядит приятненько ;-)
Просто пытались всё всунуть в корпус от стандартного заводского модуля, чтобы было где корпуса брать. Позже выложу фото в корпусе - кнопки и светодиод выведены наверх, через высверленные отверстия в корпусе.


И что там от БК? В смысле того, что невозможно реализовать на некой универсальной дэвборде на FPGA?
Там на одной плате МПИ, УП, FDD, HDD, PCI (которая 48 ног ПЛИС утилизирует) - где на девборде столько сигнальных ног найти и еще куча мелочей, которые сложно найти в таком именно составе в одной готовой dev board, да еще и с ценой не более 10тыр. МПИ вообще на девбордах не реализуется в совместимой с БК спецификации. Кроме того, там установлен оригинальный AY.

Woland
11.09.2015, 10:31
В рамках реализации приставки Booster возникли сложности в VGA/DVI-части, которая в Бустере по сути получает на вход в реальном времени зеркало ОЗУ БК, и строит из него изображение. Проблема собственно не новая - плывут эффекты в демах, всё мерцает невпопад из-за нестандартной для БК частоты 60гц.

Есть мнения, что за счет подгонки размера пустых полей и двойной буферизации - можно добиться правильной адаптации БК-изображения под 60Гц в сложных демо-программах.

Для спектрума хорошими людьми делался адаптер ZXKit1 - плата VGA & PAL (http://zx-pk.ru/showthread.php?t=10548)
Интересует, как на спектруме работает режим "Первый режим соответствует развертке 640х480 60 Гц стандартного VGA, но отображается экран Спектрума 256х192 плюс BORDER по краям" - демы тоже плывут или нормально?

Есть тут кто-то, кто данный адаптер для БК использовал? Как в демах себя ведёт в разных режимах?

photon
13.09.2015, 14:17
У меня есть такой адаптер с прошивкой для БК от tnt23
http://zx-pk.ru/showthread.php?t=15758&page=5
Могу погонять демки по списку от Вас.

Woland
13.09.2015, 15:30
Ваше видео в последнем посте по ссылке удалено.
В принципе достаточно погонять Инсульт все части, и описать отличия от изображения на СКАРТ.

photon
16.09.2015, 00:08
отснял как выглядит insult-demo при использовании zx-vga-pal c прошивкой под БК от tnt23.
https://drive.google.com/file/d/0B7FGD8aI69RwYWdHVnhTeGhmQXc/view?usp=sharing
Монитор Acer AL1716. Джампер на плате zx-vga-pal стоит так, что монитор сам включился в режим 640*350, H:31kHz V:69.4Hz. В этом режиме часть картинки снизу зарезается. В режиме 640*480 (по памяти) всё ещё хуже.
Куда-то пропал один оттенок красного, но это для Ваших целей, наверное, не принципиально.

Woland
20.09.2015, 11:41
Спасибо!