雙端口RAM在單片機系統中的應用
3.2 MAX813L的使用
此電路為MAX公司生產(chǎn)的程序監控專(zhuān)用電路,用以防止程序跑死、跑飛,如圖2所
示。將MR與看門(mén)狗輸出端WDO相連,看門(mén)狗輸入端WDI接到單片機的P1.5腳,REST
端接單片機復位端RESET。平時(shí),在定時(shí)中斷子程序中對P1.5輸出一次,每次取反,則P1.5腳將輸出標準的方波,不斷觸發(fā)看門(mén)狗。當系統受到干擾,出現“死機”現象時(shí),單片機將無(wú)法從P1.5給出脈沖,1.6 s后813L的REST端便給出復位信號,使單片機復位。另外在掉電和上電期間,MAX813L均能產(chǎn)生可靠的復位信號。
3.3故障探測及切換系統
這個(gè)系統有兩個(gè)任務(wù):一是探測2個(gè)CPU系統的工作狀況;二是發(fā)現故障時(shí)及時(shí)進(jìn)行整個(gè)系統的切換。既然要檢測CPU的工作是否正常,它本身就應該高可靠,結構要精少,嚴格篩選。2個(gè)CPU同時(shí)給故障檢測及切換系統不間斷脈沖,檢測系統則檢測所給的脈沖間隔,由此來(lái)確定2個(gè)CPU系統是否正常工作。這個(gè)間隔應大于看門(mén)狗產(chǎn)生復位所需的時(shí)間,以確定確實(shí)硬件出故障后再做切換。當某CPU系統所給出的脈沖間隔大于設定值時(shí),說(shuō)明此CPU系統發(fā)生了故障。這時(shí)切換控制系統就可通過(guò)邏輯組合屏蔽掉此CPU的CE,同時(shí)放開(kāi)另一CPU端的CE,將雙端口RAM交由副CPU使用。
4 軟件
在此電路的其它部分有現成的8 Hz信號,可將此信號作為外部中斷源,由P1.5輸出脈沖信號給故障檢測電路及看門(mén)狗電路。每發(fā)生一次中斷,將P1.5輸出取一次
反,形成了250 ms的方波信號。外部中斷子程序如圖3所示。其中03H為設定的標志
位,它代表了上一次P1.5輸出的電平。
在主程序的初始化中,應避免對各內外存儲器置數,以便出現故障產(chǎn)生復位后,單片機能夠不間斷按原故障處繼續運行。
5 結 論
在以往的雙機容錯系統中,為了共享存儲器而不得不增加大量類(lèi)似245、244的器件,反而影響了可靠性的提高,而雙端口RAM的使用可大大簡(jiǎn)化電路,從而真正保證雙機系統可靠性的提高。
對以上方案進(jìn)行了許多模擬故障試驗,均能可靠地進(jìn)行切換和不間斷工作。應用在建筑塔鐘控制系統上以后,經(jīng)過(guò)長(cháng)期運行,證明設計是成功的,運行是可靠的。
參考文獻
1 趙峰.高性能雙口RAM及應用.現代電子技術(shù),1997
2 李高強等.雙口RAMIDT7130在全數字化交流調速系統中的應用.電子技術(shù)應用,1996
評論