Pendrives USB vs SSD: ¿por qué no rinden igual si ambos usan NAND Flash?

Escrito por Javier (Javisoft) López

Estamos totalmente familiarizados con los pendrives USB desde hace muchos años, donde más tarde llegaron los SSD como una mejora de los mismos, con mayor capacidad y velocidad, donde desplazaban a los HDD tradicionales. Pero poca gente se pregunta ¿por qué no rinden igual si se basan en la misma tecnología? ¿cuales son los factores limitantes? Hoy explicaremos todos los problemas y diferencias entre ambos.

Ambos dispositivos están limitados por una variedad de factores

ssd-usb-715x374

Al contrario de lo que podríamos pensar, ambos dispositivos tienen una serie de factores en contra que hacen que su rendimiento esté limitado. Estos factores son distintos entre unos y otros, pero antes de ingresar a estas limitaciones, quizás sea mejor comprender que es una NAND Flash como pequeña introducción, así puede que sea más fácil entender todas las explicaciones siguientes.

NAND Flash es simplemente un tipo de tecnología de almacenamiento no volátil que tiene la peculiaridad de no necesitar energía para poder almacenar los datos. Utiliza transistores de puerta flotante (floating-gate) que están conectados de manera que la conexión resultante se asemeja a una puerta (gate) NANA, donde varios transistores están conectados en serie y una línea de bits baja solo cuando todas las “word lines” están en un “high state”, de ahí el nombre.

P-BiCS-3D-NAND-Flash-array

Contiene dos compuertas (gates): la compuerta de control y la compuerta flotante, donde para programar una sola celda, se debe aplicar una carga de voltaje a la compuerta de control. Luego, los electrones son atraídos hacia la puerta de control, pero la puerta de flotante los atrapa dentro del sustrato donde pueden permanecer durante años en condiciones normales de operación. Para borrar una celda, la compuerta de control debe estar conectada a tierra y se aplica un voltaje al lado opuesto o al sustrato.

Esto implica que el borrado constante, la escritura y la lectura eventualmente desgastan los componentes de las NAND Flash, por lo que se clasifica de acuerdo con el número de ciclos de programa/borrado que puede manejar.

Por si esto fuera poco, tenemos varias tecnologías de NAND Flash: SLC, MLC, TLC y QLC, las cuales también influyen a la hora de comprender las diferencias de rendimiento.

Paralelismo, controlador, tipo de celdas, algoritmos e interfaces

The solid-state disk structure of SSD 3

Al principio del artículo hablábamos de limitaciones, y ahora que ya entendemos qué es NAND Flash, en que se basa y cómo funciona de manera básica podemos entender por qué existen diferencias de rendimiento.

En este caso en concreto de pendrives frente a SSD SATA el factor que más limita el rendimiento es el llamado paralelismo. El paralelismo viene determinado por dos factores más: el controlador y su uso, y el espacio físico del que dispone cada dispositivo. Comenzaremos con el espacio físico, ya que como todos sabemos un pendrive contiene un espacio minúsculo por norma general, sobre todo frente a un SSD de 2.5 pulgadas.

Pero ¿por qué es limitante? Pues porque más chips haya en una unidad más rápida puede ser, ya que el controlador puede acceder a un mayor número de chips al mismo tiempo, de ahí que hablemos de paralelismo y controlador. Esto se repite en SSD de diferentes tamaños, donde curiosamente a mayor capacidad mejor rendimiento.

Por su arquitectura y siempre que el controlador no fuera (teóricamente) limitante, a mayor número de chips el rendimiento es exponencial, lo cual es una ventaja, pero implica según el tipo de celdas un mayor voltaje en ellas y en el controlador, aumentando la temperatura. Esto se está solucionando poco a poco a medida que se necesita menor voltaje por celda y los controladores mejoran en paralelismo y velocidad.

El tipo de celda determina no solo la capacidad, sino la velocidad y el voltaje usado

qlc_nand_density

El controlador es un microchip incorporado cuya función es de control (evidentemente), pudiendo enviar a cabo todas las solicitudes de operación de SSD a partir de datos de lectura y escritura para la ejecución de la “recolección de basura” y el consumo mediante algoritmos de equilibrio. Todo ello con el fin de garantizar la rapidez y limpieza del SSD, donde además podrán escribir y leer en la memoria caché del dispositivo o incluso cifrar la información.

Los controladores, como ya hemos dicho, necesitan cada vez algoritmos más optimizados, los llamados algoritmos de asignación. Estos no solo reparten las instrucciones de lectura o escritura por celda, sino que intentan nivelar el desgaste (wear leveling) de las celdas con el paso del tiempo. Además cuanto más avanzado sea el controlador y sus algoritmos, más capacidades adquirirá.

USB performance

Por último, tenemos las llamadas interfaces. Sobra decir que USB 3.1 es bastante más rápido que el actual SATA 3 6 Gb/s, precisamente por su mayor velocidad (10 Gb/s). En tasas de rendimiento teóricas, incidimos en el término teóricas, USB 3.1 es capaz de alcanzar 1.2 GB/s o 1200 MB/s, mientras que SATA 3 es capaz de alcanzar 600 MB/s, justamente la mitad de rendimiento.

De todas formas, a no ser que el puerto sea Thunderbolt 3 y el dispositivo sea un M.2 NVMe por USB, un disco sólido siempre tendrá ventaja de rendimiento por su mayor espacio final, así que para igualar rendimientos los pendrives tradicionales deberían incluir unos chips de mucho menor tamaño para poder paralelizar más y así superar a los SSD comunes, ergo, mientras esto no se cumpla la tendencia seguirá igual por muy rápida que sea la interfaz.

Continúa leyendo
  • Rafael

    Interesante artículo. Gracias

    • Justo Vera

      x2

    • peli

      Tienes razón, un artículo muy bueno

  • Hiram

    Perfecta la información.