¿Por qué se usa la transmisión serial digital en todas partes? es decir, SATA, PCIe, USB

47

Mientras observaba SATA, PCIe, USB, SD UHS-II, me sorprendió que todos fueran iguales: flujo de bits serie digital, transmitido utilizando pares diferenciales (generalmente codificados en 8b / 10b), con algunas diferencias en las capas de enlace / protocolo.
¿Porque? ¿Por qué esto se convirtió en el estándar?
¿Por qué no existen protocolos de comunicación del sistema generalizados que empleen algunos métodos de modulación avanzados para una mejor velocidad de símbolos? ¿Me estoy perdiendo de algo? No se trata de "serial versus paralelo" sino de "señalización digital vs analógico modulado"

artemonster
fuente
77
Bueno, ¿qué alternativas hay?
PlasmaHH
27
Bueno, solía haber paralelos, pero necesitarías mucho cobre y cables muy anchos.
Jeroen3
77
Y así es como DDR todavía funciona hoy.
MSalters
10
Y la serie superó en paralelo a los cables de la impresora, et al, cuando la electrónica se volvió tan barata que el convertidor en serie-paralelo era más barato que el cable.
Hot Licks
44
¿Por qué no sugiere "algunos métodos de modulación avanzados", para que podamos entender a qué se refiere y compararlos con "secuencias de bits en serie"?
Ale..chenski

Respuestas:

30

¿Por qué no hay protocolos de comunicación del sistema generalizados que empleen algunos métodos de modulación avanzados para una mejor velocidad de símbolos?

Si la conexión básica de cobre entre dos puntos admite una velocidad de bits digital que excede la velocidad de datos necesaria para ser transmitida por la "aplicación", entonces ¿por qué molestarse con otra cosa que no sea la señalización diferencial estándar de alta velocidad?

El empleo de un esquema de modulación avanzado generalmente se realiza cuando el "canal" tiene un ancho de banda mucho más limitado que el cobre o la fibra.

Andy alias
fuente
¡Gracias! altgough hubo muy buenas respuestas, ¡esta es la que estaba buscando!
artemonster
3
Una pregunta simple requiere una respuesta simple, pero no puede evitar que la gente quiera cubrir más terreno del que requería la pregunta original.
Andy alias el
1
y esto es algo bueno :) He aprendido mucho de otras respuestas, ya que fueron bastante informativas.
artemonster
68

Hay dos razones principales para el aumento de la serie

1) es posible. Los transistores de bajo costo han sido capaces de gestionar la conmutación de GHz durante una década, el tiempo suficiente para que la capacidad se use y se convierta en estándar.

2) es necesario. Si desea cambiar datos de muy alta velocidad más de unas pocas pulgadas. Esta distancia comienza a descartar enlaces mobo a tarjeta PCI, y definitivamente descarta mobo a disco duro, o mobo / settopbox para mostrar las conexiones.

La razón de esto es sesgada. Si transmite varias señales paralelas a lo largo de un cable, entonces tienen que llegar dentro de una pequeña fracción del mismo período de reloj. Esto mantiene baja la velocidad del reloj, por lo que el ancho del cable tiene que aumentar. A medida que aumentan las tasas de datos, eso se vuelve cada vez más poco natural. La posibilidad de aumentar la tasa en el futuro es inexistente, ¿ATA con ancho doble o cuádruple?

La forma de matar al demonio sesgado es ir en serie. Una línea siempre está sincronizada consigo misma, no hay nada con lo que pueda estar sesgada. La línea transporta datos que se auto reloj. Es decir, utiliza un esquema de codificación de datos (a menudo 8b / 10b, a veces mucho más alto) que proporciona una densidad de transición mínima garantizada que permite la extracción del reloj.

La posibilidad de aumentar la velocidad de datos o la distancia hacia el futuro es excelente. Cada generación trae transistores más rápidos y más experiencia en la elaboración del medio. Vimos cómo se desarrolló eso con SATA, que comenzó a 1.5Gb / s, luego pasó a 3 y ahora es de 6Gb / s. Incluso los cables baratos pueden proporcionar una impedancia suficientemente consistente y una pérdida razonable, y los ecualizadores están integrados en el silicio de la interfaz para manejar la pérdida dependiente de la frecuencia. La fibra óptica está disponible para tiradas muy largas.

Para velocidades de datos más altas, se pueden operar varios enlaces seriales en paralelo. Esto no es lo mismo que poner conductores en paralelo, que deben coincidir en el tiempo con menos de un ciclo de reloj. Estos carriles en serie solo tienen que coincidir dentro de un marco de datos de alto nivel, que puede ser de µs o incluso más de largo.

