И еще на счет таймингов.
Когда-то, когда только писал процессор ВМ2, раскладывал для себя теоретически, как должен работать процессор, чтобы тайминги совпали с теми, что в доке. Получились примерно такие записи. Разложилось весьма хорошо, хотя и не факт, что достоверно:

Код:
			Timing Legend:

 Число циклов обращения к памяти может быть только четным, а также
 число циклов выполнение команды может быть только четным, поскольку
 синхронизируется относительно CLKO (CLKI/2).

 Запись для времени < 1T [1..2T]:
	12/15 [12/15] тактов:
   	 4   		- выдача адреса на шину
	 1/3		- подготовка данных (зависит от метода адресации)
	 5 [6]		- удержание данных на шине
	 1		- особождение шины и снятие запросов

 Чтение для времени < 1T [1..2T]:
 	 8 [10] тактов:
   	 4		- выдача адреса на шину
	 3 [5]		- чтение данных
	 1		- особождение шины и снятие запросов

 Чтение-модификация-запись для времени < 1T [1..2T]:
	18 [20?] тактов:
	 4		- выдача адреса на шину
	 3 [5]		- чтение данных
	 4		- калькуляция и выдача данных шину (может быть больше, если это необходимо)
	 5 [6]		- удержание данных на шине
	 1		- особождение шины и снятие запросов

 Безадресное чтение:
  	4 такта?


 Разложение времени выполнение команд на примерах, взятых из описания 1801ВМ2,
 для времени памяти < 1T [1..2T]

 ALU/MOV rn,rn	- 8 [10]
		    8 [10]	- чтение из памяти следующего слова команды в буфер CRB
		    <= 8	- выполнение фунцкии ALU (целиком перекрывается)

 CLR (Rn)	- 20 [22]
		    8 [10]	- чтение из памяти следующего слова команды в буфер CRB
		    <=8		- подготовка адресного указателя (и данных?) для записи (целиком перекрывается)
		    12		- запись результата в память 

 INC (Rn)	- 26 [28]
		    8 [10]	- чтение из памяти следующего слова команды в буфер CRB
		    <=8		- подготовка адресного указателя (целиком перекрывается)
		    18 [18?]	- цикл чтениь-модификация-запись
		    <=4		- ALU (целиком перекрывается)

 MOV Rn,(Rn)	- 20 [22]
		    8 [10]	- чтение из памяти следующего слова команды в буфер CRB
		    <=8		- подготовка адресного указателя и данных для записи (целиком перекрывается)
		    12		- запись результата в память

 MOV (Rn),(Rn)	- 34 [38]
		    8 [10]	- чтение из памяти следующего слова команды в буфер CRB
		    <=8		- подготовка адресного указателя и данных для чтения (целиком перекрывается)
		    8 [10]	- чтение данных из памяти
		    6?		- подготовка адресного указателя (и данных?) для записи
		    12		- запись результата в память

 OR (Rn),(Rn)	- 38 [42]
		    8 [10]	- чтение из памяти следующего слова команды в буфер CRB
		    <=8		- подготовка адресного указателя и данных для чтения (целиком перекрывается)
		    8 [10]	- чтение данных из памяти
		    4?		- подготовка адресного указателя для записи
		    18 [18?]	- цикл чтениь-модификация-запись
		    <=4		- ALU (целиком перекрывается)

 mov #nnnn,r0	- 20 [22?]
		    8 [10]	- чтение из памяти следующего слова команды в буфер DRB
		    4?		- ALU? или, что вероятнее подготовка пререкэширования
		    8 [10?]	- чтение из памяти следующего слова команды в буфер CRB