Conceptos de E/S: Polling, Interrupciones, DMA

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Conceptos de E/S: Polling, Interrupciones, DMA"

Transcripción

1 Conceptos de E/S: Polling, Interrupciones, DMA Sistemas con Microcontroladores y Microprocesadores

2 Esquema de un Sistema de Control Las variables de entrada se miden mediante sensores. Se obtienen así variables eléctricas analógicas y/o digitales. Las variables analógicas ingresan vía conversor A/D. Previa adaptación de niveles de tensión. El programa en el MC toma acción mediante variables de salida. Ej. Abrir Válvulas de una caldera. Manejan actuadores. Conversión D/A y cambio de nivel mediante A veces señales digitales directamente. Si las variables son muchas se pueden multiplexar Sistemas con Microcont. y Microproc. - UNT 2

3 Control El control de un sistema se puede realizar, en general, en forma analógica o digital. El control analógico: se implementa mediante circuitos analógicos y emplea variables analógicas. Ventaja: respuesta mucho más rápida a los cambios. Este tema se desarrolla en otros cursos. El control digital se implementa usando señales lógicas (1 o 0). Requiere Conversor A/D para entrada y D/A para salidas. Muchas veces ingresan o salen señales digitales. Ventaja: tiene una mayor inmunidad al ruido. por qué? El control digital puede implementarse mediante: Lógica cableada (con compuertas y componentes) Lógica programada (que emplea además un procesador). Sistemas con Microcont. y Microproc. - UNT 3

4 Ventajas de Lógica Programada Flexibilidad. En general se requiere solo cambiar el programa. Mayor Economía. Los mc son sumamente baratos. Se puede agregar más funcionalidad de manera simple y casi sin costo adicional. Facilidad de Mantenimiento. Se pueden diseñar sistemas con programas de autotest. Es más sencillo mantener un programa que un circuito. Existen herramientas en PC de desarrollo y mantenimiento. Revolución del mp. Hasta 1980, el control digital solo podía implementarse con lógica cableada. Las computadoras eran demasiado caras! Sistemas con Microcont. y Microproc. - UNT 4

5 Confiabilidad y Disponibilidad Confiabilidad: Tiempo hasta que se produce una caída de servicio. MTTF: Tiempo medio hasta la caída. AFR: Tasa anual de fallas. Disponibilidad: Porcentaje de tiempo que el sistema está disponible. MTTR: Tiempo medio de la reparación. D = MTTF / (MTTF + MTTR). Disponibilidad se mejora: Mejorando Confiabilidad Agregando Hw Redundante. Ej: agregar ECC (error correction code)a la memoria. Mantenimiento Preventivo. Disminuyendo Fallas. Mejora de las condiciones de trabajo (temperatura, tensión cte., ). Fabricando componentes más confiables. Diseñando con menos componentes Bajando MTTR. Sistemas automáticos de diagnóstico. Sistemas con Microcont. y Microproc. - UNT

6 Ventajas Lógica Programada: confiabilidad. Un sistema con lógica programada puede incluir funciones de auto revisión e informar si hay malfuncionamiento. Puede tomar n medidas de una variable y revisar si está dentro de un margen de error aceptable y quedarse con la variable promedio blindaje estadístico al ruido. Por último un sistema de lógica programada puede estar replicado un número impar de veces y tomar decisiones por mayoría. Mejora más si cada sistema cumple igual función con distinto desarrollo. Qué usa menos componentes: un sistema con lógica programada o con lógica cableada? Alguna ventaja de lógica cableada Vs programada? Sistemas con Microcont. y Microproc. - UNT 6

7 Clasificación de la Información Por la naturaleza: analógica o digital. Por su contenido: datos, control o status. Cómo sabe el mccuál es cual? Por la forma de transmisión: Serie Paralelo Combinación de ambos. Por el modo de transmisión: Sincrónico Asincrónico. Sistemas con Microcont. y Microproc. - UNT 7

8 Métodos de E/S Existen diversas maneras de manejar las entradas/salidas desde el microprocesador. Polling (Encuestas): Consiste en testear permanentemente una señal de status, hasta que esta tome un valor. Entonces se ejecuta la E/S. Requiere que el programa principal se ocupe de testear. Puede testear continuamente y no se puede hacer más nada. Puede testear periódicamente sin que pare el programa principal. Si está bien diseñado, atiende más rápido una señal. Interrupción: Cuando la señal de status toma un valor, el programa se interrumpe para manejar la E/S. Mucho más complicado de reproducir para probar. El programa principal está libre para realizar otras tareas. No hay desperdicio de tiempo testeando. Mayor sobrecarga (overhead). Sistemas con Microcont. y Microproc. - UNT 8

9 Ejemplo de E/S Asincrónica. Se ingresa un byte en paralelo al mcqy4 vía Puerto B. Se ocupan dos líneas de PTA para Ready y /Strobe. 1. Inicio: /STB=RDY=1 perif listo para recibir. 2. Perif: /STB=0 Dato listo. 3. mc: toma Dato RDY=0 4. mc listo próx DatoRDY=1 5. Perif: /STB=1 Ok, prepara próx dato. 6. Más datos ir a 2 Sistemas con Microcont. y Microproc. - UNT 9

10 Entrada por Polling Estructura de Datos Puntero a una tabla. Contador: n datos a tomar Aunque no haya interrupciones, es posible utilizar el detector de flanco negativo incorporado en el modulo IRQ (PTA2). Un flanco negativo se registra en bit IRQF1 del registro IRQ Status and Control Register Sistemas con Microcont. y Microproc. - UNT 10

11 Para Recordar Sistemas con Microcont. y Microproc. - UNT 11

12 Programa de Polling. ;Inicializar puertos MOV 2,INTSCR ;Inhabilitar los pedidos de IRQ. BSET 6,CONFIG2 ;Habilitar pin PTA2 como IRQ MOV #00,PTA ;Puerto A en 0 (READY = 0) MOV #01,DDRA ;Puerto A en entrada, salvo PTA0 que es una salida. MOV #00,DDRB ;Puerto B como entrada... ;Programa de polling, HX contiene puntero, Contador(en página 0) contiene n. Poll: MOV #01,PTA ;(READY = 1) Listo para recibir Lazo: BRCLR 3,INTSCR,lazo ;lazo hasta que se detecte un flanco negativo MOV #00,PTA ;(READY = 0) BSET 2,INTSCR MOV PTB,X+ DBNZ Contador, Poll ;ACK=1, borra flag detección flanco. Por qué no se pone ACK en 0 con BCLR luego de BSET? Sistemas con Microcont. y Microproc. - UNT 12

13 E/S por Interrupciones Usando interrupciones, es muy simple manejar una rutina de E/S asincrónica. El programa principal debe ser responsable de inicializar: Habilitar la interrupción Variables globales Puntero inicial a tabla. Dimensión de la tabla (Contador) RDY = 1, IM = 0. Atención: Fin de Bloque - no se pone Ready=1. Por qué? Sistemas con Microcont. y Microproc. - UNT 13

14 Rutina de Interrupción ;La inicialización es identica a la inicialización de polling... ; en el programa principal MOV #DirH, Puntero MOV #DirL, Puntero+1 MOV #n, Contador BCLR 1, INTSCR ;habilito las interrupciones de IRQ CLI ;habilita interrupciones a CPU08 BSET 0, PTA ;READY = 1... Int: MOV #00,PTA ;READY = 0 PSHH ;Termino de guardar el estado LDHX Puntero ;Cargo el puntero en H:X MOV PTB,X+ ;Guardo en memoria STHX Puntero DEC Contador BEQ IntFin ;llenó la tabla, no ponga RDY. MOV #01,PTA ;(READY = 1) IntFin: PULH ;Recupero el estado que no recupera RTI RTI Cómo se borra el pedido de interrupción? No con ACK=1? Qué pasa cuando la tabla se llena? Cómo vuelve READY a 1? Sistemas con Microcont. y Microproc. - UNT 14

15 Salida de Datos Tarea Para hacer en la Casa: 1. Programa de Salida por Polling. 2. Salida por Interrupciones. 1. Cómo se envía el primer dato? Tarea para Pensar 1. El diseño es simétrico con Entrada de datos? Si conecto dos MCUs, uno de salida, otro de entrada, funcionarán bien? Estado Inicial? Ninguno Listo. Para pasar a listo no hay flanco negativo, cómo se causa la primera interrupción? Hacen falta flancos negativos!! Sistemas con Microcont. y Microproc. - UNT 15

16 Conexión Asincrónica: 2 mc mc-r y mc-t (receptor y transmisor). /RDY en lugar de RDY. El diálogo es entre flancos negativos en /STB 1. Inicialización. /RDY-T=1, /RDY-R=1. (No están listos, PUD=1) mc-r controla que /RDY-T=1 y entonces pone flanco negativo en /RDY-R e interrumpe a mc-t. 2. mc-t se interrumple. Si no hay datos no hace nada. Pone un dato, /Rdy-T=0 luego /RDY-T=1 y retorna. 3. mc-r se interrumpe Pone /Rdy-R=1, toma un dato y pone /Rdy-R=0, goto 2. Qué pasa si T comienza después que R y no ve el flanco negativo en /RDY-R? Sistemas con Microcont. y Microproc. - UNT 16