Por supuesto, la ventaja en el ancho de datos no solo se aplica a los cables y conectores. La serie también beneficia el área de la placa PCB entre los conectores y el chip, el pinout del chip y el área del chip de silicio.

Tengo un ángulo personal sobre esto. Como diseñador que trabaja en la radio definida por software (SDR) desde los años 90 en adelante, solía criticar a personas como Analog Devices y Xilinx (y todas las otras compañías de ADC y FPGA) (nos visitaban y nos preguntaban de vez en cuando) haciéndome ejecutar tantas conexiones diferenciales paralelas entre ADC multi-100MHz y FPGAs, cuando estábamos empezando a ver emerger SATA para desplazar a ATA. Finalmente obtuvimos JESD204x, por lo que ahora podemos conectar convertidores y FPGA con solo unas pocas líneas en serie.

Neil_UK
fuente
77
PCI express 3 y 4 utilizan codificación 128b / 130b.
Peter Smith
11
¿Cuál es la Nb/(N+2)bnomenclatura que la gente usa aquí?
desviarse el
17
@detly el 8b / 10b , 64b / 66b son dos formas de codificación de código de línea . En el contexto de comunicaciones en serie, la codificación de línea es necesaria para garantizar que pueda hacer Clock-Recovery] ( en.wikipedia.org/wiki/Clock_recovery ).
Trevor Boyd Smith
44
@tolos: el factor de velocidad para la mayoría de los sabores de los materiales de PCB comunes es de aproximadamente 50% (6 in / ns).
Peter Smith
44
@supercat así es exactamente cómo se manejan los carriles múltiples, cada carril tiene su propio reloj independiente. Los datos se enmarcan y se distribuyen en todos los carriles. Cuando el receptor tiene todas las tramas, actúa sobre los datos. Esto permite sesgos relacionados con la longitud del marco de datos, que pueden ser nosotros o incluso más, como dije en mi respuesta. Este es el significado del número de carriles en PCIe, y cómo se manejan 2xHDMI en una pantalla de alto rendimiento.
Neil_UK
24

Si desea un ejemplo de algo que se usa ampliamente, pero es diferente, mire 1000BASE-T gigabit Ethernet. Que utiliza cables paralelos y codificación de señal no trivial.

En su mayoría, las personas usan autobuses seriales porque son simples. Los buses paralelos usan más cable y sufren una distorsión de la señal a altas velocidades de datos en cables largos.

Simon B
fuente
99
GbE se creó arrojando dinero al problema de enviar más datos sobre las vastas cantidades de cableado Cat 5 existente. Probablemente no se vería como si una nueva interfaz fuera diseñada sin preocuparse por la compatibilidad con versiones anteriores. Cf cómo 10GbE no está haciendo incursiones serias en entornos comerciales / domésticos, ya que requiere la instalación de un nuevo cableado Cat 6a.
Barleyman
10GbE aún podría funcionar en cat5e o cat5 dependiendo de la longitud y / o calidad del cable.
user3549596
12

Para agregar a las otras buenas respuestas:

Los problemas señalados en otras respuestas (más notablemente, la distorsión entre las señales paralelas y los costos de cables adicionales en el cable) aumentan a medida que aumenta la distancia de las señales. Por lo tanto, hay una distancia a la cual el serial se vuelve superior al paralelo, y esa distancia ha ido disminuyendo a medida que las velocidades de datos han aumentado.

La transferencia de datos paralelos todavía ocurre: dentro de los chips, y también la mayoría de las señales dentro de las placas de circuitos. Sin embargo, las distancias que necesitan los periféricos externos, e incluso las unidades internas, ahora son demasiado grandes y rápidas para que las interfaces paralelas sigan siendo prácticas. Por lo tanto, las señales a las que un usuario final ahora estará expuesto son en gran medida seriales.

