Está en la página 1de 19

“Buses”

Introduccion a los buses


Estructuras y tipos de un bus
Protocolo de transferencias
Protocolo de arbitraje
Jerarquia de buses
Bus informático
Buses de comunicación en un circuito impreso. En arquitectura de computadores, el bus es un sistema digital que
transfiere datos entre los componentes de una computadora o entre computadoras. Está formado por cables o pistas
en un circuito impreso, dispositivos como resistencias y condensadores además de circuitos integrados.

En los primeros computadores electrónicos, todos los buses eran de tipo paralelo, de manera que la comunicación
entre las partes del computador se hacía por medio de cintas o muchas pistas en el circuito impreso, en los cuales
cada conductor tiene una función fija y la conexión es sencilla requiriendo únicamente puertos de entrada y de salida
para cada dispositivo.

La tendencia en los últimos años es el uso de buses seriales como el USB, Custom Firewire para comunicaciones con
periféricos y el reemplazo de buses paralelos para conectar toda clase de dispositivos, incluyendo el microprocesador
con el chipset en la propia placa base. Son conexiones con lógica compleja que requieren en algunos casos gran
poder de cómputo en los propios dispositivos, pero que poseen grandes ventajas frente al bus paralelo que es menos
inteligente.

Existen diversas especificaciones de bus que definen un conjunto de características mecánicas como conectores,
cables y tarjetas, además de protocolos eléctricos y de señales.
e ntre •El bus dedicado tra
a m i ento exión lógicaentre ta a la memoria de maner
distinta que a los periféric a
i on con tos itos os (utiliza un bus especia
• Func ermitir la iando da os circu
p v m
contrario que el bus único
que los considera a ambos
l) al
e s la de digital, en de los mis parte de como posiciones de mem
s oria (incluso equipara las
OBu tema entro man
d e l MICR de un sis : desde d s que for operaciones E/S con las de
lectura/escritura en
nción emas enes pleto memoria). Este bus especi
los
La fu s subsist tintos órd itales com i cos por la al que utiliza el bus dedica
do
n t o d is d i g t ál tiene 4 componentes fund
n
disti itivos de e q uipos or
e
es m cibidas co n amentales:
s a c t
dispo dos, hast s. ndu
en co enviadas
y re
e enc
arga
e g r a a do r a do s o y s Datos: Intercambio de inf
int o mput a
n bas s que son el bus dad s señales ormación entre la CPU y
e r c e s t á per iféricos. los
sup b u se s
lé c t r ic a
e r f az d
ile s. L a
e s de
los les e a int s út eñal Control: Lleva información
ay o ría de iten seña oseen un como dato iones o s per
referente al estado de los
La m se trasm os que p egarlas ir ec c iféricos (petición de inter
d tr ,d e d rupciones).
s
cuale de integra ñales y en de datos Direcciones: Identifica
el pe riférico referido.
a e on
ayud ejar las s asmiten s Sincronización: Tempor
iza las señales de reloj.
an tr •La mayor ventaja de
de m s que se l bu s ún ico es su simplicidad de
le
digita . estructura que le hace ser
m ás ec onómico, pero no
ol
contr permite que se realice a la
vez transferencia de
información entre la mem
oria y el procesador y ent
los periféricos y el procesa re
dor.
• ESTRUCTURACIÓN DE LOS BUSES Por otro lado el bus dedica
do es mucho más flexible
permite transferencias sim y
ultáneas. Por contra su
estructura es más comple
Existen dos organizaciones físicas de mayores.
ja y por tanto sus costes so
n
operaciones E/S que tienen que ver con los
buses que son:
Bus único
Bus dedicado
•La primera gran diferencia entre estas dos
tipos de estructuras es que el bus único no
permite un controlador DMA (todo se
controla desde la CPU), mientras que el
bus dedicado si que soporta este
controlador.
BUS ISA: BUS EISA: TIPOS DE
MCA BUS:BUSES
PCI BUS:

RANURA AGP: RANURA MRS:

