Conservazione dei dati su un microcontrollore


10

Leggendo la scheda tecnica dell'attiny13 si dice che può conservare i suoi dati per 20 anni a 85 gradi Celsius e 100 anni a 25 gradi Celsius.

  • Indipendentemente dalla lettura e dalla scrittura sul micro, ad esempio, lo spengo e lo tengo a una temperatura costante di 85 gradi Celsius per 20 anni e perderà i suoi dati?
  • Come può "perdere" i suoi dati? Non riesco a vedere questo concetto.
  • Inoltre, cos'è l'unità ppm (parti per milione?) Menzionata a pagina 6 nella sezione di conservazione dei dati, ma non capisco di cosa stia parlando. L'ho visto regolarmente quando parlavo di oscillatori a cristallo ma non riesco a capire perché sia ​​usato.

Qual è il tuo caso d'uso? Per la maggior parte delle applicazioni, la cosa da togliere da quella pagina è "I dati dureranno più a lungo del tuo dispositivo, non ti preoccupare". Stai lavorando a un prodotto ad alta durabilità, critico per la sicurezza o altrimenti unico?
Kevin Vermeer,

@Kevin Non c'è motivo per questa domanda, basta leggerlo nel foglio dati e mi chiedevo cosa significasse questa affermazione, dato che mi sono un po 'confuso.
Decano del

2
@answerers: che 1 ppm, come dovrei leggerlo? 1 controller difettoso per milione o 1 cella di bit difettosa per milione. La prima possibilità è confortante, la seconda meno.
Federico Russo,

@Federico - bella domanda. Ho aggiornato la mia risposta.
Stevenvh,

1
Tiene una carica .. quando riscrivi la cella la manterrà per altri 20 anni a 85 giorni. Come ricaricarlo. Quindi dopo un po 'la carica inizia a fallire e i dati iniziano a corrompersi.
Piotr Kula,

Risposte:


18

La memoria flash, come EEPROM, memorizza le sue informazioni in cosiddette porte mobili . I FET su gate (MOS) normali hanno una connessione esterna attraverso la quale il FET viene acceso e spento (per i MOSFET integrati si tratterebbe di una connessione a strato metallico). I cancelli flottanti non hanno questa connessione a perno o strato metallico. Si trovano completamente isolati in SiO 2 sopra il canale del MOSFET e con> 10 14 Ω cm SiO 2 è uno dei migliori isolanti che puoi ottenere. 21014Ω2

inserisci qui la descrizione dell'immagine
inserisci qui la descrizione dell'immagine

Come i MOSFET tradizionali, attivano il canale quando trasportano una carica. Ma come vengono programmati allora? Attraverso un effetto quantico chiamato tunneling che viene indotto applicando un campo elettrico tra il canale e una gate di controllo. La tecnologia si chiama quindi FLOTOX , abbreviazione di "FLOating-gate Tunnel OXide", paragonabile a FAMOS ("Semiconduttore di ossido di metallo a iniezione di valanghe galleggiante") utilizzato nelle vecchie EPROM cancellabili con UV.
(Non posso spiegare il tunneling in dettaglio qui; gli effetti quantistici sfidano qualsiasi logica. Comunque si basa fortemente sulle statistiche).

La tua prima domanda è in realtà una doppia: 1) posso eseguire letture e scritture illimitate e 2) conserva i dati quando il dispositivo non viene utilizzato (shelf life)?
Per iniziare con il primo: no, non puoi. Puoi leggerlo un numero illimitato di volte, ma i cicli di scrittura sono limitati. Il foglio dati dice 10.000 volte. Il numero limitato di cicli è causato dai portatori di carica lasciati nel gate flottante dopo la cancellazione, il cui numero alla fine diventa così grande che la cella non può più essere cancellata.
Conserverà i suoi dati per 20 anni anche senza alimentazione? Sì, è quello che dice la scheda tecnica. I calcoli MTTF (Mean Time To Failure) (di nuovo un metodo statistico) prevedono meno di 1 parte per milione di errori. Questo è ciò che significa ppm.

una nota su MTTF
MTTF significa Mean Time To Failure , che è diverso da MTBF (Mean Time Between Failures). MTBF = MTTF + MTTR (tempo medio di riparazione). Ha senso.
Le persone usano spesso il termine MTBF quando in realtà significano MTTF. In molte situazioni non c'è molta differenza, come quando l'MTTF è di 10 anni e l'MTTR è di 2 ore. Ma i microcontrollori guasti non vengono riparati, vengono sostituiti, quindi né MTTR né MTBF non significano nulla qui.

