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

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

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

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

工程師筆記|如何理解 RAMECC FAR 寄存器的值

STM32單片機(jī) ? 來源:未知 ? 2022-12-16 19:35 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群



關(guān)鍵詞:STM32H7, RAMECC



目錄預(yù)覽




1.問題原因

2.RAMECC 控制單元

3.RAMECC 寄存器地址

4.RAMECC 寄存器

5.解決問題



1.問題原因

某客戶測試 STM32H753xi 板子上的 ECC 功能,用于監(jiān)控 AXI-SRAM 區(qū)域,但不是很明白 RAMECC FAR 寄存器在 RM0433 中的描述, “Bits 31:0 FADD[31:0]: ECC error failing address”。


比如在 AXI-SRAM 中,如果客戶示例顯示的是 FAR = 0x2004,但是這個(gè)地址值 0x2004 并不在 AXI-SRAM 范圍之內(nèi),客戶該如何理解 FAR 寄存器?希望能夠有詳盡的描述,這個(gè) FAR 寄存器的偏移地址是 Word 地址還是 Byte 地址或其他?我們先來看看相關(guān)參考手冊中關(guān)于 RAMECC 的介紹去尋找答案。


2.RAMECC 控制單元

RAM ECC 控制單元的數(shù)量取決于不同的 STM32H7 系列。比如,對于STM32H74x/5x 和 STM32H72x/3x 它們的每一個(gè)域都有一個(gè) RAMECC 的控制器單元,為了描述簡單,表述如下:


Domain 1 (D1) RAMECC unit = RAMECC1Domain 2 (D2) RAMECC unit = RAMECC2Domain 3 (D3) RAMECC unit = RAMECC3


詳細(xì)的說明請參考 RM0433 參考手冊 rev7 中的截圖:



3.RAMECC 寄存器地址

對于上圖 Table 11 的 RAMECC 控制單元的地址總結(jié)成如下表格,具體的參考RM0433 的第二章節(jié) Memory and bus architecture 中的 table 8.



4.RAMECC 寄存器

每一個(gè) RAMECC 控制單元(RAMECC1、RAMECC2、RAMECC3)的監(jiān)控單元Monitor number 均分別含有如下的一套寄存器組(其中 RAMECC_IER 為共同擁有)。


接下來我們以 RAMECC1 為例進(jìn)行分析,其邊界地址為:0x52009000 -0x520093FF,那么對于該 RAMECC1 控制單元中的寄存器組,對于每一個(gè)寄存器:


以 RAMECC1 的起始地址 0x52009000 為基準(zhǔn):RAMECC_IER:中斷使能,偏移地址 0x00,該寄存器地址即為:0x52009000。


RAMECC_MxCR:配置寄存器,偏移地址 0x20 *x,x 為 ECC 監(jiān)控單元號,該寄存器地址的表達(dá)式為:0x52009000 + 0x20 * x ,x 取值范圍= [1..5](見上面表格 Table 11 ECC controller mapping),所以:


Monitor 1 - AXI SRAM ECC 監(jiān)控單元,該寄存器地址即為 0x52009020,監(jiān)控大小為整個(gè) AXI SRAM 的 512KB 字節(jié)(0x24000000 -0x2407FFFF)。

Monitor 2 - ITCM-RAM ECC 監(jiān)控單元,該寄存器地址0x52009040, 監(jiān)控大小為整個(gè)ITCM RAM的64KB字節(jié)(0x00000000 -0x0000FFFF)。

Monitor 3、Monitor 4、Monitor 5 中該 RAMECC_MxCR 寄存器的地址,以此類推。


RAMECC_MxSR -- 狀態(tài)寄存器,偏移地址: 0x24 + 0x20 * (x - 1),x 為 ECC monitor number 號碼(見上面表格 Table 11 ECC controller mapping)。那么該寄存的地址為:0x52009000 + 0x24 + 0x20 * (x-1) ,x 取值范圍 = [1..5]:

Monitor 1:0x52009024

Monitor 2:0x52009044

Monitor 3 : 0x52009064

Monitor 4 : 0x52009084

Monitor 5 : 0x520090a4


RAMECC_MxFAR --失敗地址寄存器,表達(dá)式:0x52009000 + 0x28 + 0x20 * (x-1) , x取值 = [1..5]:

Monitor 1:0x52009028

