嵌入式系統(tǒng)應(yīng)用中NV SRAM存儲(chǔ)器的應(yīng)用
傳統(tǒng)方案中常常采用EPROM、EEPROM和Flash存儲(chǔ)程序,NVSRAM具有高速存取時(shí)間和與SRAM相同的接口,因而可用于存儲(chǔ)程序。本文介紹NVSRAM如何與基于程序和數(shù)據(jù)存儲(chǔ)的微處理器進(jìn)行接口,并說明選用NVSRAM與現(xiàn)有的其它非易失存儲(chǔ)器相比具有哪些優(yōu)勢(shì)。
本文引用地址:http://www.ex-cimer.com/article/149199.htm盡管EPROM、EEPROM、Flash和NVSRAM在某種程度上提供了相同特性的非易失存儲(chǔ)方案,而在一些特殊應(yīng)用中,不適當(dāng)?shù)?a class="contentlabel" href="http://www.ex-cimer.com/news/listbylabel/label/存儲(chǔ)器">存儲(chǔ)器方案將會(huì)導(dǎo)致設(shè)計(jì)缺陷。微處理器系統(tǒng)選擇存儲(chǔ)器時(shí)主要面臨下列問題:
1。對(duì)特定的應(yīng)用,存儲(chǔ)容量不足;
2。程序存儲(chǔ)器需要較快的存取時(shí)間;
3。保證非易失存儲(chǔ)的寫周期次數(shù)不夠大,產(chǎn)品工作在有效壽命的后期時(shí)存在可靠性問題;
4。扇區(qū)寫入不可避免,特別是存儲(chǔ)器的扇區(qū)大于微處理器的緩沖區(qū)時(shí)。
5。采用UV擦除方式不便于開發(fā),一般無法滿足在線編程的要求,需要特殊的附加設(shè)備,而不適當(dāng)?shù)牟僮鲿?huì)導(dǎo)致數(shù)據(jù)在光照下被擦除。表1列出了四種存儲(chǔ)器的不同特點(diǎn),顯然,NVSRAM的綜合指標(biāo)最高。
EPROM的缺陷在于需要UV擦除時(shí)間,編程時(shí)需要額外的高電壓Vpp和Vcc。EPROM為程序存儲(chǔ)提供了一種可行方案,在微處理器應(yīng)用中能夠提供適當(dāng)?shù)慕涌诤妥x時(shí)間,但由于缺少電擦除功能無法用于非易失數(shù)據(jù)存儲(chǔ)。
EEPROM是一種較好的程序存儲(chǔ)方案,但其有限的寫周期次數(shù)和較低的寫速度使其很少用于數(shù)據(jù)存儲(chǔ)。寫周期次數(shù)的限制使其在大多數(shù)應(yīng)用中只能用于程序存儲(chǔ)。
初看起來,F(xiàn)lash是一種很好的解決方案,它同時(shí)提供了同步和異步讀功能,與EPROM和EEPROM相比具有較高的寫速度。但Flash存在寫周期次數(shù)有限的問題,劃分后的扇區(qū)(64字節(jié)到64k字節(jié))必須一次性寫入。這意味著數(shù)據(jù)必須由微處理器高速緩沖,然后一次寫入Flash器件的存儲(chǔ)區(qū)內(nèi)。如果設(shè)計(jì)中微處理器不具備足夠的內(nèi)部RAM,就無法緩存這些數(shù)據(jù)。在一些應(yīng)用中,如數(shù)據(jù)記錄儀,當(dāng)電源出現(xiàn)故障時(shí)可能導(dǎo)致滯留在微處理器緩沖區(qū)的數(shù)據(jù)丟失。盡管市場(chǎng)上也有一些Flash器件不需要扇區(qū)寫入,但產(chǎn)品的訂貨批量受限制。另外,這種產(chǎn)品還缺乏Flash器件標(biāo)準(zhǔn),雖然大多數(shù)Flash器件的異步讀操作與SRAM或EPROM相同,但并非所有器件都是如此,而且,寫接口標(biāo)準(zhǔn)較多,當(dāng)產(chǎn)品更新?lián)Q代無法支持相應(yīng)的標(biāo)準(zhǔn)時(shí)將限制器件的實(shí)際使用壽命。另外,還需保證寫操作不要超出最大寫周期次數(shù),因?yàn)楫?dāng)器件達(dá)到有效壽命時(shí)將開始出現(xiàn)隨機(jī)存儲(chǔ)誤碼。有些Flash存儲(chǔ)器需要提供額外的編程電壓(大于13V)以保證快速寫模式,因而增加了系統(tǒng)成本,而尋找容量低于1Mb的Flash也比較困難。
NVSRAM可提供16kb至16Mb的存儲(chǔ)容量,存取時(shí)間高達(dá)70ns。讀、寫接口均與SRAM保持一致,標(biāo)準(zhǔn)Vcc條件下NVSRAM與同等速度SRAM的操作完全相同。無需擔(dān)心存儲(chǔ)數(shù)據(jù)分區(qū)問題,數(shù)據(jù)存儲(chǔ)位置與標(biāo)準(zhǔn)SRAM相同。電源失效時(shí)(Vcc跌落到標(biāo)準(zhǔn)工作電壓以下),內(nèi)部電路將片選(CE)信號(hào)置位,使存儲(chǔ)器處于寫保護(hù)狀態(tài)、并切換電源以便保持?jǐn)?shù)據(jù)。電源恢復(fù)正常后,NVSRAM恢復(fù)微處理器對(duì)CE信號(hào)的控制,SRAM電源切換到Vcc。CE信號(hào)被切換的瞬間只要微處理器控制信號(hào)沒有處于寫有效狀態(tài)(CE為高)就不會(huì)丟失數(shù)據(jù)。
由于工作狀態(tài)下NVSRAM與SRAM兼容,可以用速度相符的NVSRAM簡(jiǎn)單地替代任何微處理器系統(tǒng)的SRAM,這種替代僅有的制約是需要了解電源所能提供的電流。Dallas半導(dǎo)體建議采用CPU監(jiān)控電路以保證微處理器在NVSRAM就緒之前處于復(fù)位狀態(tài)。微處理器復(fù)位狀態(tài)下,絕大多數(shù)總線控制信號(hào)(CE、WE、RD)處于禁止?fàn)顟B(tài),能夠避免NVSRAM在有效期內(nèi)數(shù)據(jù)不丟失。Maxim提供多種CPU監(jiān)控電路,完全勝任這項(xiàng)工作,配合其它與復(fù)位信號(hào)相關(guān)的功能就能保證系統(tǒng)更加可靠工作。
圖1是利用單片NV
SRAM存儲(chǔ)程序和數(shù)據(jù)的典型電路,該電路的主要優(yōu)點(diǎn)是節(jié)省了元器件數(shù),充分利用了存儲(chǔ)器空間。如果微控制器僅占用32kB存儲(chǔ)空間的1kB存儲(chǔ)程序,則其余31kB可用于非易失數(shù)據(jù)存儲(chǔ)。32kB的存儲(chǔ)容量足以滿足許多應(yīng)用場(chǎng)合,如果對(duì)程序和數(shù)據(jù)分別采用兩類存儲(chǔ)器將造成不必要的浪費(fèi),而且將迫使設(shè)計(jì)人員選用更大容量的存儲(chǔ)器。
利用NVSRAM存儲(chǔ)數(shù)據(jù)
NVSRAM非常適合在微控制器系統(tǒng)中存儲(chǔ)校準(zhǔn)信息、記錄數(shù)據(jù)等。如上所述,與SRAM工作在相同速度的NVSRAM采用標(biāo)準(zhǔn)的Vcc電源,NVSRAM在讀、寫操作時(shí)不需要延長(zhǎng)時(shí)鐘周期,除非與高速DSP或先進(jìn)的微控制器配合使用。
絕大多數(shù)微控制器、包括8051系列產(chǎn)品,均提供程序存儲(chǔ)器和外部RAM的控制信號(hào),圖1表明了如何利用這些現(xiàn)有的控制信號(hào)產(chǎn)生一組新的單片NVSRAM控制信號(hào),同時(shí)用于程序和數(shù)據(jù)存儲(chǔ)。圖2表示3V系統(tǒng)中如何利用現(xiàn)存的控制信號(hào)對(duì)兩片獨(dú)立的存儲(chǔ)器尋址,主要區(qū)別是PSEN用于程序存儲(chǔ)器輸出使能控制,8051的RD信號(hào)(P3。7)用于數(shù)據(jù)存儲(chǔ)器的輸出使能控制。當(dāng)兩個(gè)存儲(chǔ)器輸出同時(shí)驅(qū)動(dòng)到總線時(shí),會(huì)導(dǎo)致總線沖突;另一種出現(xiàn)總線沖突的可能是微控制器將數(shù)據(jù)輸送給NVSRAM的時(shí)候,外部存儲(chǔ)器受指令控制輸出數(shù)據(jù)。這些情況都需要在設(shè)計(jì)中慎重考慮,以避免總線沖突。
針對(duì)這種設(shè)計(jì)需要說明兩點(diǎn):首先,程序存儲(chǔ)器必須始終加寫保護(hù);其次,數(shù)據(jù)存儲(chǔ)器的可尋址空間可能大于微處理器尋址空間。
當(dāng)NVSRAM的WE引腳置為高電平時(shí),不能寫入任何數(shù)據(jù),因此,需利用存儲(chǔ)器編程器對(duì)該引腳進(jìn)行編程。BPMicrosystems和DataI/O編程器幾乎支持所有Dallas半導(dǎo)體的NV
SRAM。當(dāng)采用編程器進(jìn)行器件編程時(shí),注意在把器件安裝到電路之前要避免器件受ESD沖擊,因?yàn)镋SD沖擊會(huì)造成器件中的數(shù)據(jù)丟失。一旦器件在保證數(shù)據(jù)正確的前提下裝入線路板,NVSRAM將有效保證數(shù)據(jù)的完整性。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評(píng)論