久久午夜影院,91精品国产调教在线观看,日韩午夜免费,伊人久久大香线蕉av不卡

你的位置:首頁 > 互連技術 > 正文

一種C2000系列芯片的RAM在線診斷實現方法

發布時間:2020-05-15 來源:China Central FAE Sam Zhang 責任編輯:wenwei

【導讀】隨著越來越多的工業應用對產品的可靠性和安全性要求越來越高,我們在做產品設計的時候不僅要正確的實現產品功能,同時也需要通過一些功能安全認證,比如家電行業的IEC60730等或者ISO13849等。一般的系統故障可以通過設計的迭代和嚴格測試來避免,但是硬件的隨機失效理論上是無法完全消除的,所以要想提高硬件隨機失效的診斷覆蓋率,就需要軟硬件診斷機制來保障。
 
作為系統的核心控制部分,MCU主平臺的診斷機制就是最關鍵的部分。針對一般通用的MCU,以Piccolo C2000系列為例,硬件上提供了一些診斷或者校驗機制,如下所示:
 
一種C2000系列芯片的RAM在線診斷實現方法
 
同時TI也提供了一些軟件診斷方案,如MSP430 IEC60730 Software Package和C2000 SafeTI 60730 SW Packages軟件庫等,可以提供很多的診斷測試功能,例如CPU、時鐘、外設、RAM等的診斷,已經可以滿足一部分的需求。如下圖所示為C2000 SafeTI 60730 SW Packages中的功能和資源消耗。
 
然而在實際的應用中,有些安全標準要求對RAM進行周期性的在線診斷,同時不能影響程序的正常運行。但是程序在運行過程中存儲在RAM中的數據會實時的變化,而RAM的診斷往往會破壞這些存儲的數據,比如電機控制類的實時性要求較高的場合。所以在沒有ECC的情況下,如何對RAM進行實時在線的診斷是一個值得討論的問題。
 
一種C2000系列芯片的RAM在線診斷實現方法
 
下面以電機控制為例,討論硬件校驗的實現,尤其是RAM在線檢測的過程。
 
1. 系統軟件流程
 
非破壞性的診斷可以放在背景循環里面進行,這些軟件診斷不會對實時性中斷造成影響,例如看門狗測試,內部晶振測試,FLASH CRC校驗,靜態變量RAM CRC校驗,堆棧溢出判斷,以及GPIO口診斷等。另外一些破壞性的或者對實時控制有影響的診斷,可以放到主中斷中進行,如RAM March校驗,ALU診斷以及CPU寄存器診斷等。具體流程圖如下所示:
 
一種C2000系列芯片的RAM在線診斷實現方法
 
2. RAM診斷的方法
 
以C2000 SafeTI 60730 SW Packages為例,主要提供了兩種RAM檢測方式。
 
一種是CRC檢測STL_CRC_TEST_testRam,此功能用于測試RAM的位錯誤。該測試以0和1的交替模式填充被測RAM區域,并使用PSA計算RAM的CRC。對于給定的RAM存儲器區域,如果RAM存儲器中沒有任何stuck bit,則CRC值應始終相同。并行串行分析器(PSA)是c28x器件中的一個模塊,可用于生成40位給定存儲區域上的CRC。 PSA多項式為Y = x40 + x21 + x19 + x2 + 1。PSA通過監視數據讀取數據總線(DRDB)來計算CRC值。 一旦激活就會監控Data Read Data Bus (DRDB),當CPU通過DRDB讀取數據時,PSA每個時鐘周期會為DRDB上的數據生成一個CRC。由于此測試具有破壞性,因此需要將要測試的RAM內容保存到單獨的RAM位置。
 
一種C2000系列芯片的RAM在線診斷實現方法
 
當然也可以使用軟件CRC的方式,使用起來更靈活,并且可以選擇非破壞性的方式來計算CRC,對一些靜態常量存儲的區域可以考慮這種CRC方式。另外一點是軟件CRC算法可以更方便的進行代碼評估,以滿足不同安全標準的要求。
 
另一種是MARCH檢測STL_MARCH_TEST_testRam,此功能直接對RAM進行32bit的讀寫測試,可以選擇進行MarchC 13N或者MarchC-測試。由于此測試具有破壞性,因此也需要將要測試的RAM內容保存到單獨的RAM位置。
 
一種C2000系列芯片的RAM在線診斷實現方法
 
3. RAM在線檢測的實現
 
由于需要周期性的RAM檢測,以電機控制為例,可以將RAM檢測放到主中斷里面執行。同時關鍵是不能影響控制程序的運行和實時性,所以主要考慮兩點:
 