17 Tasa Máxima de Transferencia Tasa máxima a la que el dispositivo puede transferir datos al MCU sin perder ninguno. El tiempo que tarda el MCU en procesar un dato es t= To + Td. Td (tiempo de dato) es el tiempo para pone un dato en Memoria (idealmente 1 M) To (tiempo de overhead) es el tiempo que se tarda en detectar la señal, saltar al código adecuado, manejar la linea READY, mantener los punteros, buscar instrucciones, etc. Sistemas con Microcont. y Microproc. - UNT 17

18 Tasa Máxima en Polling En caso de tasa máxima, el lazo de detección solo se ejecuta una vez por cada dato que llega, más rápido se pierden datos. Los tiempos son: Td= 1 M To= 25 M t= 26 M. Si f(bus)=3,2 MHz M=312 ns. Tasa máxima=123 KB/s Eficiencia=1/26 =3,75 % Trabajo útil / Trabajo Total. ;*********LAZO POLLING************ M Poll: MOV #01,PTA 4 Lazo: BRCLR 3,INTSCR,lazo 5 BSET 2,INTSCR 4 MOV #00,PTA 4 MOV PTB,X+ 4 DBNZ Contador, Poll 5 Sistemas con Microcont. y Microproc. - UNT 18

19 Tasa Máx. con Interrupciones Con IRQ=0, el CPU termina la instrucción actual, guarda el estado, y salta al lugar escrito en su vector de interrupción. Con tasa máx. termina una rutina de INT y comienza otra. Por qué? Respuesta a IRQ: 9 ciclos. Los tiempos son: Td= 1 M To= 46 M t= 47 M. A 3,2 MHzf(bus), Tasa máxima 68 KBps Eficiencia = 1/47 = 2,12% Casi la mitad que en Polling Solo en Tasa Máxima. Y en otros casos? M ;Instrucción anterior 0 ;cargar interrupción 9 Int: MOV #00,PTA 4 PSHH 2 LDHX Puntero 4 MOV PTB,X+ 4 STHX Puntero 4 DEC Contador 4 BEQ IntFin 3 MOV #01,PTA 4 IntFin: PULH 2 RTI 7 Sistemas con Microcont. y Microproc. - UNT 19

20 Resumen E/S de datos modo asincrónico. Polling. Interrupciones. Conexión de dos MCUs. Tasa Máxima. Eficiencia Baja. cómo mejorar? Sistemas con Microcont. y Microproc. - UNT 20

21 Administrativia 9 de diciembre parcial. Sistemas con Microcont. y Microproc. - UNT 21

22 Modo Bloque La Tasa Máx. de Transf. con Interrupciones es muy inferior que con Polling. Sin embargo, con interrupciones se permite al CPU realizar otras tareas, mientras que el polling (como lo hemos diseñado) no. Desde el punto de vista de la eficiencia, la verdadera diferencia está en el Tiempo de Overhead, mucho mayor. Para mejorar la eficiencia con dispositivos rápidos se ingresan bloques o ráfagas de n bytes con cada interrupción. El dispositivo pide INT y luego transmite el bloque completo. De esta manera, gran parte del overhead solo se ejecuta una vez cada n datos y mejora la eficiencia. Sistemas con Microcont. y Microproc. - UNT 22

23 Rutina de Interrupción Modo Bloque ;La inicialización es idéntica a la inicialización de polling... ; en el programa principal MOV #Dir, Puntero MOV #n, Cont BCLR 1,INTSCR ;habilita pedidos de IRQ CLI ;habilita interrupciones en CPU BSET 0,PTA ;pone RDY=1... Int: MOV #$00,PTA ;READY = 0 PSHH ;Guardar H LDHX Puntero ;Cargar puntero MOV PTB, X+ ;Mover primer dato y actualizar HX DEC cont ;actualizar cont para primer dato BEQ fini ;si no hay más termina redundante Lazo: MOV #01, PTA ;READY = 1 Stb: BRCLR 3,INTSCR,Stb ;lazo hasta próx. flanco negativo MOV #00,PTA ;(READY = 0) MOV PTB,X+ BSET 2,INTSCR ;Clear IRQF ACK=1 DBNZ Cont,Lazo ;Lazo del bloque sale con READY=0 Fini: PULH ;Recupero H RTI Por qué Clear IRQF? Sistemas con Microcont. y Microproc. - UNT 23

24 Tasa Máx en Modo Bloque No hay espera en STB. Los tiempos son: t = 45 M (fuera de lazo) t =26.n M (dentro del lazo) T(byte) = T(bloque)/n T(byte) = 26M + t /n Despreciamos t /n A 3,2 MHz(f bus ) Tasa Máx= 123 KB/seg Eficiencia = 3,85% Similar a Polling. ;Instrucción anterior 6 M ;cargar interrupción 9 M Int: MOV #$00,PTA 4 M PSHH 2 M LDHX Puntero 4 M MOV PTB, X+ 4 M DEC cont 4 M BEQFini 3 M Lazo: MOV #01, PTA 4 M Stb: BRCLR 3,INTSCR,StbStb 5 M MOV #00,PTA 4 M MOV PTB,X+ 4 M BSET 2,INTSCR 4 M DBNZ Cont,Lazo 5 M Fini: PULH 2 M RTI 7 M Sistemas con Microcont. y Microproc. - UNT 24

25 Limitaciones de E/S. Dispositivos Rápidos: Existe un límite superior de la tasa de envío de datos, a partir de allí se pierden datos. Dispositivos Lentos no tienen limitaciones? Provocan algún otro problema? Sistemas con Microcont. y Microproc. - UNT 25

26 Múltiples Dispositivos Lentos Sean n dispositivos que transfieren datos Todos a igual tasa: f disp Todos consumen igual tiempo de CPU, T disp =D (Identificación por Hw). Efecto en la performance con que corre el programa en el CPU? Existe un límite a la cantidad de dispositivos que puedo conectar? Sistemas con Microcont. y Microproc. - UNT 26

27 Performance con múltiples dispositivos El tiempo necesario para hacer correr un programa resulta 1. Sin interrupciones, T = T progprinc 2. Con interrupciones, T = T progprinc + n.t disp con T =1/f disp Performance de un programa inversamente proporcional a su tiempo de ejecución. De (1) y (2) resulta T/T = 1 - n.(t disp /T )= 1 - n.d.f disp La máxima cantidad de dispositivos a conectar sale igualando la performance a 0 T/T =0 :f disp = 1/n.D o T =n.d En este caso, el CPU no ejecuta el programa principal. Más dispositivos o más tiempo para cada uno implica que se perderán datos, con o sin buffer. Sistemas con Microcont. y Microproc. - UNT 27

28 Ej. Efecto de dispositivos lentos. Para un MPU a 3,2 MHz en el bus y 20 dispositivos a igual tasa =1 KB/s. f disp =1 KB/s, n = 20. T disp =47M = 14,68 ms T/T = 1 - n.f disp.t disp =0,70 (47 ya visto). La performance ahora es 30% menor! n max = 1/f disp.t disp = 68. Resolver en la casa con: 5 dispositivos a 1 KB/s. conjuntamente con15 dispositivos a 2KB/s. Sistemas con Microcont. y Microproc. - UNT 28

29 En caso de Polling Se realizan encuestas periódicas y queda tiempo para el programa. Se debe realizar encuestas al ritmo de ingreso de datos. La duración de cada encuesta depende de cuántos periféricos hay y cuantos datos se ingresan. Así se calcula el tiempo en que el CPU no ejecuta el programa principal. El resto del cálculo es similar que lo visto en Interrupciones. Sistemas con Microcont. y Microproc. - UNT 29

30 Limitaciones de E/S En conclusión: Hay un límite en velocidad de transferencia para dispositivos rápidos. Hay un límite en cantidad de dispositivos lentos que se pueden conectar. En ambos casos el Programa Principal corre más lento. CUIDADO CON COP! Nos interesa incrementar estos límites. Dos alternativas: Fuerza Bruta ($$$) comprar un MCU más rápido.existe un límite dado por la tecnología actual. Diseño (arquitectura). Sistemas con Microcont. y Microproc. - UNT 30

31 Problemas Métodos Anteriores El CPU es el cuello de botella:siempre habrá un programa principal que correr. Cada vez que ingresamos un dato, tenemos que ejecutar múltiples instrucciones. Cada una tiene su propio Fetch. Por tanto son muchos accesos a memoria En realidad la transferencia de un dato requiere, al mínimo un único acceso a M. Gran diferencia entre lo que tenemos (47M) y lo mínimo (1M). Sistemas con Microcont. y Microproc. - UNT 31

32 Problema: CPU es Intermediario CPU Dispositivo Memoria Las líneas denotan conexiones lógicas, no físicas. Sistemas con Microcont. y Microproc. - UNT 32

33 Solución: Acceso Directo a M: DMA Control DMA Dispositivo Memoria CPU Sistemas con Microcont. y Microproc. - UNT 33