PCI-E (PCI BUS PCI-X


EXPRESS)
PROTOCOLO DE TRANSFERENCIA
Un protocolo de transferencia de datos es un formato estandarizado de transmisión
de datos entre dos dispositivos. El tipo de protocolo usado puede determinar
variables como el método de comprobación de errores, el método de compresión de
datos y el reconocimiento de fin de archivo. Si todas las redes se construyeran de la
misma manera y todo el software y los equipos de red se comportaran de forma
similar, sólo sería necesario un protocolo para tratar todas las necesidades de
transmisión de datos. En realidad, Internet está formada por millones de redes
diferentes que ejecutan un amplio abanico de combinaciones de hardware y
software. En consecuencia, la capacidad de transmitir contenido multimedia digital de
forma confiable a los clientes depende de un conjunto de diferentes protocolos bien
diseñados.
Los protocolos usados para transmitir contenido basado en Windows Media son el
Protocolo de transmisión en tiempo real (RTSP) y el Protocolo de transferencia de
hipertexto (HTTP).

Servicios de Windows Media administra el uso de estos protocolos mediante


complementos de protocolo de control. El complemento de protocolo de control
recibe la solicitud del cliente de entrada, determina qué acción indica la solicitud (por
ejemplo, iniciar o detener la secuencia), traduce la solicitud a un formato de comando
y, finalmente, envía el comando al servidor. Los complementos de protocolo de
control también pueden devolver información de notificación a los clientes si se
produce una situación de error o un cambio de estado. Servicios de Windows Media
incluye el complemento de protocolo de control RTSP de WMS y el complemento de
protocolo de control HTTP de WMS.

Mientras que los complementos de protocolo de control administran el intercambio de


datos de alto nivel, los protocolos de red básicos como el Protocolo de datagramas
de usuario (UDP) y el Protocolo de control de transmisión (TCP) se usan para
administrar tareas más fundamentales como la conectividad de red y la corrección de
errores de paquetes. El protocolo RTSP se usa en combinación con los protocolos
UDP o TCP.
En el siguiente diagrama se describe el modo en que Servicios de Windows Media
usa diferentes protocolos para negociar conexiones entre un servidor de Windows
Media, codificadores, orígenes de contenido y clientes.
Tipos de transferencias
Tipos de protocolos de
Lectura transferencia:
Escritura
Lectura de bloque Síncrono
Escritura de bloque Asíncrono
Lectura-modificacion-escritura Semisíncrono
Lectura después de escritura Ciclo partido

Tipos de transferencia

Access Time
 La Transmisión síncrona
es una técnica que consiste en el envío de una trama de datos (conjunto de caracteres) que configura un bloque de información comenzando
con un conjunto de bits de sincronismo (SYN) y terminando con otro conjunto de bits de final de bloque (ETB). En este caso, los bits de
sincronismo tienen la función de sincronizar los relojes existentes tanto en el emisor como en el receptor, de tal forma que estos controlan la
duración de cada bit y carácter.
Dicha transmisión se realiza con un ritmo que se genera centralizadamente en la red y es el mismo para el emisor como para el receptor. La
información se transmite entre dos grupos, denominados delimitadores (8 bits).
Características
Los bloques a ser transmitidos tienen un tamaño que oscila entre 128 y 1,024 bytes. La señal de sincronismo en el extremo fuente, puede ser
generada por el equipo terminal de datos o por el módem. Cuando se transmiten bloques de 1,024 bytes y se usan no más de 10 bytes de
cabecera y terminación, el rendimiento de transmisión supera el 99 por 100.
Ventajas
Posee un alto rendimiento en la transmisión
Los equipamientos son de tecnología más completa y de costos más altos
Son aptos para transmisiones de altas velocidades (iguales o mayores a 1,200 baudios de velocidad de modulación)
El flujo de datos es más regular.

También llamada Transmisión Sincrónica. A todo el conjunto de bits y de datos se le denomina TRAMA

Ciclo Ciclo Ciclo

Reloj
Bus Master Bus Slave
Dirección
Dirección
Datos M®S S®M M®S

R/W* Datos

