Hardware - A conexão SATA

Hardware - A conexão SATA

13/12/2017

| Escrito por:

  Olá leitor! hoje o artigo é sobre a conexão ponto-a-ponto SATA.

  A codificação, a pinagem, exemplos de utilização e história, aqui no Hardware Central!

  A conexão SATA em sua primeira revisão foi lançada em 2003 para ser substituta da ultrapassada porta IDE, que foi renomeada para PATA após o lançamento da conexão ponto-a-ponto que estamos falando.

  O padrão IDE, significa, em inglês, Integrated Drive Electronics, e também chamado de PATA (Parallel Advanced Technology Attachment) é um barramento que de forma paralela interliga até três dispositivos. Já o padrão SATA, do inglês, Serial Advanced Technology Attachment, é uma conexão entre dois dispositivos e com transferências de dados em série.

  Dispositivos com a interface SATA podem ser reconhecidos pelo símbolo mostrado abaixo:

  Se você não leu sobre pares diferenciais, o slot PCI Express e comunicação em serie e paralelo, aconselho você a ler meus artigos sobre estes assuntos para que fique mais fácil de entender o texto daqui para diante. Para acessar, clique aqui!

  O cabo SATA é composto por 7 fios, sendo 2 pares diferenciais de dados e 3 fios de aterramento. A comunicação é Full-Duplex, ou seja, a placa-mãe pode enviar dados para o dispositivo conectado e ele pode enviar dados simultaneamente para a placa-mãe, pois como foi dito há dois pares de fios para comunicação.

  Os fios de aterramento são posicionados nas laterais e entre os dois pares. Além da transmissão ser diferencial, os fios de aterramento ajudam ainda no isolamento deles, fazendo com que não haja interferências eletromagnéticas externas e entre os fios no cabo.

  O cabo SATA pode ter até um metro de comprimento. Existem três revisões da conexão SATA que são compatíveis entre si. O sistema de codificação utilizada em todas as versões é o 8B/10B, a mesma utilizada nas revisões 1.0 e 2.0 da conexão PCI Express, portanto, 20% da taxa de transferência é perdida com bits da codificação. Veja a tabela abaixo:

   Os valores teóricos de transferência com os 20% de dados inúteis para o SATA 1 é de 180 MB/s, SATA 2 é de 360 MB/s e SATA 3 é de 720 MB/s.

  Na próxima tabela você vê a pinagem padrão para a interface SATA:

  Abaixo você vê o desenho do conector SATA revisão 1, 2 e 3:

  Abaixo, você vê o diagrama do conector eSATA (a letra "e" é de "external"), que é a versão externa do conector padrão, ou seja, serve para ligar alguns modelos de HDDs e outros dispositivos de armazenamento externos:

  Veja abaixo, um conector eSATA:

  Abaixo, uma variação do conector eSATA, chamada de Hybrid eSATA por juntar uma porta USB em uma porta eSATA. Você pode conectar um cabo USB, ou um cabo eSATA, ou um cabo hibrido contendo as duas interfaces. Isso faz com que menos espaço seja utilizado para os conectores e os dispositivos eSATA possam ter uma alimentação de 5 Volts fornecida pela interface USB. Lembrando que, as revisões (clock, pinagem, codificação, taxa de transferência) são as mesmas para todos os modelos de conector SATA. Veja o diagrama do conector abaixo:

  Além da variação eSATA e Hybrid eSATA, há uma terceira menos utilizada chamada eSATAp (a letra "p" é de "power"). Esta versão também pode combinar uma porta USB. O diferencial dela é que foi incluído uma linha de 12 Volts para alimentação do dispositivo conectado. Veja o diagrama abaixo:

   Em 2013 foi anunciado um conector chamado SATA Express que combina dois conectores SATA revisão 3 com um slot PCI Express X2 e um conector extra para controle e identificação de dispositivo. Mas como assim? Se você leu o artigo sobre o slot PCI Express viu que cada "lane", ou pista, possui dois pares diferenciais: um para recebimento e outro para envio de informações. O padrão SATA é de apenas 1 lane. Para aumentar a taxa de transferência entre dispositivos de armazenamento e placas-mãe foi somado 2 conectores SATA 3 e o controlador foi adaptado: devido a diferença de clocks, codificação e protocolo dos padrões, você pode conectar 2 dispositivos SATA 3 ou um dispositivo SATA Express que ele se adapta sozinho através do conector extra de 4 pinos. Veja o diagrama do conector abaixo:

 Existe ainda outro tipo de porta SATA Express que é utilizada em HDDs, SSDs e placas de servidor. A pinagem deste conector você vê abaixo:

