硬汉嵌入式论坛

 找回密码
 立即注册
查看: 465|回复: 5
收起左侧

[MPU] 对MPU配置和解决cache数据一致性问题的疑问

[复制链接]

2

主题

4

回帖

10

积分

新手上路

积分
10
发表于 2024-1-4 20:46:01 | 显示全部楼层 |阅读模式
请教大家两个问题:

手上有一块1MB的SRAM,其中400KB给了SRAM1,600KB给了SRAM2。SRAM1想用cache,SRAM2不想用cache。
1、根据手册上RASR寄存器的SIZE位,是不是应该选大于400KB最接近的512KB大小,起始地址已经选择SRAM1的起始地址,但是这样配置的话多出的112KB会不会影响到SRAM2?
2、解决cache数据一致性问题,调用dcache相关的api因为有开销,可能会造成项目中以太网数据的丢包(以太网也是用的DMA)。请问除了调用cache相关的api外,还有什么解决cache数据一致性的方法吗?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106678
QQ
发表于 2024-1-5 08:36:16 | 显示全部楼层
1、大小设置要是2^n.
2、(1)调用API没关系的,因为以太网满速才12.5MB,而SRAM即使不开Cache也远远高于这个速度。
       (2)  也可以关闭这个空间的Cache。-
回复

使用道具 举报

2

主题

4

回帖

10

积分

新手上路

积分
10
 楼主| 发表于 2024-1-5 09:19:41 | 显示全部楼层
感谢硬汉哥的回复。
第一个问题大小设置为2^n,n要怎么确定?还有,比如我上面提到的如果设置为512K大小,但SRAM1只有400K,会不会影响到SRAM2?
回复

使用道具 举报

0

主题

4

回帖

4

积分

新手上路

积分
4
发表于 2024-1-5 10:39:22 | 显示全部楼层
1. 直接调用mpu_armv7.h中的接口即可
2. 如果sram1和sram2地址连续,则会影响到。 想要了解cache和mpu配置相关的操作,可以看DUI0644E_cortex_m7_r1p2_ugrm.pdf中的MPU章节
回复

使用道具 举报

2

主题

4

回帖

10

积分

新手上路

积分
10
 楼主| 发表于 2024-1-5 12:06:47 | 显示全部楼层
kou19940827 发表于 2024-1-5 10:39
1. 直接调用mpu_armv7.h中的接口即可
2. 如果sram1和sram2地址连续,则会影响到。 想要了解cache和mpu配置 ...

感谢回复
这个PDF哪里可以下载到吗?找了一下还没找到
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106678
QQ
发表于 2024-1-6 09:21:19 | 显示全部楼层
fenglang 发表于 2024-1-5 09:19
感谢硬汉哥的回复。
第一个问题大小设置为2^n,n要怎么确定?还有,比如我上面提到的如果设置为512K大小, ...


看下教程的这个章节吧:
https://www.armbbs.cn/forum.php?mod=viewthread&tid=86980

12.png


有时间了视频教程也可以看下:

视频教程第13期:系统讲解Cortex-M7内核MPU和Cache,理解通透(2022-04-17)
https://www.armbbs.cn/forum.php?mod=viewthread&tid=111956

视频教程第14期:超干货,MPU和Cache实战,一张图了解所有经典配置案例,争取人人都可以玩溜(2022-05-08)
https://www.armbbs.cn/forum.php?mod=viewthread&tid=112268
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-4-29 10:51 , Processed in 0.280826 second(s), 29 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表