在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

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

RISC-V PMP調(diào)試

嵌入式USB開發(fā) ? 來源:嵌入式USB開發(fā) ? 作者:嵌入式USB開發(fā) ? 2023-06-08 11:52 ? 次閱讀

本文轉(zhuǎn)自公眾號,歡迎關(guān)注

RISC-V PMP調(diào)試 (qq.com)

PMP導(dǎo)致異常問題分析

現(xiàn)象和確認異常原因

觸發(fā)了異常中斷

查看異常原因為7 store access-fault exception.

并查看異常訪問的地址為0x28382ad0

圖片

gdb也確認這個地址確實只能讀不能寫

圖片

圖片

查看PMP寄存器確認根本原因

圖片

Pmpcfg0 對應(yīng)地址pmp0cfg~pmp3cfg

Pmpcfg1 對應(yīng)地址pmp4cfg~pmp7cfg

Pmpcfg2 對應(yīng)地址pmp8cfg~pmp11cfg

Pmpcfg3 對應(yīng)地址pmp12cfg~pmp15cfg

pmpcfg3為0x5100即對應(yīng)pmp13cfg為0x51

8位的配置屬性0x51如下 只讀

A=10 即NA4表示4字節(jié)區(qū)域,即pmpaddrxx對應(yīng)的4字節(jié)區(qū)域

圖片

L=1

A=10=2 NA4

R=1

X=0

W=0

圖片

圖片

對應(yīng)pmp13cfg的pmpaddr13=0xa0e0ab4 是34位地址右移2位的值,所以左移兩位恢復(fù)實際值是0x2C38 2AD0

圖片

表示的范圍是[0x2C38 2AD0,0x2C38 2AD3] 4字節(jié)

圖片

我們的地址空間是0x28000000-0x2bffffff

寫0x2C38 2AD0實際映射到了寫0x2838 2AD0 64M繞回。

所以寫0x2838 2AD0這個不具備寫屬性的地址觸發(fā)了store access-fault

exception.異常

所以以上確認了原因是PMP設(shè)置了該地址不具備寫屬性,而代碼中去寫所以導(dǎo)致了異常。

代碼

我們的空間最多只有128M,最多到0x2bff ffff,為什么寫了個0x2C38 2AD0的地址進去,

先找到對應(yīng)的代碼

由于是用的所以13的配置,所以先找這個索引對應(yīng)

#define PMP_FIXED_INDEX_TASK_STACK 13

然后再搜索這個索引

找到如下函數(shù)

圖片

這個函數(shù)在vTaskSwitchContext調(diào)用

if (prev != pxCurrentTCB) {


          pmp_task_stack_set((uint32_t)pxCurrentTCB- >pxStack);


      }

即任務(wù)有切換時,設(shè)置棧底4字節(jié)不可寫,用于棧溢出檢測。

加個死循環(huán)用于在設(shè)置該值時停住

圖片

圖片

所以要確認什么時候?qū)懥?x2838 2AD0這個地址,由于使能了PMP,所以watchpoint抓不到,先觸發(fā)了pmp的異常。

所以先關(guān)閉pmp設(shè)置

if (prev != pxCurrentTCB) {


          ///pmp_task_stack_set((uint32_t)pxCurrentTCB- >pxStack);


      }

然后設(shè)置數(shù)據(jù)斷點

watch (unsigned int )0x28382ad0

運行

第一次停在棧初始化,第二次停在如下處

圖片

可以看到

任務(wù)棧的地址是 0x28382ad0開始但是 臨時變量mem的地址是0x28382a60在棧前面去了,所以棧溢出了。

圖片

圖片

把棧改大即可

審核編輯:湯梓紅

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

    關(guān)注

    5082

    文章

    19123

    瀏覽量

    305151
  • 調(diào)試
    +關(guān)注

    關(guān)注

    7

    文章

    578

    瀏覽量

    33936
  • PMP
    PMP
    +關(guān)注

    關(guān)注

    0

    文章

    45

    瀏覽量

    18165
  • RISC-V
    +關(guān)注

    關(guān)注

    45

    文章

    2277

    瀏覽量

    46158
