Arquitectura de Microprocesadores - Direccionamiento
Estudiemos como funciona, primero desde el punto de vista del módulo de E/S. Para una entrada, el módulo de E/S recibe una orden READ del procesador. Entonces, el módulode E/S procede a leer el dato desde el periférico asociado. Una vez que el dato está en el registro de datos del módulo, el módulo envía una interrupción al procesador a través de una línea decontrol. Después, el módulo espera hasta que el procesador solicite su dato. Cuando ha recibido la solicitud, el módulo sitúa su dato en el bus de datos y pasa a estar preparado para otra operación de E/S.Desde el punto de vista del procesador, las acciones para una entrada son las que siguen:
El procesador envía una orden READ de lectura. Entonces, pasa a realizar otro trabajo (es decir, elprocesador puede estar ejecutando programas distintos al mismo tiempo). Al final de cada ciclo de instrucción, el procesador comprueba las interrupciones (Figura 3.9). Cuando se pide la interrupción desde elmódulo de E/S, el procesador guarda el contexto (es decir, el contador de programa y los registros del procesador) del programa en curso, y procesa la interrupción. En este caso, el procesador lee lapalabra de datos del módulo de E/S y la almacena en memoria. Después, recupera el contexto del programa que estaba ejecutando (o de otro programa) y continúa su ejecución.
PROCESAMIENTO DE LAINTERRUPCIÓN
Consideremos con más detalle el papel del procesador en las E/S. Cuando se produce una interrupción, se disparan una serie de eventos en el procesador, tanto a nivel hardware como software.La Figura 6.7 muestra una secuencia típica. Cuando un dispositivo de E/S termina una operación de E/S, se produce la siguiente secuencia de eventos en el hardware:
1. El dispositivo envía una señalde interrupción al procesador.
2. El procesador termina la ejecución de la instrucción en curso antes de responder a la interrupción.
3. El procesador comprueba si hay interrupciones, determina que...
Regístrate para leer el documento completo.