Solo una respuesta parcial porque no tengo todas.
Primero un comentario sobre esta declaración: "Me imagino que esto se haría en el espacio de dos ciclos" .
En realidad, cada acceso de bus consta de 8 "estados", y cada estado es la parte positiva o negativa del reloj principal. Por lo tanto, un ciclo de bus único es siempre 4 ciclos de reloj. (Esto me molesta más de lo que debería, pero esa es otra historia). Probablemente sepa esto si está haciendo estas preguntas, pero no está de más decirlo.
Orden de carga de datos
El orden de carga de datos está realmente documentado en M68000UM / AD:
Cada tipo de datos se almacena en la memoria como se muestra en la Figura 2-6. Los números indican el orden de acceso a los datos del procesador.
... o es? Ahora, esa cifra me resulta un poco confusa, pero en la medida en que puedo interpretarla, los enteros siempre se leen desde la memoria comenzando en la dirección inferior.
Almacenamiento intermedio
No pude encontrar ninguna documentación sobre esto, pero arriesgaré y haré una conjetura: No lo creo .
Tomemos, por ejemplo, la instrucción más simple, AND.W (A0),D0
vs. AND.L (A0),D0
. La versión de 16 bits toma 4 ciclos para leer la única palabra de instrucción y 4 ciclos más para la dirección efectiva (A0)
, que es simplemente otra lectura de 16 bits, para un total de 8 ciclos.
La versión de 32 bits especifica 6 ciclos: 4 para leer la instrucción, 2 ciclos "desconocidos" adicionales y 4 ciclos para leer los datos de 16 bits, un total de 10 ciclos.
No sé por qué, pero para mí esto indica que la ALU está procesando los 16 bits de datos uno tras otro, con el tiempo necesario para barajar todo. Esta barajadura invisible no sería necesaria si tuviera un búfer. Tal vez esto no tenga sentido cuando lo leo de nuevo.
Modelo de ejecución
El modelo de ejecución no parece estar documentado. Para operandos de tamaño palabra, la ejecución está "oculta" en el ciclo de lectura del operando. La única pista que puedo encontrar en la documentación es la sección 5.1.3 Ciclo de lectura-modificación-escritura. La información del estado muestra:
ESTADOS 8-11
Las señales del bus no se modifican durante el S8-S11, durante el cual la unidad de lógica aritmética realiza modificaciones apropiadas a los datos.
Cuatro estados equivalen a 2 ciclos de reloj.