Por qué un SSD es más veloz que HDD (Memorias NAND)

 

En este vídeo vamos a hablar sobre los discos de estado sólido comparándolo primero con los discos convencionales, y analizando el por qué los discos de estado sólido son más veloces que los anteriores. Esto lo vamos a analizar desde el punto de vista de cómo trabajan ambos dispositivos y sobre todo cómo trabaja la memoria flash NAND que se encuentra en el interior de los discos de estado sólido. Luego en otro vídeo vamos a explicar los tipos que existen de SSD y qué hardware lo soporta. Y cuando hablo del hardware me estoy refiriendo al cpu y al chipset que va integrado en la placa base.

Discos Duros (HDD):


Empecemos a recordar que un disco duro convencional tiene partes móviles, se compone de uno o varios platos inmantados que giran  dentro de una caja de metal, igual que en un vinilo de música y de un cabezal que rasca el plato para poder leer la información guardada en el disco y también en este caso para escribir sobre su superficie. Cómo la cabeza debe estar bien alineada al plato, cualquier caída del disco duro pudiera significar la ruina del dispositivo.



Empecemos a recordar que un disco duro convencional tiene partes móviles, se compone de uno o varios platos inmantados que giran  dentro de una caja de metal, igual que en un vinilo de música y de un cabezal que rasca el plato para poder leer la información guardada en el disco y también en este caso para escribir sobre su superficie. Cómo la cabeza debe estar bien alineada al plato, cualquier caída del disco duro pudiera significar la ruina del dispositivo.


 
 

 

También ocurre que el cabezal debe desplazarse de un lado a otro para poder leer o escribir la información de un área específica con la que se debe alinear para poder llevar a cabo dicha tarea y esto compromete los tiempos de acceso a los datos haciendo que sea un dispositivo muy lento, aún si la información estuviera desfragmentada y el movimiento del cabezal fuera lineal sin tener que realizar saltos para acceder a la información.

A qué me refiero con esto último de la “información desfragmentada” y a los supuestos “saltos”. Resulta ser que cuando vamos borrando archivos y programas estos van dejando huecos o espacios vacíos en el lugar donde se hallaban grabados estos, entonces con el tiempo el usuario instala un nuevo programa o descarga un nuevo archivo y si éste es del mismo tamaño de aquel hueco disponible, el sistema lo coloca allí, pero si no cabe también lo coloca en ese sitio, sólo que el resto del programa o del archivo lo graba en otra parte. A esto se le llama “fragmentación”.



Y si el cabezal debe leer o grabar información que involucra a este nuevo programa o archivo tendrá que ir buscando sus “partes” por todo el disco, a eso me refiero con ir dando “saltos”. Un término inventado por mí. 


Entonces cuando desfragmentamos el disco, que es ir moviendo la información y reacomodándola, lo que se logra es poner a los programas y archivos en una sola pieza y no fragmentadas por todo el disco, es como ordenar la información para mejorar los tiempos de acceso a dicha información y que el cabezal haga una lectura o escritura lineal o secuencial sin estar dando saltos. Estos tiempos de acceso en los discos duros suelen ser en el orden de los milisegundos. Se han construido discos duros con platos más delgados para mejorar las velocidades en las vueltas que realiza el plato (revoluciones por minuto: rpm), han alcanzado los 5400 o 7200 RPM, pero aún así es imposible que alcancen la velocidad del cpu y la memoria ram.
Los hay de tipo IDE, Sata y los hay de un tamaño de 2.5 pulgadas para laptop y de 3.5 para ordenadores de sobremesa.
 

 

Discos de estado sólido:

  

Los discos de estado sólido en cambio no tienen partes móviles que perjudiquen los tiempos de acceso ni la latencia, son inaudibles e inmunes a las vibraciones externas y tampoco tienden a romperse fácilmente, aunque el calor si los afecta debido a que son pequeños y van acumulando calor sobre una superficie pequeña haciendo que calienten mucho, por eso es recomendable colocarles disipadores. 

Bien, como dije antes, mientras que los discos duros guardan los datos en placas o platos de metal que están girando, los SSD nunca se están moviendo, por eso tienen el nombre de “Estado sólido”, puesto que almacenan los archivos en microchips con memorias flash interconectadas entre sí.
 

En fin, estos discos vienen con memoria flash de tipo NAND que son memorias no-volátiles que mantienen la información almacenada aún cuando el disco se desconecta. No tienen cabezales físicos para grabar los datos, en su lugar incluyen un procesador integrado para realizar operaciones relacionadas con la lectura y escritura de datos, a este procesador lo conocemos con el nombre de “Controlador”. Estos procesadores, llamados controladores, son los que toman las "decisiones" sobre cómo almacenar, recuperar, almacenar en caché y limpiar los datos del disco, y su eficiencia es uno de los factores que determinan la velocidad total de la unidad.
Bien, este controlador lo que gestiona es una estructura de transistores de puerta flotante en la que está basada la memoria NAND.