第一是主中斷時間有限,要盡可能減小RAM檢測的時間,所以可以將RAM分成多個小段進行檢測,每段RAM越小,占用中斷的時間越小,但是所有RAM檢測一遍的時間會變長,這個需要綜合考慮。
 
第二是不能破壞RAM中的變量值,所以在檢測是之前將RAM段中的內容保存到專門區域,戴檢測完成并且通過之后,再將保存好的數據恢復過來,使用memCopy來提高效率。
 
具體實現方法如下:
 
首先定義好各個RAM區間的地址范圍,可以參考具體的數據手冊,如下所示:
 
一種C2000系列芯片的RAM在線診斷實現方法
 
然后定義好檢測的范圍和每次檢測的數據長度:
 
一種C2000系列芯片的RAM在線診斷實現方法
 
注意由于STL_MARCH_TEST_testRam函數執行32位讀/寫測試,而在測試RAM單元陣列時,由于RAM單元的16位體系結構,所以要求起始地址為偶數,結束地址為奇數,可以測試的最大內存范圍限制為65535個32位字。所以要求測試長度也需要為奇數。
 
在主中斷里面的RAM在線檢測函數里,首先將要檢測區域的RAM值保存下來:
 
if ((gStructSTLMonitor.NowRamAddrStart >= MARCH_RAM_START)
 
       && (gStructSTLMonitor.NowRamAddrStart <= (MARCH_RAM_END-RAM_CHK_NUM)))
 
{
 
gStructSTLMonitor.NowRamAddrEnd = gStructSTLMonitor.NowRamAddrStart + RAM_CHK_NUM;
 
memCopy((uint16_t *)gStructSTLMonitor.NowRamAddrStart,(uint16_t *)
 
         gStructSTLMonitor.NowRamAddrEnd,(uint16_t *)MARCH_RAM_BK);
 
}
 
然后進行檢測:
 
gStructSTLMonitor.status = STL_MARCH_TEST_testRam((uint32_t *)
 
   gStructSTLMonitor.NowRamAddrStart,(uint32_t *)gStructSTLMonitor.NowRamAddrEnd);
 
if(gStructSTLMonitor.status != SIG_RAM_MARCH_TEST)
 
{
 
STL_SetFail();
 
}
 
else
 
{
 
memCopy((uint16_t *)MARCH_RAM_BK,(uint16_t *)(MARCH_RAM_BK + RAM_CHK_NUM),
 
(uint16_t *)gStructSTLMonitor.NowRamAddrStart);
 
gStructSTLMonitor.NowRamAddrStart = gStructSTLMonitor.NowRamAddrEnd + 1;
 
gStructSTLMonitor.gTestStep++;
 
}
 
注意檢測成功之后馬上恢復當前區域的RAM值,并為下一次檢測做好準備。如果檢測發現故障,則進入故障處理函數。
 
參考文檔:
 
1. IEC60730 Safety Library for TMS320F2806x USER’S GUIDE
2. Safety Manual for C2000™ MCUs in IEC60730 Safety Applications (SPRUHI3A)
 
 
推薦閱讀:
 
專業音頻應用中生成負電源軌的方案
工程師福利!Digi-Key聯手柴火x.factory在中國社區推廣Arduino基礎認證考試
無線水質監測系統
穩定可靠和高能效的工業驅動方案
通過驅動器源極引腳將開關損耗降低約35%
要采購晶振么,點這里了解一下價格!
特別推薦
技術文章更多>>
技術白皮書下載更多>>
熱門搜索

關閉

?

關閉

久久午夜影院,91精品国产调教在线观看,日韩午夜免费,伊人久久大香线蕉av不卡
日韩激情一区| 日韩一区二区免费看| 精品一区av| 国产日韩高清一区二区三区在线 | 喷白浆一区二区| 乱人伦精品视频在线观看| 亚洲综合日本| 亚洲三级视频| 国产精品午夜av| 红杏一区二区三区| 91亚洲自偷观看高清| 欧美aa在线观看| 婷婷激情综合| 日韩国产欧美三级| 日韩av午夜在线观看| 视频一区中文字幕精品| 国产欧美久久一区二区三区| 欧美日韩a区| 国产毛片一区二区三区| 麻豆中文一区二区| 成人污污视频| 国产精品av久久久久久麻豆网| 免费不卡中文字幕在线| 成人一区不卡| 久久久国产精品网站| 久久精品免费看| 国产综合婷婷| 少妇精品在线| 国产精久久一区二区| 91福利精品在线观看| 欧美经典一区| 久久国产电影| 深夜福利一区| 在线亚洲人成| 午夜久久av| 日韩电影在线视频| 香蕉成人久久| 国产精品流白浆在线观看| av中文资源在线资源免费观看| 免费精品国产| 久久精品国产成人一区二区三区| 视频小说一区二区| 日韩一区二区三区精品| av资源亚洲| 综合国产在线| 国产精品毛片久久| 少妇精品久久久| 精品三级久久| 久久超级碰碰| 亚洲69av| 日韩视频免费| 精品国产aⅴ| 日韩av网站免费在线| 午夜久久影院| 国产不卡人人| 国产精品黄色| 亚洲精品第一| 亚洲激情欧美| 久久精品中文| 欧美日韩一视频区二区| 香蕉久久夜色精品国产| 欧美福利在线| 91精品蜜臀一区二区三区在线| 久久精品国内一区二区三区| 日韩在线观看中文字幕| 亚洲精品1区2区| 日韩电影二区| 欧美成a人免费观看久久| 精品国产欧美日韩一区二区三区| 日韩精品视频中文字幕| 午夜亚洲精品| 丝袜a∨在线一区二区三区不卡| 久久国产中文字幕| 激情综合网五月| 日韩毛片在线| 欧美不卡高清一区二区三区| 国产一区二区三区久久久久久久久| 欧美日一区二区三区在线观看国产免 | 一区二区高清| 日本在线视频一区二区| 亚洲精品影院在线观看| 日韩免费精品| 国产亚洲电影| 精品国产亚洲一区二区在线观看| 精品国产欧美日韩一区二区三区| 国产一区福利| 国产综合欧美| 宅男在线一区| 日韩在线麻豆| 欧美aⅴ一区二区三区视频| 高清在线一区| 欧美jjzz| 日本免费新一区视频| 美女久久久精品| 久久免费国产| 日韩欧乱色一区二区三区在线| 国产精品一区毛片| 日韩在线二区| 蜜臀a∨国产成人精品| 久久国内精品| 日韩精品免费一区二区三区| 免费高清在线一区| 7m精品国产导航在线| 深夜福利视频一区二区| 日韩精品一二区| 国产精品欧美在线观看| 婷婷亚洲五月| 精品五月天堂| 亚洲精品看片| 在线精品视频在线观看高清| 91亚洲无吗| 99pao成人国产永久免费视频 | 亚洲免费福利| 国产亚洲精品美女久久久久久久久久| yellow在线观看网址| 天堂精品久久久久| 久久高清免费| 成人在线免费观看91| 涩涩涩久久久成人精品| 欧美网站在线| 日韩免费小视频| 麻豆精品一区二区综合av| 亚洲制服欧美另类| 久久福利精品| 欧美日韩四区| 欧美午夜不卡影院在线观看完整版免费| 精品一区二区三区中文字幕视频| 日韩高清欧美激情| 四虎精品永久免费| 丝袜美腿一区二区三区| 丁香六月综合| 精品不卡一区| 成人亚洲一区| 四虎8848精品成人免费网站| 国产毛片精品久久| 久久国内精品| 清纯唯美亚洲综合一区| 日韩精品一区二区三区免费视频| 模特精品在线| 热久久久久久久| 亚洲精品黄色| 国产亚洲一卡2卡3卡4卡新区| 日韩成人午夜精品| 青青草精品视频| 日本视频一区二区| 国产精品久久久一区二区| 伊人国产精品| 久久国际精品| 精品国产91| 欧美aa一级| 中文在线不卡| 欧美日一区二区三区在线观看国产免 | 99视频在线精品国自产拍免费观看| 91精品电影| 午夜久久av| 国产精品白丝av嫩草影院| 麻豆精品少妇| 成人三级高清视频在线看| 亚洲无线一线二线三线区别av| 一区二区自拍| 日韩欧美中文在线观看| 你懂的网址国产 欧美| 91精品一区二区三区综合在线爱| 亚洲欧美日韩高清在线| 日韩二区三区在线观看| 久久精品1区| 国产精品一区二区精品视频观看 | 欧美日韩精品免费观看视频完整| 91亚洲精品视频在线观看 | 精品久久久久中文字幕小说| 亚洲欧美日韩视频二区| 国产精品久久久久久久久妇女| 蜜臀av一区二区在线免费观看| 日韩在线观看| 麻豆成人在线观看| 亚洲专区视频| 欧美性感美女一区二区| 国产精品巨作av| 国产亚洲毛片| 国产aⅴ精品一区二区四区| 亚洲精品无吗| 日本成人一区二区| 久久三级福利| 91亚洲国产高清| 日本不卡高清| 国产综合色产| 在线视频观看日韩| 国产欧美一区二区精品久久久| 日韩国产网站| 久久国产视频网| 免费观看久久av| 久久免费精品| 日韩一区二区三区免费视频| 98精品久久久久久久| 中文字幕一区二区三区四区久久 | 久久亚洲一区| 亚洲va中文在线播放免费| 亚洲制服一区| 国语对白精品一区二区| 日韩激情av在线|