¿Por qué la DRAM cuesta mucho más que la memoria flash?

Comparando precios en una tienda local, calculé precios de 0,36 USD/GB para memoria flash SSD NAND y 5,41 USD/GB para memoria DRAM. La diferencia es 15 veces. ¿Por qué tanta diferencia?

Ambos son dispositivos semiconductores. Las celdas de memoria de ambos tipos ocupan aproximadamente la misma área de matriz: 4 F ^ 2 para memoria flash NAND, 6 F ^ 2 para DRAM. (No puedo dar una buena fuente; esta información está dispersa en Internet). MLC de memoria flash ofrece una mejora de 2 veces. (Por cierto, ¿es posible la misma tecnología para DRAM?) No puedo culpar a las fuerzas del mercado porque ambos mercados me parecen similares en términos de competencia, madurez y tamaño. Por ejemplo, ingresos de DRAM 35,74e9 USD, ingresos de SSD 10,9e9 USD en 2013.

Para DRAM, funcionan a una velocidad de reloj más alta, como 666 MHz y más. Pero una memoria flash no tiene tanta velocidad. Además, la velocidad de transferencia de datos desde una memoria RAM DDR3 desde y hacia el procesador es de aproximadamente 3500 Mbit/seg. velocidad mucho mayor que el USB 3.0.
Básicamente se reduce a velocidades de lectura/escritura de DRAM y niveles de reescritura de DRAM. La memoria NAND tiene una reescritura mucho más limitada y necesita nivelación de desgaste, mientras que la DRAM no sufre por eso. Eso es a lo que me agarro.
@Aadarsh: ¿Entonces está diciendo que los transistores más rápidos cuestan más y que la DRAM contiene transistores más rápidos?
@Aadarsh: "Y además, la velocidad de transferencia de datos desde una memoria RAM DDR3 desde y hacia el procesador es de aproximadamente 3500 Mbit/seg. Esta velocidad es mucho más alta que la del USB 3.0". Admito que los SSD son mucho más lentos que la DRAM. Sin embargo, la velocidad de SSD aumentó drásticamente: la velocidad de lectura secuencial es de 2 GB/s y el precio es de 0,95 USD/GB para Samsung SM951 M.2 PCIe AHCI SSD (256 GB) pcworld.com/article/2977024/storage/… .
Usted dijo que la velocidad de lectura secuencial es de aproximadamente 2 Gb/s. Pero piense si siempre lee en modo secuencial, cuando lo usa en una PC. La desfragmentación ayudará a que sea de alguna manera secuencial, pero la mayoría de las veces, no será 100% secuencial. Y también, el ancho de banda de la memoria es de aproximadamente 550 Mb/s (SATA3). Para una tarjeta gráfica o RAM, el ancho de banda de la memoria es de aproximadamente 113 Gb/s. o más.
No debe usar el SSD como sustituto de la RAM. Porque dañará el SSD muy pronto, si lo usa a su máxima velocidad siempre. Del mismo modo, la memoria flash como sustituto de la RAM dañará la memoria debido a la inyección de electrones. a la puerta flotante.
@Aadarsh: "Y también, el ancho de banda de la memoria es de aproximadamente 550 Mb/s (SATA3)". El SSD que le mencioné usa PCIe.
@Aadarsh: "No debe usar el SSD como sustituto de la RAM. Porque dañará el SSD muy pronto, si lo usa siempre a su velocidad máxima". Esto era cierto hace mucho tiempo. Ahora es una superstición.
Creo que este enlace le dará información valiosa. superuser.com/questions/617864/por-que-no-usar-ssd-espacio-como-ram

Respuestas (4)

El elemento clave en la diferencia es la redundancia. Una DRAM tiene que ser perfecta (es decir, no tiene redundancia). Esto se debe a que, para obtener las velocidades requeridas de la DRAM, no existe un nivel de búfer entre las entradas de direcciones y las celdas de memoria, excepto para la decodificación de direcciones.

Flash, por otro lado, no se espera que funcione tan rápido como DRAM, y esto permite la inserción de varias lógicas en la lógica de direcciones. Específicamente, los datos se organizan en bloques (equivalentes a páginas) y hay una buena cantidad de bloques de repuesto incluidos en el chip. Cuando se intenta un acceso, la dirección esencialmente entra en una tabla de búsqueda que redirige el acceso de un bloque defectuoso conocido a uno bueno (de repuesto).

