在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

            EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > ARM Cortex-M3的SRAM單元故障軟件的自檢測研究

            ARM Cortex-M3的SRAM單元故障軟件的自檢測研究

            作者: 時(shí)間:2013-10-26 來源:網(wǎng)絡(luò) 收藏

              引言

              目前,對于存儲單元SRAM的研究都是基于硬件電路來完成,而且這些方法都是運(yùn)用在生產(chǎn)過程中,但是生產(chǎn)過程并不能完全杜絕SRAM的硬件故障。在其使用過程中,如果SRAM硬件出錯(cuò),將導(dǎo)致程序出錯(cuò)而且很難被發(fā)現(xiàn)。因此在運(yùn)用的階段,為防止存儲單元損壞而導(dǎo)致系統(tǒng)出錯(cuò),通過軟件的方式對SRAM進(jìn)行檢測是必要的。

              1 SRAM運(yùn)行狀態(tài)分析

              SRAM是存儲非CONSTANT變量(如RW),它具有掉電即失的特點(diǎn)。由Cortex—M3的啟動步驟可知,系統(tǒng)上電后,首先執(zhí)行復(fù)位的5個(gè)步驟:

             ?、貼VIC復(fù)位,控制內(nèi)核;

             ?、贜VIC從復(fù)位中釋放內(nèi)核;

             ?、蹆?nèi)核配置堆棧;

             ?、軆?nèi)核設(shè)置PC和LR;

             ?、葸\(yùn)行復(fù)位程序。

              可以看出,不能在調(diào)入C環(huán)境之后檢測SRAM,必須在Cortex—M3復(fù)位之前和啟動之后進(jìn)行檢測。

              在執(zhí)行系統(tǒng)復(fù)位的最后一個(gè)步驟之前,系統(tǒng)都沒有對SRAM執(zhí)行任何相關(guān)的數(shù)據(jù)傳送動作。第⑤步運(yùn)行復(fù)位程序,在ST公司處理器內(nèi)核的STM32系列微控制器的啟動代碼中有一段復(fù)位子程序:
            ARM Cortex-M3的SRAM單元故障軟件的自檢測研究
            在這個(gè)子程序里導(dǎo)入了__main,__main是C庫文件的入口地址。它執(zhí)行下面3個(gè)步驟:

             ?、購?fù)制非root(RW、RO)從Flash到SRAM;

             ?、诜峙鋃I區(qū),并且初始化為0;

             ?、厶D(zhuǎn)到堆棧初始化子程序接口__rt_entry。

              由__main的第一步可以得出,在跳入__main之后,系統(tǒng)對SRAM進(jìn)行了相關(guān)數(shù)據(jù)轉(zhuǎn)移的操作。因此,檢測SRAM必須在此步驟之前,否則將會覆蓋SRAM從Flash中轉(zhuǎn)移過來的數(shù)據(jù)。

              2 SRAM檢測方案設(shè)計(jì)

              在復(fù)位子程序跳入__main之前,設(shè)計(jì)另一個(gè)程序入口SRAM_Check,使PC指針指向該SRAM進(jìn)行硬件單元檢測程序(SRAM_Check)的入口。在SRAM_check里,首先將PC指針指向SRAM的首地址并寫入0xFF,讀回該地址的值到通用寄存器Rn1,并對Rn1里的值進(jìn)行加1操作,然后將Rn1和256做比較,得出SRAM硬件是否損壞。這種操作可以避免因SRAM硬件一直為1或0而出現(xiàn)算法本身錯(cuò)誤。由于Cortex—M3復(fù)位后默認(rèn)的時(shí)鐘為HSI,是一個(gè)內(nèi)部RC振蕩器,因此精度不高。如果需要更準(zhǔn)和快速的時(shí)鐘,就必須在跳入SRAM_Check之前對相關(guān)的寄存器進(jìn)行操作。


            上一頁 1 2 下一頁

            關(guān)鍵詞: ARM Cortex-M3 SRAM單元 故障軟件

            評論


            相關(guān)推薦

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

            關(guān)閉