色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

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

一種C2000系列芯片的RAM在線診斷實現(xiàn)方法

星星科技指導(dǎo)員 ? 來源:TI ? 作者:TI ? 2023-03-23 10:32 ? 次閱讀

隨著越來越多的工業(yè)應(yīng)用對產(chǎn)品的可靠性和安全性要求越來越高,我們在做產(chǎn)品設(shè)計的時候不僅要正確的實現(xiàn)產(chǎn)品功能,同時也需要通過一些功能安全認證,比如家電行業(yè)的IEC60730等或者ISO13849等。一般的系統(tǒng)故障可以通過設(shè)計的迭代和嚴(yán)格測試來避免,但是硬件的隨機失效理論上是無法完全消除的,所以要想提高硬件隨機失效的診斷覆蓋率,就需要軟硬件診斷機制來保障。

作為系統(tǒng)的核心控制部分,MCU主平臺的診斷機制就是最關(guān)鍵的部分。針對一般通用的MCU,以Piccolo C2000系列為例,硬件上提供了一些診斷或者校驗機制。

同時TI也提供了一些軟件診斷方案,如MSP430 IEC60730 Software Package和C2000 SafeTI 60730 SW Packages軟件庫等,可以提供很多的診斷測試功能,例如CPU時鐘、外設(shè)、RAM等的診斷,已經(jīng)可以滿足一部分的需求。如下圖所示為C2000 SafeTI 60730 SW Packages中的功能和資源消耗。

然而在實際的應(yīng)用中,有些安全標(biāo)準(zhǔn)要求對RAM進行周期性的在線診斷,同時不能影響程序的正常運行。但是程序在運行過程中存儲在RAM中的數(shù)據(jù)會實時的變化,而RAM的診斷往往會破壞這些存儲的數(shù)據(jù),比如電機控制類的實時性要求較高的場合。所以在沒有ECC的情況下,如何對RAM進行實時在線的診斷是一個值得討論的問題。

poYBAGQbulGATu0oAAKtsU8a1cY161.png

下面以電機控制為例,討論硬件校驗的實現(xiàn),尤其是RAM在線檢測的過程。

1. 系統(tǒng)軟件流程

非破壞性的診斷可以放在背景循環(huán)里面進行,這些軟件診斷不會對實時性中斷造成影響,例如看門狗測試,內(nèi)部晶振測試,F(xiàn)LASH CRC校驗,靜態(tài)變量RAM CRC校驗,堆棧溢出判斷,以及GPIO口診斷等。另外一些破壞性的或者對實時控制有影響的診斷,可以放到主中斷中進行,如RAM March校驗,ALU診斷以及CPU寄存器診斷等。具體流程圖如下所示:

pYYBAGQbulGADlm0AAC7xhJr73U079.png

2. RAM診斷的方法

以C2000 SafeTI 60730 SW Packages為例,主要提供了兩種RAM檢測方式。

一種是CRC檢測STL_CRC_TEST_testRam,此功能用于測試RAM的位錯誤。該測試以0和1的交替模式填充被測RAM區(qū)域,并使用PSA計算RAM的CRC。對于給定的RAM存儲器區(qū)域,如果RAM存儲器中沒有任何stuck bit,則CRC值應(yīng)始終相同。并行串行分析器(PSA)是c28x器件中的一個模塊,可用于生成40位給定存儲區(qū)域上的CRC。 PSA多項式為Y = x40 + x21 + x19 + x2 + 1。PSA通過監(jiān)視數(shù)據(jù)讀取數(shù)據(jù)總線(DRDB)來計算CRC值。 一旦激活就會監(jiān)控Data Read Data Bus (DRDB),當(dāng)CPU通過DRDB讀取數(shù)據(jù)時,PSA每個時鐘周期會為DRDB上的數(shù)據(jù)生成一個CRC。由于此測試具有破壞性,因此需要將要測試的RAM內(nèi)容保存到單獨的RAM位置。

poYBAGQbulGAc8sdAACVuv_rh3k678.png

當(dāng)然也可以使用軟件CRC的方式,使用起來更靈活,并且可以選擇非破壞性的方式來計算CRC,對一些靜態(tài)常量存儲的區(qū)域可以考慮這種CRC方式。另外一點是軟件CRC算法可以更方便的進行代碼評估,以滿足不同安全標(biāo)準(zhǔn)的要求。

另一種是MARCH檢測STL_MARCH_TEST_testRam,此功能直接對RAM進行32bit的讀寫測試,可以選擇進行MarchC 13N或者MarchC-測試。由于此測試具有破壞性,因此也需要將要測試的RAM內(nèi)容保存到單獨的RAM位置。

pYYBAGQbulKAT73OAACUzrHQ3Go604.png

3. RAM在線檢測的實現(xiàn)

由于需要周期性的RAM檢測,以電機控制為例,可以將RAM檢測放到主中斷里面執(zhí)行。同時關(guān)鍵是不能影響控制程序的運行和實時性,所以主要考慮兩點:

