RESETS & INTERRUPCIONES

Documentos relacionados
RESETS & INTERRUPCIONES

MONITOR ROM MODULE (MON08)

Winide y Kit EVALQTY CDM 2011

MC. Christian Aldaco González. Microcontroladores

Flia. HC908. Detalles de la Arquitectura. Curso de Microcontroladores Familia HC908 Flash de Motorola Parte II

Control remoto del EDUKIT08 vía PC...

(SPI) Módulo Serial Sincrónico

Motorola MC68HC908JK3/JK1

CICLOS DEL PROCESADOR

CLOCK GENERATION MODULE (CGM) Módulo de Generación de Clock

SISTEMAS OPERATIVOS Arquitectura de computadores

Controlador de Interrupciones (Versión programable) Manual de Usuario

UNIDAD 3 ARQUITECTURA DEL Z80. Microprocesadores Otoño 2011

Funcionamiento de la Pila (o stack)

Taller de Firmware. Introducción al PIC16F877. Facultad de Ingeniería Instituto de Com putación

Técnicas Digitales III

NVIC : Nested Vectored Interrupt Controller

Guía de práctica. Dispositivo

Introducción a la Computación. Capítulo 10 Repertorio de instrucciones: Características y Funciones

Arquitectura de Computadores II Clase #3

El nivel ISA (II)! Conjunto de Instrucciones

Mapas de Memoria y E/S

Microprocesadores, Tema 2:

Tema 8: Organización de la Entrada/salida

Sistemas con Microcontroladores y Microprocesadores

Controlador Programable de Interrupciones i8259

Tema: MAPAS DE MEMORIA: LÓGICA DE SELECCIÓN, GESTIÓN Y ORDENACIÓN DE LA MEMORIA. J. Luis Lázaro, J. Jesús García "MAPA DE MEMORIA" 0

Analog To Digital Converter. Module (ADC) Curso de Microcontroladores Familia HC908 Flash de Freescale Parte II ING.

Objetivos. Objetivos. Arquitectura de Computadores. R.Mitnik

5. Microcontroladores de 32 bits. (C) 2007 Ibercomp S. A.

Introducción a la arquitectura de computadores

Ensamblador. Interrupciones. Dentro de una computadora existen dos clases de interrupciones:

Cartilla para Microcontrolador PIC16F /40 Pin 8-Bit CMOS FLASH.

Velocidades Típicas de transferencia en Dispositivos I/O

Curso sobre Microcontroladores Familia HC9S08 de Freescale

Arquitectura de Computadores II

Curso de Microcontroladores. Familia HC908 Flash...

SISTEMAS ELECTRÓNICOS AVANZADOS. ING. TÉC. INDUSTRIAL ELECTRÓNICO

Arquitectura de computadoras

Estructura de Microprocesadores. Profesor Ing. Johan Carvajal Godínez

Contenido TEMA 2 ENTRADA / SALIDA. Interfaz HW: buses del sistema. Interfaz HW de E/S

Qué es un programa informático?

Introducción a los Sistemas Operativos

PIC 18F45XX CARACTERÍSTICAS GENERALES

Microprocesadores. Procesadores IA-32 e Intel R 64 Tareas. Alejandro Furfaro

Problemario: Memoria / Entrada Salida / Buses / Interrupciones

Curso sobre Microcontroladores Familia HC9S08 de Freescale

Control automático del nivel de luz.

INTRODUCCIÓN A LOS MICROPROCESADORES

MICROCONTROLADORES PIC

Interrupciones Fuentes de Interrupciones para el PIC16F1787

FLASH-POD. Características. Aplicaciones. Descripción general. Emulador en Tiempo Real FLASH-POD. FLASH-POD

Fundamentos de Computadores I

(1) Unidad 1. Sistemas Digitales Basados en Microprocesador SISTEMAS BASADOS EN MICROPROCESADORES. Grado en Ingeniería Informática EPS - UAM

08 MINED MICROCONTROLES INDUSTRIALES Y EDUC.

Ing. Carlos Bacalla

INTRODUCCIÓN. Interrupciones.

Señal de petición de Interrupción

UNIVERSIDAD TECNICA FEDERICO SANTA MARIA DEPARTAMENTO DE ELECTRONICA Diseño con Microcontroladores

