ГЛАВА 4
ПРОГРАММНАЯ ПРОВЕРКА. ТЕСТ-ПЗУ
4.Х Характеристика тестовой программы.
Тест предназначен для проверки правильности функциониро-
вания персональных компьютеров, совместимых с оригинальным
компьютером "SINCLAIR ZX-SPECTROM 48К", с помощью программ-
ных средств. Для удобства использования тестовая программа
записана в микросхему ПЗУ.
Тест включает в себя проверку следующих элементов компью-
тера:
■ Проверка правильности функционирования цветоформирую-
щего канала и регистра цветов бордюра.
■ Оценка быстродействия компьютера и правильности форми-
рования сигнала "ОЖИДАНИЕ" (WAIT) при выполнении процессором
команд, зашитых в ПЗУ.
■ Проверка правильности отображения на экран цветовых ат-
рибутов и соответствия адресов, формируемых видеоконтролле-
ром, адресам, формируемым процессором для области цветовых
атрибутов экрана.
■ Проверка правильности формирования видеоконтроллером
графической структуры экрана и соответствия адресов, форми-
руемых видеоконтроллером, адресам, формируемым процессором
для графической области экрана.
■ Проверка функционирования канала формирования звука.
■ Проверка функционирования выхода сигнала для записи на
магнитофон.
■ Проверка исправности буфера чтения данных из ОЗУ в про-
цессор .
■ Проверка исправности микросхем ОЗУ мощным комплексным
двухэтапным тестом.
■ Проверка микросхем ПЗУ комплексным двухэтапным тестом,
в том числе проверка подключения микросхем ПЗУ и подсчет
контрольных сумм содержимого ПЗУ блоками по 2 килобайта.
4.2 Отличительные особенности ТЕСТА
■ Программа теста не использует стек и другие ячейки ОЗУ
компьютера и может функционировать при полностью неисправном
ОЗУ.
■ Отображение результатов диагностики на экран произво-
дится таким образом, что результаты могут быть прочитаны
даже при одной-двух полностью неработающих микросхемах ОЗУ.
■ Все результаты диагностики представляются сообщениями
на русском языке.
ТРЕБОВАНИЯ: Для того,чтобы тест был работоспособен, необ-
ходимо исправное функционирование процессора и
его способность прочитать команды из нулевой
микросхемы ПЗУ.
4.3 Установка ТЕСТ-ПЗУ
В предлагаемой схеме предусмотрена установка ТЕСТ-ПЗУ в
отдельное гнездо на плате компьютера. Переключателем SA3
включается режим тестирования, но при этом обращение к сис-
темным ПЗУ становится невозможным, и тест ПЗУ проходить не
будет.
Как правило, микросхема ТЕСТ-ПЗУ типа 573РФ2 вставляется
в разъем-кроватку на место НУЛЕВОЙ ПЗУ операционной системы
комп ьютера.
Для компьютеров, использующих ПЗУ типа 573РФ2 (573РФ5) в
количестве 8 штук, микросхема ТЕСТ-ПЗУ просто заменяет нуле-
вую микросхему стандартного ПЗУ.
Если же компьютер использует микросхемы типа 573РФ4
(573РФ6, INTEL 2764), микросхему ТЕСТ-ПЗУ необходимо вста-
вить в кроватку на место нулевой ПЗУ компьютера таким обра-
зом, чтобы 1-я ножка ТЕСТ-ПЗУ совпадала с 3-м гнездом кро-
ватки. При этом НЕОБХОДИМО ОТОГНУТЬ 21 и 24 ВЫВОДЫ МОСРОС-
ХВМЫ ТЕСТ-ПЗУ с тем, чтобы они не попали в гнезда кроватки и
СОЕДИНИТЬ У 1МКРОСХВМЫ ТЕСТ-ПЗУ ВЫВОДЫ 21 И 24 С ГНЕЗДОМ 28
КРОВАТКИ (это гнездо питания +5V).
ПРМвЧАНИЕ: В таком варианте установки не будет проходить
тест контрольных сумм ПЗУ компьютера, а ос-
тальные части теста будут исправно функциони-
ровать .
4.4 Запуск ТЕСТА
Тест автоматически начинает свою работу при включении пи-
тания компьютера или после нажатия кнопки "СБРОС" компью-
тера.
При этом последовательно начинают проходить следующие
части теста:
4.5 Тест ВОРДЮРА
Начинается изменение цветов бордюра с интервалом прибли-
зительно в 1 секунду. Цвета последовательно меняются восемью
ступенями от черного (код ООН) до белого (код 07Н). Это дает
возможность проверить правильность отображения цветов бор-
дюра, работу мультиплексора цвета и цветоформирующей мат-
рицы, регистра цвета бордюра, а также позволяет убедиться в
том, что процессор исправно отрабатывает команды, записанные
в ТВСТ-ПЗУ.
После изменения цветов бордюра на нем в течении несколь-
ких секунд будет наблюдаться оригинальная картинка в виде
"ступенек" или беспорядочно мелькающих квадратиков. "Сту-
пеньки" будут наблюдаться только в том случае, если схема
формирования сигнала "ОЖИДАНИЕ" ("WAIT") работает непра-
вильно, замедляя выполнение процессором команд, зашитых в
ТВСТ-ПЗУ и стандартные ПЗУ компьютера. Такое замедление не-
допустимо, поскольку оно ухудшит работу компьютера с магни-
тофоном и может стать причиной неработоспособности некоторых
программ.
Во время выполнения остальных частей теста такая же кар-
тинка будет еще не раз появляться на экране, выполняя роль
разделителя между частями теста и небольшой задержки. В
дальнейшем для краткости условимся называть такую картинку
"СТУПЕНЬКОЙ".
ПР1МВЧАНИВ: Эта часть теста, как и весь тест в целом, бу-
дет проходить и при отсутствии, и при наличии
сигнала прерывания "IHT", поскольку прерыва-
ния процессору во время выполнения теста зап-
рещены.
4.6 Тест АТРИБУТОВ
После теста бордюра программа переходит к проверке пра-
вильности отображения на экране цветовых атрибутов и форми-
рования структуры экрана. Учитывая, что тест атрибутов (как
и тест графики) необходим только на начальном этапе отладки
компьютера и длится довольно долго, имеется возможность
сразу после смены последнего цвета бордюра перейти к тесту
буфера чтения данных из ОЗУ, минуя вышеперечисленные про-
верки. Для этого следует при прохождении теста бордюра в мо-
мент окраски бордюра в последний БЕЛЫЙ цвет нажать клавишу
( на клавиатуре компьютера. Причем клавиша
может^ыть также нажата и удерживаема заблаговременно, еще
во время смены цветов.
Вели компьютер находится на столь ранней стадии отладки,
что не имеет еще клавиатуры, тогда вместо нажатия клавиши
можно подать уровень логического "О" на вход порта
клавиатуры, соответствующий разряду DO шины данных системы.
Вели вы не нажимали клавишу после теста бордюра
экран начнет медленно очищаться" от цветовых атрибутов. При
этом на смену хаотически мигающим разноцветным знакоместам
будут приходить знакоместа черно-белые, нормальной яркости и
не мигающие (при этом в зону цветовых атрибутов ОЗУ с адреса
58ООН no 5AFFH будет записываться код 38Н). Заполнение об-
ласти атрибутов происходит медленно, давая возможность прос-
ледить структуру экрана. Атрибуты должны переписываться, на-
чиная с левого верхнего угла экрана слева направо и сверху
нниз по по строкам - так как мы читаем книгу. Одновременно
по бордюру должны бежать красно-голубые полосы, а на выходах
сигнала ЗВУК ("ODD") и МАГНИТОФОН ("OUT") должен присутство-
вать сигнал "МЕАНДР** (импульсы со скважностью 2 и частотой
около 800 герц ) .
Л.У Тест ГРАФИКИ
После очистки цветовых атрибутов на экране мы увидим хао-
тически расположенные черные точки на белом фоне. Затем нач-
нется медленное заполнение области экрана байтами FFH, что
воспринимается на глазах как рисование черных линий. При
правильной структуре экрана линии должны появляться по той
же схеме, как и при загрузке картинки на экран с магнито-
фона, т.е. сначала рисуется линия шириной в одну точку в са-
мой верхней строке экрана, следующая линия рисуется на 8 то-
чек ниже нее, следующая еще на 8 точек ниже, и так восемь
линий. Затем девятая линия рисуется во второй строке эк-
рана, десятая линия - на 8 точек ниже девятой и так далее,
пока верхняя треть экрана не окажется целиком закрашенной в
черный цвет, после чего так же начинает закрашиваться вторая
треть экрана, а за ней и нижняя треть экрана. В конце концов
весь экран должен оказаться закрашенным черным цветом. Весь
этот процесс сопровождается черно-белыми полосами на бордюре
и сигналом частотой 800 гц на выходах "ЗВУК" и "МАГНИТОФОН".
После этого на бордюре должна на несколько секунд поя-
виться "СТУПЕНЬКА", а затем начнется заполнение области эк-
рана байтами ООН, что воспринимается на глаз как рисование
белых линий в том же порядке, в каком ранее рисовались чер-
ные линии. В конце концов весь экран должен оказаться зак-
рашенным белым цветом. Весь этот процесс сопровождается
черно-белыми полосами на бордюре и сигналом частотой 800 Гц
на выходах "ЗВУК" и "МАГНИТОФОН".
Этот тест позволяет выявить такие неисправности, как "за-
липания" или обрывы адресных шин, ведущих от мультиплексоров
к микросхемам ОЗУ и от процессора или видеоконтроллера к
мультиплексорам, а также неисправность или неправильное
включение самих мультиплексоров или микросхем ОЗУ и т.д.
Скажем, если одновременно рисуется на экране не одна ли-
ния, а две или более, то это неисправность линии адреса, вы-
даваемого видеоконтроллером, в районе средних адресов. Вели
линия одновременно начинает рисоваться в нескольких местах
одной и той же строки, это означает неисправность линии ад-
реса видеоконтроллера в районе младших адресов (А0-А4), и
т.д.
Таким образом, путем анализа видимой на экране картины
рисования линий можно составить представление о характере
неисправности.
Помимо проверки структуры экрана мы можем убедиться в
способности ячеек ОЗУ, содержимое которых отображается на
экране, записывать и хранить единицы и нули, что немаловажно
для читабельности сообщений в следующих частях теста.
4.8 Тест БУФЕРА ЧТЕНИЯ ДАННЫХ
Для проверки буфера чтения данных из ОЗУ программа теста
производит запись в первую ячейку ОЗУ (адрес 4000Н) таких
байтов, как все нули (00), все единицы (FF), а также "бегу-
щий ноль" (FE, FD, FB, F7 и т.д.) и "бегущая единица" (01,
02, 04, 08 и т.д.), а затем считывает записанный байт и
сравнивает его с тем, который записывался.
Вели все комбинации считаны правильно, то на экран будет
выдано следующее сообщение:
ТЕСТ БУФЕРА ЧТЕНИЯ ДАННЫХ
БУФЕР ИСПРАВЕН
Ноли же будет найдена ошибка, то будет выдано следующее со-
общение :
ТЕСТ БУФЕРА ЧТЕНИЯ ДАННЫХ
НЕИСПРАВНОСТЬ БУФЕРА
ЗАПИСАНО - ООЮОООО
СЧИТАНО - ОООООООО
Выдаются записанный и считанный байты в двоичном коде, что
позволяет быстро определить неисправность конкретного раз-
ряда буфера чтения данных (при этом возможна как неисправ-
ность микросхемы буфера, так и обрыв соответствующей линии
данных, ведущей от буфера к микросхеме ОЗУ или к процес-
сору, а также полная неработоспособность микросхемы ОЗУ со-
ответствующего разряда данных. Однако в последнем случае эта
неработоспособность может быть выявлена простой перестанов-
кой микросхем ОЗУ на плате и повторением теста).
Вели тест прошел успешно, то после "ступенек" на бордюре
программа перейдет к тесту ОЗУ, а если обнаружена ошибка, то
вышеуказанное сообщение будет сохраняться на экране в тече-
нии минуты, причем бордюр все это время будет черным, а за-
тем программа перейдет к тесту ПЗУ, минуя тест ОЗУ.
4.9 Тест ОЗУ
Тест ОЗУ выполняется в два этапа, первый из которых вы-
полняется в два прохода. На первом этапе проверяются адрес-
ные линии и способность ячеек ОЗУ хранить "О" и "I". Это
достигается записью на первом проходе всей области ОЗУ кодо-
вой последовательности:
11011011 (DBH)
10110110 (ВбН)
01101101 (6DH)
После записи всей памяти происходит считывание получившихся
кодовых последовательностей. Например, мы записывали:
При такой неисправности программа обнаружит отказ линий ад-
реса и выдаст следующее сообщение:
ОШИБКА 1-ГО ЭТАПА ТЕСТА ОЗУ
Н ВИСПРАВНОСТ Ь АДР ВСА
АДРЕС 5415 ЗАПИСАНО - 11011011
СЧИТАНО - 10110110
Если же будет обнаружено несовпадение лишь одного бита в
байте, то это будет считаться отказом какой-либо из восьми
микросхем ОЗУ и будет выдано следующее сообщение:
ОШИБКА 1-ГО ЭТАПА ТВСТА ОЗУ
НЕИСПРАВНОСТЬ МИКРОСХЕМЫ 5
АДРВС D843 ЗАПИСАНО - 11011011
СЧИТАНО - 1Ю11111
Второй проход отличается от первого только другой контроль-
ной последовательностью записываемых в ОЗУ байт:
00100100
01001001
10010010
Выводимые сообщения при этом те же.
Для полной проверки работоспособности микросхем ОЗУ (от-
сутствие влияния ячеек друг на друга, стекания зарядов,
внутренних паразитных связей и т.д.) на втором этапе теста
ОЗУ оно заполняется модифицированным кодом Грея, где каждый
последующий байт отличается от предыдущего не менее, чем
семью битами из восьми. В случае обнаружения отказа выдается
следующее сообщение:
ОШИБКА 2—ГО ЭТАПА ТВСТА
НЕИСПРАВНОСТЬ МИКРОСХЕМЫ 2,3
АДРВС 908F ЗАПИСАНО - llllOOOO
СЧИТАНО - 11111ЮО
Это сообщение сохраняется на экране в течении одной минуты,
причем бордюр все это время окрашен в черный цвет. После
этого выполняется тест проверки содержимого ПЗУ.
Вели же все ОЗУ исправно, на экран выводится сообщение:
ТЕСТ ОЗУ
ОЗУ ИСПРАВНО
4.Ю Тест ПЗУ*
Тест ПЗУ также проходит в два этапа. На первом этапе в
каждом из оставшихся после замены 0-й ПЗУ микросхемой TBGT-
ПЗУ блоке ПЗУ размером 2048 Байт считывается содержимое 4-х
ячеек, и если хотя бы одна из этих ячеек не совпадает с об-
разцовой (хранящейся в ТВСТ-ПЗУ), выдается номер неисправной
микросхемы и пишется содержимое всех четырех контрольных
ячеек в двоичном коде:
При этом под "ЗАПИСАНО" понимается образец, записанный в
микросхему ТВСТ-ПЗУ, а под "СЧИТАНО" - реально считанный из
проверяемой микросхемы байт ее содержимого.
Таким образом, первый этап теста ПЗУ дает возможность от-
ловить такие неисправности, как обрывы шин данных и адресов
между микросхемами ПЗУ и процессором, плохой контакт ПЗУ в
кроватках, отсутствие питания на отдельных микросхемах ПЗУ
либо отсутствие сигнала выбора микросхемы с дешифратора.
Вели же содержимое всех контрольных ячеек во всех микрос-
хемах совпадает с образцом, то производится второй этап
теста ПЗУ, на котором подсчитываются контрольные суммы ПЗУ
блоками по 2048 Байт. При первом же несовпадении контрольной
суммы выдается сообщение:
ТЕСТ ПЗУ
2-Я МИКРОСХЕМА ПЗУ
ОШИБКА КОНТРОЛЬНОЙ СУММЫ
ПРИМВЧАНИВ: Данный тест рассчитан на проверку ПЗУ, содер-
жащих стандартную версию операционной системы
типа "1982 Sinclair Research Ltd".
В случае, если тест ПЗУ прошел успешно, выдается сообще-
ние :
ТЕСТ ПЗУ
ПЗУ ИСПРАВНО
После этого программа останавливается, на бордюре идут
черно-белые полосы, сопровождающиеся выдачей на выходы ЗВУК
и МАГНИТОФОН компьютера сигнала "МВАНДР" частотой 800 Гц.
Для повторного прохождения всего теста (с начала) необхо-
димо нажать кнопку "СВРОС" на задней стенке компьютера.
* * *