Цитата Сообщение от Titus Посмотреть сообщение
Я понял, почему у УКНЦ байтовая запись в память работает только в цикле RMW (чтение-модификация-запись)!
Наверное это потому, что у ВМ2 вообще нет ни байтового чтения из памяти, ни байтовой записи (доки специально в этом смысле не смотрел, но чисто теоретически если подумать).
Поэтому при чтения байта все равно читается слово, но берется именно нужный байт.
А вот при записи байта, сперва читается слово, потом модифицируется нужный байт, и слово записывается заново. Тогда все логически сходится.

Отсюда мораль: по возможности не пользоваться байтовой записью в память, если не хочется лишних тормозов.
На шине Q-BUS (наша МПИ) байтового чтения не существует, а вот байтовая запись есть. При байтовом чтении процессор всегда читает слово по заданному адресу, при этом адрес всегда выставляется в таком виде, как задан в команде, т.е. младший бит не очищается. Затем в зависимости от младшего бита процессор из считанного слова берет нужный байт. При байтовой записи процессор 1801ВМ2 в неиспользуемом байте выставляет ноль, электрически единицы, с учетом инверсной шины. А вот почему при байтовой записи 1801ВМ2 читает слово по этому адресу, это действительно большой вопрос, и в официальной документации это не отражено.