Reloj ESCRITURA LECTURA ESCRITURA


tiempo que debe ser superior a:
t. decodificación + t. setup + t. skew
tiempo que debe ser superior a:
t. setup + t. skew
tiempo que debe ser superior a:
t. hold
 Temporización:
 Tiempo de decodificación (decode time): tiempo necesario para que slave decodifique la dirección
 Tiempo de estabilización (setup time): tiempo antes del flanco de reloj que deben permanecer estables las
señales para asegurar su correcto almacenamiento
 Tiempo de permanencia (hold time): tiempo después del flanco de reloj que deben permanecer estables las
señales para asegurar su correcto almacenamiento
 Tiempo de desplazamiento relativo de las señales (skew time): diferencia de tiempo entre la llegadas al
receptor de dos señales que partieron del emisor simultáneamente
Retardo Relativo (Skew)
Origen Destino

A0
skew

A1

Ventajas y desventajas del


protocolo síncrono
 Ventajas:
 Simplicidad (de diseño y de uso)
 Sólo se necesita una señal (reloj) para llevar a cabo la sincronización
 Mayor velocidad (en relación a protocolo asíncrono)
 Desventajas:
 El periodo de reloj se tiene que adaptar a la velocidad del dispositivo más lento (por lo que suele
usarse para conectar dispositivos homogéneos)
 No existe confirmación de la recepción de los datos
 La necesidad de distribuir la señal de reloj limita la longitud del bus
protocolos de arbitraje
 Función:
 Garantizar el acceso al bus libre de conflictos cuando existen varios masters alternativos
 Procesador + Controladores DMA
 Procesador + Procesador de E/S + Coprocesador matemático + ...
 Sistema multiprocesador
 Tipos de protocolos de arbitraje
 Centralizados: existe un árbitro del bus o master principal que controla el acceso al bus
 Protocolo en estrella
 Protocolo daisy-chain de dos hilos
 Protocolo de tres hilos
 Protocolo de cuatro hilos
 Distribuidos: el control de acceso al bus se lleva a cabo entre todos los posibles masters de una
forma cooperante
 Protocolo de líneas de identificación
 Protocolo de códigos de identificación
Protocolo en estrella
 Cada master se conecta al árbitro mediante dos líneas
individuales: M1 M2 Mn
REQ GNT REQ GNT REQ GNT
 BUS REQUEST (REQ): línea de petición del bus
 BUS GRANT (GNT): línea de concesión del bus

Arbitro

 Varias peticiones de bus pendientes: el árbitro puede aplicar distintos algoritmos de decisión
 FIFO
 Prioridad fija
 Prioridad variable
 Ventajas:
 Algoritmos de arbitraje simples
 Pocos retardos de propagación de las señales (en comparación con protocolos daisy-chain)
 Desventajas:
 Número elevado de líneas de arbitraje en el bus (dos por cada posible master)
 Número de masters alternativos limitado por el número de líneas de arbitraje
Protocolo daisy-chain de 2 hilos
 Dos líneas de arbitraje comunes REQUEST
OUT IN OUT IN OUT

 BUS REQUEST: Línea de Arbitro M1 M2 Mn


petición del bus GRANT
IN OUT IN OUT IN
 BUS GRANT: Línea de
concesión del bus
• Funcionamiento:
• El master que quiere tomar el control del bus activa REQUEST
• Los restantes masters propagan REQUEST hasta el árbitro
• El árbitro activa GRANT
• Si un master recibe GRANT y no pidió el bus, propaga GRANT al siguiente
• Si un master recibe GRANT y tiene una petición pendiente, toma el control del bus
• Prioridades:
• El orden en que se conectan los Masters a las líneas de arbitraje determina
la prioridad de los mismos
Señales del
• Ejemplo: bus i8086 master Mk 1 2 3
REQUEST
IN
Situaciones típicas: REQUEST
1. Mk pide el Bus OUT
Cuando Mk recibe GRANT toma el control del bus GRANT
IN
2. Mk recibe una petición de Mk+1
GRANT
Cuando Mk recibe GRANT la propaga a M k+1 OUT
3. Mk pide el bus Petición local del master Mk
Cuando Mk recibe GRANT toma el control del bus Petición local + Control del bus del master Mk
Mientras Mk controla el bus, recibe una petición de M k+1
Cuando Mk termina de usar el bus, propaga GRANT a M k+1
Protocolo de 3 hilos
 Líneas de arbitraje: GRANT
 BUS REQUEST: línea de petición de bus
