91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

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

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

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

在運(yùn)行時檢測SRAM故障的挑戰(zhàn)

星星科技指導(dǎo)員 ? 來源:嵌入式計算設(shè)計 ? 作者:Henrik Nyholm,Jacob ? 2022-10-25 09:36 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

作者:Henrik Nyholm,Jacob Lunn Lassen

在設(shè)計安全關(guān)鍵系統(tǒng)時,國際安全標(biāo)準(zhǔn)對我們選擇適當(dāng)?shù)牧鞒毯瓦m當(dāng)?shù)募夹g(shù)來檢測和避免最終產(chǎn)品中的危險故障至關(guān)重要。這些標(biāo)準(zhǔn)確保我們不會像我們之前的安全工程師一樣陷入同樣的困境。

然而,這些標(biāo)準(zhǔn)的危險在于,它們假設(shè)你對底層硬件(比如微控制器)有詳細(xì)的了解,這可能會導(dǎo)致經(jīng)驗不足的安全工程師實施不安全的設(shè)計。例如,IEC(國際電工委員會)60730標(biāo)準(zhǔn)建議使用棋盤式存儲器測試來檢測B類軟件可變存儲器中的直流故障,這比看起來更具挑戰(zhàn)性。

本文介紹了SRAM的邏輯和物理布局之間未記錄的差異如何導(dǎo)致我們無意中錯誤地實現(xiàn)內(nèi)存測試,例如棋盤算法。標(biāo)準(zhǔn)微控制器的數(shù)據(jù)表中通常沒有必要的信息,但幸運(yùn)的是,有些內(nèi)存測試算法不受SRAM邏輯和物理布局差異的影響。

在運(yùn)行時測試 SRAM 是否存在缺陷

SRAM存儲器顯然由IC供應(yīng)商在生產(chǎn)中進(jìn)行測試,并且有缺陷的產(chǎn)品不會運(yùn)送給消費(fèi)者。盡管如此,隨機(jī)的硬件缺陷在IC的使用壽命期間可能會并且將會出現(xiàn),這是在安全關(guān)鍵應(yīng)用中需要在運(yùn)行時在微控制器中測試硬件的原因之一。

棋盤記憶測試

IEC 60730 (H.2.19.6.1) 等安全標(biāo)準(zhǔn)表明,對于必須符合 B 類安全級別的應(yīng)用,可以使用棋盤算法來識別 SRAM 中的某些缺陷(直流故障)。通常選擇棋盤測試,因為它涵蓋了SRAM中最可能的故障,并且相對較快,這便于最大限度地減少對應(yīng)用本身的性能影響。除了直流故障(位永久卡在高處或低位)之外,棋盤算法還可以檢測相鄰位相互影響的缺陷。

SRAM在邏輯上由以單詞組織的許多位組成。這些字通常為 8 位、16 位或 32 位寬,但也可能更長。在物理上,這些位被組織在數(shù)組中,其中每個位通常有八個相鄰位(參見圖1)。位中的物理缺陷會影響單個位,使其卡在高處或低位(直流故障),或者缺陷可能處于兩個位的分離中,在這種情況下,相鄰的侵略者單元(在圖1中標(biāo)記為紫色)可能會影響受害單元(在圖1中標(biāo)記為黃色)。攻擊者-受害者的情況通常被稱為耦合故障。從統(tǒng)計學(xué)上看,直流故障更容易發(fā)生,但檢測最可能的耦合故障仍然相關(guān)。

圖1 - 相鄰位之間的潛在耦合故障。

如果故障影響單個位,使該位卡在高位或低位,則可以通過寫入值 1,通過回讀來驗證值 1,然后寫入值 0 并通過回讀來驗證零,如圖 1 所示。另一方面,如果缺陷是兩個相鄰位之間的耦合故障,例如第2行中的位列9和10,則某些模式(例如所有1或全部0)不會顯示耦合故障,因為單元格在測試期間具有相同的值。

