Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Sem 06,01

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 37

Unidad: II Semana: 05,00

ARQUITECTURA DE COMPUTADORAS

SOLÓRZANO CARRASCO, DAVID


INTERFASES E/S
Descripción de la interfaz de E/S
• Objetivo
- Cómo se comunica la CPU con el exterior (periféricos de E/S)
- Cómo se controla esta comunicación.
• Periféricos
- Presentación de datos (pantalla, impresora,...)
- Adquisición de datos (teclado, sensores,...)
- Soportes de información (discos, cintas,...)
- Otros (sensores, actuadores, pic,...)
• Conexión (bus único, dos buses)

2
Esquema de la interfaz de E/S
datos

direccion

control

CPU MEM E/S

Periférico
Controlador
• Perifericos
Existen gran variedad de periféricos con diferentes conexiones físicas
a los buses y controlados de forma muy diferente electrónicamente.

• Controlador
Dispositivo electrónico que se interpone entre los buses del sistema
y el periférico y que es visible a nivel de LM como un conjunto de
registros. El controlador descarga a la CPU del control directo del
dispositivo.
“La CPU se comunica con los periféricos a través de los
registros del controlador”.
Clasificación de los controladores de E/S

• No multiplexado
- Sólo controla 1 periférico: periféricos rápidos

• Multiplexado
- Controla varios periféricos
- Multiplexado por caracteres: periféricos lentos
- Multiplexado por bloques: periféricos de velocidad
intermedia

5
Clasificación de los controladores de E/S
buses

CPU MEM E/S No Multiplexado

buses

Multiplexado
CPU MEM E/S

P1 P2 P3

6
Funciones del controlador de E/S
• Diálogo con la CPU
- Recibe peticiones para realizar operaciones de E/S
- Avisa acerca del estado de los periféricos

• Control del periférico


- Controla que el periférico realice la operación indicada
por la CPU

• Facilitar la transferencia con el periférico

7
Visión funcional del controlador de E/S

MEMORIA
datos Interfaz Interfaz Interfaz
DATOS
CPU direccion con el con el con el
ESTADO periférico controlador exterior
control
CONTROL

controlador periférico

8
Registros del controlador de E/S
• Registro de Estado
- Información de estado: se ha pulsado una tecla, se ha
terminado la escritura en disco, etc.
- Información leída por la CPU
• Registro de control
- Información de control: la operación a realizar (r/w), la
forma de trabajar del periférico, etc.
- Información escrita por la CPU
• Registro de datos
- Información a transferir entre el periférico y la CPU

9
Sincronización en las operaciones de E/S
• ¿Cómo se sincroniza la CPU con los dispositivos de
E/S? ¿cómo se detecta que el dispositivo está listo
para comenzar la transferencia?

• 2 alternativas
- Sincronización por encuesta: la CPU consulta
constantemente del registro de estado del controlador
- Sincronización por interrupción: el propio controlador
avisa de su disponibilidad a la CPU mediante una
interrupción

17
E/S por encuesta (pooling)

• Consulta continua del registro de estado del controlador


encuesta por estado
• 2 alternativas
– Encuesta continua:
while (leer_registro_estado==NO_PREPARADO) NOP;
realizar_operaciones_E/S;
– Encuesta periódica:
while (leer_registro_estado==NO_PREPARADO)
{ otras_acciones; }
realizar_operaciones_E/S;
E/S por interrupciones
• Interrupción: suceso extraordinario que requiere una
atención especial por parte del procesador
• Son sucesos asíncronos: el controlador interrumpe a la
CPU cuando está listo para iniciar la transferencia
• Ventaja:
- La CPU no pierde tiempo realizando la encuesta y puede
realizar otras tareas
• Desventajas:
- Se complica el hardware (mecanismo de ejecución de las
instrucciones)

19
E/S por interrupciones: fases

• Detección de la petición de interrupción


• Salvar el estado del programa interrumpido
• Identificar la rutina de atención a la interrupción que
hay que ejecutar (dependiente del dispositivo)
• Ejecutar la rutina de atención correspondiente
Rutina asíncrona: no activada por el programa principal
• Recuperar el estado (la ejecución) del programa
interrumpido
E/S por interrupciones
INT Buses (@, DATOS, CONTROL)
Aplicación
INT
Rutina de CPU
servicio Kp Aplicación
PC

Per. Rutina
de
servicio

MEMORIA

Retorno de la interrupción
Detección de la interrupción

• La CPU dispone de una o varias líneas a través de las que los


dispositivos pueden interrumpir a la CPU
INT: señal de entrada a la unidad de control
• La CPU muestrea el valor de la señal de petición de interrupción
– En alguna de las fases de ejecución de la instrucción
• Flag de interrupción (Interrupt Flag, IF):
– IF = 0 interrupciones inhibidas/enmascaradas (CLI en
80x86)
– IF = 1 interrupciones permitidas (STI en 80x86)
• Interrupciones no enmascarables (Non Maskable Interrupt, NMI)
Detección de interrupciones

Flag de interrupción (IF):


– Cuando la CPU atiende una interrupción, pone IF = 0
– Cuando finaliza el tratamiento de la interrupción pone IF = 1
interrupciones uninivel
Identificación hardware

Bus (direccion , Dato, Control)

INTA

INT
INT1
INT2 INTn CPU

Controlador Controlador Controlador


1 2 n

29
Identificación de interrupciones simultáneas:
Codificador con prioridad
Bus (direccion, Dato, Control)
INT INT
1

Controlador INT
2 Codificador
1 con
prioridad
Código
INT n del
Controlador periférico
p
2 CPU
INTA 1

INTA
2
decodificador

Controlador
n INTA n INTA
Requerimientos de Interrupción IRQ
Interrupción: proceso por el cual un periférico puede solicitar atención del
procesador central. Cuando un dispositivo requiere atención del procesador
envía un “aviso”, que viene a ser la interrupción.
Más de un periférico puede emplear el mismo canal de interrupción.
TIPOS DE DMA
BUS ÚNICO DMA INDEPENDIENTE
BUS ÚNICO DMA INTEGRADO
BUS DE E/S SEPARADO
Se conectan los módulos de E/S a un módulo de DMA, mediante un bus de E/S
GRACIAS

También podría gustarte