34 Controlador DMA (DMAC) Un dispositivo controlador (DMA Control) realiza las siguientesfunciones: 1. El DMAC debe quitar al CPU el uso del Bus. 2. El DMAC conecta el puerto al bus y provee todas las señales y la dirección en donde se debe realizar la transferencia del dato en M. 3. Una vez finalizada la transferencia, DMA otorga al CPU el uso del bus. Para quitar el CPUs del bus, algunos mp tienen una entrada que se llama TSC (3 state control) que permite: Ponerlo en estado de alta impedancia Parar el Clock ( duerme ). Sistemas con Microcont. y Microproc. - UNT 34

35 Requerimientos Hw del DMAC Puntero incrementable a memoria. Contador de cantidad de bytes a transferir. Son los mismos requerimientos que usan las rutinas de E/S por Polling o por Interrupciones La naturaleza del problema es el mismo. Solo varía la forma de implementarlo. Sistemas con Microcont. y Microproc. - UNT 35

36 Ej. Implementación DMA Bloques C C Sistemas con Microcont. y Microproc. - UNT 36

37 DMA Modo Bloque - Secuencia 1. El CPU configura al DMA: cuántos datos va a tomar y dónde los va a poner (PUNT y N) 2. El periferico manda una señal al DMA: requiere enviar datos: DMA- REQ. 3. El DMA pone el CPU a dormir por medio de la señal TSC (control 3 state). 4. El CPU termina el ciclo M actual y se pone en 3 state, inactivo, informa esto mediante una señal TSC-ACK. 5. El DMA otorga al Periférico el uso del DB mediante una señal DMA- GRANT y maneja el AB y CB con cada byte que se transmite. 6. Cuando CONT=0, DMA quita DMA-GRANT. 7. El DMA despierta al CPU quitando TSC. 8. El DMA pide interrupción al CPU. 9. La rutina de interrupción de CPU pone FLAG=1 para indicar al Programa Principal que hay Datos a Procesar. Si se requieren más datos, informa al DMA en qué bloque de M debe poner los Datos del Periférico, mediante un puntero y un contador 10. Retorno a Programa Principal. Sistemas con Microcont. y Microproc. - UNT 37

38 DMA Modo Byte Secuencia. 1. Programa Principal Inicializa DMA cargando Contador y Puntero. 2. Periférico Pide DMA-REQ para enviar un byte. 3. Controlador DMA envía TSC al CPU. 4. CPU termina ciclo M actual, abandona el bus, queda inactivo, envía TSC-ACK. 5. DMA Control permite al Periférico enviar un único Dato y maneja AB y CB. Poniendo y quitando DMA-Grant. Actualiza su contador y Puntero. 6. DMA Control quita TSC del CPU. 7. CPU toma el bus y continúa, quita TSC-ACK. 8. Si Contador=0 en DMA Control Pide INT al CPU. CPU ejecuta Rutina Interrupción que envía nuevos valores de Contador y Puntero al DMA-Control y FLAG=1 avisa Nuevo Block. Sistemas con Microcont. y Microproc. - UNT 38

39 Límites DMA Modo Byte. CPU requiere 1M para soltar el bus. 1M para enviar el Byte a M y actualizar puntero y Contador (Hw). 1M para reactivar el CPU. Cada transferencia dura 3M (Vs. 26M o 47M). Se dice que con cada transferencia DMA roba ciclos de bus al CPU. Este modo se llama Cycle Stealing o Robo de Ciclo. Calcular cantidad máxima de dispositivos que envían datos a 1 KB/seg c/u. (fbus=3,2mhz) Calcular cuánto más lento % corre el CPU con 20 dispositivos. Sistemas con Microcont. y Microproc. - UNT 39

40 DMA. Efecto dispositivos lentos. Para un MPU a 3,2 MHz de bus y 20 dispositivos a igual tasa =1KB/s. f disp =1 KB/s, n = 20. T disp =3M = 0,937 ms (3 ya visto). T/T = 1 - n.f disp.t disp = 0, ,13% n max = 1/f disp.t disp = 1067 Valores E/S por Interrupción: 70% - n max = 68 Sistemas con Microcont. y Microproc. - UNT 40

41 Límites DMA Modo Bloque To es el tiempo para poner a dormir el CPU y levantarlo: 2M. Despreciable con n grande. Para cada Byte se requiere 1M!! Es el límite dado por fbus. Imposible más rápido con ese bus. Tasa máxima a 3,2 MHZ = 3,2 MB/seg. (Vs 132 KB/s modo bloques). Esta transmisión es sincrónica Trampa? Sistemas con Microcont. y Microproc. - UNT 41

42 Aclaración Interrupciones El pedido de interrupción se limpia automáticamente. Con la respuesta a Interrupción. NO SOLO EN MODULO IRQ. En todo otro módulo en que se pueda, por ejemplo Módulo KBI (Interrupciones de teclado). Módulo ADC (conversor AD) La experiencia a veces nos confunde. Cuando se cambia de un MCU a otro. Los técnicos son muy seguros siempre hacen lo mismo. Los ingenieros DEBEN LEER Y DUDAR. Sistemas con Microcont. y Microproc. - UNT 42

43 T. Máx en M. Bloque Sincrónica - INT. No hay Ready. No hay espera en STB. Los tiempos son: T =18.n M (dentro del lazo) Tb= 18M + T /n Despreciamos T /n A 3,2 MHz Tasa Máx= 178 KB/seg Eficiencia = 4,5% (1M útil) Nada que ver con DMA Eficiencia DMA Bloque? DMA Byte? ;Instrucción anterior 6 T ;cargar interrupción 9 T Int: PSHH 2 T LDHX Puntero 4 T MOV PTB,X+ 4 T DEC Contador 4 T Stb: BRCLR 3,INTSCR,Stb 5 T MOV PTB,X+ 4 T BSET 2,INTSCR 4 T DBNZ Contador, Stb 5 T PULH 2 T RTI 7 T Sistemas con Microcont. y Microproc. - UNT 43

44 Concurso de Cerveza Pido 10 vasos de cerveza. 1. En 10 el mozo limpia mi mesa y las trae una por una. 2. En 10 minutos me tomo las cervezas. No puedo tomar mientras el mozo está poniendo cervezas, porque me choco.. 3. Pido otros10 vasos, volver a 1. Tasa = Medio vaso por minuto Quiero duplicar mi tasa de consumo a un vaso por minuto. Imposible beber más de 1vaso/min. cómo hago para duplicar? Sistemas con Microcont. y Microproc. - UNT 44

45 Swinging Tables (intercambiables) 1. Pido 10 cervezas. Le digo al mozo que voy a tomar en dos mesas, que cuando haya una mesa vacía la llene con cerveza. 2. En 10 trae las cervezas a mi mesa. 3. Comienzo a tomar cerveza. Al mismo tiempo el mozo va llenando la otra mesa. 4. En 10 cambio de mesa y el camarero también y así sucesivamente. Tasa de consumo = 1 cerveza por minuto, el doble! Si no está exactamente sincronizado uno esperará al otro, y baja la tasa. Si el mozo se apura un poco, queda con un vaso en la mano. PENDIENTE. Sistemas con Microcont. y Microproc. - UNT 45

46 Entrada por INT con Swinging Blocks. 2 Bloques en M para datos. Al Principio Vacíos Se llena el primero por Interrupciones. Programa Principal procesa un bloque Se va llenando el otro por interrupciones. Programa Principal e Interrupciones se van intercambiando los bloques (de allí el nombre). Se gana cuando el dispositivo es lento. Modo Byte. Y más aún cuando los dos procesos tienen duraciones parecidas. Trabajo Concurrente. Se podrá trabajar en Paralelo? Se podrá realizar DMA con Swinging Blocks? Sistemas con Microcont. y Microproc. - UNT 46

47 Swinging Blocks con E/S por INT Estructura de Datos: 2 tablas de n bytes, una a partir de P0 y otra desde P1. Punteros a cada bloque: PUNT0, PUNT1. n indica cantidad de bytes por bloque. Contadores para cada bloque: CONT0, CONT1. Bytes que falta poner en cada bloque. NBL indicador bloque a llenar. 0 bloque0, 1 bloque1. PEND Avisa que hay una rutina de interrupción pendiente. Inicialización Programa Principal. Configurar: PTA2 como IRQ en Reg. Config. IRQ por flanco, habilitada. CLI en CPU habilita interrupciones en CPU. Cont1=n, Cont0=n (los dos bloques están vacíos). NBL=0 bloque0 a llenar. RDY=1 está listo para recibir datos. Sistemas con Microcont. y Microproc. - UNT 47

