¿Cuál es la velocidad real de SATA 3?

47

Google dice que se está ejecutando a 6 Gb / s. El rendimiento es de 600 MB / s. 600MB / s es igual a 4.8Gb / s.

¿Significa esto que el ancho de banda es de 6 Gb / s pero el rendimiento real es de 4.8 Gb / s?

Fantasma espacial
fuente
1
Esa es la diferencia en el mundo teórico versus el mundo real. Las especificaciones se logran en laboratorios y no en PC de consumo.
Moab
11
@ Mooab No, esa no es la razón. Mi respuesta, y el aserrín, explican la verdadera razón.
MariusMatutiae
@MariusMatutiae, SÍ, "el rendimiento se definiría como las velocidades de datos reales promediadas que podría obtener en la práctica real". más o menos lo que dije.
Moab
66
@Moab: No, 600 MB / s es el límite superior teórico de lo que puedes lograr, en el mismo sentido en que 6 Gb / s es un máximo absoluto. La degradación del rendimiento debido al uso de hardware real y los datos reales no se incluyen en ninguna de las estimaciones.
MariusMatutiae

Respuestas:

81

¿Significa esto que el ancho de banda es de 6 Gb / s pero el rendimiento real es de 4.8 Gb / s?

Si lo hace Es interesante entender por qué.

Si bien los datos se envían realmente a 6 Gb / s, están codificados para contrarrestar dos defectos comunes en telecomunicaciones, polarización de CC y recuperación de reloj . Esto a menudo se logra utilizando un algoritmo de codificación específico llamado codificación 8b / 10b . No es el único algoritmo de codificación que se ha diseñado para este fin (por ejemplo, también existe una codificación Manchester), pero se ha convertido en el estándar de facto para la transferencia de datos SATA.

En la codificación 8b / 10b (acertadamente nombrada), ocho bits de señal se reemplazan por 10 bits de (señal + código). Esto significa que, de los 6 Gb que envía el canal en un segundo, solo 8/10 = 4/5 son señales. 4/5 de 6Gb son 4.8Gb, que a su vez equivalen a 600MB. Esto es lo que degrada el canal de 6 Gb / s en un mero (??) canal de 600 MB / s.

Las ventajas obtenidas al compensar el sesgo de CC y permitir la recuperación del reloj más que compensan esta ligera degradación.

MariusMatutiae
fuente
2
Usar " solo 600MB / s" es bastante engañoso. Estaba completamente confundido hasta que recordé que son 6 giga bits . Todos sabemos que SATA no es 6 gigabytes por segundo, sino 6 giga bits por segundo
Cole Johnson
55
@ColeJohnson Estás confundido: Dije correctamente que SATA es 6Gb / s = 6 Gigabits por segundo, pero que, debido a la presencia de la codificación, solo se usan 600 MB / s = 600 Mega Bytes por segundo.
MariusMatutiae
¿Puede describir los beneficios de evitar un sesgo de CC, así como la extracción del reloj (en oposición a, por ejemplo, pares diferenciales con un reloj separado)?
ζ--
44
@hexafraction Sí, si hace una nueva pregunta.
MariusMatutiae
1
@DarioP Tengo la sensación de que se dejó como ejercicio para el lector.
Mindwin
14

¿Significa esto que el ancho de banda es de 6 Gb / s pero el rendimiento real es de 4.687 Gb / s?

No, el rendimiento se definiría como las velocidades de datos reales promediadas que podría obtener en la práctica real.

Los 600 MB por segundo siguen siendo un número de transferencia sin procesar, pero es la velocidad utilizable debido a la codificación en el bus SATA para lograr un equilibrio de CC y una cantidad mínima de actividad de señal. Cada ocho bits de datos se expanden en 10 bits para la transmisión en el cable SATA. Por lo tanto, la velocidad de cable de 6.00 Gbit por segundo se reduce efectivamente a 4.8 Gbits por segundo para los datos reales.

Consulte el artículo de Wikipedia en 8b / 10b_encoding para obtener detalles sobre ese tema. Tenga en cuenta que todas las versiones de SATA, es decir, desde 1.0, han utilizado la codificación 8b / 10b.

serrín
fuente
1
Yo haría la distinción como algo así como velocidad de señal = 6 Gbit / s, velocidad de datos = 4.8 Gbit / s, rendimiento = lo que se obtiene de un disco en el mundo real.
hobbs
1

Algo similar sucede con las redes. Debido a la sobrecarga del protocolo / 10 bits físicos para 8 bits de datos puros, resulta una relación de lavado de 1:10 en lugar de 1: 8 cuando se trata de traducir G o Mbps a G o MBps reales.

Entonces, ¿Sata 3 es de 6 Gbps? Espere un máximo de 600 MB / s. Ethernet a 100 Mbps? 10MB / s. Y así.

SirDaShadow
fuente
0

Tenga cuidado al leer "Bps" (BYTES por segundo) frente a "bps" (bits por segundo). Bps generalmente se muestra 1/8 del valor de bps.

Después de esto, todo se reduce a si las personas usan M y G decimales versus M y G binarios para megabytes y gigabytes.

En matemática decimal regular, 1 MB / s sería 1,000,000 Bytes / segundo, pero si el autor de la especificación está usando matemática binaria / informática, eso cambiaría a 1,048,576 Bytes / segundo.

Para obtener más detalles sobre las diferentes especificaciones SATA, vaya directamente a los propietarios de la especificación en http://www.sata-io.org/

Rob Gagnon
fuente
1
Esto explica por qué la pregunta original del OP decía que 600MB / s es igual a 4.687Gb / s, cuando en realidad es igual a 4.8 Gb / s. El OP se convirtió de mebibytes por segundo a gibibits por segundo, en lugar de megabytes por segundo a gigabits por segundo. Aunque realmente no responde la pregunta.
Ajedi32