¿Es USB-C un sustituto técnicamente viable para los conectores SATA Express?

13

SATA Express, el sucesor de SATA, es demasiado nuevo para ser ampliamente utilizado todavía, pero la velocidad de avance de los SSD parece hacerlo inevitable, al igual que SATA reemplazó al IDE paralelo. A pesar del nombre, no es SATA en absoluto; es el protocolo AHCI o NVMe sobre PCIe, similar a lo que hace SOP (SCSI sobre PCIe). El conector SATA Express pasa directamente por dos carriles PCIe bidireccionales de velocidad completa a través de cuatro pares de señalización, sin encapsulación o traducción de protocolo, y el controlador AHCI o NVMe está integrado en el HD o SSD en lugar de que el controlador AHCI esté en la placa base como en el caso de SATA tradicional .

Este verano, se finalizó la especificación USB-C *, con una función llamada Modo Alt, que permite el uso de protocolos que no son USB a través de un puerto USB-C. En particular, permite pasar dos carriles PCIe bidireccionales a velocidad máxima a través de cuatro pares de señalización, sin encapsulación o traducción de protocolo (a diferencia de Thunderbolt, que encapsula PCIe). A diferencia del conector SATA Express grande y especializado, que solo se usa para el protocolo SATA Express, USB-C es pequeño y general, y se espera que pronto se vuelva omnipresente y reemplace todos los demás tipos de conectores USB (todas las combinaciones de tamaño completo, conectores mini y micro tipo A y tipo B para USB 2 y USB 3) en todos los tipos de dispositivos y hosts, e incluso reemplazan los conectores Displayport ya que el Modo Alt de USB-C permite pasar el protocolo Displayport.