48 Swinging Blocks con E/S por INT P0 EQU $90 ;P0 y P1 a bloques en Pág. 0. P1 EQU $B0 n EQU 20 ;indica cantidad de bytes por bloque. ORG $0080 PUNT0 DS 2 ;Punteros a cada bloque PUNT1 DS 2 NBL DS 1 ;indicador bloque a llenar. 0 bloque0, 1 bloque1. CONT0 DS 1 ;Contadores para cada bloque CONT1 DS 1 PEND DS 1 ORG $FF00 Init: MOV #0,INTSCR ;Habilitar los pedidos de IRQ. Modo 0 -Flancos BSET 6,CONFIG2 ;Habilitar pin PTA2 como IRQ CLR DDRB ;configurar puerto B como entrada. CLR PUNT0 MOV #P0,PUNT0+1 ;apuntar los punteros CLR PUNT1 MOV #P1,PUNT1+1 MOV #n,cont0 ;Inicializar los contadores MOV #n,cont1 MOV #00, NBL ;NBL=0 bloque0 a llenar. MOV #00, PTA ;READY = 0 BSET 0,DDRA ;configurar PTA0 como salida. MOV #01, PTA ;READY = 1 (que Perif. Vea el flanco). CLI Sistemas con Microcont. y Microproc. - UNT 48

49 Rutina de Interrupción 1. RUTINT: PEND=1. 2. Guardar H. 3. Case NBL 1. 0 Si CONT0=0 entonces recuperar H y Retornar. (bloque lleno, no procesado todavía quedó PEND=1). Else HX=PUNT0, CONT=CONT Si CONT1=0 entonces recuperar H y Retornar. Else HX=PUNT1, CONT=CONT1 3. Otro ejecutar rutina de ERROR. 4. Llamar rutina Handshake(CONT, HX) Similar a Rutina para un byte por Handshaking por INT Actualizar CONTi y PUNTi. 5. Si CONT=0 entonces NBL=(NBL XOR 1). 6. PEND=0 (rutint terminó adecuadamente). 7. Recuperar H. 8. RTI Sistemas con Microcont. y Microproc. - UNT 49

50 Rutina de Interrupción RUTINT: MOV #1,PEND ;hay una interrupción pendiente PSHH BCLR 0,PTA ;pone RDY=0 LDA NBL BNE con1 ;si es bloque1 ir a con1. LDA CONT0 BEQ fini ;testear si bloque está lleno. LDHX PUNT0 ;se puede trabajar en el bloque 0 MOV CONT0,CONT JSR HANDSHAKE MOV CONT,CONT0 STHX PUNT0 BRA sigue con1: CMP #1 ;uso el bloque 1 BNE error ;si no, error LDA CONT1 BEQ fini LDHX PUNT1 MOV CONT1,CONT JSR HANDSHAKE ;maneja RDY por supuesto. MOV CONT, CONT1 STHX PUNT1 sigue: LDA CONT BNEQ prefini ;Si cont=0, cambiar de bloque LDA NBL EOR #01 STA NBL prefini: CLR PEND ;rutint terminó adecuadamente fini: PULH RTI Sistemas con Microcont. y Microproc. - UNT 50

51 Programa Principal 1. Esperar hasta que CONT0=0 2. Procesar Bloque0. 3. CONT0=n 4. SWI. (si INT no terminó la termina). 5. Esperar hasta que CONT1=0 6. Procesar Bloque1. 7. CONT1=n 8. SWI. 9. Vaya a 1. princ0: princ1: LDA CONT0 BNE princ0 JSR proc0 ;subr p/ proc. block0 MOV #n,cont0 ;reiniciar contador SWI LDA CONT1 BNE princ1 JSR proc1 ;subr p/proc bloque 1 MOV #n,cont1 ;reiniciar contador SWI BRA princ0 Sistemas con Microcont. y Microproc. - UNT 51

52 Por qué SWI? Hay un dato pendiente de ser tomado. Habría que lanzar de nuevo esa rutina de Interrupción. IRQ no llegará de nuevo porque no hubo cambio en RDY. La única forma de continuar es mediante esta SWI que puede llamar a RTI con BRA. 1. Si Pend=1 branch to Rutint. 2. Si no hay otra causa, RTI. Sistemas con Microcont. y Microproc. - UNT 52

53 Conclusiones del Ejemplo. Programa Principal muy sencillo. Porque emplea servicios del sistema. Servicios totalmente transparentes. Son dos hilos (threads). Hilo, secuencia de instrucciones que se ejecuta independientemente (pero comparten datos). Procesos, secuencias de instrucciones totalmente independientes. Uno por delante: procesar (foreground). Rutina Interrupción en Background. Alternan entre sí concurrentemente. Los hilos se intercomunican. Mediante variables PEND, CONT0 y CONT1. Más de esto en Sistemas Operativos. Sistemas con Microcont. y Microproc. - UNT 53

54 Mayor Transparencia: Ideas. Evitar SWI P. Principal transparente 100%. Cómo evitar SWI? En lugar de PEND=1, RUTINT llama a Start-Timer. Al cabo de un tiempo Timer pide INT. Rutina INT-TIM. Si bloque está vacío BRA RUTINT Else JSR Start-Timer: RTI. Es otro ejemplo de Watchdog. Cuánto tiempo debería esperar Timer? Sistemas con Microcont. y Microproc. - UNT 54

55 Para qué Swinging Buffers? Los dos hilos pueden trabajar concurrentemente. Sino uno debe quedar esperando hasta que el otro termine. Se ve cómo con dos hilos concurrentes mejoramos la eficiencia del sistema. También con varios procesos e hilos (SO). Razón principal de Multitasking - SO. También vimos varios hilos concurrentes. Fácil de ver con dos. Con tres es más difícil (Timer). Sincronización de hilos y procesos tema SO. Sistemas con Microcont. y Microproc. - UNT 55

56 Ejemplo Numérico Ingresan 200 bytes a razón de 1000 B/seg, por Interrupciones, 40 ms c/u El programa debe procesar 200 bytes, y requiere 0,2 seg. Cuánto demora con un buffer? a. T del dispositivo = 1/1000 = 1 ms/byte b. Tiempo de la interrupción: 40 ms c. Conclusión, los datos ingresan a 1KB/seg. 200 bytes demoran 200 ms. d. Demora: 200 ms para ingreso de datos, 200 ms para procesar, total = 400 ms/bloque. Sistemas con Microcont. y Microproc. - UNT 56

57 Ejemplo Numérico Cuánto demora con dos buffers? a. Ingreso de Datos = 200 ms. b. Tiempo de procesamiento = 200 ms. c. Si es concurrente, agregar tiempo de interrupciones = 40 ms x 200 = 8000 = 8 ms. d. Total procesamiento 208 ms. e. Total Ingreso = 200 ms. f. Tiempo = el mayor = 208 ms. Mejora performance = 400/208 = 1,92 equivale a 92%. Sistemas con Microcont. y Microproc. - UNT 57

Puertos de Entrada/Salida

Puertos de Entrada/Salida Dispositivos Entrada / Salida en Flía CPU08 Sistemas con Microcontroladores y Microprocesadores http://www.herrera.unt.edu.ar/procesadores Puertos de Entrada/Salida El mc posee 13 líneas de entrada/salida

Más detalles

Interrupciones. Sistemas con Microcontroladores y Microprocesadores.

Interrupciones. Sistemas con Microcontroladores y Microprocesadores. Interrupciones Sistemas con Microcontroladores y Microprocesadores http://www.herrera.unt.edu.ar/procesadores Interrupciones en la vida real 1. Un estudiante está estudiando (Ejecuta una tarea) 2. Le golpean

Más detalles

Mapas de Memoria y E/S

Mapas de Memoria y E/S Mapas de Memoria y E/S Sistemas con Microprocesadores http://www.herrera.unt.edu.ar/procesadores Conexiones internas del CPU08 Dentro del mc el CPU08 se vincula con memoria y con los dispositivos de E/S

Más detalles

Arquitectura de Computadoras 2011

Arquitectura de Computadoras 2011 Arquitectura de Computadoras Unidad 7: Acceso Directo a Memoria (DMA)U Acceso directo a memoria (DMA) Las operaciones de E/S mediante interrupciones son más efectivas que las programadas. Pero ambas necesitan

Más detalles

Práctica 9. Organización del Computador 1 2do. Cuatrimestre de 2005

Práctica 9. Organización del Computador 1 2do. Cuatrimestre de 2005 Práctica 9 Organización del Computador 1 2do. Cuatrimestre de 2005 Aclaración: Tiempo bus es el tiempo de bus requerido para transferir un buer (de un dispositivo) desde o hacia memoria principal según

Más detalles

Arquitectura de Computadores

Arquitectura de Computadores Curso 2006/07 Arquitectura de Computadores 1. Introducción 2. La CPU 3. Lenguaje Máquina 4. La Memoria 5. Sistema de Entrada/Salida Informática Aplicada Arquitectura de Computadores 1 Organización E/S

Más detalles

Tema 7. Entrada / Salida

Tema 7. Entrada / Salida Tema 7 Entrada / Salida Problemática Entrada/Salida Elementos claves en un computador: Procesador, memoria y módulos de E/S Cada módulo de E/S se conecta al bus del sistema y controla a uno o a más periféricos

Más detalles

Curso sobre Microcontroladores Familia HC9S08 de Freescale

Curso sobre Microcontroladores Familia HC9S08 de Freescale Curso sobre Microcontroladores Familia HC9S08 de Freescale Por Ing. Daniel Di Lella EduDevices www.edudevices.com.ar e-mail: info@edudevices.com.ar Responsable Area Educación ELKO / ARROW www.elkonet.com