Monitor 2:0x52009048

Monitor 3:0x52009068

Monitor 4:0x52009088

Monitor 5:0x520090a8


RAMECC_MxFDRL -- 失敗數(shù)據(jù)低位,表達(dá)式 0x52009000 + 0x2c + 0x20 * (x-1) ,x 取值= [1..5]

Monitor 1:0x5200902c

Monitor 2:0x5200904c

Monitor 3:0x5200906c

Monitor 4:0x5200908c

Monitor 5:0x520090ac


RAMECC_MxFDRH -- 失敗數(shù)據(jù)高位,表達(dá)式 0x52009000 + 0x30 + 0x20 * (x-1),x 取值= [1..5]

Monitor 1:0x52009030

Monitor 2:0x52009050

Monitor 3:0x52009070

Monitor 4:0x52009090

Monitor 5:0x520090b0


RAMECC_MxFECR --失敗 ECC 錯(cuò)誤代碼,表達(dá)式 0x52009000 + 0x34 + 0x20 * (x1) ,x 取值 = [1..5]

Monitor 1:0x52009034

Monitor 2:0x52009054

Monitor 3:0x52009074

Monitor 4:0x52009094

Monitor 5:0x520090b4


5.解決問題


通過查詢資料與試驗(yàn),F(xiàn)ADD[31:0]中表述的地址是 word 而不是 bit。為了計(jì)算真實(shí)的地址,客戶需要用如下公式計(jì)算:真實(shí)地址= 所處內(nèi)存的首地址 + FADD x 字節(jié)數(shù)。


現(xiàn)在舉個(gè)例子,如上述提到的 FADD= 0x2004 :

- 對于 64-bit word 的內(nèi)存 :如 AXI RAM : 0x2400 0000 + 0x2004 * 8 = 0x2401 0020;

- 對于 32-bit word 的內(nèi)存 :如 SRAM1 : 0x3000 0000 + 0x2004 * 4=0x3000 8010 ;

END


點(diǎn)擊“閱讀原文”,可下載原文檔


原文標(biāo)題:工程師筆記|如何理解 RAMECC FAR 寄存器的值

文章出處:【微信公眾號:STM32單片機(jī)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

    關(guān)注

    6067

    文章

    44997

    瀏覽量

    650780
  • STM32
    +關(guān)注

    關(guān)注

    2295

    文章

    11032

    瀏覽量

    365237

原文標(biāo)題:工程師筆記|如何理解 RAMECC FAR 寄存器的值

