唯讀記憶體(簡稱ROM)所存資料,一般是在裝入整機前事先寫好的。整機工作過程中隻能從唯讀記憶體中讀出事先存儲的資料,而不象隨機記憶體那樣能快速地、方便地加以改寫。由於 ROM所存資料比較穩定、不易改變、即使在斷電後所存資料也不會改變;其次,它的結構也比較簡單,讀出又比較方便,因而常用於存儲各種固定程式和資料。

  半導體唯讀記憶體中的存儲單元為一個半導體器件,如二極體、雙極型電晶體或MOS型電晶體,它位於字線和位線交叉處。以以增強型N溝道MOS晶體管為例,其柵引出線接字線,漏引出線接位線,源引出線接地。當字線為高電平時,晶體管導通,位線輸出低電平(邏輯“0”)。若交叉點處沒有連接晶體管,則位線被負載晶體管拉向高電平(邏輯“1”)。其他未選中的字線都處於低電平,所有掛在字線上的晶體管都是不導通的,所以不影響位線的輸出電平。這樣,以字線和位線交叉點是否連有晶體管來決定該點(存儲單元)存儲的數據是“0”還是“1”。

  隻讀存儲器所存儲的數據功能,是以在制造過程中所用掩模決定的,所以也稱掩模隻讀存儲器。實際應用中除瞭少數品種的隻讀存儲器(如字符發生器等)可以通用之外,不同用戶所需隻讀存儲器的內容是不相同的。為便於用戶使用,又適於工業化大批量生產,後來出現瞭可編程序的隻讀存儲器。其電路設計是在每個存儲單元(如肖特基二極管)上都串接一熔絲。正常工作狀態下,熔絲起導線作用;當在與之相連的字線、位線上加大工作偏壓時,熔絲被熔斷。用這種辦法,用戶可以自己編寫並存儲所需的數據。

  可編程序隻讀存儲器的任一單元都隻能寫一次,這還是很不方便的。為瞭解決這一問題,又出現瞭可擦可編程序隻讀存儲器。這種存儲器采用最多的是浮柵雪崩註入 MOS單元。當在選定單元的源引出線或漏引出線上加足夠高的電壓使器件發生雪崩擊穿時,高能熱電子穿過柵氧化層註入到懸浮柵上去,使浮柵帶電,從而改變溝道導通狀態,達到寫入的目的:擦去是通過紫外光照射完成的。紫外光的照射使懸浮柵上的電子能得到足夠能量穿透柵氧化層勢壘,從而使浮柵消除帶電狀態。

  電可改寫的隻讀存儲器是新出現的一種隻讀存儲器。它的原理是在強電場作用下,通過隧道效應將電子註入到浮柵上去,或反過來將電子從浮柵上拉走。這樣,就可以通過電學方法方便地對隻讀存儲器進行擦和寫。

  可擦可編程序隻讀存儲器的寫入速度比較慢,每位寫入速度約需幾十至幾百毫秒,寫完整片存儲器需要幾十到幾百秒:擦去速度則更慢,在一般紫外光源照射下需幾十分鐘。電可改寫隻讀存儲器擦、寫速度比之讀出速度尚慢好幾個數量級。