viernes, 4 de mayo de 2012


COMUNICACION INTERNA DE UNA COMPUTADORA

BUSES
Se denomina bus, en informática, al conjunto de conexiones físicas (cables, placa de circuito impreso, etc.) que pueden compartirse con múltiples componentes de hardware para que se comuniquen entre sí. El propósito de los buses es reducir el número de rutas necesarias para la comunicación entre los distintos componentes, al realizar las comunicaciones a través de un solo canal de datos. Ésta es la razón por la que, a veces, se utiliza la metáfora "autopista de datos".
En el caso en que sólo dos componentes de hardware se comuniquen a través de la línea, podemos hablar de puerto hardware( puerto serial o puerto paralelo).

BUS LOCAL
El bus VL no sustituye al bus ISA sino que lo complementa. Un PC con bus VL dispone para ello de un bus ISA y de las correspondientes ranuras (slots) para tarjetas de ampliación. Además, en un PC con bus VL puede haber, sin embargo, una, dos o incluso tres ranuras de expansión, para la colocación de tarjetas concebidas para el bus VL, casi siempre gráficos. Solamente estos slots están conectados con la CPU a través de un bus VL, de tal manera que las otras ranuras permanecen sin ser molestadas y las tarjetas ISA pueden hacer su servicio sin inconvenientes. El VL es una expansión homogeneizada de bus local, que funciona a 32 bits, pero que puede realizar operaciones a 16 bits. VESA presentó la primera versión del estándar VL-BUS en agosto de 1992. La aceptación por parte del mercado fue inmediata. Fiel a sus orígenes, el VL-BUS se acerca mucho al diseño del procesador 80486. De hecho presenta las mismas necesidades de señal de dicho chip, exceptuando unas cuantas menos estrictas destinadas a mantener la compatibilidad con los 386.
La especificación VL-Bus como tal, no establece límites, ni superiores ni inferiores, en la velocidad del reloj, pero una mayor cantidad de conectores supone una mayor capacitancia, lo que hace que la fiabilidad disminuya a la par que aumenta la frecuencia. En la práctica, el VL-BUS no puede superar los 66 Mhz. Por este motivo, la especificación VL-BUS original recomienda que los diseñadores no empleen más de tres dispositivos de bus local en sistemas que operan a velocidades superiores a los 33 Mhz total disminuye: a 40 Mhz solo se pueden incorporar dos dispositivos; y a 50 Mhz un único dispositivo que ha de integrarse en la placa. En la práctica, la mejor combinación de rendimiento y funciones aparece a 33 Mhz.
Tras la presentación del procesador Pentium a 64 bits, VESA comenzó a trabajar en un nuevo estándar (VL-Bus versión 2.0). La nueva especificación define un interface de 64 bits pero que mantienen toda compatibilidad con la actual especificación VL-BUS. La nueva especificación 2.0 redefine además la cantidad máxima de ranuras VL-BUYS que se permiten en un sistema sencillo. Ahora consta de hasta tres ranuras a 40 Mhz y dos a 50 Mhz, siempre que el sistema utilice un diseño de baja capacitancia.
En el nombre del bus VL queda de manifiesto que se trata de un bus local. De forma distinta al bus ISA éste se acopla directamente en la CPU. Esto le proporciona por un lado una mejora substancial de la frecuencia de reloj (de la CPU) y hace que dependa de las líneas de control de la CPU y del reloj. A estas desventajas hay que añadirle que no en todos los puntos están bien resueltas las especificaciones del comité VESA, hecho que a la larga le llevará a que el éxito del bus VL se vea empañado por ello. En sistemas 486 económicos se podía encontrar a menudo, pero su mejor momento ya ha pasado.

