Los componentes de un ordenador se comunican para realizar las tareas que los pedimos. Están unidos por un complicado entramado de «carreteras», también conocidos como bus de datos, y aunque te parezca mentira los utilizas a diario porque nos referimos a PCI-Express, SATA o USB entre otros. Estos buses de datos son de diferente tipología, tienen diferentes características y unen diferentes componentes entre ellos, y en este artículo te lo vamos a explicar en profundidad.
Todos los componentes de un ordenador se tienen que comunicar, como mínimo, con el procesador. Muchos se pueden comunicar entre ellos, saltandose así la necesidad de hablar con el procesador y este les diriga al componente deseado. Un ejemplo bastante reciente son las tarjetas gráficas, que se pueden comunicar directamente con la memoria RAM del sistema.
El bus de datos lo que permite es la distribución de la información mediante un cableado integrado en la placa base (normalmente). Suele estar gestionado y controlado por el procesador y el chipset de la placa base suele ayudar a la tarea. La idea principal es que el sistema funcione al máximo de rendimiento posibles.
¿Qué es un bus de datos?
Dicho de manera simple, es una línea de comunicación entre dos componentes. El bus de datos más conocido, normalmente es la interfaz PCIe que permite comunicar el procesador con diferentes tarjetas de expansión como tarjetas gráficas o unidades SSD NVMe.
Realmente, cuando hablamos de buses de datos lo que estamos haciendo es hablar del cableado que une los dos componentes. Permite que ambos se puedan comunicar de una manera sencilla en base a un protocolo determinado.
Sin embargo, existen diferentes tipos de buses según la necesidad de cada parte del ordenador. Se ha de tener en cuenta que no todas las partes del PC requieren transmitir la misma cantidad de datos y que dicho proceso de intercambio de información consume energía eléctrica.
Todos los buses de datos tienen las mismas características:
- Pulso o velocidad de reloj: indica cada cuanto tiempo transmite y/o recibe datos, esta se da en Hz, por lo que para saber el tiempo debemos conseguir la inversa, la cual es 1/Hz.
- Unidireccional, Duplex y Full Duplex: cuando hablamos de un bus que es direccional, este puede transmitir información en una sola dirección. Si es Duplex puede hacerlo en una dirección u otra, pero no a ambas a la vez. Full Duplex transmite información en ambas direcciones.
- Serial o paralelo: si se transmite un solo bit por pulso, entonces es un bus serial, si transmite varios al mismo tiempo, entonces es en paralelo.
Interfaces
Es importante separar lo que es el bus en sí mismo, lo cual no deja de ser el cableado utilizado por donde viaja la información, de lo que es la interfaz, la cual se encuentra en la periferia del chip. No obstante, es la interfaz la que controla cuando se envían los datos y, por tanto, el funcionamiento y es importante tener en cuenta que en un ordenador se suelen concentrar todas las interfaces en un punto en común usando buses cada vez más rápidos.
La clave se encuentra en el chipset de la placa base, la cual unifica todas las interfaces de baja velocidad en una de alta velocidad con tal de reducir la cantidad de cableado que va al procesador. El motivo por el cual esto no se hace desde el inicio es por el hecho de que no es necesario y por el hecho que las pistas sobre la placa base que son el cableado son de metal y se aumenta la resistencia con la distancia, lo cual es fatídico para la transferencia de datos.
Es por todo ello que a día de hoy nos encontramos que el bus PCI Express de la tarjeta gráfica sale del procesador, mientras que otros buses como el USB para periféricos están mucho más alejados y parte, circulan y llegan a otros lugares donde esa información va a ser procesada o almacenada dentro de nuestro ordenador.
Topología
Llamamos topología a la forma en la que está organizado el cableado y, por tanto, como se comunican los diferentes componentes a través de un bus, estas vienen derivadas del mundo de las telecomunicaciones y se utilizan los mismos tipos según el tipo de elementos que se han de intercomunicar entre sí. En general se habla de bus cuando hablamos de dos elementos intercomunicados entre sí, por lo que se puede decir que la topología no es otra cosa que la complejidad de los buses en un sistema.
Estas no son comunes a la hora de comunicar chips entre sí, pero sí en los buses internos de los diferentes procesadores, especialmente en CPU y GPU por su enorme complejidad. Es por ello que cuando hablamos de buses no solemos comentar los internos y nos referimos a la comunicación entre dos dispositivos distintos.
Dichas tipologías se utilizan a nivel interno en los chips, externamente se usan conexiones directas, las cuales pueden ir en horizontal o en vertical. Usando en el último caso vías de silicio, ya sea apilando un chip sobre otro o usando un interposer como sustrato que se encargue de la comunicación
Ancho de banda
El ancho de banda es la cantidad de información que es capaz de transmitirse a través de un bus, y este se puede ofrecer de la siguiente manera:
- Si el bus es en serie se suele dar en bits por segundo, si es en paralelo en bytes por segundo.
- Hay veces donde se da en bits, en ese caso indica la cantidad de pines que transmite por ciclo de reloj. Así pues, cuando se habla de que hay un bus de 256 bits es que hay esa cantidad de pines y cables transmitiendo información por cada pulso.
¿Cuáles son los diferentes buses de datos en un PC?
A continuación, os vamos a describir los diferentes buses que podéis encontrar dentro de vuestro ordenador para comunicar a los diferentes componentes entre sí y cuáles son sus diferentes características de cada uno de ellos. En ellos vamos a obviar los que se encuentran dentro de los chips para centrarnos en los que sirven para comunicar dos componentes entre sí o un componente con un dispositivo. Realizada la aclaración vamos a ver los diferentes tipos de buses que nos podemos encontrar.
Procesador y memoria
En la actualidad se encuentra controlado por IMC o controlador de memoria integrado del procesador, su trabajo consiste en comunicarse con la memoria RAM respetando sus tiempos de comunicación. Se trata del bus de datos más esencial de todos y a su vez el más complejo, dado que con cada nuevo tipo de memoria RAM se requiere rediseñar toda la infraestructura interna del IMC.
A día de hoy, e independientemente de si hablamos de una CPU y la RAM, así como de la GPU y la VRAM, el acceso a la RAM no se hace por un solo elemento, sino por varios al mismo tiempo. Por lo que el IMC ha de gestionar el acceso para cada una de las partes y asegurarse que haya coherencia de memoria. Es decir, si un componente usando una memoria cambia los datos en una parte de la misma, ha de existir un mecanismo que avise el resto de componentes de los cambios producidos. El formato más usado es el de los DIMM y So-DIMM donde cada par de módulos comparten un bus de 64 bits cada uno. Por otro lado, en el caso de las tarjetas gráficas, la memoria GDDR usan buses de 32 bits por chip de memoria.
Peripheral Computer Interconnect Express (PCI Express)
El PCI Express es un bus del tipo Full Dúplex y en paralelo que ha servido para comunicar durante años los componentes que requieren un alto ancho de banda para funcionar. Es por ello que lo encontramos como bus interno y no externo, debido a su ancho de banda y, por tanto, su alto consumo. Su evolución empezó con el bus PC de 8 bits de los primeros PC, evoluciona a ISA de 16 bits, PCI de 32 y 64 bits y hasta llegar al PCI Express, eso sin olvidarnos del AGP en todo el periplo. A día de hoy se utiliza principalmente para dos componentes: tarjetas gráficas y unidades de almacenamiento SSD. Su particularidad respecto a otros buses es que tiene la capacidad de copiar datos desde y hacia la RAM del sistema.
Se presenta en diferentes anchos según la cantidad de bits que se quieran transmitir por ciclo de reloj, los conectores suelen ser x16, x8, x4 y x1. En el último caso, como habréis adivinado, funciona como un bus en serie y no es muy utilizado en general. En cuanto a su velocidad, este lleva ya 6 generaciones, con 5 de ellas lanzadas ya al mercado y las cuales duplican el ancho de banda en cada generación.
Unidades de almacenamiento
Al antiguo bus que se utilizaba para conectar el disco duro del PC se le conocía como PATA, IDE o ATAPI. Estuvo durante dos décadas en los ordenadores de todo el mundo, pero a día de hoy ha sido reemplazado por el bus SATA. A medida que se fue haciendo posible llegar a altas velocidades de reloj con un solo pin de comunicación y la velocidad que requerían los discos duros no aumentaban, entonces se decidió simplificarlo todo a un bus en serie.
Por lo que en cierta medida recuerda al bus USB en su funcionamiento, pero con la diferencia y es que separa por completo y en conexiones diferentes, lo que es la transferencia de datos de la alimentación. Por lo que se puede decir que solo el cable de datos SATA es un bus. Actualmente, es un tipo de bus ya casi en desuso en los PC modernos, pero todavía sigue conservándose en su versión SATA 3, que ya no se va a actualizar y, por lo tanto, está condenado a desaparecer antes o después.
El USB es el bus de datos por antonomasia
El bus de datos por antonomasia y el que es más popular para conectar y alimentar periféricos externos de todo tipo. Durante 20 años ha sufrido una evolución de los 12 Mbits por segundo del USB 1.0 a los 80.000 Mbits por segundo del USB 4.2 que fue presentado hace poco y que será el que se acabe imponiendo en las placas bases de ordenadores durante los próximos tiempos. Pero al cabo de varios años, veremos otros estándares actualizados capaces de acelerar todavía más esa transferencia de información de un sitio a otro del ordenador.
El USB ha evolucionado muchísimo en los últimos años, y por el camino ha ido devorando otras interfaces con tal de tener una única, algo que al final nos beneficia a los usuarios porque cuando algo está estandarizado no solo es más fácil de encontrar, sino que se abaratan los costes. Al contrario del PCI Express y el SATA se trata de un bus totalmente pensado para periféricos externos, como su nombre indica, usa un único pin de datos para transmitir la información.
Bus de datos de vídeo
Muchos procesadores modernos incluyen tarjetas gráficas integradas. Estas, normalmente, no son muy potentes, pero dan de sobra para sacar vídeo y permiten ahorrar dinero a la hora de configurar un ordenador sencillito al que no queramos exigirle tareas de gaming o tratamiento gráfico, diseño o vídeo. Para aprovecharlas, se requiere que la placa base disponga de salidas de vídeo y, por consiguiente, un bus de video al exterior, para conectar un monitor. Como el que podési ver justo aquí debajo que cuenta con un HDMI.
Todas las placas base del mercado lo incluyen en la actualidad, aunque los conectores pueden variar. Este bus va directamente del socket del procesador al panel I/O de la placa base. Normalmente es unidireccional, ya no integran tecnologías como AMD FSR o NVIDIA G-Sync, que si requeriría que fuera bidireccional.