El resultado es que la fabricación puede ser mucho más barata para flash que para DRAM, ya que es mucho más difícil producir un chip malo (inutilizable) para flash.

Aunque no puedo encontrar una fuente (después de menos de un minuto de búsqueda), creo que los chips DRAM usan la redundancia para mejorar el rendimiento, probablemente a nivel de tapete. (No usan ECC de forma predeterminada para permitir tamaños de celda más pequeños o frecuencias de actualización más bajas). Incluso las cachés de procesador en chip (con requisitos de mayor velocidad, aunque también puertas lógicas más rápidas) usan redundancia para mejorar el rendimiento.
  1. Oferta y demanda. Existe una oferta mucho mayor de chips NAND. Además, hay muchos fabricantes en muchos nodos de proceso diferentes. Solo hay cuatro (a partir de 2016) fabricantes de DRAM en el nodo de proceso más reciente.
  2. 5 $/GB es una DRAM por GB en un módulo. De 8 a 36 chips en un módulo depende de la configuración. Los SSD baratos pueden tener tan solo dos chips + pasivos. (controlador PCIe M.2 y flash NAND). De lo anterior, puede ver que, en promedio, la DRAM tiene un mayor potencial de falla que una SSD, por lo tanto, requiere un precio más alto.
No creo que (1), es decir, razones de mercado, sean válidas, como ya escribí. Ambos mercados parecen maduros.
¿Podría, por favor, aclarar (2)? Supongo que se trata de la probabilidad de defectos durante la fabricación. ¿Podría proporcionar fórmulas que involucren probabilidades?

Desde la perspectiva del diseñador de circuitos integrados, FLASH es mucho más costoso de fabricar que DRAM porque uso más máscaras y ocupan más área. No sé de dónde sacaste tus números de área, pero puedo creer que si tuvieras un proceso solo FLASH, podría ajustarlo un poco. Por supuesto, eso sería costoso. Necesitas tener una comparación que sea uniforme. Obtengo un solo bit de FLASH en el espacio en el que obtengo 8 bits de tapas de trinchera de DRAM en un proceso FinFET moderno. Adjunto una imagen del diseño DRAM para una celda DRAM de 8 bits.

FLASH no debe tener fugas, y DRAM puede tener fugas, por lo que no necesito preocuparme tanto por el grosor o la calidad de mi óxido. Además, cada vez que programa FLASH, utiliza inyección de electrones calientes que pueden causar daños por óxido de forma estática. Cuanto mayor sea el VDS, más rápido programará debido a la mayor cantidad de electrones calientes, pero tendrá más posibilidades de tener un agujero caliente en un estado intermedio, por lo que desea un óxido más espeso.

Crecer óxido de ticker cuesta tiempo para la deposición y, por lo tanto, dinero, pero solo en su pregunta: si tiene un proceso comparable, esperaría que el costo entre FLASH y DRAM sea 8x por equivalencia de bits solo en el área. Espero que la discrepancia que ve entre DRAM y FLASH sea solo el costo del proceso.

Gorras de trinchera

Parece que nos está diciendo por qué el flash debería costar más, cuando la situación es la inversa.
Nunca he usado un proceso específico de FLASH; sin embargo, FLASH cuesta más en cuanto a espacio/máscara de oblea Si en los procesos que he usado. La fijación de precios al consumidor es algo mágico, y es por eso que lo dejé abierto. Si observa los costos de matriz a 0,05 USD por 1 mm ^ 2, se trata del costo real en silicio después de la configuración de la máscara.

Creo que la respuesta es que las diferentes tecnologías tienen diferentes rendimientos.

Flash puede funcionar y venderse con bits defectuosos esparcidos por todo el chip y el controlador simplemente ocultará las fallas.

La DRAM debe operar a frecuencias mucho más altas y debe ser perfecta. Cualquier error de un solo bit en un troquel de DRAM podría hacer que se descarte ese troquel (a menos que haya redundancia en su diseño), y los troqueles no son pequeños.

Ver esta pregunta anterior: Rendimientos en DRAM y otros Procesos Masivamente Redundantes