Coba jelasin Pemrograman dari Programmable ROM dong

Dalam PROM baru biasa, semua bit di dalamnya dibaca sebagai "1". Membakar bit sekring ketika menjalani proses pemrograman "meledakkan" sekring, yang menyebabkan bit-bit dalam PROM dibaca sebagai "0". Proses "peledakan" sekring tidak dapat dikembalikan. Beberapa chip PROM dapat diprogram ulang jika data barunya menggantikan bit-bit "1" dengan "0". Beberapa set instruksi CPU (seperti MOS Technology 6502) memanfaatkan ini dengan mendefinisikan instruksi break (BRK) dengan kode operasi '00'. Jika ada instruksi yang salah, itu bisa "diprogram ulang" ke BRK yang menyebabkan CPU memindahkan kendali ke sebuah patch. Ini akan mengeksekusi instruksi yang benar dan akan kembali ke instruksi setelah BRK.

Sel bit diprogram dengan memberi denyut listrik bertegangan tinggi (yang tidak ditemui selama penggunaan biasa), yang melintasi gerbang dan substrat transistor oksida tipis (sekitar 6V untuk oksida dengan ketebalan 2 nm, atau 30MV/cm) untuk memecahkan oksida antara gerbang dan substrat. Saluran inversi dalam substrat yang berada di bawah gerbang akan terbentuk dari adanya tegangan positif pada gerbang transistor. Ini menyebabkan arus terowongan (tunneling current) mengalir melewati oksida, yang menghasilkan perangkap-perangkap dalam oksida. Akibatnya, terjadi peningkatan arus melalui oksida, pelelehan oksida, dan pembentukan saluran konduktif dari gerbang ke substrat. Arus yang dibutuhkan untuk membentuk saluran konduktif adalah sekitar 100µA/100nm dan pemecahan terjadi setelah kira-kira 100µs (mikrodetik) atau kurang dari itu.