Qual é a velocidade real do SATA 3?

47

O Google diz que está rodando a 6Gb / s. A taxa de transferência está em 600MB / s. 600 MB / s é igual a 4,8 Gb / s.

Isso significa que a largura de banda é de 6 Gb / s, mas a taxa de transferência real é de 4,8 Gb / s?

Space Ghost
fonte
11
Essa é a diferença entre o mundo teórico e o mundo real. As especificações são obtidas em laboratórios e não em PCs de consumo.
Moab
11
@ Moab Não, não é esse o motivo. Minha resposta e a serradura explicam o verdadeiro motivo.
MariusMatutiae
@MariusMatutiae, YES, "a taxa de transferência seria definida como as taxas médias reais de dados que você poderia obter na prática real". praticamente o que eu disse.
Moab
6
@Moab: Não, 600MB / s é o limite superior teórico do que você pode alcançar, no mesmo sentido em que 6Gb / s é um máximo absoluto. A degradação do desempenho devido ao uso de hardware e dados reais não é incluída em nenhuma estimativa.
MariusMatutiae

Respostas:

81

Isso significa que a largura de banda é de 6 Gb / s, mas a taxa de transferência real é de 4,8 Gb / s?

Sim. É interessante entender o porquê.

Embora os dados sejam realmente enviados a 6 Gb / s, eles são codificados para neutralizar dois defeitos comuns em telecomunicações, polarização DC e recuperação de clock . Isso geralmente é realizado usando um algoritmo de codificação específico chamado codificação 8b / 10b . Não é o único algoritmo de codificação que foi desenvolvido para esse fim (existe também uma codificação de Manchester), mas tornou-se o padrão de fato para a transferência de dados SATA.

Na codificação 8b / 10b (nomeada apropriadamente), oito bits de sinal são substituídos por 10 bits de (sinal + código). Isso significa que, dos 6Gb que o canal envia em um segundo, apenas 8/10 = 4/5 são sinal. 4/5 da 6Gb são 4.8Gb, que por sua vez são iguais a 600MB. É isso que degrada o canal de 6Gb / s em um canal de meros (??) 600MB / s.

As vantagens obtidas compensando o viés de CC e permitindo a recuperação do relógio mais do que compensam essa leve degradação.

MariusMatutiae
fonte
2
Usar " apenas 600 MB / s" é bastante enganador. Fiquei completamente confuso até lembrar que são 6 bits de giga . Nós todos sabemos SATA não é 6 gigabytes por segundo, mas 6 giga pedaços por segundo
Cole Johnson
5
@ColeJohnson Você está confuso: afirmei corretamente que o SATA é de 6 Gb / s = 6 Gigabits por segundo, mas que, devido à presença da codificação, apenas 600 MB / s = 600 Mega Bytes por segundo são usados.
MariusMatutiae
Você pode descrever os benefícios de evitar um viés de DC, bem como a extração de clock (em oposição a, digamos, pares diferenciais com um clock separado)?
ζ--
4
@hexafraction Sim, se você fizer uma nova pergunta.
MariusMatutiae
11
@DarioP Sinto que foi deixado como um exercício para o leitor.
Mindwin 5/06
14

Isso significa que a largura de banda é de 6 Gb / s, mas a taxa de transferência real é de 4.687 Gb / s?

Não, a taxa de transferência seria definida como as taxas médias reais de dados que você poderia obter na prática real.

Os 600 MB por segundo ainda são um número de transferência bruto, mas é a taxa utilizável devido à codificação no barramento SATA para obter o equilíbrio DC e uma quantidade mínima de atividade do sinal. A cada oito bits de dados são expandidos para 10 bits para transmissão no cabo SATA. Portanto, a velocidade do fio de 6,00 Gbit por segundo é efetivamente reduzida para 4,8 Gbits por segundo para os dados reais.

Consulte o artigo da wikipedia em 8b / 10b_encoding para obter detalhes sobre esse tópico. Observe que todas as versões do SATA, ou seja, desde a 1.0, usaram a codificação 8b / 10b.

serragem
fonte
11
Eu faria a distinção como algo como taxa de sinal = 6 Gbit / s, taxa de dados = 4,8 Gbit / s, taxa de transferência = o que você obtém de uma unidade no mundo real.
hobbs
1

Algo semelhante acontece com as redes. Devido ao overhead do protocolo / 10 bits físico para 8 bits de dados puros, ocorre uma proporção de lavagem de 1:10 em vez de 1: 8 quando se trata de converter G ou Mbps em G ou MBps reais.

Então Sata 3 é 6Gbps? Espere no máximo 600 MB / s. Ethernet a 100Mbps? 10MB / s. E assim por diante.

SirDaShadow
fonte
0

Cuidado ao ler "Bps" (BYTES por segundo) vs. "bps" (bits por segundo). Bps é geralmente mostrado 1/8 do valor de bps.

Depois disso, é preciso saber se as pessoas estão usando M e G decimais versus M e G binários para megabytes e gigabytes.

Na matemática decimal regular, 1 MB / s seria 1.000.000 bytes / segundo, mas se o autor da especificação estiver usando matemática binária / computador, isso mudaria para 1.048.576 bytes / segundo.

Para obter mais detalhes sobre as diferentes especificações SATA, vá diretamente aos proprietários das especificações em http://www.sata-io.org/

Rob Gagnon
fonte
11
Isso explica por que a pergunta original do OP afirmou que 600MB / s é igual a 4.687Gb / s, quando na verdade é igual a 4.8 Gb / s. O OP converteu de mebibytes por segundo em gibibits por segundo, em vez de megabytes por segundo em gigabits por segundo. Realmente não responde à pergunta.
precisa saber é o seguinte