L'invenzione, avvenuta nel1971, è dovuta ad un ingegnere israeliano,Dov Frohman, fuoriuscito dallaFairchild Semiconductor per unirsi aMoore,Noyce eGrove, fondatori della societàIntel, che a loro volta erano usciti dalla Fairchild l'anno prima.
Sono stati prodotti diversi tipi di EPROM che si differenziano - oltre che per la capacità di memoria disponibile, anche per la velocità (tempo di accesso) e per le tensioni di lavoro e di programmazione. Generalmente ciascun programmatore ha un elenco di chip, divisi per produttore, per automatizzare le operazioni di impostazione ai fini della programmazione, la quale poteva essere effettuata in due modi: trasferire all'EPROM Programmer il file in codice esadecimale residente sufloppy ohard disk di un computer tramite un'interfaccia, oppure copiare direttamente il contenuto di una EPROM campione, in una o più EPROM vergini.
Piedinatura della 1ª EPROM commercializzata denominata 1702 e prodotta dallaIntel dal 1971 e capostipite di tutte le altre piedinature successive
Le EPROM con capacità fino a 4096byte (32768 celle), con sigla commerciale 2732, adottavano un package a 24 pin, interamente occupati dai 12 fili di indirizzo, 8 fili dei dati, 1 di selezione chip, 1 per la programmazione e 2 per l'alimentazione. Per le versioni successive, a partire dal chip siglato 2764, avente capacità doppia (8192 byte per un totale di 65536 celle), si rese necessario impiegare un package a 28 pin, venendo a mancare il pin necessario ad ospitare il tredicesimo filo di indirizzo; più avanti nel tempo con l'aumentare di capacità, anche il package a 28 pin non fu più sufficiente. Il package era unicamente ceramico, dovendo garantire la tenuta stagna della finestra.
A partire dal chip con capacità di 8 Kbyte in poi, alcuni di questi tipi di memoria furono prodotti anche usando la tecnologiaCMOS, consentendo una forte riduzione nel consumo di corrente a beneficio anche di una minore produzione di calore.
L'architettura di una memoria EPROM è simile a quella delleRead Only Memory, dalle quali discende, e si basa sull'elemento di memoria FAMOS, unFloating Gate MOSFET a canalep programmabile mediantebreakdown a valanga nella regione di drain al di sotto del gate: applicando una forte corrente tra drain e source, alcuni elettroni caldi riescono a penetrare nel gate flottante grazie al campo elettrico positivo presente nell'ossido generato dall'accoppiamento capacitivo tra Floating-gate e drain. La cella è programmata quando nel gate flottante è presente una carica tale da inibire l'accensione del dispositivo aumentando considerevolmente il valore della tensione di soglia.
Vista laterale di un transistor MOSFET a gate flottante
Per i primi dispositivi esisteva un metodo per velocizzare la programmazione: nelle specifiche fornite del costruttore sulle temporizzazioni dei segnali è indicato anche il tempo di programmazione, cioè la durata di permanenza della tensione di programmazione sulpin adibito a questa funzione, che è dell'ordine di qualche decina di millisecondi. Dal momento che tale valore è sovrastimato, si adotta un metodo dettoadattativo, il quale consiste in due operazioni ripetute più volte: viene fornita la tensione di programmazione per un decimo del tempo standard, quindi viene letta la cella e si ripete il ciclo fino a che la cella non risulta essere programmata, e a questo punto viene fornita tensione di programmazione per un tempo uguale alla somma dei tentativi di programmazione precedenti, ottenendo così la certezza di stabilità del dato scritto. Tale sequenza è gestita in automatico dalfirmware dell'EPROM Programmer.
QuestoMicrocontrollore 8749 mantiene il suo programma in una EPROM interna
Per permettere l'irradiazione ultravioletta, ildie della EPROM è posizionato nelpackage al di sotto di una finestrella trasparente. Nelle prime versioni, la finestra veniva chiusa con una sottile lastrina diquarzo, in seguito fu utilizzato il semplice vetro, impiegando la quantità necessaria a coprire come una lente il foro tondo ricavato nella metà superiore del package ceramico destinato a questo dispositivo. La cancellazione avveniva per mezzo di un attrezzo chiamato EPROM Eraser, una semplice scatola contenente una lampada araggi UV di tipo UV-C e un temporizzatore elettromeccanico, il quale permetteva di impostare il tempo di irradiazione fino ad un massimo di 45 minuti; gli Eraser più piccoli erano dotati di una lampada in grado di cancellare in un'unica operazione una dozzina di EPROM. La cancellazione consisteva nel portare tutti i bit (celle o locazioni) a valore alto (1), la EPROM a questo punto tornava a essere programmabile. Le EPROM sono ormai da considerare obsolete e non vengono praticamente più usate. Sono state sostituite dallememorie flash oEEPROM che possono essere cancellate elettricamente senza dover ricorrere ai raggi UV.