Imagem do diagrama de pinos do SATA Express

 

  O conector SATA Express apresentado acima, os pinos são explicados na tabela abaixo.

  De acordo com a tabela, são 6 Lanes para trafego de informações. Dependendo da configuração utilizada pode-se usar a interface SAS (4 lanes - porta B e C), interface SATAe (2 lanes PCI Express - porta C) ou a interface PCI Express (4 lanes - porta A e B). Isto é configurável através do pino explicado na linha 22 da tabela.

  Observe que há duas portas SATA 3 comuns e os 4 pinos extras (P1, P2, P3, P4) que fazem o controle e a identificação do dispositivo conectado: quando o conector SATA Express é utilizado, pelos pinos de controle passa um sinal que ativa um controlador PCI Express, já quando as portas SATA são utilizadas individualmente, este controlador é desativado. Isso também acontece quando é utilizada a interface SAS (portas A e C) e PCI Express (portas A e B). Para alimentação elétrica é utilizado o mesmo conector de alimentação da porta SATA comum de leitores de CD/DVD, HDDs e SSDs.

  Para a versão mais comum da porta SATA, apresentada na imagem do cabeçalho do artigo existe um conector de alimentação que deve ser utilizado junto do conector SATA. Este conector é apresentado abaixo:

   Veja abaixo uma foto dos conectores SATA e de alimentação de um HDD comum:

  Dispositivos SATA Express utilizam o mesmo conector de energia, mas só utilizam um fio preto (Terra), um vermelho (+5 Volts) e um amarelo (+12 Volts).

  Abaixo, um HDD com interface SATA Express:

  Abaixo você vê o cabo SATA Express:

  Agora, um HDD SATA Express:

  Além destes conectores apresentados existem um outro chamado de mSATA, ou micro SATA. Ele foi concebido para SSDs em tamanhos reduzidos e que são encaixados diretamente na placa-mãe. Veja a imagem abaixo:

   Ele parece ser completamente diferente do conector SATA comum. Observe o diagrama do conector:

   Veja agora a tabela de pinos do conector:

   A descrição dos pinos, abaixo:

  Observe as linhas 14, 15, 16 e 17 da tabela acima e veja que há um lane SATA 3 de 600 MB/s (já que o padrão mSATA veio depois de 2009), os únicos pinos utilizados para transmissão de dados. Não é tão complexo, já que, praticamente todos os pinos do slot mSATA não tem utilidade alguma, foram colocados neste conector para que futuramente pudesse ser adicionado funcionalidades sem perder a compatibilidade com os dispositivos atuais.

  Mesmo podendo ser adicionado linhas de dados a este slot, a indústria de tecnologia resolveu criar outros padrões parecidos, chamados de M.2 e NVMe que possuem linhas PCI Express junto de uma interface SATA, portanto, o slot mSATA já não é mais utilizado.

