Началось всё с того, что я решил навести порядок в своих ящичках и коробочках с радиодеталями. Среди всего прочего попалось вот такое:
«Шарповский» микропроцессор Z80, микросхемы ПЗУ и статической памяти. И лежат некоторые из них у меня ещё со времён увлечения сборкой и наладкой клонов ZX-Spectrum, т.е. с 90-х. Возникла мысль куда-нибудь применить эти микросхемы, не пропадать же, как говорится, добру).
Скачал и почитал кое-какую литературу по Z80, по микропроцессорным комплектам на старых процессорах, посмотрел, какие нашёл, схемки по этой теме. Кстати, попалась интереснейшая книга по старым процессорам и узлам микропроцессорных систем:
«Коффрон Д. Технические средства микропроцессорных систем. Практический курс. 1983».
Легко ищется, легко читается, рекомендую. Интересно было почитать и освежить в памяти многие моменты использования МП. Несомненно, будет полезна и для более глубокого понимания структуры современных МК для таких как я, начинающих).
Не совсем ещё отчётливо понимая, куда её можно применить, набросал схему микропроцессорного модуля на базе Z80, из тех МС, что у меня были:
Микропроцессор, ПЗУ на 32Кб, статическое ОЗУ на 32КБ, порты ввода-вывода на 82С55, шина адреса, шина данных, шина управления, тактовый генератор, схема сброса, всё как полагается. В свободное время можно будет начать изучать ассемблер Z80. И создать на базе этой схемы, например, контроллер для управления супер-пупер приёмником).
Затем решил зайти на Авито, посмотреть, а что там предлагают по запросу «Z80».
И увидел вот это:
Набор для сборки моего любимого клона ZX Spectrum - «Ленинград-2»!
Плата, процессор Z80, 2 шт. ПЗУ 27С64, 8 шт. КР565РУ5 (ОЗУ), остальная «рассыпуха», панельки (для процессора, ОЗУ и ПЗУ), кварц на 14 МГц, резисторы, конденсаторы, диоды, разъёмы – в общем, всё необходимое, кроме корпуса и клавиатуры, для сборки этого клона ZX Spectrum с объемом ОЗУ в 48 килобайт.
«Три рубля не большие деньги», решил я, вспомню-ка я молодость. Эмоции взыграли, «ручки зачесались», и я заказал набор.
Здесь уместно сделать небольшое отступление и немного рассказать для тех, кто пока не в курсе, про компьютер ZX Spectrum. Вот что написано о нём в Википедии:
«ZX Spectrum — 8-разрядный домашний компьютер, созданный английской компанией «Sinclair Research Ltd» (основанная Клайвом Синклером в Кембридже) на основе микропроцессора Zilog Z80.
…В начале 1980-х «ZX Spectrum» был одним из самых популярных компьютеров в Европе, а его многочисленные клоны в начале 1990-х получили широкое распространение на территории бывшего СССР/СНГ.
…Низкая стоимость компьютера была обусловлена… использованием бытового телевизора в качестве монитора и магнитофона в качестве внешнего накопителя».
Много писать не буду, информации по ZX Spectrum и его многочисленным клонам в Интернете полно. Есть много ресурсов, в том числе русскоязычных. Скажу лишь, что Спектрум жив, и многочисленные его поклонники собирают и разрабатывают новые и новые модификации, в том числе на ПЛИС и микроконтроллерах, т.е. на современной элементной базе, а также пишут для него программы и игры.
Итак. Через три дня прибыла посылка из Питера. Все оказалось укомплектовано, как на фото выше, хорошо упаковано и перемотано «пупыркой»:
Добротная, промышленного изготовления плата, с «зеленкой» и шелкографией:
Покрасивее того, конечно, на чём мы собирали «Ленинград-2» в начале 90-х:
Пора приступить к сборке. Схема и монтажные чертежи находятся здесь:
Вот они:
ZX-Spectrum «Ленинград-2». Принципиальная и монтажная схемы. Огромная благодарность автору за отменное качество и скрупулёзное исполнение.
Первыми запаял панельки:
Приятным моментом стало то, что шаг отверстий на плате и шаг выводов панельки оказался равным шагу ножек процессора (2,54 мм):
Помнится, на старых платах шаг отверстий на плате и советских панелек равнялся «нашему» стандарту в 2,5 мм. В ряду из 7-ми – 8-ми ножек это не имело значения, а вот для процессора Z80 с его 20-ю ножками в ряд, разница уже «набегала» в 19х0,04= 0,76 мм, и приходилось его выводы слегка отгибать от краёв к центру. Немного, конечно, но в панельку он «садился» не очень уверенно, и даже иногда пытался из неё «выпрыгнуть»). Приходилось его несколько раз вставлять-вынимать-прижимать, чтобы окончательно сформовались выводы под шаг 2.50 мм.
Почти все микросхемы перед пайкой проверил с помощью программатора. В моём TL866 II Plus есть такая возможность:
Микросхемы «рассыпухи» я решил не «садить» на плату до упора, а запаять слегка приподнятыми над платой, используя картонные прокладки:
.
Получилось вот так (справа микросхема ещё не запаяна):
Зачем я решил так запаивать микросхемы?
Помня опыт налаживания компьютеров – клонов ZX Spectrum после сборки, а именно то, что некоторые микросхемы приходилось по тем или иным причинам демонтировать и заменять, а также делать доработки, приходилось им «откусывать» ножки. Так вот. При таком монтаже, в случае какого-либо форс-мажора во время отладки, неисправную микросхему легко выпаять (либо прогрев феном, либо «по - старинке», «откусив» ножки), с минимальным риском повредить печатную плату.
Все диоды (1N4148), а также большинство резисторов устанавливаются на плату вертикально. Мне не очень нравится такой способ монтажа, вечно задеваешь эти торчащие элементы, да и выглядит всё не очень эстетично. Поэтому решил все резисторы и большинство диодов, устанавливаемых вертикально, заменить на SMD-шные. Все отверстия имеют металлизацию, а шаг между отверстиями в 2,54 мм позволяют резисторам типоразмера 0805 очень даже симпатично «ложиться» между ними.
Диоды взял типа 1N4148WS – SMD-аналог диодов 1N4148. Вот как выглядит смешанный монтаж SMD и выводных элементов:
Остаётся подумать, куда кварц покрасивее разместить).
«Лесенка» из нагрузочных резисторов R34-R41 шины данных процессора, выполненная на SMD - резисторах, выглядит вот так:
Ну вот. Дальше – рутина. Монтаж «рассыпухи», блокировочных конденсаторов, разъёмов.
Предусмотрел некоторые доработки, а именно:
1. Переделаю выдеовыход, собранный на микросхемах DD44 – DD46. Вместо 3-х микросхем соберу на отдельной платке схему видеовыхода на 4-х транзисторах, по схеме от компьютера «Орель БК-08». Об этом напишу подробнее чуть позже.
2. На плате с целью предотвращения всяких «нештатных ситуаций» во время наладки, установил светодиод, индицирующий подачу питающего напряжения, а также мощный диод 10А10, включённый параллельно питанию в обратной полярности, для защиты от случайной переполюсовки:
Светодиод впаял в места для выводов 1 (можно 4) и 7 неиспользуемой ИМС DD44, в качестве балластного для светодиода используется штатный «подтягивающий» резистор R17 (1кОм).
Диод «встал» вместо пары контактов тоже неиспользуемого разъёма питания XS3.
3. Переделал входной компаратор – формирователь импульсов при считывании сигнала ввода программы (игры) с магнитофона (или смартфона, как делают сейчас). В качестве этого узла (DD43) используется ИМС К561ЛН2, первый инвертор которой с помощью резисторов обратной связи переводится в линейный режим работы.
Так вот. В скане маленькой брошюрки 1991 года «Ленинград-2. Устранение недостатков» прочитал следующее:
«А теперь нечто особенное. Дело в том, что некоторые программы (DUET и др.) для автостарта считывают бит D6 входного порта магнитофона и стартуют, если он ‘равен "0". Исходное же состояние компаратора - "1". Поэтому для достижения "фирменного" состояния порта нужен ещё один инвертор. Он есть. Это параллельный выход D43. Следует превратить его в последовательный (что, кстати, улучшит фронты сигнала). Изменения: ножку 12 D43 отсоединить от ножки 10 и соединить с №11 D43. №11, в свою очередь, отрезать от №13 D43. Цепь сигнала: №8 -> №13; №12 -> №11; №10 -> №10 D42».
Решил сделать такую доработку, но не «распараллеливать» два последних инвертора (нужно резать дорожки), а просто исключить один инвертор. Для этого из панельки под DD43 вынул два контакта - №5 и №6 (хорошо видно на рис.16, возле светодиода), при этом элемент DD43.3 оказался «не у дел», а снизу платы припаял между ними перемычку. На схеме это выглядит вот так:
Заодно изменил номиналы резисторов R14,R15,R16 с целью увеличения коэффициента усиления первого инвертора DD43 в линейном режиме. Почитать про работу таких схем можно в брошюре "МРБ 1172. Нечаев И.А. Конструкции на логических элементах цифровых микросхем":
На самой микросхеме К561ЛН2 перед установкой в панельку между выводами 5 и 7 (это «земля») необходимо припаять перемычку, чтобы исключить «висение в воздухе» неиспользуемого входа DD43.3.
Итак, предварительный монтаж, достаточный для первого включения платы, окончен. Выглядит всё вот так:
Добавил блокировочные конденсаторы по питанию ИМС. Для линейки ОЗУ на КР565РУ5 на каждую ИМС, для остальных – через одну:
На этом пока всё, беру тайм-аут и делаю передышку. Продолжу сборку – наладку через пару недель.
Далее по плану - изготовление блока питания, первое включение, проверка наличия сигналов с помощью осциллографа, изготовление платы видеовыхода для подключения к ТВ через SCART и (или) композитный видеовход, изготовление соединительного кабеля SCART – DIN, подключение к ТВ, настройка, etc).
Всем всего наилучшего!
PS. Добавлю в качестве примера несколько ссылок, где можно скачать оригинальные прошивки, прошивки для различных клонов ZX, прошивки тест - ПЗУ, игры:
Прошивки ПЗУ:
https://archive.org/details/sinclair-zx-spectrum-firmware
https://vk.com/wall-193843886_56217
https://zx-pk.ru/threads/6414-proshivki-spectrum.html
Игры:
https://www.emu-land.net/computers/zx_spectrum/games/top?ysclid=lv999h423q634695955
https://archive.org/details/sinclair-zx-spectrum-games
Тест – ПЗУ:
https://zxbyte.ru/test_rom_for_zx-spectrum.htm
Добавлю, что поисковики материалы по ZX находят легко.
Самый "полный" сайт по ZX, на мой взгляд:
И еще мне очень нравится "побродить" вот здесь:
Удачи!