嵌入式开发者社区

标题: 有关C6678存储器的疑问 [打印本页]

作者: 二十一畫生    时间: 2018-10-31 21:49
标题: 有关C6678存储器的疑问
C6678似乎每个核心有被分配有一个L1D、一个L1P与一个L2(并不在核心上,而是透过内部通道连接)。然后看过《TMS320C6678 Multicore Fixed and Floating-Point Digital Signal Processor》这篇文档后,发现在内存地图上除了0x00800000处的L2以外,每个核心还有专门分配的L1、L2的地址,它们的物理地址是不一样的。

那么问题来了,这些存储器之间是什么关系?它们似乎被称作本地和全局?这是怎么区分的?


还有,在哪个文档看出这些存储器是SRAM、DRAM还是别的什么?以及NAND和NOR分别指的是哪些存储器的信息应该在哪里看?

作者: tronlong-gxd    时间: 2018-11-1 13:57
提示: 作者被禁止或删除 内容自动屏蔽
作者: 二十一畫生    时间: 2018-11-1 19:54
tronlong-gxd 发表于 2018-11-1 13:57
您好:
       有关核与核之间的内存建议您看MSMCSRAM这个部分的内容。有关接SRAM,DRAM这些是通过EMIF 接 ...

具体是哪个文件呢?
作者: 二十一畫生    时间: 2018-11-1 20:07
tronlong-gxd 发表于 2018-11-1 13:57
您好:
       有关核与核之间的内存建议您看MSMCSRAM这个部分的内容。有关接SRAM,DRAM这些是通过EMIF 接 ...

额,我指的是L1与L2,就是跟CorePac直接连接的,每个核都有的那个。它们为什么在0080 0000有一处,后面给每个核又配了一个?
作者: tronlong-gxd    时间: 2018-11-2 08:33
提示: 作者被禁止或删除 内容自动屏蔽
作者: 二十一畫生    时间: 2018-11-3 10:33
tronlong-gxd 发表于 2018-11-2 08:33
这样的配置没有问题的呀,你可以参考我们的cmd'文件。

我知道没问题,我是想问从哪里得到这些信息。
作者: 二十一畫生    时间: 2018-11-4 22:32
本帖最后由 二十一畫生 于 2018-11-4 22:33 编辑
tronlong-gxd 发表于 2018-11-2 08:33
这样的配置没有问题的呀,你可以参考我们的cmd'文件。

我看到视频里面说,cache的地址分成了本地(只能被对应的核心寻址)与全局(可以被其他主设备寻址)。那么问题来了:
为什么本地逻辑地址会有一个单独的物理地址在0x0 0080 0000(以L2为例)?

作者: tronlong-gxd    时间: 2018-11-5 09:16
提示: 作者被禁止或删除 内容自动屏蔽
作者: 二十一畫生    时间: 2018-11-5 20:01
tronlong-gxd 发表于 2018-11-5 09:16
您好:
       这些配置在数据手册都有说明。

我看过那个手册了。

我再把问题说仔细一点吧。就是既然L1与L2有两个地址空间(本地和全局),那么它们应该指向同一个物理地址吧?

如果是这样的话,为什么本地地址那里会有一个单独的物理地址呢?如图所示。



作者: wjz1    时间: 2018-11-6 09:38
您好:
本地地址只能被对应的CPU内部寻址,全局地址可以被其他主设备以及外设等寻址,全局地址应用的范围更大,它们指向的是同一个物理地址。如果代码只需要被当前CPU核心访问就用本地地址,因为本地地址总是指向每个核心的L2。根据具体需求编写代码。
本地地址那里的单独的物理地址可用,也可以不用。





欢迎光临 嵌入式开发者社区 (https://51ele.net/) Powered by Discuz! X3.4