INTERRUPCIONES. Existen 256 interrupciones En el modo real cada una tiene un vector asociado Vectores de 4 bytes: segmento + offset 32 F0 50 8A

SUBSISTEMA DE ENTRADA-SALIDA. Arquitectura de Computadores I 4º tema

2.2-1 Visión Interna PIC16F873/876. SBM

Instituto Tecnológico de Morelia

Como sacarle mayor provecho a las herramientas disponibles para la familia HC908

Tema. Módulo Captura Comparación Modulación n de Achura de Pulsos. C. F. G.S. D.P.E. Módulo de Proyectos 1

Práctica 4 - Arquitectura CPU

Diseño de un planificador

Tema: Microprocesadores

Arquitectura de Computadores

Arquitectura de Computadores

Qué es una computadora?

Entorno de Ejecución del Procesador Intel Pentium

Conmutación de Tareas

Conceptos básicos de Interrupciones y E/S Atmel

ENTRADAS DE CONTADOR DE ALTA VELOCIDAD

Curso de Microcontroladores. Familia HC908 Flash Freescale. Parte II ING DANIEL DI LELLA

Fundamentos de las TIC

Arquitectura (Procesador familia 80 x 86 )

INDICE Programa Entrada Unidad de control Unidad aritmética y lógica (ALU)

1-Componentes Físicos y Lógicos de un Ordenador.

Tema 14. Interrupciones. Las. C. F. G.S. D.P.E. Módulo de Proyectos 1

Curso sobre Microcontroladores Familia HC9S08 de Freescale

Contenido. Sistemas de Entrada/Salida. Categorias de los Dispositivos de Entrada/Salida. Categorias de los Dispositivos de Entrada/Salida

Entradas y Salidas. Componentes básicos de una PC

Hablemos de MCU s... Practicando con el CodeWarrior 5.1/6.x y el sistema R(S)_POD... COMENTARIO TECNICO

ESTRUCTURA BÁSICA DE UN ORDENADOR

Departamento de Electrónica Electrónica Digital. Mapas de memoria. Bioingeniería Facultad de Ingeniería - UNER

COMUNICACIÓN SERIAL FAMILIA DSP56800: Síncronas y Asíncronas CAPÍTULO VII

Estructura del Computador

Guía Rápida. Aplicaciones Lean Automation

MANUAL DEL DEPURADOR DE UVI-51

Sistemas de E/S. Arquitectura de Computadores 3º Plan 96. Indice. 1. Problemática de la E/S 2. Módulos E/S 3. Instrucciones de E/S 4.

Tema 4: SISTEMAS DE ENTRADA/SALIDA. Un computador no puede estar formado sólo por la CPU y la memoria.

ESTÁNDAR DE COMPETENCIA

MEMORIA EJERCICIO 1 EJERCICIO 2

Transcripción:

RESETS & INTERRUPCIONES EN EL CPU08

Resets & Interrupciones Los Resets inicializan al CPU a un estado conocido!!!!. Todos los resets son manejados por medio del System Integration Module (S.I.M ) Tipos de Resets: Power On External Pin COP LVI Illegal Address Illegal Opcode Las Interrupciones suspenden el procesamiento normal para que el CPU pueda realizar algunos servicios requeridos!!!!. Fuentes de Interrupciones: IRQ external PIN IRQ / KBI SCI SPI TIM _ ADC CGM (PLL) SWI

Procesado de la excepción Programa de Aplicación Excepción 1) Salva el Contexto (stacking) 2) Busca la nueva dirección (Tabla de Vectores) 3) Carga dirección en PC Manejador de Excepciones RTI Restablece el antiguo Contexto!!!

Resets e Interrupciones son excepciones del CPU (al proceso normal), o sea rompen con la secuencialidad normal de la ejecución de un programa. Determinando que tipo de manejo se requiere, se llama al proceso de excepción. El procesado de la excepción es manejado a traves de tareas discretas. Diferencias para el reconocimiento en el resets y las interrupciones Arbitraje Stacking (apilado) Busqueda de vectores.