Más detalles

Introducción a la Computación. Capítulo 7 Entrada/Salida

Introducción a la Computación. Capítulo 7 Entrada/Salida Introducción a la Computación Capítulo 7 Entrada/Salida Problemas Entrada/Salida Existe una amplia variedad periféricos Se les entrega distintas cantidades de datos Funcionan a distintas velocidades Tienen

Más detalles

Figura 2. Formato de un dato serie síncrono.

Figura 2. Formato de un dato serie síncrono. ELECTRÓNICA DIGITAL II 1 COMUNICACIÓN SERIE EN EL 8051 En la comunicación serie los datos se transfieren bit por bit. Una interfaz en el microcontrolador los transfiere el dato en paralelo del CPU a serie

Más detalles

Sistema de Entrada / Salida Múltiples Entradas Laboratorio de Microprocesadores

Sistema de Entrada / Salida Múltiples Entradas Laboratorio de Microprocesadores Sistema de Entrada / Salida Múltiples Entradas Laboratorio de Microprocesadores http://www.herrera.unt.edu.ar/labmicro Temario n Sistema de Múltiples E/S Teclas y Llaves para entradas. Indicadores Leds

Más detalles

ARQUITECTURA DE LOS SISTEMAS BASADOS EN MICROPROCESADOR

ARQUITECTURA DE LOS SISTEMAS BASADOS EN MICROPROCESADOR ARQUITECTURA DE LOS SISTEMAS BASADOS EN MICROPROCESADOR Historia Bloques funcionales Dimensionamiento Estructura CPU Concepto de programa Interrupciones Buses Entrada / Salida Ejemplo de arquitectura:

Más detalles

MICROPROCESADORES I ELECTRONICA DIGITAL III INTERFASE PROGRAMABLE A PERIFERICOS PPI 8255

MICROPROCESADORES I ELECTRONICA DIGITAL III INTERFASE PROGRAMABLE A PERIFERICOS PPI 8255 MICROPROCESADORES I ELECTRONICA DIGITAL III INTERFASE PROGRAMABLE A PERIFERICOS PPI 8255 INTRODUCCIÓN Este integrado de la firma INTEL, conocido como PPI 8255 (Programmable Peripherical Interfase) realizado

Más detalles

MICROPROCESADORES. Ejercicio de evaluación continua: E/S del MC68000

MICROPROCESADORES. Ejercicio de evaluación continua: E/S del MC68000 MICROPROCESADORES Ejercicio de evaluación continua: E/S del MC68000 Un determinado sistema central dispone de un enlace vía radio con diferentes estaciones remotas con los que intercambia cierta información.

Más detalles

Bus de datos Bus de direcciones Pocos bits, los suficientes para direccionar registros internos (ej: A0 y A1)

Bus de datos Bus de direcciones Pocos bits, los suficientes para direccionar registros internos (ej: A0 y A1) 16-1 Muchas veces los fabricantes de µps también ofrecen periféricos con aplicaciones establecidas que facilitan el hardware del sistema. En general son programables, lo que les permite diferentes modos

Más detalles

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

Tema 4: SISTEMAS DE ENTRADA/SALIDA. Un computador no puede estar formado sólo por la CPU y la memoria. Tema 4: SISTEMAS DE ENTRADA/SALIDA ÍNDICE 1. Introducción. 2. Módulos de Entrada/Salida: comunicación CPU - Periféricos. 3. Mapa de Entrada/Salida: común y separada. 4. Introducción a los métodos de programación

Más detalles

Clase Práctica: Entrada Salida

Clase Práctica: Entrada Salida Clase Práctica: Entrada Salida Docente: Javier R. de Acha Campos Direct Memory Address Ejercicio 1 Sea una computadora capaz de ejecutar 1 millón de instrucciónes por segundo (MIPS). Se desea conectar

Más detalles

Reset e interrupciones

Reset e interrupciones Reset e interrupciones M.C. Jorge Eduardo Ibarra Esquer Resets e interrupciones Son respuestas a eventos que se presentan durante la ejecución normal de un programa Un reset regresa el microcontrolador

Más detalles

Arquitectura de Computadoras 2011

Arquitectura de Computadoras 2011 Arquitectura de Computadoras Unidad 7: Entrada/Salida Arquitectura de Computadoras Aspectos claves La arquitectura de E/S es su interfaz con el exterior Se diseña de manera sistemática para controlar las

Más detalles

ENTRADA-SALIDA. 2. Dispositivos de Carácter: Envía o recibe un flujo de caracteres No es direccionable, no tiene operación de búsqueda

ENTRADA-SALIDA. 2. Dispositivos de Carácter: Envía o recibe un flujo de caracteres No es direccionable, no tiene operación de búsqueda Tipos de Dispositivos ENTRADA-SALIDA 1. Dispositivos de Bloque: Almacena información en bloques de tamaño fijo (512b hasta 32Kb) Se puede leer o escribir un bloque en forma independiente 2. Dispositivos

Más detalles

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

SUBSISTEMA DE ENTRADA-SALIDA. Arquitectura de Computadores I 4º tema SUBSISTEMA DE ENTRADA-SALIDA Arquitectura de Computadores I 4º tema 1 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.

Más detalles

Estructura de Computadores. Contenido. Sistema de E/S. 7.- E/S y dispositivos periféricos

Estructura de Computadores. Contenido. Sistema de E/S. 7.- E/S y dispositivos periféricos Estructura de Computadores 7.- E/S y dispositivos periféricos Contenido Clasificación y tipos de periféricos Módulos de E/S. Instrucciones de E/S. Técnicas de E/S. E/S programada. E/S mediante interrupciones.

Más detalles

Estructura de Computadores

Estructura de Computadores Estructura de Computadores Curso 2017-2018 Sistema de Entrada/Salida E/S por DMA Rendimiento de la E/S Supongamos una CPU con: f=200 MHz T = 5ns CPI = 2 Una instrucción tarda en promedio: 2 5ns = 10ns

Más detalles

Entradas y Salidas. Componentes básicos de una PC

Entradas y Salidas. Componentes básicos de una PC Entradas y Salidas a) Con periféricos de mediana velocidad conviene trabajar por FLAG (control por programa). b) Con periféricos rápidos utilizando el esquema de la línea READY. c) Con periféricos de Actuación

Más detalles

Capítulo 2 LOS MICROCONTROLADORES MC68H(R)C908JL3/JK3/JK1. Capítulo 3 INTRODUCCIÓN A LA PROGRAMACIÓN DE LOS MICROCONTROLADORES MOTOROLA- FREESCALE

Capítulo 2 LOS MICROCONTROLADORES MC68H(R)C908JL3/JK3/JK1. Capítulo 3 INTRODUCCIÓN A LA PROGRAMACIÓN DE LOS MICROCONTROLADORES MOTOROLA- FREESCALE CONTENIDO Mensaje del editor...iii Web de Apoyo...iv Agradecimientos...vi El autor...vii Contenido...ix Prólogo de Freescale...xv Introducción... xvii Capítulo 1 INTRODUCCIÓN A LOS MICROCONTROLADORES MOTOROLA-FREESCALE

Más detalles

Lógica cableada: Lógica programada:

Lógica cableada: Lógica programada: 1-1 Lógica cableada: Circuitos vistos en Diseño Lógico (Combinatoria, Modo reloj, RTL, ) Función fija determinada en el momento del diseño por las conexiones físicas entre los componentes del circuito

Más detalles

Arquitectura de Computadoras 2011

Arquitectura de Computadoras 2011 07/06/ Arquitectura de Computadoras Entrada/Salida Mediante Interrupciones E/S mediante interrupciones La CPU no tiene que esperar la finalización de la tarea de E/S, puede seguir procesando. No se repite

Más detalles

Arquitectura de Computadoras. Clase 3 Entrada/Salida

Arquitectura de Computadoras. Clase 3 Entrada/Salida Arquitectura de Computadoras Clase 3 Entrada/Salida Problemas de Entrada/Salida Gran variedad de periféricos con varios métodos de operación. Trasmisión de diferentes cantidades de datos. A diferentes

Más detalles

Velocidades Típicas de transferencia en Dispositivos I/O

Velocidades Típicas de transferencia en Dispositivos I/O Entradas Salidas Velocidades Típicas de transferencia en Dispositivos I/O Entradas/Salidas: Problemas Amplia variedad de periféricos Entrega de diferentes cantidades de datos Diferentes velocidades Variedad

Más detalles

Buses. Organización del Computador I. David Alejandro González Márquez

Buses. Organización del Computador I. David Alejandro González Márquez Buses Organización del Computador I David Alejandro González Márquez Departamento de Computación Facultad de Ciencias Exactas y Naturales Universidad de Buenos Aires 27.02.2015 Agenda Introducción Tipos

Más detalles

Entrada/Salida. Mix de clases: Patricia Borensztejn + Diego Fernández Slezak

Entrada/Salida. Mix de clases: Patricia Borensztejn + Diego Fernández Slezak Entrada/Salida Mix de clases: Patricia Borensztejn + Diego Fernández Slezak I/O: Conexión al mundo exterior Vimos Cómputo con los registros Cargar datos en los registros desde la memoria Guardar datos

