Intruducci´n a los discos duros de estado s´lido                        o                                o                ...
1.    Un poco de historia   No es nada nuevo que la mayor´ de dispositivos que utilizamos hoy en d´ en la inform´tica     ...
2.       Diseccionando un SSD2.1.      El disco al desnudo          Figura 1: Vista superior de un SSD                    ...
2.2.2.      Memoria no vol´til                          a    Utilizando tecnolog´ flash, y gracias al avance en la reducci´...
2.2.3.      Problemas asociados al uso de memoria no vol´til                                                        a    L...
La amplificaci´n de escritura trae consigo otro problema adicional, si cada vez que reescribi-                omos una celd...
2.2.4.     Soluciones Software para problemas Hardware    Para atajar estos inconvenientes f´                             ...
2.4.    Memoria cach´                    e    Todos los discos de estado s´lido incorporan memoria cach´. Seg´n el uso que...
3.1.      ¿Por qu´ necesito un SSD?                 e                     Figura 8: Una gr´fica es suficiente para ilustrar ...
4.      La longevidad de un SSD    Cuando hablamos de que un disco de estado s´lido tiene una vida media muy peque˜a, nos ...
5.    Conclusiones    La tecnolog´ de estado s´lido, esta comenzando a llegar al usuario final ahora. Si bien ya es        ...
6.   Bibliograf´               ıa     www.anandtech.com       • The SSD Anthology       • The SSD Relapse       • Understa...
Upcoming SlideShare
Loading in...5
×

Introducción a los discos de estado sólido documento

