Intuitivamente, pensaría que la transmisión de datos en paralelo debería ser más rápida que la transmisión de datos en serie; en paralelo está transfiriendo muchos bits al mismo tiempo, mientras que en serie está haciendo un bit a la vez.
Entonces, ¿qué hace que las interfaces SATA sean más rápidas que PATA, los dispositivos PCI-e más rápidos que PCI y los puertos seriales más rápidos que paralelos?
data-transfer
modesto
fuente
fuente
Respuestas:
No puedes formularlo de esta manera.
La transmisión en serie es más lenta que la transmisión en paralelo dada la misma frecuencia de señal . Con una transmisión en paralelo, puede transferir una palabra por ciclo (por ejemplo, 1 byte = 8 bits), pero con una transmisión en serie solo una fracción (por ejemplo, 1 bit).
La razón por la cual los dispositivos modernos usan transmisión en serie es la siguiente:
No puede aumentar la frecuencia de la señal para una transmisión en paralelo sin límite, porque, por diseño, todas las señales del transmisor deben llegar al receptor al mismo tiempo . Esto no puede garantizarse para frecuencias altas, ya que no puede garantizar que el tiempo de tránsito de la señal sea igual para todas las líneas de señal (piense en diferentes rutas en la placa base). Cuanto mayor es la frecuencia, más pequeñas diferencias importan. Por lo tanto, el receptor tiene que esperar hasta que todas las líneas de señal estén establecidas, obviamente, la espera reduce la velocidad de transferencia.
Otro buen punto (de esta publicación ) es que uno debe considerar la diafonía con líneas de señal paralelas. Cuanto más alta es la frecuencia, más alta es la diafonía y, con ella, mayor es la probabilidad de una palabra corrupta y la necesidad de retransmitirla. 1
Entonces, incluso si transfiere menos datos por ciclo con una transmisión en serie, puede ir a frecuencias mucho más altas, lo que resulta en una tasa de transferencia neta más alta.
1 Esto también explica por qué los cables UDMA (ATA paralela con mayor velocidad de transferencia) tenían el doble de cables que pines. Cada segundo cable estaba conectado a tierra para reducir la diafonía.
fuente
El problema es la sincronización.
Cuando envía en paralelo, debe medir todas las líneas en el mismo momento exacto, a medida que avanza más rápido, el tamaño de la ventana para ese momento se hace más y más pequeño, eventualmente puede volverse tan pequeño que algunos de los cables aún pueden estabilizarse. mientras que otros han terminado antes de que se te acabe el tiempo.
Al enviar en serie, ya no necesita preocuparse por la estabilización de todas las líneas, solo una línea. Y es más rentable hacer que una línea se estabilice 10 veces más rápido que agregar 10 líneas a la misma velocidad.
Algunas cosas como PCI Express hacen lo mejor de ambos mundos, hacen un conjunto paralelo de conexiones en serie (el puerto 16x en su placa base tiene 16 conexiones en serie). Al hacerlo, no es necesario que cada línea esté perfectamente sincronizada con las otras líneas, siempre y cuando el controlador en el otro extremo pueda reordenar los "paquetes" de datos a medida que ingresen utilizando el orden correcto.
La página Cómo funciona Stuff para PCI-Express hace una muy buena explicación en profundidad sobre cómo PCI Express en serie puede ser más rápido que PCI o PCI-X en paralelo.
Versión TL; DR: es más fácil hacer que una sola conexión vaya 16 veces más rápido que 8 conexiones ir 2 veces más rápido una vez que llegue a frecuencias muy altas.
fuente
Paralelo no es inherentemente más lento, pero presenta desafíos que la comunicación en serie no.
Pero muchos de los enlaces más rápidos siguen siendo paralelos: el bus frontal de su computadora generalmente es altamente paralelo y generalmente se encuentra entre los enlaces más rápidos de una computadora. Las conexiones de fibra óptica también pueden ser altamente paralelas al transportar múltiples longitudes de onda sobre una sola fibra. Sin embargo, esto es caro y, por lo tanto, no es típico. La forma más común de Ethernet Gigabit es en realidad 4 canales paralelos de 250Mbit Ethernet en un solo cable.
El desafío más pronunciado introducido por el paralelismo es la "diafonía": cuando la corriente de la señal comienza o se detiene, induce momentáneamente una pequeña corriente en los cables a su lado. Cuanto más rápida es la señal, más a menudo sucede y más difícil resulta filtrarla. El IDE paralelo intentó minimizar este problema duplicando la cantidad de cables en el cable plano y conectando todos los demás cables a tierra. Pero esa solución solo te lleva tan lejos. Los cables largos, pliegues y bucles, y la proximidad a otros cables planos hacen de esta una solución poco confiable para señales de muy alta velocidad.
Pero si usa solo una línea de señal, entonces puede cambiarla tan rápido como lo permita su hardware. También resuelve problemas sutiles de sincronización con algunas señales que viajan más rápido que otras.
Dos cables siempre son teóricamente el doble de rápido que uno, pero cada línea de señal que agregue complica sutilmente la física, lo que puede ser mejor evitar.
fuente
La transmisión de datos en serie no es más rápida que en paralelo. Es más conveniente y, por lo tanto, el desarrollo se ha centrado en hacer una interfaz serial externa rápida entre unidades de equipos. Nadie quiere lidiar con cables de cinta que tienen 50 o más conductores.
Entre chips en una placa de circuito, un protocolo en serie como I2C que solo necesita dos cables es mucho más fácil de manejar que enrutar numerosas trazas paralelas.
Pero hay muchos ejemplos dentro de su computadora donde el paralelismo se usa para aumentar masivamente el ancho de banda. Por ejemplo, las palabras no se leen un bit a la vez desde la memoria. Y, de hecho, los cachés se rellenan en grandes bloques. Las pantallas ráster son otro ejemplo: acceso paralelo a múltiples bancos de memoria para obtener los píxeles más rápido, en paralelo. El ancho de banda de memoria depende críticamente del paralelismo.
Este dispositivo DAC promocionado por Tektronix como "el DAC de alta velocidad de 10 bits disponible comercialmente más rápido del mundo" hace un uso intensivo del paralelismo para introducir los datos, que entran en el DAC a través de 320 líneas, que se reducen a 10 a través de dos etapas de multiplexación. impulsado por diferentes divisiones del reloj maestro de 12 GHZ. Si el DAC de 10 bits más rápido del mundo se pudiera hacer usando una sola línea de entrada en serie, entonces probablemente lo haría.
fuente
Paralelo era la forma obvia de aumentar la velocidad cuando las puertas lógicas eran lo suficientemente lentas como para poder utilizar técnicas eléctricas similares para autobuses / cables y transmisión en chip. Si ya está alternando el cable tan rápido como lo permite su transistor, entonces la única forma de escalar es usar más cables.
Con el tiempo, la ley de Moore superó las restricciones electromagnéticas, por lo que las transmisiones a través de cables, o incluso a bordo de autobuses, se convirtieron en un cuello de botella en comparación con las velocidades en chip. OTOH, la disparidad de velocidad permite un procesamiento sofisticado en los extremos para usar el canal de manera más efectiva.
Una vez que el retraso de la propagación se aproxima al orden de unos pocos relojes, comienza a preocuparse por los efectos analógicos como reflexiones => necesita impedancias coincidentes en el camino (especialmente difícil para los conectores) y prefiere cables punto a punto en lugar de buses multipunto. Es por eso que SCSI necesitaba terminación, y es por eso que USB necesita concentradores en lugar de simples divisores.
A velocidades más altas, tiene múltiples bits en vuelo en cualquier momento a lo largo del cable => necesita usar protocolos canalizados (por lo que los protocolos FSB de Intel se volvieron terriblemente complicados; creo que los protocolos empaquetados como PCIe fueron una reacción a esta complejidad).
Otro efecto es una penalización de varios ciclos por cambiar la dirección del flujo de la señal; es por eso que Firewire y SATA y PCIe que usan cables dedicados por dirección superaron al USB 2.0.
El ruido inducido, también conocido como diafonía, aumenta con la frecuencia. El mayor avance individual en las velocidades vino de la adopción de la señalización diferencial que redujo drásticamente la diafonía (matemáticamente, el campo de una carga desequilibrada disminuye como R ^ 2, pero el campo de un dipolo disminuye como R ^ 3).
Creo que esto es lo que causó la impresión de que "la serie es más rápida que paralela": el salto fue tan grande que se podía bajar a 1 o 2 pares diferenciales y aún así ser más rápido que los cables LPT o IDE . También hubo una victoria de diafonía al tener solo un par de señales en el cable, pero eso es menor.
El retardo de propagación de los cables varía (tanto porque las longitudes de los cables son difíciles de igualar a través de giros de 90º, conectores, etc., y debido a los efectos parásitos de otros conductores) que hicieron que la sincronización fuera un problema.
La solución fue tener retrasos ajustables en cada receptor y sintonizarlos al inicio y / o continuamente desde los datos en sí. La codificación de los datos para evitar rayas de 0 o 1 incurre en una pequeña sobrecarga pero tiene beneficios eléctricos (evita la deriva de CC, controla el espectro) y lo más importante es que permite soltar los cables del reloj por completo (lo cual no es un gran problema por encima de 40 señales, pero es un gran problema para un cable serie tener 1 o 2 pares en lugar de 2 o 3).
Tenga en cuenta que estamos lanzando el paralelismo en el cuello de botella - los chips BGA de hoy tienen cientos o miles de alfileres, PCB tienen más y más capas. Compare esto con los viejos microcontroladores de 40 pines y PCB de 2 capas ...
La mayoría de las técnicas anteriores se volvieron indispensables tanto para la transmisión en paralelo como en serie. Es solo que cuanto más largos son los cables, más atractivo se vuelve empujar tasas más altas a través de menos cables.
fuente