A medida que las computadoras se vuelven más pequeñas, también deben hacerlo los componentes de hardware, como las unidades de almacenamiento. La introducción de unidades de estado sólido permitió diseños más delgados como los Ultrabooks, pero esto chocó con la interfaz SATA estándar de la industria.
La interfaz mSATA se diseñó para crear una tarjeta de perfil delgado que pudiera interactuar con la interfaz SATA. Surgió un nuevo problema cuando los estándares SATA 3.0 limitaron el rendimiento de los SSD. Se tuvo que desarrollar una nueva forma de interfaz de tarjeta compacta para corregir estos problemas.
Originalmente llamada NGFF (factor de forma de próxima generación), la nueva interfaz se ha estandarizado en la interfaz de la unidad M.2 según las especificaciones de la versión 3.2 de SATA.
Velocidades más rápidas
Si bien el tamaño es un factor en el desarrollo de una interfaz, la velocidad de la unidad es igualmente crítica. Las especificaciones SATA 3.0 restringieron el ancho de banda real de una SSD en la interfaz de la unidad a alrededor de 600 MB/s, que muchas unidades han alcanzado. Las especificaciones SATA 3.2 introdujeron un nuevo enfoque mixto para la interfaz M.2, como sucedió con SATA Express.
En esencia, una nueva tarjeta M.2 puede usar las especificaciones SATA 3.0 existentes y estar restringida a 600 MB/s. O bien, puede usar PCI-Express, que proporciona un ancho de banda de 1 GB/s bajo los estándares PCI-Express 3.0 actuales. Esa velocidad de 1 GB/s es para un solo carril PCI-Express, pero es posible usar varios carriles. Según la especificación M.2 SSD, se pueden usar hasta cuatro carriles. En teoría, el uso de dos carriles proporcionaría 2,0 GB/s, mientras que cuatro carriles proporcionarían hasta 4,0 GB/s.
Con el eventual lanzamiento de PCI-Express 4.0, estas velocidades se duplicarían efectivamente. El lanzamiento de PCI-Express 5.0 en 2017 vio un aumento en el ancho de banda a 32 GT/s, con 63 GB/s en una configuración de 16 carriles. PCI-Express 6.0 (2019) vio otra duplicación del ancho de banda a 64 GT/s, lo que permite 126 GB/s en cada dirección.
No todos los sistemas alcanzan estas velocidades. La unidad M.2 y la interfaz deben configurarse en el mismo modo. La interfaz M.2 utiliza el modo SATA heredado o los modos PCI-Express más nuevos. La unidad selecciona cuál usar.
Por ejemplo, una unidad M.2 diseñada con el modo heredado SATA está restringida a 600 MB/s. Si bien la unidad M.2 es compatible con PCI-Express hasta cuatro carriles (x4), la computadora usa solo dos carriles (x2). Esto da como resultado velocidades máximas de 2,0 GB/s. Para obtener la mayor velocidad posible, verifique qué admiten la unidad y la computadora o la placa base.
Tamaños más pequeños y más grandes
Uno de los objetivos del diseño de la unidad M.2 era reducir el tamaño total del dispositivo de almacenamiento. Esto se logró en una de varias maneras. Primero, las tarjetas se hicieron más estrechas que en el factor de forma mSATA anterior. Las tarjetas M.2 tienen 22 mm de ancho, en comparación con los 30 mm de mSATA. Las tarjetas también son más cortas, con 30 mm de largo, en comparación con los 50 mm de mSATA. La diferencia es que las tarjetas M.2 admiten longitudes más largas de hasta 110 mm. Eso significa que estas unidades pueden ser más grandes, lo que proporciona más espacio para chips y, por lo tanto, mayores capacidades.
Además de la longitud y el ancho de las tarjetas, existe la opción de tableros M.2 de una o dos caras. Las placas de un solo lado brindan un perfil delgado y son útiles para computadoras portátiles ultradelgadas. Una placa de doble cara permite instalar el doble de chips en una placa M.2, lo que permite una mayor capacidad de almacenamiento. Esto es útil para aplicaciones de escritorio compactas donde el espacio no es tan crítico.
El problema es que debe tener en cuenta qué tipo de conector M.2 hay en la computadora, además del espacio para la longitud de la tarjeta. La mayoría de las computadoras portátiles solo usan un conector de un solo lado, lo que significa que las computadoras portátiles no pueden usar tarjetas M.2 de dos lados.
Modos de comando
Durante más de una década, SATA ha hecho del almacenamiento una operación plug-and-play. Esto se debe a la interfaz simple y la estructura de comando AHCI (Interfaz de controlador de host avanzado).
El AHCI es la forma en que las computadoras comunican instrucciones con los dispositivos de almacenamiento. Está integrado en todos los sistemas operativos modernos y no requiere la instalación de controladores adicionales al agregar nuevas unidades.
El AHCI se desarrolló en una era en la que los discos duros tenían una capacidad limitada para procesar instrucciones debido a la naturaleza física de los cabezales y platos de los discos. Una única cola de comandos con 32 comandos fue suficiente. El problema es que las unidades de estado sólido actuales hacen mucho más, pero aún están restringidas por los controladores AHCI.
La estructura de comando y los controladores NVMe (Non-Volatile Memory Express) se desarrollaron para eliminar este cuello de botella y mejorar el rendimiento. En lugar de utilizar una sola cola de comandos, proporciona hasta 65 536 colas de comandos, con hasta 65 536 comandos por cola. Esto permite un procesamiento más paralelo de las solicitudes de lectura y escritura de almacenamiento, lo que aumenta el rendimiento sobre la estructura de comando AHCI.
Si bien esto es genial, hay un pequeño problema. AHCI está integrado en todos los sistemas operativos modernos, pero NVMe no lo está. Los controladores deben instalarse sobre los sistemas operativos existentes para aprovechar al máximo las unidades. Ese es un problema para muchos sistemas operativos antiguos.
La especificación de la unidad M.2 permite cualquiera de los dos modos. Esto facilita la adopción de la nueva interfaz con las computadoras y tecnologías existentes. A medida que mejora la compatibilidad con la estructura de comandos de NVMe, se pueden usar las mismas unidades con este nuevo modo de comando. Sin embargo, cambiar entre los dos modos requiere que se vuelvan a formatear las unidades.
Consumo de energía mejorado
Una computadora móvil tiene un tiempo de funcionamiento limitado según el tamaño de sus baterías y la energía consumida por sus componentes. Las unidades de estado sólido reducen el consumo de energía del componente de almacenamiento, pero hay margen de mejora.
Dado que la interfaz SSD M.2 es parte de la especificación SATA 3.2, incluye otras características más allá de la interfaz. Esto incluye una nueva característica llamada DevSleep. A medida que más sistemas están diseñados para entrar en modo de suspensión cuando se cierran o apagan, en lugar de apagarse por completo, hay un consumo constante de la batería para mantener algunos datos activos para una recuperación rápida cuando se activa el dispositivo. DevSleep reduce la cantidad de energía utilizada por los dispositivos al crear un nuevo estado de menor energía. Esto debería extender el tiempo de funcionamiento de las computadoras que se ponen en modo de suspensión.
Problemas al arrancar
La interfaz M.2 es un avance en el almacenamiento y rendimiento de la computadora. Las computadoras deben usar el bus PCI-Express para obtener el mejor rendimiento. De lo contrario, funciona igual que cualquier unidad SATA 3.0 existente. Esto no parece un gran problema, pero es un problema con muchas de las primeras placas base en utilizar la función.
Las unidades SSD ofrecen la mejor experiencia cuando se utilizan como unidad raíz o de arranque. El problema es que el software de Windows existente tiene un problema con muchas unidades que se inician desde el bus PCI-Express en lugar de SATA. Esto significa que tener una unidad M.2 con PCI-Express no será la unidad principal donde se instalen el sistema operativo o los programas. El resultado es una unidad de datos rápida pero no la unidad de arranque.
No todas las computadoras y sistemas operativos tienen este problema. Por ejemplo, Apple ha desarrollado macOS (o OS X) para usar el bus PCI-Express para particiones raíz. Esto se debe a que Apple cambió sus unidades SSD a PCI-Express en la MacBook Air de 2013, antes de que se finalizaran las especificaciones M.2. Microsoft ha actualizado Windows 10 para admitir las nuevas unidades PCI-Express y NVMe. Las versiones anteriores de Windows también pueden funcionar si el hardware es compatible y los controladores externos están instalados.
Cómo el uso de M.2 puede eliminar otras funciones
Otra área de preocupación, particularmente con las placas base de escritorio, se refiere a cómo se conecta la interfaz M.2 al resto del sistema informático. Hay un número limitado de carriles PCI-Express entre el procesador y el resto de la computadora. Para utilizar una ranura para tarjeta M.2 compatible con PCI-Express, el fabricante de la placa base debe quitar esos carriles PCI-Express de otros componentes del sistema.
La forma en que esos carriles PCI-Express se dividen entre los dispositivos en las placas es una gran preocupación. Por ejemplo, algunos fabricantes comparten los carriles PCI-Express con puertos SATA. Por lo tanto, el uso de la ranura para unidades M.2 puede consumir más de cuatro ranuras SATA. En otros casos, el M.2 puede compartir esos carriles con otras ranuras de expansión PCI-Express.
Compruebe cómo está diseñada la placa para asegurarse de que M.2 no interfiera con el uso potencial de otros discos duros SATA, unidades de DVD, unidades de Blu-ray u otras tarjetas de expansión.