Вход

Просмотр полной версии : Новодел: компактный CF адаптер + расширение памяти для Поиск-1



yury
14.01.2022, 06:16
Здравствуйте,

Предлагаю вашему вниманию проект новодельной платы расширения для Поиска-1, сочетающей в себе адаптер для CF-карт, расширение памяти и ROM-картридж.
Одной из целей являлась компактность (размер платы 4.5см x 9 см) и минимум используемых компонентов - вся управляющая логика реализована в CPLD xc9536xl.

CF-интерфейс поддерживается (немного модицифированным) XTIDE universal BIOS и реализован через memory-mapped I/O по аналогии с адаптерами JR-IDE и ADP50L, что позволяет добиться более высокой скорости передачи данных по сравнению со стандартным IDE-интерфейсом.

1MB статической памяти можно сконфигурировать для расширения базовой памяти до 640KB или 736KB плюс добавить до 192KB в виде UMB блоков в сегментах C, D и E.

В качестве ROM поддерживается flash-память размером до 4Mb (512KB), в которой хранится XTIDE BIOS, а остальное пространство доступно для пользовательских данных, которые отображаются банками по 32KB в сегменте C000.

Выбор банка ROM и отображение в сегмент C000, а также подключение блоков UMB и стартовый адрес расширения основной памяти управляется софтом через аппаратные регистры, отображенные на память.
В планах написать кастомное расширение BIOS для авто-конфигурирования расширения памяти (в зависимости от объема уже установленной памяти и наличия других расширителей), а также добавить поддержку XMS/UMB прямо из BIOS, что позволит использовать UMB без установки дополнительных драйверов вроде USE!UMBS.SYS.

Интересно кому-нибудь такое?

Вот несколько фотографий:

https://pic.maxiol.com/thumbs2/1642148716.2965502418.pxl202201140222386.jpg (https://pic.maxiol.com/?v=1642148716.2965502418.pxl202201140222386.jpg&dp=2) https://pic.maxiol.com/thumbs2/1642148823.2965502418.pxl202201140222296.jpg (https://pic.maxiol.com/?v=1642148823.2965502418.pxl202201140222296.jpg&dp=2) https://pic.maxiol.com/thumbs2/1642148874.2965502418.pxl202201140221471.jpg (https://pic.maxiol.com/?v=1642148874.2965502418.pxl202201140221471.jpg&dp=2)

IgorR76
14.01.2022, 11:53
Интересно!
Выкладывайте герберы, bom, прошивки, и возможно, исходники. Кто-нибудь, да повторит.
А если это коммерческий проект, и Вы хотите продавать, то создавайте тему в разделе Барахолка.

Radon17
14.01.2022, 13:30
Моё мнение:
1) Если уж использовать современную ЭБ, то почему CF карточка? Вроде бы microSD не так уж сложно прикрутить
2) С использованием микросхем логики в корпусах soic можно добиться тех же габаритов с использованием той же CF карты. Да, правда не будет доп. ОЗУ.

IgorR76
14.01.2022, 13:34
Radon17, добейтесь, разработайте и создайте Ваше устройство, заведите по нему свою тему, там и будем обсуждать. А здесь оффтопить не надо.

Критиковать — значит объяснять автору, что он делает не так, как делал бы я, если бы умел (Карел Чапек).

HardWareMan
14.01.2022, 13:40
Моё мнение:
1) Если уж использовать современную ЭБ, то почему CF карточка? Вроде бы microSD не так уж сложно прикрутить
2) С использованием микросхем логики в корпусах soic можно добиться тех же габаритов с использованием той же CF карты. Да, правда не будет доп. ОЗУ.
Это же XT, CFка тут как родное IDE. А для SD надо делать контроллер.

Haper
14.01.2022, 15:40
Сорри за оффтоп, но прям душа радуется, когда видишь новые девайсы для ретро-компов!
С праздниками, друзья!:)

yury
14.01.2022, 22:34
Интересно!
Выкладывайте герберы, bom, прошивки, и возможно, исходники. Кто-нибудь, да повторит.
А если это коммерческий проект, и Вы хотите продавать, то создавайте тему в разделе Барахолка.
Спасибо!
Проект некоммерческий, планирую выложить все исходники и герберы на github как только разберусь с BIOS'ом.

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


Моё мнение:
1) Если уж использовать современную ЭБ, то почему CF карточка? Вроде бы microSD не так уж сложно прикрутить
2) С использованием микросхем логики в корпусах soic можно добиться тех же габаритов с использованием той же CF карты. Да, правда не будет доп. ОЗУ.

Как тут уже заметили, CF нативно поддерживает IDE (даже 8-ми битный IDE), соответственно можно сразу использовать XT IDE BIOS с минимальной обвязкой.
В принципе, наверное можно написать свой BIOS для поддержки SD карт без дополнительных микроконтроллеров, но это скорее всего будет жутко медленно - сейчас сектор данных читается/пишется одним rep movsw.

Если всю логику реализовывать в отдельных корпусах - вряд ли все влезет на такую плату. Да и развести будет сложно и вряд ли будет дешевле. Если только оставить один CF интерфейс - тогда да, можно.

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

У меня практический вопрос: проконсультируйте, в каком месте адресного пространства безопаснее всего размещать расширение BIOS для такой карточки?

Мне нужно около 6 килобайт для XT IDE BIOS плюс килобайт на управляющие регистры и сектор IDE и сейчас я использую 8 килобайт в сегменте F800.
С кастомным биосом надеюсь сократить до 4 килобайт и размещать максимально близко к 0xfc00, с которого начинается собственный BIOS поиска.

Есть ли модули расширения, которые занимают это адресное пространство?

Serg6845
17.01.2022, 12:10
В принципе, наверное можно написать свой BIOS для поддержки SD карт без дополнительных микроконтроллеров, но это скорее всего будет жутко медленно - сейчас сектор данных читается/пишется одним rep movsw.


тоже вполне реализуемо. в ПЛИС запихивается сдвиговый регистр, который работает с SD. как в DIVMMC, там чтение сектора слелано двумя командами INIR (Z80).

yury
18.01.2022, 07:45
тоже вполне реализуемо. в ПЛИС запихивается сдвиговый регистр, который работает с SD. как в DIVMMC, там чтение сектора слелано двумя командами INIR (Z80).

Согласен, хорошая идея - сдвиговый регистр можно тоже замапить в 512 последовательных адресов памяти как и сейчас, чтобы можно было использовать rep movsw.

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