Pero explicar lo que es un transistor me obligaría a explayarme demasiado y retroceder hasta el punto de explicar los tipos de materiales que existen: Conductores, aislantes y semiconductores. De hablarles sobre los electrones de valencia  que son los que se encuentran en la última órbita del átomo y tienen menos atracción con el núcleo y del modo en que podemos hacer que éstos abandonen el átomo y hablarles entonces sobre átomos donadores de electrones y aceptores, sobre el dopaje de los materiales semiconductores y con ello de la existencia de portadores mayoritarios y minoritarios en materiales semiconductores de tipo n y p,  luego sobre la unión p-n que sería el proceso de creación de un diodo , hasta llegar al transistor, que no es más que una union P-N-P o N-P-N, es decir dos diodos, uno entre base y emisor, polarizado en directo y otro diodo entre base y colector, polarizado en inverso. Y claro luego se derivan otras clases de transistores como los de puerta flotante.



Pero esta tarea de electrónica se las dejo a ustedes. Yo lo diré de forma muy simple.


Bien como dije el controlador gestiona una estructura de transistores de puerta flotante en la que está basada la memoria NAND. La programación de cada celda de memoria y su borrado se hace a través de los transistores que conforman dicha celda o célula mientras son gestionados por el controlador, es decir, el funcionamiento de la memoria NAND tiene sus particularidades en el diseño de cada celda de memoria. Los electrones son almacenados en el puente flotante al activar el canal de conducción por medio del voltaje que se le da a la puerta de control. Un efecto que se conoce como Efecto de campo, ya que al colocar un voltaje en la puerta de control se produce un campo eléctrico que hace mover las cargas (los electrones) hacia la puerta flotante por efecto túnel.

De forma que almacena  “0” en la celda cuando el campo eléctrico existe y  ha atrapado los electrones en la puerta flotante o escribe el valor de “1” si el campo eléctrico está ausente y la celda se encuentra vacía. Es algo contrario a lo que solemos usar en programación al codificar las señales. Debo aclarar que para almacenar un “1” no es necesario aplicar ningún voltaje porque es el estado normal de la celda.

 
Para leer el dato guardado en la celda simplemente se usa un voltaje positivo elevado en la puerta de control y si existe carga en la celda, es decir un “0” entonces el transistor no se enciende y  por tanto no conduce electricidad, pero si contiene un “1” el transistor se enciende y si puede conducir  la electricidad entre la fuente y el drenador.
Para el borrado se invierte la polaridad del voltaje colocado  en la puerta de control haciendo que las cargas eléctricas almacenadas en la puerta flotante sientan repulsión y se salgan de allí borrando la celda, esto cambia el “cero” guardado en un “1”, que indica que la celda está vacía.
 


Este proceso de grabado y borrado van desgastando a las celdas, sobre todo porque para el borrado de la celda se aplica un voltaje muy elevado en polarización inversa que va destruyendo al material por el efecto avalancha que es cuando los electrones se mueven tan rápido que chocan contra los átomos desprendiendo a más electrones que se seguirán chocando contra más átomos rompiendo el material, esto va dañando la capa de óxido o la puerta de flotación, por eso muchos módulos de memorias flash vienen con celdas extras para garantizar una mayor durabilidad. También existe una tecnología de desgaste de nivelación (TRIM) que lo que hace es desgastar todas las celdas de forma pareja, así no se van desgastan unas más que otras y de esta forma se desgastan más lentamente.  El tiempo de vida es entre 10.000 a un 1.000.000 de escrituras y borrados, dependiendo el proceso de fabricación y el voltaje necesario para el borrado.

En conclusión:
Los discos duros (HDD) tienen partes móviles que deben alinearse: Cabezal y platos, para poder obtener buenas lecturas y escrituras en la superficie del plato el cual necesitamos gire a una buena velocidad 5400 o 7200 RPM, lo cual hace que los tiempos de acceso sean lentos y aumente la latencia, esto empeora aún más cuando el disco se fragmenta. El orden en el que accede a los datos es en milisegundos.
 En cambio los SSD al usar memoria flash de tipo NAND los datos se acceden caso de forma instantánea en el orden de los  microsegundos, ya que se guardan dentro de los chips de los módulos de memoria flash, siendo veloces al momento de escribir dentro de una celda y tienen una buena velocidad al momento de leer y borrar los datos ya que los borra en bloques y no bit a bit como en las memorias NOR. Las NAND sólo pueden borrar bloques o palabras completas.
Es necesario destacar que las memorias flash están subdivididas en bloques (en ocasiones llamados sectores) y por lo tanto, para el borrado, se limpian bloques enteros para agilizar el proceso, ya que es la parte más lenta del proceso. No obstante, para reescribir un dato es necesario limpiar el bloque primero para después reescribir su contenido.
No olvidemos que de todas formas las memorias flash suelen ser más lentas que las memorias DRAM (RAM) cuyo acceso a los datos está en el orden de los nanosegundos.
  Ahora mira el vídeo.
 



 

Comentarios

Entradas populares de este blog

Cómo instalar Ubuntu junto con Windows paso a paso.

¿Qué es mejor single rank o dual rank?