Retención de datos en un microcontrolador

10

Simplemente leyendo la hoja de datos del attiny13 dice que puede almacenar sus datos durante 20 años a 85 grados Celsius y 100 años a 25 grados Celsius.

  • ¿Es esto independientemente de la lectura y escritura en el micro, por ejemplo, lo apago y lo mantengo a una temperatura constante de 85 grados Celsius durante 20 años y perderá sus datos?
  • ¿Cómo puede "perder" sus datos? No veo este concepto.
  • Además, ¿qué hay con la unidad de ppm (partes por millón?) Se menciona en la página 6 en la sección de retención de datos, pero no entiendo de qué está hablando. Lo he visto regularmente cuando hablo de osciladores de cristal, pero no puedo entender por qué se usa.
Decano
fuente
¿Cuál es tu caso de uso? Para la mayoría de las aplicaciones, lo que hay que quitar de esa página es "Los datos durarán más que su dispositivo, no se preocupe". ¿Está trabajando en un producto de alta durabilidad, seguridad crítica o de otro modo único?
Kevin Vermeer
@Kevin No hay caso para esta pregunta, solo la leí en la hoja de datos y me pregunté qué significaba esta declaración, ya que me confundí un poco.
Dean
2
@answerers: que 1 ppm, ¿cómo debo leer eso? 1 controlador defectuoso por millón o 1 celda de bits defectuosa por millón. La primera posibilidad es reconfortante, la segunda no tanto.
Federico Russo
@Federico: buena pregunta. Actualicé mi respuesta.
stevenvh
1
Tiene una carga ... cuando reescribe la celda, la mantendrá durante otros 20 años a 85d. Como recargarlo. Entonces, con el tiempo, la carga comienza a fallar y los datos comienzan a corromperse.
Piotr Kula

Respuestas:

18

La memoria flash, como EEPROM, almacena su información en las llamadas puertas flotantes . Los FET de compuertas normales en (MOS) tienen una conexión externa a través de la cual se enciende y apaga el FET (para MOSFET integrados esto sería una conexión de capa metálica). Las puertas flotantes no tienen este pin o conexión de capa de metal. Se sientan completamente aislados en SiO 2 por encima del canal del MOSFET, y a> 10 14 Ω cm SiO 2 es uno de los mejores aislantes que puede obtener. 21014Ω2

ingrese la descripción de la imagen aquí
ingrese la descripción de la imagen aquí

Al igual que los MOSFET tradicionales, encienden el canal cuando llevan una carga. ¿Pero cómo se programan entonces? A través de un efecto cuántico llamado túnel que se induce aplicando un campo eléctrico entre el canal y una puerta de control. Por lo tanto, la tecnología se llama FLOTOX , abreviatura de "Óxido de túnel de puerta flotante", comparable a FAMOS ("Semiconductor de óxido de metal de inyección de avalancha de puerta flotante") utilizado en las EPROM antiguas que se pueden borrar con UV.
(No puedo explicar el túnel en detalle aquí; los efectos cuánticos desafían cualquier lógica. De todos modos, depende en gran medida de las estadísticas).

Su primera pregunta es en realidad una doble: 1) ¿puedo realizar lecturas y escrituras ilimitadas, y 2) ¿retiene los datos cuando no se usa el dispositivo (vida útil)?
Para empezar con el primero: no, no puedes. Puede leerlo un número ilimitado de veces, pero los ciclos de escritura son limitados. La hoja de datos dice 10 000 veces. El número limitado de ciclos es causado por los portadores de carga que quedan en la puerta flotante después del borrado, cuyo número al final se vuelve tan grande que la celda ya no se puede borrar.
¿Retendrá sus datos durante 20 años incluso sin electricidad? Sí, eso es lo que dice la hoja de datos. Los cálculos de MTTF (tiempo medio de falla) (nuevamente un método estadístico) predicen menos de 1 parte por millón de errores. Eso es lo que significa el ppm.

una nota sobre MTTF
MTTF significa Tiempo medio de falla , que es diferente de MTBF (Tiempo medio entre fallas). MTBF = MTTF + MTTR (Tiempo medio de reparación). Tiene sentido.
Las personas a menudo usan el término MTBF cuando en realidad quieren decir MTTF. En muchas situaciones, no hay mucha diferencia, como cuando el MTTF es de 10 años y el MTTR es de 2 horas. Pero los microcontroladores fallidos no se reparan, se reemplazan, por lo que ni MTTR ni MTBF significan nada aquí.