第一是主中斷時間有限,要盡可能減小RAM檢測的時間,所以可以將RAM分成多個小段進行檢測,每段RAM越小,占用中斷的時間越小,但是所有RAM檢測一遍的時間會變長,這個需要綜合考慮。

第二是不能破壞RAM中的變量值,所以在檢測是之前將RAM段中的內(nèi)容保存到專門區(qū)域,戴檢測完成并且通過之后,再將保存好的數(shù)據(jù)恢復(fù)過來,使用memCopy來提高效率。

具體實現(xiàn)方法如下:

首先定義好各個RAM區(qū)間的地址范圍,可以參考具體的數(shù)據(jù)手冊,如下所示:

poYBAGQbulKAWmvUAAE0l6_nqmM146.png

然后定義好檢測的范圍和每次檢測的數(shù)據(jù)長度:

pYYBAGQbulOAB9etAAA0Xf8wx2U465.png

注意由于STL_MARCH_TEST_testRam函數(shù)執(zhí)行32位讀/寫測試,而在測試RAM單元陣列時,由于RAM單元的16位體系結(jié)構(gòu),所以要求起始地址為偶數(shù),結(jié)束地址為奇數(shù),可以測試的最大內(nèi)存范圍限制為65535個32位字。所以要求測試長度也需要為奇數(shù)。

在主中斷里面的RAM在線檢測函數(shù)里,首先將要檢測區(qū)域的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++;

}

注意檢測成功之后馬上恢復(fù)當(dāng)前區(qū)域的RAM值,并為下一次檢測做好準(zhǔn)備。如果檢測發(fā)現(xiàn)故障,則進入故障處理函數(shù)。

審核編輯:郭婷

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

    關(guān)注

    146

    文章

    17272

    瀏覽量

    352097
  • cpu
    cpu
    +關(guān)注

    關(guān)注

    68

    文章

    10898

    瀏覽量

    212536
  • RAM
    RAM
    +關(guān)注

    關(guān)注

    8

    文章

    1369

    瀏覽量

    114851
