Titus(15.08.2020)
Добавил сюда описание записи слова в ОЗУ ЦП.
Замечу, что запись слова, и запись байта отличается. Чем - опишу позже.
- - - Добавлено - - -
Кроме того, отдельного рассмотрения требует запись и чтение в режиме ST.
Судя по всему, это потенциальный источник глюков, т.к. цикл доступа к памяти может оборваться на середине, из-за того, что RPLY выставляется сразу после DIN/DOUT.
- - - Добавлено - - -
Итак, о записи байта в ОЗУ ЦП.
Естественное отличие от записи слова:
Если запись идет по четному адресу, то блокируется генерация CAS1.
Если запись идет по нечетному адресу, то блокируется генерация CAS0.
Неестественное отличие от записи слова:
Запись начинается по сигналу DOUT, а не по SYNC. Что правильно и хорошо.
Ну и, наконец, если запись идет через регистровый механизм, то запись по адресу 176642, запишет младший байт в ОЗУ, а запись по адресу 176643 запишет старший байт в ОЗУ.
- - - Добавлено - - -
Чтение и запись слова начинаются по SYNC.
Запись байта начинается по DOUT.
Никаких предсказаний нет, просто такой вот 'кривой' контроллер)
- - - Добавлено - - -
Хотя, можно условно назвать это предсказанием. Я об этом не задумывался изначально. Но даже если так, оно все равно какое-то кривое.
Последний раз редактировалось Titus; 15.08.2020 в 11:42.
Ynicky, в стандартном ПЗУ по данным адресам никакой записи байтов нет. К тому же почему-то сигнал WTBT выставляется перед неактивным SYNC. Может таким образом процессор сигнализирует, что будет операция записи?
- - - Добавлено - - -
Что-то я ничего не понял в этой фразе? Titus, а можете расшифровать поподробнее.
А всё таки блок предсказаний есть. Действительно ТО надо не только смотреть, но и читать. На листе 16 прямо написано: "Вывод 19. WTBT. Выход информационного комбинированного сигнала "запись-байт". Во время выдачи адреса в цикле процедуры обмена по системной магистрали низкий уровень сигнала на этом выводе свидетельствует о том, что осуществляется процедура записи. Во время выдачи данных низкий уровень сигнала на этом выводе свидетельствует о том, что выдается не слово, а байт.". Лист 50: "В процедуре записи в фазе выдачи адреса сигнал WTBT выдается низким уровнем".
Вообще-то - это давно известно, на ВМ3 точно так же.
И подозреваю, что это будет справедливо (сигнал о том, что будет ЗАПИСЬ, во время выдачи адреса и SYNC) для QBUS в принципе.
Память упорно подсказывает, что такое упреждающее уведомление о предстоящей записи сделано с прицелом на типы памяти (вроде как на ферритах), у которых особая любовь к чтению (насколько я помню, в ферритовой памяти чтение разрушает данные и их надо восстановить) - то есть идёт уведомление, что даже если было только что чтение (цикл чтение-изменение-запись), то данные восстанавливать не надо - ибо будет запись в ту же ячейку. Но. Это мои предположения![]()
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)