В QBUS (МПИ) такого нет. SYNC активен только во время адресного обмена. Соответственно во время обмена могут устанавливаться либо DIN, либо DOUT, но никак не вместе. DIN используется также во время запроса вектора прерывания, а также в процедуре чтения безадресного регистра, в этих случаях SYNC неактивен.
nzeemin(11.11.2019)
Тогда зачем это сделали на схеме?
- - - Добавлено - - -
Да, проверил, действительно инверсию потерял. Вход 2 Q71.Q72 должен быть инверсным.
- - - Добавлено - - -
Сегодняшняя версия: https://yadi.sk/i/lhLhx9ZhmhUbOw
Из интересненького:
1. Некоторые биты в регистрах сбрасываются по INIT, а некоторые по DCLO, а некоторые вообще не сбрасываются, что совершенно неочевидно без реверса.
2. Много чего еще интересненького.
Последний раз редактировалось Titus; 11.11.2019 в 22:17.
Насколько мне помнится, SYNC активен во время всего цикла адресного обмена.
Выставляется адрес, выставляется SYNC, дальше задержка, снимается адрес,
если чтение - выставляется DIN, ждётся RPLY, устройство выставляет данные, выставляет RPLY, снимаются SYNC, DIN, снимаются данные, RPLY
если запись - выставляется DOUT, устройство выставляет данные, выставляет RPLY, снимаются SYNC, DOUT, снимаются данные, RPLY
Ну и может ещё выставляться WTBT, а при отработке прерывание не выставляется адрес
Ну собственно я так и говорил. А кроме чтения и записи есть еще чтение-модификация-запись. Выставляется адрес, потом по DIN читаются данные, небольшая пауза для обработки данных в процессоре, запись по DOUT. В этом цикле SYNC также активен во время всего адресного обмена, а адрес выставляется только один раз.
Кстати по схеме правильно формируются сигналы чтения и записи регистров. Учитывается не только выбор регистра и тип операции (чтение/запись), но и чтобы все это проходило при активном SYNC. Есть правда одно НО при формировании RPLY, если производились операции с разрешенным регистром, то его адрес останется в буфере LATCH_ADDRESS. Будет следующим циклом на шине чтение вектора прерывания, то по DIN будет выставлено RPLY, т.к. в буфере LATCH_ADDRESS разрешенный адрес.
Выставление RPLY, на шине AD в этом случае ничего не будет выставлено. Есть вероятность прочтения с шины нулевого вектора. В УКНЦ есть такое - если не вставить дискету в привод и запустить загрузку с этого привода, то через какое-то время ПП может вылететь в СТОП, вот только по какому адресу не помню.
Тогда запишем тройной DIN, DOUT, SYNC в коллекцию загадок)
nzeemin(12.11.2019)
Эту тему просматривают: 2 (пользователей: 0 , гостей: 2)