在計(jì)算機(jī)系統(tǒng)中,無(wú)論使用動(dòng)態(tài)ram還是使用靜態(tài)ram,其最大的缺點(diǎn)是在斷電以后,它所存儲(chǔ)的信息即隨之消失。即使是瞬時(shí)斷電也會(huì)使它所存儲(chǔ)的信息全部丟失。如果計(jì)算機(jī)處在運(yùn)行的過(guò)程中,則其原始數(shù)據(jù)及運(yùn)算結(jié)果被丟失。如果在調(diào)試程序的過(guò)程中,發(fā)現(xiàn)硬件要作某些改動(dòng),則在關(guān)機(jī)修改硬件時(shí),其調(diào)試程序及數(shù)據(jù)也全部丟失。因此采取措施以防止ram中的信息在斷電時(shí)丟失是必要的。
斷電保護(hù)要求在電源發(fā)生故障或人為切斷電源時(shí),能在電源電壓下降的過(guò)程中,保護(hù)cpu的狀態(tài)信息以及ram中的數(shù)據(jù)或程序。當(dāng)電源恢復(fù)正常時(shí),將原來(lái)cpu的狀態(tài)及ram中的數(shù)據(jù)或程序恢復(fù)、并繼續(xù)工作。
斷電保護(hù)系統(tǒng)包括斷電檢測(cè),停機(jī)電路和數(shù)據(jù)、狀態(tài)保護(hù)電路三部分。
由于穩(wěn)壓電源中采用了大容量的電容,使得交流電停止供電以后,其穩(wěn)壓后的直流電壓按指數(shù)規(guī)律下降。斷電檢測(cè)電路在檢測(cè)出電源電壓下降時(shí),向cpu申請(qǐng)中斷,利用電源電壓下降到額定工作電壓之前的一段時(shí)間,把cpu的狀態(tài)信息及ram中的信息傳送到具有斷電保持信息的存儲(chǔ)器中去,然后主動(dòng)停機(jī)。主動(dòng)停機(jī)的目的在于防止電源電壓下降到額定工作電壓以下時(shí),由于電路的不穩(wěn)定而進(jìn)行錯(cuò)誤操作。
在有些簡(jiǎn)單的系統(tǒng)中,也可以不保護(hù)cpu的狀態(tài)信息而只保護(hù)ram中的信息。此時(shí)只需在斷電時(shí)將ram中的信息傳到具有斷電保持信息的存儲(chǔ)器中。
除了利用鐵電存儲(chǔ)器,如f1608之外,解決這個(gè)問(wèn)題的一個(gè)方法是利用靜態(tài)ram的低電壓保持信息的功能,對(duì)這些靜態(tài)ram采用后備電源供電。
靜態(tài)ram 6116,6264都具有這一功能。當(dāng) vcc大于2v,而片選信號(hào) -cs≥vcc-0.2v時(shí),能以極小的功耗保持其存儲(chǔ)的信息,此時(shí)流過(guò)電路的電流僅1~100μa。
因此,當(dāng)電源斷電以后,我們可以用一個(gè)大于2v的后備電源對(duì)其繼續(xù)供電。后備電源可采用電池,圖1即為一個(gè)采用電池供電的電路。在正常供電時(shí),d1導(dǎo)通,d2截止,電池不起作用。6116或6264的電源電壓為5v減去二極管的壓降。在斷電時(shí),d1截止,d2導(dǎo)通,由電池供電,6116或6264的電源電壓為電池電壓減去二極管的壓降。由譯碼器輸出的片選信號(hào)通過(guò)三極管加到存儲(chǔ)器的片選端上,在正常供電時(shí),此三極管的導(dǎo)通與否受到譯碼器輸出的控制。當(dāng)譯碼器輸出為低電平時(shí),三極管導(dǎo)通,該存儲(chǔ)器被選中。當(dāng)譯碼器輸出為高電平時(shí),三極管截止,該存儲(chǔ)器未選中。在斷電時(shí),三極管的基極電壓為零,因而此三極管截止,存儲(chǔ)器的片選端與vcc端電壓相等,這時(shí)僅用幾個(gè)μa就能保持其信息。對(duì)于圖1,如加上虛線(xiàn)框內(nèi)的d3及r1,則電池可改為充電電池。這樣在正常供電時(shí),由電源通過(guò)d3及r1對(duì)電池充電,而在斷電時(shí),由電池供電,以保證長(zhǎng)時(shí)間使用。
圖1 后備電源供電
采用上述方法應(yīng)選用壓降小的二極管.以保證電源電壓減去二極管的壓降后的電壓仍能使存儲(chǔ)器正常工作。