諸如相鄰單元(側(cè)面,上方和下方)之類的耦合故障具有相反的二進(jìn)制值。圖 1(右下角)說明了位 10 中的位污染了位 9,并且由于位 9 不保持預(yù)期值 0,因此揭示了耦合故障。

SRAM 的物理與邏輯布局

要使棋盤算法正常工作,需要知道哪些位是相鄰位。事實證明,這是一個問題,因為數(shù)據(jù)手冊通常只描述SRAM的邏輯布局,而不是SRAM的物理組織方式。

要了解SRAM的物理布局,必須區(qū)分面向位的存儲器(BOM)和面向字的存儲器(WOM),前者當(dāng)時可以訪問一個位,后者在當(dāng)時讀取和寫入n位字。雖然大多數(shù)現(xiàn)實世界的內(nèi)存都是以口碑形式實現(xiàn)的,但科學(xué)文獻(xiàn)中的經(jīng)典內(nèi)存測試算法通常采用BOM實現(xiàn)。

對于口碑存儲器,構(gòu)成單詞的位的物理組織有三個主要類別:相鄰、交錯和子數(shù)組。邏輯布局將每個單詞放在同一列中前一個單詞的下面(類似地址空格),但相鄰的記憶將每個單詞放在同一行中,如圖 2 所示。交錯架構(gòu)將單詞的每個位分隔到SRAM陣列的不同列和行中。最后,子陣列組織將單詞的每個位放在SRAM的不同物理上獨(dú)立的塊中?,F(xiàn)實情況是,您不知道正確實施棋盤測試所需的物理布局。

圖 2 - 面向單詞的記憶的物理布局示例。

棋盤測試的性能和缺點

實現(xiàn)棋盤算法的簡單方法是交替地將值0xAA(假設(shè)是8位數(shù)據(jù)字)寫入第一個地址,并在下一個地址中0x55,直到所有被測地址都用1和0的棋盤模式填充。然后驗證該模式以檢測相鄰單元之間的任何直流或耦合故障。然后使用反向模式重復(fù)該過程。如前所述,有一個問題:內(nèi)存邏輯布局中的棋盤模式可能不是底層物理布局中的棋盤模式,如圖 3 所示。

圖3 - 邏輯與物理SRAM的數(shù)據(jù)模式。

補(bǔ)償邏輯和物理布局之間的差異似乎是顯而易見的,但在器件的數(shù)據(jù)表中很少提供必要的信息。那么,你該怎么辦?接受較低的覆蓋范圍,畢竟診斷仍然會覆蓋直流故障和相鄰位之間的一些耦合故障嗎?向IC供應(yīng)商請求布局,并為每個器件定制棋盤測試的實現(xiàn)?或者選擇其他算法?

既然您已經(jīng)意識到棋盤測試的潛在缺點,您可以做出明智的決定。

用于 SRAM 運(yùn)行時測試的替代算法

IEC 60730中針對C類安全級別提出的存儲器測試技術(shù)具有更高的故障檢測覆蓋率,但這些算法屬于可以被認(rèn)為是生產(chǎn)測試算法的算法:它們需要更長的時間來運(yùn)行,也可以檢測更罕見的故障類型,但通常會破壞存儲在SRAM中的數(shù)據(jù),因為它們在整個SRAM上運(yùn)行,而不是在子塊中運(yùn)行。

一般來說,對于我們的嵌入式設(shè)計,我們不能很好地容忍這一點。因此,我們建議您考慮從生產(chǎn)測試 March 算法改編的混合 March 算法:這些算法可用于 WOM 優(yōu)化實現(xiàn),并提供高測試覆蓋率。此外,可以實現(xiàn)這些混合 March 算法,使其在 SRAM 的較小重疊部分上運(yùn)行,以避免一次擦除 SRAM 中的所有數(shù)據(jù),這意味著可以避免嵌入式系統(tǒng)的重新啟動。March算法的缺點是它們比傳統(tǒng)的棋盤算法計算量更大,但這是安全關(guān)鍵系統(tǒng)可能需要的費(fèi)用。

