А вот, позволю не согласиться! Все, что ниже - отголоски древних знаний, опыты и мое имхо.
Что есть в загрузчике: SP ставится на 0xDCF0, в пару DE пишется 0x55AA (D=0x55, E=0xAA). Это в коде.
Что видно в рантайме: у ширпотребных интелов, включая 8080 стек растет вниз, причем с пре-декрементом,
то есть, не значение пишется по [SP] и потом он декрементируется, а наоборот - сначала декремент, потом запись.
Это я четко видел на ША, первое обращение к стеку при PUSH DE было по адресу 0xDCEF, второе - 0xDCЕЕ.
На POP HL - наоборот, первое обращение по 0xDCEE, второе - 0xDCEF. Все верно, ибо стек.
Но! На моей осциллограмме четко видны значения на шине данных при PUSH DE - сначала пишется 0х55 из D,
потом 0xAA из Е. То есть верхний байт должен быть 0x55. нижний - 0xAA.
Я вдохоновился и решил таки потыкаться в свой Вектор, вдруг получится завести.
В общем симптомы такие:
- когда-то однажды Вектор стал время от времени не стартовать. Гудит, БЛК+ВВОД тормозят гудок, но потом гудок продолжается и все. Но потом вдруг запускался.
- постепенно перестал стартовать совсем
- это все было с подключенными Шадками (тут понятно, что кроме меня никто ничего сказать не может, а я все забыл, поэтому Шадков пока изымаем)
Что я увидел вчера:
- ничего не изменилось, не стартует
- питание на ногах процессора +5В = 4.61, -5В = -5.51, +12В = 11.8
- Ф1, Ф2 смачные и красивые, все ноги вообще выглядят крайне живыми, RESET, READY, WAIT веселенькие, адреса бегут итд
- после получаса тупого тыканья вдруг все завелось -- на радостях сделал экранку своей демки как пруф того, что работает на реале.
Выключил-включил, опять не заводится.
Снова стал тупо тыкать -- дернул неудачно крокодилом земли -- внезапно пропал гул и БЛК+ВВОД все сбросил и запустился.
Картина на ногах 20, 21 D9 (инверсные CS boot ROM) не очень понятная без анализатора -- видно, что там не просто что-то залипшее, а потоянно что-то бежит.
В общем это повторимо, но вот так вот странно. Было уже 4 утра и пока отложил. Посоветовали проверить получше D17 (формирование сброса и ~CS ROM), но пока не знаю методолгоию проверки, а бежать очертя голову менять я пока не хочу.
Больше игр нет
Вроде как добил свою совсем древнюю но очень симпатичную плату "Вектора".
Пока включаю ее без клавиатуры - и при доработке от Дениса Тягунова и
установке ПЗУ 32 кБт - вижу вот это:
При этом он показывает подключение к "маленькому" порту, но он у меня пустой!
Вывел два проводка на ВВОД и СБРОС и тыкаю их на землю пока что?
Или все же необходимо подключить клавиатуру для нормального запуска?
FPGA - наше все!
Я потыкался еще. Решил, что питание надо подкрутить до хороших 5В. Это помогло, голый Вектор теперь почти всегда сразу включается.
Но увы не с Шадками. Что с ними не так, ума не приложу. Эмулятор дисковода постоянно сбрасывается -- иногда быстро много раз подряд (успевает напечатать @ примерно 23 раза), иногда успевает пройти чуть подальше - печатает копирайт. И сбрасывается. Если запустить его отдельно от Вектора, зависает на любой попытке общения с SDRAM-ом.
При тыканьи осциллографом -- постоянно мельтешит СТЕК и обычно ровненький угловатый RAS при втыкании Шадков начинает выглядеть очень как-то странно некрасиво. Как будто очень слабый драйвер подгрузили на что-то высокоёмкостное и-или низкоомное. БЛК не срабатывает и соответственно CAS не приходит, так что подозреваю, что основное негативное влияние Шадков в первую очередь в подсаживании RAS-а. Там 74lvc8t245, вроде остальные сигналы на глаз не смазываются, хотя трудно их сравнивать.
Если RAS слабый, это похоже на D34 (ВА86) ?
Больше игр нет
Про ВВОД/БЛК/СБРОС без клавиатуры:
- БЛК - исключительно внутриклавиатурный, чтобы одиночные случайные нажатия на ВВОД/СБР не мешались
- Оба, и ВВОД и СБР приходят на D входы триггеров в D17, а СБР еще и на тактовый, а подпор к единице живет на плате клавиатуры!!
- Ну и R/S входы D17 тоже болтаются в воздухе.
- Да это, ТТЛ, 155я серия и на неподключенных входах есть 1.7V=1. Но при старте никто не обещает, что все будет ОК.
Таким образом, без клавиатуры работать будет, но сброс при влкючении делать некому, будет гудение и всякие артефакты.
Замыкание пинов 24 и 25 разъема клавиатуры ОДНОВРЕМЕННО на землю должно делать ВВОД и запускать загрузчик.
Одного 25 пина - СБР и старт программы.
Я восстанавливаю без клавиатуры совсем, будет отсоединяемая на угловом PLS.
To svofski, ни одной ВА86/87 я пока не спалил. Они горячие, но живучие. Не скажу со 100% вероятностью, но слабый RAS
может просаживаться кем-то из потребителей. ВА86 будет пытаться раскачать линию, но не будет гарантировать целостность.
Даже штатно там висит 32 корпуса РУ6. 74lvc8t245 явно им не соперник
У меня тоже все тыки осциллом были нормальные - Ф1/Ф2/DBIN/SYNC/WR на проце, CS на ROM, всякие RAS/CASn тоже.
Но КП2 в демультиплексоре данных с памяти сдохло. И, кстати оно сажало DО на РУ6 и мешало чтению памяти.
Загрузчик болтался в цикле, пытаясь вычитать обратно свои 0x55AA (кстати, именно стеком!).
svofski (21.08.2022)
Можно сказть, что плату все таки я довел до ума! Multicard
Дениса - тоже прекрасно запустилась! В общем время не прошло
даром. Остался еще один "Вектор" - то же у него что то, не то.
Если успею, то доделаю. Начинается учебный год и с паяльником
и осцилом уже не посидеть так!
- - - Добавлено - - -
Тут согласен. Еще по Искре 226 их помню.
FPGA - наше все!
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)