BUS DE DATO
La propia palabra “Bus” ya está anunciando el “transporte” de algo, y en este caso, se refiere a datos para procesarse por un equipo informático. El Bus de Datos soporta tanto la información como las instrucciones declaradas sobre la misma, de tal forma de gestionar operaciones. De este modo, se da lugar a 3 tipos de “Buses”: Datos, Direcciones y Control. Mientras el Bus de Datos se encarga de mover la información por los componentes de hardware del sistema de computación, tanto de Entrada (teclado, mouse, etc) como de salida (monitor, impresora, etc.), el Bus de Direcciones ubica los datos en el Sub-sistema de Memoria teniendo relación directa con los procesos de CPU, y finalmente el Bus de Control tiene la tarea de marcar el estado de una instrucción dada a la PC. Es común dibujar y describir el Bus de Datos como una autopista de información y órdenes, porque no es otra cosa que eso. Se rige por la cantidad de bits capaz de soportar en el camino, y en este marco, el CPU cumple la función primaria. Es por ello, que hoy tenemos procesadores de 64 bits en lugar de 32 ó 16, porque la evolución de la PC y la exigencia informativa de los usuarios lo demandaron. Es común dibujar y describir el Bus de Datos como una autopista de información y órdenes, porque no es otra cosa que eso. Se rige por la cantidad de bits capaz de soportar en el camino, y en este marco, el CPU cumple la función primaria. Es por ello, que hoy tenemos procesadores de 64 bits en lugar de 32 ó 16, porque la evolución de la PC y la exigencia informativa de los usuarios lo demandaron.

BUS DE DIRECCION
En el bus se encuentran dos pistas separadas, el bus de datos y el bus de direcciones. La CPU escribe la dirección de la posición deseada de la memoria en el bus de direcciones accediendo a la memoria, teniendo cada una de las líneas carácter binario. Es decir solo pueden representar 0 o 1 y de esta manera forman conjuntamente el número de la posición dentro de la memoria (es decir: la dirección). Cuanto más líneas haya disponibles, mayor es la dirección máxima y mayor es la memoria a la cual puede dirigirse de esta forma. En el bus de direcciones original había ya 20 direcciones, ya que con 20 bits se puede dirigir a una memoria de 1 MB y esto era exactamente lo que correspondía a la CPU. Esto que en le teoría parece tan fácil es bastante mas complicado en la práctica, ya que aparte de los bus de datos y de direcciones existen también casi dos docenas más de líneas de señal en la comunicación entre la CPU y la memoria, a las cuales también se acude. Todas las tarjetas del bus escuchan, y se tendrá que encontrar en primer lugar una tarjeta que mediante el envío de una señal adecuada indique a la CPU que es responsable de la dirección que se ha introducido. Las demás tarjetas se despreocupan del resto de la comunicación y quedan a la espera del próximo ciclo de transporte de datos que quizás les incumba a ellas. Este mismo concepto es también la razón por la cual al utilizar tarjetas de ampliación en un PC surgen problemas una y otra vez, si hay dos tarjetas que reclaman para ellas el mismo campo de dirección o campos de dirección que se solapan entre ellos.

BUS DE CONTROL
El bus de control (en ocasiones denominado bus de comando) transporta las órdenes y las señales de sincronización que provienen de la unidad de control y viajan hacia los distintos componentes de hardware. Se trata de un bus bidireccional en la medida en que también transmite señales de respuesta del hardware.
El bus de control es una colección de líneas que transportan un conjunto de señales cuyo propósito es la sincronía de todas las operaciones efectuadas por el CPU con los diferentes subsistemas de un equipo de cómputo, destacan las líneas para escritura (write) y lectura (read) de datos, el reloj del sistema, líneas de interrupción, líneas de estado, etc. El uso de éstas líneas se comprenderá mejor conforme se avance en éste curso. Los procesadores de la familia 80x86 proveen dos espacios diferentes de direccionamiento, uno para la  memoria y otro para la E/S, mientras que el direccionamiento de memoria varía según el procesador, las líneas de E/S son siempre de 16 bits, lo que permite direccionar 65,536 localidades diferentes. Algunas líneas de control son las encargadas de decidir qué direcciones son para memoria y cuáles son para E/S. El Bus de Control transporta señales de estado de las operaciones efectuadas por el CPU con las demás unidades. Organiza y redirige la información hacia el bus pertinente para la información que se tiene que transmitir. Es el bus encargado de hacer el direccionamiento, quién realiza toda la función de direccionar es el controlador, diferente para cada tipo de dispositivo.

BUS NORMALIZADORES

