硬汉嵌入式论坛

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

[Cache] DCache 可以用MPU管理起来吗

[复制链接]

10

主题

19

回帖

49

积分

初级会员

积分
49
发表于 2020-7-16 19:07:29 | 显示全部楼层 |阅读模式
小弟遇到个问题,从H7 128k 的DCHE中申请一块64K的内存,用MPU设置为TEX = 0 C=0 B S=0.那么在实际使用中,SRAM的内存还会映射到申请的这64KDCHE中吗?
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106757
QQ
发表于 2020-7-16 19:10:37 | 显示全部楼层
没问题,这就是跟使用普通RAM没什么区别了。
回复

使用道具 举报

10

主题

19

回帖

49

积分

初级会员

积分
49
 楼主| 发表于 2020-7-16 19:17:42 | 显示全部楼层
eric2013 发表于 2020-7-16 19:10
没问题,这就是跟使用普通RAM没什么区别了。

硬汉大哥,其实我想把rtos的任务堆栈放到Dche的前64k内存中,用MPU保护起来,不知道这样的话,这块内存还会不会被例如网口等命中,这样的话就改变了我任务堆栈的值,会导致任务挂掉。没找到相关的资料,不太确定这样会不会被其他映射的内存给覆盖
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106757
QQ
发表于 2020-7-16 19:21:44 | 显示全部楼层
nextstation 发表于 2020-7-16 19:17
硬汉大哥,其实我想把rtos的任务堆栈放到Dche的前64k内存中,用MPU保护起来,不知道这样的话,这块内存还 ...

你想多了,作为任务栈,你应该开启Cache才对。保证最高性能。或者直接使用性能最强的TCM RAM空间。

Cacher问题只有在多主控访问这个RAM空间的时候才会有,其中最常见的就是DMA和CPU都访问这个RAM空间。

而你用作任务栈,我们基本不使用任务栈空间作为DMA传输的,所以不用担心。
回复

使用道具 举报

10

主题

19

回帖

49

积分

初级会员

积分
49
 楼主| 发表于 2020-7-16 19:52:18 | 显示全部楼层
eric2013 发表于 2020-7-16 19:21
你想多了,作为任务栈,你应该开启Cache才对。保证最高性能。或者直接使用性能最强的TCM RAM空间。

Ca ...

硬汉大哥,我目前使用的就是性能最强的D-cache的前64k作为任务堆栈空间,不过我是直接把空间开辟在D-cache里的,没有做内存映射。暂且把这64K Dcache叫做内存A,我网口用MPU开启回传模式,那么网口SRAM数据区域在D-cache开辟的对应区域会在内存A里面吗?内存A我是用MPU保护起来的,设置的是透传模式。
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106757
QQ
发表于 2020-7-16 20:35:06 | 显示全部楼层
nextstation 发表于 2020-7-16 19:52
硬汉大哥,我目前使用的就是性能最强的D-cache的前64k作为任务堆栈空间,不过我是直接把空间开辟在D-cach ...

你的理解有偏差。
1、偏差1:DCache性能和TCM RAM是一样的,都是主频速度。
2、偏差2:DCache不是用户开辟的,DCache有16KB大小,这个有专门的Cache算法,是它自己自动加载处理的,不是用户能够控制加载和读取。用户只能在外围做做无效化或者Clean操作。
建议你把我们V7用户手册的Cache章节读一读。

http://www.armbbs.cn/forum.php?m ... &extra=page%3D1
回复

使用道具 举报

10

主题

19

回帖

49

积分

初级会员

积分
49
 楼主| 发表于 2020-7-16 20:44:52 | 显示全部楼层
eric2013 发表于 2020-7-16 20:35
你的理解有偏差。
1、偏差1:DCache性能和TCM RAM是一样的,都是主频速度。
2、偏差2:DCache不是用户 ...

谢谢硬汉大哥,我理解错了,我把DTCM和Dcahce理解为一个东西了
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106757
QQ
发表于 2020-7-17 09:17:15 | 显示全部楼层
nextstation 发表于 2020-7-16 20:44
谢谢硬汉大哥,我理解错了,我把DTCM和Dcahce理解为一个东西了



如果是DTCM,不需要Cache,他的性能已经是最强,Cache性能和他是一样的,都是主频速度。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-4 18:33 , Processed in 0.225609 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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