Зачем нужен WAIT ЦПУ в КНГМД?!
Укусываю вновь собраный сабжевый КНГМД. Вроде все баги пофиксил, всё отладил, но осталась одна неприятка, которая мне была непонятна. А именно, в режиме форматирования (ака записи трека целиком) иногда алгоритм зависал наглухо, т.е. не выскакивал из цикла записи, при этом ВГ93 уже переставала отвечать, лампочка на флопе гасла, двигло замолкало.
Раскопки показали, что иногда в случайном месте, в случайный момент проц не успевает подсунуть ВГ-хе очередной байт и она впадает в печаль под названием "потеря данных". Проверку на это недоразумение в цикл уже физически не вставить, т.к. по таймингам там всё впритык (пришлось даже хитрить с оптимизацией кода). Считается, что на исправном оборудовании такой ситуации быть не должно. С КНГМД Короткина такой проблемы не случается, а тут ну никак не мог победить. Уже даже подсовывал ВГ-хе данные вперёд "авансом", всё равно в случайный момент теряет ((
Начал играться с пикушными ёмкостями, заодно обнаружил, что в схеме неверно указаны номиналы RC-цепочек на АГ3, т.к. они один-в-один переписаны с авторской схемы, в которой применяется строго серия К155 (в новодельной схеме указана 555АГ3), а как показали справочники, расчёт RC-цепочек разный для 155 и для 555 (1533 в моём случае). Но адекватный пересчёт RC не помог, трабла по-прежнему оставалась.
Начал анализировать, в чём же глобальные отличия КНГМД Короткина, КНГМД в Орионе-ПРО и авторского? Наличие у последнего цепочки торможения ЦПУ. "Психанул" и замкнул базу ключа, коммутирующего READY на землю, т.е. отключил вэйтилку вообще... и - о, чудо - КНГМД заработал как надо! Дискеты форматируются без ошибок и зависаний, файлы записываются/читаются. Соответственно, возникает вопрос, а зачем эта цепочка сделана, если она только всё портит и для нормальной работы КНГМД не нужна?