Más detalles

Arquitectura del PLC. Dpto. Electrónica, Automática e Informática Industrial)

Arquitectura del PLC. Dpto. Electrónica, Automática e Informática Industrial) Arquitectura del PLC Dpto. Electrónica, Automática e Informática Industrial) www.elai.upm.es Introducción (I) El PLC recibe, en tiempo real, la información de los sensores conectados al proceso y ejecuta

Más detalles

(5) Unidad 5. Entrada / Salida SISTEMAS BASADOS EN MICROPROCESADORES. Grado en Ingeniería Informática EPS - UAM

(5) Unidad 5. Entrada / Salida SISTEMAS BASADOS EN MICROPROCESADORES. Grado en Ingeniería Informática EPS - UAM Unidad 5 Entrada / Salida SISTEMAS BASADOS EN MICROPROCESADORES Grado en Ingeniería Informática EPS - UAM Índice 5. Entrada / Salida. 5.1. Técnicas de programación de entradas y salidas (E/S). 5.2. Sondeo.

Más detalles

1) Se dispone de un computador de 32 bits con la siguiente estructura:

1) Se dispone de un computador de 32 bits con la siguiente estructura: 1) Se dispone de un computador de 32 bits con la siguiente estructura: MP CPU CACHE DISCO1 DISCO2... DISCO n El sistema de memoria está formado por una Memoria principal cuyo tiempo de acceso es de 550nseg

Más detalles

Estructura y Tecnología de Computadores. Módulo E. El subsistema de E/S. Tema 9. Acceso directo a memoria (DMA) y procesadores de E/S

Estructura y Tecnología de Computadores. Módulo E. El subsistema de E/S. Tema 9. Acceso directo a memoria (DMA) y procesadores de E/S 1 Estructura y Tecnología de Computadores Módulo E. El subsistema de Tema 9. Acceso directo a memoria (DMA) y procesadores de José Manuel Mendías Cuadros Dpto.. Arquitectura de Computadores y Automática

Más detalles

ORGANIZACIÓN DEL MICROCOMPUTADOR

ORGANIZACIÓN DEL MICROCOMPUTADOR ORGANIZACIÓN DEL MICROCOMPUTADOR MICROPROCESADOR RAM ROM UNIDADES DE INTERCONEXIÓN BUS DE DIRECCIONES LINEAS DE CONTROL BUS I/O BUS DE DATOS ORGANIZACIÓN DEL MICROPROCESADOR INSTRUCCIONES DE UN MICROPROCESADOR

Más detalles

GESTION DE ENTRADA Y SALIDA

GESTION DE ENTRADA Y SALIDA Dispositivos de salida (impresora, monitor,...) Unidad principal (UCP, registros, memoria RAM, entrada/salida ( discos internos, red,...)) Dispositivos de entrada (teclado, ratón, lápiz óptico,...) Dispositivos

Más detalles

Tema 6. El sistema de entrada-salida

Tema 6. El sistema de entrada-salida Enunciados de problemas Tema 6. El sistema de entrada-salida Arquitectura de Computadores Curso 2009-2010 Tema 6: Hoja: 2 / 21 Tema 6: Hoja: 3 / 21 Base teórica Al diseñar un computador, uno de los puntos

Más detalles

Set de Instrucciones del CPU08 Sistemas con Microprocesadores y Microcontroladores

Set de Instrucciones del CPU08 Sistemas con Microprocesadores y Microcontroladores Set de Instrucciones del CPU08 Sistemas con Microprocesadores y Microcontroladores http://www.herrera.unt.edu.ar/procesadores Temas a Tratar Tipos de Instrucciones. Movimiento de Datos Procesamiento Aritméticas

Más detalles

APUNTE DEL 8155 ELECTRÓNICA DIGITAL III

APUNTE DEL 8155 ELECTRÓNICA DIGITAL III APUNTE DEL 8155 ELECTRÓNICA DIGITAL III Revisión 1.1 Marzo, 2011 Interfaz a periférico 8155 Descripción general El chip 8155 es un dispositivo introducido por Intel en 1977. Contiene memoria RAM (SRAM)

Más detalles

NT0106. Notas Técnicas de Uso y Aplicación 2.6 CAPTURA DE ENTRADA INPUT CAPTURE CAPTURA DE EVENTOS EXTERNOS MEDICIÓN DEL PERÍODO. 2.6.

NT0106. Notas Técnicas de Uso y Aplicación 2.6 CAPTURA DE ENTRADA INPUT CAPTURE CAPTURA DE EVENTOS EXTERNOS MEDICIÓN DEL PERÍODO. 2.6. Notas Técnicas de Uso y Aplicación 2.6 CAPTURA DE ENTRADA INPUT CAPTURE CAPTURA DE EVENTOS EXTERNOS MEDICIÓN DEL PERÍODO Preparado por: Rangel Alvarado Estudiante Graduando de Lic. en Ing. Electromecánica

Más detalles

Arquitectura de computadoras

Arquitectura de computadoras Arquitectura de computadoras Técnicas Digitales III Ing. Gustavo Nudelman 2013 Que entendemos por arquitectura Un sistema con una CPU, memoria y dispositivos de entrada y salida puede considerarse un sistema

Más detalles

Instituto Tecnológico de Morelia

Instituto Tecnológico de Morelia Instituto Tecnológico de Morelia Arquitectura de Computadoras Unidad 1b Programa 1.2.2 Memoria. 1.2.2.1 Conceptos de manejo de memoria. 1.2.2.2 Memoria principal semiconductora. 1.2.2.3 Memoria cache.

Más detalles

Arquitectura de Computadores

Arquitectura de Computadores Arquitectura de Computadores 1. Introducción 2. La CPU 3. Lenguaje Máquina 4. La Memoria 5. Sistemas de Entrada/Salida 6. Segmentación (Pipeline) 7. Memoria Caché 8. Arquitecturas RISC Arquitectura de

Más detalles

Buceando en el HC908...

Buceando en el HC908... COMENTARIO TÉCNICO Buceando en el HC908... Por Ing. Daniel Di Lella Dedicated Field Application Engineer www.edudevices.com.ar dilella@arnet.com.ar Guía de Conversión de los MC908QT/QYx a MC908QTxA/QYxA.

Más detalles

GENERACIÓN DE SUBRUTINA DE RETARDO DE

GENERACIÓN DE SUBRUTINA DE RETARDO DE Notas Técnicas de Uso y Aplicación 1.9 GENERACIÓN DE SUBRUTINA DE RETARDO DE SOFTWARE CREACIÓN DE LA RUTINA UTILITARIA DELAY Preparado por: Rangel Alvarado Estudiante Graduando de Lic. en Ing. Electromecánica

Más detalles

Memoria y Entrada/Salida Tecnología Organización - Expansión

Memoria y Entrada/Salida Tecnología Organización - Expansión Universidad Simón Bolívar Departamento de Electrónica y Circuitos EC2721 Arquitectura del Computador I Prof. Osberth De Castro Clase 05 Memoria y Entrada/Salida Tecnología Organización - Expansión La memoria

Más detalles

MICROCONTROLADOR PIC DE MICROCHIP

MICROCONTROLADOR PIC DE MICROCHIP MICROCONTROLADOR PIC DE MICROCHIP PIC16F877-28-PIN 8-BIT CMOS FLASH MICROCONTROLLER PIC16F877: ESTRUCTURA INTERNA Bus de Datos Bus de Datos (programa) Registro de trabajo (acumulador) Conversor A/D Contador/Temporizador

Más detalles

EVOLUCIÓN HISTÓRICA DE LOS µp

EVOLUCIÓN HISTÓRICA DE LOS µp EVOLUCIÓN HISTÓRICA DE LOS µp El primer procesador fue inventado por los Babilonios en el año 500 ac En 1642 se perfeccionó la primera calculadora por Blas Pascal A mediados del siglo pasado se inventaron

Más detalles

Control automático del nivel de luz.

Control automático del nivel de luz. Control automático del nivel de luz. Dose, Aldo Franke, Favián Lima, Carlos aldo_dose@yahoo.com.ar favian.franke@gmail.com carlos_ariel20081@hotmail.com Eje temático: 4. Aplicaciones en dispositivos hogareños

Más detalles

Organización del Computador. Entradas / Salidas

Organización del Computador. Entradas / Salidas Organización del Computador Entradas / Salidas Modelo de I/O Mapeo de I/O l En el espacio de memoria: se accede a través de instrucciones de lectura y escritura en memoria. l En un espacio de I/O: se accede

Más detalles

Sistema Operativo. Repaso de Estructura de Computadores. Componentes Hardware. Elementos Básicos

Sistema Operativo. Repaso de Estructura de Computadores. Componentes Hardware. Elementos Básicos Sistema Operativo Repaso de Estructura de Computadores Capítulo 1 Explota los recursos hardware de uno o más procesadores Proporciona un conjunto de servicios a los usuarios del sistema Gestiona la memoria

Más detalles

Unidad 1: Conceptos generales de Sistemas Operativos.

