TI中文支持网
TI专业的中文技术问题搜集分享网站

关于Keystone tms320c6670的MPU

最近想做c6670内部的内存保护,在core0上运行了linux的程序,使用的内存主要是以0x80000000开始的DDR3存储空间。

现在的问题是我们想做内存保护的话主要关心以下的问题: 

1.c6670内部有多少个MPU控制寄存器用于整段的内存保护?

   看了c6670的datasheet里的table 2-2 介绍说有5个MPU,keystone MPU手册里又说有programmable start address和programmable end address以及MPPA寄存器,那么这5个MPU(0~4)和这些寄存器到底是什么对应关系?如何确认到底有几个可编程的寄存器?

我理解的是每个MPU里有16个寄存器组,6670有5个MPU,这样是不是总数在80个?

King Wang1:

不能这么理解。MPU是抱去某个区域的,这个区域是固定的。你有5个MPU,那么这5个MPU就只保护了5个区域(区域要查看手册)。每个MPU有16组,也只是把这个区域划成16个小区域而已,并没有扩大。MPPA是用来保护内存的,比如MSMC里面的MPPA,就是给所有访问MSM和DDR的master实行控制的,这个MPPA只能保护MSM和DDR。

He Huan:

回复 King Wang1:

那么我想对linux运行的ddr空间做保护,例如代码段和数据段,这些段比较多(肯定不只16个),c6670能否做到?

Andy Yin1:

回复 He Huan:

6670的DDR空间是通过MSMC进行访问的,可以设置MSMC SMS及SES设置DDR访问属性及权限。

赞(0)
未经允许不得转载:TI中文支持网 » 关于Keystone tms320c6670的MPU
分享到: 更多 (0)