788

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
788
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
31
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Introducción a los discos de estado sólido documento

  1. 1. Intruducci´n a los discos duros de estado s´lido o o Adri´n Nieto P´rez a e 25 de mayo de 2011´Indice1. Un poco de historia 22. Diseccionando un SSD 3 2.1. El disco al desnudo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2.2. Las celdas de memoria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2.2.1. Memoria vol´til . . . . . . . . . . . . . . . . . . . . a . . . . . . . . . . . . . 3 2.2.2. Memoria no vol´til . . . . . . . . . . . . . . . . . . a . . . . . . . . . . . . . 4 2.2.3. Problemas asociados al uso de memoria no vol´til a . . . . . . . . . . . . . 5 2.2.4. Soluciones Software para problemas Hardware . . . . . . . . . . . . . . . 7 2.3. El cerebro de un SSD, la controladora . . . . . . . . . . . . . . . . . . . . . . . . 7 2.4. Memoria cach´ . . . . . . . . . . . . . . . . . . . . . . . . e . . . . . . . . . . . . . 8 2.5. El condensador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83. El rendimiento de un SSD 8 3.1. ¿Por qu´ necesito un SSD? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e 94. La longevidad de un SSD 10 4.1. Haciendo n´meros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 u 4.2. Un ejemplo real . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105. Conclusiones 116. Bibliograf´ ıa 12 0 Este trabajo est´ editado con licencia “Creative Commons” aReconocimiento-NoComercial-CompartirIgual bajo la misma licencia 3.0 Espa˜a. n 1
  2. 2. 1. Un poco de historia No es nada nuevo que la mayor´ de dispositivos que utilizamos hoy en d´ en la inform´tica ıa ıa aactual, fueron ideados entre la decada de los cincuenta y sesenta. Los SSD1 no son una excepci´n. En la ´poca de los tubos de vac´ apoy´ndose en la tec- o e ıo, anolog´ de las memorias de n´cleo magn´tico ıa u e 2 aparecen como memorias auxiliares. Debido ala veloz evoluci´n que sufri´ la memoria en ese tiempo, la idea qued´ aparcada hasta los a˜os o o o nsetenta, donde volver´ a intentarse, s´lo que ´sta vez se decidi´ utilizar semiconductores lo que ıa o e ode nuevo, volvi´ a interrumpir la evoluci´n de los S.S.D. debido al alt´ o o ısimo coste por unidad dealmacenamiento. En 1995 y tras el fracaso de los discos basados en celdas de memoria DRAM3 la compa˜ia nM-Systems lanza al mercado una serie de dispositivos cuya principal novedad era el uso dememoria basada en Flash, la cual erradicaba uno de los principales problemas de la memoriaDRAM. la necesidad de alimentaci´n permanente. o Gracias a su elevado tiempo medio entre fallos4 , fue uno de los detonantes que les habrir´ ıanun hueco en el mundo aeroespacial y militar, donde las partes m´viles de un disco mec´nico o aintruducen altas tasas de fallo. Para el usuario de a pie, los SSD no llegar´ al mercado hasta el a˜o 2000, cuando IBM ıan ny Trek Technology presentaron el primer pendrive. Gracias a la reducci´n de la distancia de ointegraci´n, los pendrives han dejado de ser una herramienta para transportar un par de docu- omentos PDF a convertirse en aut´nticos discos duros de ”bolsillo”. Es gracias a esta reducci´n e ode coste, es posible que durante el a˜o 2011 podamos afirmar que los SSD son alternativas npara el p´ blico general a los discos duros convencionales. u 1 Solid-State Drive., disco duro de estado s´lido en castellano o 2 Al basarse en fen´menos electromagn´ticos se comportan como memoria est´tica. o e a 3 Dynamic Random Access Memory, memoria din´mica de acceso aleatorio. a 4 M.T.B.F. Mean Time Between Failures 2
  3. 3. 2. Diseccionando un SSD2.1. El disco al desnudo Figura 1: Vista superior de un SSD Figura 2: Vista inferior de un SSD Al observar el disco1 comprobamos que hay numerosos componentes distintos. Nos ce˜iremos na los componentes que intervienen directamente en el proceso de almacenamiento de los datos,sin entrar en detalle de la electr´nica necesaria para su funcionamiento2 o Figura 1: Observamos la controladora del SSD justo en el centro, rodeada por la parte izquierda de ocho chips de memoria NAND. A la derecha de la imagen junto con diversos componentes electr´nicos se encuentra el conector al bus SATA y el de alimentaci´n. o o Figura 2: Vuelven a aparecer otros ocho chips de memoria NAND, los cuales son exacta- mente iguales a los dem´s del disco (donde la capacidad total vendr´ determinada entre a a otras por un produto de la capacidad de cada chips, por el n´mero de estos). Adem´s u a podemos ver como algo distintivo de la calidad del disco, la presencia de un ”super- condensador”del cual hablaremos en el siguiente ep´ ıgrafe.Como podemos observar, el disco carece por completo de partes m´viles, en cierta medida orecordando su aspecto al de un pendrive.2.2. Las celdas de memoria En los discos comerciales modernos existen dos tecnolog´ disponibles para construir las ıasunidades m´ ınimas de almacenamiento.2.2.1. Memoria vol´til a Actualmente est´ en desuso debido a su mala relaci´n entre coste y prestaciones, a oya que su coste por gigabyte muy superior a las dem´s alternativas de almacenamiento. El unico a ´dispositivo que puede adquirirse en el mercado actual, es el denominado Gigabyte I-RAM elcual emplea tecnolog´ DDR2. Al estar basado en memoria RAM tradicional, es necesario que ıael dispositivo incorpore una bater´ similar a la de los m´viles ya que de lo contrario ıa oal apagar el ordenador, se borrar´ todos los datos del disco.Los pros como los contras saltan a ıanla vista, frente a tasas de transferencia asombrosas, tenemos un almacenamiento muy inseguro,algo que desde luego no ayuda a mejorar su penetraci´n en el mercado. o 1 En el sentido de las agujas del reloj. 2 Condensadores, resistencias, reguladores de tensi´n etc. o 3
  4. 4. 2.2.2. Memoria no vol´til a Utilizando tecnolog´ flash, y gracias al avance en la reducci´n de la distancia de integraci´n ıa o oes posible lograr un buen compromiso entre el coste por gigabyte y el rendimiento de estasceldas de memoria. En ´ste momento, todas las unidades de almacenamiento basadas en eestado s´lido emplean esta tecnolog´ o ıa. Para responder a las distintas demandas del mercado, aparecen dos tecnolog´ que no son ıas,m´s que diferentes formas de interpretar el contenido f´ a ısico de la celda. Figura 3: Diferentes interpretaciones, para la misma celda. Celdas de una sola capa1 : La curva de potencial que puede almacenar una celda se in- terpreta de forma binaria, es decir, se establecen unos m´rgenes a partir de los cuales a se considera almacenado un cero, o un uno. Logran un mejor desempe˜o y duracion, ya n que no se ven afectadas por el “problema del borrado” de las celdas multicapa. Celdas multicapa2 : Se establecen dos o tres niveles de potencial, de forma que el numero total de estados que se pueden almacenar en la celda sean iguales a dos elevado al n´mero u de niveles. De esta forma multiplicaremos el espacio disponible sin perder de- masiada velocidad, aunque tendremos que estar dispuesto a lidiar con los problemas que genera. El proceso de escribir f´ ısicamente una celda de memoria flash consiste en borrar la celda, y luego escribir el valor correspondiente. Si tenemos en cuenta que en una celda ya no se escribe solo un bit, esto puede significar que cada vez que se borre una celda se borrar´ toda la informaci´n que contenga, sea o no lo que queremos eliminar. a o 1 En Ingl´s, Single Layer Cell SLC. e 2 En Ingl´s, Multi-Layer Cell e 4
  5. 5. 2.2.3. Problemas asociados al uso de memoria no vol´til a La memoria basada en tecnolog´ flash tiene una importante limitaci´n f´ ıa o ısica. En construc-ci´n de las memorias NAND, cada celda es un bloque de 512KBytes que a su vez se odivide en p´ginas, usualmente de 4KBytes. Aunque podemos leer cada una de las p´ginas a ade la memoria, la unidad m´ ınima de borrado es el bloque. Adem´s cada celda individual as´lo puede ser escrita un n´mero determinado de veces, el cual es inversamente proporcional a o ula distancia de integraci´n. Es importante resaltar que esta cifra a priori es muy peque˜a, del o norden de 10 4 ciclos de escritura para la litograf´ de 32nm. ıa Figura 4: Esquema del proceso de escritura en un disco SSD. Un fen´nomeno de amplificaci´n de escritura surge cuando para escribir un archivo en disco o oes necesaria escribir m´s sectores de los que ocupa el archivo. a Como se observa en la figura 4 cuando escribimos en un bloque ya ocupado, es necesarioeliminar todo el bloque, para despues volver a escrbir el nuevo dato, junto con la informaci´n oque ya ten´ El factor de amplificaci´n de lectura se calcula de la siguiente forma: ıa. o N´mero de bytes a escribir u WA = N´mero de bytes realmente escritos u Si suponemos por ejemplo un factor de amplificaci´n de lectura de 0.5 un disco SSD ver´ su o alongevidad reducida a la mitad. Para ello los fabricantes de SSD, implementan estrategias dewear-leveling 1 para asegurar que cada una de las celdas se escribe el mismo n´mero de veces. Es uun mecanismo totalmente transparente para el sistema operativo, ya que la controladora puedereasignar din´micamente que celdas de memoria f´ a ısicas est´n asociadas con una determinada adirecci´n. o 1 En castellano, balanceado de carga. 5
  6. 6. La amplificaci´n de escritura trae consigo otro problema adicional, si cada vez que reescribi- omos una celda borramos m´s de lo que escribimos, podemos plantearnos una pregunta ¿d´nde a oalmacenamos esa informaci´n extra que no deber´ ser borrada? o ıa Figura 5: El espacio reservado acude en nuestra ayuda. La soluci´n es a˜adir, o reservar parte de las celdas como almacenamiento extra para estos o ncasos. Los fabricantes de discos de estado s´lido se aprovechan de la trampa1 existente en el oredondeo 2 a potencias de base diez en los discos magn´ticos, para reducir costes.(No olvidemos eque una celda de memoria no tendr´ sentido en una capacidad distinta a un m´ltiplo de una ıa upotencia de dos). As´ reservan parte del espacio disponible en las celdas (entre un 7 y ıun 25 % dependiendo del uso al que vaya destinado el disco) sin que el usuario convencionalnote nada raro en su falta de espacio. El siguiente problema, viene unido a una diferencia(otra m´s) entre los SSD y los discos atradicionales. Cuando en un disco tradicional borramos un sector, el LBA3 que lo apunta semarca como disponible. Lo creamos o no, los SSD funcionan de otra manera. Funci´n o Disco tradicional Disco SSD Crear archivo Escribe en un sector Escribe en una p´gina a Sobreescribir archivo Escribe los nuevos datos Escribe en una p´gina diferente si es posible, a en el mismo sector. de lo contrario borra la p´gina y la sobreescribe. a Borrar archivo No se modifica el sector No se modifica el sector Figura 6: Respuestas del disco a diferentes operaciones. 1 La compa˜ia Seagate fue condenada a pagar indemnizaciones por este hecho n 2 Utilizan la numeraci´n en base 10 en lugar de la correspondiente en base 2. 109 ≈ 230 o 3 Logical Block Address, unidad l´gica que permite acceder a cada sector del disco magn´tico o e 6
  7. 7. 2.2.4. Soluciones Software para problemas Hardware Para atajar estos inconvenientes f´ ısicos, existen una serie de estrategias disponibles seg´n uel sistema operativo, capaces de reducir de manera dr´stica el n´mero de ciclos de escritura a udurante el uso del disco. El comando TRIM: Como ya hemos comentado, el sistema operativo desconoce cuando un bloque1 se encuentra en desuso. Este hecho imposibilita la la controladora del disco que planifique los reseteos”de dichas celdas. Causando una degradaci´n del rendimiento a o medida que el disco se usa. Para resolver este problema se introdujo un nuevo comando ATA. Su funcionamiento es bien sencillo. El sistema operativo informa a la controlado- ra de los bloques que ocupaba el archivo antes de ser borrado del ´ ındice de archivos. De esta forma, la controladora planifica el reinicio de las celdas durante los momentos de inactividad del disco. Deshabilitar los planificadores de acceso a disco: En los sistemas basados en LINUX, el planificador de acceso a disco fue dise˜ado para minimizar al m´ximo los movimientos n a de la cabeza de lectura de los discos magn´ticos. En los discos SSD, al tener un tiempo e de b´squeda pr´cticamente nulo, la planificaci´n en este caso es completamente innece- u a o saria, siendo suficiente una cola FIFO, sin ninguna l´gica adicional para lograr un o rendimiento ´ptimo. o Desactivar o mover el archivo de intercambio: El archivo de intercambio puede ser un problema importante en los discos de estado s´lido. En equipos de escritorio suele tener o tama˜o que oscila del 20 al 50 % de la memoria RAM disponible. Si pretendemos darle n uso a dicho archivo diariamente, es crucial para la vida del SSD que el archivo de intercambio se encuentre en un disco duro mec´nico. Cada Gigabyte que se a escribe diariamente en un SSD condiciona la vida util del mismo. ´2.3. El cerebro de un SSD, la controladora La controladora de un SSD, junto con las celdas de memoria es la base de todo disco deestado s´lido. Se encarga de aspectos clave, tales como la gesti´n de errores, los algoritmos o ode wear-leveling, el acceso a las celdas de memoria de forma concurrente, el control de energ´ıa,el espacio reservado etc. El fabricante del disco debe elegir la marca y modelo de la mismacuidadosamente, ya que condicionar´ tanto el rendimiento como el precio del mismo. a Para ilustrar la diferencia entre dos modelos del mismo fabricante, uno de ellos orientado ala gama media y otro a la gama alta y a los entornos empresariales: Funci´n o SF-1200 SF-1500 Tipo de celdas soportadas MLC MLC y MLC Consumo de energ´ ıa 550 mW 950 mW Tasa de transferencia max. 260 MBytes/s 260 MBytes/s Operaciones aleatorias max. 30/10K IOPS2 30K/30K IOPS Encriptaci´n o 128-bit AES contrase˜a fija. n 128-bit AES contrase˜a configurable n Tasa de fallos de lectura 1 sector cada 10 16 bytes le´ ıdos 1 sector cada 10 17 bytes le´ ıdos Tiempo medio entre fallos 2 · 106 horas 10 · 106 horas Figura 7: Diferencias entre dos controladoras SandForce. 1 Refiri´ndonos a bloque a nivel de celda de memoria e 7
  8. 8. 2.4. Memoria cach´ e Todos los discos de estado s´lido incorporan memoria cach´. Seg´n el uso que se le vaya o e ua dar al disco puede ser o no necesaria. Es un elemento que influye directamente en elprecio del disco, ya que si empleamos una secci´n para un chip de memoria cach´ externa, para o eproporcionar al disco una decena de megabytes de cach´, ya no podremos utilizar esa superficie een a˜adir mas capacidad, por lo cual el precio por gigabyte se incrementa. nA´n as´ la inclusi´n de un chip externo no es siempre necesaria, siendo suficiente en u ı, oentornos dom´sticos el poseer unos pocos kilobytes en el propio die de la controladora. e2.5. El condensador Estrechamente unido a la inclusi´n de memoria cach´ externa va la necesidad de a˜adir un o e ncondensador en el esquema b´sico del disco. Dicho condensador debido a su tama˜o tambi´n a n eresta un espacio similar al de un chip NAND por lo cual es otro elemento que incrementa elprecio por gigabyte del disco. Su funcionalidad no es m´s que ante una p´rdida de corriente garantizar que la cach´ se a e eescribe ´ıntegramente en las celdas de memoria.Es un aspecto cr´ıtico si el disco emplea tecnolog´ MLC, ya que cada celda almacena m´s de un ıa abit, dando lugar a un escenario catastr´fico, en el que la controladora escribe en la celda, pero ono llega suficiente energ´ como para escribir el valor correcto. ıa3. El rendimiento de un SSD Hay dos datos que a un usuario impresionan cuando por primera vez ven los n´meros de un udisco de estado s´lido. Pulverizan los par´metros de los discos mec´nicos, reduciendo en cuatro o a ao´rdenes de magnitud el tiempo de b´squeda y multiplicando por tres la tasa de transferencia usecuencial. El primero de estos datos no parece muy complicado de entender, en un SSD no hay partesmec´nicas, por lo tanto, no es necesario que un cabezal se posicione sobre una pista antes de apoder acceder a la informaci´n, la unica latencia posible es la que tenga la controladora desde o ´que recibe la petici´n hasta que sirve los datos. o Pero el segundo nos hace plantearnos lo siguiente, si los pendrives emplean memoria flash,¿por qu´ son tan lentos? ¿qu´ diferencia hay entre las celdas de memoria de unos y otros? La e everdad es que la velocidad de transferencia de un pendrive depende de muchos factores: Cuellos de botella en el USB: El bus USB tiene una tasa m´xima te´rica de transferencia a o de 480 Megabits por segundo. No hay acceso paralelo a las celdas: Un pendrive tan solo dispone de una celda de memoria. Con la tecnolog´ actual un chip de memoria NAND, como m´ximo tiene una velocidad ıa a de lectura de unos 15 megabytes. La velocidad de un SSD se obtiene mediante un acceso concurrente a todas las celdas, es decir 12chips · 15MB/s = 180 MB/s. Uso de un mayor n´mero de niveles en las celdas: En un SSD no veremos m´s de dos u a niveles en las celdas MLC. Con el fin de aumentar la capacidad por chip, en los pendrives hay algunos fabricantes que montan tres o cuatro niveles. 8
  9. 9. 3.1. ¿Por qu´ necesito un SSD? e Figura 8: Una gr´fica es suficiente para ilustrar la respuesta. a En la figura comparamos el disco magn´tico m´s veloz disponible en el mercado de usuario1 e acon un disco de estado s´lido de gama media. Ambos tienen un precio por gigabyte similar, lo ocual hace si cabe m´s justa la comparativa. a Prueba OCZ Vertex 2 WD VelociRaptor PC Mark Vantage - General 17103 11564 IOMeter - 4k Random read 52 0.6 IOMeter - 4k Random write 51.4 1.7 IOMeter - 2MB Secuential read 265.5 145.3 IOMeter - 2MB Secuential write 251.9 111 Operaciones E/S por segundo 250 111 Figura 9: Resultados num´ricos, es mejor cuanto m´s grande. e a Como conclusi´n de los resultados, realizando cuentas sencillas obtenemos que el disco de oestado s´lido aventaja a el magn´tico en aproximadamente un 49 %. o e 1 Western Digital VelociRaptor 9
  10. 10. 4. La longevidad de un SSD Cuando hablamos de que un disco de estado s´lido tiene una vida media muy peque˜a, nos o nreferimos al tiempo necesario para que uno de los bloques sea marcado como defectuoso.4.1. Haciendo n´ meros u Cada uno de los bloques de memoria, puede escribirse alrededor de 10000 veces. Con losdatos anteriores, si pudieramos escribir un grupo de celdas de forma constante, desactivandotodas las protecciones software de la controladora tendriamos la siguiente estimaci´n: o 64 GBytes ≈ 64000 MBytes, Vel. escritura 175MBytes/s Escribimos constantemente 10 Bloques, 5MB en total 10 · 512000 bytes · 10000veces = 292,571 segundos en provocar un fallo en el disco 175 · 106 bytes/sViendo estos valores, no parece muy razonable decantarse por un SSD.4.2. Un ejemplo real Como podemos imaginar, esta circunstancia es pr´cticamente imposible de alcanzar, ya que ala propia controladora nos impide realizar esta tarea tan destructiva con las t´cnicas ya nar- eradas. Ahora y para desmontar el mayor mito de los SSD, volver´ a realizar los c´lculos, ´sta e a evez, empleando un ejemplo de uso real. OCZ Vertex 2 (Firmware 1.29) Capacidad total 64 gigabytes Reportado al SO 54 gigabyte (15 % reservado) Espacio libre tras instalar 35 gigabytes Figura 10: Situaci´n del disco tras la instalaci´n del SO. o oSi escribimos todos los dias al sobre un 15 % del tama˜o del disco(12 % de datos y 3 % extra nprovocado por la amplificaci´n de lectura), suponiendo un wear-leveling perfecto, tardaremos o6.67 d´ en escribir en todas los bloques. Si cada celda puede escribirse 5000 veces, excedemos ıasde largo el tiempo en el que una celda NAND se agota f´ ısicamente.1Seg´n estos resultados, ahora parece que los discos SSD sean eternos. La verdad es que es- utos datos son ciertos a medias. Todo depende del porcentaje de informaci´n que se escribe odiariamente y del tama˜o del disco. n 1 Diez a˜os, un tiempo suficiente para dejar obsoleto cualquier componente. n 10
  11. 11. 5. Conclusiones La tecnolog´ de estado s´lido, esta comenzando a llegar al usuario final ahora. Si bien ya es ıa ouna alternativa fuerte a los discos magn´ticos en la mayor´ de ordenadores, a´n queda mucho e ıa ucamino por andar. Pese a las limitaciones ya comentadas, si se destina el SSD a almacenar elsistema operativo y los programas, y en otro disco almacenamos los datos, es suficiente con unapeque˜a inversi´n para introducirse en el mundo del estado s´lido. n o o No me cabe duda que las partes m´viles est´n en proceso de extinci´n, ya que en el futuro, o a ocon la reducci´n de la distancia de integraci´n los discos de estado s´lido cada vez tendr´n un o o o acoste por gigabyte menor. Los discos de estado s´lido han llegado para quedarse. o 11
  12. 12. 6. Bibliograf´ ıa www.anandtech.com • The SSD Anthology • The SSD Relapse • Understanding Sandforce, not all drives are equal • Vertex 2 Pro Review • Anandtech Bench Library www.wikipedia.com • Solid-State Drive • Write Amplification • Trim Command www.storagesearch.com • SSD Power is going down! • Can you trust flash SSDs specs and benchmarks? • Endurance in flash SSDs 12

×