信息來源于:互聯(lián)網(wǎng) 發(fā)布于:2021-10-31
單片機(jī)中安裝了各種各樣的存儲(chǔ)器。半導(dǎo)體制造商還開發(fā)了特殊類型的存儲(chǔ)器,我們無法全部解釋。因此,在本文中,主要以“STM32系列”中的存儲(chǔ)器為例,該存儲(chǔ)器是通用的32位單片機(jī)。
一、非易失性存儲(chǔ)器
即使關(guān)閉電源也可以保留其內(nèi)容的存儲(chǔ)器(存儲(chǔ)設(shè)備)。還包括用于IC芯片的ROM、廣義的HDD、軟盤(FDD)、磁帶等,但是由于ROM用于單片機(jī),因此我們將重點(diǎn)介紹ROM。
ROM是“只讀存儲(chǔ)器”的縮寫,顧名思義,它是“只讀存儲(chǔ)器”。即使您說“只讀”,如果用戶不能重寫它也是很不方便的,所以最近,出現(xiàn)了一種稱為可編程ROM的ROM,它可以重寫內(nèi)容。根據(jù)存儲(chǔ)方法和用途,有各種ROM。
(1)FLASH
近年來,F(xiàn)LASH已經(jīng)成為安裝在單片機(jī)中的ROM的主流。可以對(duì)其進(jìn)行電擦除和重寫,從而使用戶可以輕松更改程序代碼。用于重寫單個(gè)存儲(chǔ)單元的機(jī)制與稍后描述的EEPROM完全相同,但是通過使擦除單元大于EEPROM,可以減少整個(gè)存儲(chǔ)模塊中的晶體管數(shù)量。因此,不能以字節(jié)或位為單位擦除FLASH,而主流方法是一次電擦除整個(gè)芯片(或扇區(qū)單元)。如果容量相同,則可以在小于EEPROM的區(qū)域內(nèi)制作,因此可以實(shí)現(xiàn)大容量的可編程ROM。
過去,由于制造成本高而很少使用它,但是近來,隨著制造成本的降低,它通常用作單片機(jī)指令的存儲(chǔ)器。當(dāng)然,它也可以用于數(shù)據(jù)。
(2)EEPROM
類似于FLASH,它是一種可以電擦除和重寫的ROM。對(duì)于EEPROM,可以以字節(jié)為單位進(jìn)行寫入和擦除,因此用戶可以以與RAM相同的方式使用它(但是重寫需要時(shí)間)。由于該區(qū)域大于FLASH,因此無法在微計(jì)算機(jī)上安裝大容量。因此,它主要用于數(shù)據(jù)存儲(chǔ),特別是用于即使電源關(guān)閉也要保留的數(shù)據(jù)。當(dāng)然,它也可以用于指令,但是由于容量不是很大,因此只能用于小的指令代碼。
(3)其他ROM
除上述以外,還有掩碼ROM和EPROM(可擦可編程ROM)。
掩模ROM是在單片機(jī)的制造過程中創(chuàng)建內(nèi)容的ROM。用戶無法重寫內(nèi)容。另外,由于從訂購到交貨需要時(shí)間,因此目前很少使用。
EPROM以電子方式進(jìn)行寫入,但是包裝上有一個(gè)暴露在紫外線下的窗口以將其擦除。在EPROM中,只能寫入一次的EPROM稱為OTP(一次性可編程ROM)。
它只能使用便宜的無窗口軟件包編寫一次,此后不能擦除,但是它比普通的EPROM便宜,因此它經(jīng)常在FLASH問世之前使用。
在STM32系列中,有些帶有內(nèi)置FLASH的產(chǎn)品具有OTP區(qū)域。寫入一次以防止重寫后可以鎖定(保護(hù))的區(qū)域稱為OTP區(qū)域。您可以保護(hù)程序免于意外重寫和篡改黑客程序。
二、易失性存儲(chǔ)器
它是一種存儲(chǔ)器(存儲(chǔ)設(shè)備),在關(guān)閉電源時(shí)其內(nèi)容將被擦除。即使在關(guān)閉電源的情況下,也不需要保留在單片機(jī)的計(jì)算和計(jì)算過程中使用的數(shù)據(jù),因此在您要保存臨時(shí)數(shù)據(jù)時(shí)使用它。單片機(jī)中安裝的大多數(shù)RAM是易失性存儲(chǔ)器。
RAM:隨機(jī)存取存儲(chǔ)器
隨機(jī)存取存儲(chǔ)器的縮寫稱為RAM。就像閱讀一樣,它是一種“可以不受限制地讀寫的存儲(chǔ)器”。RAM是一種保存內(nèi)容的方法,可以大致分為兩種類型。
(1)SRAM(靜態(tài)RAM)
使用觸發(fā)器配置邏輯作為存儲(chǔ)單元并靜態(tài)保存數(shù)據(jù)的RAM。即使被稱為觸發(fā)器,由于邏輯規(guī)模變大,因此不使用圖3(a)所示的鎖存電路。通常,使用逆變器的反饋類型。由于根據(jù)邏輯電路的輸出是H電平還是L電平來保留內(nèi)容,因此易于使用并且容易實(shí)現(xiàn)低功耗。包括STM32系列在內(nèi)的許多單片機(jī)的內(nèi)部RAM是SRAM。
(2)DRAM(動(dòng)態(tài)RAM)
DRAM通常不內(nèi)置在單片機(jī)中,但是DRAM控制器是作為外圍功能內(nèi)置的,因此我將對(duì)其進(jìn)行介紹。
使用動(dòng)態(tài)類型存儲(chǔ)單元保存內(nèi)容的RAM稱為動(dòng)態(tài)RAM(DRAM)。它由一個(gè)晶體管和一個(gè)小容量電容器組成,并根據(jù)電容器中是否存在電荷來保存數(shù)據(jù)。
電容器中充電的電荷是泄漏電流,該泄漏電流會(huì)隨著時(shí)間的流逝而衰減,因此必須定期將電池恢復(fù)到其原始狀態(tài)。這稱為刷新。使用單詞“動(dòng)態(tài)”是因?yàn)樗⑿虏僮魇莿?dòng)態(tài)操作。
由于存儲(chǔ)單元的結(jié)構(gòu)非常簡(jiǎn)單,因此可以減小面積并可以創(chuàng)建大量的RAM。使用相同的面積,您可以創(chuàng)建四倍于SRAM的容量。但是,用戶必須提供刷新控制電路。
某些單片機(jī)(包括STM32系列)具有外圍功能,可以在刷新DRAM時(shí)對(duì)其進(jìn)行訪問。
(3)其他RAM
除上述之外,安裝在單片機(jī)中的RAM包括FeRAM(鐵電隨機(jī)存取存儲(chǔ)器),它是非易失性RAM。當(dāng)前,諸如FeRAM之類的非易失性RAM僅在特定的單片機(jī)中使用。