Clase5 Reset e Interrupciones

download Clase5 Reset e Interrupciones

of 28

Transcript of Clase5 Reset e Interrupciones

  • 7/25/2019 Clase5 Reset e Interrupciones

    1/28

    Reset e interrupciones

    La CPU ejecuta instruccionessecuencialmente.

    Bajo ciertas condiciones es necesarioejecutar instrucciones de forma

    asincrnica a la ejecucin delprograma principal

  • 7/25/2019 Clase5 Reset e Interrupciones

    2/28

    Introduccin

    Los reset (R) e interrupciones (I) son procesos de excepcin. Entrar a la correcta rutina de sericio se conoce como proceso de

    excepcin. EL R e I iniciali!an el dispositio desde un estado conocido.

    EL R e I operan "ajo el concepto de ector de "#s$ueda delnueo punto de ejecucin de instrucciones. EL R e I son la forma de suspender la ejecucin normal del

    programa % as& puede estar li"re para atender las solicitudes deejecucin.

    Puede manejar 'asta * fuentes de interrupciones por separado.

    Control de 'a"ilitacin glo"al de interrupciones (+ascara deinterrupcin)

    +anejo de prioridad en la atencin de interrupciones. Bandera de indicacin de estado de interrupcin.

  • 7/25/2019 Clase5 Reset e Interrupciones

    3/28

    Elementos de Reset e

    Interrupcin

    Interrupcin Reconocimiento

    Ealuacin de la prioridad de Interrupcin(,r"itraje)

    ,pilado del contexto (estado de la ma$uina)

    B#s$ueda del -ector de Interrupcin

    Reset Reconocimiento

    B#s$ueda del ector de reset.

  • 7/25/2019 Clase5 Reset e Interrupciones

    4/28

    Elementos de Reset e

    Interrupcin

    Reconocimiento Reset El reconocimiento del reset es asincrnico % se reconoce

    cuando sucede. El reset interno es tam"in asincrnico. Interrupcin /odas las interrupciones son reconocidas en el #ltimo ciclo

    de cada instruccin. 0i ocurre en el #ltimo ciclo solo es reconocida 'asta el

    prximo. En tiempo de atencin de interrupcin de"e ser tenido en

    cuenta para el calculo del tiempo de atencin deinterrupcin.

  • 7/25/2019 Clase5 Reset e Interrupciones

    5/28

    Elementos de Reset e

    Interrupcin

    Bajo condiciones de reset no 'a% apilado.Apilado (Stacking) 1rden de ,pilado % desapilado,pilado2 PC3 43 , % CCR. 5esapilado2 CCR3 ,3 43 PC.

    El "it I solo se actia 'asta $ue se 'ace el apiladodel CCR.

    El apuntador de pila (0P) indica siempre ladireccin de la siguiente posicin de pila ac&a.

    Es necesario reali!ar el apilado del registro 6.

  • 7/25/2019 Clase5 Reset e Interrupciones

    6/28

    Elementos de Reset e

    Interrupcin

    ,pilado(0tac7ing)

  • 7/25/2019 Clase5 Reset e Interrupciones

    7/28

    Elementos de Reset e

    Interrupcin

    Evaluacin de la prioridad de Interrupcin

    (Arbitraje) /odas las fuentes de reset tiene la misma prioridad.

    Las interrupciones son almacenadas % ejecutadas por elmodulo 0I+ (0%stem Integration +odule)3

    El resultado del ar"itraje es una constante3 $ue la CPUutili!a para determinar cual es el ector de "us$ueda.

    Cuando una Interrupcin es almacenada por el 0I+3ninguna otra interrupcin puede ser procesada. 6asta $ueel "it I este en cero.

  • 7/25/2019 Clase5 Reset e Interrupciones

    8/28

    Ealuacin dela prioridad deInterrupcin(,r"itraje)

  • 7/25/2019 Clase5 Reset e Interrupciones

    9/28

    Elementos de Reset e

    Interrupcin

    Enmascaramiento Los reset no son enmascara"les. Las interrupciones pueden ser 'a"ilitadas o

    in'a"ilitadas por el el "it I de mascara deinterrupcin.

    El "it I es actia () durante los dos primerosciclos del reloj.

    El "it I es limpiado (8) durante los dos #ltimosciclos de reloj de la ejecucin de la instruccinR/I.

  • 7/25/2019 Clase5 Reset e Interrupciones

    10/28

    Elementos de Reset e

    Interrupcin

    Ejemplo Reconocimiento Interrupcin

  • 7/25/2019 Clase5 Reset e Interrupciones

    11/28

    Elementos de Reset e

    Interrupcin

    Ejemplo Reconocimiento

    Interrupcin

    cuando se 'adetectado otra.

  • 7/25/2019 Clase5 Reset e Interrupciones

    12/28

    Elementos de Reset e

    Interrupcin

    Retornando al Programa Principal. La instruccin $ue termina el proceso de

    interrupcin % retorno al punto donde esta"a

    corriendo el programa principal es RTI. Los registro son restaurados con los alores

    anteriores (antes de la interrupcin) La instruccin R/I reali!a el desapilado %

    restaura los registros PC3 43 ,3 CCR. El desapilado del CCR limpia el Bit I. $ue fue

    clareado durante el segundo ciclo de R/I.

  • 7/25/2019 Clase5 Reset e Interrupciones

    13/28

    Procesamiento del Reset.

    Un reset fuer!a la +CU a retornar a suestado inicial % principia la ejecucin de lasinstrucciones desde una direccin espec&fica.

    La atencin del reset es asincrnica conrespecto la ejecucin de una instruccin.

    La atencin se reali!a inmediatamente

    despus $ue existe un niel "ajo en el pin dereset.

  • 7/25/2019 Clase5 Reset e Interrupciones

    14/28

    Procesamiento del Reset

    /empori!acin

  • 7/25/2019 Clase5 Reset e Interrupciones

    15/28

    Procesamiento del Reset

    Condiciones Iniciales. Una e! es reconocido el reset3 los registros

    internos % de control son for!ados a su estado

    inicial. Los estado iniciales son descritos en al 'oja

    tcnica

    Los perifricos tam"in son for!ados a su estadooriginal

  • 7/25/2019 Clase5 Reset e Interrupciones

    16/28

    Procesamiento del Reset

    La CPU Luego del reset la CPU "usca en el ector de

    reset (9:::E 9::::) la nuea direccin para ser

    cargada en el PC3 % se inicia la ejecucin. En el modo monitor el ector de reset es "uscado

    en ;:E:E 9:E::). El 0P es cargado con 988::3 los dem

  • 7/25/2019 Clase5 Reset e Interrupciones

    17/28

    Procesamiento del Reset

    +odos de 1peracin La CPU tiene dos modos de operacin +odo Usuario +odo +onitor

    El modo usuario % monitor son lo mismo excepto por$ue elmodo monitor altera el "it ,* de direccin % lo mantiene encero.

    El +odo usuario "usca el ector de reset en 9:::E>9:::: El +odo monitor "usca el ector de reset en 9:E:E>

    9:E:: El redireccionamiento en modo monitor permite a la CPU

    ejecutar cdigo interno de firm?are en cam"io del cdigode usuario.

  • 7/25/2019 Clase5 Reset e Interrupciones

    18/28

    Procesamiento del Reset

    :uentes de Reset External Reset (RE0E/ Pin)

    Po?er>on reset (P1R) circuit

    C1P ?atc'dog Illegal opcode reset

    Illegal address reset

    Lo? oltage in'i"it (L-I) reset

    El reset detiene la ejecucin de la instruccin actual./odos los reset "uscan en ector reset 9:::E>9:::: %alidan la se@al interna de reset.

  • 7/25/2019 Clase5 Reset e Interrupciones

    19/28

    Procesamiento del Reset

    Reset Externo Un cero Lgico aplicado al pin de R0/ % genera

    la se@al de reset interno.

    1casiona una detencin del procesamiento de laCPU.

    La CPU % los perifricos son reseteados.

  • 7/25/2019 Clase5 Reset e Interrupciones

    20/28

    Procesamiento del Reset

    Reset desde una fuente Interna Un reset interno actia un pull do?n3 en el pin de

    R0/3 lo $ue permite reiniciar perifricos externos

    El pin de R0/ es mantenido en "ajo durante Aciclos de reloj3 el reset interno continua en "ajodurante A ciclos de reloj mas.

    0i el reset interno es mantenido 'asta el final deeste tiempo un la fuente fue un reset externo.

  • 7/25/2019 Clase5 Reset e Interrupciones

    21/28

    Procesamiento de una

    interrupcin

    El grupo de instruciones o ejecuciones $ue tienenlugar como respuesta a una interrupcin esconocido como rutina de sericio de interrupcin.

    o se pueden procesar interrupciones anidadas. Los registros de la CPU son almacenados en el

    stac73 excepto el registro 6.

    Una interrupcin ocasiona la suspensin del flujo deprograma $ue se esta ejecutando3 tan pronto comola ejecucin de la instruccin actual termine.

  • 7/25/2019 Clase5 Reset e Interrupciones

    22/28

    Procesamiento de una

    interrupcin

    Una interrupcin termina con la ejecucin deinstruccin R/I (return from interrupt)3 ocasionando$ue los registro de la CPU recupere los estados % la

    direccin actual almacenada en el stac7. Las interrupciones son 'a"ilitadas o in'a"ilitadas

    por el "it de mascara de interrupcin.

    El "it I proporciona el control de interrupciones

    anidadas. Por defecto la estructura de interrupciones in'i"e la

    entrada a una nuea interrupcin

  • 7/25/2019 Clase5 Reset e Interrupciones

    23/28

    uentes de interrupcin !

    prioridad

    La CPU tiene * ectores de interrupcininclu%endo el reset % la interrupcin porsoft?are (0=I)3

  • 7/25/2019 Clase5 Reset e Interrupciones

    24/28

    uentes de interrupcin !

    prioridad

    Cuando el 0I+ reci"e una solicitud deinterrupcin3 el procesamiento inicia en ellimite de la ejecucin de la instruccin3 el 0I+

    determina la prioridad cuando mas de unafuente de interrupcin esta actia.

    Las dem

  • 7/25/2019 Clase5 Reset e Interrupciones

    25/28

    "odos #ait ! stop en I$T

    =,I/ En modo ?ait el reloj de la CPU es des'a"ilitado.

    1tros mdulos permanecen procesando

    Un mdulo actio puede despertar la CPU

    El procesamiento se reali!a de inmediato

    0/1P En modo stop el reloj est< apagado

    Existen mdulos particulares $ue pueden actiarel sistema generando una interrupcin

  • 7/25/2019 Clase5 Reset e Interrupciones

    26/28

    "anejo de la Pila

    ,signacin de eti$uetas. Locali!acin de espacios en la pila. Para ser utili!ado por

    rutina de sericio de interrupcin.

    /ipo de pila %I&'ace dif&cil el utili!ar instrucciones parael almacenamiento de mas de dos "%tes de informacin enla pila.

    La caracter&stica de adicin de A "its del alor inmediato(con signo) al alor del apuntador de pila.

    0e pueden utili!ar direccionamiento de modo indexado delstac7 para acceder al espacio de datos.

  • 7/25/2019 Clase5 Reset e Interrupciones

    27/28

    "anejo de la Pila (en I$T)

  • 7/25/2019 Clase5 Reset e Interrupciones

    28/28

    'urso de"icrocontroladores

    Uniersidad nacional deColom"ia

    :I Clase