Cancellabile e programmabile elettricamente Read-Only Memory ( EEPROM ):
Se utilizza la memoria di sola lettura ( ROM ), come posso scrivere su di essa?
Cancellabile e programmabile elettricamente Read-Only Memory ( EEPROM ):
Se utilizza la memoria di sola lettura ( ROM ), come posso scrivere su di essa?
Risposte:
L'acronimo EEPROM ha una certa storia che segue lo sviluppo della tecnologia.
ROM : memoria di sola lettura. Scritto in fabbrica.
PROM : memoria di sola lettura programmabile ma programmabile (una volta) dall'utente. Davvero una memoria programmabile, leggibile per sempre. Sbagli e scarichi il chip.
EPROM : memoria di sola lettura programmabile e cancellabile. Di solito cancellato usando la luce UV attraverso una finestra di quarzo sopra il chip. Un po 'di problemi ma molto utile.
EEPROM : memoria di sola lettura programmabile e cancellabile elettricamente. Può essere cancellato o riscritto sotto il controllo del programma.
Figura 1. Una EPROM Intel 1702A, uno dei primi tipi di EPROM, 256 per 8 bit. La piccola finestra al quarzo ammette la luce UV per la cancellazione. Fonte: Wikipedia EPROM .
Quindi, ti sento dire, perché lo chiamano eepROm quando è scrivibile? La risposta a questo è, sospetto, che, a differenza della RAM (memoria ad accesso casuale), conserva i suoi contenuti durante il ciclo di accensione e, quindi, si è comportato più come una ROM .
RAM
conservare qualsiasi dato oltre il ciclo di alimentazione e ho trovato questo piccolo gioiello che potrebbe interessarti.
Sono sconcertato da quanti commentatori qui pensano che il termine ROM sia solo uno stratagemma di marketing o si riferisca solo alla perdita di dati allo spegnimento.
La PROM è molto "sola lettura", nel senso qualificato che è impossibile scriverlo nello stesso modo e nei contesti in cui si farebbe con una RAM "equivalente". Questo perché E / EPROM richiede:
... tutto ciò significa che l'atto di scrivere su tale memoria è lento, non può essere intercalato in modo efficiente con le operazioni di lettura, consuma attivamente il chip, ecc.
PROM ha una lega totalmente diversa dalla RAM con specifiche di lettura equivalenti. Ecco perché non è stato commercializzato come qualsiasi forma di RAM. Il contraccolpo sarebbe stato colossale!
Quindi, potremmo forse chiamarlo Read Mostly Memory o, per i pedanti, EWRPROM: Eventally Writable, Runtime Praticamente Lettura solo memoria ... ma in termini pratici, la ROM è un successo.
I primi dispositivi di memoria programmabili dovevano essere scritti mentre erano collegati a un dispositivo e quindi letti mentre erano collegati a un altro. Sebbene i dispositivi possano in genere essere letti durante l'apparecchiatura di programmazione (quindi l'apparecchiatura di programmazione potrebbe confermare che sono stati scritti correttamente), la programmazione dei dispositivi richiederebbe spesso l'applicazione di tensioni insolite che non sarebbero disponibili nella maggior parte dei dispositivi che necessitavano di leggerli. Inoltre, le operazioni di scrittura erano ordini di grandezza più lenti delle operazioni di lettura. I dispositivi successivi sono stati migliorati per eliminare tali requisiti, consentendo loro di essere programmati nel dispositivo in cui verrà utilizzato dopo la programmazione, ma la differenza tra le velocità di lettura e scrittura rimane.
È cancellabile elettricamente, quindi puoi scriverci sopra.
Non ha senso quando si espande la ROM in parole. Ma la mia comprensione è che la EPROM è stata così nominata dal suo inventore, Intel, come un richiamo al marketing che significava "Proprio come la ROM - ma puoi cambiarla da solo". Questo era in un mondo del 1972 in cui ROM significava mille dollari per un cambio di maschera.
La EEPROM fa seguito a quel precedente.
Ho scoperto una potenziale risposta mentre scrivevo la domanda
Dall'esame di questo articolo ROM su Wikipedia sembra che alcune ROM consentano la scrittura, ma in tal caso la velocità di scrittura sarà lenta o la scrittura in generale sarà difficile, se possibile.
Un'altra cosa affascinante è che EEPROM ha un numero limitato di volte in cui può essere scritta. L'articolo menziona che la EEPROM può essere pulita e scritta migliaia di volte, ma comunque!
Le EEPROM e persino le memorie Flash utilizzano un'evoluzione della stessa tecnologia (floating gate) utilizzata dalle EPROM, non la tecnologia che verrebbe utilizzata per i dispositivi SRAM o DRAM.
Le EEPROM sono fortemente asimmetriche nel comportamento di lettura e scrittura: i cicli di lettura sono praticamente illimitati, veloci (decine o centinaia di nanosecondi) e sempre possibili solo con le principali tensioni operative applicate. I cicli di scrittura sono molto più lenti e talvolta richiedono tensioni extra applicate (una EEPROM parallela 2816 avrà bisogno di un'alimentazione extra di 12V per alcune operazioni di programmazione e avrà un tempo di scrittura in centinaia di microsecondi o anche più lenta a seconda della marca e del modello esatti, e hanno cicli di scrittura limitati).
Le memorie flash non sono un accesso casuale per la scrittura (per sovrascrivere una parola è necessario cancellare più di una parola), alcuni tipi (NAND) non sono nemmeno un accesso casuale per la lettura.
Si noti che alcuni dispositivi (non tutti!) Commercializzati come PROM o ROM erano EPROM OTP (senza finestre) internamente.
È solo una ROM rispetto alla RAM volatile (memoria ad accesso casuale che perderà il suo stato una volta che l'alimentazione viene interrotta). Una denominazione legacy che non ha più senso dopo decenni.
EPROM / PROM viene LETTO SOLO alle RUNTIME. Quando si esegue l'applicazione desiderata (PC, controller incorporato, ecc.) Non può essere scritta dal programma in esecuzione. Devi estrarlo ed inserirlo in uno speciale strumento di scrittura, in cui scrivi tutti i contenuti contemporaneamente.
Come mi viene indicato nei commenti, EEPROM potrebbe essere impostato per essere scrivibile in fase di esecuzione perché è scrivibile elettronicamente. Ma nell'uso quotidiano non è scrivibile, l'architettura di solito lo impedisce. Di solito si utilizza un'utilità speciale "flash" fornita dal produttore per accedervi e scriverla, e di solito viene scritta tutta in una volta anziché in una modalità di accesso casuale. Qualcuno in una risposta sopra ha inventato un grande acronimo che sarebbe applicabile.
La RAM, inclusa la NVRAM, può essere scritta in fase di esecuzione dal dispositivo host.
Sebbene tutta la ROM sia non volatile e la maggior parte della RAM sia volatile, NVRAM non è volatile, quindi non è l'unica differenza evidente tra di loro.