Atmel cita errori di 1 ppm dopo 100 anni. È ovvio che l'AVR non è stato in produzione per così tanto tempo, quindi come sarebbero arrivati ​​a quella cifra? C'è un malinteso persistente sul fatto che questa sarebbe semplicemente una cosa lineare: 1 dispositivo difettoso dopo 1000.000 ore sarebbe uguale a 1 dispositivo difettoso ogni 1000 ore su una popolazione di 1000 dispositivi. 1000 x 1000 = 1000 000, giusto? Non funziona così! Non è lineare Puoi avere perfettamente errori dopo 1 milione di ore e nessuno dopo mille, anche con una popolazione di un milione! I calcoli MTTF tengono conto di tutti i tipi di effetti che possono influenzare l'affidabilità del prodotto e attribuiscono un tempo a ciascuno di essi. I metodi statistici vengono quindi utilizzati per arrivare a una previsione quando il prodotto alla fine fallirà. Guarda anche "

(Dimentica l'errore di Wikipedia su MTBF. È sbagliato.)

2

La domanda di Federico se 1 ppm si riferisce a dispositivi o celle è giustificata. Il foglio dati non dice, ma presumo che sia 1 cella dati difettosa per milione. Perché? Se si trattasse di dispositivi, si otterrebbero cifre peggiori per dispositivi con dimensioni Flash più grandi, e sono gli stessi per 1k come per 16k. Inoltre, 100 anni sono estremamente lunghi. Sarei sorpreso di vedere 999 999 dispositivi su 1 milione ancora funzionanti.

immagini rubate senza vergogna qui


1
Eh, e pensavo che gli effetti quantistici dipendessero dalla magia. Chi avrebbe mai pensato che le statistiche avessero qualcosa a che fare con esso !?
Olin Lathrop,

@Olin - Sin dalle mie lezioni statistiche, molte lune fa, vedo le statistiche come una sorta di magia malvagia. Potrebbe essere quella la magia che vuoi dire?
Stevenvh,

6

Questo tipo di memoria memorizza i dati come piccole cariche su porte FET isolate. Questo essenzialmente mantiene il gate FET ad alta o bassa tensione. Un altro modo di vedere la stessa cosa è che l'1 o 0 è memorizzato come tensione su un condensatore collegato a una porta FET.

La memoria di addebito non è permanente. Alla fine la carica sufficiente perderà in modo che lo stato originale del bit non possa più essere determinato in modo affidabile. Una temperatura più alta rende un po 'più facile la perdita della carica, motivo per cui le specifiche di conservazione dei dati sono più brevi a temperatura elevata.

Per quanto riguarda ppm, sì, sono "parti per milione". È lo stesso concetto di percentuale, che è solo un altro modo di dire parti per cento. 100 ppm = .01% = .0001


4

In attiny (così come molti altri uC) i dati "permanenti" sono memorizzati nella memoria flash - che è fondamentalmente un transistor speciale che può "intrappolare" la carica (come un condensatore). Il trucco è che non esiste un "filo" collegato a questo condensatore - quindi solo il modo di caricarlo o scaricarlo - è tramite tunnel quantico. Ciò significa che le scariche sono davvero molto lente, ed è piuttosto difficile caricarlo / scaricarlo (ognuno di questi carica / scarica danneggia il transistor, ecco perché è limitato a 10k cancella).

La velocità di questo scarico è determinata empiricamente e la vedi nel foglio dati.

Ma questo è un valore "tipico" - potresti avere tempi di conservazione dei dati molto più alti e più bassi - questo potrebbe diventare un po 'casuale. Non esiste un modo esatto per scoprire in anticipo quando i dati dovrebbero essere spariti. Ecco perché vedi questa approssimazione nella scheda tecnica + stima di quanti dispositivi saranno peggiori di questa stima.


1
@BarsMonster - La velocità di scarica non può essere determinata in modo puramente empirico, poiché il dispositivo non esiste ancora da 20 anni. I dati empirici sono solo la base per un metodo statistico, che mette più peso in esso.
Stevenvh,

@stevenvh È possibile farlo a temperature elevate. Inoltre, la variazione della soglia del transistor viene modificata in modo continuo, quindi è possibile non solo attendere che passi da 1 a 0, ma piuttosto monitorare il processo con una precisione dello 0,01%.
Bars Mons.

@BarsMonster - è solo che non puoi fare solo un'estrapolazione lineare su questo. Questo è un malinteso comune su MTTF: se dice 1 milione di ore molte persone pensano che su un test di 1000 dispositivi ci sia 1 errore dopo 1000 ore, e che sarebbe da lì che provengono i milioni di ore. Non è così semplice.
Stevenvh,

@stevenvh Non sto dicendo che sia lineare :-)
BarsMonster il

@stevenvh: non ho familiarità con MTTF. Ho familiarità con MTBF, che da quello che capisco è essenzialmente l'inverso della probabilità che un dispositivo che funzioni per un certo periodo di tempo subisca un guasto. Quindi, se un dispositivo che funziona per un'ora ha una possibilità su un milione di guasti, si tratta di un MTBF di 1.000.000 di ore. Se ogni dispositivo funzionasse esattamente per 1.000 ore, l'MTBF per i nuovi dispositivi sarebbe infinito, ma non scenderebbe a nulla man mano che i dispositivi raggiungono il limite di 1.000 ore. Da una rapida occhiata, MTTF sembra simile ...
supercat
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.