Для ВМ80 3 МГц - частота совершенно не критическая. Можно посмотреть zx8080 Micka - худшие экземпляры работали на 3.4 МГц, если мне не изменяет память, т.е. не работающие на 3 надо еще очень сильно поискать. Но именно на 3 МГц некоторое время были проблемы. Проблема в согласовании с остальной схемой, в основном с озу. Сдвиг клока/клоков с вероятностью близкой к 100% ее решает. Похожая картина была и у KTSerga с плисовым процом. Вот если задача сформулирована так - "найти процессор, который заработает в векторе без модификации клоков", тогда сложнее.
Начальный загрузчик (не все) сначала делает примитивный тест ОЗУ, записывая в область будущего стека 0x55, 0xAA (или наоборот), потом читает, если не совпало, тест зацикливается на запись/чтение этих самых 0x55, 0xAA.
Эти и выглядит как "зависание системы после старта".
Для эксперимента, попробовать загрузчик в котором нет начального теста ОЗУ.
В загрузчике 2К с поддержкой НDD я не видел теста ОЗУ... хотя мог просто не заметить.
Последний раз редактировалось KTSerg; 11.08.2022 в 07:40.
megov (11.08.2022)
В теме https://zx-pk.ru/threads/30914-testovoe-pzu.html есть тесты верхних 32КБ ОЗУ, сам тест записывается в ПЗУ вместо начального загрузчика.
ЗДравствуйте, Всем!
Что то я начал тупить не по детски! Помогите пожалуйста!
Итак в кратце история - есть плата я ее тут постил уже, включил,
нашел одну РУ6 неисправную очевидно, заменил. Дальше вообще коррида!
Дошел вот до такой картинки:
как я понимаю, вид "почти", но что то не так все же с РУ-ками, я прав?
Мое везение, у меня есть полностью исправный Вектор, преределанный по
руководству Дениса Тягунова. РЕ3 проверил пошагово сравнил, все в целом
норм. Прошел по исправному все практически (изучил схему по полной при
этом - уже могу с закрытыми глазами ее нарисовать!!!) сравнил - очевидных
отличий с исправным нет. Еще на 5-й лапе проца, вот такая картинка:
иногда я вижу это и на моей кривой плате на той же 5-й лапе, при этом
появляется сигнал ЧТВВ.
В общем не смотря на самы "отдыхательный" месяц лета, прошу очень
Вашей помощи! ПОМОГИТЕ! ;-)
Последний раз редактировалось derfliegenddehollander; 13.08.2022 в 07:26.
FPGA - наше все!
KTSerg оказался прав, Я засунул слитый загрузчик в DASMx и там прямо с самого начала, еще до цикла обнуления памяти, пишутся управляющие слова в обе ВВ55, а потом 0x55AA пушится по предварительно установленному в 0xDCF0 стеку, после чего читается обратно и сравнивается. Если не совпадает, то будет JNZ пока не совпадет:
Хитро! Это конечно не POST, но позволяет зациклить выполнение на известной последовательности, что помогает в отладке.Код:org 00000H L0000: ;Output control word to PPA2 (PU). mvi a,09BH out 004H ;Output control word to PPA1 (Internal). mvi a,088H out 000H ;Store 2 bytes (0x55AA) in memory than re-read them and compare. lxi sp,0DCF0H lxi d,055AAH L000E: push d ;DE - original value pop h ;HL - read from memory mov a,l cma ;A = not A (0x55->0xAA) cmp h ;negated A should be equal L (0xAA) jnz L000E ;Loop while writing and re-reading will get the same result ...
Поскольку 0x55AA видно на экране, то значит CPU стартует и выполняет код из ПЗУ и все мои домыслы о том, что 3Мгц много - неверны. Т.к. там push/pop то удобно зацепиться осциллом на сигнал СТЕК на ВУ - получится неплохой строб для анализа данных на шинах. ША отчетливо показала 0xDCEF+0xDCEE на push и 0xDCEE+0xDCEF на pop, что правильно и соответствует логике работы стека.
А вот на ШД при push четко видно 0x55AA, а на pop возвращается полная ерунда со спайками, изменением состояния бита прямо посередине и прочей дичью:
Выходит, что чтение из ОЗУ не работает, похоже на конфликты по ШД. Глянул на DO РУ6 и пришел в ужас, на некоторых после перехода в логический ноль тут же происходит отскок до 1-1.5V. Т.к. выходы у РУ6 слабые, то их вполне могли садить входы либо КП2 (D41-D44), либо ИР13. Одна ИР13 (D45) у меня снята пока, но сигналы DO в этом банке все равно плохие. Вынул все КП2 и сигналы на DO пришли в норму, причем в этом комплекте я уже 2 из 4х заменил при сборке после чистки. Проверил на TL866, еще 1 из 4х - труп. Но не было ни статики, ни КЗ - все ведь работало до некоторого момента. Пришло что ли родному комплекту КП2 время отказа?
В результате - все заработало после подбора 4х рабочих КП2 (D41-D44).
Всем спасибо!
- - - Добавлено - - -
Не факт, что с РУшками, может один из выходов DO просаживается в единицу.
У Вас там в углу тоже 0x55AA наблюдается, как и у меня. То есть CPU начинает выполнять тот код из загрузчика, что я привел,
не может прочитать обратно 0х55AA и зацикливается. По картинке похоже что либо D7 либо D0.
Осциллом бы пройтись посмотреть.
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
megov (13.08.2022)
С моей точки зрения D7.
Инфа пишется в колонку DCxx, а в колонке DFхх (самом правом ряду, вертикальная светлая полоса не с краю, там D0), значит бит не D0.
И ещё, по PUSH выше пишется вроде младший байт слова, а он АА, значит выше АА, ниже 55.
Если предположить, что у АА старший бит в "1", то похоже именно на картинку с фото.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)