entradas y salidas.ppt

59
Organización y Arquitectura de Computadores CAPÍTULO IV “ENTRADA/SALIDA” Capítulo IV Arquitectura de Computadores 1

Transcript of entradas y salidas.ppt

  • Organizacin y Arquitectura de ComputadoresCAPTULO IVENTRADA/SALIDA

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • ContenidosEntrada/Salida

    Bibliografa Organizacin y Arquitectura de Computadores, William StallingCaptulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • ArquitecturaCaptulo IVArquitectura de Computadores*

    Un computador no puede estar formado slo por la CPU y la memoria.Para darle alguna utilidad debe de comunicarse con el mundo exterior a travs del subsistema de entrada/salida (I/O input/output).

    Arquitectura de Computadores

  • Introduccin El subsistema de Entrada/Salida permite al computador interactuar con el mundo exterior, adaptando los dispositivos externos antes de conectarlos al bus del sistemaPor qu no se conectan directamente al B.Sistema?Variedad de dispositivos de E/S (perifricos)Velocidad de transferencia(menor)Formatos y anchos de bandaDispositivos de E/S (perifricos) tpicos:E/S Bsica: teclado, ratn, pantallaAlmacenamiento: discos, disquetes, cintas, CD-ROM,...Impresin y escner: impresoras, plotters, scanners, ...Comunicacin: redes, mdems, ...Multimedia: audio, vdeo, ...AutomatizacinCaptulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • ContiVariedad de dispositivos perifricos

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Elementos del sistema de E/SDispositivo externo:

    Elementos fsicos que se comunican con el exterior.

    Mdulos de Entrada/Salida (Controladores):

    Permiten que los dispositivos externos se comuniquen con el resto de elementos del sistema.

    Un dispositivo externo conectado a un mdulo de E/S se denomina dispositivo perifrico o simplemente perifrico

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • PerifricoCaptulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Puerto serieCaptulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • 1. Diagrama de bloques de un dispositivo externo(perifrico)Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Diagrama de bloques de un mdulo de E/SCaptulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • FuncionesLas funciones de un mdulo se presentan en las siguientes categoras:

    Control y temporizacinComunicacin con el procesadorComunicacin con los dispositivosAlmacenamiento temporal de datosDeteccin de errores

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Funciones II Control y temporizacin Son necesarios para coordinar el trfico entre dispositivos internos y externos Por ejemplo, el control de la transferencia de datos desde un dispositivoexterno al procesador podra implicar la siguiente secuencia de pasos:1. El procesador pregunta por el estado del dispositivo2. El mdulo de E/S devuelve el estado del dispositivo3. Si el dispositivo est listo, el procesador solicita la transferencia al mdulo de E/S4. El mdulo de E/S obtiene los datos5. Los datos se transfieren del mdulo de E/S al procesadorLa comunicacion con el procesador implica: Decodificacin de rdenesDatosInformacin de estadoReconocimiento de direccin

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Funciones III La comunicacin con el dispositivo implica: rdenes Informacin de estado Datos Almacenamiento temporal de datosLos datos se envan en rfagas rpidas desde la memoria al mdulo de E/S y despus se envan al perifrico a la velocidad de ste (el proceso inverso es semejante)Los datos se almacenan para no mantener ocupada a la memoria en una operacin de transferencia lenta (evitar una cada en el rendimiento) Deteccin de errores Errores debidos a defectos mecnicos o elctricos Errores en la transmisin de informacin (cdigos de deteccin de errores)

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • TRANSFERENCIADel dispositivo externo al procesador1. El procesador interroga al mdulo de E/S2. El mdulo de entrada salida devuelve el estado del dispositivo3. Si el dispositivo est operativo y preparado para transmitir, el procesador solicita la transferencia del dato mediante una orden al mdulo de E/S4. El mdulo de E/S obtiene el dato del dispositivo externo5. Los datos se transfieren desde el mdulo de E/S al procesador

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Estructura bsica de E/SCaptulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • InconvenientesCmo se direccionan los dispositivos?

    Cmo se transfiere la informacin entre los mdulos de E/S y el resto del sistema?

    Cmo se sincronizan, a nivel de operacin, los mdulos de E/S y el resto del sistema?Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Ordenes-InstruccionesOrdenes de E/SHay cuatro tipos de rdenes de E/S que puede recibir un mdulo cuando es direccionado por el procesadorControlTestLecturaEscrituraInstrucciones de E/SCuando el procesador, la memoria principal y las E/S comparten un bus comn son posibles dos modos de direccionamiento:Asignado en memoria, comn, mapeadaAislado.

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • E/S comn y separadaSegn el modo de seleccionar el perifrico y el acceso a sus registros de control, datos y estado:1. E/S COMN O ASIGNADA/MAPEADA EN MEMORIA: El acceso a estos mdulos se realiza de igual modo a como se accede a un dato de memoria principal. Los perifricos se integran en el computador como si fueran parte de la memoriaComunicarse con un mdulo de E/S es leer y escribir en memoria. Ej: 68000. VENTAJA: Se aprovecha la potencia del juego de instrucciones. INCONVENIENTE: Se desperdicia parte del espacio de direcciones.2. E/S AISLADA O SEPARADA: El acceso a la E/S est contemplado en la arquitectura. Existen dos mapas de memoria separados: uno para memoria y otro para E/SExisten seales e instrucciones especficas. Ej: intel 80x86. (Las ventajas y desventajas son contrarias a las de la E/S comn.)Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Mtodos de E/S

    E/S por sondeo(polling,programada) E/S por interrupciones E/S por Acceso Directo a Memoria/DMACaptulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • 1. E/S programada

    La CPU tiene el control absoluto de la operacin de E/S: inicia y lleva a cabo la transferencia.La CPU est dedicndose por completo a realizar la operacin de E/S: realiza tanto la comprobacin de estado como la transferencia y la inicializacin: poco eficiente.Hardware mnimo.Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • 2.E/S mediante interrupciones

    Problemas de laentrada/salida programadao por polling (consultacontinua del registro deestado) La CPU no puede hacerotros trabajos- La CPU espera durantehoras a que se teclee unatecla Solucin: Interrupciones La CPU sigue con otrostrabajos Cuando el perifrico estlisto avisa a travs de lalnea de interrupcin a laCPU para que lea el datoPunto de vista del mdulo de E/S

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • E/S mediante interrupciones II

    Las interrupciones pueden ser: ENMASCARABLES (se pueden dejar de atender por software) o NO ENMASCARABLES (siempre atendidas).Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Cuestiones de diseo

    En la implementacin de E/S mediante interrupciones surgen dos cuestiones.cmo determina el procesador qu dispositivo ha provocado una interrupcin?Cmo decide el procesador la que debe atender?Hay algunas tcnicas que nos ayudan a solucionar este tipo de cuestiones:Mltiples lneas de interrupcionesConsulta software(software polling)Conexin en cadena(daisy chain)Arbitraje de bus

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Mltiples lneas de interrupcinGeneralmente existen VARIOS PERIFRICOS (y no uno slo) conectados que pueden realizar interrupciones,Obliga a ESTABLECER PRIORIDADES y decidir cmo se conectan a la CPU.Tambin hay que determinar para cada perifrico su vector de interrupciones.Consiste en proporcionar varias lneas de interrupcin entre el procesador y los mulos de E/S

    SOLUCIONES ms extendidas:

    A. Una sola lnea de interrupcinB. Varias lneas de interrupcinC. Lneas de interrupcin y aceptacinCaptulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • A. Una sola lnea de interrupcinTodos los perifricos interrumpen por la misma lnea.El vector de interrupcin es fijo y comn a todos los perifricos.Mediante encuesta (polling) la CPU identifica el perifrico y desactiva la interrupcin. La prioridad viene determinada por el orden de la encuesta.

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • B. Varias lneas de interrupcinCada perifrico tiene su lnea de interrupcin.Cada lnea tiene su propio vector de interrupcin asociado y la CPU determina la prioridad.

    C. Lneas de interrupcin y aceptacin:Una lnea de entrada para aceptar interrupciones y otra para dar el reconocimiento de la interrupcin al perifrico. Ej: procesador i8086.

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Consulta softwareTodos los mdulos de E/S comparten una lnea comn para solicitar interrupcionesCuando el procesador detecta una interrupcin, se produce un salto a una subrutina de servicio de interrupcin que se encarga de consultar a cada mdulo de E/S para determinar cul ha producido la interrupcinLa desventaja de la consulta software est en el tiempo que consumeLa prioridad viene determinada por el orden en que se hace la encuestaCaptulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Conexin en cadenaSe trata de una consulta o polling hardwareTodos los mulos de E/S comparten una lnea comn para solicitar interrupcionesLa lnea de reconocimiento de interrupcin se conecta encadenando los mdulos uno tras otroCuando el procesador recibe una interrupcin, activa la seal de reconocimiento, la cual se propaga a travs de la secuencia de mdulos de E/S hasta que alcanza al que solicitan la interrupcinEl mdulo correspondiente responde colocando una palabra que lo identificaen las lneas de datos (vector)El procesador utiliza el vector de interrupcin como puntero a la rutina de servicio (as se evita ejecutar una rutina de servicio general) La prioridad viene determinada por el orden en que se conectan los mdulosen la cadena

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Conexin en cadena IICaptulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Arbitraje de busCon esta tcnica, un mdulo de E/S antes de poder activar la lnea de peticin de interrupcin debe disponer del control del busMediante el arbitrador de bus se garantiza que slo un mdulo puedeactivar la seal de peticin en un determinado instanteEs una tcnica que usa interrupciones vectorizadas como el daisy chainLa prioridad viene determinada por el arbitrador

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • 3. Acceso directo a memoriaTanto en la E/S con interrupciones como en la E/S programada, se presentan dos inconvenientes :La velocidad de transferencia de E/S est limitada por la velocidad a la cual el procesador puede comprobar y dar servicio a un dispositivoEl procesador debe dedicarse a la gestin de las transferencias de E/S; se debe ejecutar cierto nmero de instrucciones para cada transferencia de E/SSi se desea transferir grandes volmenes de datos, se requiere un tcnica ms eficiente: el acceso directo a memoria (DMA).

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • DMA Polling e interrupcin necesitan dela intervencin de la CPU Ejemplo: pasar un dato de lacontroladora del disco duro a lamemoria La CPU lee de la controladora el dato La CPU escribe el dato en la memoria DMA (Direct Memory Access)permite pasar los datosdirectamente del perifrico a lamemoria sin intervencin de la CPU El controlador de DMA (DMAC) es elencargado de realizar la operacin deDMA entre perifrico y memoria El controlador de DMA toma de formamomentnea el control del bus Toda la operacin est controlada por laCPU, a travs de programa coninstrucciones adecuadas para laprogramacin del controlador de DMACaptulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Caractersticas del DMAImita al procesador Controla el sistemaUsa la tcnica robo de ciclo.- hacer uso del bus solo cuando el procesador no lo necesita.

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • ConfiguracinLos mdulos DMA se pueden configurar de diversas formas:Bus nico DMA independienteBus nico DMA entrada salida integradosBus de E/S Cada una de las formas de configuracin tiene sus niveles de eficiencia y costos que conllevan su implementacin.

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Bus nico DMA independiente

    Cada transferencia utiliza dos veces el bus.E/S va a DMA y el DMA a la memoria.La CPU se interrumpe dos veces.Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Bus nico, DMA integrado

    El mdulo puede controlar ms de un dispositivo.Cada transferencia usa el bus una vez.Del DMA a la memoria.La CPU se interrumpe solo una vez.Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Bus nico DMA separado

    El bus se encarga de todos los dispositivos. activados del DMA.Cada transferencia usa el bus una vez.Del DMA a la memoria.La CPU se interrumpe solo una vez.

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • ImplementacinCaptulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Problemas de cohesinProblemas de cohesin con la jerarqua de memoriaPuede ocurrir que se tenga dos copias de un dato y el DMA slo sobrescriba sobre una de ellas.Hay tres SOLUCIONES:1. Volcar toda la E/S a cach: slo sirve con E/S asignada a memoria. Costoso.2. Volcar toda la E/S a memoria: se vacan todos los datos de la cach (bit de validez a cero) que tengan que ver con la transferencia del DMA.3. Usar tcnicas/protocolos de coherencia: invalidar datos de la cach despus de que el DMA haya escrito sobre esos datos. Ej. MESI.Ejemplo de DMA: i8237. Posee 4 canales (procesadores deDMA) programables con tres modos diferentes y adems sepuede poner en cascada con otros i8237.

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Resumen Tcnicas de E/SCaptulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • 6.Canales y procesadores de E/S

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Evolucin del funcionamiento de las E/S

    1.La CPU controla directamente al perifrico2.Se aade un controlador o mdulo de E/S3.Se usa la misma configuracin del paso anterior pero se emplean interrupciones4.El mdulo de E/S tiene acceso directo a la memoria a travs del DMA5.El mdulo de E/S se mejora, haciendo que se comporte como un procesador en s mismo.6.El mdulo de E/S tiene una memoria local propia y es un computador en s mismo

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Caractersticas de los canales de E/SUna ampliacin 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 indicndole al canal que debe ejecutar un programa de la memoria.El canal de E/S es un pequeo procesador especializado en operaciones de E/S. Si adems tiene memoria propia, entonces se lo llama procesador de E/S. Hay dos tipos de canales de E/S:Un canal selectorUn canal multiplexor

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Canales IIPara realizar una transferencia de E/S, la CPU primero hade indicar qu canal de E/S ejecuta un determinado programa.La CPU tambin 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 slo procesables por el canal de E/S.Despus de terminar la operacin de E/S, el canal de E/S deja el resultado en un rea de memoria y a continuacin genera una interrupcin para indicar que ha acabado.Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Puerto paraleloRegistro de datos: es de slo escritura. Direcciones 378 (LPT1) y 278 (LPT2).Compuesto por un byte.Registro de estado: es de slo lectura. Direcciones 379 (LPT1) y 279 (LPT2).Compuesto por un byte.

    Registro de control: es de lectura/escritura. Direcciones 37A (LPT1) y27A (LPT2). Compuesto por un byte.Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Rendimiento de E/S De qu depende el rendimiento? CPU Sistema de memoria Buses de interconexin Controlador del perifrico Perifrico Driver del sistema operativo para controlar el perifrico Eficiencia del software utilizando el perifrico Mtricas para medir el rendimiento Ancho de banda del perifrico Nmero de transacciones por unidad de tiempo Latencia del perifrico Tiempo entre la orden de transaccin y el fin de su ejecucinCaptulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • 7.La interfaz externa

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Tipos de interfaces

    Hay dos tipos de interfaces:1.Interfaz paralela2.Interfaz serie

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Interfaz paralelaHay varias lneas que conectan el mdulo de E/S y el perifrico y se trasfieren varios bits simultneamente a travs del bus de datos.

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Interfaz serieHay solo una lnea para la transmisin de los datos y los bits deben transmitirse uno a uno.

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • Configuraciones punto a punto y multipunto

    Interfaz punto-a-punto.- proporciona una lnea especfica entre el mdulo de E/S y el dispositivo externo.

    Interfaz externa multipunto.- utilizadas para soportar dispositivos de almacenamiento masivo (disco y cintas) y dispositivos multimedia.

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • ConclusionesProblemas Las E/S son costosas por varias razones:Involucran movimientos fsicos lentos (cabezal disco) o lneas de comunicaciones (telfono-red) que tambin lo son.Los dispositivos de E/S son a menudo disputados por mltiples procesos.Las operaciones de E/S se suministran por medio de llamadas al sistema y gestin de interrupciones, que son lentas.

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

  • ConclusionesSolucionesReducir el nmero de veces que los datos son copiados manteniendolos en cach.Reducir la frecuencia de interrupciones utilizando, si es posible, grandes transferencias de datos.Descargar computacin de la CPU principal utilizando controladores DMA.Aumentar el nmero de dispositivos para reducir la contencin de uno nico, y as, mejorar el uso de CPU.Incrementar memoria fsica para reducir la cantidad de tiempo en paginacin y por ello mejorar el uso de CPU.

    Captulo IVArquitectura de Computadores*

    Arquitectura de Computadores

    ****Por qu no se conectan directamente al bus del sistema?1. La velocidad de transmisin de datos de los perifricos es siempremenor que la de la memoria y la CPU.2. Debido a la gran diversidad de perifricos no es posible incorporartoda la lgica necesaria en el computador para manejar cada uno destos.3. Los formatos de datos de los perifricos son diferentes a los del restodel computador.**PERIFRICO: Elemento que permiten la transferencia de informacin entre laCPU y el mundo exterior. Interfaz que traduce la informacin asncrona y analgica delmundo exterior a la informacin sncrona y codificada delcomputador. Dos partes: mdulo de E/S y dispositivo (externo).

    ****El enlace se utiliza para intercambiar seales de: control, estado y datos. Un dispositivo externo conectado a un mdulo de E/S se denomina dispositivo perifrico.Las seales de control determinan la funcin que debe realizar el dispositivo: entrada, lectura, salida, escrituraLas seales de estado indican el estado del dispositivo: listo, no listo.Operacin en respuesta a operacionesInternamente suele haber una serie de buffers que son capaces dealmacenar temporalmente datos o informacin adicional de contexto.Un componente importante suele ser el transductor que transforma lainformacin analgica en digital.*Estructua interna* Coordina el correcto flujo de informacin entre uno o variosdispositivos externos (impresora, monitor, ...) e internos (memoria,procesador). FUNCIONES:1. Reconocer la direccin de la CPU que identifica al dispositivoexterno.2. Transferencia de datos entre la CPU y el dispositivo externo.3. Recepcin de mandatos (comandos) desde la CPU.4. Mantener informacin del estado del perifrico y mantener elprotocolo de comunicaciones con el perifrico. Un mdulo de E/S puede controlar varios dispositivos externos.

    FUNCIONES DE UN MODULO

    Control y temporizacin.- para coordinar el trfico entres recursos internos y los dispositivos externos.Comunicacin con el procesador.- Implica decodificacin de rdenes, datos, informacin de estado, reconocimiento de direccinComunicacin con los dispositivos.-intercambio de rdenes, informacin del estado y datosAlmacenamiento temporal de datos.- Los datos se almacenan temporalmente en el mdulo de E/S y despus se envan al perifrico a la velocidad de este.Deteccin de errores.- El mdulo de E/S se encarga de informar errores al procesador. OBTENER EJEMPLOS..******El la E/S programada los datos se intercambian entre el procesador y el mdulo de E/S

    El polling, utilizado en las primeras computadoras personales (como Apple II), consisteen que la CPU sondea periodicamente al dispositivo para ver cual es su estado. Ese sondeo sepuede hacer, por ejemplo, leyendo de una direccion de entrada/salida correspondiente a uno4 o varios registros de estado del dispositivo. Los bits de esos registros de estado nos diran cuales la situacion concreta del dispositivo (por ejemplo, si se trata de una impresora, podemossaber si est lista para recibir nuevos caracteres; si se trata de un teclado, podemos saber siel usuario ha presionado una tecla y el caracter aun no se ha ledo, etc). Otras veces no haytal registro de estado, y simplemente se lee lo que haya en la direccion I/O desde programa,decidiendo luego que hacer con el dato ledo. Este es el caso, por ejemplo, de un joystickanalogico conectado al puerto de juegos del PC.Esta forma de entrada/salida es sencilla, pero claramente ineficiente. Por ejemplo, si unusuario tarda 10 segundos en mover el raton, se habran realizado miles de encuestas al dispositivosin detectar un nuevo evento, con la consecuente perdida de tiempo para realizarotras tareas en la CPU. Por otra parte, el ritmo de transferencia de datos esta limitado porla velocidad de la CPU, ya que no podremos encuestar al dispositivo con una frecuencia arbitrariamentealta. Por tanto, esta forma de entrada/salida debe evitarse en lo posible. Sinembargo, en algunas ocasiones no quedara otra opcion, ya que el dispositivo en cuestion nogenera interrupciones (como es el caso del joystick que veremos en este proyecto).*Asignado en memoria.- existe un nico espacio de direcciones para las posiciones de memoria y los dispositivos de E/S

    E/S aislada.- El espacio de direcciones de E/S est aislado del de memoria DIFERENCIA ENTRE AISLADO Y ASIGNADO EN MEMORIA E/S comn o asignada/mapeada en memoria: en la que el procesador nocontempla el acceso a mdulos de E/S. El acceso a los perifricos se hacecomo si se accediese a un dato almacenado en la memoria principal. A losperifricos se le asigna posiciones de memoria como si fueran variables. Ej:el procesador Motorola 68000

    E/S Localizada en memoria La E/S y la memoria comparten el mismo espacio de direcciones. No se requieren instrucciones especficas de E/S No existen lneas especiales en el bus para distinguir operaciones conmemoria de operaciones de E/S. Los datos que se transfieren entre la CPU y el perifrico deben tener lamisma longitud que los que se transfieren entre memoria y la CPU. Ejemplo: MC68000

    E/S aislada o separada: el acceso a la E/S est contemplado en laarquitectura. Existen dos mapas de memoria separados: uno para memoria yotro para E/S. Esto implica que existen instrucciones especficas de E/S(inport/outport) y tambin seales especficas. Ej: la familia i80x86

    E/S Aislada El espacio de direcciones que utiliza la memoria y el que utiliza la E/S sonindependientes. Los datos que se transfieren entre la CPU y el perifrico pueden tenerdistinta longitud que los datos que se transfieren entre memoria y CPU. La CPU dispone de lneas de control especficas para indicar si se tratade una operacin con memoria o una operacin de E/S. Existen instrucciones especficas de E/S. Ejemplo: Computadores de la familia Intel x86 Mapear la E/S en memoria tiene como ventajas: no utilizar instrucciones de propito especico y aprovechartoda la potencia del juegos de instrucciones, permitiendo unamejor programaci el acceso a memoria es mucho m eficiente el compilador tiene mas libertad para elegir el lugar y el modo de

    *Forma de realizar la E/S: polling-encuesta-consulta.programada

    Debido a la diferencia de velocidad entre procesador yperificos es necesario proporcionar mecanismos parasincronizar las operaciones de E/S

    A la hora de clasificar los diferentes modos para llevara cabo las operaciones de E/S hay que tener en cuenta lossiguientes factores: Inicio de la transferencia (qui comienza la transferencia?) Transferencia (qui realiza la transferencia?)

    * Esta tnica tiene la ventaja de utilizar un hardware mimoaunque malgasta tiempo de proceso ya que ha de interrogarcontinuamente al perifico (espera activa, en sistemasmultiproceso)

    *En el caso de la entrada/salida por interrupciones, es el dispositivo quien establece elmomento en que se realiza la transferencia de los datos, avisando a la CPU de que ha ocurridoun evento (por ejemplo, que el usuario haya presionado una tecla). En este punto, debemosaclarar que en la familia 80x86 existen tres tipos de interrupciones, que a veces producenconfusion por la nomenclatura empleada en diversos textos:

    Para evitar la degradaci en las prestaciones del sistema que supone laespera activa, en este caso es el dispositivo el que solicita la operaci deE/S cuando se encuentra preparado para realizarla (interrupci)

    ********Programada y con interrupciones necesita la intervencin directa de la CPUla velocidad de transferencia es limitadala CPU permanece ocupada mucho tiempoDma es la solucin, en trasferir grandes volmenes de datos* El acceso directo a memoria requiere un mulo adicional en el bus

    Posici inicial de memoria de donde se lee o se escribe El tipo transferencia: lectura o escritura El tama de la transferencia (nero de palabras a transferir) El DMAC transfiere el bloque de datos completo, palabra a palabra,directamente desde, o hacia, la memoria, sin que tenga que pasar atrav del procesador Cuando la transferencia ha concluido el DMAC env una sel deinterrupci al procesador (TC, Terminal Count)

    Perifrico est preparado para recibir un dato de la memoria ysolicita operacin de DMA a DMAC La CPU (mi programa) configur previamente el perifrico para recibir datospor DMA DMAC pide el control del bus a la CPU (Bus request) CPU deja de controlar el bus y avisa a DMAC DMAC pone direccin del dato a leer de memoria La CPU program en el DMAC una direccin de inicio y un nmero detransferencias Memoria pone dato en el bus DMAC ordena a la interfaz del perifrico leer del bus Interfaz del perifrico lee el dato del bus DMAC avisa a la CPU para que recupere el control del bus A as nuevamente: DMAC va robando ciclos de la CPU de controldel bus de sistema hasta realizar toda la transferencia Otros modos: bloque o rfaga

    //////// //////////// ////////////El controlador de DMA El acceso directo a memoria requiere un mulo adicional en el busdel sistema: el Controlador de DMA (DMAC) La ica tarea de la CPU es programar el DMAC. Hay que enviarle almenos la siguiente informaci: Direcci del perifico de E/S Posici inicial de memoria de donde se lee o se escribe El tipo transferencia: lectura o escritura El tama de la transferencia (nero de palabras a transferir) El DMAC transfiere el bloque de datos completo, palabra a palabra,directamente desde, o hacia, la memoria, sin que tenga que pasar atrav del procesador Cuando la transferencia ha concluido el DMAC env una sel deinterrupci al procesador (TC, Terminal Count)

    *ROBO DE CICLOEl mdulo de DMA roba el bus durante un ciclo.Transfiere una palabra.No es una interrupcin.El procesador no guarda el contexto.El procesador se detiene justo antes de accederal bus.Ejemplo: Antes de un operando o una carga dedatos.La CPU es ms lenta pero no tanto como sirelizara la transferencia.

    Existen varias formas de realizar el acceso directo a memoria: Memoria multipuerto: la memoria permite realizar transferenciassimulteas por parte de la CPU y el DMAC. La memoria tiene dospuertos: uno para la CPU y otro para el DMAC. Es posible el accesoconcurrente a un mismo bloque de memoria por lo que hay queestablecer mecanismos de control Acceso a memoria por robo de ciclo: es una soluci meconica y es la utilizada habitualmente. El DMAC cada vez quequiere tomar el control del bus del sistema para realizar unatransferencia, lo solicita a la CPU activando una sel (HOLD). LaCPU concede el control del bus (se activa la sel HLDA), el DMACse hace due del bus y realiza la transferencia. Ejemplo 80x86 y8237: Transferencia en bloque o raga Transferencia bajo demanda Transferencia simple

    *O Como se conecta el DMAal sistema , la conexin del DMAC al sistema puede realizarse en varias formas*Acta como una CPU de E/S.Necesita un ciclo para acceder al mdulo de E/S o perifrico yotro para acceder a memoria.*Alternativa para reducir un ciclo de bus en la transferencia*Variacin de la alternativa enterior q permite hacer la arquitectura ms escalable* La conexi del DMAC al sistema puede realizarse de varias formasdiferentes: Bus ico, DMA independiente: El mulo de DMA act como unprocesador suplementario. Es econica pero ineficiente: latransferencia de cada palabra consume dos ciclos de bus Bus ico, DMA-E/S: El nero de ciclos de bus necesarios puedereducirse sustancialmente si se integran las funciones de DMA y E/S(el camino entre el DMA y los mulos de E/S no incluye al bus delsistema) Bus de E/S: El concepto anterior puede llevarse algo m lejosconectado los mulos de E/S a un mulo de DMA mediante un busde E/S. Se reduce a uno el nero de interfaces de E/S en el mulo deDMA y es una configuraci filmente ampliable

    ****etapas*********ejemplos de estos tipos de interfaces **