Всем привет! Появилось немного времени, чтобы позаниматься рукоблудием, поэтому было решено выполнить один из давних проектов - собрать компьютер своими руками. Для начала, мне понадобилась пустая печатная плата компьютера и детали.
Чтобы достать такую плату, я связался с одним из спектрумистов, который заказывал у китайцев данную модель. Так как присылают с завода в количестве не менее 5 штук, то у него возникли остатки, и одну штуку он переслал мне. Пока плата ехала, я насобирал в загашнике детали, и принялся паять. Вообще, положено сначала припаивать мелкие детали, и лишь затем - микросхемы. Однако, в данном случае я помещал микросхемы на плату по мере откапывания оных в различных ящиках, и поэтому припаивал, чтобы не потерялись.
Для отладки и сборки напечатал монтажную схему с известного сайта, где отмечал, какие детали исправны, а какие под подозрением.
Далее, настал черёд испытаний. Те, кто хоть раз собирал Спектрум, знают, что собрать его с первого раза практически нереально. Всегда после сборки плата содержит какие-то неисправности. В данном случае, перемычек из припоя там быть не может (всё-таки китайские технологии), но могут быть неисправны микросхемы, или присутствовать другие нарушения. Поэтому первое включение всегда таит в себе неожиданность. У меня нашёлся небольшой черно-белый монитор, и я подключил к нему свою плату. Получил следующую картину:
Как можно видеть, это явно не то, что должно быть. Однако, рамочка чёткая, пиксели ровные - значит, большая часть логики работает. Видеосигнал формируется.
Изначально я думал, что проблема в расхождении сигналов по времени. Однако, мне не с кем было проконсультироваться - пришлось выходить из ситуации своими силами и мозгами. Так как детали для компьютера были взяты невесть откуда, то перед установкой я проверял их на макетной плате. Из непроверенных деталей компьютера оставались: оперативка, процессор, память.
Исходя из того, что плата налаживается в несколько этапов, я вытащил процессор и память, оставив только оперативку. На картинку это не повлияло. Аппаратуры для проверки у меня не было. Тогда я придумал следующий способ (метод тыка): я вставлял по одной микросхеме ОЗУ из 8 в панельку, и смотрел, какая будет картинка. Получилось, что у шести микросхем при установке появляются вертикальные полосы, а у двух - горизонтальные. Я подумал, что две микросхемы неисправны. Заменить мне было не на что - комплект был только один. Стало понятно - надо заказывать. Оказалось, что микросхемы РУ5 ещё и не так просто купить, у меня ушло около 2 недель, но в конце концов я их купил (64кБ РУ5 по цене 2ГБ DDR3). Оказалось, что у всех купленных микросхем полоски тоже горизонтальные. Выходит, что из моего изначального комплекта было ИСПРАВНО только 2 штуки. Также я пропаял ножку, которая выдаёт сигнал INFV (DD35-10), чтобы появились пиксели.
Далее, я установил новые микросхемы и процессор. Матрас-матрас, ну покажись хоть раз
После замены ОЗУ картинка стала лучше. Все отклонения исчезли. Изначально матрас также у меня работал нестабильно. Оказалось, что проблема была в кабеле от блока питания - на нём терялось 0,5В, а при питании в 4,5В микросхемы уже включались не с первого раза. Замена кабеля решила проблему, и теперь при каждом включении компьютера появлялся матрас. Однако, чего-то не хватало: операционная система всё равно не запускалась. Значит, были ещё неисправности.
Мне пришлось изготовить тест-ПЗУ 256 байт (программа Улановского), для того, чтобы проверить ОЗУ на исправность. Вот, что показал данный тест:
Неисправность разрядов D5 и D6. Однако, при замене микросхем в панелях ОЗУ местами, неисправность не уходила. Было понятно следующее: либо проблема в шине D (шина данных), либо в шине MD (магистраль данных). Проверив данные шины и все точки соединения, я определил, что они полностью исправны. Почему же тогда ОЗУ не проходила тест? Оказывается, программа Улановского задействует не только ОЗУ, но и буфер DD32 (К555ИР22). Следовательно, подозрение пало на него. Хоть при изначальной проверке он был исправен (либо проверка проведена недостаточно тщательно), но после пайки оказалось, что у него выгорели разряды D1 и D2, и они всегда выдают высокий уровень, вне зависимости от того, что в них поступило.
Но у меня не оказалось такого буфера. А ждать ещё 2 недели одну микросхемку не хотелось. Покопавшись в загашнике глубже, нашлась невесть откуда взявшаяся 74HCT374. Эти микросхемы, по сути, братья, но есть отличия. Пришлось немного переделывать схему компьютера.
Как можно видеть из данной таблицы, микросхема 373 запоминает данные на шине на нисходящем фронте тактового сигнала, а 374 - на восходящем (в импульсном режиме). Следовательно, что нужно сделать? Инвертировать сигнал. Но даже не нужно добавлять какие-то дополнительные детали - на нашей плате данный сигнал уже есть в инвертированном виде.
Достаточно взять тактовый сигнал не с 3, а с 4 ножки, и мы получим нужный эффект. Временно поставил перемычку на плате (11 нога ИР23 - 4 нога DD34):
Это ещё не полная настройка компьютера (как можно видеть, там есть небольшие дефекты), однако, если появляются буквы, значит, все основные узлы (ОЗУ, ЦПУ, ПЗУ, видеоформирователь) относительно исправны. Мне удалось предварительно наладить данный компьютер.
Всем спасибо, с вами был Kekovsky, 2023 г. возможно, выложу более подробный разбор по наладке на технические порталы, как будет время (т.к. тут сильно сокращённая версия).