Interrupciones De Software Y Hardware

Páginas: 5 (1065 palabras) Publicado: 22 de enero de 2016
Sesión 12
Interrupciones

Computadores II
Rodrigo Santamaría

Índice


Tipos de interrupción: hardware y software



Interrupciones del 6809





Flags relacionados



Interrupciones enmascarables



Interrupciones software

Tratamiento de interrupciones


Vectores de salto



Paginación directa



Ejercicios

Interrupciones


Interrupción (hardware): señal asíncrona que
indica lanecesidad de atención debida a un
evento externo






Evitan que el procesador tenga que comprobar
continuamente el estado externo
A través del cableado del procesador

Interrupción (software): evento síncrono en
un programa indicando la necesidad de un
cambio en la ejecución


A través de instrucciones propias del procesador

Interrupciones del 6809
Nombre

Significado

Detalles

RESET

ResetSe lanza al encenderse el ordenador

NMI

Non-Maskable Interrupt

Interrupción que no se puede ignorar

IRQ

Interrupt ReQuest

Interrupción que se puede ignorar

FIRQ

Fast Interrupt ReQuest

Interrupción ignorable de tipo rápido

SWI

SoftWare Interrupt

SWI2

SoftWare Interrupt 2

Interrupción de software 1 a través de
la orden SWI
Como SWI, pero el nemónico es SWI2

SWI3

SoftWare Interrupt3

Como SWI, pero el nemónico es SWI3

Interrupciones del 6809
RESET
No enmascarables
+

Hardware
Enmascarables

FIRQ
IRQ

Prioridad

NMI

Software

SWI
SWI2
SWI3

Flags relacionados
Flag

Descripción

Función si activo (1)

Función si inactivo (0)

E

Entire state

Indica que, en una
interrupción, se guardaron
todos los registros en la pila S

Indica que, en una
interrupción, se guardaron
sóloPC y CC en la pila S

I

IRQ interrupt mask

Inhibe interrupciones IRQ

Permite interrupciones IRQ

F

FIRQ interrupt mask Inhibe interrupciones FIRQ

Permite interrupciones FIRQ

Interrupciones enmascarables




Interrupción enmascarable: aquélla que se
puede ignorar


En IRQ, poniendo el bit I del registro CC a 0



En FIRQ, poniendo el bit F del registro CC a 0

Interrupción noenmascarable: aquélla que no se
puede ignorar


En el 6809, es la interrupción NMI



Se utilizan habitualmente para temporizadores

Interrupciones software


Requieren la ejecución de una instrucción




SWI, SWI2, SWI3

La instrucción tiene los siguientes efectos


Pone el flag E a 1



Guarda todos los registros en la pila S



Pone los flags F e I a 1



Salta a su vector

Tratamiento deinterrupciones


Cuando se dispara una interrupción
1. Se comprueba el flag E
2. Se guardan en la pila S los registros



Todos si E=1
PC y CC si E=0

3. Se salta a la dirección del vector de salto de la
instrucción




En ella estará el salto a la subrutina de tratamiento
Al final de la rutina de tratamiento, se debe ejecutar la
instrucción RTI (ReTurn from Interrupt), que consulta E y
restauralos registros correspondientes

Tratamiento de interrupciones


Antes del paso 1, dependiendo de la
interrupción:



IRQ pone I=1, inhabilitando nuevas IRQs
FIRQ pone I=1 y F=1, inhabilitando nuevas IRQs y
FIRQs




Es decir, FIRQ tiene una prioridad mayor que IRQ

NMI pone I=F=1 (inhibe IRQ y FIRQ)


Tiene la mayor prioridad de las tres, pues un NMI
interrumpe cualquier proceso, incluida unasubrutina de
tratamiento de NMI

Vectores de salto
Interrupción

Dirección de salto

RESET

0xFFFE

NMI

0xFFFC

SWI

0xFFFA

IRQ

0xFFF8

FIRQ

0xFFF6

SWI2

0xFFF4

SWI3

0xFFF2

;para saltar a la subrutina tratar_irq sería:
.org 0xFFF8
.word tratar_irq

Errores frecuentes


IRQ y FIRQ deben habilitarse mediante su flag
en CC




La pila S debe apuntar a un lugar adecuado




Porejemplo, para FIRQ: andcc #0b10111111
Por ejemplo: lds 0xB000

La subrutina de tratamiento de la interrupción
debe terminar con rti


Y se invoca con .word subrutina desde el
vector correspondiente, no con jsr.

Ejemplo


Implementad un programa que pida un carácter
por teclado, chequeando si es un dígito:





Si es un dígito, termina sin más
Si no, lanza una excepción software SWI, que
imprime...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Definición de software y hardware
  • Software y Hardware
  • SOFTWARE y hardware
  • Hardware Y Software
  • Hardware y software
  • Hardware y software
  • Hardware y software
  • Hardware & Software

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS