0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

SRAM運行狀態(tài)分析步驟詳解

電子設(shè)計 ? 來源:互聯(lián)網(wǎng) ? 作者:佚名 ? 2018-08-29 09:54 ? 次閱讀

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

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

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

①NVIC復(fù)位,控制內(nèi)核;

②NVIC從復(fù)位中釋放內(nèi)核;

③內(nèi)核配置堆棧;

④內(nèi)核設(shè)置PC和LR;

⑤運行復(fù)位程序。

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

在執(zhí)行系統(tǒng)復(fù)位的最后一個步驟之前,系統(tǒng)都沒有對SRAM執(zhí)行任何相關(guān)的數(shù)據(jù)傳送動作。第⑤步運行復(fù)位程序,在ST公司Cortex-M3處理器內(nèi)核的STM32系列微控制器的啟動代碼中有一段復(fù)位子程序:

在這個子程序里導(dǎo)入了__main,__main是C庫文件的入口地址。它執(zhí)行下面3個步驟:

①復(fù)制非root(RW、RO)從Flash到SRAM;

②分配ZI區(qū),并且初始化為0;

③跳轉(zhuǎn)到堆棧初始化子程序接口__rt_entry。

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

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

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

3 SRAM檢測軟件設(shè)計

圖1為本文設(shè)計的SRAM檢測軟件程序流程。

圖1 SRAM檢測軟件程序流程

4 在線調(diào)試結(jié)果及分析

上電復(fù)位后,在線調(diào)試PC指針指向Reset_Handler入口地址時的SRAM初始數(shù)值如圖2所示。可以看到,當(dāng)系統(tǒng)復(fù)位時每個SRAM單元的數(shù)值均為0x00。

在線調(diào)試下,圖3為對所有的SRAM地址進行檢測后SRAM的數(shù)值,完全符合程序設(shè)計要求。

SRAM測試通過后,釋放所有的SRAM,還原為0x00,如圖4所示。

5 結(jié)論

本文提出了一種基于軟件的SRAM單元故障自檢測方法,通過在線調(diào)試得到的結(jié)果,可知該方法是完全可行的。在實際運用中,該方法能夠確保系統(tǒng)正常地運行在可靠的環(huán)境之上。如果SRAM單元有生產(chǎn)或運輸?shù)葥p壞,也可以通過該方法方便地檢測出來,大大減少了系統(tǒng)排除故障的時間。


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • sram
    +關(guān)注

    關(guān)注

    6

    文章

    759

    瀏覽量

    114482
  • reset
    +關(guān)注

    關(guān)注

    0

    文章

    34

    瀏覽量

    12835
  • NVIC
    +關(guān)注

    關(guān)注

    0

    文章

    35

    瀏覽量

    11646
收藏 人收藏

    評論

    相關(guān)推薦

    運行狀況的計算和分析

    運行狀況的計算和分析
    發(fā)表于 04-10 21:37

    有什么方法可以查看FreeRTOS任務(wù)的運行狀態(tài)

    有什么方法可以查看FreeRTOS任務(wù)的運行狀態(tài)呢?怎樣去查看FreeRTOS任務(wù)的運行狀態(tài)呢?
    發(fā)表于 11-02 07:59

    水輪發(fā)電機組運行狀態(tài)監(jiān)測

    水電機組運行狀態(tài)監(jiān)洲是對設(shè)計參敷所屬參量的監(jiān)洲.其目的是便于運行人員j解機組的運行狀態(tài),及時發(fā)現(xiàn)事故隱患,保證安全經(jīng)濟運行.目前,國外發(fā)達國家在水電機組
    發(fā)表于 04-06 11:21 ?14次下載

    基于LabVIEW的橋梁運行狀態(tài)長期

    基于LabVIEW的橋梁運行狀態(tài)長期 論述鐵路橋梁運行狀態(tài)長期監(jiān)測系統(tǒng)的設(shè)計方法, 介紹它的硬件組成、軟件結(jié)構(gòu)以及系統(tǒng)功能,本系統(tǒng)利用網(wǎng)絡(luò)傳感器、以太網(wǎng)技術(shù)
    發(fā)表于 10-15 21:34 ?635次閱讀
    基于LabVIEW的橋梁<b class='flag-5'>運行狀態(tài)</b>長期

    感應(yīng)電動機不同斷相運行狀態(tài)的損耗分析

    感應(yīng)電動機不同斷相運行狀態(tài)的損耗分析_李文志
    發(fā)表于 01-01 15:44 ?0次下載

    基于MATLAB的開關(guān)磁阻電機混沌運行狀態(tài)分析

    基于MATLAB的開關(guān)磁阻電機混沌運行狀態(tài)分析
    發(fā)表于 01-21 12:12 ?0次下載

    如何解決風(fēng)電機組運行狀態(tài)及故障診斷中外界環(huán)境因素對出力情況的影響

    為了解決風(fēng)電機組運行狀態(tài)及故障診斷中外界環(huán)境因素對出力情況的影響,引入風(fēng)電機組出力相關(guān)性信息,對機組運行狀態(tài)進行判別。實現(xiàn)了在不增加傳感器和測點的情況下,提高判別機組非健康狀態(tài)或故障狀態(tài)
    發(fā)表于 04-28 14:57 ?15次下載
    如何解決風(fēng)電機組<b class='flag-5'>運行狀態(tài)</b>及故障診斷中外界環(huán)境因素對出力情況的影響

    電機額定運行狀態(tài)_電機額定運行方式

    在電機運行時,若各個物理量都與它的額定值一樣,就稱為額定運行狀態(tài),在額定運行狀態(tài)下工作,電機能可靠的運行,并具有最好的綜合性能。
    發(fā)表于 10-09 16:13 ?5817次閱讀

    聯(lián)合循環(huán)電廠機組運行狀態(tài)判據(jù)選取方法的探討

    探討了聯(lián)合循環(huán)電廠 DCS 組態(tài)中機組運行狀態(tài)判據(jù)的選擇方法,分析了不恰當(dāng)判據(jù)選擇對運行和維護的影響,并提出了解決方法。
    發(fā)表于 12-01 16:10 ?0次下載

    一文詳解單相變壓器空載運行狀態(tài)

    空載運行是變壓器的一種極限運行狀態(tài)。變壓器的空載運行是指原繞組接入電源電壓、副繞組開路,副繞組里沒有電流流過時的最簡單的運行情況。
    的頭像 發(fā)表于 01-16 13:54 ?8685次閱讀
    一文<b class='flag-5'>詳解</b>單相變壓器空載<b class='flag-5'>運行狀態(tài)</b>

    分析安全光柵的運行狀態(tài)

    分析安全光柵的運行狀態(tài)
    的頭像 發(fā)表于 07-14 10:31 ?770次閱讀
    <b class='flag-5'>分析</b>安全光柵的<b class='flag-5'>運行狀態(tài)</b>

    運行狀態(tài)變?yōu)樽枞?b class='flag-5'>狀態(tài)的條件

    計算機運行狀態(tài)變?yōu)樽枞?b class='flag-5'>狀態(tài)的條件,從常見的情況到特殊的案例,為讀者提供深入理解。 一、用戶輸入等待: 當(dāng)計算機程序需要等待用戶輸入時,它將進入阻塞狀態(tài)。這可能發(fā)生在命令行界面或圖形用戶界面中。例如,在一個接受
    的頭像 發(fā)表于 11-17 11:45 ?1288次閱讀

    電池充電狀態(tài)(SOC)和運行狀態(tài)(SOH)的估計技術(shù)

    電子發(fā)燒友網(wǎng)站提供《電池充電狀態(tài)(SOC)和運行狀態(tài)(SOH)的估計技術(shù).pdf》資料免費下載
    發(fā)表于 11-22 09:34 ?0次下載
    電池充電<b class='flag-5'>狀態(tài)</b>(SOC)和<b class='flag-5'>運行狀態(tài)</b>(SOH)的估計技術(shù)

    電池充電狀態(tài)(SOC)和運行狀態(tài)(SOH)估計技術(shù)

    電子發(fā)燒友網(wǎng)站提供《電池充電狀態(tài)(SOC)和運行狀態(tài)(SOH)估計技術(shù).pdf》資料免費下載
    發(fā)表于 11-24 11:04 ?2次下載
    電池充電<b class='flag-5'>狀態(tài)</b>(SOC)和<b class='flag-5'>運行狀態(tài)</b>(SOH)估計技術(shù)

    電梯運行狀態(tài)監(jiān)測系統(tǒng):關(guān)鍵信息監(jiān)測與安全高效運行新保障

    電梯運行狀態(tài)監(jiān)測系統(tǒng)是一個綜合性的技術(shù)系統(tǒng),用于實時監(jiān)測電梯的運行狀態(tài)并收集相關(guān)數(shù)據(jù)。梯云物聯(lián)小編認(rèn)為該系統(tǒng)主要監(jiān)測以下幾類信息:
    的頭像 發(fā)表于 04-17 10:14 ?758次閱讀
    電梯<b class='flag-5'>運行狀態(tài)</b>監(jiān)測系統(tǒng):關(guān)鍵信息監(jiān)測與安全高效<b class='flag-5'>運行</b>新保障