Unidad 1: Conceptos generales de Sistemas Operativos. Unidad 1: Conceptos generales de Sistemas Operativos. Tema 2: Estructura de los stmas de computación. 2.1 Funcionamiento de los sistemas de computación. 2.2 Ejec. de instrucciones e interrupciones y estructura

Más detalles

NT0112. Notas Técnicas de Uso y Aplicación 2.12 MÓDULO DE AUTORECUPERACIÓN AWU PARA MICROCONTROLADORES DE LA SERIE Q

NT0112. Notas Técnicas de Uso y Aplicación 2.12 MÓDULO DE AUTORECUPERACIÓN AWU PARA MICROCONTROLADORES DE LA SERIE Q Notas Técnicas de Uso y Aplicación 2.12 MÓDULO DE AUTORECUPERACIÓN AWU PARA MICROCONTROLADORES DE LA SERIE Q Preparado por: Rangel Alvarado Estudiante Graduando de Lic. en Ing. Electromecánica Universidad

Más detalles

6. Entrada y Salida Explicación de la interfaz entre el computador y el mundo exterior.

6. Entrada y Salida Explicación de la interfaz entre el computador y el mundo exterior. 6. Entrada y Salida Explicación de la interfaz entre el computador y el mundo exterior. 6.1. El subsistema de E/S Qué es E/S en un sistema computador? Aspectos en el diseño del subsistema de E/S: localización

Más detalles

Necesidad de Protección

Necesidad de Protección Necesidad de Protección Por qué necesitamos protección? Para mejorar la utilización del sistema, el Sistema de Operación empezó a compartir recursos del sistema entre varios programas de manera simultánea.

Más detalles

Práctica 7 - Buses. Organización del Computador 1 1er. Cuatrimestre 2006

Práctica 7 - Buses. Organización del Computador 1 1er. Cuatrimestre 2006 Práctica 7 - Buses Organización del Computador 1 1er. Cuatrimestre 2006 Sincronización y Control Ejercicio 1 En una fábrica se utiliza para alimentar una máquina un tubo de dos entradas y una salida. Las

Más detalles

3 Interfaz PC DSP. 3.1 Introducción a las comunicaciones serie. 3 Interfaz PC DSP

3 Interfaz PC DSP. 3.1 Introducción a las comunicaciones serie. 3 Interfaz PC DSP 3 Interfaz PC DSP 3.1 Introducción a las comunicaciones serie Las comunicaciones serie se utilizan para enviar datos a través de largas distancias, ya que las comunicaciones en paralelo exigen demasiado

Más detalles

ALMACENAMIENTO Y OTROS ASPECTOS DE LA ENTRADA/SALIDA. Ancho de banda máximo posible: una palabra por ciclo de reloj de manera sostenida, es decir:

ALMACENAMIENTO Y OTROS ASPECTOS DE LA ENTRADA/SALIDA. Ancho de banda máximo posible: una palabra por ciclo de reloj de manera sostenida, es decir: 5.1. Se tiene un bus de 64 bits a 200 MHz. Sólo con estos datos: a) Cuál es el ancho de banda máximo posible? Ancho de banda máximo posible: una palabra por ciclo de reloj de manera sostenida, es decir:

Más detalles

Elementos constituyentes de la ejecución de un programa

Elementos constituyentes de la ejecución de un programa Micro-Operaciones En la ejecución de un programa en una computadora, se ejecutan instrucciones, que pueden subdividirse en ciclos: Búsqueda/Ejecución Cada ciclo se compone a su vez de una serie de operaciones

Más detalles

Cuando se mueven grandes cantidades de datos se necesita una técnica mejor DMA

Cuando se mueven grandes cantidades de datos se necesita una técnica mejor DMA En los dos métodos vistos hasta ahora para controlar E/S la CPU debe intervenir de forma activa para transferir datos entre la memoria y el periférico. Cuando se mueven grandes cantidades de datos se necesita

Más detalles

SISTEMAS OPERATIVOS Arquitectura de computadores

SISTEMAS OPERATIVOS Arquitectura de computadores SISTEMAS OPERATIVOS Arquitectura de computadores Erwin Meza Vega emezav@unicauca.edu.co Esta presentación tiene por objetivo mostrar los conceptos generales de la arquitectura de los computadores, necesarios

Más detalles

Tema 3 SUBRUTINAS. Estructura de Computadores OCW_2015 Nekane Azkona Estefanía

Tema 3 SUBRUTINAS. Estructura de Computadores OCW_2015 Nekane Azkona Estefanía Tema 3 SUBRUTINAS ÍNDICE Definición e instrucciones básicas Soporte para el tratamiento de subrutinas (ejecución de la subrutina y gestión del bloque de activación) Interrupciones vs llamadas a procedimiento

Más detalles

CAPITULO 3 SUBSISTEMAS DE ENTRADA / SALIDA Características de los subsistemas de E/S: [2][31]

CAPITULO 3 SUBSISTEMAS DE ENTRADA / SALIDA Características de los subsistemas de E/S: [2][31] CAPITULO 3 SUBSISTEMAS DE ENTRADA / SALIDA 3.1 - Características de los subsistemas de E/S: [2][31] Un subsistema de E/S consiste en interfases de E/S y dispositivos periféricos. Un diagrama típico de

Más detalles

Microprocesadores, Tema 4:

Microprocesadores, Tema 4: Microprocesadores, Tema 4: Conceptos de Entrada / Salida Guillermo Carpintero Marta Ruiz Universidad Carlos III de Madrid Objetivos Concepto de Interface Modelo de los Dispositivos de Interface Técnicas

Más detalles

TEMA III. Unidad de entrada salida

TEMA III. Unidad de entrada salida TEMA III Unidad de entrada salida 3.1 Dispositivos externos 3.2 Controlador de E/S 3.2.1 Funciones del controlador de E/S 3.2.2 Estructura del controlador de E/S 3.2.3 Estructura del sistema de E/S 3.3

Más detalles

Entrada y Salida! EC-2721 Arquitectura del Computador I! Entradas/Salidas: Problemas. Entradas salidas: Criterios. Amplia variedad de periféricos!

Entrada y Salida! EC-2721 Arquitectura del Computador I! Entradas/Salidas: Problemas. Entradas salidas: Criterios. Amplia variedad de periféricos! Entrada y Salida Velocidades de transferencia típicas en Dispositivos I/O EC-2721 Arquitectura del Computador I William Stallings, Computer Organization and Architecture, Cap. 7 Universidad Simón Bolívar

Más detalles

INSTRUMENTACIÓN AVANZADA Departamento de Ingeniería Eléctrica y Electromecánica Facultad de Ingeniería Universidad Nacional de Mar del Plata

INSTRUMENTACIÓN AVANZADA Departamento de Ingeniería Eléctrica y Electromecánica Facultad de Ingeniería Universidad Nacional de Mar del Plata Muestreo de señales analógicas Principal requerimiento que surge al muestrear una señal continua: Definir el periodo de muestreo con suficiente exactitud. Ajustar el mismo a un valor adecuado de acuerdo

Más detalles

(SPI) Módulo Serial Sincrónico

(SPI) Módulo Serial Sincrónico SERIAL PERIPHERAL INTERFACE (SPI) Módulo Serial Sincrónico SERIAL PERIPHERAL INTERFACE MODULE Clock Generation Module (CGM) System Integration Module (SIM) LVI COP IRQ BREAK RESET 68HC08 CPU Timer Interface

Más detalles

Interrupciones y entrada/salida

Interrupciones y entrada/salida Departamento de Automática 1 / 15 Índice Mapa de entrada/salida Instrucciones IN/OUT Modo de operación Registros Habilitación de interrupciones Marco de interrupción Procesamiento de una interrupción 2

Más detalles

Problemario: Memoria / Entrada Salida / Buses / Interrupciones

Problemario: Memoria / Entrada Salida / Buses / Interrupciones Universidad simón Bolívar Departamento de Electrónica y Circuitos / Sección de Sistemas Digitales EC2721 Arquitectura del Computador I Problemario: Memoria / Entrada Salida / Buses / Interrupciones PARTE

Más detalles

Práctica 7 Dispositivos de Entrada/Salida

Práctica 7 Dispositivos de Entrada/Salida Organización del computador I - 2 o Cuatrimestre 2007 Objetivos: Reconocer y comprender el funcionamiento de los diferentes dispositivos de Entrada/Salida Nota: En todos los ejercicios, si no se especifica

Más detalles

Interfaces de Entrada / Salida

Interfaces de Entrada / Salida 4-1 Interfaces de Entrada / Salida Familia de Circuitos que permiten adaptar, leer y/o gobernar señales externas desde y hacia un sistema microprocesador 4-2 1 Tipos de Entradas / Salidas A) Formato de

Más detalles

Introducción a las Computadoras. Capítulo 3 Buses del Sistema

Introducción a las Computadoras. Capítulo 3 Buses del Sistema Introducción a las Computadoras Capítulo 3 Buses del Sistema Concepto de Programa Los sistemas de propósito específico no son flexibles El Hardware de propósito general puede realizar diferentes tareas,

Más detalles

