STM32
直播中

陈杰

7年用户 1375经验值
私信 关注
[问答]

求助,关于STM32H7的Cache无效化操作32字节对齐问题求解

core_cm7.h更新到5.1.1版本后,发现该函数对dsize做了32字节对齐,但是op_addr地址32字节对齐却注释掉了?,图片的这句话是不是说SCB->DCCIMVAC寄存器仅31-5位是有效的,本身已经强制32位对齐了?我在编程手册上也没找到对DCCIMVAC寄存器的详细描述,请问调用该函数是不是可以直接传入地址和数据了,不需要再对地址和数据进行32位对齐了?




回帖(1)

贾小龙

2024-3-31 15:07:41
但是根据你提供的内容及图片,可以得出以下结论:

1. 在core_cm7.h文件的5.1.1版本中,对于函数的dsize参数已经进行了32字节对齐。这是因为STM32H7处理器的Cache架构需要以32字节为单位进行操作。

2. 图片中的注释提到了SCB->DCCIMVAC寄存器,说明了该寄存器仅仅使用了31-5位,这说明了只有31-5位是有效的。

3. 根据编程手册的相关描述,对于DCCIMVAC寄存器的具体细节没有找到。这可能是因为该寄存器的功能是由硬件实现的,可能不需要用户手动配置。

4. 综上所述,调用该函数时,可以直接传入地址和数据,不需要再对地址和数据进行32位对齐操作。


举报

更多回帖

发帖
×
20
完善资料,
赚取积分