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

c6678 L2 Bank

你好:

1.文档中说L2 由2个Bank组成,每个Bank有4个sub-bank,同一个时钟周期能否同时访问同一个Bank中的不同sub-bank,我测试发现好像不能,想确认下!

2. 文档中说,C66系列L2是单port,这是什么意思?

多谢!

Jane Lu:

Hi Cheng,

           1      是可以支持不同sub-bank的同时访问。 比如,L1P访问sub-bank0, L1D访问sub-bank1, EDMA访问sub-bank2, SRIO访问sub-bank3

            2     是指C66 L2memory 对外接口为一个256bit的port。 具体参见文档sprug0wb section4.2.1

si cheng:

回复 Jane Lu:

我想知道ldw指令和stw/ldw指令 并行执行时,使用同一个bank的不同sub-bank

读写数据是否会冲突,导致并行延迟!我自己测试时有延迟!不知道是否正确

Zhan Xiang:

回复 si cheng:

应该是有stall,而不是有延迟,不知道你是怎么设计测试用例的,因为sub bank的地址并不是连续的,能把你的测试用地址贴上来么,我们可以帮你分析你的测试是否正确。

si cheng:

回复 Zhan Xiang:

你好:

1.下图中说bank0和bank1的地址区别是在最低字节上表现的,同时ldw操作bank0和bank1,只需要ldw操作的地址最低字节在2个bank上,随便举个例子,bank0使用地址0x00870000, bank1使用地址0x00870010, 假若有以下指令:

mvkl  0x00870000, a5

mvkh       0x00870000, a5

mvkl        0x00870010, a7

mvkh       0x00870010, a7

 

lddw a5, a8

|| lddw a7, a9

 通过单步跟踪,同时观察TSCL寄存器变化即可发现这个并行指令是否有延迟,我测试发现,若在不同的bank,TSCL计数器的值只加1,如果a5和a7地址在一个bank的不同sub-bank,TSCL会加2.

2.现在有另外一个问题有点迷惑: <<TMS320C6000 Optimizing Compiler v 7.3>> 手册,  6.9.5 The DATA_MEM_BANK Pragma 中说:

C6600 The C6600 devices contain 8 memory banks; constant can be 0, 2, 4, or 6. 有8个bank,这8个bank应该是说的bank0和bank1中的各自的4个bank吧! 但是在使用

#pragma DATA_MEM_BANK ( symbol , constant );  时,constant  = 0,2,4,6,如何实现将symbol 定义到8个不同的sub-bank中, 这里constant  只有4个值,如何区别是定义到bank0和bank1?

si cheng:

回复 si cheng:

mvkl指令a7改为b7

 

lddw a5, a8

|| lddw a7, a9

应该是 ldw *a5, a8

|| ldw *b7,b8

打错了,不好意思!

si cheng:

回复 si cheng:

请各位技术支持指教!

多谢

si cheng:

回复 si cheng:

为什么过了这么久都没人回答啊?  各位专家帮忙解决下,多谢!!!

赞(0)
未经允许不得转载:TI中文支持网 » c6678 L2 Bank
分享到: 更多 (0)