Problema: dibuje el diagrama de tiempo del siguiente código,
MVI B, 45
Explicación del comando: almacena los datos inmediatos de 8 bits en un registro o ubicación de memoria.
Ejemplo: MVI B, 45 Código de
operación: MVI
Operando: B es el registro de destino y 45 son los datos de origen que deben transferirse al registro.
Los datos ’45’ se almacenarán en el registro B.
Algoritmo –
- Decida cuál es el código de operación y cuáles son los datos. Aquí, el código de operación es ‘MVI B’ y los datos son 45.
- Asuma la dirección de memoria del código de operación y los datos. Por ejemplo:
MVI B, 45
2000: Opcode
2001: 45 - La obtención del código de operación será la misma en todas las instrucciones.
- Solo se necesita agregar la instrucción de lectura del código de operación en los estados T sucesivos.
- Para el código de operación, obtenga el IO/M (activo bajo) = 0, S1 = 1 y S0 = 1. Además, se requerirán 4 estados T para obtener el código de operación de la memoria.
- Para el código de operación, lea IO/M (activo bajo) = 0, S1 = 1 y S0 = 0. Además, solo se requerirán 3 estados T para leer datos de la memoria.
- 00: bit inferior de la dirección donde se almacena el código de operación.
- 20: bit más alto de la dirección donde se almacena el código de operación.
- ALE: proporciona señal para dirección multiplexada y bus de datos. Solo en t1 se usó como bus de direcciones para obtener el bit más bajo de dirección; de lo contrario, se usará como bus de datos.
RD (activo bajo): la señal es 1 en t1 y t4, el microprocesador no lee ningún dato. La señal es 0 en t2 y t3, el microprocesador lee los datos.
WR (activo bajo): la señal es 1 en todo momento, el microprocesador no escribe ningún dato.
IO/M (activo bajo): la señal es 0 en todo momento, la operación se realiza en la memoria.
S0 y S1: la señal es 1 en los estados t1 a t4, para obtener el código de operación de la memoria. - 01: bit inferior de la dirección donde se almacenan los datos.
- 20: bit más alto de la dirección donde se almacenan los datos.
- ALE: proporciona señal para dirección multiplexada y bus de datos. Solo en t5 se usó como bus de direcciones para obtener el bit más bajo de dirección; de lo contrario, se usará como bus de datos.
RD (activo bajo): la señal es 1 en t5 ya que el microprocesador no lee ningún dato. La señal es 0 en t6 y t7 ya que el microprocesador lee los datos.
WR (activo bajo): la señal es 1 en todo momento, el microprocesador no escribe ningún dato.
IO/M (activo bajo): la señal es 0 en todo momento, la operación se realiza en la memoria.
S0: la señal es 0 en todo momento, la operación se está realizando en la memoria para leer los datos 45.
S1: la señal es 1 en todo momento, la operación se está realizando en la memoria para leer los datos 45.
En búsqueda de código de operación (estados t1-t4 T) –
En Opcode leer (t5-t7 T estados) –