Atmel cita errores de 1 ppm después de 100 años. Es obvio que el AVR no ha estado en producción durante tanto tiempo, entonces, ¿cómo llegarían a esa cifra? Hay un malentendido persistente de que esto sería simplemente algo lineal: 1 dispositivo defectuoso después de 1000 000 horas sería lo mismo que 1 dispositivo defectuoso por 1000 horas en una población de 1000 dispositivos. 1000 x 1000 = 1000 000, ¿verdad? ¡Así no es cómo funciona! No es lineal ¡Puede tener errores perfectamente después de 1 millón de horas, y ninguno después de mil, incluso con una población de un millón! Los cálculos de MTTF tienen en cuenta todo tipo de efectos que pueden influir en la confiabilidad del producto, y asigna un tiempo para cada uno de ellos. Los métodos estadísticos se utilizan para predecir cuándo fallará el producto. Ver también "

(Olvídese de la errortícula de Wikipedia sobre MTBF. Está mal).

2

La pregunta de Federico si la 1 ppm se refiere a dispositivos o células está justificada. La hoja de datos no dice, pero supongo que es 1 celda de datos defectuosa por millón. ¿Por qué? Si se tratara de dispositivos, obtendría peores cifras para dispositivos con tamaños de Flash más grandes, y son los mismos para 1k que para 16k. Además, 100 años es extremadamente largo. Me sorprendería ver que 999 999 dispositivos de un millón todavía funcionan.

imágenes descaradamente robadas aquí

stevenvh
fuente
1
Eh, y pensé que los efectos cuánticos dependen de la magia. ¿Quién hubiera pensado que las estadísticas tienen algo que ver con eso?
Olin Lathrop
@Olin: desde mis clases estadísticas, hace muchas lunas, veo las estadísticas como una especie de magia malvada. ¿Podría ser esa la magia que quieres decir?
stevenvh
6

Este tipo de memoria almacena datos como pequeñas cargas en puertas FET aisladas. Esto esencialmente mantiene la compuerta FET a alto o bajo voltaje. Otra forma de ver lo mismo es que el 1 o 0 se almacena como un voltaje en un condensador conectado a una puerta FET.

El almacenamiento de carga no es permanente. Eventualmente, se cargará suficiente carga para que el estado original del bit ya no se pueda determinar de manera confiable. Una temperatura más alta facilita un poco la fuga de la carga, por lo que la especificación de retención de datos es más corta a temperatura elevada.

En cuanto a ppm, sí, eso es "partes por millón". Es el mismo concepto que porcentaje, que es solo otra forma de decir partes por cien. 100 ppm = .01% = .0001

Olin Lathrop
fuente
4

En attiny (así como en muchos otros uC) los datos 'permanentes' se almacenan en la memoria flash, que es básicamente un transistor especial que puede 'atrapar' la carga (como un condensador). El truco es que no hay un "cable" que se conecte a este condensador, por lo que la única forma de cargarlo o descargarlo es mediante un túnel cuántico. Esto significa que sus descargas son realmente lentas, y es bastante difícil cargarlo / descargarlo (cada carga / descarga daña el transistor, es por eso que está limitado a borrados de 10k).

La velocidad de esta descarga se determina empíricamente, y usted lo ve en la hoja de datos.

Pero este es el valor 'típico': puede obtener tiempos de retención de datos mucho más altos y más bajos, esto puede ser un poco aleatorio. No hay una forma exacta de averiguar de antemano cuándo deberían desaparecer los datos. Es por eso que ves esta aproximación en la hoja de datos + estimación de cuántos dispositivos serán peores que esta estimación.

BarsMonster
fuente
1
@BarsMonster: la velocidad de descarga no se puede determinar de forma puramente empírica, ya que el dispositivo no existe desde hace 20 años. Los datos empíricos son solo la base de un método estadístico, que le da más peso.
stevenvh
@stevenvh Es posible si lo hace a temperaturas elevadas. Además, el cambio del umbral del transistor se cambia continuamente, por lo que puede que no solo espere hasta que cambie de 1 a 0, sino que supervise el proceso con una precisión de 0.01%.
BarsMonster
@BarsMonster: es solo que no puedes hacer una extrapolación lineal sobre esto. Esa es una idea errónea común sobre MTTF: si dice 1 millón de horas, mucha gente piensa que en una prueba de 1000 dispositivos hay 1 falla después de 1000 horas, y que de ahí vendría el millón de horas. No es tan simple.
stevenvh
@stevenvh No digo que sea lineal :-)
BarsMonster
@stevenvh: no estoy familiarizado con MTTF. Estoy familiarizado con MTBF, que por lo que entiendo es esencialmente lo contrario de la probabilidad de que un dispositivo que funcione durante un cierto período de tiempo experimente un fallo. Entonces, si un dispositivo que funciona durante una hora tiene una probabilidad de falla en un millón, es un MTBF de 1,000,000 horas. Si cada dispositivo funcionará durante 1,000 horas con precisión, entonces el MTBF para dispositivos nuevos sería infinito, pero se reduciría a nada cuando los dispositivos alcanzan la marca de 1,000 horas. De un vistazo rápido, MTTF parece similar ...
supercat