Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Arquitectura de Computadores Capitulo IV

16,216 views

Published on

Diseño para conseguir mejores prestaciones
Ponente: Greyson Alberca Prieto

Published in: Education
  • Be the first to comment

Arquitectura de Computadores Capitulo IV

  1. 1. <ul><li>ESCUELA : </li></ul><ul><li>PONENTE: </li></ul><ul><li>BIMESTRE: </li></ul>Arquitectura de Computadores <ul><li>CICLO: </li></ul><ul><li>CIENCIAS DE LA COMPUTACIÓN </li></ul><ul><li>I BIMESTRE </li></ul><ul><li>Ing. Greyson Alberca Prieto </li></ul>Octubre – Febrero 2009
  2. 2. Organizaci ón y Arquitectura de Computadores CAP ÍTULO IV “ ENTRADA/SALIDA” Capítulo IV Arquitectura de Computadores
  3. 3. Contenidos <ul><li>Organizaci ón del Computador </li></ul><ul><li>Componentes de computador y Buses </li></ul><ul><li>Memoria </li></ul><ul><li>Entrada/Salida </li></ul><ul><li>Bibliograf ía ・ Organizaci ón y Arquitectura de Computadores, William Stalling </li></ul>Capítulo IV Arquitectura de Computadores
  4. 4. Objetivos <ul><ul><ul><li>Identificar los tipos de dispositivos tanto internos como externos </li></ul></ul></ul><ul><ul><ul><li>Seleccionar el mejor método de E/S ya se programada, mediante interrupciones o acceso directo a memoria </li></ul></ul></ul><ul><ul><ul><li>Diferenciar los tipos de interfaces y reconocer cual de ellas es conveniente, tomando en cuenta los tiempos de respuesta necesarios </li></ul></ul></ul>Capítulo IV Arquitectura de Computadores
  5. 5. Temas <ul><ul><ul><li>1. Dispositivos externos </li></ul></ul></ul><ul><ul><ul><li>2. Módulos de E/S </li></ul></ul></ul><ul><ul><ul><ul><li>2.1. Funciones de un módulo </li></ul></ul></ul></ul><ul><ul><ul><ul><li>2.2. Estructura de un módulo </li></ul></ul></ul></ul><ul><ul><ul><li>3. E/S programada </li></ul></ul></ul><ul><ul><ul><li>4. E/S mediante interrupciones </li></ul></ul></ul><ul><ul><ul><ul><li>4.1. Procesamiento de la interrupción </li></ul></ul></ul></ul><ul><ul><ul><ul><li>4.2. Cuestiones de diseño </li></ul></ul></ul></ul><ul><ul><ul><li>5. Acceso directo a memoria </li></ul></ul></ul><ul><ul><ul><li>6. Canales de procesamiento de E/S </li></ul></ul></ul><ul><ul><ul><li>7. La interfaz externa </li></ul></ul></ul><ul><ul><ul><ul><li>7.1. Tipos de interfaces </li></ul></ul></ul></ul><ul><ul><ul><ul><li>7.2. Configuraciones punto a punto y multipuesto </li></ul></ul></ul></ul>Capítulo IV Arquitectura de Computadores
  6. 6. Arquitectura Capítulo IV Arquitectura de Computadores • Un computador no puede estar formado sólo por la CPU y la memoria. • Para darle alguna utilidad debe de comunicarse con el mundo exterior a través del subsistema de entrada/salida (I/O input/output).
  7. 7. Introducci ón <ul><li>El subsistema de Entrada/Salida permite al computador interactuar con el “mundo exterior”, adaptando los dispositivos externos antes de conectarlos al bus del sistema </li></ul><ul><ul><ul><ul><ul><li>¿Por qué no se conectan directamente al B.Sistema? </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Variedad de dispositivos de E/S (periféricos) </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Velocidad de transferencia(menor) </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Formatos y anchos de banda </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Dispositivos de E/S (periféricos) típicos: </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>E/S Básica: teclado, ratón, pantalla </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Almacenamiento: discos, disquetes, cintas, CD-ROM,... </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Impresión y escáner : impresoras, plotters, scanners, ... </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Comunicación: redes, módems, ... </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Multimedia: audio, vídeo, ... </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Automatización </li></ul></ul></ul></ul></ul>Capítulo IV Arquitectura de Computadores
  8. 8. Conti… <ul><li>Variedad de dispositivos periféricos </li></ul>Capítulo IV Arquitectura de Computadores
  9. 9. Elementos del sistema de E/S <ul><li>Dispositivo externo: </li></ul><ul><li>Elementos físicos que se “comunican” con el exterior. </li></ul><ul><li>Módulos de Entrada/Salida (Controladores): </li></ul><ul><li>Permiten que los dispositivos externos se comuniquen con el resto de elementos del sistema. </li></ul><ul><li>Un dispositivo externo conectado a un m ód ulo de E/S se denomina dispositivo perif ér ico o simplemente perif ér ico </li></ul>Capítulo IV Arquitectura de Computadores
  10. 10. Perif érico Capítulo IV Arquitectura de Computadores
  11. 11. Capítulo IV Arquitectura de Computadores
  12. 12. Puerto serie Capítulo IV Arquitectura de Computadores
  13. 13. 1. Diagrama de bloques de un dispositivo externo(perif érico ) Capítulo IV Arquitectura de Computadores
  14. 14. Diagrama de bloques de un m ódulo de E/S Capítulo IV Arquitectura de Computadores
  15. 15. Funciones <ul><ul><ul><li>Las funciones de un módulo se presentan en las siguientes categorías: </li></ul></ul></ul><ul><ul><ul><ul><ul><li>Control y temporización </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Comunicación con el procesador </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Comunicación con los dispositivos </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Almacenamiento temporal de datos </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Detección de errores </li></ul></ul></ul></ul></ul>Capítulo IV Arquitectura de Computadores
  16. 16. Funciones II <ul><li>• Control y temporización </li></ul><ul><ul><li>– Son necesarios para coordinar el tráfico entre dispositivos internos y externos </li></ul></ul><ul><ul><li>– Por ejemplo, el control de la transferencia de datos desde un dispositivo </li></ul></ul><ul><ul><li>externo al procesador podría implicar la siguiente secuencia de pasos: </li></ul></ul><ul><ul><ul><li>1. El procesador pregunta por el estado del dispositivo </li></ul></ul></ul><ul><ul><ul><li>2. El módulo de E/S devuelve el estado del dispositivo </li></ul></ul></ul><ul><ul><ul><li>3. Si el dispositivo está listo, el procesador solicita la transferencia al módulo de E/S </li></ul></ul></ul><ul><ul><ul><li>4. El módulo de E/S obtiene los datos </li></ul></ul></ul><ul><ul><ul><li>5. Los datos se transfieren del módulo de E/S al procesador </li></ul></ul></ul><ul><li>La comunicaciçon con el procesador implica: </li></ul><ul><ul><li>Decodificación de órdenes </li></ul></ul><ul><ul><li>Datos </li></ul></ul><ul><ul><li>Información de estado </li></ul></ul><ul><ul><li>Reconocimiento de dirección </li></ul></ul>Capítulo IV Arquitectura de Computadores
  17. 17. Funciones III <ul><li>• La comunicación con el dispositivo implica: </li></ul><ul><ul><li>– Órdenes </li></ul></ul><ul><ul><li>– Información de estado </li></ul></ul><ul><ul><li>– Datos </li></ul></ul><ul><li>• Almacenamiento temporal de datos </li></ul><ul><ul><li>Los datos se envían en ráfagas rápidas desde la memoria al módulo de E/S y después se envían al periférico a la velocidad de éste (el proceso inverso es semejante) </li></ul></ul><ul><ul><li>Los datos se almacenan para no mantener ocupada a la memoria en una operación de transferencia lenta (evitar una caída en el rendimiento) </li></ul></ul><ul><li>• Detección de errores </li></ul><ul><ul><li>– Errores debidos a defectos mecánicos o eléctricos </li></ul></ul><ul><ul><li>– Errores en la transmisión de información (códigos de detección de errores) </li></ul></ul>Capítulo IV Arquitectura de Computadores
  18. 18. TRANSFERENCIA <ul><li>Del dispositivo externo al procesador </li></ul><ul><ul><ul><li>1. El procesador interroga al módulo de E/S </li></ul></ul></ul><ul><ul><ul><li>2. El módulo de entrada salida devuelve el estado del dispositivo </li></ul></ul></ul><ul><ul><ul><li>3. Si el dispositivo está operativo y preparado para transmitir, el procesador solicita la transferencia del dato mediante una orden al módulo de E/S </li></ul></ul></ul><ul><ul><ul><li>4. El módulo de E/S obtiene el dato del dispositivo externo </li></ul></ul></ul><ul><ul><ul><li>5. Los datos se transfieren desde el módulo de E/S al procesador </li></ul></ul></ul>Capítulo IV Arquitectura de Computadores
  19. 19. Estructura básica de E/S Capítulo IV Arquitectura de Computadores
  20. 20. Inconvenientes <ul><li>¿Cómo se direccionan los dispositivos? </li></ul><ul><li>¿Cómo se transfiere la información entre los módulos de E/S y el resto del sistema? </li></ul><ul><li>¿Cómo se sincronizan, a nivel de operación, los módulos de E/S y el resto del sistema? </li></ul>Capítulo IV Arquitectura de Computadores
  21. 21. Ordenes-Instrucciones <ul><ul><ul><li>Ordenes de E/S </li></ul></ul></ul><ul><ul><ul><li>Hay cuatro tipos de órdenes de E/S que puede recibir un módulo cuando es direccionado por el procesador </li></ul></ul></ul><ul><ul><ul><ul><li>Control </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Test </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Lectura </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Escritura </li></ul></ul></ul></ul><ul><ul><ul><li>Instrucciones de E/S </li></ul></ul></ul><ul><ul><ul><li>Cuando el procesador, la memoria principal y las E/S comparten un bus común son posibles dos modos de direccionamiento: </li></ul></ul></ul><ul><ul><ul><ul><li>Asignado en memoria, común, mapeada </li></ul></ul></ul></ul><ul><ul><ul><ul><li>Aislado. </li></ul></ul></ul></ul>Capítulo IV Arquitectura de Computadores
  22. 22. E/S com ún y separada <ul><li>Según el modo de seleccionar el periférico y el acceso a sus registros de control, datos y estado: </li></ul><ul><li>1. E/S COMÚN O ASIGNADA/MAPEADA EN MEMORIA: </li></ul><ul><ul><li>• El acceso a estos módulos se realiza de igual modo a como se accede a un dato de memoria principal. </li></ul></ul><ul><ul><li>• Los periféricos se integran en el computador como si fueran parte de la memoria </li></ul></ul><ul><ul><ul><li>Comunicarse con un módulo de E/S es leer y escribir en memoria. Ej: 68000. </li></ul></ul></ul><ul><ul><li>• VENTAJA: Se aprovecha la potencia del juego de instrucciones. </li></ul></ul><ul><ul><li>• INCONVENIENTE: Se desperdicia parte del espacio de direcciones. </li></ul></ul><ul><li>2. E/S AISLADA O SEPARADA: </li></ul><ul><ul><li>• El acceso a la E/S está contemplado en la arquitectura. </li></ul></ul><ul><ul><li>• Existen dos mapas de memoria separados: uno para memoria y otro para E/S </li></ul></ul><ul><ul><li>Existen señales e instrucciones específicas. Ej: intel 80x86. </li></ul></ul><ul><ul><li>• (Las ventajas y desventajas son contrarias a las de la E/S común.) </li></ul></ul>Capítulo IV Arquitectura de Computadores
  23. 23. Métodos de E/S <ul><ul><ul><ul><ul><li>E/S por sondeo(polling,programada) </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>E/S por interrupciones </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>E/S por Acceso Directo a Memoria/DMA </li></ul></ul></ul></ul></ul>Capítulo IV Arquitectura de Computadores
  24. 24. 1. E/S programada <ul><li>La CPU tiene el control absoluto de la operación de E/S: inicia y lleva a cabo la transferencia. </li></ul><ul><li>La CPU está dedicándose por completo a realizar la operación de E/S: realiza tanto la comprobación de estado como la transferencia y la inicialización: poco eficiente. </li></ul><ul><li>Hardware mínimo. </li></ul>Capítulo IV Arquitectura de Computadores
  25. 25. 2. E/S mediante interrupciones <ul><li>• Problemas de la </li></ul><ul><li>entrada/salida programada </li></ul><ul><li>o por polling (consulta </li></ul><ul><li>continua del registro de </li></ul><ul><li>estado) </li></ul><ul><ul><li>– La CPU no puede hacer </li></ul></ul><ul><ul><li>otros trabajos </li></ul></ul><ul><ul><li>- La CPU espera durante </li></ul></ul><ul><ul><li>horas a que se teclee una </li></ul></ul><ul><ul><li>tecla </li></ul></ul><ul><li>• Solución: Interrupciones </li></ul><ul><ul><li>– La CPU sigue con otros </li></ul></ul><ul><ul><li>trabajos </li></ul></ul><ul><ul><li>– Cuando el periférico está </li></ul></ul><ul><ul><li>listo avisa a través de la </li></ul></ul><ul><ul><li>línea de interrupción a la </li></ul></ul><ul><ul><li>CPU para que lea el dato </li></ul></ul><ul><li>Punto de vista del módulo de E/S </li></ul>Capítulo IV Arquitectura de Computadores
  26. 26. E/S mediante interrupciones II <ul><li>Las interrupciones pueden ser: </li></ul><ul><li>– ENMASCARABLES (se pueden dejar de atender por software) </li></ul><ul><li>– o NO ENMASCARABLES (siempre atendidas). </li></ul>Capítulo IV Arquitectura de Computadores
  27. 27. Procesamiento de la interrupción Capítulo IV Arquitectura de Computadores
  28. 28. Cuestiones de diseño <ul><ul><ul><li>En la implementación de E/S mediante interrupciones surgen dos cuestiones. </li></ul></ul></ul><ul><ul><ul><ul><li>¿cómo determina el procesador qué dispositivo ha provocado una interrupción? </li></ul></ul></ul></ul><ul><ul><ul><ul><li>¿Cómo decide el procesador la que debe atender? </li></ul></ul></ul></ul><ul><ul><ul><li>Hay algunas técnicas que nos ayudan a solucionar este tipo de cuestiones: </li></ul></ul></ul><ul><ul><ul><ul><ul><li>Múltiples líneas de interrupciones </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Consulta software(software polling) </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Conexión en cadena(daisy chain) </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>Arbitraje de bus </li></ul></ul></ul></ul></ul>Capítulo IV Arquitectura de Computadores
  29. 29. M ú ltiples líneas de interrupción <ul><li>Generalmente existen VARIOS PERIFÉRICOS (y no uno sólo) conectados que pueden realizar interrupciones, </li></ul><ul><ul><li>Obliga a ESTABLECER PRIORIDADES y decidir cómo se conectan a la CPU. </li></ul></ul><ul><li>También hay que determinar para cada periférico su vector de interrupciones. </li></ul><ul><li>Consiste en proporcionar varias l ín eas de interrupci ón entre el procesador y los m ó ulos de E/S </li></ul><ul><li>SOLUCIONES más extendidas: </li></ul><ul><ul><li>A. Una sola línea de interrupción </li></ul></ul><ul><ul><li>B. Varias líneas de interrupción </li></ul></ul><ul><ul><li>C. Líneas de interrupción y aceptación </li></ul></ul>Capítulo IV Arquitectura de Computadores
  30. 30. <ul><li>A. Una sola línea de interrupción </li></ul><ul><ul><li>Todos los periféricos interrumpen por la misma línea. </li></ul></ul><ul><ul><li>El vector de interrupción es fijo y común a todos los periféricos. </li></ul></ul><ul><ul><li>Mediante encuesta (polling) la CPU identifica el periférico y desactiva la interrupción. La prioridad viene determinada por el orden de la encuesta. </li></ul></ul>Capítulo IV Arquitectura de Computadores
  31. 31. <ul><li>B. Varias líneas de interrupción </li></ul><ul><li>Cada periférico tiene su línea de interrupción. </li></ul><ul><li>Cada línea tiene su propio vector de interrupción asociado y la CPU determina la prioridad. </li></ul><ul><li>C. Líneas de interrupción y aceptación: </li></ul><ul><li>Una línea de entrada para aceptar interrupciones y otra para dar el reconocimiento de la interrupción al periférico. Ej: procesador i8086. </li></ul>Capítulo IV Arquitectura de Computadores
  32. 32. Consulta software <ul><li>Todos los m ód ulos de E/S comparten una l ín ea com ún para solicitar interrupciones </li></ul><ul><li>Cuando el procesador detecta una interrupci ón , se produce un salto a una subrutina de servicio de interrupci ón que se encarga de consultar a cada m ód ulo de E/S para determinar cu ál ha producido la interrupci ón </li></ul><ul><li>La desventaja de la consulta software est á en el tiempo que consume </li></ul><ul><li>La prioridad viene determinada por el orden en que se hace la encuesta </li></ul>Capítulo IV Arquitectura de Computadores
  33. 33. Conexi ón en cadena <ul><li>Se trata de una consulta o polling hardware </li></ul><ul><li>Todos los m ó ulos de E/S comparten una l ín ea com ún para solicitar interrupciones </li></ul><ul><li>La l ín ea de reconocimiento de interrupci ón se conecta encadenando los m ód ulos uno tras otro </li></ul><ul><li>Cuando el procesador recibe una interrupci ón , activa la señal de reconocimiento, la cual se propaga a trav és de la secuencia de m ód ulos de E/S hasta que alcanza al que solicit an la interrupci ón </li></ul><ul><li>El m ód ulo correspondiente responde colocando una palabra que lo identifica </li></ul><ul><li>en las l ín eas de datos ( vector ) </li></ul><ul><li>El procesador utiliza el vector de interrupci ón como puntero a la rutina de servicio (as í se evita ejecutar una rutina de servicio general) </li></ul><ul><li>• La prioridad viene determinada por el orden en que se conectan los m ód ulos </li></ul><ul><li>en la cadena </li></ul>Capítulo IV Arquitectura de Computadores
  34. 34. Conexi ón en cadena II Capítulo IV Arquitectura de Computadores
  35. 35. Arbitraje de bus <ul><li>Con esta t éc nica, un m ód ulo de E/S antes de poder activar la l ín ea de petici ón de interrupci ón debe disponer del control del bus </li></ul><ul><li>Mediante el arbitrador de bus se garantiza que s ól o un m ód ulo puede </li></ul><ul><li>activar la señal de petici ón en un determinado instante </li></ul><ul><li>Es una t éc nica que usa interrupciones vectorizadas como el daisy chain </li></ul><ul><li>La prioridad viene determinada por el arbitrador </li></ul>Capítulo IV Arquitectura de Computadores
  36. 36. 3. Acceso directo a memoria <ul><li>Tanto en la E/S con interrupciones como en la E/S programada, se presentan dos inconvenientes : </li></ul><ul><li>La velocidad de transferencia de E/S está limitada por la velocidad a la cual el procesador puede comprobar y dar servicio a un dispositivo </li></ul><ul><li>El procesador debe dedicarse a la gestión de las transferencias de E/S; se debe ejecutar cierto número de instrucciones para cada transferencia de E/S </li></ul><ul><li>Si se desea transferir grandes volúmenes de datos, se requiere un técnica más eficiente: el acceso directo a memoria (DMA). </li></ul>Capítulo IV Arquitectura de Computadores
  37. 37. DMA <ul><li>• Polling e interrupción necesitan de </li></ul><ul><li>la intervención de la CPU </li></ul><ul><ul><li>– Ejemplo: pasar un dato de la </li></ul></ul><ul><ul><li>controladora del disco duro a la </li></ul></ul><ul><ul><li>memoria </li></ul></ul><ul><ul><li>• La CPU lee de la controladora el dato </li></ul></ul><ul><ul><li>• La CPU escribe el dato en la memoria </li></ul></ul><ul><li>• DMA (Direct Memory Access) </li></ul><ul><li>permite pasar los datos </li></ul><ul><li>directamente del periférico a la </li></ul><ul><li>memoria sin intervención de la CPU </li></ul><ul><ul><li>– El controlador de DMA (DMAC) es el </li></ul></ul><ul><ul><li>encargado de realizar la operación de </li></ul></ul><ul><ul><li>DMA entre periférico y memoria </li></ul></ul><ul><ul><li>– El controlador de DMA toma de forma </li></ul></ul><ul><ul><li>momentánea el control del bus </li></ul></ul><ul><ul><ul><li>• Toda la operación está controlada por la </li></ul></ul></ul><ul><ul><ul><li>CPU, a través de programa con </li></ul></ul></ul><ul><ul><ul><li>instrucciones adecuadas para la </li></ul></ul></ul><ul><ul><ul><li>programación del controlador de DMA </li></ul></ul></ul>Capítulo IV Arquitectura de Computadores
  38. 38. Características del DMA <ul><ul><ul><li>Imita al procesador </li></ul></ul></ul><ul><ul><ul><li>Controla el sistema </li></ul></ul></ul><ul><ul><ul><li>Usa la técnica robo de ciclo.- hacer uso del bus solo cuando el procesador no lo necesita. </li></ul></ul></ul>Capítulo IV Arquitectura de Computadores
  39. 39. Configuraci ón <ul><li>Los módulos DMA se pueden configurar de diversas formas: </li></ul><ul><ul><ul><li>Bus único DMA independiente </li></ul></ul></ul><ul><ul><ul><li>Bus único DMA entrada salida integrados </li></ul></ul></ul><ul><ul><ul><li>Bus de E/S </li></ul></ul></ul><ul><li>Cada una de las formas de configuración tiene sus niveles de eficiencia y costos que conllevan su implementación. </li></ul>Capítulo IV Arquitectura de Computadores
  40. 40. Bus ú nico DMA independiente <ul><li>Cada transferencia utiliza dos veces el bus. </li></ul><ul><ul><li>E /S va a DMA y el DMA a la memoria. </li></ul></ul><ul><li>La CPU se interrumpe dos veces. </li></ul>Capítulo IV Arquitectura de Computadores
  41. 41. Bus único, DMA integrado <ul><li>El módulo puede controlar más de un dispositivo. </li></ul><ul><li>Cada transferencia usa el bus una vez. </li></ul><ul><ul><li>Del DMA a la memoria. </li></ul></ul><ul><li>La CPU se interrumpe solo una vez. </li></ul>Capítulo IV Arquitectura de Computadores
  42. 42. Bus único DMA separado <ul><li>El bus se encarga de todos los dispositivos. activados del DMA. </li></ul><ul><li>Cada transferencia usa el bus una vez. </li></ul><ul><ul><li>Del DMA a la memoria. </li></ul></ul><ul><li>La CPU se interrumpe solo una vez. </li></ul>Capítulo IV Arquitectura de Computadores
  43. 43. Implementaci ón Capítulo IV Arquitectura de Computadores
  44. 44. Problemas de cohesi ón <ul><li>Problemas de cohesión con la jerarquía de memoria </li></ul><ul><li>Puede ocurrir que se tenga dos copias de un dato y el DMA sólo sobrescriba sobre una de ellas. </li></ul><ul><li>Hay tres SOLUCIONES: </li></ul><ul><li>1. Volcar toda la E/S a caché: sólo sirve con E/S asignada a memoria. Costoso. </li></ul><ul><li>2. Volcar toda la E/S a memoria: se vacían todos los datos de la caché (bit de validez a cero) que tengan que ver con la transferencia del DMA. </li></ul><ul><li>3. Usar técnicas/protocolos de coherencia: invalidar datos de la caché después de que el DMA haya escrito sobre esos datos. Ej. MESI. </li></ul><ul><li>Ejemplo de DMA: i8237. Posee 4 “canales” (procesadores de </li></ul><ul><li>DMA) programables con tres modos diferentes y además se </li></ul><ul><li>puede poner en cascada con otros i8237. </li></ul>Capítulo IV Arquitectura de Computadores
  45. 45. Resumen T écnicas de E/S Capítulo IV Arquitectura de Computadores E/S programada E/S Interrupciones DMA
  46. 46. 6. Canales y procesadores de E/S Capítulo IV Arquitectura de Computadores
  47. 47. Evolución del funcionamiento de las E/S <ul><ul><ul><li>1. La CPU controla directamente al periférico </li></ul></ul></ul><ul><ul><ul><li>2. Se añade un controlador o módulo de E/S </li></ul></ul></ul><ul><ul><ul><li>3. Se usa la misma configuración del paso anterior pero se emplean interrupciones </li></ul></ul></ul><ul><ul><ul><li>4. El módulo de E/S tiene acceso directo a la memoria a través del DMA </li></ul></ul></ul><ul><ul><ul><li>5. El módulo de E/S se mejora, haciendo que se comporte como un procesador en sí mismo. </li></ul></ul></ul><ul><ul><ul><li>6. El módulo de E/S tiene una memoria local propia y es un computador en sí mismo </li></ul></ul></ul>Capítulo IV Arquitectura de Computadores
  48. 48. Características de los canales de E/S <ul><li>Una ampliación de los DMA, con los canales de E/S, quienes realizan un control completo de las operaciones de E/S. En este caso el procesador no ejecuta instrucciones nada mas inicia una transferencia de entrada salida indicándole al canal que debe ejecutar un programa de la memoria. </li></ul><ul><li>El canal de E/S es un “pequeño” procesador especializado en operaciones de E/S. Si además tiene memoria propia, entonces se lo llama procesador de E/S. </li></ul><ul><li>Hay dos tipos de canales de E/S: </li></ul><ul><ul><ul><li>Un canal selector </li></ul></ul></ul><ul><ul><ul><li>Un canal multiplexor </li></ul></ul></ul>Capítulo IV Arquitectura de Computadores
  49. 49. Canales II <ul><li>Para realizar una transferencia de E/S, la CPU primero hade indicar qué canal de E/S ejecuta un determinado programa. </li></ul><ul><li>La CPU también debe definir el área de almacenamiento temporal , establecer una prioridad y establecer las correspondientes acciones en caso de error. El programa a ejecutar está cargado en memoria principal y puede contener instrucciones propias sólo procesables por el canal de E/S. </li></ul><ul><li>Después de terminar la operación de E/S, el canal de E/S deja el resultado en un área de memoria y a continuación genera una interrupción para indicar que ha acabado. </li></ul>Capítulo IV Arquitectura de Computadores
  50. 50. Ejemplo de disp E/S <ul><li>• Es un controlador de E/S que está pensado, en principio, para </li></ul><ul><li>ser usado solamente por impresoras. </li></ul><ul><li>• Para ello habría que utilizar un cable adaptado al bus de puerto </li></ul><ul><li>paralelo diferente al Centronics, que es el que se utiliza </li></ul><ul><li>habitualmente. </li></ul><ul><li>• Un PC tiene dos puertos paralelos llamados LPT1 y LPT2 a </li></ul><ul><li>partir de las direcciones o puertos de E/S 378 (LPT1) y 278 </li></ul><ul><li>(LPT2). </li></ul><ul><li>NOTA: ¡¡ no confundir puerto de E/S (dirección) con puerto </li></ul><ul><li>hardware (puerto serie, puerto paralelo, ...) !! </li></ul>Capítulo IV Arquitectura de Computadores
  51. 51. Puerto paralelo <ul><li>Registro de datos: es de sólo escritura. Direcciones 378 (LPT1) y 278 (LPT2). </li></ul><ul><li>Compuesto por un byte. </li></ul><ul><li>Registro de estado: es de sólo lectura. Direcciones 379 (LPT1) y 279 (LPT2). </li></ul><ul><li>Compuesto por un byte. </li></ul><ul><li>Registro de control: es de lectura/escritura. Direcciones 37A (LPT1) y </li></ul><ul><li>27A (LPT2). Compuesto por un byte. </li></ul>Capítulo IV Arquitectura de Computadores
  52. 52. Rendimiento de E/S <ul><li>• ¿De qué depende el rendimiento? </li></ul><ul><ul><li>– CPU </li></ul></ul><ul><ul><li>– Sistema de memoria </li></ul></ul><ul><ul><li>– Buses de interconexión </li></ul></ul><ul><ul><li>– Controlador del periférico </li></ul></ul><ul><ul><li>– Periférico </li></ul></ul><ul><ul><li>– Driver del sistema operativo para controlar el periférico </li></ul></ul><ul><ul><li>– Eficiencia del software utilizando el periférico </li></ul></ul><ul><li>• Métricas para medir el rendimiento </li></ul><ul><ul><li>– Ancho de banda del periférico </li></ul></ul><ul><ul><ul><li>• Número de transacciones por unidad de tiempo </li></ul></ul></ul><ul><ul><li>– Latencia del periférico </li></ul></ul><ul><ul><ul><li>• Tiempo entre la orden de transacción y el fin de su ejecución </li></ul></ul></ul>Capítulo IV Arquitectura de Computadores
  53. 53. 7. La interfaz externa Capítulo IV Arquitectura de Computadores
  54. 54. Tipos de interfaces <ul><ul><ul><li>Hay dos tipos de interfaces: </li></ul></ul></ul><ul><ul><ul><ul><ul><li>1. Interfaz paralela </li></ul></ul></ul></ul></ul><ul><ul><ul><ul><ul><li>2. Interfaz serie </li></ul></ul></ul></ul></ul>Capítulo IV Arquitectura de Computadores
  55. 55. Interfaz paralela <ul><li>Hay varias líneas que conectan el módulo de E/S y el periférico y se trasfieren varios bits simultáneamente a través del bus de datos. </li></ul>Capítulo IV Arquitectura de Computadores
  56. 56. Interfaz serie <ul><li>Hay solo una línea para la transmisión de los datos y los bits deben transmitirse uno a uno. </li></ul>Capítulo IV Arquitectura de Computadores
  57. 57. Configuraciones punto a punto y multipunto <ul><li>Interfaz punto-a-punto.- proporciona una línea específica entre el módulo de E/S y el dispositivo externo. </li></ul><ul><li>Interfaz externa multipunto.- utilizadas para soportar dispositivos de almacenamiento masivo (disco y cintas) y dispositivos multimedia. </li></ul>Capítulo IV Arquitectura de Computadores
  58. 58. Conclusiones <ul><li>Problemas </li></ul><ul><li>Las E/S son costosas por varias razones: </li></ul><ul><li>Involucran movimientos físicos lentos (cabezal disco) o líneas de comunicaciones (teléfono-red) que también lo son. </li></ul><ul><li>Los dispositivos de E/S son a menudo disputados por múltiples procesos. </li></ul><ul><li>Las operaciones de E/S se suministran por medio de llamadas al sistema y gestión de interrupciones, que son lentas. </li></ul>Capítulo IV Arquitectura de Computadores
  59. 59. Conclusiones <ul><li>Soluciones </li></ul><ul><li>Reducir el número de veces que los datos son copiados manteniendolos en caché. </li></ul><ul><li>Reducir la frecuencia de interrupciones utilizando, si es posible, grandes transferencias de datos. </li></ul><ul><li>Descargar computación de la CPU principal utilizando controladores DMA. </li></ul><ul><li>Aumentar el número de dispositivos para reducir la contención de uno único, y así, mejorar el uso de CPU. </li></ul><ul><li>Incrementar memoria física para reducir la cantidad de tiempo en paginación y por ello mejorar el uso de CPU. </li></ul>Capítulo IV Arquitectura de Computadores

×