Это проект по переделке Специалиста-M на оригинальной заводской плате в Специалист-MX/MX2. Цель - сделать максимально красиво, с помощью печатных плат и минимума МГТФ. Потом, может быть, переразведу плату Специалиста-M, чтобы предусмотреть на ней все новые коммуникации.
https://disk.yandex.ru/i/fsOm9qQF89JNqg
Сразу оговорюсь, чтобы никто не обвинял в плагиате - схемы подсмотрены у Специалиста-MX, MX2 и Сябра. (C) HardwareMan, Fifan, vinxru, SYR-ALEX. Но это и логично, я же хочу сделать совместимый аппаратно MX2. Главное отличие - динамическая память. Еще одно условие - аутентичность, т.е. мелкая логика в DIP корпусах, без микроконтроллеров и ПЛИС. Но оставлена возможность подключить адаптеры PS/2 клавиатуры и SD карты, и дисковод 3,5" (для 5,25" надо отдельно заводить питание 12 В).
Рабочее название проекта - "Специалист-MMX" (типа M -> MX). Предлагайте варианты. Текущая стадия - две макетки, модули памяти и немного МГТФ с обратной стороны платы Специалиста-M:
https://disk.yandex.ru/i/6spX9-VoKqo48w
Всего получилось шесть дополнительных плат, плюс две опциоанльные (расширение памяти до 512 кб и ром/флеш диск). Это из-за выбранного форм-фактора - корпус 300х200х75 из Чип-и-Дипа, потому что хочется получить законченное изделие, а не россыпь плат на столе. Все разъёмы (клавиатура, видео, магнитофон, питание) выведены на заднюю стенку, питание - от любого сетевого адаптера на 5В (с током не менее 2А). На плате Специалиста-M делается всего три разреза печатных дорожек, устанавливается разъём для платы памяти, и напаивается пара десятков проводов МГТФ по низу.
1) Кросс-плата. Это плата, куда впаивается "папа" большого системного разъёма Специалиста-М (СНП-34-90В-8). Большинство контактов с него выводятся на два слота расширения, установленных с той же стороны платы. Т.е. платы расширения (контроллер дисковода и пр.) втыкаются параллельно материнской плате. От них разведено несколько дополнительных дорожек, подключенных к земляным пинам на материнке. Это сделано для возможности расширения - можно легко отрезать их от земли (на материнке) и использовать для своих целей. С другой стороны кросс-платы расположены разъём клавиатуры (D-sub 25 под LPT кабель), магнитофона и питания, пищалка и регулятор громкости для неё. На плате собраны преобразователи напряжений +5В -> +12В и -5В для питания мат. платы, установлен таймер ВИ53 и "порт программатора" ВВ55, к которому подключен разъём ром/флеш диска. Для совместимости его распиновка совпадает с платой MX2 и флеш-диском HardwareMan'а, но на него ещё выведен сигнал сброса, чтобы можно было подключить контроллер SD карты vinxru на Атмеге. А на разъём клавиатуры заведено питание и сигнал выборки /U7, чтобы можно было подключить контроллер PS/2 клавиатуры vinxru (в этом случае он будет торчать сзади корпуса, но его можно целиком смонтировать внутри разъема D-sub 25). Ещё на кросс-плате предусмотрен разъём для питания дисковода или других внутренних потребителей.
Сначала хотел установить на кросс-плату буферы на шины. С буферизацией ША вопросов нет, а вот с ШД сложно. На материнской плате есть оперативка, ВВ55 и ПЗУ, которые тоже могут занимать шину, при этом буфер на кросс-плате должен отключаться. Неудобно получается, схема компьютера разделена на две части, с буферами где-то посередине... В общем, думаю, для буферизации шин проще сделать отдельную платку, вставляемую с панельку процессора.
Кросс-плата может использоваться и с чистым Специалистом-М без переделок, правда, тогда надо предусмотреть способ затыкания таймера (придётся прошить команды его инициализации в ПЗУ загрузчика, или просто не припаивать его).
Схема и чертёж платы (3D модели некоторых разъёмов и других компонентов отсутствуют):
Схема
Герберы
Вид платы
Вид платы в 3D
Вид платы в 3D снизу
2) Плата селектора адресов MX/MX2. Изначально планировалось "селектор адресов" впихнуть на кросс-плату, но места не хватило. Поэтому пришлось располагать его на отдельной плате. К счастью, схема селектора адресов на 90% использует те сигналы, что есть на разъёмах расширения, так что она выполнена в виде платы, вставляемый в один и этих разъёмов. Свободным остаётся всего один разъём, но у Специалиста не наблюдается избытка периферии, только контроллер дисковода и SD-карты по варианту HardWareMan'а. При наличии более габаритного корпуса, кросс-плату можно увеличить и добавить ещё слотов. На плате селектора адресов кроме кучи мелкой логики установлено ПЗУ с прошивкой (предлагаю его называть именно ПЗУ, а не ROM-диск, чтобы избежать путаницы с тем ROM-диском, который подключается через ВВ55). Получается что-то вроде "маппера" Сябра. И это, кстати, плюс - заменив эту плату, можно получить компьютер другой конфигурации, в том числе и стандартный Специалист. На плате предусмотрено много джамперов для настройки конфигурации (сброс в MX или STD режим, включение ПЗУ на мат. плате, ограничение рам-диска одной страницей, выбор прошивки при наличии большого ПЗУ, ужимание занимаемых регистром цвета адресов до 1 байта). Схема и чертёж платы (разъём будет угловой, я просто не нашел угловую 3D модель):
Схема
Герберы
Вид платы
Вид платы в 3D
3) Плата памяти и контроллера цвета. Из-за того, что память в Специалисте-М динамическая с отдельными шинами адреса и данных, её нельзя подключить через кросс-плату. Поэтому дополнительную память под рам-диск и контроллер цвета логичнее сделать отдельным модулем, подключаемым к материнской плате через новый разъём. При этом можно заметно сократить количество контактов и МГТФ-а, если втыкать плату в том числе в штатные панельки от РУ5 (экономятся 8+8+3 контактов), но тогда основная память переезжает на эту плату. Кстати, Специалист-М прекрасно работает при замкнутых входах и выходах данных ИМС памяти, я это использую. Зачем авторы оригинальной платы разводили все 16 дорожек?... Реализована схема правильной регенерации РУ7 и 41256 (в оригинальной схеме Афанасьева на адресные входы A7 и A8 не подаются сигналы со счётчиков, а это нужно для регенерации).
Ещё 8 контактов экономятся на шине данных к регистру цвета - он сидит на шине данных памяти, "за" шинными формирователями ОЗУ (АП16). Это потребовало небольшого изменения в схеме маппера - надо разрешить работу АП16 при записи в регистр цвета по сигналу /U1. Поддерживается стандартный 8-цветный режим от клавиатурного ВВ55 при переключении в STD режим по принципу MX2 и Сябра (на 4-цветный забил пока).
Всего требуется 24 дополнительных контактов, плюс сколько-то на питание. Я разбил их на два разъема (две линейки штырьков), для удобства трассировки и сокращения длины проводов. RGB видеовыход полностью формируется на этой плате, и тянуть его обратно на материнку, а с неё на кросс-плату, я посчитал излишним. Поэтому разъём видеовыхода на задней панели компьютера подключается шлейфом. Какой именно разъём будет, я пока не решил. Можно VGA (хотя формат сигнала - совсем не VGA), можно SCART, можно композит (через преобразователь), тогда для них надо будет сделать ещё одну маленькую платку, заведя на неё питание с кросс-платы или с платы памяти (на ней есть фильтрованное питание для видеоусилителей RGB). Это добавляет гибкости.
Схема
Герберы
Вид платы
Вид платы в 3D
Вид платы в 3D снизу
4) Платы модулей памяти. На плате памяти не хватило места для четырёх линеек РУшек (РУ5/4164 для основной памяти, РУ6/4116 для цветовой памяти, и две линейки РУ7/41256 для рам-диска 512 кб). Вместо этого там установлены четыре слота SL-26, в которые вставляются "модули памяти", выполненные на одинаковых платах. Получилось удобно, один дизайн платы, вставляешь разные РУшки или импортные аналоги - получаешь модуль на 16, 64 или 256 кб. В минимальном варианте Специалиста-МХ можно обойтись тремя модулями (64 кб основная память, 64 кб рам-диск и 16 кб цвет, т.к. ч/б видеовыход исключен. Хотя можно вернуть его на кросс-плату - но надо ли?) В распиновке слотов предусмотрена защита от дурака - если вставить модуль наоборот, ничего не сгорит, просто он не будет работать (питание подводится симметрично, ША и ШД подключаются к самим себе, только разряды оказываются перепутаны, а входы /RAS и /WE оказываются подвешены).
Для RAM-диска можно использовать РУ5, обновлённые рамфос и коммандер от vinxru правильно определяют объём установленной памяти. Для контроллера цвета, если нет РУ6, можно использовать модуль на РУ5. Но РУ5 в контроллере цвета почему-то работает нестабильно, исправляется это введением задержки сигнала /RAS. Поэтому на плату памяти на всякий случай добавлены джамперы рядом с каждым слотом, "для настройки таймингов".
Схема, чертёж и фото заказанных и собранных плат:
Схема
Герберы
Вид платы
Вид платы в 3D
Собранная плата
5) ROM/flash диск 2 Мб по схеме HardwareMan'а, с небольшой оптимизацией. Вставляется в разъём на кросс-плате рядом с ВВ55. У меня в планах написать драйвер с поддержкой записи в него (если установить флеш память типа AT29C040A). Разъём можно вынести на переднюю панель компьютера с помощью плоского кабеля от дисковода. Тогда можно будет делать горячую замену "флешек". Опыт орионщиков подсказывает, что ничего при этом не горит. Для надежности, можно удлинить пины земли и питания (прогрев паяльником и протолкнув заподлицо с платой), чтобы они подключались первыми. Вместо флеш-диска можно подключить контроллер SD карты vinxru. Схема и чертёж платы (разъём будет угловой):
Схема
Герберы
Вид платы
Вид платы в 3D
Схема Специалиста-М с изменениями для подключения новых плат. Задействованы все свободные пины на системном разъёме. Ещё несколько надо освободить, отрезав от земли, для поддержки переключения в 8-цветный режим, и для контроллера дисковода (сигнал HOLD процессора, такт 4 и 8 МГц). Один свободный самый крайний пин я выделил на усиление линии +5В на мат. плате, т.к. на моей плате с той стороны напряжение проседает на 0,2 В. Замечу, что распиновка системного разъёма на моей плате немного отличается от платы Mick'a - парой самых последних контактов. Можно добавить джамперы для совместимости.
Схема