99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

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

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

MARCH 主要提供了哪兩種 RAM 檢測方式?

lhl545545 ? 來源:與非網(wǎng) ? 作者:佚名 ? 2020-08-28 14:44 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

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

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

MARCH 主要提供了哪兩種 RAM 檢測方式?

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

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

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

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

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

MARCH 主要提供了哪兩種 RAM 檢測方式?

2. RAM 診斷的方法

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

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

MARCH 主要提供了哪兩種 RAM 檢測方式?

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

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

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

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

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

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

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

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

MARCH 主要提供了哪兩種 RAM 檢測方式?

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

MARCH 主要提供了哪兩種 RAM 檢測方式?

注意由于 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);

}

然后進(jìn)行檢測:

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)故障,則進(jìn)入故障處理函數(shù)。
責(zé)任編輯:pj

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

    關(guān)注

    31

    文章

    5434

    瀏覽量

    124492
  • 存儲器
    +關(guān)注

    關(guān)注

    38

    文章

    7653

    瀏覽量

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

    關(guān)注

    8

    文章

    1392

    瀏覽量

    117526
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    兩種驅(qū)動方式下永磁直線開關(guān)磁鏈電機(jī)的研究

    摘要:永磁開關(guān)磁鏈電機(jī)數(shù)學(xué)模型可以等效為永磁無刷電機(jī),普遍采用方波驅(qū)動方式。在有限元基礎(chǔ)上分析6/7極直線式磁鏈電機(jī)反電勢波形,采用方波和正弦波驅(qū)動方式,比較兩種方式下的電流、電壓、平
    發(fā)表于 06-09 16:18

    solidworks正版軟件:永久版權(quán)和訂閱許可 兩種購買方式解析和選擇

    SOLIDWORKS軟件分從購買方式上劃分為永久版權(quán)的形式和訂閱即年付費(fèi)兩種方式,代理商碩迪科技向您詳細(xì)解析 SOLIDWORKS 的永久版權(quán)和訂閱許可的區(qū)別,各自的優(yōu)劣勢以及適合的應(yīng)用場景。以幫助您做出適合的決策。
    的頭像 發(fā)表于 12-16 16:45 ?1621次閱讀
    solidworks正版軟件:永久版權(quán)和訂閱許可 <b class='flag-5'>兩種</b>購買<b class='flag-5'>方式</b>解析和選擇

    常見人體姿態(tài)評估顯示方式兩種方式

    人體姿態(tài)評估中有兩種常見的顯示方式,分別是火柴人效果與BodyPix效果。其中火柴人效果本質(zhì)就是基于關(guān)鍵點(diǎn)的深度學(xué)習(xí)模型推理以后的顯示效果;Bodypix本質(zhì)就就是語義分割模型
    的頭像 發(fā)表于 11-11 11:21 ?660次閱讀
    常見人體姿態(tài)評估顯示<b class='flag-5'>方式</b>的<b class='flag-5'>兩種</b><b class='flag-5'>方式</b>

    噪聲傳導(dǎo)的兩種模式

    噪聲傳導(dǎo)有兩種模式,一為差模傳導(dǎo),一為共模傳導(dǎo)。
    的頭像 發(fā)表于 10-15 11:33 ?775次閱讀
    噪聲傳導(dǎo)的<b class='flag-5'>兩種</b>模式

    感光器件有兩種

    ,但目前在數(shù)碼相機(jī)及類似設(shè)備中,最為常見和核心的感光器件主要兩種:CCD(電荷耦合器件)和CMOS(互補(bǔ)金屬氧化物半導(dǎo)體)。 一、CCD(電荷耦合器件) 1. 基本原理 CCD(Charge Coupled Device)的中文名稱是“電荷耦合器件圖像傳感器”。它能把光
    的頭像 發(fā)表于 10-12 14:50 ?1640次閱讀

    什么是電流保護(hù)的接線方式?有兩種接線方式?

    方式。下面將對這兩種接線方式進(jìn)行介紹。 一、完全星形接線方式 完全星形接線方式,也稱為三相三繼電器接線
    的頭像 發(fā)表于 10-06 17:37 ?5280次閱讀
    什么是電流保護(hù)的接線<b class='flag-5'>方式</b>?有<b class='flag-5'>哪</b><b class='flag-5'>兩種</b>接線<b class='flag-5'>方式</b>?

    Linux應(yīng)用層控制外設(shè)的兩種不同的方式

    眾所周知,linux下一切皆文件,那么應(yīng)用層如何控制硬件層,同樣是通過 文件I/O的方式來實(shí)現(xiàn)的,那么應(yīng)用層控制硬件層通常有兩種方式
    的頭像 發(fā)表于 10-05 19:03 ?1345次閱讀
    Linux應(yīng)用層控制外設(shè)的<b class='flag-5'>兩種</b>不同的<b class='flag-5'>方式</b>

    兩種常見的硬件消抖實(shí)現(xiàn)方式

    由于機(jī)械按鍵在操作過程中會產(chǎn)生抖動現(xiàn)象,這種抖動信號如果不加以處理,就可能導(dǎo)致單片機(jī)等電子設(shè)備誤判按鍵狀態(tài),從而引發(fā)錯誤操作。本文將詳細(xì)介紹兩種常見的硬件消抖實(shí)現(xiàn)方式:RS觸發(fā)器和電容濾波。 RS
    的頭像 發(fā)表于 09-25 16:54 ?3735次閱讀
    <b class='flag-5'>兩種</b>常見的硬件消抖實(shí)現(xiàn)<b class='flag-5'>方式</b>

    放大電路的基本分析方法有兩種

    放大電路是電子學(xué)中的基礎(chǔ)組成部分,用于增強(qiáng)信號的幅度而不改變其基本特性。在電子工程中,放大電路的設(shè)計(jì)和分析是至關(guān)重要的。放大電路的基本分析方法主要兩種:直流分析和交流分析。 直流分析 直流分析
    的頭像 發(fā)表于 09-23 10:40 ?1204次閱讀

    晶閘管的阻斷狀態(tài)有兩種是什么

    晶閘管(Thyristor)是一半導(dǎo)體器件,具有單向?qū)щ娦?,廣泛應(yīng)用于電力電子領(lǐng)域。晶閘管的阻斷狀態(tài)有兩種:正向阻斷狀態(tài)和反向阻斷狀態(tài)。以下是對這兩種阻斷狀態(tài)的分析。 正向阻斷狀態(tài) 正向阻斷狀態(tài)
    的頭像 發(fā)表于 08-14 16:49 ?1415次閱讀

    邊沿觸發(fā)器主要兩種類型

    邊沿觸發(fā)器是一數(shù)字電路元件,它在數(shù)字邏輯設(shè)計(jì)中扮演著重要的角色。邊沿觸發(fā)器主要兩種類型:上升沿觸發(fā)器和下降沿觸發(fā)器。這兩種觸發(fā)器的主要區(qū)
    的頭像 發(fā)表于 08-09 17:44 ?2180次閱讀

    示波器兩種衰減方式的區(qū)別是什么

    兩種:內(nèi)部衰減和外部衰減。 內(nèi)部衰減 內(nèi)部衰減是指示波器內(nèi)部對輸入信號進(jìn)行衰減的方式。內(nèi)部衰減器通常由電阻和電容組成,通過改變電阻和電容的參數(shù),實(shí)現(xiàn)對輸入信號的衰減。內(nèi)部衰減器的優(yōu)點(diǎn)如下: 1.1 精度高:內(nèi)部衰減
    的頭像 發(fā)表于 08-09 14:41 ?1048次閱讀

    接地保護(hù)分為兩種方式

    接地保護(hù)是電氣工程中非常重要的一安全措施,其目的是確保電氣設(shè)備和系統(tǒng)在發(fā)生故障時能夠安全地將電流導(dǎo)向地面,從而保護(hù)人身安全和設(shè)備安全。接地保護(hù)主要分為兩種方式:工作接地和保護(hù)接地。以
    的頭像 發(fā)表于 08-05 10:24 ?2326次閱讀

    plc與傳感器的兩種連接方式

    在工業(yè)自動化領(lǐng)域,PLC(可編程邏輯控制器)與傳感器的連接是實(shí)現(xiàn)自動化控制的關(guān)鍵環(huán)節(jié)。本文將詳細(xì)介紹PLC與傳感器的兩種主要連接方式:模擬量連接和數(shù)字量連接。這兩種連接
    的頭像 發(fā)表于 07-25 09:36 ?2775次閱讀

    wdm設(shè)備的兩種傳輸方式

    系統(tǒng)中,有多種傳輸方式,其中最常見的兩種是密集波分復(fù)用(DWDM)和粗波分復(fù)用(CWDM)。 1. 密集波分復(fù)用(DWDM) 1.1 DWDM技術(shù)原理 密集波分復(fù)用(Dense Wavelength Division Multiplexing,簡稱DWDM)是一
    的頭像 發(fā)表于 07-18 09:45 ?937次閱讀