TEMA 2: ELEMENTOS FUNCIONALES DE UN ORDENADOR DIGITAL 1. − Estructura básica de un ordenador. 1.1 − Visión genérica de cada unidad y del funcionamiento en conjunto: ◊ Elementos componentes ◊ Funcionamiento 2. La unidad Central de proceso (CPU) 2.1 Concepto 2.2 Elementos característicos: ◊ La unidad de Control (UC) ◊ Unidad Aritmético Lógica ◊ Otros elementos característicos: ♦ Reloj ♦ Longitud de la palabra de datos 3. Buses. 4. Memoria principal. 5. Unidades de E/ S. 1. − ESTRUCTURA BÁSICA DE UN ORDENADOR. La Arquitectura de un ordenador define su comportamiento funcional. El modelo básico de arquitectura empleada en los computadores digitales fue establecido por el alemán John Von Neumann en 1946. Su más importante aportación, fue la de construir un ordenador con un programa almacenado, Neumann proponía un computador que permitía cargar en memoria un programa previamente generado. Esta arquitectura es todavía aunque con pequeñas modificaciones, la que emplean la mayoría de los fabricantes. Esta maquina se compone de cuatro unidades básicas: ⋅ La unidad de E/S ⋅ La memoria principal ⋅ La Unidad aritmético lógica (ALU) ⋅ La Unidad de control (UC) A continuación definiremos de forma genérica la función de cada una de ellas ELEMENTOS COMPONENTES Memoria Principal: Es una unidad dividida en celdas o posiciones de memoria .Cada celda suele estar formada por un conjunto de puntos de memorias o bits, que son el elemento básico de información y cuyos valores cero o uno 1 Todas las celdas son del mismo tamaño (mismo nº de bits) y se emplean para almacenar tanto datos como instrucciones maquinas Unidad aritmético−Lógica. (ALU): como su nombre lo indica es la parte de la CPU que se encarga de todos las operaciones aritméticas básicas (suma, resta, multiplicación, división, etc.) y lógicas (las operaciones: O lógica, Y lógica, Negación, etc.) Unidad de Control. coordina las actividades de la computadora, ejecutando programas en forma ordenada y interactuando con las unidades de entrada y salida. Se encarga de leer una tras otras las instrucciones maquinas del programa almacenado en la memoria principal, y de generar las señales de control necesarias para que el ordenador funcione y ejecute las instrucciones leídas. Unidad de entrada salida. Realiza la transferencia de información con unas unidades exteriores llamadas Periféricos, lo que le permite entre otras cosas cargar datos y programas en la memoria principal y sacar resultados impresos.(Unidades de entrada: Son los elementos que permiten incluir datos al sistema. Ejemplos: teclado, mouse (ratón). joystic, etc¸ Unidades de salida: Son elementos que a diferencia de las unidades de entrada, envían al exterior del sistema información. Ejemplo: Monitor (pantalla), impresora) Unidades periféricas dentro de ellas existen dos grandes tipos: ⋅ Unidades de comunicación con el exterior (impresoras, MODEM) ⋅ Memorias auxiliares (Llamada también de almacenamiento masivo, secundaria o externa )Que sirven de soporte de almacenamiento masivo de datos, y como medio de comunicación con el interior del sistema ( discos duros, CD, disquetes, cintas etc..) FUNCIONAMIENTO Vamos a dejar bien claro el concepto de programa ya que la función primera de un ordenador es la de ejecutar programas. Un programa es un conjunto de instrucciones que son almacenadas secuencialmente en posiciones o direcciones sucesivas de memorias y que serán ejecutadas unas tras otras. En la memoria se encuentran almacenados tanto los datos como las instrucciones que incluye el programa. Por otra parte también tenemos una unidad que es capaz de ejecutar instrucciones, y otra que es capaz de decodificar las instrucciones y controlar la sincronización entre todas las unidades. Entonces es fácil prever que el funcionamiento de un ordenador consistirá en ir extrayendo sucesivamente instrucciones de memoria, interpretarlas y extraer de memoria los operándos implicados en la operación, enviarlos a la unidad que realiza las operaciones y hallar el resultado. Veamos mas formalmente cuales serán las fases de ejecución de una instrucción: ◊ Lectura en memoria para extraer la nueva instrucción a ejecutar ◊ Decodificación de la instrucción y cálculo de las direcciones de los operándos implicados. 2 ◊ Ejecución de la operación de lectura en memoria para extraer las direcciones de memoria de los operando y traslado de estos a la ALU donde se realizará el tratamiento de estos ◊ Almacenamiento del resultado en la posición indicada por la instrucción y cálculo de la dirección de la instrucción siguiente. Este ciclo puede verse alterado cuando el procesador esté habilitado para atender a las peticiones de interrupción.en este caso, al finalizar el procesamiento de la instrucción actual y antes de cargar la siguiente instrucción se salvará el estado del proceso actual y se atenderá la interrupción. Funcionamiento de la Unidad de control: La unidad de Control, como su propio nombre indica, es la encargada de controlar la operación de los componentes de la CPU, y también los elementos externos a ella, mediante el envío de señales de control. Su trabajo consiste en encargarse de: − Controlar la secuencia de instrucciones a ser ejecutadas. − Controlar el flujo de datos entre las diferentes partes que forman un ordenador. − Interpretar las instrucciones. − Regular tiempos de acceso y ejecución en el procesador. − Enviar y recibir señales de control de periféricos externos. Elementos que forman parte de la unidad de control y que desempeñan tareas específicas son: − Decodificador de Instrucciones: Unidad que interpreta el contenido del registro de instrucciones y permite generar las señales adecuadas para ejecutar la instrucción. − Decodificador de Direcciones: Unidad que interpreta la dirección en el registro de direcciones de Memoria (MAR) y selecciona la posición de memoria a ser accedida. − Registros en la unidad de control: Los registros son elementos de almacenamiento, donde se almacenan temporalmente valores durante la ejecución de un programa. En la unidad de control se dispone generalmente de los siguientes registros: − Contador de Programa: Guarda la dirección de la siguiente instrucción a ser ejecutada. − Registro de Instrucciones: Guarda la instrucción en curso de ejecución. − Registro de Estado: Mantiene información "bits de estado" o " flags" con 3 información sobre lo que ha pasado en la operación realizada por la ALU. − Registro de Direcciones de Memoria (MAR): Guarda la dirección del dato que va a ser accedido en la memoria. 2. La unidad central de proceso (UCP/CPU). 2.1. Concepto Es el elemento principal de un ordenador, su verdadero motor. En mayor o menor medida, participa en todos los procesos como elemento de control y coordinación. La unidad central de proceso (UCP o CPU). Esta unidad es la que se encarga del procesamiento de la información. Además de la CPU, también hablaremos de Buses, dispositivos de memoria principal, secundaria y periféricos. La CPU se encarga de realizar las operaciones de cálculo y también de controlar el flujo de datos entre los diversos elementos que forman un ordenador. En un símil biológico la unidad central de proceso puede considerarse el corazón y el cerebro del ordenador. Una unidad central de proceso básica está constituida por un único procesador que se encarga de realizar las operaciones de cálculo y de controlar el resto de dispositivos que forman el ordenador. La tecnología actual permite integrar todos los elementos de un procesador a escala reducida en un sólo componente que se denomina microprocesador. En el microprocesador reside el poder ejecutivo del ordenador, pero sólo puede almacenar en su interior pequeñas cantidades de datos. Cuando la cantidad de datos a procesar es elevada se necesitará de un sistema de almacenamiento asociado al microprocesador, que se denomina memoria principal. En esta memoria se guardan los resultados de los cálculos. Más exactamente la memoria debe cumplir la doble función de mantener tanto las instrucciones como los datos que se utilizan en el proceso que debe ejecutar la CPU. En realidad el procesador consiste en millones de transistores integrados en minúsculos circuitos, y encerrados en una cápsula de cerámica o resina sellada, de forma que no puede abrirse sin destruirlo (Microprocesador). Básicamente, el procesador está formado por la Unidad de Control y la Unidad Aritmético−Lógica, y una zona de registros. La unidad central de proceso es la formada por la unidad de control que lee, interpreta y realiza las instrucciones del programa en ejecución. Una unidad 4 aritmético lógica que ejecuta las operaciones aritméticas y lógicas, y una zona de registros o zona de almacenamiento donde se guardan información relativa al programa que se está ejecutando y al control del propio procesador. Todos los procesadores tienen registros internos de uso exclusivo de este y que los utiliza de forma automática cuando los precise. Estos registros son: ⋅ Registro de instrucciones. En este registro se guardan las instrucciones o códigos de instrucciones a decodificar ⋅ Registro de direcciones este registro guarda las direcciones que se envían a través del bus de direcciones ⋅ Registro de datos se almacenan los datos que llegan al procesador o que parten de el a través del bus de datos. Puesto que la CPU trabaja interpretando y ejecutando instrucciones contenidas en un programa dejemos bien claro el concepto de instrucción. Una instrucción la definíamos como un conjunto de símbolos que representa una orden de operación o tratamiento para la computadora Los ordenadores no son capaces de interpretar directamente un lenguaje de alto nivel. Por el contrario solamente son capaces de interpretar un lenguaje muy restringido (de bajo nivel), lenguaje que se llama de maquina. En general este lenguaje es muy sencillo y se compone de una serie de instrucciones maquinas cuyo conjunto constituye el llamado juego de instrucciones del ordenador. Básicamente los tipos de instrucciones que encontramos en cualquier ordenador son: ◊ Instrucciones para transferencia de datos. Que permite repetir en el operando destino la información almacenada en el operando origen, quedando este ultimo sin modificar. Por ejemplo llevar un dato de la memoria a la ALU o viceversa ◊ Instrucciones de modificación de secuencia. Que permite alterar la secuencia normal de ejecución del programa. De forma genérica se dice que son instrucciones de salto o de bifurcación puesto que en vez de pasar a la instrucción que ocupa la posición siguiente, salta a ejecutar las instrucciones que se encuentran en otra posición de memoria ◊ Instrucciones aritméticas ó lógicas. Que son las que realizan las operaciones aritméticas o lógicas sobre los operando ◊ Instrucciones de comparación. Por ejemplo comparar dos datos para ver si uno de ellos son iguales mayor o menor que otro. ◊ Instrucciones de entrada / salida. En realidad son instrucciones de transferencia donde el destino ó el origen es un registro de un periférico. Por ejemplo de entrada o lectura llevar un dato de una unidad de entrada a la memoria o de salida llevar un dato de la memoria a una unidad salida 2.2 Elementos característicos: Una CPU tiene dos componentes fundamentales, la unidad aritmético−lógica y la unidad de control. Además otros elementos característicos son la frecuencia de reloj, la longitud de la palabra de datos. − LA UNIDAD ARITMETICO−LOGICA (UAL/ALU) 5 Función Es la encargada de tratar los datos, ejecutando las operaciones requeridas de acuerdo con el programa en curso, según La unidad de control vaya enviándole los datos correspondientes e indicándole que operación debe realizar. Las operaciones que esta unidad es capaz de realizar son muy elementales, de hecho muchos ordenadores basan su unidad aritmética en un simple sumador−restador rápido en paralelo de manera que todas las tareas que deba realizar son descompuestas en paso elementales para que la ALU sea capaz de ejecutarlos. La UAL está formada por uno o más operadores. Un operador es un circuito electrónico capaz de realizar una operación aritmética o lógica, es por tanto una unidad funcional capaz de realizar una o varias operaciones tales como suma, resta, and, or etc. Según el ámbito de operación los operadores pueden ser generales ý especializados. Los operadores generales pueden realizar todo tipo de operaciones mientras que los especializados se restringen a una sola clase. Dependiendo de su realización los operadores pueden ser Combinacionales y secuénciales. − LA UNIDAD DE CONTROL (UC /CU ). Función La unidad de control tiene como objetivo analizar e interpretar el código de operación . En función de estos análisis se generan todas las señales de control (micro ordenes) que gobiernan el funcionamiento de los distintos los elementos que componen el ordenador. Su misión se resume en las siguientes secuencias de operaciones: ⋅ Obtención de la instrucción de memoria que indica el contador de secuencia e incremento del mismo. ⋅ Decodificación de la instrucción obtenida e interpretación de la misma. ⋅ Ejecución de la instrucción ⋅ Control y resolución de las situaciones conflictivas que se produzcan. ⋅ Comunicación con los elementos periféricos. En esta unidad se encuentra el decodificador de instrucciones −DI− dispositivo que traduce las instrucciones del programa contenida en la memoria a micro−ordenes grabada internamente en el chips, para saber los pasos que debe realizar para ejecutar la instrucción. 2.3 Otros elementos característicos RELOJ El ordenador funciona en modo síncrono con arreglo a una secuencia ordenada de operaciones en el tiempo. Para que todo el sistema vaya en sincronía (que cada elemento funcione cuando le corresponde) es necesario contar con un generador de 6 impulso (un reloj). El reloj marca el principio, la duración y el final de cada operación. El número de impulsos generados se mide en millones de pulsos por segundo MHz. La frecuencia del reloj determina el número de instrucciones que es capaz de procesar por segundo. A mayor frecuencia mayor numero de instrucciones a procesar. La frecuencia del reloj determina la velocidad de funcionamiento y proceso de la UCP (micro) y por tanto de todo el sistema .el periodo de esta señal medido en segundo se denomina ciclo de reloj. A partir de esa señal de reloj, el procesador realiza una serie de ciclos de trabajo denominados ciclo maquina. Este ciclo maquina está formado por dos fases denominadas: fase de búsqueda y fase de ejecución. LONGITUD DE LA PALABRA DE DATOS. Determina la cantidad de información que es capaz de procesar simultáneamente la unidad central de proceso en cada pulso de reloj. 3. BUSES. En los puntos anteriores, hemos visto como por el ordenador circula información, direcciones, datos, etc., son pasados de la memoria a la unidad de control, de la unidad de control a la memoria, etc. Esta circulación se realiza por medio de los buses. Los buses son unos conjuntos de cables (hilos, pistas) encargados de que comunican todos los componentes del ordenador entre si. Por cada hilo o pista se puede transmitir un bit y normalmente estos cables suelen estar impresos en el propio circuito de la placa madre. Las trasmisiones que se pueden realizar por estos buses se pueden realizar en serie o paralelo: − Serie, transmitir varios bits por el mismo hilo uno detrás de otro − Paralelo, transmitir conjuntos de bits a la vez uno por cada hilo. Tipos de buses según el tipo de información que circula por ellos: − Bus de instrucciones y datos: se emplea para recibir los datos que se encuentran almacenados en la memoria RAM. También recibe y canaliza las instrucciones que debe ejecutar el programa. − Bus de direcciones: se emplea por la unidad de control para indicar a la memoria la dirección que se va a leer o grabar. − Bus de control: se encarga de informar a la unidad de control de la conexión de los periféricos, el estado de los puertos, etc. En definitiva, controla el estado de los distintos dispositivos del ordenador. Estos buses se caracterizan por el número y la disposición de sus líneas (cada una de ellas es capaz de transmitir un bit, que es la unidad mínima de transmisión de la información). Concretamente en los primeros PC era de 8 bits; es decir solamente contaban con 8 líneas de datos. En la actualidad, los encontramos con 16, 32, 64 y 7 hasta 128 bits (líneas). 4. Memoria Principal: La palabra memoria se refiere a cualquier dispositivo que almacena información binaria (datos e instrucciones) para su uso posterior. Según esta definición la memoria del ordenador se divide en dos categorías: Memoria principal (RAM y ROM) y memoria secundaria Memoria secundaria: es la memoria de almacenamiento masivo de información que se utiliza para almacenar datos y programas para su posterior utilización. Dado el carácter volátil de la memoria central y de su limitada capacidad, este tipo de memoria es imprescindible en cualquier sistema informático. La información debe ser transferida a la memoria principal antes de poder ser usada por el ordenador. Los dispositivos que se utilizan como almacenamiento secundario se clasifican según la técnica utilizada en su soporte para almacenar la información en: Medios Magnéticos: Disquetes cintas magnéticas y disco duros Medios ópticos: CDROM CD−RW y DVD Memoria principal: Denominada también memoria central o memoria de trabajo, es la encargada de almacenar los programas o instrucciones que se van a ejecutar, así como los datos, cálculos intermedios y resultados. Es decir, almacena todo aquello que ha de ser procesado por la CPU. Solo los datos que estén almacenados en la memoria serán procesables por la CPU. Es decir, aquellos que estén contenidos en algún dispositivo de almacenamiento externo deben ser previamente cargados en la memoria. La estructura de la memoria deberá ser tal que permita: ⋅ El almacenamiento rápido de toda clase de información. ⋅ Conservar la información almacenada. ⋅ Transferir lo más rápido posible los datos desde y hacia la CPU. ⋅ Borrar la información que no necesite estar almacenada. La memoria se estructura en posiciones o celdas, cada una de las cuales tiene asignada una dirección que la identifica y la diferencia de las demás. Es decir, el almacenamiento es direccionado. Se llama mapa de memoria a todo el espacio direccionable por el mecanismo de direccionamiento. Su tamaño depende del nº de bits que la CPU es capaz de manejar para las operaciones de direccionamiento. Las líneas de direcciones entre la UCP y la memoria reciben el nombre de bus de direcciones. Por ejemplo si una memoria está formada por 8 celdas, necesitaremos de tres lineas de direcciones para poder alcanzar todo el rango, ya que con tres bits podemos generar 8 combinaciones binarias distintas REGISTRO DE MEMORIA 8 Un elemento fundamental es el registro de memoria, que interviene en la lectura y escritura de información en la misma. Este registro está formado por los siguientes componentes: ◊ Registro de direcciones de memoria (RD): contiene la dirección de la posición de memoria donde se encuentra o va a ser almacenada la información. ◊ Registro de datos de memoria (RM): es el registro de unión entre la memoria central y el resto de las unidades del ordenador. Contiene la información extraída o que va a ser grabada según la dirección contenida en el registro de direcciones. Si la información que contiene es un dato, aparecerá representado de forma binaria. Si es una instrucción lo que contiene, el registro de memoria estará dividido en dos partes: ⋅ Código de instrucción: contiene el tipo de operación a realizar. ⋅ Código de operando: contiene los datos (direcciones de memoria de estos) que intervienen en la operación. ◊ Unidad de Control de Memoria (UCM) o selector de memoria: es el circuito encargado de seleccionar la posición de memoria donde se va a escribir o leer. Sincroniza y controla las operaciones de memoria. Sobre la memoria solo se pueden efectuar dos operaciones básicas, lectura y escritura. ⋅ Lectura: Donde los dispositivos de memoria deben recibir una dirección para que les indique la posición de la que se quiere extraer la información previamente depositada en ella. ⋅ Escritura : Donde además de la dirección de memoria se debe suministrar la información que se desea grabar Según la naturaleza del medio las memorias se dividen en: ⋅ Magnéticas: Se construyen de manera que presente un estado preferente de magnetización, si se magnetiza mediante un campo externo, según el sentido de magnetización tendrá un estado u otro. (núcleos de ferrita) ⋅ De semiconductores: Son componentes electrónicos de un material semiconductor que según la presencia ó no de corriente en sus entradas produce la presencia o ausencia de corriente en su salida(condensadores, biestables transistores.) ⋅ ópticas: Sobre un material sensible al calor se graban muescas con un rayo láser; para su lectura se hace incidir el rayo láser a menor potencia y midiendo el ángulo de reflexión se reconoce las muescas y la ausencia de estas. Según esta clasificación, años 50 eran magnéticas, desde los 60 hasta hoy de semiconductores, a partir de los año 80 algunas Rom ópticas. Según el tiempo de permanencia de la información las memorias suelen ser: ⋅ Permanentes no se puede alterar la información son de solo lectura ( ROM). ⋅ Duradera la información permanece inalterada hasta que se realice una nueva escritura sobre ella ⋅ Volátil la información debe ser alimentada con energía para que no desaparezca. ⋅ De refresco: El contenido debe ser repuesto periódicamente ya que aunque esté alimentada se degrada con el tiempo. Es característico de los condensadores. Características generales de las memorias 9 ⋅ Tamaño o capacidad de la memoria. Dependiendo de la capacidad de memoria del equipo los procesos serán mas o menos rápidos ⋅ Volatilidad : característica que nos indica si una memoria pierde su contenido cuando se desconecta la tensión de alimentación ⋅ Tiempo de acceso( ta): tiempo necesario desde que se le pide un dato a la memoria, hasta que este se recibe (ta lectura )o bien el tiempo necesario para almacenar un dato en memoria ( ta escritura). Se mide en nanosegundo y a meno tiempo de acceso mas rápido se puede acceder a una posición de memoria. ⋅ Frecuencia o velocidad de acceso o refresco. Nos determina si es compatible con las demás frecuencias de trabajo del sistema. Por ejemplo si tenemos un ordenador que trabaja a una frecuencia de bus de datos de 133Mhz, un microprocesador que trabaja a 667Mhz, si la ram solo trabaja a 66Mhz, el rendimiento del equipo será malo. ⋅ Re−escritura : propiedad que nos indica si una memoria se puede leer y escribir (RAM) o leer solamente ( ROM) ⋅ Modo de acceso : modo de obtener los datos almacenados en la memoria : Secuencial: para leer una posición de memoria necesita posar por todas las direcciones anteriores ej cintas magnéticas y Aleatorio: También denominado por palabra directo o selectivo. Se accede directamente sin pasar por las anteriores. Ej memoria RAM y ROM Las memorias emplean el almacenamiento binario, o sea que la información más elemental registrada es el BIT, a cuyo soporte físico le llamamos celdilla o punto de memoria Dependiendo de la tecnología empleada en la fabricación de esos puntos de memorias es la que nos lleva a que existan diversos tipos de memorias De lectura y escritura o RAM. ⋅ DRAM (Dynamic RAM) Estas memorias son de una gran capacidad de almacenamiento, y necesitan refrescarse periódicamente para que la información que contiene no se pierda, ese refresco se realiza por cada ciclo de reloj. ⋅ Memoria SRAM (Static Ram) de menor capacidad que la anterior pero bastantes más rápidas. Son mas caras que las anteriores ⋅ SDRAM (Syncrhronous Dynamic RAM). Estas memorias incorporan la capacidad de la DRAM y la velocidad de la SRAM.. Estas memorias son las que incorporan en la actualidad la mayoría de los ordenadores personales. ⋅ DDRAM llamada memoria de doble recarga. Es una memoria de funcionamiento complejo pero tiene la ventaja de ser el doble de rápida que las anteriores. ⋅ VRAM (Video Random Access Memory). Memoria tipo. Este tipo de memoria adquiere mucha relevancia con la incorporación de las tecnologías multimedia La memoria RAM sigue evolucionando de forma muy rápida ya que la evolución del software implica cada vez mayores prestaciones. De solo lectura ROM. Contienen programas especiales, implementados por el fabricante, que sirven para 10 cargar e iniciar el arranque del ordenador. ⋅ De solo lectura ROM y PROM. La información se graba en el proceso de fabricación(ROM) o en un proceso posterior irreversible(PROM) ⋅ Permanente de solo lectura con capacidad de borrado EPROM . Pueden borrarse mediante procesos especiales . ⋅ Memorias Flash. Tienen la ventaja que pueden ser programada y borrar su contenido. Son mas caras que las anteriores 5. UNIDADES DE ENTRADA/SALIDA (trabajo de periféricos para los alumnos) INTRODUCCIÓN Son los circuitos electrónicos que permiten la comunicación o intercambio de información entre la CPU o la memoria central con el exterior. Bus del sistema ..... Tal como vemos en la figura en el sistema de entrada / salida encontramos dos partes fundamentales: ◊ Periféricos Son dispositivos electromecánicos, electromagnéticos, o electrónicos que permiten la comunicación directa con el mundo exterior. Distinguimos dos tipos: ⋅ Periférico de almacenamiento masivo o memorias auxiliares. Dispositivos cuya función es la de almacenar una gran cantidad de información de forma permanente ya que el contenido de la memoria RAM se pierde cuando se desconecta el sistema. La información que contiene para ser procesada debe ser trasladada a memoria central. Existen numerosos sistemas de almacenamiento masivo pero los mas utilizados son: unidades de disco magnéticos ( discos rígidos, discos flexibles) unidades de cintas magnéticas ( carretes de cintas, cintas de casete o de backup), unidades de discos ópticos(cdrom, cdrw , dvd discos magnetos ópticos) ⋅ Periféricos de E y/o S de datos en modo local : como por ej. Impresoras, Teclados, pantallas trazadores gráficos, (plotters), Escáneres, ratón, ⋅ periféricos de comunicación de datos: permiten la comunicación con dispositivos remotos como por ejemplo módem etc. ◊ Interfaz: es un sistema hardware /software que permite la comunicación entre el periférico y la CPU o memoria central (comunica al sistema con el mundo exterior). Es decir, es el conjunto de circuitos y programas que se utilizan para resolver las diferencias que puedan existir entre el procesador y cada uno de los periféricos. Sus funciones son: ⋅ Adaptar las señales: Las características eléctricas de las señales no son idénticas en el interior y el exterior por ejemplo un periférico exterior puede funcionar a 12 v y la cpu en su interior funcionar a 3,5 v ⋅ Descarga de la CPU : Las velocidades de transmisión de los periféricos varían desde unos pocos bytes por segundo (apenas superan los kilohercios), a centenares de millones de bytes por segundo (Megahercios) .Siendo lo mas frecuente que la velocidad de estos sea bastante menor que la de la CPU ⋅ Adaptación de los códigos: El formato de los datos que maneja los periféricos 11 suele ser distinto al que maneja el procesador ⋅ Atención y sincronización con los periféricos: El modo de operación de muchos periféricos difiere del de la UCP y del de la memoria, por la que debe existir una sincronización en el momento de la comunicación. Estructura general de una unidad de E/S. Las unidades de entrada salida son dispositivos que en algunos casos pueden llegar a ser más potentes y complejos que el propio microprocesador. BUSES DEL SISTEMA ⋅ Registros: Las unidades de e / s disponen de una serie de registros que las hace funcionar. • Registro de Datos: donde se almacena temporalmente la información a transmitir hacia o desde el periférico • Registro de Control: donde se realiza la configuración de la unidad de e / s. Es decir mediante este registro vamos a especificar su modo de funcionamiento • Registro de Estado: mediante este registro, la unidad de e / s nos va a dar información de cómo se encuentra el dispositivo. Es decir si está ocupado, libre, realizando cierta operación etc. ⋅ Bloque de decodificación de direcciones / acceso a buses: contiene la lógica necesaria para que la unidad de e /s partiendo de la dirección generada por la CPU averigüe si está intentando comunicarse con ella. ⋅ Controlador: Reciben y decodifican el código de operación periférica y además indican los Estados en que se encuentran los dispositivos. También se encargan de interpretar las instrucciones que reciben del ordenador y de emitir las órdenes para que realice la operación. ⋅ Buses del sistema: Se requieren para llevar a cabo la comunicación o el intercambio de información entre los dispositivo de E/S y la memoria o CPU Direccionamiento de los dispositivos de e /s. Generalmente un ordenador dispone de más de un dispositivo conectado. Es necesario disponer de algún mecanismo para seleccionar uno de ellos para que participe en una operación de e /s. Sabemos que todos los dispositivos de e /s se conectan al bus del sistema, el cual tiene tres conjuntos de líneas: (datos, direcciones y señales de control). Si el bus de direcciones consta de n líneas se podrán especificar 2n direcciones distintas. Cada una de ella especificará lo que llamaremos una puerta de e / s. Cada periférico se comunicará con la CPU mediante una o varias puertas. La CPU puede seleccionar un dispositivo colocando su dirección en las líneas de dirección del bus 12 Solo aquel dispositivo conectado a la puerta a la que corresponda esa dirección deberá responder a las órdenes que la CPU dará a través de las señales de control. Es necesario establecer un mecanismo de decodificación que convierta cada dirección en una señal de selección de la puerta correspondiente, La decodificación puede ser: ⋅ Centralizada mediante el uso de decodificadores ⋅ Distribuida Cada puerta reconoce su dirección mediante un detector de dirección particular. Inconvenientes: El bus de direcciones además de estar conectado a las unidades de E/S también esta conectado a la memoria. Por tanto habrá que diferenciar si se desea acceder a memoria o a unidad de E/S. Para solucionarlo se han desarrollado dos tipos de mapa de memoria: ⋅ Mapas de memoria conjuntos: En este método se reserva una parte del mapa de memoria para los dispositivos y el resto para la memoria. Dependiendo de la posición enviada por el bus de direcciones accederemos a memoria o a los dispositivos de entrada / salida. Esta disposición tiene como ventaja que se utilizan las mismas instrucciones para acceder a la memoria como a los dispositivos de E/S, pero como inconveniente el que los dispositivos de E/S restan posiciones de memoria. ⋅ Mapas de memoria separados. En este método se utilizan dos mapas uno para la memoria y otro para los dispositivos. Es decir una misma dirección puede acceder tanto a dispositivo de E/S como a memoria. Para identificar a cual de las dos e se tiene que dirigir se utiliza una línea adicional al bus denominada M/IO (Memory / Input Output). Esta línea se pondrá a nivel alto cuando se quiera acceder a la memoria y a nivel bajo cuando se quiera acceder a los dispositivos de E / S. Para que la CPU pueda conocer con quien hay que realizar la operación debe tener instrucciones diferentes. Es decir instrucciones que signifiquen lo mismo pero que indiquen si la operación debe realizarse con la memoria o con los dispositivos de E/S. esta disposición tiene como ventaja que se aprovecha al máximo la memoria y como inconveniente el tener que añadir una línea más en el conexionado de los dispositivos de E/S y memoria, además de emplear diferentes instrucciones, dependiendo si la operación debe realizarse con la memoria o con los dispositivos de E/S. Memoria CPU Unidad de E/S Interfaz de E/S Periférico 1 Periférico n REGISTROS 13 Acceso a buses controladores 14