如果您考慮將傳統(tǒng)的棋盤測試與March測試交換,則可以從一些微控制器供應(yīng)商處找到此類實現(xiàn)。Microchip是提供March C-算法的性能優(yōu)化實現(xiàn)的公司之一,作為其軟件診斷庫的一部分。Microchip實現(xiàn)支持整個SRAM的測試,通常在啟動時完成,以獲得最大的測試覆蓋率,以及更小的內(nèi)存塊的測試,旨在減少對應(yīng)用的實時影響。

審核編輯:郭婷

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

    關(guān)注

    48

    文章

    8399

    瀏覽量

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

    關(guān)注

    39

    文章

    7739

    瀏覽量

    171733
  • sram
    +關(guān)注

    關(guān)注

    6

    文章

    821

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

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

    高壓試驗變壓器運(yùn)行時,哪些操作不能做?

    /T9641-1999標(biāo)準(zhǔn)和實際案例,跟大家梳理高壓試驗變壓器運(yùn)行時的禁忌操作,幫你規(guī)范操作,規(guī)避風(fēng)險。首先,嚴(yán)禁調(diào)壓器不在零位時合閘通電。根據(jù)JB/T9641-1999第
    的頭像 發(fā)表于 03-04 11:04 ?72次閱讀
    高壓試驗變壓器<b class='flag-5'>運(yùn)行時</b>,哪些操作不能做?

    Kubernetes容器運(yùn)行時containerd與CRI-O如何選擇

    Kubernetes 1.24版本正式移除了dockershim,Docker不再是K8s的默認(rèn)容器運(yùn)行時。這個變化直接影響了所有K8s集群的運(yùn)維方式——升級到1.24+必須切換到containerd或CRI-O。
    的頭像 發(fā)表于 02-26 09:54 ?234次閱讀

    請問如何在運(yùn)行時調(diào)整mcu的主頻?

    能不能實現(xiàn)在運(yùn)行時切換mcu的主頻,但不重啟mcu?
    發(fā)表于 01-16 07:12

    什么是光伏系統(tǒng)直流接地故障

    任何光伏(PV)系統(tǒng)中,安全性和正常運(yùn)行時間都取決于選擇正確和快速的接地和故障檢測方法。但是,當(dāng)線纜或接頭絕緣被破壞或?qū)w與接地部件接觸時,可能會發(fā)生直流接地故障,給人員、設(shè)備和生產(chǎn)帶
    的頭像 發(fā)表于 12-10 10:38 ?851次閱讀

    使用Nuclei Studio IDE計算程序運(yùn)行時

    在使用Nuclei Studio IDE進(jìn)行程序運(yùn)行時,我們想知道我們編寫的程序運(yùn)行時間有多長怎么辦呢?可以選擇調(diào)用IDE里面時間記錄函數(shù)_gettimeofday(),該函數(shù)用于記錄程序運(yùn)行到本
    發(fā)表于 10-28 08:25

    怎么實現(xiàn)一套容器運(yùn)行時,并符合OCI規(guī)范?

    如題,怎么實現(xiàn)一套容器運(yùn)行時,并符合OCI規(guī)范
    發(fā)表于 10-10 07:35

    裝置日常運(yùn)行時的安全防護(hù)檢查有哪些注意事項?

    裝置日常運(yùn)行時的安全防護(hù)檢查,核心原則是 “安全優(yōu)先、不影響生產(chǎn)、快速識別風(fēng)險”—— 既要避免因檢查操作引發(fā)觸電、停機(jī)等事故,也要高效捕捉運(yùn)行中的動態(tài)隱患(如過熱、防護(hù)松動)。以下是需重點關(guān)注的 8
    的頭像 發(fā)表于 09-23 16:33 ?1374次閱讀

    電能質(zhì)量在線監(jiān)測裝置重啟前,安全防護(hù)方面的檢查和日常運(yùn)行時的檢查有何不同?

    電能質(zhì)量在線監(jiān)測裝置重啟前的安全防護(hù)檢查與日常運(yùn)行時的檢查,核心差異源于 檢查目標(biāo)、時機(jī)、操作場景的本質(zhì)不同 : 重啟前檢查是 “ 事前預(yù)防性檢查 ”,聚焦 “避免重啟操作引發(fā)安全事故(如觸電、設(shè)備
    的頭像 發(fā)表于 09-23 14:38 ?544次閱讀
    電能質(zhì)量在線監(jiān)測裝置重啟前,安全防護(hù)方面的檢查和日常<b class='flag-5'>運(yùn)行時</b>的檢查有何不同?

    MTB如何在運(yùn)行時介入Jlink調(diào)試器?

    目前我們的應(yīng)用程序在運(yùn)行時會偶發(fā)死機(jī)現(xiàn)象,有沒有辦法能夠在CYW43907芯片不復(fù)位的情況下介入調(diào)試器,查看導(dǎo)致死機(jī)的問題
    發(fā)表于 07-08 07:46

    CYW20706下載固件后,出現(xiàn)無法正常運(yùn)行時無法啟動的問題,怎么解決?

    我正在使用 CYW20706。 下載固件后,出現(xiàn)無法正常運(yùn)行時無法啟動的問題。 我不知道創(chuàng)建問題的場景。 突然間,它無法啟動。 因此,當(dāng)我使用 dump 讀取內(nèi)存時,我發(fā)現(xiàn)靜態(tài)部分的內(nèi)存中覆蓋了奇怪
    發(fā)表于 07-01 08:24

    PLC設(shè)備運(yùn)行時間數(shù)據(jù)采集到運(yùn)維管理平臺如何實現(xiàn)

    在工廠設(shè)備管理工作中,往往需要統(tǒng)計各個設(shè)備的運(yùn)行時間,能夠衡量其運(yùn)行性能,主要為了方便管理人員對設(shè)備進(jìn)行定期維護(hù),以保障設(shè)備處于穩(wěn)定高效的運(yùn)行狀態(tài),減少故障停機(jī)導(dǎo)致生產(chǎn)停工的問題。 對
    的頭像 發(fā)表于 06-20 16:02 ?821次閱讀
    PLC設(shè)備<b class='flag-5'>運(yùn)行時</b>間數(shù)據(jù)采集到運(yùn)維管理平臺如何實現(xiàn)

    步進(jìn)電機(jī)在高速運(yùn)行時反電動勢波形與其動態(tài)響應(yīng)變化

    步進(jìn)電機(jī)高速運(yùn)行時,反電動勢幅值增大、頻率升高,導(dǎo)致電流建立延遲、扭矩下降及動態(tài)響應(yīng)滯后。所以在步進(jìn)電機(jī)高速運(yùn)行的方案中,我們需要通過優(yōu)化電機(jī)選型(如低電感、適中極數(shù))、升壓驅(qū)動及BEMF反饋控制,可緩解高速性能衰減,避免PWM飽和導(dǎo)致的扭矩崩潰。
    的頭像 發(fā)表于 06-10 16:06 ?1698次閱讀
    步進(jìn)電機(jī)在高速<b class='flag-5'>運(yùn)行時</b>反電動勢波形與其動態(tài)響應(yīng)變化

    可以在運(yùn)行時通過微控制器配置CCG2 C型板嗎?

    我可以在運(yùn)行時通過微控制器配置 CCG2 C 型板嗎?
    發(fā)表于 05-07 07:24

    將ADAU1701超頻到98MHZ,運(yùn)行時出現(xiàn)爆音怎么解決?

    我將ADAU1701超頻到98MHZ,我的設(shè)置是PLLmode0、1都為1,輸入mclk49M,在192k采樣率下執(zhí)行512條指令,運(yùn)行時出現(xiàn)爆音。
    發(fā)表于 04-15 07:58

    有沒有辦法讓OpenGL在無頭模式下運(yùn)行時工作(無需連接顯示器)?

    有沒有辦法讓 OpenGL 在無頭模式下運(yùn)行時工作(無需連接顯示器)? 我正在運(yùn)行帶有基于 fsl-xwayland 的映像的 imx8mp。我知道 PGU 等在我的設(shè)備樹中配置正確,因為我可以在
    發(fā)表于 04-03 07:12