DrSheldon
fuente
44
Probablemente el mejor ejemplo de señalización paralela de alta velocidad es la memoria RAM, especialmente en las PC.
Jan Dorniak
Excelente respuesta, apunta directamente al problema raíz de la sincronización horaria en dominios espaciales. Una cosa a tener en cuenta es que aún puede tener más de 2 símbolos en un enlace en serie, obteniendo así algunos beneficios de las comunicaciones paralelas mediante el uso de modulación para codificar más bits por baudios
crasic
@ JanDorniak, vale la pena señalar que la memoria DDR * tiene bits estroboscópicos de datos utilizados para la sincronización. Esto permite que un bus ancho se divida en múltiples buses más pequeños. Es más fácil enrutar múltiples buses paralelos de 8 bits que enrutar un solo bus de 32 bits.
Caleb Reister
@CalebReister no lo sabía. Aún así es paralelo. Personalmente, tuve una situación en la que una PC moderna funcionaría o no, según la ranura en la que se insertó el DDR4. Terminó como UEFI forzando una latencia más baja que la memoria era capaz de hacerlo.
Jan Dorniak
11

Las técnicas de modulación avanzadas requieren que transmita y reciba señales analógicas. Los ADC y DAC que funcionan a cientos de MHz tienden a ser caros y consumen bastante energía. El procesamiento de señales requerido para la decodificación también es costoso en términos de silicio y potencia.

Es simplemente más barato hacer un mejor medio de comunicación que pueda soportar señales binarias.

Dmitry Grigoryev
fuente
1
buen punto. спасибо за ответ :)
artemonster
8

¿Por qué el flujo de bits en serie se volvió tan común?

El uso de enlaces seriales tiene la ventaja de que reduce el tamaño físico de la conexión. Las arquitecturas modernas de circuitos integrados tienen tantos pines en ellas que esto creó una fuerte necesidad de minimizar las demandas de interconexión física en su diseño. Esto condujo al desarrollo de circuitos que operan a velocidades extremas en las interfaces de estos circuitos utilizando protocolos en serie. Por la misma razón, es natural minimizar las demandas de interconexión física en cualquier otro lugar en cualquier otro enlace de datos.

La demanda original de este tipo de tecnología también puede tener su origen en los diseños de transmisión de datos de fibra óptica.

Una vez que la tecnología para soportar enlaces de alta velocidad se volvió muy común, era natural aplicarla en muchos otros lugares, porque el tamaño físico de las conexiones en serie es mucho más pequeño que las conexiones en paralelo.

¿Por qué no existen protocolos de comunicación del sistema generalizados que empleen algunos métodos de modulación avanzados para una mejor velocidad de símbolos?

A nivel de codificación, los esquemas de codificación para la comunicación digital pueden ser tan simples como NRZ (Non-Return to Zero) , un código de línea ligeramente más complicado (por ejemplo, 8B / 10B) , o mucho más complicado, como QAM (modulación de amplitud en cuadratura) .

La complejidad agrega costos, pero las elecciones también dependen de factores que finalmente dependen de la teoría de la información y los límites de capacidad de un enlace. La Ley de Shannon, del Teorema de Shannon-Hartley, describe la capacidad máxima de un canal (piense en eso como "la conexión" o "enlace"):

Capacidad máxima en bits / segundo = ancho de banda * Log2 (1 + señal / ruido)

Para enlaces de radio (algo así como LTE o WiFi), el ancho de banda estará limitado, a menudo por las regulaciones legales. En esos casos, se pueden utilizar QAM y protocolos igualmente complejos para obtener la mayor velocidad de datos posible. En estos casos, la relación señal / ruido suele ser bastante baja (10 a 100 o, en decibelios, 10 a 20 dB). Solo puede ir tan alto antes de que se alcance un límite superior por debajo del ancho de banda dado y la relación señal / ruido.

Para un enlace de cable, el ancho de banda no está regulado por nada más que la practicidad de la implementación. Los enlaces de cables pueden tener una relación señal / ruido muy alta, superior a 1000 (30 dB). Como se mencionó en otras respuestas, el ancho de banda está limitado por el diseño de los transistores que conducen el cable y reciben la señal, y en el diseño del propio cable (una línea de transmisión).

Cuando el ancho de banda se convierte en un factor limitante pero la relación señal / ruido no lo es, el diseñador encuentra otras formas de aumentar la velocidad de datos. Se convierte en una decisión económica si ir a un esquema de codificación más complejo o ir a más cables:

Verá los protocolos en serie / paralelos utilizados cuando un solo cable todavía es demasiado lento. PCI-Express hace esto para superar las limitaciones de ancho de banda del hardware mediante el uso de múltiples carriles.

En las transmisiones de fibra, no tienen que agregar más fibras (aunque podrían usar otras si ya están en su lugar y no se están usando). Pueden usar multiplexación por división de onda . En general, esto se hace para proporcionar múltiples canales paralelos independientes, y el problema de sesgo mencionado en otras respuestas no es una preocupación para los canales independientes.

