При активном synce dbin=0, а читать там надо пытаться, поэтому вместо последнего условия лучше "по заднему фронту dbin".
Уточню, что там где "или запись" я имел ввиду сброс сигнала чтения из памяти, не mreq.
Тут пожалуй тоже лучше "или по заднему фронту wr"
Т.е. mreq может длится от примерно 2 (в случае чтения) до примерно 3 (в случае записи) тактов. Причем в случае записи 1й такт будет попытка чтения.
Сигнал чтения из памяти можно начать одновременно с mreq. Сигнал записи в память скорее всего надо начинать где то в районе заднего фронта sync.
Но это не все, надо еще учесть циклы связанные с прерываниями.





Ответить с цитированием