- Reconocimiento - Detección de Reset o Interrupciones pendientes Resets: Es reconocida y ejecutada inmediatamente una vez ingresada (no hay sincronizmo, es una excepción imperativa ). Interrupciones: Es reconocida durante el último ciclo de la instrucción corriente. Al menos que ingrese durante el último ciclo Entonces será reconocida durante el último ciclo de la próxima instrucción. Actua despues del último ciclo de la instrucción corriente. Hay sincronizmo.

- Arbitraje - Resets: Determinación de igual y más alta prioridad No arbitraje!! Interrupciones: Diferiendo prioridades Mas bajas que los resets Realizado por el SIM

- Stacking (apilado) - Salvando la información del CPU... Resets: No se realiza stacking (apilado), ya que no es necesario salvar registros. MAPA DEL STACK EN RAM Se resetea el estado del CPU (a estados (Registros del CPU) conocidos) Lower Address Interrupciones: Stacks (apila) registros del CPU PC, X, A, CCR El registro H no es apilado para mantener compatibilidad con HC705!!. Usar instrucciones PULL H & PUSH H para ello. I N T E R R U P T Condition Code Register Accumulator Index Register X Program Counter (H) Program Counter (L) R E T U R N Higher Address

- Busqueda de Vectores - Más baja prioridad!!! 68HC908GP32 Vector Table $FFDC - $FFDD Timebase $FFDE - $FFDF ADC conv. complete $FFE0 - $FFE1 Keyboard pins RESETS: Todas usan el mismo vector (igual dirección) Puede determinarse la fuente del Reset examinando un registro del SIM ( SIM Reset Status Register ) SRSR $FFE2 - $FFE3 $FFE4 - $FFE5 $FFE6 - $FFE7 $FFE8 - $FFE9 $FFEA - $FFEB SCI Tx Empty /complete SCI Rx full/idle SCI Errors SPI Tx Empty SPI Rx full/over/fault Interrupciones: El Vector depende de la fuente de interrupción!!! $FFEC - $FFED TIM2 Overflow $FFEE - $FFEF TIM2 Channel 1 $FFF0 - $FFF1 TIM2 Channel 0 $FFF2 - $FFF3 TIM1 overflow $FFF4 - $FFF5 TIM1 Channel 1 $FFF6 - $FFF7 TIM1 Channel 0 Más alta prioridad!!! $FFF8 - $FFF9 $FFFA - $FFFB $FFFC - $FFFD $FFFE - $FFFF CGM (PLL) IRQ pin SWI Instruction RESET

Procesando el RESET Diagrama de Flujo del proceso RESET Seteo I-bit en CCR para prevenir interrupciones Reset de registros internos. Incluye CPU y registros de los sub módulos. Ver registros individualmente para el estado de reset. Carga el Stack Pointer con $00FF Usuario Modo? Monitor Busqueda Reset Vector desde $FFFE - $FFFF Busqueda del Reset vector desde $FEFE-$FEFF Carga el PC con el contenido del Reset Vector Comienzo ejecución

Interrupción 1 Procesando la Interrupción Diagrama de Flujo del proceso Ultimo ciclo de la instrucción corriente Completa la busqueda de la próxima instrucción (redund) Stakeo del Program Counter Stackeo del Index Register X RTI Completa la busqueda de la próxima intrucción ( NO usada ) Repone el C. C. R desde el stack Repone el Acumulador desde el stack Repone el Index Register X del stack Nota: Index register H no se salva en el stack en forma automática. Stackeo del Acumulador Stackeo del C. C. R. Repone el PC desde el stack Busqueda de la próxima instrucción El I-bit se limpia por la reposición del C.C.R. Desde Seteo del I bit para prevenir Interrupciones. Busqueda del Vector 1 si Interrupción Pendiente? el stack (al ejecutar la instrucción RTI) Carga el PC con el contenido delvector no Comienzo la ejecución del servicio de la interrupción Primer ciclo de la próxima instrucción

Enmascaramiento (Masking) Habilitación / Deshabilitación del procesamiento de excepciones. Resets: NO puede ser enmascarado (No puede ser impedido!!!.) Interrupciones: Pueden ser enmascaradas (pueden ser impedidas!!!) I bit habilita/deshabilita TODAS las interrupciones a procesar Mascaras Locales en periféricos que permiten enmascarar individualmente interrupciones. Disparo de Interrupciones Externas por Flanco o por Flanco & Nivel. Fin Capítulo 6!!