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

EDMA搬移

最近刚接触EDMA,看了几遍文档还是不太明白,请问有EDMA的简单例程!!!!

mathslee:

Andy,你好!

   CSL 带的例子还有论坛共享的edma例子,都无法编译,所有CSL_edmaopen() 之类的函数都显示有个错误说找不到定义,但是我已经将CSL库包含进来了…….是要配置什么吗???

Andy Yin1:

回复 mathslee:

您好,

注意两点:

1. 在include path中添加正确的CSL头文件搜索路径;

2. 添加CSL lib;

之前论坛有朋友也遇到类似的问题,已经根据建议解决了,你可以搜索一下看看如何解决的,我记得我们好像把他的例子上传了。请问你使用的哪个例子?

Phyllis Xu:

回复 Andy Yin1:

您好!

附件(CCSv5环境下一个EDMA3的project)是一个很简单的EDMA3搬运数据的例子,在编译前有以下几点需要注意:

1. 首先建立一个workspace,然后将附件的zip file解压,将project import到当前worksapce中

2. 右击import 进来的project,选中properties,在build下的C6000 Compiler中有个Include Options,将C6678的pdk路径加进去

3. 同步骤2,在build下的C6000 Linker中有个File Search Path,将C6678 pdk中两个库文件加进去(分别是ti.csl.ae66, ti.csl.intc.ae66)

满足以上环境设置后编译就不会出错了。如遇其他问题欢迎提问。

非常感谢!

Nicole He:

回复 Phyllis Xu:

谢谢您无私的分享,例子特别好也很易懂。就是还想问您一点问题。这个例子是只适用于core 0的是吗?如果我想要在其他核上面运行除了要改cmd文件之外,main文件哪些参数也是需要改的呢?谢谢啦!

Phyllis Xu:

回复 Nicole He:

您好!

很高兴这个例子对你EDMA学习有帮助。这个例子是可以跑在其它核上的。

谢谢!

Nicole He:

回复 Phyllis Xu:

不需要修改cmd文件和本身的文件是吗?直接运行,但是我遇到的问题就是edma不能搬数了

Nicole He:

回复 Phyllis Xu:

貌似改了cmd之后是可以的了…..谢谢~

Phyllis Xu:

回复 Nicole He:

您好!

不好意思,我的疏忽。需要把.cmd 文件的memory改成如下:(例如要在核1上跑)MEMORY{ VECTORS: origin=0x11800000 length=0x00000400 LL2MEM: origin=0x11800400 length=0x0007FC00 MSMCRAM: origin=0x0C000000 length=0x00400000 DDR3RAM: origin=0x80000000 length=0x20000000}

非常感谢!

 

Nicole He:

回复 Phyllis Xu:

 

您好,我想要使用一个核做启动信号控制(例如核0),同时计时(因为要计算速率),剩下7个核(核1-7)作为实际搬数的核。需要让他们7个核同时向不同的位置搬

看他们同时搬得时候在edma总线上的冲突,来看edma总线的性能。

所以我需要在core1-7不同的核上设置不同的edma参数是吧?(因为搬数的目的地址和源地址都不同)

按照您给的那个程序,我进行了如下改动(cmd还是没改,打算把参数放在核0里,使用核0的l2 sram,)核0负责启动edma,核1-7写入不同的参数,他们搬不同地方的数

myParamSetup.option = 0x00100008;

  myParamSetup.srcAddr = (Uint32)(srcbuf+(DNUM-1)*64);

   myParamSetup.aCntbCnt = 0x00010040;

   myParamSetup.dstAddr = (Uint32)(dstbuf+(DNUM-1)*64);

  myParamSetup.srcDstBidx = 0x0;

  myParamSetup.linkBcntrld = 0x0000ffff;

  myParamSetup.srcDstCidx = 0x0;

  myParamSetup.cCnt = 0x00000001;

  CSL_edma3ParamSetup(hParamPing,&myParamSetup);

就只改了红色的部分,但是发现不能搬数了。

想问您一下,是我的思路错了,还是参数设错了。谢谢~

 

Phyllis Xu:

回复 Nicole He:

您好!

有两个问题想确认一下:

1. 请问除了core 0之外的7个core 数据的源地址分别是多少?

2. 这7个core使用的都是同一个channel?

谢谢!

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