M1 M2 Mn
 BUS GRANT: línea de concesión del bus
Arbitro
 BUS BUSY: línea de bus ocupado REQUEST

BUS BUSY

 Funcionamiento:
 Cuando un master toma el control del bus activa BUS BUSY
 Un master solicita el bus activando REQUEST
 El árbitro activa GRANT cuando detecta REQUEST activado y BUS BUSY desactivado
 Si un master recibe GRANT y no ha pedido el bus, entonces propaga GRANT al siguiente
 Un master puede tomar el control del bus si se cumplen las tres condiciones siguientes:
 a) El master tiene una petición local pendiente
 b) La línea BUS BUSY está inactiva
 c) El master recibe el flanco de subida de la señal GRANT
Situaciones típicas
1) M1 solicita el bus. Bus libre
Cuando M1 detecta el flanco de GRANT toma el control del bus
2) M2 solicita el bus. Bus ocupado
M2 debe esperar bus libre y detectar el flanco de GRANT
3) M1 solicita el bus. Bus libre. GRANT activado
M1 debe esperar que GRANT baje y vuelva a subir

REQUEST

GRANT

BUS BUSY

Master M1
1 3
Master M2
2

Master con solicitud Master con el control del bus


del bus pendiente
PROTOCOLO DE 4 HILOS
 Permite solapar la transferencia del ciclo
actual con el arbitraje del ciclo siguiente
GRANT
 Líneas de arbitraje: M1 M2 Mn
 BUS REQUEST: línea de petición de
bus
REQUEST
 BUS GRANT: línea de concesión del bus Arbitro
 BUS BUSY: línea de bus ocupado BUS BUSY
 BUS ACK: línea de confirmación
 La activa el master que solicitó el BUS ACK

bus en respuesta BUS GRANT,


cuando el bus está ocupado
 Cuando está activada el árbitro
queda inhibido
. JERARQUÍA DE BUSES
Por qué es necesaria la jerarquía de buses?
Cuando queremos conectar un gran número de dispositivos nos encontramos con una serie de problemas fundamentales:
La diferencia de velocidad de los dispositivos afecta negativamente al rendimiento global, ya que mientras los dispositivos
lentos realizan una única transferencia, otro dispositivo más rápido podría haber realizado muchas más.
Los buses pueden actuar de “cuello de botella” si la demanda de la transferencia es mayor que la capacidad del bus, los
dispositivos deberán esperar mucho tiempo para poder transmitir.
Existe un mayor retardo de propagación, dado que el bus ha de tener mayor longitud para poder soporta implementar un
mayor número de dispositivos
Ventajas de las jerarquías de buses:
El bus local entre el procesador y la caché aísla el tráfico de E/S del procesador.
Se puede transferir información entre la memoria y la E/S sin interrumpir la actividad del procesador.
El bus de expansión reduce el tráfico en el bus del sistema.
La transferencia entre caché y memoria principal se pueden realizar de forma más eficiente.
Se pueden realizar una transferencia de memoria caché a memoria principal al mismo tiempo que el interfaz recibe
datos desde un dispositivo de E/S
El procesador+caché o el coprocesador tienen la misma “prioridad” en el acceso al bus que todos los dispositivos
conectados al bus de expansión de forma conjunta.
Se elimina el problema de la incompatibilidad.
El bus local y del sistema suelen ser propietarios (no estándar) y están optimizados para cada arquitectura particular.
Los buses de expansión son buses estándares o abiertos (ISA, EISA, PCI, VME, etc.).
Esto permite tener características y especificaciones perfectamente definidas, con conectores estándar, podemos utilizar los
mismos controladores y periféricos en otro computador que disponga del mismo bus estándar
Buses de tipo 0
Los buses de tipo 0 son los buses internos de las pastillas. La utilización de buses internos de gran ancho de palabra unido a la
incorporación de memoria caché interna facilita que se puedan conseguir microprocesadores de grandes prestaciones.

