Serial versus paralelo: ¿cuál escoger?
Un análisis sobre ambos tipos de almacenamiento de datos
Los datos almacenados en disco están formados por largas series (llamadas pistas y sectores) de unos y ceros. Las cabezas del disco leen estas series bit a bit, hasta que la unidad de discos acumula la cantidad de datos deseada, y después lo envía al procesador, a la memoria o a otros dispositivos de almacenamiento de datos. La forma en que la unidad de discos envía esos datos afecta al rendimiento global. Hace algunos años, todos los datos enviados a y desde los discos viajaban de forma serial, es decir, que se enviaba un bit tras otro, utilizando sólo un único canal o cable. Sin embargo, con los circuitos integrados, empezó a ser factible y económico situar múltiples dispositivos en una única pieza de silicio y, fue así como nació la interfaz en paralelo. Normalmente, utilizaba ocho canales para la transmisión, permitiendo enviar ocho bits (es decir, un byte) simultáneamente, lo que era más rápido que las conexiones seriales directas. La interfaz paralela estándar utilizaba un cable de 36 hilos costoso y de gran volumen. Entonces, ¿por qué los fabricantes están dejando de utilizar las interfaces paralelas a favor de las seriales cuando hay que mover datos a y desde discos con mayor rapidez que nunca? Por ejemplo, la mayoría de las impresoras ni siquiera se entregan ya con puertos paralelos y los ordenadores portátiles han prescindido de los puertos paralelos y seriales tradicionales a favor de puertos USB (Universal Serial Bus) y IEEE 1394. Incluso ahora se observa esta misma migración en las interfaces que conectan unidades de discos. A primera vista, esto parece contradictorio. ¿No es la transmisión en paralelo más eficiente que la serial y no tiene más capacidad? La realidad es que no y, ciertamente, seguirá siendo así. A las velocidades actuales, la transmisión en paralelo presenta varias desventajas.
Esfuerzo de proceso extra
En primer lugar, hay que recordar que los datos se almacenan y se extraen pista por pista. Aunque por conveniencia hablamos de “bytes”, un byte es sólo una línea de ocho bits en fila y, al final, hay que procesar cada bit por separado. Así, antes de poder enviar un byte en paralelo a una unidad de discos, es necesario tomar esos ocho bits y ponerlos en línea, canalizando cada uno de ellos a un cable diferente. Una vez realizado todo el proceso y movimiento necesario para dejarlos todos preparados, se transmite ese byte. En el otro extremo del cable, cuando la unidad de discos recibe los bits, debe realizar el proceso inverso para convertir de nuevo ese byte a una corriente de bits serial, de manera que las cabezas de escritura de la unidad de discos puedan grabarlo al disco. Para visualizar esto de otra forma, podría imaginarse lo que es casi exactamente el proceso inverso: la conversión de paralelo a serial para la transmisión, y después a la inversa. Esto es lo que sucede al enviar código Morse a través de una línea telegráfica. El mensaje comienza en forma de palabras escritas (paralelo) en una hoja de papel. El procesador (es decir, el cerebro humano) tiene que convertir cada letra a una serie de líneas y puntos (serial) y después enviarlos a través del cable. En el extremo receptor, otro procesador tiene que oír estos puntos y líneas y después convertirlos a letras y palabras. Se requiere un gran esfuerzo adicional, porque el medio de transmisión no concuerda con el input original o el output deseado.
Distorsión de señales
Mientras una señal viaja a través de un cable o de una traza en un circuito impreso, las imperfecciones en los hilos o drivers del circuito impreso pueden hacer más lento el movimiento de algunos bits. En una conexión paralela, los ocho bits que salen al mismo tiempo no llegan al otro extremo al mismo tiempo; algunos llegan más tarde que otros. Esto se conoce como transmisión sesgada. Para resolverlo, el extremo receptor tiene que sincronizarse a sí mismo con el transmisor y debe esperar a que lleguen todos los bits. La secuencia de proceso es la siguiente: lectura, espera, bloqueo, esperar la señal del reloj, transmitir. Cuantos más cables haya y más larga sea la distancia que abarquen, mayor será el sesgo y más grande el retraso. Este retraso reduce la velocidad efectiva del reloj y la longitud y cantidad de líneas paralelas que es posible utilizar.
Replicación
El hecho de que los cables paralelos estén agrupados físicamente significa que una señal puede a veces dejar su huella en el cable adyacente. Esto se conoce como replicación y, mientras las señales sean distintas, no causa problemas. Sin embargo, al acercarse entre sí los bits, la potencia de la señal se atenúa con la distancia (especialmente a frecuencias más altas) y se acumulan reflexiones a causa de los conectores intermedios. Como consecuencia, la posibilidad de error aumenta considerablemente y el controlador de disco podría no ser capaz de diferenciar entre un uno y un cero. Para evitarlo, se requiere proceso adicional. Los buses seriales lo evitan modificando las señales en el momento de la transmisión con el fin de compensar esa pérdida. En una topología serial, todas las rutas de transmisión están bien controladas y con una mínima variación, lo cual permite que la transmisión serial se realice con fiabilidad a frecuencias considerablemente más altas que en los diseños en paralelo.
Conexiones seriales nuevas y más pequeñas
Hemos observado ya cómo las conexiones seriales están desplazando a las paralelas en impresoras y otros periféricos. Ahora, dentro de los ordenadores, se están sustituyendo las conexiones paralelas a las unidades de discos y a los arrays de discos, tanto SCSI como ATA (Advanced Technology Attachment) por una nueva arquitectura serial llamada Serial Attached SCSI y Serial ATA. En lugar de los grandes conectores y anchas cintas de cable de las conexiones paralelas, que pueden bloquear la circulación del aire dentro de un PC, los pequeños cables seriales, de tamaño similar a cables telefónicos, junto con un nuevo conector de potencia que sitúa 15 pins en el espacio que antes ocupaban los cuatro del antiguo dispositivo, dejarán más espacio y al mismo tiempo permitirán mayor refrigeración en el interior del ordenador. El bus PCI (Peripheral Component Interconnect) que conecta otros dispositivos dentro de la caja del ordenador está siendo sustituido por una interfaz serial llamada PCI Express. Otras interfaces de sistema serial relacionados con el almacenamiento de datos son el Serial RapidIO, Infiniband y Fibre Channel.