03 2021 档案
摘要:1 异常发生后快速定位方法 ARM v8发生sync异常以后(如非法指令、data abort等),可以通过寄存器快速定位引起异常的原因,具体寄存器如下: 如下为测试程序 在系统MMU设置里,0x100地址不允许访问,下图程序152行故意访问0x100地址,引发异常。 执行152行以后,进入异常 查
阅读全文
摘要:函数执行到特定位置卡死,该位置只有内存和UART寄存器访问,单步无问题。 查找问题: 怀疑UART和SRAM ip有问题,芯片设计提供抓信号的版本 抓SRAM信号,发现有0地址访问。 0地址是DDR区域,还不可访问,程序中未访问0地址 定位:ARM的硬件,为了提高效率,对于配置成normal的内存区
阅读全文
摘要:project——project settings 这个目录默认是工程文件的目录,一般不是源码目录。所以要设置一下,否则可能cache源码时导致卡顿。 上面方法无效的话,可以把base工程清空 如下连接也有用: https://blog.csdn.net/yangwangnndd/article/d
阅读全文
摘要:1 ARM64中的对齐检测 普通内存访问,这里的对齐在不同指令模式下是不一样的,例如使用了W寄存器,那就是32bit对齐;使用了X寄存器,那就是64bit对齐: device属性,只要非对齐,就报错 normal mempry, 受SCTLR_EL*中A bit的控制 exclusive atomi
阅读全文

浙公网安备 33010602011771号