Загрузить файлы в «/»
Описание теста 128 Андрея Хахонова
This commit is contained in:
parent
b763e8056e
commit
22b68a0e8c
424
TEST128_ver_1_1 (3).txt
Normal file
424
TEST128_ver_1_1 (3).txt
Normal file
@ -0,0 +1,424 @@
|
|||||||
|
|
||||||
|
ТЕСТ ОЗУ 128К
|
||||||
|
|
||||||
|
ТЕСТ-128 v1.1 предназначен для проверки правильности функ-
|
||||||
|
ционирования персональных компьютеров, совместимых с компьютером
|
||||||
|
ZX-SPECTRUM-128 (а также различных его модификаций имеющих ОЗУ
|
||||||
|
объемом 128К), с помощью программных средств.
|
||||||
|
Для удобства использования тестовая программа записана в
|
||||||
|
микросхему ПЗУ.
|
||||||
|
|
||||||
|
ТЕСТ-128 v1.1 ВКЛЮЧАЕТ В СЕБЯ ПРОВЕРКУ
|
||||||
|
СЛЕДУЮЩИХ ЭЛЕМЕНТОВ КОМПЬЮТЕРА:
|
||||||
|
|
||||||
|
1. Проверка правильности функционирования цветоформирующего ка-
|
||||||
|
нала и регистра цветов бордюра.
|
||||||
|
2. Проверка правильности отображения на экране цветовых атрибу-
|
||||||
|
тов и соответствия адресов, формируемых видеоконтроллером, адре-
|
||||||
|
сам, формируемым процессором для области цветовых атрибутов эк-
|
||||||
|
рана, а также проверка правильности формирования видеоконтролле-
|
||||||
|
ром графической структуры экрана и соответствия адресов, форми-
|
||||||
|
руемых видеоконтроллером, адресам, формируемым процессором для
|
||||||
|
графической области экрана.
|
||||||
|
3. Проверка исправности буфера чтения данных (из ОЗУ в процессор)
|
||||||
|
4. Проверка функционирования канала звука и выхода сигнала для
|
||||||
|
записи на магнитофон.
|
||||||
|
5. Проверка исправности буфера чтения данных из ОЗУ в процессор.
|
||||||
|
6. Проверка порта конфигурации.
|
||||||
|
7. Предварительная проверка исправности микросхем ОЗУ.
|
||||||
|
8. Обнаружение сбоев, сложных ошибок в микросхемах ОЗУ с помощью
|
||||||
|
мощного псевдослучайного теста памяти, основанного на псев-
|
||||||
|
дослучайной последовательности.
|
||||||
|
|
||||||
|
ОТЛИЧИТЕЛЬНЫЕ ОСОБЕННОСТИ ТЕСТА 128 v1.1
|
||||||
|
|
||||||
|
1. Программа теста не использует стека и других ячеек ОЗУ
|
||||||
|
компьютера и может функционировать при полностью неисправном
|
||||||
|
ОЗУ.
|
||||||
|
2. Отображение результатов диагностики на экран производится
|
||||||
|
таким образом, что результаты могут быть прочитаны при од-
|
||||||
|
ной-двух полностью неисправных микросхем ОЗУ.
|
||||||
|
3. Все результаты диагностики выводятся на экран на русском
|
||||||
|
языке.
|
||||||
|
|
||||||
|
ТРЕБОВАНИЯ
|
||||||
|
|
||||||
|
Микросхема ТЕСТ-ПЗУ типа 573РФ2(5) устанавливается в па-
|
||||||
|
нельку так, чтобы 12 вывод ПЗУ 573РФ2(5) совпадал с 15 выводом
|
||||||
|
панельки. При этом необходимо отогнуть 21 и 24 выводы, соединить
|
||||||
|
их перемычкой и завести на +5V (28 вывод панельки). В случае ис-
|
||||||
|
пользования двух и более микросхем, ТЕСТ-ПЗУ устанавливается на
|
||||||
|
место младшей (0-й) микросхемы.
|
||||||
|
|
||||||
|
ВНИМАНИЕ!
|
||||||
|
|
||||||
|
ДЛЯ ПРАВИЛЬНОЙ РАБОТЫ ТЕСТА НЕОБХОДИМО, ЧТОБЫ ОТОГНУТЫЕ ВЫВОДЫ
|
||||||
|
НЕ КАСАЛИСЬ КОНТАКТОВ ПАНЕЛИ - В ПРОТИВНОМ СЛУЧАЕ ОТДЕЛЬНЫЕ ЭТА-
|
||||||
|
ПЫ ТЕСТА МОГУТ ВЫПОЛНЯТЬСЯ НЕПРАВИЛЬНО ИЛИ СОВСЕМ НЕ РАБОТАТЬ!!!
|
||||||
|
|
||||||
|
ОБ УСТРОЙСТВЕ ZX-SPECTRUM-128
|
||||||
|
|
||||||
|
Компьютер ZX-SPECTRUM-128 имеет ОЗУ объёмом 128К, которое
|
||||||
|
разделено на 8 частей по 16 Килобайт и которые условно называют-
|
||||||
|
ся банками памяти, а также имеют номера от 0 до 7. Так как про-
|
||||||
|
цессор Z80 имеет адресное пространство только 64К, то нет воз-
|
||||||
|
можности разом подключить к процессору всю оперативную память.
|
||||||
|
Выход был найден следующим образом: представим себе адресное
|
||||||
|
пространство микропроцессора Z80, т.е. 64К разбитым на 4 сектора
|
||||||
|
по 16К каждый и пронумеруем из от 0 до 3. К каждому из 4-х сек-
|
||||||
|
торов подключены следующие устройства: в 0-м секторе - ПЗУ сис-
|
||||||
|
темы (в начальном состоянии, после сброса, это прошивка BASIC
|
||||||
|
128, в дальнейшем она может быть программным образом заменена
|
||||||
|
прошивкой BASIC 48 для совместимости с моделью ZX-SPECTRUM-48).
|
||||||
|
В первом секторе находится один из 16-ти килобайтных банков ОЗУ,
|
||||||
|
часть которого является памятью дисплея и отображается в область
|
||||||
|
экрана - в начальном состоянии это 5-й банк памяти, но в процес-
|
||||||
|
се работы он может быть заменён на 7-й.
|
||||||
|
Во втором секторе жёстко находится 2-й банк ОЗУ. В третий
|
||||||
|
сектор может быть подключён любой из 8-и банков ОЗУ, после сбро-
|
||||||
|
са туда подключён 0-й банк.
|
||||||
|
В системе имеется порт конфигурации, который доступен прог-
|
||||||
|
раммисту и имеет адрес #7FFD. С помощью записи в этот порт (ре-
|
||||||
|
гистр) мы можем менять конфигурацию системы - т.е. переключать
|
||||||
|
ПЗУ, банки ОЗУ и т.д. Регистр конфигурации имеет 8 разрядов.
|
||||||
|
Первые три (с 0 по 2-й) разряда определяют один из 8-ми банков
|
||||||
|
ОЗУ, подключенный в последний сектор адресного пространства про-
|
||||||
|
цессора. Третий определяет один из 2-х банков, который будет
|
||||||
|
подключён в первый сектор адресного пространства и отображён на
|
||||||
|
экран, 0 - подключён 5-й банк, 1 - подключён 7-й банк, 4-й раз-
|
||||||
|
ряд определяет ПЗУ: 0 - подключена прошивка BASIC 128, 1 - BASIC
|
||||||
|
128. Пятый разряд заведует блокировкой записи в регистр конфигу-
|
||||||
|
рации: 0 - запись разрешена, 1 - запись блокирована. Это необхо-
|
||||||
|
димо для работы в режиме ZX-SPECTRUM-48.
|
||||||
|
|
||||||
|
|
||||||
|
АДРЕС Z-80 СЕКТОР ПЗУ 32К
|
||||||
|
---------------¬ --------------¬
|
||||||
|
0000-3FFF ¦ 16K ¦ ___¦0 в разряде 4--+BASIC 128 16K¦
|
||||||
|
¦ 0-й сектор ¦ ¦1 в разряде 4--+BASIC 48 16K¦
|
||||||
|
+--------------+ L--------------
|
||||||
|
4000-7FFF ¦ 16K ¦ ___ ОЗУ 128К
|
||||||
|
¦ 1-й сектор ¦ ¦1 в разряде 3--+7-й БАНК 16К ¦
|
||||||
|
+--------------+ ¦ ¦6-й БАНК 16К ¦
|
||||||
|
8000-BFFF ¦ 16К ¦ ¦0 в разряде 3--+5-й БАНК 16К ¦
|
||||||
|
¦ 2-й сектор ¦ ¦4-й БАНК 16К ¦
|
||||||
|
+--------------+ ¦3-й БАНК 16К ¦
|
||||||
|
C000-FFFF ¦ 16К ¦--------------------¦2-й БАНК 16К ¦
|
||||||
|
¦ 3-й сектор ¦ любой из ¦1-й БАНК 16К ¦
|
||||||
|
L--------------- 8-ми ¦0-й БАНК 16К ¦
|
||||||
|
БАНКОВ ОЗУ L--------------
|
||||||
|
000 в разрядах 2 - 0 - 0-й БАНК
|
||||||
|
001 ------------------ 1-й БАНК
|
||||||
|
...............................
|
||||||
|
111 ------------------ 7-й БАНК
|
||||||
|
|
||||||
|
|
||||||
|
ПУСК ТЕСТА В РАБОТУ
|
||||||
|
|
||||||
|
Тест автоматически начинает свою работу при включении пита-
|
||||||
|
ния или после нажатия кнопки 'СБРОС' компьютера. При этом в те-
|
||||||
|
чении 1-2 секунд на бордюре появляются полосу всех цветов (от
|
||||||
|
чёрного до белого). Они должны либо стоять неподвижно, либо мед-
|
||||||
|
ленно перемещаться. Это полезно, во-первых, для проверки наличия
|
||||||
|
всех цветов на бордюре, а во-вторых, в качестве задержки между
|
||||||
|
этапами. Правда стоит заметить, что чёткие полосы мы будем ви-
|
||||||
|
деть не на всех вариантах ZX-Spectrum-128. Из-за различия в так-
|
||||||
|
товой частоте и реализации сигнала WAIT на некоторых машинах
|
||||||
|
вместо полос мельтешение цветов, хотя машины работали исправно.
|
||||||
|
Но во всяком случае на варианте, который создал Сергей Зонов на
|
||||||
|
базе своей улучшенной платы для ZX-Spectrum-48, цветные полосы
|
||||||
|
как приклеенные.
|
||||||
|
|
||||||
|
ТЕСТ АТРИБУТОВ И ГРАФИКИ:
|
||||||
|
|
||||||
|
Учитывая, что тест атрибутов (как и тест графики) необходим
|
||||||
|
только на начальном этапе отладки компьютера, мы, в отличии от
|
||||||
|
тестов SPECTRUM 48K, попадаем в него только в том случае, если
|
||||||
|
нажимаем клавишу SPACE/BREAK на клавиатуре компьютера перед
|
||||||
|
окончанием самой первой задержки. Причём клавиша также может
|
||||||
|
быть нажата и удерживаема заблаговременно.
|
||||||
|
Если компьютер находится на столь ранней стадии отладки,
|
||||||
|
что не имеет клавиатуры, тогда вместо нажатия клавиши <SPACE>
|
||||||
|
можно подать уровень логического 0 на вход порта клавиатуры D0
|
||||||
|
шины данных системы.
|
||||||
|
Если вы нажали клавишу <SPACE>, после задержки, экран
|
||||||
|
начнёт медленно очищаться от цветовых атрибутов. При этом на
|
||||||
|
смену хаотически мигающим цв. знакоместам будут приходить знако-
|
||||||
|
места чёрно-белые, нормальной яркости и не мигающие (при этом
|
||||||
|
зона цветовых атрибутов ОЗУ с адреса #5800 по #5AFF будет запи-
|
||||||
|
сываться код #38). Заполнение области атрибутов происходит мед-
|
||||||
|
ленно, давая возможность проследить стр-ру экрана. Атрибуты
|
||||||
|
должны переписываться начиная с левого верхнего левого угла сле-
|
||||||
|
ва направо и сверху вниз по строкам - так, как мы читаем книгу.
|
||||||
|
Одновременно по бордюру должны бежать красно-голубые полосы, а
|
||||||
|
на выходах сигнала 'ЗВУК' и 'МАГНИТОФОН' должен присутствовать
|
||||||
|
сигнал 'МЕАНДР' (импульсы со скважностью 2 и частотой около
|
||||||
|
800Гц).
|
||||||
|
После очистки цветовых атрибутов на экране мы увидим хаоти-
|
||||||
|
чески расположенные чёрные точки на белом фоне. Затем начнётся
|
||||||
|
медленное заполнение области экрана байтами #FF, что воспринима-
|
||||||
|
ется на глаз, как рисование чёрных линий. При правильной стр-ре
|
||||||
|
экрана линии должны появляться по той же схеме, как и при заг-
|
||||||
|
рузке картинки на экран с магнитофона, т.е. сначала рисуется ли-
|
||||||
|
ния шириной в одну точку в самой верхней строке экрана; следую-
|
||||||
|
щая рисуется на 8 точек ниже неё; следующая ещё на 8 точек ниже;
|
||||||
|
и так 8 линий. Затем 9-я линия рисуется во второй строке, деся-
|
||||||
|
тая на 8 точек ниже 9-й, и т.д., пока верхняя часть экрана не
|
||||||
|
окажется полностью закрашенной в чёрный цвет, после чего начина-
|
||||||
|
ет закрашиваться вторая часть экрана, а за ней и нижняя треть
|
||||||
|
экрана. В конце концов весь экран должен оказаться закрашенным
|
||||||
|
чёрным цветом. Весь этот процесс сопровождается чёрно-белыми по-
|
||||||
|
лосами на бордюре и сигналом частотой 800Гц на выходах 'ЗВУК' и
|
||||||
|
'МАГНИТОФОН'.
|
||||||
|
Этот тест позволяет выявит такие неисправности как 'залипа-
|
||||||
|
ния' или обрывы адресных шин, ведущих от мультиплексоров к мик-
|
||||||
|
росхемам ОЗУ и от процессора или видеоконтроллера к мультиплек-
|
||||||
|
сорам, а также неисправность или неправильное включение самих
|
||||||
|
мультиплексоров или микросхем ОЗУ и т.д.
|
||||||
|
Скажем, если одновременно рисуется не одна линия, а две или
|
||||||
|
более, то эта неисправность линии адреса, выдаваемого видео-
|
||||||
|
контроллером в районе средних адресов. Если линия одновременно
|
||||||
|
начинает рисоваться в нескольких местах одной и той же строки,
|
||||||
|
это означает неисправность линии адреса видеоконтроллера в райо-
|
||||||
|
не младших адресов (A0-A4) и т.д.
|
||||||
|
Т.е. путём анализа видимой на экране картины рисования ли-
|
||||||
|
ний можно составить представление о характере неисправности.
|
||||||
|
Помимо проверки стр-ры экрана мы можем убедиться в способ-
|
||||||
|
ности ячеек ОЗУ, содержимое которых отображается на экране, за-
|
||||||
|
писывать и хранить единицы и нули, что немаловажно для чита-
|
||||||
|
бельности сообщений в следующих частях теста.
|
||||||
|
|
||||||
|
ТЕСТ БУФЕРА ЧТЕНИЯ ДАННЫХ
|
||||||
|
|
||||||
|
Для проверки буфера чтения данных из ОЗУ программа теста
|
||||||
|
производит запись в первую ячейку ОЗУ (адрес #4000), а затем
|
||||||
|
считывает записанный байт и сравнивает его с тем, который запи-
|
||||||
|
сался. Проверка производится всеми возможными комбинациями от
|
||||||
|
#00 до #FF.
|
||||||
|
Если все комбинации считаны правильно, то на экран будет
|
||||||
|
выдано следующее сообщение:
|
||||||
|
|
||||||
|
ТЕСТ БУФЕРА
|
||||||
|
БУФЕР-НОРМА
|
||||||
|
|
||||||
|
а при ошибке: ТЕСТ БУФЕРА
|
||||||
|
ОШИБКА
|
||||||
|
ЗАПИСАНО - 00100000
|
||||||
|
СЧИТАНО - 00000000
|
||||||
|
|
||||||
|
Выдаются записанный и считанный байты в двоичном коде, что
|
||||||
|
позволяет быстро определить неисправность конкретного буфера
|
||||||
|
чтения данных. (При этом возможна как неисправность микросхемы
|
||||||
|
буфера, так и обрыв соответствующей линии данных, ведущей от бу-
|
||||||
|
фера к микросхеме ОЗУ или к процессору, а также полная нерабо-
|
||||||
|
тоспособность микросхемы ОЗУ соответствующего разряда шины дан-
|
||||||
|
ных. Однако в последнем случае эта неисправность может быть вы-
|
||||||
|
явлена простой перестановкой микросхем ОЗУ на плате и повторени-
|
||||||
|
ем теста.)
|
||||||
|
Если тест прошёл успешно, то после задержки программа пе-
|
||||||
|
рейдёт к тесту порта конфигурации, а если обнаружена ошибка, то
|
||||||
|
вышеуказанное сообщение будет сохранено на экране, причём бордюр
|
||||||
|
будет чёрным, а программа зависнет, так как, если неработоспосо-
|
||||||
|
бен буфер, то нет смысла продолжать тест.
|
||||||
|
|
||||||
|
ТЕСТ ПОРТА КОНФИГУРАЦИИ
|
||||||
|
|
||||||
|
Порт конфигурации, как говорилось выше, имеет адрес в сис-
|
||||||
|
теме #7FFD и предназначен для подключения различных банков памя-
|
||||||
|
ти в адресное пространство процессора. Во время теста мы записы-
|
||||||
|
ваем байты, отличающиеся на 1 в первую ячейку каждого из 8-и
|
||||||
|
банков, последовательно подключая их в старший сектор (для про-
|
||||||
|
цессора адрес первой ячейки любого подключенного банка - #C000).
|
||||||
|
Затем производится считывание этих байт и, если они совпали с
|
||||||
|
записанными, то байт записываемый в первую ячейку 0-го банка,
|
||||||
|
увеличивается на единицу и процесс повторяется до тех пор, пока
|
||||||
|
до нулевого банка не будут перебраны все комбинации от #00 до
|
||||||
|
#FF. Т.е. на первом проходе в 0-й банк пишется #00, в 1-й - #01,
|
||||||
|
во 2-й - #02,... , в 7-й #07.
|
||||||
|
На втором проходе в 0-й банк - #01, в 1-й - #02,... , в 7-й
|
||||||
|
- #08 и так далее до 255 прохода (#FF).
|
||||||
|
После этого порт конфигурации считается исправным и вы-
|
||||||
|
даётся сообщение:
|
||||||
|
ТЕСТ - ПОРТ КОНФИГУРАЦИИ
|
||||||
|
ПОРТ КОНФИГУРАЦИИ - НОРМА
|
||||||
|
|
||||||
|
Если обнаружено несовпадение считанного с записанным бай-
|
||||||
|
том, то выдаётся сообщение об ошибке:
|
||||||
|
|
||||||
|
ТЕСТ - ПОРТ КОНФИГУРАЦИИ
|
||||||
|
ОШИБКА
|
||||||
|
СЕКТОР - 3 ЗАПИСАНО - 00000000
|
||||||
|
БАНК - 0 СЧИТАНО - 00000010
|
||||||
|
|
||||||
|
Так следует обратить внимание на следующие моменты: чтобы
|
||||||
|
проверить правильность начальной установки 0-го банка в послед-
|
||||||
|
ний сектор адресного пространства тестирующая программа записи
|
||||||
|
его в первую ячейку байта 00 не производит записи в порт конфи-
|
||||||
|
гурации никаких значений, а считает, что после сброса 0-й банк
|
||||||
|
уже установлен. Поэтому, если программа не может считать байт 00
|
||||||
|
из 0-го банка, то причиной этого может оказаться неверная на-
|
||||||
|
чальная установка, хотя я не даю каких-либо возможных картин
|
||||||
|
возможных неисправностей, например такое же сообщение будет вы-
|
||||||
|
дано при постоянном 0 на выходе 1-го разряда порта конфигурации
|
||||||
|
или при замыкании выходов 0-го и 1-го разрядов.
|
||||||
|
При ошибке в данной части теста предстоит попытаться проа-
|
||||||
|
нализировать ситуацию и проверить схему на возможные неисправ-
|
||||||
|
ности. Например, в вышеприведённом примере следует попытатьтся
|
||||||
|
понять, почему при попытке чтения из 0-го банка мы получили
|
||||||
|
байт, который послали во 2-й банк. Ещё один момент: байты, запи-
|
||||||
|
санные в первые ячейки банков 2 и 5, мы пытаемся прочесть не
|
||||||
|
только из ячейки с номером #C000, но и из первых ячеек других
|
||||||
|
секторов. Для банка 2 - как по адресу C000, так и по адресу
|
||||||
|
8000; а для банка 5 - как по адресу C000, так и по адресу 4000.
|
||||||
|
При несовпадении записанного и считанного будет выведено сообще-
|
||||||
|
ние:
|
||||||
|
|
||||||
|
для банка 2 - СЕКТОР - 2 для банка 5 - СЕКТОР - 1
|
||||||
|
БАНК - 2 БАНК - 5
|
||||||
|
|
||||||
|
Это означает, что, видимо, вместо этих банков подключено
|
||||||
|
бог знает что. Естественно, чтобы тест прошёл успешно, необходи-
|
||||||
|
мо, чтобы первые ячейки ОЗУ были бы исправны, в противном случае
|
||||||
|
будет выдано сообщение об ошибке, хотя сам порт исправен. Выход
|
||||||
|
может быть найден перестановкой микросхем ОЗУ.
|
||||||
|
|
||||||
|
ПРЕДВАРИТЕЛЬНЫЙ ТЕСТ ОЗУ
|
||||||
|
|
||||||
|
Предварительный тест ОЗУ, несмотря на все его недостатки
|
||||||
|
(обнаружение не всех ошибок ОЗУ), проверяет адресные линии. Он
|
||||||
|
способен отличить ошибку адреса от ошибки данных, проверяет спо-
|
||||||
|
собность ячеек ОЗУ хранить '0' и '1', и главное, делает это
|
||||||
|
очень быстро. Это достигается записью на первом проходе всей об-
|
||||||
|
ласти ОЗУ кодовой последовательностью.
|
||||||
|
|
||||||
|
11011011 (#DB)
|
||||||
|
10110110 (#B6)
|
||||||
|
01101101 (#6D)
|
||||||
|
|
||||||
|
После записи всей последовательности происходит считывание
|
||||||
|
получившихся кодовых последовательностей. Например мы записыва-
|
||||||
|
ли:
|
||||||
|
|
||||||
|
АДРЕСА БАЙТЫ
|
||||||
|
... A2 A1 A0 HEX
|
||||||
|
---------------------------
|
||||||
|
... 0 0 0 DB
|
||||||
|
... 0 0 1 B6
|
||||||
|
... 0 1 0 6D
|
||||||
|
... 0 1 1 DB
|
||||||
|
... 1 0 0 B6
|
||||||
|
... 1 0 1 6D
|
||||||
|
... 1 1 0 DB
|
||||||
|
... 1 1 1 B6
|
||||||
|
|
||||||
|
Предположим, что у нас имелся обрыв линии адреса
|
||||||
|
'A2'(A2=0), тогда у нас получится следующая комбинация:
|
||||||
|
|
||||||
|
АДРЕСА БАЙТЫ
|
||||||
|
... A2 A1 A0 HEX
|
||||||
|
---------------------------
|
||||||
|
... 0 0 0 DB B6
|
||||||
|
... 0 0 1 B6 6D В эту область ОЗУ
|
||||||
|
... 0 1 0 6D DB процессор запишет
|
||||||
|
... 0 1 1 DB B6 контрольные коды дважды
|
||||||
|
... * 0 0 **
|
||||||
|
... * 0 1 ** Эта область недоступна
|
||||||
|
... * 1 0 ** процессору
|
||||||
|
... * 1 1 **
|
||||||
|
|
||||||
|
При такой неисправности программа обнаружит отказ линии и
|
||||||
|
выдаст сообщение типа:
|
||||||
|
|
||||||
|
ТЕСТ ОЗУ
|
||||||
|
ОШИБКА
|
||||||
|
АДРЕСА АДРЕС - C000
|
||||||
|
СЕКТОР - 3 ЗАПИСАНО - 11011011
|
||||||
|
БАНК - 0 СЧИТАНО - 10110110
|
||||||
|
|
||||||
|
Если же обнаружено несовпадение лишь одного бита в байте,
|
||||||
|
то это будет считаться отказом какой-либо из восьми микросхем
|
||||||
|
ОЗУ и будет выдано сообщение:
|
||||||
|
|
||||||
|
ТЕСТ ОЗУ
|
||||||
|
ОШИБКА
|
||||||
|
РАЗРЯДА 2 АДРЕС - D843
|
||||||
|
СЕКТОР - 3 ЗАПИСАНО - 11011011
|
||||||
|
БАНК - 6 СЧИТАНО - 11011111
|
||||||
|
|
||||||
|
Что означает следующее: во время теста ОЗУ выявлена ошибка
|
||||||
|
микросхемы ОЗУ, соответствующая шине данных D2 процессора Z80.
|
||||||
|
Запись, а затем и чтение производилось из последней четверти ад-
|
||||||
|
ресного пространства процессора (из 3-го сектора с адреса C000
|
||||||
|
по FFFF; следует заметить, что как в предварительном, так и в
|
||||||
|
бесконечном тестах ОЗУ эта информация служит скорее напоминани-
|
||||||
|
ем, по той причине, что чтение-запись производится только из
|
||||||
|
этого сектора т.е. 3). С помощью порта конфигурации в этот сек-
|
||||||
|
тор подключён 6-й и 16-и килобайтный банк из имеющихся с 0-го по
|
||||||
|
7-й (128К). Конкретный адрес ошибки - D843, по этому адресу был
|
||||||
|
записан 0, а считана 1.
|
||||||
|
Второй проход отличается от первого только другой последо-
|
||||||
|
вательностью записываемых в ОЗУ байт:
|
||||||
|
|
||||||
|
00100100 (#24)
|
||||||
|
01001001 (#49) Выводимые при этом сообщения те же.
|
||||||
|
10010010 (#92)
|
||||||
|
|
||||||
|
Следует обратить внимание ещё на один момент. Во время опе-
|
||||||
|
раций записи и чтения, как в предварительном, так и в бесконеч-
|
||||||
|
ном тесте ОЗУ цвет бордюра даёт нам информацию о том, какой из
|
||||||
|
банков подключен - чёрный цвет - подключён 0-й банк, синий - 1-й
|
||||||
|
и т.д. Байт, который программа пишет в порт конфигурации, дубли-
|
||||||
|
руется в порте цветов бордюра. Во время теста ОЗУ можно видеть
|
||||||
|
как происходит заполнение 128к, а затем считывание; при этом в
|
||||||
|
обоих случаях цвет бордюра меняется от чёрного до белого.
|
||||||
|
Если же ОЗУ исправно, на экран выводится сообщение:
|
||||||
|
|
||||||
|
ТЕСТ ОЗУ
|
||||||
|
ОЗУ - НОРМА
|
||||||
|
|
||||||
|
После этого начинает выполняться мощный бесконечный тест
|
||||||
|
ОЗУ. Если найдена ошибка, то тест зависает и дальше не идёт.
|
||||||
|
Часто приходится сталкиваться с такой ситуацией: некто тес-
|
||||||
|
тировал ОЗУ в чужом компьютере и там оно работает хорошо, из
|
||||||
|
этого человек делает вывод, что оно обязательно должно также хо-
|
||||||
|
рошо работать и в его машине. А тест может выдавать ошибки то в
|
||||||
|
одной микросхеме ОЗУ, то в другой, то в третьей. Значит, делает
|
||||||
|
вывод неудачный творитель компьютера, дело в тесте, он работает
|
||||||
|
неправильно. Очевидно, тут дело, как правило, не в самих микрос-
|
||||||
|
хемах ОЗУ, а в плохом питании, отсутствии шунтирующих конденса-
|
||||||
|
торов, 'натянутых' временных диаграммах сигналов управления ОЗУ
|
||||||
|
(WR, RAS, CAS и адресных мультиплексоров). Поэтому, настраивая
|
||||||
|
плату со сбоями ОЗУ, следует попробовать следующее:
|
||||||
|
1. Более тщательно посмотреть монтаж, промыть плату от ка-
|
||||||
|
нифоли, усилить и пропаять подозрительные печатные проводники в
|
||||||
|
районе установки микросхем ОЗУ, а также микросхем, вырабатываю-
|
||||||
|
щих управляющие сигналы и синхронизацию.
|
||||||
|
2. Поставить шунтирующие конденсаторы рядом с микросхемами
|
||||||
|
ОЗУ (как керамику так и электролиты).
|
||||||
|
3. Применить более быстродействующие ОЗУ (с меньшей буквой)
|
||||||
|
- если стояла Д - надо поставить Г, если Г - то В и т.д.
|
||||||
|
4. Улучшить сигнал CLC процессора путём уменьшения резисто-
|
||||||
|
ра между этим сигналом и +5V.
|
||||||
|
5. Попытаться, если в вашем типе компьютера есть подозрения
|
||||||
|
на то, что временные диаграммы 'натянуты', ускорить некоторые из
|
||||||
|
сигналов управления (резистор между сигналом и +5V), либо наобо-
|
||||||
|
рот, 'затянуть' резистор или конденсатор на 'землю'. Иногда, ес-
|
||||||
|
ли один и тот же сигнал используется как в качестве сигнала RAS,
|
||||||
|
так и в качестве сигнала управления мультиплексорами, то, чтобы
|
||||||
|
затянуть один из этих сигналов, оставив другой неизменным, можно
|
||||||
|
'врезать' резистор порядка 50-100 Ом и только после него ставить
|
||||||
|
конденсатор.
|
||||||
|
|
||||||
|
МОЩНЫЙ БЕСКОНЕЧНЫЙ ТЕСТ ОЗУ
|
||||||
|
|
||||||
|
Бесконечный тест ОЗУ предназначен как для выявления сбоев в
|
||||||
|
течении длительного времени, так и для выявления сложных ошибок,
|
||||||
|
которые не смог обнаружить предварительный тест. Бесконечный
|
||||||
|
тест генерирует псевдослучайную последовательность и пишет её в
|
||||||
|
память. Он будет бесконечно тестировать ОЗУ до тех пор, пока не
|
||||||
|
будет обнаружена ошибка. После этого будет выдана такая же диаг-
|
||||||
|
ностика, как и при предварительном тестировании ОЗУ. Рекоменду-
|
||||||
|
ется при обнаружении ошибки запускать тест несколько раз кнопкой
|
||||||
|
<СБРОС>. Если тест обнаруживает сбой не в одной, а в нескольких
|
||||||
|
(или всех микросхемах), то не спешите менять ОЗУ, а воспользуй-
|
||||||
|
тесь рекомендациями, приведёнными выше - видимо ОЗУ не виновато.
|
Loading…
Reference in New Issue
Block a user