收藏 人收藏

    評論

    相關(guān)推薦

    RISC-V指令異常調(diào)試實例

    本文以一個簡單的實例介紹RISC-V指令異常的調(diào)試過程,思路都是一樣的,遇到其他情況時分析過程也類似。
    的頭像 發(fā)表于 06-08 10:50 ?1934次閱讀
    <b class='flag-5'>RISC-V</b>指令異常<b class='flag-5'>調(diào)試</b>實例

    什么是RISC-V

    siFive搞RISC-V 賽昉搞RISC-V 香山搞RISC-V 到底什么是RISC-V? 先不問有什么用,RISC-V目前的能力來說,工
    發(fā)表于 02-02 10:41

    RISC-V Summit China 2024 | 青稞RISC-V+接口PHY,賦能RISC-V高效落地

    量產(chǎn)芯片的關(guān)鍵技術(shù);公司籌備了第二屆RISC-V中國峰會的南京會場;青稞RISC-V的單雙線調(diào)試技術(shù),在第三屆峰會上入選RISC-V新技術(shù)與新成果。 02 連接聯(lián)網(wǎng)連世界 有核有根有
    發(fā)表于 08-30 17:37

    玄鐵VirtualZone:基于RISC-V架構(gòu)的安全擴展

    的TrustZone、Intel的SGX以及AMD的SEV等。本文主要描述基于RISC-V架構(gòu)的玄鐵C系列處理器的安全擴展,該擴展主要基于RISC-V架構(gòu)提供的PMP保護機制和多層特權(quán)模型,虛擬出多個
    發(fā)表于 09-01 14:38

    RISC-V規(guī)范的演進 RISC-V何時爆發(fā)?

    RISC-V的關(guān)注度越來越高,開源的理念也正在被越來越多的開發(fā)者和公司接受。對于尚不成熟的RISC-V而言,無論是規(guī)范和技術(shù)的演進還是生態(tài)的建設(shè),還有人才和專利都還有不小挑戰(zhàn)。2021年RISC-V
    的頭像 發(fā)表于 02-11 10:10 ?3185次閱讀

    RISC-V調(diào)試標準及跟蹤技術(shù)

    本文主要詳細介紹了RISC-V調(diào)試標準以及RISC-V的跟蹤技術(shù),感興趣的小伙伴跟小編一起了解一下吧。
    的頭像 發(fā)表于 06-23 17:19 ?2936次閱讀
    <b class='flag-5'>RISC-V</b>的<b class='flag-5'>調(diào)試</b>標準及跟蹤技術(shù)

    使用Eclipse和MCUXpresso IDE調(diào)試RV32M1-VEGA RISC-V開發(fā)板

    使用Eclipse和MCUXpresso IDE調(diào)試RV32M1-VEGA RISC-V開發(fā)板
    發(fā)表于 12-06 20:06 ?7次下載
    使用Eclipse和MCUXpresso IDE<b class='flag-5'>調(diào)試</b>RV32M1-VEGA <b class='flag-5'>RISC-V</b>開發(fā)板

    RISC-V CPU調(diào)試機制的設(shè)計原理

    本文將詳細介紹RISC-V CPU調(diào)試機制的設(shè)計原理。
    發(fā)表于 10-18 09:19 ?2251次閱讀

    RISC-V學(xué)習(xí)筆記【1】RISC-V概述

    國產(chǎn)處理器芯片起步較晚,從2013年至今,集成電路每年的進口額均超過了 2000 億美元。RISC-V和AI(人工智能)芯片是我國最有希望突破的領(lǐng)域之一。RISC-V使用的領(lǐng)域還是對于生態(tài)依賴比較
    發(fā)表于 11-24 09:28 ?2634次閱讀

    RISC-VRISC-V AI的未來(特邀講座)

    主題演講:RISC-VRISC-V AI的未來(特邀講座)ppt分享
    發(fā)表于 07-14 17:15 ?16次下載

    RISC-V調(diào)試和完善的跟蹤解決方案

    RISC-V調(diào)試和完善的跟蹤解決方案ppt分享
    發(fā)表于 07-14 17:15 ?0次下載

    RISC-V設(shè)計支持工具,支持RISC-V技術(shù)的基礎(chǔ)

    RISC-V設(shè)計支持工具,支持RISC-V技術(shù)的基礎(chǔ) ppt分享
    發(fā)表于 07-14 17:15 ?12次下載

    Imagination CPU 系列研討會 | RISC-V 平臺的性能分析和調(diào)試

    為了讓開發(fā)者及工程師深入了解Imagination的CPU產(chǎn)品及相關(guān)解決方案,Imagination將陸續(xù)推出5期線上研討會,包含:RISC-V平臺的性能分析和調(diào)試;RISC-V安全和全球平臺可信
    的頭像 發(fā)表于 08-10 08:28 ?292次閱讀
    Imagination CPU 系列研討會 | <b class='flag-5'>RISC-V</b> 平臺的性能分析和<b class='flag-5'>調(diào)試</b>

    RISC-V Summit China 2024 青稞RISC-V+接口PHY,賦能RISC-V高效落地

    第二屆RISC-V中國峰會的南京會場;青稞RISC-V的單雙線調(diào)試技術(shù),在第三屆峰會上入選RISC-V新技術(shù)與新成果。
    的頭像 發(fā)表于 08-30 18:18 ?1497次閱讀
    <b class='flag-5'>RISC-V</b> Summit China 2024  青稞<b class='flag-5'>RISC-V</b>+接口PHY,賦能<b class='flag-5'>RISC-V</b>高效落地

    加入全球 RISC-V Advocate 行列,共筑 RISC-V 的未來 !

    加入RISC-VAdvocate行列!我們正在尋找來自世界各地的RISC-V愛好者,通過全球推廣和參與,成為支持RISC-V進步的關(guān)鍵參與者。作為一名RISC-VAdvocate,您將
    的頭像 發(fā)表于 09-10 08:08 ?391次閱讀
    加入全球 <b class='flag-5'>RISC-V</b> Advocate 行列,共筑 <b class='flag-5'>RISC-V</b> 的未來 !
    主站蜘蛛池模板: 黄色一级大片视频| 2021韩国理论片ok电影天堂| 伊人网在线视频| 5060精品国产福利午夜| 妇女交性大片| 六月婷婷在线观看| 日本一本在线视频| 欧美性色xo影院永久禁欲| 日日操天天射| 亚洲男人的天堂在线观看| 色播六月| 三级日韩| 亚洲九九香蕉| 亚洲一区二区三区四区五区六区| 色综合天天色| 夜夜摸夜夜操| 一区在线视频| 青娱乐伊人| 日本午夜影院| 一级特黄aa大片免费| 国产性片在线观看| 四虎黄色网| 色亚洲视频| 天天爽夜夜| 女人aaaaa片一级一毛片| 六月婷婷激情| 福利姬 magnet| 天堂在线影院| 午夜高清免费观看视频| 美女下面小内内的沟| 久久女人网| 五月丁香| 欧洲天堂网| 国产午夜久久影院| 特黄色毛片| 台湾黄色毛片| 亚洲人免费视频| 亚洲第一在线播放| 免费一区二区视频| 国产三级a三级三级野外| 免费91视频|