前言
本文以一个实例,讲解RISC-V未对齐访问导致的问题.
未对齐导致的问题很常见,本文以实例分享调试分析过程。
过程
现象是程序进入了异常中断函数exception()
先分部打端点,结合step单步运行,确认执行哪个函数的哪一句执行后异常。
这里已经确认是rom_usb_uvc.c的984行执行后异常。
在执行异常的语句前打断点
b rom_usb_uvc.c:984
再重新运行到该处
显示汇编界面layout split
stepi
按照汇编单步执行
最终确认执行汇编指令
lw a2,0(a1)
后异常
查看此时寄存器a1
的值。
(gdb) info reg a1
a1 0x28429ddd 675454429
stepi
执行完`lw a2,0(a1)``后进入异常处理函数
查看此时mcause
寄存器
(gdb) info reg mcause
mcause 0x4 4
见 对应 即 所以修改缓冲区按照WORD对齐。<
的<>.
Load address misaligned
。正是lw
指令寄存器a1
间接寻址非WORD
对齐地址0x28429ddd
导致。jpeg2usbpacket
函数传入的指向缓冲区的指针参数非WORD
对齐导致。
审核编辑:汤梓红
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
嵌入式
+关注
关注
5087文章
19148浏览量
306190 -
调试
+关注
关注
7文章
583浏览量
33987 -
程序
+关注
关注
117文章
3792浏览量
81183 -
函数
+关注
关注
3文章
4338浏览量
62767 -
RISC-V
+关注
关注
45文章
2300浏览量
46258
发布评论请先 登录
相关推荐
rIsc-v的缺的是什么?
态系统还不够丰富。这可能导致软件和工具的可用性受限,特别是在一些特定的应用领域或开发环境中。开发者可能需要投入更多的时间和精力来寻找或开发适合RISC-V架构的软件和工具链。
碎片化风险:由于RISC-V的开源性
发表于 07-29 17:18
RISC-V 发展
RISC-V 发展2015年成立了RISC-V基金会,这是个非营利性组织,主要为了维护和发展RISC-V。目前RISC-V的IP供应商大部分是国内的厂商,例如sifive、阿里平头哥、
发表于 04-14 10:18
RISC-V未对齐访问导致问题案例
转自公众号,欢迎关注
参考https://mp.weixin.qq.com/s/8wfRFg1XcBsXw5gMq-cKaQ前言 本文以一个实例,讲解RISC-V未对齐访问导致的问题.
发表于 05-06 19:14
RISC-V在物联网的封闭性系统的应用
随各大行业巨头纷纷投入RISC-V,带动指令集之争再起,RISC-V的灵活性带给业者客制化自主芯片的空间,且在终端产品中达成差异化,然正因如此,各业者发展出的RISC-V芯片在未制定行
RISC-V规范的演进 RISC-V何时爆发?
RISC-V的关注度越来越高,开源的理念也正在被越来越多的开发者和公司接受。对于尚不成熟的RISC-V而言,无论是规范和技术的演进还是生态的建设,还有人才和专利都还有不小挑战。2021年RISC-V
第一届RISC-V中国峰会看点 risc-v开发要怎么优化risc-v指令集架构代码密度
在第一届RISC-V中国峰会上看点很多,RISC-V是开源的,那么代码密度要怎么控制,会不会因为开源而导致代码密度特别大? 我们一起来看看risc-v峰会其中一个非常重要的亮点;卡姆派
发表于 06-23 18:22
•9699次阅读
RISC-V的挑战分析
体系架构的变体中有100多个错误,涉及错误存储和从内存中检索信息的顺序不正确,如果不纠正,可能会导致RISC-V芯片上运行的软件出现问题。RISC-V基金会表示,这些错误不会影响大多数版本的R
RISC-V学习笔记【1】RISC-V概述
国产处理器芯片起步较晚,从2013年至今,集成电路每年的进口额均超过了 2000 亿美元。RISC-V和AI(人工智能)芯片是我国最有希望突破的领域之一。RISC-V使用的领域还是对于生态依赖比较
发表于 11-24 09:28
•2660次阅读
openEuler加入RISC-V Landscape
北京时间2023年3月8日,openEuler加入RISC-V Landscape。 此次加入RISC-V Landscape,意味着openEuler在对RISC-V架构的生态适配
RISC-V Summit China 2024 青稞RISC-V+接口PHY,赋能RISC-V高效落地
沁恒在历届峰会上分享RISC-V在MCU领域的创新成果,和大家共同见证了本土RISC-V产业的成长。早在第一届RISC-V中国峰会上,沁恒就公开了青稞RISC-V系列量产芯片的关键技术
加入全球 RISC-V Advocate 行列,共筑 RISC-V 的未来 !
加入RISC-VAdvocate行列!我们正在寻找来自世界各地的RISC-V爱好者,通过全球推广和参与,成为支持RISC-V进步的关键参与者。作为一名RISC-VAdvocate,您将
评论