NA PLACA-MÃE

  O controlador SATA atualmente é integrado ao chipset ponte sul da placa mãe e seu diagrama de blocos é mostrado abaixo:

 > FIFO : Tanto no hardware quanto no software existem sistemas de enfileiramento de processos. O FIFO, sigla para First In, First Out que em português significa "Primeiro Entrar, Primeiro Sair" é um buffer, ou seja, uma memória RAM do tipo cache (formada por flip-flops) que permite enfileirar pacotes (sequências de dados) para que os dados fiquem armazenados temporariamente enquanto outros estão sendo tratados pelos circuitos;

 > Packet processing : É o processador de pacotes, isto é, as sequências de dados que chegam ao controlador SATA;

 > DMA : É a sigla para Direct Memory Access, que em português significa Acesso Direto a Memória. Este circuito é o responsável por intermediar a movimentação de dados do controlador SATA para a memória RAM do computador sem que haja a criação e execução de um processo pelo processador. Basicamente, ao invés de a CPU comandar a movimentação dos dados, que faz isso é o circuito DMA que está ligado a todas as portas SATA existentes no controlador;

 > SATA Link : Para cada porta SATA há um circuito chamado SATA Link. Nele que são executados os protocolos de comunicação entre o emissor e o receptor;

 > SATA Controller : Responsável pela identificação da conexão, de modo que o dispositivo conectado saiba com quem ele está se comunicando;

 > SATA PHY: PHY é a abreviação de Physical, que é a camada física, a parte do circuito responsável pela preparação dos dados para serem enviados pelo meio analógico, ou seja, as trilhas da placa-mãe. Este processo de preparação é a modulação ou codificação. No caso do padrão SATA é codificação, que como já foi dito, é a 8B/10B. Acesse o artigo sobre a conexão PCI Express e veja como funciona este sistema de codificação;

 > O PLL (Phase Locked Loop) você já deve saber, se leu o artigo sobre clock. O clock base do padrão SATA, que é 100 MHz, é recebido pelo PLL e ele faz a multiplicação deste sinal por 15 vezes (revisão 1), 30 vezes (revisão 2) ou 60 vezes (revisão 3) para sincronizar o emissor com o receptor de dados, além de gerar o sinal de sincronismo dos circuitos internos do controlador PCIe. Futuramente você verá mais detalhes sobre um circuito PLL.

  Para fazer com que todos estes circuitos se relacionem e funcionem há o firmware, conjunto de instruções que faz o hardware funcionar. No caso do padrão SATA, não temos acesso ao firmware, a prova disso é que não podemos alterar o multiplicador de clock do PLL;

 > TCB : Target Cycle Block (Configuration Space & Register): É neste circuito que estão as instruções de configuração de registro que o processador de pacotes utiliza para funcionar.

 > SMBus: Onde estão as informações do circuito. É mais utilizada em controladores SATA em adaptadores com interface PCI Express ou PCI para a identificação do dispositivo conectado.

 

  Vale lembrar que a conexão SATA também utiliza o modelo OSI, o mesmo utilizado na rede mundial de computadores para efetuar a comunicação entre emissor e receptor de dados. O modelo OSI consiste em 7 camadas de protocolos (neste caso, os protocolos são específicos para o padrão SATA). Estas 7 camadas são divididas entre as camadas da arquitetura do padrão SATA, onde a camada 1 do modelo OSI é a mais baixa, ou seja, a camada física (SATA PHY) e a camada 7 a mais alta, ou seja, a camada de software (aplicativo que vai gravar, ler ou apagar dados no dispositivo que utiliza a interface SATA).

 

  O chipset ponte sul nVidia nForce 630a, por exemplo, possui um controlador com 4 lanes SATA 2 de 300 MB/s. O controlador SATA também é responsável por controlar um RAID (Redundant Array of Independent Disks - Conjunto Redundante de Discos Independentes) ou JBOD (Just a Bunch Of Disks - Apens Um Monte De Discos) que serão estudados futuramente quando falarmos de HDDs e SSDs.

  Há ainda controladores SATA independentes, utilizados em placas muito antigas lançadas durante a primeira revisão da interface SATA e outros controladores feitos para serem encaixados em slots PCI Express, como o da imagem abaixo:

 

 Este é um adaptador SATA miniPCI Express

 

  Durante o período de transição entre SATA e PATA, surgiram alguns adaptadores SATA 1 de 150 MB/s para PATA de 133 MB/s, o que, obviamente era um gargalo para o sistema. Veja a imagem abaixo:

  

  Adaptadores SATA para slots PCI também são um problema de desempenho, já que o padrão PCI é de transferência de dados em paralelo e de apenas 133 MB/s (ou 264 MB/s em algumas versões mais atuais). Vale lembrar que era um barramento, portanto podia ser compartilhado com vários dispositivos e ter uma taxa de transferência menor ainda. Veja um adaptador desses abaixo:

 

  Não podemos esquecer das características elétricas da interface SATA! Os conectores presentes nas placas-mãe possuem capacitores SMD entre o chipset controlador e os contatos onde será encaixado o dispositivo! Separamos três esquemas elétricos de placas-mãe para você ver estes estes capacitores que, não possuem características padronizadas, isto é, o modelo do componente pode variar de placa para placa, apenas a capacitância deles que são em torno de 0,01 microFarad. As três placas selecionadas são da marca Gigabyte mas, isto vale para todas as outras. Observe:

 Esquema elétrico da GBT GA-M59SLI S4 Rev.: 1.01

 

 Esquema elétrico da GBT GA-M61PM S2 Rev.: 1.00

 

 Esquema elétrico da GBT GA-M55S S3 Rev.: 2.02

 

 Estes capacitores são apenas para uma simples filtragem de sinal e devem ser colocados em todas as interfaces SATA. Se você não sabe o que são e como funcionam capacitores, acesse este artigo do Hardware Central!

 

 