Buses de tipo 1
El bus de tipo 1 es el bus de interconexión de componentes de una placa o circuito impreso.

Buses de tipo 2
Estos buses sirven para interconectar las distintas placas de un modulo, formando lo que se llama el panel posterior. La práctica
totalidad de los computadores actuales se componen de un solo módulo, por lo que no existe bus de nivel 3 y este bus se convierte en el
bus del sistema.

Buses de tipo 3
El bus de tipo 3 o bus del sistema permite interconectar diversos módulos del computador. Hoy en día hay muy pocos sistemas que
contengan varios módulos. Por lo que generalmente coinciden los buses de nivel 2 y 3.

La gran diferencia entre los tipos 2 y 3 es la distancia que debe tener el bus, que puede llegar a los 10m en el tipo 3. Ello obliga a tratar
este bus como una línea de transmisión. Además, es muy frecuente que el bus de tipo 3 exija unos repetidores o buffers, para pasar de
un panel posterior a otro.
Buses de tipo 4
Los buses de tipo 4 lo forman los buses paralelos para conexión de periféricos. En realidad se pueden considerar cuatro
situaciones, que a veces se pueden dar simultáneamente en el mismo computador:

En la primera, los controladores de los periféricos se conectan directamente al bus del sistema (bus tipo 2 ó 3).

En la segunda se dispone de un bus especial para la E/S, como es un canal 370 de IBM, como es el Unibus en el caso de la
arquitectura VAX, o como son los buses PCI e EISA en un computador personal.

La tercera consiste en diseñar un bus reducido, derivado del bus del sistema, que permita la conexión en paralelo de una
serie de periféricos específicos.

La cuarta consiste en emplear un bus paralelo de conexión de periféricos, de acuerdo con una norma preestablecida. La
diferencia con el caso anterior es que ahora no se trata de una versión reducida del bus del sistema, sino de una
configuración que puede ser muy distinta. El ejemplo clásico es el puerto paralelo o Centronics, previsto para la conexión
de impresoras, el bus IEEE-488, previsto para la interconexión de instrumentos de laboratorio a computadores o los
buses QIC, SCSI e IPI, para conexión de discos.

Buses de tipo 5
Los buses serie suelen constituir el tipo más elemental del espectro de las comunicaciones de un sistema informático. Se
emplean para cubrir las mayores distancias.

El bus serie puede ser simple o doble. El simple puede permitir la transmisión en un solo sentido o en ambos sentidos de
forma alternativa (semi-duplex). El doble permite la transmisión en los dos sentidos simultáneamente (full-duplex).

Un ejemplo de bus serie es el bus USB, que tratamos más adelante.


ESTRUCTURA DEL BUS

Un bus está constituido por muchas líneas, por ejemplo el bus del sistema está constituido
por entre 50 y 100 líneas. A cada línea se le asigna una función determinada. Las líneas del
bus se pueden clasificar en tres grupos funcionales: líneas de datos, de direcciones, y de
control.

" Las líneas de datos del bus proporcionan el camino para transmitir datos entre los módulos
del sistema. El bus de datos consta de 8, 16, 32 líneas distintas, cuyo número se conoce como
anchura del bus de datos. Este número de líneas determina cuantos bits se pueden transmitir
al mismo tiempo. La anchura del bus es un factor clave a la hora de determinar las
prestaciones del sistema.

" Las líneas de dirección se utilizan para direccionar la fuente o el destino de los datos
situados en el bus de datos. La anchura del bus de direcciones determina la cantidad máxima
de memoria direccionable en el sistema.

" Las líneas de control se emplean para gestionar el acceso y el uso de las líneas de datos y
dirección, señalizando peticiones y reconocimientos e indicando que tipo de información
pasa por las líneas de datos.

También podría gustarte