Jim
fuente
1
Buena respuesta. Se me hace curioso si alguien podría (o ya tiene?) Hacer algo como poner en práctica 256-QAM a velocidades USB3 para velocidades de transferencia realmente sorprendentes ...
mbrig
FWIW, el mundo de la fibra está comenzando a desarrollar e implementar esquemas de modulación más complejos. PAM-4 viene para Ethernet de 100 y 400 G, y los sistemas de telecomunicaciones están (creo, pero no es mi campo) comenzando a usar QAM coherente.
El fotón del
pero, realmente, si la SNR de una línea de cable es tan buena, ¿por qué no exprimir cada ancho de banda posible? ¿Por qué presionar las frecuencias GHZ (con todos los problemas relevantes), donde podría ir mucho más lento y emplear algo de modulación / codificación? ¿No sería más conveniente?
artemonster
Usted puede hacer eso. Se convierte en una decisión económica.
Jim
1
QAM requiere un operador, por lo que no tiene mucho sentido hacer otra cosa que PAM para 'banda base' digital. Se utiliza en el dominio óptico, utilizando la luz misma como portadora. Sobre cobre, básicamente construirías un transceptor de radio. Esto requeriría mucho más circuitos analógicos de alta velocidad, y toda la complejidad y el mayor consumo de energía que conlleva. Los serializadores y los deserializadores son relativamente simples en comparación. En mi humilde opinión, es más probable que veamos moduladores y detectores fotónicos de silicio integrados que pasar a QAM sobre cobre.
alex.forencich
1

Tome cuatro camiones con una carga útil. Cuatro carriles por carretera lateral. Para que los camiones puedan transportar con éxito la carga útil en paralelo, tienen que estar perfectamente uno al lado del otro, uno no puede estar adelante o detrás de los demás en más de una pulgada, digamos. Las colinas, las curvas, no importan. Variar demasiado y es un fracaso total.

Pero haga que tomen un carril y la distancia entre ellos puede variar. Si bien es cierto que linealmente se necesita más de cuatro veces la distancia desde la parte delantera del primer camión hasta la parte posterior del último para mover las cargas útiles, pero no tienen que estar perfectamente espaciadas. Justo dentro de la longitud de un camión, debe tener la cabina y la carga útil y la longitud de la carga útil para que estén posicionadas y espaciadas adecuadamente.

Incluso van tan lejos como para ser paralelos, pcie, red, etc., pero si bien son técnicamente múltiples rutas de datos separadas, no son paralelas en el sentido de que tienen que salir y llegar al mismo tiempo, utilizando la analogía de los cuatro camiones. puede conducir en cuatro carriles aproximadamente en paralelo, pero puede variar, los camiones están marcados por el carril en el que llegaron para que cuando lleguen al otro extremo, las cargas útiles puedan combinarse nuevamente en el conjunto de datos original. Y / o cada carril puede ser un conjunto de datos en serie y al tener más carriles puede mover más conjuntos de datos a la vez.

viejo contador de tiempo
fuente
Los carriles no necesitan estar perfectamente "alineados". Las interfaces modernas de carriles múltiples utilizan métodos más sofisticados de alineación de símbolos que estar perfectamente uno al lado del otro.
Ale..chenski
1
Bien, eso es lo que dije.
old_timer
1

Como una adición al comentario de Dmitry Grigoryev .

La transmisión analógica siempre es más propensa a errores que la transmisión digital. Una transmisión en serie digital, por ejemplo, tiene flancos sincronizados, donde una señal analógica flota de alguna manera entre 0V y VDD. Entonces las interferencias son mucho más difíciles de detectar. Uno podría tener eso en cuenta y usar señalización diferencial, como se hace en Audio.

Pero luego te encuentras con ese intercambio de velocidad frente a precisión de DAC / ADC. Si tiene que hablar con los sistemas digitales, tiene más sentido usar una transmisión digital, ya que no necesita una traducción DA-AD que requiera mucho tiempo.

Sin embargo, si tiene una computadora analógica que funciona con voltajes de control analógicos, todavía hay algunos, parecen sintetizadores modulares analógicos, básicamente, las cosas son diferentes y, por lo general, puede construir computadoras analógicas solo para tareas específicas. Divertida presentación en alemán sobre computación analógica.

Hablando de sintetizadores modulares analógicos, también son algún tipo de computadoras analógicas, especialmente diseñadas para hacer callculations en señales cambiantes.

Por lo tanto, hay transmisión analógica en informática, pero limitada a campos muy específicos.

Tillo Reilly
fuente