O DISPOSITIVO CONECTADO

  Um HDD, SSD, leitor de CD/DVD/Bluray, são as principais utilidades da interface SATA. Neles há um controlador com arquitetura ARM (a mesma arquitetura utilizada em chipsets de Smartphones) com uma interface SATA idêntica a da placa-mãe. Veja a imagem de um controlador de um HDD abaixo:

  Para o padrão SATA existem vários comandos: Leitura, gravação, exclusão de dados, envio de informações do dispositivo conectado, enfim, é assim que os controladores SATA se comunicam: há um conjunto de comandos (cada comando é uma sequência de pulsos elétricos) que a placa-mãe manda para o dispositivo conectado (ou vice-versa), para que ele busque, apague, grave informações.

 

   O envio de arquivos ocorre da mesma forma que nas redes de internet: há diversas camadas de protocolos. em artigos futuros você verá que o barramento PCI, PATA, Wi-Fi, a conexão PCI Express, SATA, Ethernet utilizam o modelo OSI para a transmissão de informações.

 

  Você já deve ter notado que não há uma trilha de sincronismo (clock) entre os controladores SATA. Se você não leu o artigo sobre clock, clique aqui!

  Futuramente, vamos estudar o funcionamento do PLL (Phase Locked Loop). Ele gera o clock para os componentes de um circuito a partir de um sinal feito por um cristal de quartzo. No caso de comunicações sem uma trilha para o sinal de sincronismo, os próprios dados enviados são codificados de uma forma que não fique longas sequências de uns ou de zeros. Isso é para que o circuito consiga mandar os dados de uma forma que o receptor consiga entender a sequência de pulsos recebidos sem a necessidade do sinal de clock.

  O controlador possui um PLL com um cristal de quartzo ou um multivibrador para a geração do sinal de sincronismo que é usado exclusivamente pelo circuito do dispositivo com interface SATA.

  Em várias placas-mãe, o clock base (ou clock de referência) para a interface SATA é de 100 MHz. Para as portas SATA 1 de 150 MB/s o multiplicador de clock é de 15 vezes, para as portas SATA 2 o multiplicador é de 30 vezes e para as portas SATA 3 o multiplicador é de 60 vezes.

  Chipsets como o SiS 964 e o VIA VT8237 que trabalham com a revisão 1 da interface SATA tinham problemas de compatibilidade com dispositivos SATA 2: além destes chipsets serem mixurucas, ao conectar um HDD com taxa de 300 MB/s eles não conseguiam se sincronizar. O problema foi resolvido pois as fabricantes de HDDs incluíram um jumper que quando habilitado fazia com que o dispositivo reduzisse a taxa de transferência para 150 MB/s.

  Em vários fóruns de tecnologia, há pessoas que dizem que se fizer overclock na conexão PCI Express, a porta SATA também vai ter o clock aumentado. Isso não é verdade! É importante ressaltar que, apesar de a interface PCI Express utilizar um mesmo nível de clock de referência que a interface SATA, se você "overclockar" a conexão PCI Express, a interface SATA vai continuar nos 100 MHz. As duas interfaces utilizam PLL's diferentes apesar de terem o mesmo clock base.

 

  Gostou do artigo? Então é só curtir e compartilhar! se ficou com dúvidas comente ou mande um e-mail para hardwarecentrallr@gmail.com

  Ajude a espalhar conteúdo relevante!

CRÉDITOS e REFERÊNCIAS

 

Desenhos, tabelas, imagens: Leonardo Ritter

Fontes: Micron Technology; SATA IO Organization; Clube do Hardware; InfoWester; Guia do Hardware; Livro de Redes de Computadores, de Gabriel Torres; Biblioteca de diagramas do Hardware Central; Trabalho de engenharia reversa feito pelo autor do texto.

 

Última atualização: 24 de Março de 2018.

Please reload

© 2019 Hardware Central Tecnologia Entretenimento e Comunicação do Brasil Ltda. Todos os direitos reservados.

Wix Editor / Revisão da web page: 3.0/2019 (07/10/19)