Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porGregorio Maidana Zúñiga Modificado hace 7 años
1
Registro y transferencia para manejo de interrupciones
Autores : Juan Fernando Lima Juan Carlos Urdiales.
2
Registro y transferencia para manejo de interrupciones
Introducción Una interrupción es un mecanismo el cual permite ejecutar un bloque de instrucciones que interrumpe la ejecución de un programa, para después ejecutarlo nuevamente sin afectar el estado del mismo. Antiguamente el procesador era el encargado de enviar señales continuamente para comprobar el estado de los dispositivos. Debido a estos problemas de rendimiento se diseño una línea de comunicación entre el procesador y los dispositivos
3
Registro y transferencia para manejo de interrupciones
Introducción Cuando existe un problema en algún dispositivo este avisara al procesador el cual interrumpirá las acciones actuales mientras soluciona el error y luego volver a su estado original.
4
Registro y transferencia para manejo de interrupciones
Pasos durante una interrupción El sistema suspende lo que estaba realizando y pasa el control al sistema de operación. Deshabilita las interrupciones, ya que se esta tratando de solucionar un problema el sistema no puede atender a otros problemas El kernel del sistema de operación guarda el estado actual del proceso que se ha interrumpido. Por lo general el control de interrupciones se maneja mediante un denominado vector de interrupciones
5
Registro y transferencia para manejo de interrupciones
Tipos de Interrupciones Interrupciones Internas : los producen los dispositivos de E/S o sensores que son periféricos de la CPU. Interrupciones Externas Son producidas por dos motivos Anomalías en Instrucciones o interrupciones software
6
Registro y transferencia para manejo de interrupciones
Interrupción E/S El CPU carga los registros en el controlador del dispositivo . El controlador analiza este registro para saber que acción tomar. Son ejecutadas desde el usuario.
7
Registro y transferencia para manejo de interrupciones
8
Registro y transferencia para manejo de interrupciones
Interrupciones Internas Anomalías de instrucciones Cada anomalía tiene un distinto método de interrupción. División por 0 (al momento) Operaciones aritméticas que han producido Overflow ( finalizar la operación)
9
Registro y transferencia para manejo de interrupciones
Interrupciones Simuladas o interrupciones Software Interrupciones generadas por instrucciones del lenguaje maquina incluidas en el código del lenguaje. Simula una interrupción. Se suelen utilizar para comunicar las aplicaciones de usuario con el sistema operativo (traps) o para comprobar el tratamiento de las interrupciones Son síncronas. Asociada a las instrucciones de un programa. No depende de circunstancias externas.
10
Registro y transferencia para manejo de interrupciones
11
Registro y transferencia para manejo de interrupciones
Cuantos pines hay para comunicarle a la CPU de errores? Controladores intel y motorola poseen hasta 256 interrupciones Para ello existe un solo pin que avisa que se ha producido una interrupción (INTR). Posteriormente el CPU averigua la interrupción producida.
12
Registro y transferencia para manejo de interrupciones
Cuantos pines hay para comunicarle a la CPU de errores? Interrupciones especiales como Reset Bus error NMI (non Maskable Interrupt)(prioridad)
13
Registro y transferencia para manejo de interrupciones
14
Registro y transferencia para manejo de interrupciones
Atención a interrupciones simultaneas Se puede resolver por : Programa Si varios dispositivos se encuentran conectados al pin de interrupciones, debe dar un control de tratamiento al detectar el error e ir verificando en cada todos los dispositivos en sus registros correspondientes.
15
Registro y transferencia para manejo de interrupciones
Atención a interrupciones simultaneas Hardware Es mucho mas rápida que por programa. Se soluciona mediante una pastilla(PIC)(Programable Interrupt Controller) interconectada entre los dispositivos y la CPU. Admite 8 entradas de interrupciones (IRQ Interrupt Request). Viene de dispositivos E/S u otros PICs Este se conecta a el pin de interrupciones generales del procesador. El pic es programable se le puede establecer las prioridades.
16
Registro y transferencia para manejo de interrupciones
17
Registro y transferencia para manejo de interrupciones
Atención a las interrupciones Existen 2 tipos de interrupciones: Enmascarables Se pueden atender o no dependiendo del registro de actividades Intel cuenta con dos instrucciones Enable y Disable para aceptación de interrupciones. Aceptar o inhibir interrupciones.
18
Registro y transferencia para manejo de interrupciones
Atención a las interrupciones Existen 2 tipos de interrupciones: No Enmascarables Son las que siempre se atienden. Cuentan con pines especificos en el CPU (RESET, NMI, BERR) Errores por fallos de energia Errores de memoria RAM
19
Registro y transferencia para manejo de interrupciones
20
Registro y transferencia para manejo de interrupciones
Proceso de atención El procesador no acepta interrupciones mientras ejecuta una instrucción (excepto reset o Error de Bus). Cuando a finalizado su ejecución comprueba si existe una interrupción NMI Si existe ejecuta el proceso de interrupción correspondiente Si no existe comprueba el estado de los registros si posee interrupciones permitidas o inhibidas. En caso de encontrar interrupciones revisa si se encuentran activado el pin INTR de interrupciones generales Si no encuentra interrupción retorna a la ejecución inicial del computador.
21
Registro y transferencia para manejo de interrupciones
22
Registro y transferencia para manejo de interrupciones
Proceso de interrupción Se meten en la pila el contador y el registro de estado. Se inhiben las interrupciones. Se contesta con la señal inta(interrupt Acknowledge) El PIC desactiva la señal de interrupción. El Pic coloca en el bus de datos el numero del vector de interrupciones. El CPU lee el numero del vector enviado. El procesador calcula la dirección del vector que contiene el tratamiento (función) correspondiente. El CPU pone el contenido del vector(dirección ) en el contador del programa. Toma el control la RTI correspondiente. Al finalizar la rutina de tratamiento(RTI) su ultima instrucción es de tipo retorno de instrucciones el cual saca los valores de la pila (contador del programa y registros de estado) y los almacena en dichos registros con lo cual las interrupciones vuelven a ser permitidas. Continua el programa interrumpido.
23
Registro y transferencia para manejo de interrupciones
Problemas que se dan mediante interrupciones:
24
Registro y transferencia para manejo de interrupciones
25
Registro y transferencia para manejo de interrupciones
DMA (Direct Memory Access) Es una alternativa para el manejo de grandes volúmenes de datos de E/S. Es un controlador que se encarga de la transferencia directa de datos, (Sin intervención del CPU) para llevar a cabo la transferencia. Para cada palabra el controlador debe suministrar las señales de dirección y las de control de bus.
26
Registro y transferencia para manejo de interrupciones
DMA (Direct Memory Access) Aunque puede transmitir datos sin intervención del CPU debe ser programado por el mismo. La CPU debe darle a el controlador al menos los siguientes valores: Si la operación es de lectura o escritura. La dirección de comienzo de buffer en memoria. El numero de bytes a transferir.
27
Registro y transferencia para manejo de interrupciones
DMA (Direct Memory Access) Trabaja paralelamente con la CPU Se encarga de la transferencia byte a byte entre el dispositivo y la memoria. Cuando esta completa genera una interrupcion para avisar a la CPU. El CPU solo esta presente en la transferencia del bloque de datos al inicio y al final de la instrucción.
28
Registro y transferencia para manejo de interrupciones
Posesión del bus de datos
29
Registro y transferencia para manejo de interrupciones
Bibliografía Desconocido, "Arquitectura de Computadores," 2001. Desconocido. (2006) Universidad Profesional de Ingeniería y Ciencias Sociales y Administrativas. [Online]. minados/PolilibroFC/Unidad_V/Unidad%20V_2.htm#IrInicioUni dad ISC. JUAN ALBERTO ANTONIO VELÁZQUEZ, TECNOLÓGICO DE ESTUDIOS SUPERIORES DE JOCOTITLÀN PROGRAMACIÓN EN ENSAMBLADOR PARA PROCESADORES 80x86
Presentaciones similares
© 2025 SlidePlayer.es Inc.
All rights reserved.