Mi pregunta es para un ingeniero que trabaje con este tipo de interfaces, y es esta: ¿sería técnicamente factible y rentable usar USB-C en lugar del conector SATA Express especializado para conectar dispositivos SATA Express (es decir, dispositivos que usan AHCI o NVMe sobre PCIe) a las placas base? Parece que el conector SATA Express se creó simplemente debido a la falta de mejores opciones en ese momento, pero dado que USB-C puede pasar directamente PCIe (y también alimentación, incluida una opción para los 12V comúnmente utilizados por HD de 3.5 "), parece como si fuera un sustituto técnicamente factible y tal vez incluso más barato, ya que es más pequeño y consume menos espacio en PCB. Pero como no diseño este tipo de cosas, quiero preguntarle a alguien que lo haga, para ver si mi análisis es exacto.

Por supuesto, la viabilidad técnica y la rentabilidad son necesarias pero no suficientes para que los fabricantes de HD y SSD utilicen USB-C de esta manera, pero los otros factores (especialmente la política entre empresas) están fuera del alcance de mi pregunta. Si los fabricantes usaran conectores USB-C en sus nuevos discos duros y SSD SATA Express, entonces habría un período de transición en el que las placas base incluirían conectores USB-C y SATA, lo mismo que las placas base incluyeron conectores SATA y IDE paralelos durante esa transición

* Ver http://www.usb.org/developers/docs/usb_31_102214.zip

Porthem
fuente
No estoy seguro de que la parte "rentable" sea responsable todavía ...
user2813274
3
Divulgación completa: pregunté en superuser.com pero parece que la gente no entendió mi pregunta sobre la política o sobre si los fabricantes harían esto, en lugar de sobre los problemas de ingeniería (factibilidad técnica y rentabilidad), y no obtuve un Responde a mi pregunta allí.
Porthem
@Porthem Para referencia futura: por favor, no publique mensajes cruzados. La política de StackExchange está en contra de la publicación cruzada. Puede hacer una marca a los moderadores para migrar una pregunta a otra pila, si así lo desea.
Nick Alexeev
1
Lo siento, no estaba al tanto de eso. Antes de volver a preguntar aquí, pregunté al superusuario si estaría bien volver a preguntar aquí, pero no obtuve una respuesta.
Porthem
1
Tampoco veo una pregunta real, o si la pregunta es "es x técnicamente posible", la respuesta es sí.
Passerby

Respuestas:

10
  • Sata-Express utiliza 4 pares diferenciales para la señalización, componiendo dos carriles PCI-e.
    También requiere algunas conexiones auxiliares (tierra, etc.), pero la señalización primaria se realiza utilizando los 4 pares diferenciales.
  • La especificación USB-3.1 define varios conectores diferentes: Sin embargo, todos menos el conector USB-c claramente tienen pines insuficientes para ser aplicables.

  • El pinout del conector USB-c: ingrese la descripción de la imagen aquí

El conector hace tener suficientes pares diferenciales para el desarrollo adecuado de dos carriles PCI-e (y por efecto, podría probablemente llevar teóricamente Sata-Express Sin embargo.:

  • Este conector, por diseño , no está "codificado". Esto significa que se puede insertar en dos orientaciones diferentes. Cuando se usa para USB-3, los pares coincidentes se conectan entre sí (por ejemplo, A1-B1, A2-B2, etc.), por lo que invertir el conector es inofensivo. Para PCI-e, esto podría ser un problema, ya que invertiría completamente el cableado o (con un diseño inteligente) cambiaría el orden de los carriles en el bus PCI-e.
    Confieso que no sé lo suficiente sobre PCI-e para decirte si cambiar los carriles físicos sería un problema aquí.
  • Desde el punto de vista del organismo de aplicación, usando el conector USB-c algo otra a continuación, USB-c es una horrible idea, ya que va a conducir a la gente de conectar dispositivos USB-3 en su hipotética placa base PCI-e-sobre-USB-c, y enchufando Dispositivos PCI-e-over-USB-c en puertos USB-3. Hay una razón por la que tenemos diferentes conectores para diferentes cosas.

Siendo realistas, el conector USB-c podría modificarse con bastante facilidad para que sea incompatible con los conectores USB-3, en cuyo punto básicamente solo tendría otro conector PCI-e. Teniendo en cuenta que una de las principales decisiones de diseño para el conector Sata-Express actual es la compatibilidad con versiones anteriores con SATA normal , no es probable que suceda.

Además, la definición de interfaz SATA-express proporciona una gran cantidad de conectividad adicional destinada para uso empresarial (consulte SFF-8639 ). Hay versiones especializadas que tienen cuatro carriles PCI-e y un canal SATA plano opcional adicional. Esto es físicamente compatible con el conector SATA-express normal del extremo del dispositivo (si conecta un dispositivo SFF-8639 a una interfaz SATA-express, simplemente recurre a SATA-express). No hay forma física de que pueda enrutar toda la conectividad requerida para una interfaz SFF-8639 a través de un conector USB-c.

ingrese la descripción de la imagen aquí

El estándar SATA actual tiene muchas cosas para uso empresarial que quizás no haya visto. En particular, hay unidades SAS, que utilizan el conector SFF 8482 , que, una vez más, es físicamente compatible con los conectores SATA actuales (e interoperará de manera segura a la velocidad de transferencia más lenta del dispositivo si está interconectado, al igual que SFF-8639).

Las decisiones de diseño para el conector SATA-express están muy claramente en línea con las decisiones de diseño para los conectores SATA y SAS.

TL; DR - Teóricamente, podría funcionar. Siendo realistas, es probable que nadie lo haga.

Connor Wolf
fuente
No veo por qué dices que usar USB-C para algo que no sea el protocolo USB es una idea terrible. Es el punto completo de la función Alt Mode, y tanto Displayport como PCIe ya están planificados para su uso a través de USB-C. La señalización fuera de banda se realiza tras la conexión (a través de la línea CC) para negociar qué protocolo usar en TX / RX-1/2, diseñado para evitar daños cuando se conectan dispositivos / hosts incompatibles, y la clase de cartelera USB informa a los usuarios cuando hay dispositivos incompatibles conectados. Sin embargo, los carriles adicionales de SFF-8639 son una ventaja, y esa parece ser la razón principal por la que USB-C no es adecuado.
Porthem
@Porthem: si existen disposiciones para señalar el uso del conector para sistemas de señalización alternativos, se convierte simplemente en una idea bastante mala, en lugar de una idea terrible. Tener múltiples sistemas de señalización no compatibles que usan el mismo conector generará confusión para el usuario final. También significa que cada dispositivo SATA-Express que use el conector USB-c tendrá que tener el hardware adicional incorporado para permitirle manejar el proceso de negociación cuando esté enchufado en algún lugar incorrecto.
Connor Wolf
Realmente, creo que la pregunta aquí es "¿por qué"? Tenemos un conector diseñado específicamente para SATA-Express. ¿Por qué usarías un conector diferente? La diferencia de costos es insignificante, los beneficios son muy discutibles, y hacerlo inevitablemente conducirá a la confusión. No es que el espacio en las placas base de las computadoras sea tan importante.
Connor Wolf
Además, USB-c normalmente (es decir, cuando se usa para USB real) solo usa la mitad de los pares, lo que significa que está casi garantizado que el 95% de los cables USB-c solo tendrán la cantidad de conductores necesarios para soportar ese uso -caso. Sería como tratar de explicar por qué necesita un cable DVI de doble enlace especial para algunos monitores, solo 100 veces peor porque sería un cable muy comercializado, en lugar del cable DVI ocasional.
Connor Wolf
1
Le pregunté sobre la viabilidad técnica, que explicó que es "sí" para el SATA Express actual pero "no" para las versiones posteriores (SFF-8639) debido a los carriles adicionales de este último, y sobre la rentabilidad, que parece ser aún desconocida y dependerá del costo del protocolo de hardware de negociación. También opinó que es una mala idea y preguntó "por qué", así que respondí sobre esas cosas. Marcaré su respuesta como aceptada; ¿puede dividir la parte objetiva ("sí" para el SATA Express actual pero "no" para las versiones de 8 pares de señalización) y la parte de opinión en secciones separadas?
Porthem
1

Esto debería ser posible porque el Tipo C puede llevar una conexión Pcie3 x4 y puede proporcionar hasta 100 vatios de potencia. Pero probablemente no sería alimentado desde la placa base.

Y para el problema que se señaló de la conexión incorrecta de PCIe: allí puede usar mux de alta velocidad.

Además, no creo que esto se use todavía por la simple razón de la latencia: en primer lugar, la conexión determina la orientación, luego negocia Poserdilivery y luego negocia el protocolo de comunicación. Y entonces el ahci / nvme puede iniciar.

ingrese la descripción de la imagen aquí fuente: http://www.ti.com/lit/wp/slly021/slly021.pdf

Skyper100MC
fuente
-1

No lo creo. SATA Express utiliza dos carriles PCIe. USB 3.1 solo proporciona uno.

Jay Carlson
fuente
2
USB-C proporciona cuatro pares de señalización, que es suficiente para dos carriles PCIe bidireccionales.
Porthem