4 votos

Lo que le da algo de memoria flash de una velocidad más alta calificación que otros de la memoria flash?

Lo que le da a algunos de tarjetas SD/MMC mucho más alto de clasificación de clase de velocidad que otras tarjetas SD/MMC?

¿Por qué algunos son de estado sólido "discos" (Ssd) mucho más rápido que otros SSDs?

Estoy esperando que me puede tomar al menos algunas de las ideas para el almacenamiento de datos más rápido, y aplicar esas ideas a un registrador de datos de diseño en el que estoy trabajando que almacena (a menudo a ráfagas) datos a un par de los chips flash.

(Ideas que implican el re-diseño de las celdas de memoria flash y la fabricación de nuevos flash fichas para trabajar más rápido son interesantes, pero no son tan útil para mí ya que, por desgracia, no soy dueño de un fab).

3voto

Aaron Puntos 154

Estoy bastante seguro de Olin ha clavado en su comentario: La idea es que se puede aumentar la velocidad de acceso a más bits en paralelo o disminuir el conteo de pin y el acceso de bits en serie, pero estas cosas suceden internamente. La manera de conseguir una de clase 10 de dispositivo es que la controladora interna se lleva en el comando de escritura y accesos suficiente flash células en paralelo, de modo que borrar y volver a escribir les puede ocurrir a los 10 mb/s. El problema aquí es que, en general, esto hace que el apilamiento de flash células más caro porque se necesita más líneas entre cada capa, que es la razón por la micro-tarjetas SD son mucho más costosos en las clases más altas.

La otra forma en que usted puede aumentar las velocidades es a través de la pre-borrado de las células. El problema es que sólo se pueden cambiar los bits de una dirección (no recuerdo si este es de alto a bajo o de bajo a alto), y la otra dirección, se requiere de usted para limpiar toda la celda. Así que en general cuando se trate y escribir 512 bytes, la tarjeta SD se borra el bloque que está tratando de escribir y, a continuación, escribir los nuevos datos. Esto ralentiza la transacción, pero si en lugar de marcada que la de la célula para el borrado de la tarde, y luego escribió a una celda diferente de la que habían sido previamente borrada, a la que iba a suceder mucho más rápido. A continuación, el control de IC puede ir a través de y antes de borrar el marcado de las células cuando está inactivo.

Aaaaand escribí todo este blob como si estuviera hablando para tarjetas SD, pero usted dijo que usted está escribiendo a los chips flash. ¡Vaya! El consejo para la pre-borrado de las células todavía debe ser válido si tiene ese nivel de control sobre el flash chips. Nadie puede sentirse libre para que me corrija si estoy equivocado, y espero que ayude!


Editar: Mirando las etiquetas parece que en realidad podría estar preguntándose acerca de las tarjetas SD, en cuyo caso la única cosa que se podría hacer sería externos de paralelización. Básicamente lo que sería la implementación de un RAID 0, donde el primer byte va a la primera tarjeta sd, el segundo byte a la segunda tarjeta sd, etc. Teóricamente podría aumentar su rendimiento N veces, donde N es el número de tarjetas, siempre y cuando los datos se produjo en una frecuencia en la que se podría esperar que la primera tarjeta sería terminado de escribir por el momento en que usted termine de enviar el comando de escritura a la tarjeta de N.

La desventaja de esto es que usted necesita N el funcionamiento de las interfaces de tarjetas SD, y sería una especie de un dolor de datos para obtener datos en y fuera de él.

3voto

Alex Andronov Puntos 178

Además el hecho de que algunos dispositivos flash son capaces de escribir más bits en paralelo, otro factor que afecta la velocidad es la forma en que la recolección de basura se realiza. Una de las mayores fuentes de desaceleración en las unidades flash se deriva del hecho de que la mayoría de los dispositivos flash no permiten páginas 512-byte para ser borrado y vuelto a escribir; en cambio, requieren que borrar las operaciones de operar en áreas mucho más grandes (por ejemplo, 32 o más). Si un dispositivo se le pide que reescribir el bloque 23, va a encontrar una página en blanco, escribir "yo soy el bloque 23", junto con los nuevos datos, y luego encontrar el antiguo bloque 23 y marcarlo como no válido. Si el número de páginas vacías es demasiado bajo, el dispositivo comprueba si hay alguna borrable bloque que no tiene páginas válidas. Si no, se encuentra uno que tiene muy pocas páginas válidas, y mover cada página a una página en blanco en algún otro bloque (invalidar los viejos como esto va de la mano). Una vez que un bloque se ha encontrado que no tiene ningún tipo de páginas válidas, que el bloque puede ser eliminada, y todas sus páginas, se añade de nuevo a la piscina de la en blanco.

Muchos sistemas pueden utilizarse para hacer un seguimiento de cómo las páginas se asignan y determinar que los bloques deben ser reciclados cuando. Es posible el diseño de bastante esquemas simples que pueden ser implementados en un pequeño micro con la limitada RAM, pero el rendimiento puede no ser tan grande (por ejemplo, puede que tenga que leer varias veces a través de la flash para identificar los bloques para la recolección de basura, y se pueden colocar bloques de datos sin tener en cuenta si son propensos a convertirse en "obsoleto" pronto). Por el contrario, si el controlador dispone de una generosa cantidad de memoria RAM disponible, puede ser capaz de hacer un mejor trabajo que la identificación de los bloques debe ser de basura recolectadas en cuando, y también puede ser capaz de almacenar bloques de datos con otros bloques que serán similares, vida útil.

Por cierto, me parece lamentable que las unidades de estado sólido no se han estandarizado en algún tipo de sistema de archivos en el controlador de nivel (lo que significa que en vez de pedir bloque #1951331825, software pediría bloques de 4 a 8 de archivo #1934129). Una unidad flash que sabía cómo la información se almacena en archivos podría hacer mucho mejor las decisiones sobre la que los datos deben ser colocados juntos que uno que simplemente tiene que lidiar con la aparentemente independientes escribe para diversos sectores, y que también se podía hacer un trabajo más eficaz de garantizar la integridad de los datos bajo condiciones adversas.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X