PROBLEMAS TEMA 3: Unidad de Entrada/Salida

PROBLEMAS TEMA 3: Unidad de Entrada/Salida PROBLEMAS TEMA 3: Unidad de Entrada/Salida Problemas propuestos en examen 3.1 Un computador dispone de un canal multiplexor que controla 2 unidades de disco y 2 unidades de cinta. Las unidades de disco

Más detalles

Arquitectura del ordenador

Arquitectura del ordenador Arquitectura del ordenador Jorge Juan Chico , Julián Viejo Cortés 2012, 2014 Departamento de Tecnología Electrónica Universidad de Sevilla Usted es libre de copiar, distribuir

Más detalles

Arquitectura de Computadoras. Clase 2 Interrupciones

Arquitectura de Computadoras. Clase 2 Interrupciones Arquitectura de Computadoras Clase 2 Interrupciones Interrupciones Mecanismo mediante el cual se puede interrumpir el procesamiento normal de la CPU. Ejecución secuencial de instrucciones de un programa

Más detalles

Arquitectura de Computadores II Clase #2

Arquitectura de Computadores II Clase #2 Arquitectura de Computadores II Clase #2 Facultad de Ingeniería Universidad de la República Instituto de Computación Curso 2010 Veremos Ciclo de Instrucción Normal Con interrupciones La Unidad de Control

Más detalles

Arquitectura de Computadores II Clase #2

Arquitectura de Computadores II Clase #2 Arquitectura de Computadores II Clase #2 Facultad de Ingeniería Universidad de la República Instituto de Computación Curso 2010 Veremos Ciclo de Instrucción Normal Con interrupciones La Unidad de Control

Más detalles

9. Lenguaje ensamblador

9. Lenguaje ensamblador 9. Lenguaje ensamblador Lenguaje máquina: un programa o secuencia de instrucciones viene dado por una secuencia de códigos binarios. Lenguaje ensamblador: secuencia lógica de sentencias pertenecientes

Más detalles

Ciclo de funcionamiento del autómata

Ciclo de funcionamiento del autómata Ciclo de funcionamiento del autómata Modos de operación Un autómata que este bajo tensión puede mantenerse en alguno de los tres modos siguientes: - RUN: El autómata ejecuta el programa de usuario que

Más detalles

Control remoto del EDUKIT08 vía PC...

Control remoto del EDUKIT08 vía PC... COMENTARIO TECNICO Mundo EDUKIT08 Por: Ing. Roberto Simone Ingeniero de aplicaciones Freescale robertosimone@arnet.com.ar Ing. Daniel Di Lella D.F.A.E www.edudevices.com.ar dilella@arnet.com.ar (MDO_EDUKIT_012)

Más detalles

Estructura de los sistemas de cómputo

Estructura de los sistemas de cómputo Estructura de los sistemas de cómputo Introducción Elementos básicos de un computador Registro del procesador Ejecución de las instrucciones Interrupciones Hardware de protección Introducción Qué es un

Más detalles

Sistemas Operativos Tema 2: Estructura del computador José Miguel Santos Alexis Quesada Francisco Santana

Sistemas Operativos Tema 2: Estructura del computador José Miguel Santos Alexis Quesada Francisco Santana Sistemas Operativos Tema 2: Estructura del computador 1998-2008 José Miguel Santos Alexis Quesada Francisco Santana 1 Contenidos Estructura de la E/S Sistema de Interrupciones DMA Jerarquía de memorias

Más detalles

2.8 MÓDULO DE INTERRUPCIÓN POR TECLADO KBI

2.8 MÓDULO DE INTERRUPCIÓN POR TECLADO KBI Notas Técnicas de Uso y Aplicación 2.8 MÓDULO DE INTERRUPCIÓN POR TECLADO KBI AÑADIENDO INTERRUPTORES A SU MICROCONTROLADOR Preparado por: Rangel Alvarado Estudiante Graduando de Lic. en Ing. Electromecánica

Más detalles

ARQUITECTURA DE LOS SUBSISTEMAS DE BUSES Y ENTRADA/SALIDA

ARQUITECTURA DE LOS SUBSISTEMAS DE BUSES Y ENTRADA/SALIDA U C V F A C C I E N C I A S Organización y Estructura del Computador II ARQUITECTURA DE LOS SUBSISTEMAS DE BUSES Y ENTRADA/SALIDA T e m a 2 G D O E C - II S e m e st r e I - 2012 AGENDA Subsistema de Buses

Más detalles

CICLOS DEL PROCESADOR

CICLOS DEL PROCESADOR UNIDAD DE CONTROL CICLOS DEL PROCESADOR Qué es un ciclo de búsqueda? Para qué sirve estudiar los ciclos de instrucción de una CPU? Para comprender el funcionamiento de la ejecución de instrucciones del

Más detalles

Gestión de Memoria e Interrupciones en modo protegido

Gestión de Memoria e Interrupciones en modo protegido Gestión de Memoria e Interrupciones en modo protegido Acceso a la memoria en MP Para acceder a la memoria los segmentos seguirán trabajando con segmentos, de manera similar a como lo hacen en modo real.

Más detalles

Fundamentos de los Sistemas Operativos. Tema 1. Conceptos generales Estructura del computador y el SO

Fundamentos de los Sistemas Operativos. Tema 1. Conceptos generales Estructura del computador y el SO Fundamentos de los Sistemas Operativos Tema 1. Conceptos generales Estructura del computador y el SO 2015 ULPGC - José Miguel Santos Espino, Alexis Quesada, Francisco J. Santana Contenidos Estructura de

Más detalles

Anexo II: Lógica programada y lógica cableada. Ventajas e inconvenientes. MSP430G2553.

Anexo II: Lógica programada y lógica cableada. Ventajas e inconvenientes. MSP430G2553. Anexo II: Lógica programada y lógica cableada. Ventajas e inconvenientes. MSP430G2553. 1. Introducción Como se observa a lo largo de este proyecto, en casi todas las tarjetas esclavo recurrimos a usar

Más detalles

USB232. Hoja de datos

USB232. Hoja de datos - 1 - USB232 Hoja de datos 9600, 19200, 38400, 57600, 115200 bps Interfaz USB serie RS232 Integración de tecnología USB Para sistemas con comunicación serie RS232 - 2 - USB232 Interfaz USB serie RS232

Más detalles

LENGUAJE C PARA SISTEMAS DEDICADOS

LENGUAJE C PARA SISTEMAS DEDICADOS LENGUAJE C PARA SISTEMAS DEDICADOS FUNDAMENTOS Computadora Se dispone de un S.O. El S.O. inicia y configura los periféricos. El S.O. brinda al usuario subrutinas para utilizar los periféricos ( system

Más detalles

Curso sobre Microcontroladores Familia HC9S08 de Freescale

Curso sobre Microcontroladores Familia HC9S08 de Freescale Curso sobre Microcontroladores Familia HC9S08 de Freescale Por Ing. Daniel Di Lella EduDevices www.edudevices.com.ar e-mail: info@edudevices.com.ar Capítulo 6.- Módulo Serial Asincrónico de Comunicación

Más detalles

Tema: Microprocesadores

Tema: Microprocesadores Universidad Nacional de Ingeniería Arquitectura de Maquinas I Unidad I: Introducción a los Microprocesadores y Microcontroladores. Tema: Microprocesadores Arq. de Computadora I Ing. Carlos Ortega H. 1

Más detalles

Tema 6: Gestión de la Entrada/Salida

Tema 6: Gestión de la Entrada/Salida Tema 6: Gestión de la Entrada/Salida SSOO - Curso 2005/06 E. Domínguez C. Villarrubia Departamento de Tecnologías y Sistemas de Información Escuela Superior de Informática Universidad de Castilla - La

Más detalles

TEMA 1 Introducción a las comunicaciones industriales

TEMA 1 Introducción a las comunicaciones industriales Introducción a las comunicaciones industriales noviembre de 2004 1 Sistemas de control y Automatización de Procesos Qué es un sistema de control? Proceso Selector de temperatura Comparador + _ Accionador

Más detalles

ESTRUCTURA DE INTERCONEXIÓN DE UN COMPUTADOR

ESTRUCTURA DE INTERCONEXIÓN DE UN COMPUTADOR ESTRUCTURA DE INTERCONEXIÓN DE UN COMPUTADOR 1 Arquitectura Von Neumann se fundamente en tres ideas: En la memoria del ordenador se almacenan indistintamente datos e instrucciones. Se puede acceder a la

Más detalles

Arquitectura de computadores I

Arquitectura de computadores I Arquitectura de computadores I Perspectiva de alto nivel de los computadores Septiembre de 2017 Contenido Componentes del computador Funcionamiento del computador Estructuras de interconexión Interconexión

Más detalles

Introducción a los sistemas de entrada/salida Profesores y tutorías

Introducción a los sistemas de entrada/salida Profesores y tutorías Introducción a los sistemas de entrada/salida Profesores y tutorías Teoría: Daniel Cascado Caballero Despacho: F070 Horario de tutorías: Lunes: 17:30h a 19:30h Martes: 12:30h a 13:30h Jueves: 10:30h a

Más detalles