收藏 人收藏

    評論

    相關(guān)推薦

    C2000系列芯片RAM在線診斷方法有哪些?

    一種C2000系列芯片RAM在線診斷
    發(fā)表于 11-24 06:08

    基于C2000系列芯片RAM在線診斷實現(xiàn)方法

    就是最關(guān)鍵的部分。針對般通用的MCU,以Piccolo C2000系列為例,硬件上提供了診斷或者校驗機制,如下所示:同時TI也提供了
    發(fā)表于 11-08 07:12

    C2000如何給個連續(xù)的RAM區(qū)間賦初值

    某些變量賦值而導(dǎo)致程序運行異常。解決很多不了解C2000匯編指令用戶實現(xiàn)此功能的困擾。首先我們要了解C2000上電時的流程,下圖為C2000 上電時從
    發(fā)表于 11-08 06:11

    C2000 DSP實驗指導(dǎo)

    C2000 DSP實驗指導(dǎo) 1 概述1.1 TMS320LF2407A簡介TMS320LF2407A芯片作為是TI公司TMS320C2000系列中的
    發(fā)表于 04-07 11:07 ?23次下載

    C2000入門:C2000的基本知識介紹(1)

    C2000入門基礎(chǔ)()—C2000概述(上)
    的頭像 發(fā)表于 08-14 01:54 ?1.2w次閱讀

    C2000入門:C2000的復(fù)位系統(tǒng)介紹

    C2000入門基礎(chǔ)(三)—C2000的復(fù)位系統(tǒng)
    的頭像 發(fā)表于 08-06 00:55 ?5383次閱讀

    C2000系列芯片RAM在線診斷實現(xiàn)方法

    China Central FAE Sam Zhang 隨著越來越多的工業(yè)應(yīng)用對產(chǎn)品的可靠性和安全性要求越來越高,我們在做產(chǎn)品設(shè)計的時候不僅要正確的實現(xiàn)產(chǎn)品功能,同時也需要通過些功能安全認證,比如
    的頭像 發(fā)表于 10-20 17:09 ?562次閱讀

    淺述一種C2000系列芯片RAM在線診斷實現(xiàn)方法

    診斷機制來保障。 作為系統(tǒng)的核心控制部分,MCU主平臺的診斷機制就是最關(guān)鍵的部分。針對般通用的MCU,以Piccolo C2000系列
    的頭像 發(fā)表于 01-19 13:58 ?2076次閱讀
    淺述<b class='flag-5'>一種</b><b class='flag-5'>C2000</b><b class='flag-5'>系列</b><b class='flag-5'>芯片</b>的<b class='flag-5'>RAM</b><b class='flag-5'>在線</b><b class='flag-5'>診斷</b><b class='flag-5'>實現(xiàn)</b><b class='flag-5'>方法</b>

    一種C2000系列芯片RAM在線診斷實現(xiàn)方法

    一種C2000系列芯片RAM在線診斷
    發(fā)表于 10-31 08:23 ?1次下載
    <b class='flag-5'>一種</b><b class='flag-5'>C2000</b><b class='flag-5'>系列</b><b class='flag-5'>芯片</b>的<b class='flag-5'>RAM</b><b class='flag-5'>在線</b><b class='flag-5'>診斷</b><b class='flag-5'>實現(xiàn)</b><b class='flag-5'>方法</b>

    C2000芯片如何給個連續(xù)的RAM區(qū)間賦初值

    C2000芯片如何給個連續(xù)的RAM區(qū)間賦初值
    發(fā)表于 10-31 08:23 ?2次下載
    <b class='flag-5'>C2000</b><b class='flag-5'>芯片</b>如何給<b class='flag-5'>一</b>個連續(xù)的<b class='flag-5'>RAM</b>區(qū)間賦初值

    基于C2000的軟件串口(SCI)實現(xiàn)方法

    基于C2000的軟件串口(SCI)實現(xiàn)方法
    發(fā)表于 11-01 08:26 ?2次下載
    基于<b class='flag-5'>C2000</b>的軟件串口(SCI)<b class='flag-5'>實現(xiàn)</b><b class='flag-5'>方法</b>

    使用C2000內(nèi)部比較器替外部比較器

    C2000系列芯片在數(shù)字電源和電機控制中有著廣泛的應(yīng)用,在這些應(yīng)用中,過流過壓保護是必不可少的。傳統(tǒng)的方法是使用外部比較器,但是會存在濾波電路不好設(shè)計,不同版本需要不同的BOM來提供不
    的頭像 發(fā)表于 03-14 09:40 ?1605次閱讀
    使用<b class='flag-5'>C2000</b>內(nèi)部比較器替外部比較器

    C2000系列DSP移相功能缺陷的分析與解決方法()

      此前寫過篇文章,分析德州儀器C2000系列DSP移相同C2000系列DSP移相同步功能步功能的
    的頭像 發(fā)表于 03-20 15:44 ?3263次閱讀
    <b class='flag-5'>C2000</b><b class='flag-5'>系列</b>DSP移相功能缺陷的分析與解決<b class='flag-5'>方法</b>(<b class='flag-5'>一</b>)

    使用C2000內(nèi)部比較器替外部比較器

    C2000系列芯片在數(shù)字電源和電機控制中有著廣泛的應(yīng)用,在這些應(yīng)用中,過流過壓保護是必不可少的。傳統(tǒng)的方法是使用外部比較器,但是會存在濾波電路不好設(shè)計,不同版本需要不同的BOM來提供不
    的頭像 發(fā)表于 03-27 09:37 ?832次閱讀
    使用<b class='flag-5'>C2000</b>內(nèi)部比較器替外部比較器

    使用C2000內(nèi)部比較器替外部比較器

    C2000系列芯片在數(shù)字電源和電機控制中有著廣泛的應(yīng)用,在這些應(yīng)用中,過流過壓保護是必不可少的。傳統(tǒng)的方法是使用外部比較器,但是會存在濾波電路不好設(shè)計,不同版本需要不同的BOM來提供不
    的頭像 發(fā)表于 04-03 10:56 ?882次閱讀
    使用<b class='flag-5'>C2000</b>內(nèi)部比較器替外部比較器
    主站蜘蛛池模板: 男女啪啪抽搐呻吟高潮动态图| xxxxxx视频| 中文字幕久久久| 美女扒开腿让男生桶免费看动态图| 亚洲精品免费在线视频| 把腿张开JI巴CAO死你H教室| 色窝窝亚洲AV在线观看| 99国产在线视频有精品视频| 欧美性xxx18一20| 国产毛片AV久久久久精品| 一本道的mv中文字幕| 欧美精品九九99久久在观看| 国产午夜三级一区二区三 | 91国在线产| 色www精品视频在线观看| 九九热在线免费观看| 啊好大好厉害好爽真骚| 一边摸一边桶一边脱免费| 日本孕妇大胆孕交| 久久99精品视频| 国产AV天堂一区二区三区| 最近日本字幕免费高清 | 亚洲国产中文字幕在线视频综合 | 日日夜夜狠狠干| 久久国产露脸老熟女熟69| 成人区在线观看免费视频| 深夜草逼逼| 老司机福利视频一区在线播放 | 久久99精品国产99久久6男男| 大屁股妇女流出白浆| 中国大陆一级毛片免费| 羞羞影院男女爽爽影院尤物| 欧美一区二区三区男同| 久久精品天天爽夜夜爽| 国产精品日本不卡一区二区| 99在线观看免费视频| 亚洲无线码一区在线观看| 无人区日本电影在线观看| 青草精品国产福利在线视频| 老牛天天晚上夜噜噜噜| 极品少妇粉嫩小泬啪啪AV|