文章出處:【微信號:STM32_STM8_MCU,微信公眾號:STM32單片機(jī)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

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

    使用寄存器點(diǎn)亮LED燈

    學(xué)習(xí)本章時(shí),配合以上芯片手冊中的“19. I/O Ports”章節(jié)一起閱讀,效果會更佳,特別是涉及到寄存器說明的部分。本章內(nèi)容涉及到較多寄存器方面的深入內(nèi)容,對于初學(xué)者而言這些內(nèi)容豐富也較難理解,但非常有必要細(xì)讀研究、夯實(shí)基礎(chǔ)。
    的頭像 發(fā)表于 05-28 17:37 ?648次閱讀
    使用<b class='flag-5'>寄存器</b>點(diǎn)亮LED燈

    將LDC1000配置了0X0B寄存器,各寄存器都變成了相應(yīng)寄存器的Deffault,為什么?

    我將LDC1000各寄存器配置后,當(dāng)不配置0X0B,即傳感處于待機(jī)狀態(tài)時(shí),單片機(jī)讀回來各寄存器是正常的,但當(dāng)配置了0X0B寄存器,即
    發(fā)表于 01-02 07:41

    ADS1198讀取該芯片的ID寄存器的時(shí)候,讀出來的數(shù)據(jù)為0xA0,和芯片手冊上的描述嚴(yán)重不符,為什么?

    1)目前使用的ADS1198,但是讀取該芯片的ID寄存器的時(shí)候,讀出來的數(shù)據(jù)為0xA0,和芯片手冊上的描述嚴(yán)重不符,不知道是什么原因,請TI工程師幫忙解答一下,按照芯片手冊上的描述,該芯片應(yīng)該是
    發(fā)表于 12-06 07:30

    Modbus協(xié)議的讀取保持寄存器

    功能碼用于讀取從設(shè)備保持寄存器的內(nèi)容,不支持廣播模式。消息頓中指定了需要讀取的保持寄存器的起始地址和數(shù)目。而保持寄存器中各地址的具體內(nèi)容和意義則由設(shè)備開發(fā)者自行規(guī)定。
    的頭像 發(fā)表于 10-30 10:54 ?3963次閱讀

    詳解寄存器模型鏡像

    DUT的配置寄存器是實(shí)際,reg_model有鏡像、期望的概念。
    的頭像 發(fā)表于 10-23 09:43 ?1021次閱讀
    詳解<b class='flag-5'>寄存器</b>模型鏡像<b class='flag-5'>值</b>

    寄存器間接尋址和寄存器尋址的區(qū)別

    寄存器間接尋址和寄存器尋址是計(jì)算機(jī)體系結(jié)構(gòu)中兩種重要的尋址方式,它們在指令執(zhí)行過程中起著關(guān)鍵作用。下面將從定義、原理、特點(diǎn)、應(yīng)用場景以及區(qū)別等方面對這兩種尋址方式進(jìn)行詳細(xì)闡述。
    的頭像 發(fā)表于 10-05 17:13 ?3688次閱讀

    FPGA算法工程師、邏輯工程師、原型驗(yàn)證工程師有什么區(qū)別?

    邏輯工程師和 FPGA 原型驗(yàn)證工程師在工作重點(diǎn)和職責(zé)上存在一定的區(qū)別: FPGA 算法工程師: 主要關(guān)注算法的設(shè)計(jì)和優(yōu)化,以在 FPGA 平臺上實(shí)現(xiàn)高效的計(jì)算和處理。他們需要深入理解
    發(fā)表于 09-23 18:26

    ARM處理寄存器組織及功能

    ARM處理寄存器組織是其核心架構(gòu)的重要組成部分,對于理解ARM處理的運(yùn)行機(jī)制和性能特點(diǎn)具有重要意義。以下是對ARM處理
    的頭像 發(fā)表于 09-10 11:11 ?2748次閱讀

    寄存器的類型和作用

    在計(jì)算機(jī)科學(xué)中,寄存器(Register)是一種高速存儲單元,它位于CPU內(nèi)部,與CPU的運(yùn)算單元和邏輯控制單元緊密相連。寄存器的主要作用是暫時(shí)存儲指令、操作數(shù)和地址等臨時(shí)數(shù)據(jù),以便CPU快速訪問和處理。由于寄存器直接集成在CP
    的頭像 發(fā)表于 09-05 14:11 ?4789次閱讀

    數(shù)字寄存器的原理和使用

    數(shù)字寄存器是計(jì)算機(jī)體系結(jié)構(gòu)中至關(guān)重要的組成部分,其原理和使用對于理解計(jì)算機(jī)的工作原理和數(shù)據(jù)存儲方式具有重要意義。
    的頭像 發(fā)表于 09-05 14:08 ?1365次閱讀

    寄存器故障分析

    寄存器故障分析是計(jì)算機(jī)硬件維護(hù)與系統(tǒng)穩(wěn)定性保障中的重要環(huán)節(jié)。寄存器作為計(jì)算機(jī)中的關(guān)鍵組成部分,負(fù)責(zé)存儲和傳輸數(shù)據(jù),其穩(wěn)定性和可靠性直接影響到整個(gè)計(jì)算機(jī)系統(tǒng)的性能。以下是對寄存器故障的全面分析,包括故障類型、故障現(xiàn)象、故障原因及診
    的頭像 發(fā)表于 08-29 11:26 ?2197次閱讀

    寄存器是什么意思?寄存器是如何構(gòu)成的?

    在計(jì)算機(jī)科學(xué)中,寄存器(Register)是一個(gè)高速存儲單元,它位于中央處理(CPU)內(nèi)部,用于存儲計(jì)算機(jī)程序執(zhí)行過程中所需要的數(shù)據(jù)、指令地址或狀態(tài)信息。寄存器是計(jì)算機(jī)體系結(jié)構(gòu)中至關(guān)重要的組成部分,對計(jì)算機(jī)的運(yùn)算速度和性能有著
    的頭像 發(fā)表于 08-02 18:23 ?7618次閱讀
    <b class='flag-5'>寄存器</b>是什么意思?<b class='flag-5'>寄存器</b>是如何構(gòu)成的?