Да это WO/ - опечатался.
Вид для печати
Свежих мыслей пока не появилось, поэтому пытаюсь выискивать ошибки (всехние). Для WE/ ты брал H1, а READY=H1/, так?
Разобрался (а то мне этот вопрос не давал покая), почему не работало мое казалось бы очень простое предложение
READY=H1/
WE/=WR/ or WO/ or WRM/ or H1
Проблема возникает, если второй такт цикла проца приходится на слот CPU.
Казалось бы все здорово, но WR/ станет активен практически полностью (или полностью, с учетом запаздывания относительно клока + запаздывание вносимое логическими элементами при формировании WE/) только в следующем такте.
А следующий такт - слот VPU и запись будет запрещена, что вполне правильно.
А потом все, во втором такте READY был=1 и тактов ожидания не будет, в итоге запись потерялась.
Вылечить эту штуку можно, но на мой взгляд лучшее лечение заключается в формировании WE/ с использованием ТМ2 или чего-то подобного.
Мое предложение возможно проканало бы при более левом тактировании (когда WR/ сильнее залезает во второй такт цикла), но я против смещения тактирования влево.
В итоге признаю такой вариант формирования WE/ неработоспособным при тактировании F1=not (TI/ or CAS/); F2=CAS/ и при READY=H1/
- - - Добавлено - - -
И, кстати, формирование WE/ можно было чуть упростить - WE/=WR/ or WRM/ or H1, раз есть WR/, то без WO/ можно было обойтись. Использование WO/ не делало само по себе схему неработоспособной, но усложняло ее без необходимости.
Mick, D9 (ТМ2) сейчас на плате какой серии?
Т.е. небыстрая серия.
Проблема с анализом работы текущего формирователя WE/ в том, что там все на грани и для того, чтобы четко с уверенностью нарисовать и расписать, что происходит, нужно знать запаздывание SYNC относительно F2(=CAS/) для конкретного проца и время срабатывания ТМ2 и связанной логики. Если второе можно примерно оценить по справочникам, то с первым проблема. Сам я остановился на версии, что при 3 МГц для "быстрых" процов складываются такие условия, что (H1/ and SC/) не успевает стабильно сбрасывать D9.2.
На анализаторе можно проверить, что при "медленных" процах WE/ начинается в такте после SYNC, а при "быстрых" иногда проскакивает WE/ в такте SYNC.
Или можно проверить осциллографом запаздывание SYNC относительно F2(=CAS/). У "медленных" оно должно быть больше, чем у "быстрых", думаю как минимум на 10-20 нс.
Можно попробовать полечить это более поздним сбросом D9.2, например по H1/ and (not (RAS and SYNC)). Тут RAS, который подается на вход 11 D9.2
100% гарантии дать не могу, т.к. тут все на грани, но такого разнесения должно хватить.
Если бы D9 была на панельке, можно было бы попробовать заменить на максимально быструю серию. Но это не радикальное решение проблемы и если D9 запаяна, то менять ее точно не стоит.
Еще раз агитирую посмотреть анализатором.
Альтернативный вариант лечения. Вход 4 D9.1=not(SYNC and H0). Так проще и надежнее, т.к. можно оставить сброс D9.2 только по H1/ и точно не понадобится менять тактовый сигнал D9.2
Так, я немного выпал из процесса. Заказал я новый анализатор 16 канальный (DSLogic U2basic).
Пришли из Китая память NM41256A-08 (80нс) и кварцы на 13МГц (это если попробовать еще и его в синхрогенераторе)
Ну и пришли новые новобранцы-процессоры.
Больше всего меня из них интересуют Родоны 9301 и 9303. Сохранится приемственность технологий и будут работать на 4МГц.
Посему пока верну частоту на 4МГц и соберу схему заново ибо я разобрал провода - запутался уже в них.
https://i.ibb.co/PWrL3wQ/IMG-20201213-143155.jpg
Кстати, еще должны подойти Родоны 9009.
Так вот, сам того не подозревая становишься коллекционером КР580ВМ80А :)
- - - Добавлено - - -
Кстати, еще тут мысль возникла - собрать на макетке узел синхрогенератора на EPM7032
- - - Добавлено - - -
P.S. Кто знает, можно ли оставлять свободный адресный вход у микрух MN41256, хотел их запихать вместо РУ5