<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 雙端口RAM在單片機(jī)系統(tǒng)中的應(yīng)用

          雙端口RAM在單片機(jī)系統(tǒng)中的應(yīng)用

          作者: 時間:2012-03-08 來源:網(wǎng)絡(luò) 收藏

          1引言

          在對產(chǎn)品可靠性要求高的系統(tǒng)中,往往需要。有些設(shè)備不僅要求其在各種惡劣的天氣下工作,而且要求長期不間斷工作。為提高可靠性往往采用雙CPU系統(tǒng)。平時主單片機(jī)系統(tǒng)工作,并將所處理的數(shù)據(jù)存儲在外存,一旦主CPU系統(tǒng)出現(xiàn)故障,副CPU可切換上來,并利用公共外存的數(shù)據(jù)繼續(xù)工作,而不需要人工干預(yù)。這時做為外存就是兩個CPU之間信息傳遞的最好渠道。本文以美國IDT公司生產(chǎn)的IDT7130為例,闡述在最常用的80C31雙機(jī)系統(tǒng)中的應(yīng)用。

          2 系統(tǒng)的基本結(jié)構(gòu)及硬件框圖

          如圖1所示,整個系統(tǒng)由2個8031最小系統(tǒng)、、故障探測及、程序監(jiān)控系統(tǒng)、I/O轉(zhuǎn)換電路、鍵盤顯示電路及外部受控設(shè)備組成。

          2個8031最小系統(tǒng)中,一個為主CPU(左邊),右邊為副CPU系統(tǒng)。當(dāng)兩個CPU均為正常工作時,控制為主CPU系統(tǒng)工作,這時副CPU端的CE被屏蔽,同時鍵盤顯示系統(tǒng)和I/O口由主CPU系統(tǒng)控制。不斷地檢測兩個CPU系統(tǒng)的工作狀況。

          當(dāng)切換系統(tǒng)檢測出主CPU系統(tǒng)發(fā)生故障時,屏蔽掉左邊的CE,而打開CE,同時將鍵盤顯示系統(tǒng)及I/O交由副CPU系統(tǒng)控制。這時副CPU將接著主CPU系統(tǒng)剛剛中斷的工作繼續(xù)進(jìn)行。由于副CPU系統(tǒng)所使用的是雙端口RAM中同一地址的數(shù)據(jù)繼續(xù)工作,所以從外部看不出切換過程的發(fā)生。

          為了保證設(shè)備長期不間斷運行的可靠性,特使用了看門狗電路(MAX813L),這樣首先從軟件上保證程序運行的可靠性,最后又從雙CPU切換來保證硬件上的可靠性。

          由于鍵盤顯示電路(8279)中用到了數(shù)  據(jù)總線,所以使用了二片74HC245,并將RD、WR進(jìn)行了二選一,245的方向也由PSEN及RD通過邏輯組合進(jìn)行控制。

           

          3 系統(tǒng)各部分工作原理

          3 .1 IDT7130的工作原理

          IDT7130為1 kΩ×8位的靜態(tài)雙端口RAM,它采用高性能CEMOS工藝,典型功耗為325 MW,最大訪問時間僅為20 ns。它帶有兩個自身控制,地址和I/O引腳的獨立端口。它允許任何一個端口獨立地讀寫存儲器中的任何單元。為了避免雙CPU系統(tǒng)對數(shù)據(jù)讀寫發(fā)生爭用,其片內(nèi)帶有硬件端口仲裁電路,以保證雙機(jī)有序地讀寫存儲器中的任何單元。在MCS-51系列單片機(jī)中,由于沒有READY延時線,所以不能使用這些仲裁電路,而需另設(shè)硬件電路來防止數(shù)據(jù)爭用。


          上一頁 1 2 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();