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

          新聞中心

          EEPW首頁 > 模擬技術(shù) > 設(shè)計(jì)應(yīng)用 > 掉電保護(hù)在嵌入式系統(tǒng)中的設(shè)計(jì)應(yīng)用

          掉電保護(hù)在嵌入式系統(tǒng)中的設(shè)計(jì)應(yīng)用

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

          本文介紹的方法是在用ARM7系列芯片S3C4510B和μClinux構(gòu)建的嵌入式平臺上實(shí)現(xiàn)的。整個實(shí)現(xiàn)的基本思路是:產(chǎn)生掉電信號,捕捉掉電信號和處理掉電信號。重點(diǎn)介紹這個過程的具體實(shí)現(xiàn)。

            系統(tǒng)防掉電設(shè)計(jì)的目的是:采用一種機(jī)制,使得系統(tǒng)在意外失去供電的情況下,可以保證系統(tǒng)運(yùn)行狀態(tài)的確定性以及記錄數(shù)據(jù)的完整性;當(dāng)系統(tǒng)供電恢復(fù)后,現(xiàn)場數(shù)據(jù)可以及時恢復(fù),避免應(yīng)用系統(tǒng)產(chǎn)生混亂。我們知道,在設(shè)計(jì)與開發(fā)中越來越多地應(yīng)用嵌入式操作系統(tǒng)。由于操作系統(tǒng)的引入,數(shù)據(jù)的讀寫往往是通過文件的方式完成,而不是直接對存儲單元地址操作。用文件讀寫方式操作數(shù)據(jù),在程序的運(yùn)行過程中往往將數(shù)據(jù)暫存在易失性的存儲空間,如SDRAM,一旦系統(tǒng)意外失電,這些數(shù)據(jù)往往被丟失。因此,當(dāng)系統(tǒng)意外失電時必須采取一定的措施進(jìn)行系統(tǒng)的,以避免系統(tǒng)產(chǎn)生混亂??偟恼f來,防掉電程序的主要思路就是:產(chǎn)生掉電信號,捕捉掉電信號,處理掉電信號和數(shù)據(jù)以及現(xiàn)場狀態(tài)的恢復(fù)。

            如果不引入操作系統(tǒng),直接對存儲單元進(jìn)行數(shù)據(jù)操作,每次操作的數(shù)據(jù)量小,可以利用中斷服務(wù)的方式進(jìn)行;而用文件的方式進(jìn)行數(shù)據(jù)操作,數(shù)據(jù)量一般比較大,因此基于中斷服務(wù)的方式進(jìn)行掉電保護(hù)已經(jīng)不再可靠。本文研究的對象是基于操作系統(tǒng)的較為復(fù)雜的設(shè)計(jì)過程中的掉電保護(hù)。

            1 掉電保護(hù)方案實(shí)現(xiàn)的系統(tǒng)基礎(chǔ)

            掉電保護(hù)是在由ARM體系的硬件平臺和μClinux嵌入式操作系統(tǒng)的基礎(chǔ)上實(shí)現(xiàn)的。

            ARM7系列的微處理器支持八種類型的中斷處理。外部中斷請求會在外部中斷引腳有效(一般是低電平),并且程序狀態(tài)寄存器相關(guān)位(即CPSR的I控制位)設(shè)置為允許時得到處理器響應(yīng)。響應(yīng)后處理器進(jìn)入中斷工作模式,PC被裝人中斷向量0x00000018。在這個地址單元存放中斷服務(wù)程序人口地址,中斷服務(wù)程序就可以被執(zhí)行。在掉電保護(hù)方案中,中斷服務(wù)程序很簡單,就是將表示掉電的全局變量置位即可。這樣可以縮短程序執(zhí)行時間。

            Flash存儲器是一種可在系統(tǒng)(in system)進(jìn)行電擦寫,電后信息不丟失的存儲器。它具有低功耗、大容量、可整片或分扇區(qū)在系統(tǒng)編程(燒寫)、擦除等特點(diǎn),并且可由內(nèi)部嵌入的算法完成對芯片的操作,因而在各種中得到了廣泛的應(yīng)用。作為一種非易失性存儲器。Flash在系統(tǒng)中通常用于存放程序代碼、常量表以及一些在系統(tǒng)掉電后需要保存的用戶數(shù)據(jù)等。常用的Flash為8位或16位的數(shù)據(jù)寬度,編程電壓為單3.3V。與Flash存儲器相比較,SDRAM不具有掉電保持?jǐn)?shù)據(jù)的特性,但其存取速度大大高于Flash存儲器,且具有讀/寫的屬性,因此,SDRAM在系統(tǒng)中主要用作程序的運(yùn)行空間、數(shù)據(jù)及堆棧區(qū)。當(dāng)系統(tǒng)啟動時,CPU首先從復(fù)位地址0x0處讀取啟動代碼,在完成系統(tǒng)的初始化后,程序代碼一般應(yīng)調(diào)入SDRAM中運(yùn)行,以提高系統(tǒng)的運(yùn)行速度,同時,系統(tǒng)及用戶堆棧、運(yùn)行數(shù)據(jù)也都放在SDRAM中。SDRAM的存儲單元可以理解為一個電容,總是傾向于放電,為避免數(shù)據(jù)丟失,必須定時刷新(充電)。因此,要在系統(tǒng)中使用SDRAM,就要求微處理器具有刷新控制邏輯,或在系統(tǒng)中另外加入刷新控制邏輯電路,特別的情況是在系統(tǒng)失電后,要采取一種有效的機(jī)制確保將sDRAM中的數(shù)據(jù)寫入F1ash中。

          2 基于掉電保護(hù)方案的硬件設(shè)計(jì)

            圖1是一種典型的嵌入式系統(tǒng)硬件設(shè)計(jì)方案。系統(tǒng)的微處理器采用S3c4510B,是基于ARM7體系結(jié)構(gòu)的。SDRAM是一種易失性存儲器作為程序的運(yùn)行空間,類似于PC機(jī)的內(nèi)存;Flash作為程序存儲空間是非易失性的。程序運(yùn)行過程中的數(shù)據(jù)往往緩存在sDRAM中,在系統(tǒng)失電時必須寫往Flash。

            

          掉電保護(hù)在嵌入式系統(tǒng)中的設(shè)計(jì)應(yīng)用


          上一頁 1 2 下一頁

          關(guān)鍵詞: 掉電保護(hù) 嵌入式系統(tǒng)

          評論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁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); })();