На самом деле может быть, что я где-то промахнулся когда на пульте тумблерами щёлкал... Завтра убежусь более точно.
Ещё есть акая информация (она 100%-я уже): при выполнении микропрограммного теста Файлового Регистра (который с адреса 1704), тест на табло останавливается на адресе 1355, т.е. ошибка у нас по адресу 1354 - проверка регистра FR4... Конкретно на какой из регистров со стороны ОШ мапится этот FR4 я пока что не понял. Есть предположение, что "потекла" РТшка - дешифратор файлового регистра... Табличка состояний есть в документации, можно будет восстановить если все плохо...
С уважением, Александр.
Scorpion ZS-256 Turbo+ GMX-2048
SID-Blaster/ZX
Музей ретрокомпьютеров в Минске!
Здесь ничего нет => http://byteman.by
И здесь тоже --->>> http://bytespace.by
Итак, мучал сегодня контроллер с самого утра. Есть странные результаты. Начну с попытки прочитать сектор.
1) Выяснилось, что выдать команду 000005 с пульта не получается - регистр адреса ОШ (пробовал как 0, так и 1000 давать) сбрамывается в 0, регистр адреса диска сбрасывается в ноль, в статусах вижу статус накопителя и бегающий адрес сектора. Периодически, как и писал Patron, вижу проскакивающую единичку что прошло совпадение адреса сектора с тем, который нам нужен. При этом регистр ошибок пуст. В регистре CSR вижу только бит 7, что "яживой потрогай меня". Т.е. код команды записанной сбросился, хотя, как я понял, должен был сброситься только бит 0. В памяти ЭВМ - нули. При подаче команды на панели контроллера не вижу никаких вспыхов - программа как выполнялась, так и выполняется. Мб происходит сброс контроллера.
Итого - не работает.
2) Как известно, у СМки по адресу 173046 слоя 0 лежит процедура загрузки с диска DK. Набрал на пульте этот адрес и начал "дрючить" его, в надежде что в какой-то момент контроллер может что-то загрузить. И таки да. Один из десяти раз я услышал хрум в диске, на контроллере всполыхнули лампочки. СМка ушла в останов. Проверил - с 0-го адреса появился бут-блок. Передаю на него управление - ОСТАНОВ. Подёргал его несколько раз - на контроллере дисковода загорелась лампа СТОП (что уже совсем нехорошо), на терминале - BOOT I/O ERROR.
Пару слов про лампу СТОП на контроллере - судя по адресу, на котором произошёл останов, микропрограмма "пошагала" далеко и попала в тест, где благополучно и скукожилась (в тестах используются спец. команды процессора, которые могут привести процессор в СТОП, в нормальном режиме работы эти команды не используются).
Итого - если долго дрючить, сектор таки с горем пополам можно прочитать.
3) Решил разобраться подробнее, что происходит при останове контроллера при микропрограммном тесте Файлового Регистра.
Пару слов про сам "Файловый Регистр": представляет из себя четыре штуки КР1802ИР1. В них "сидят" все регистры контроллера, доступные снаружи. Читаются/пишутся как с ОШ, так и с внутренней шины.
Как ведёт себя тест - если процессор СМ2420 остановлен (горит ОСТАНОВ) и соответственно нет никакой активности на ОШ, тест проходит без каких либо проблем. В случае, если процессор что-то делает (скажем, сидит в эмуляторе пульта), то тест падает на инструкции проверки файлового регистра FR4. При прохождении теста по шагам, выяснил, что периодически портится значение бита 3 в этом регистре (https://photos.app.goo.gl/4H6tLtLUTeT33eVc2), а именно вместо 1 там оказывается при чтении 0. Судя по всему, порча происходит в момент записи в регистр. Т.к. пробовал ставить точку останова за одну инструкцию до того как, в это время процессор СМ2420 работал. На точке останова тормозил СМ2420, продолжал тест контроллера - и происходило падение.
Было (и есть) предположение, что проблема кроется в дешифраторе Файлового Регистра (который разруливает доступ с ОШ к ФР), но также почему-то есть подозрение на Datapath, т.к. сбоит только один бит, и сбоит только одним способом - записывается 0 вместо 1...
Если глянуть схему, у ИРок используется только 8 ячеек (при их ёмкости в 16х4), можно попробовать перекинуть старший разряд и проверить, проблема в памяти, или в управлении ей...
Также непонятно, почему при выполнении команд контроллер умудрялся выполнять левую микропрограмму и улетать "в небеса"... Иногда всё-таки умудрялся прочитывать вполне себе валидные данные... Но это было редко и практически неправда...
Пока что не знаю, что делать дальше... Буду с горя курить схему)))
PS. Виновник вчерашнего локального задымления: https://photos.app.goo.gl/10Q0fFTiPvfMP2o43 Эта паскуда включена до сетевого выключателя, поэтому после выключения кнопкой продолжала гореть и дыметь...
PPS. Т.к. СМка сейчас вполне сносно работает с HX, могу позапускать на ней всякие разные тесты процессора Один-два раза в неделю буду там появляться и прогонять скопом пачки тестов
С уважением, Александр.
Scorpion ZS-256 Turbo+ GMX-2048
SID-Blaster/ZX
Музей ретрокомпьютеров в Минске!
Здесь ничего нет => http://byteman.by
И здесь тоже --->>> http://bytespace.by
Блог : http://collectingrd.kxk.ru/ . В ЛС прошу не писать, все сообщения [email protected]
Есть описание прошивки- CМ2420/006.01
form некоторое время назад обеспечил меня альфасервером, через который можно СМку в хекнет пробросить)
По поводу глючащего контроллера HDD выяснилось, что запись в регистр CSR проходит через раз. При этом, если процессор СМки читает-пишет консоль, то возникают ложные обращения к контроллеру... Завтра попытаюсь осциллографом потыкаться по корзинке, мб удастся что-то там увидеть...
С уважением, Александр.
Scorpion ZS-256 Turbo+ GMX-2048
SID-Blaster/ZX
Музей ретрокомпьютеров в Минске!
Здесь ничего нет => http://byteman.by
И здесь тоже --->>> http://bytespace.by
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)