Nivel mecánico: En el nivel mecánico deben definirse aspectos tales como el tipo de soporte, el número de hilos del bus, el tipo de conector, etc. Por ejemplo, en los buses para la conexión de placas impresas, hay que definir, entre otras cosas, la altura de las placas, los conectores y las posiciones de éstos, para garantizar la compatibilidad de las distintas placas.
 Nivel eléctrico El nivel eléctrico (u óptico, en el caso de emplear como soporte la fibra óptica), debe especificar el circuito equivalente de los dispositivos que se conectan a las líneas del bus, tanto de los emisores como de los receptores. También debe especificar las tensiones y corrientes utilizadas para establecer el valor de las señales. En este nivel, debe quedar definida la forma en la que los distintos dispositivos deben conectarse eléctricamente.
Nivel lógico Este nivel define estáticamente todas las líneas del bus, estableciendo las equivalencias entre los valores eléctricos de las señales y sus valores lógicos. Por ejemplo, se definirá que los hilos 0-7 su nivel alto (5V) equivale a un 1 lógico y los hilos 8-15 su nivel activo es a nivel bajo (0V).
Nivel de temporización básica En este nivel se establecen los cronogramas para la realización de la operación más elemental del bus, esto es, de un ciclo.
Nivel de transferencia elemental Este nivel se establece el procedimiento empleado para realizar una transferencia de un dato por el bus. En el caso de un bus de ciclo completo, este nivel coincide con el anterior puesto que la temporización básica establece todas las condiciones necesarias para transferir un dato. Sin embargo, en el caso de un bus de ciclo partido, se especifican las ranuras que forman cada tipo de ciclo o transferencia.
Nivel de transferencia de bloque En algunos buses, la operación básica esta formada por una serie de transferencias elementales, que tiene por objetivo el transferir un bloque de información con entidad propia. En este nivel, deberá definirse el protocolo de comunicación empleado para realizar esta transferencia de bloque. Se definirán aspectos tales como cabeceras, codificación de los datos para detección de errores, procedimientos de recuperación para el caso de error, identificación del receptor, etc. Todos los buses poseen especificaciones normalizadas, como son: - protocolos de transmisión de datos, - velocidades y temporización de las transferencias, - anchuras de los sub-buses, - y sistema físico de conexión (conectores estandarizados).
Los Buses normalizados más conocidos son:
S-100 Bus (IEEE 696). Puede considerarse como el primer bus normalizado para microcomputadores, siendo introducido por Atari para su computador 8080 (sistema de 8 bits). En total disponia de unos 100 hilos. CAMAC (o IEEE 583). El bus CAMAC (“ComputerAutomatedMeasurement and Control”) Se introdujo para interconectar instrumentos de medida nucleares en 1969. GPIB ( o IEEE 488). El GPIB (“General Purpose Interface Bus”) fue ideado por Hewlett Packard (1965 a 1975) usa 24 hilos, 8 de los cuales son para datos y el resto para señales de control. Multibus (o IEEE 796). Bus de 16 bit de datos introducido por Intel. En la actualidad hay una versión mejorada llamada Multibus-II (IEEE 1296) para transferir datos de 32 bits. ISA Bus. El bus ISA (“Industrial Standard Architecture”), es el bus introducido con el IBM-PC. Tiene 64 hilos de los cuales 8 son para datos. ISA AT Bus. Fue introducido con los IBM-AT (80286). Ideado para arquitecturas de 16 bits, posee subdirecciones de 24 bits (direcciona hasta 16 Mbytes) y es compatible, como no, con su antecesor de 16 bits. MCA. (“Micro-ChannelArchitecture”) fue introducido por IBM en 1987 en sus equipos PS/2. Es un bus para arquitecturas de 32 bits y es 10 veces más rápido que el ISA AT, llegando a transferir hasta 20 Mbits/seg. Ampliación de Estructura de Computadores. Curso 2010-11 3º de Ingeniería Informática. Vicente Arnau LlombartPag. 5 20/09/2010 EISA (“ExtendetIndustrySatandardArchitecture”). Es un bus ideado por 9 fabricantes de ordenadores, para arquitecturas de 32 bits. Posee velocidad de transferencia de 33Mbits/seg. Es compatible con el bus ISA. Este bus puede solo ser controlado por microprocesadores 80386, 80486 o superiores, y es autoconfigurable.
Antes cada fabricante definía sus buses lo cual dificultaba mucho la comunicación entre distintos componentes. Para facilitar la interacción entre componentes de distintos fabricantes los buses se han “normalizado”. Siguen un estándar acordado previamente. Un bus debe cumplir las siguientes especificaciones:

No hay comentarios: