完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
本帖最后由 一只耳朵怪 于 2018-6-25 15:03 编辑
c6678加入链接库deplib.a66,测试函数dspf_sp_fft_SPxSP,有如下问题 1. 在simulator环境下,测试出的周期数和dsplib手册上的基本一致,例如8192点FFT需要88289 始终周期 但是在开发板上使用emulator运行时,效率下降很严重。 仍然以8192点为例,L1全设为CACHE,L2设256KBCACHE 此时将FFT输入输出旋转因子都放在L2里,需要254933个周期。都放在MCSM需要295429个周期。都放在DDR3中要274579周期。 这是CACHE未命中miss导致的么?如何避免这的周期浪费,最大化FFT效率。 2.输入参数中的 brv[4]是什么意思,有什么作用。 3.输入输出数组定义时都有Xi[M+2*PAD] 这里的PAD是什么意思有什么作用。 4.如果我需要8个核同时运行FFT。对存在MCSM中或者DDR3的数据进行运算,再将结果存回MCSM或者DDR3去。 例如核0做 x[0]~x[8191]的FFT 核1做x[8192]~x[16383] 以此类推。 那么在他们同时对MCSM或者DDR3存取数时会不会有访问冲突。 怎么安排8核同时进行FFT运算效率比较高 5. 如果用EDMA3 的TCPP0 将数据从DDR3导入MEM或者L2 速度有多快 问题问的比较多,麻烦专家耐心解答一下,谢谢。 |
|
相关推荐
9个回答
|
|
您好,
1. 在EVM板上测试时,请确认在新建target configuration时务必选择正确的gel文件,其中包含了PLL、cache及DDR等的初始化,目前CCS安装目录下带的gel文件配置的工作主频是1GHz;同时测试的cycle以EVM板的结论为准; 2. 关于输入参数的含义请结合源文件说明作为参考; 3. 关于多核并行处理,多核同时从共享memeory去数时,可能会有访问冲突导致throughput有所下降,但是可以同时访问;并且keystone从硬件上提供了一种新的memory architecture降低访问冲突,同时可以根据具体的软件设计从软件来避免数据访问冲突; 4. 关于EDMA效率请参考www.deyisupport.com/.../2622.aspx 其中关于DMA throughput。 |
|
|
|
zbb9612 发表于 2018-6-25 00:10 谢谢回答。再确认几个问题。 1.调用库函数时,我应该在工程中加入库函数源程序,还是使用连接库deplib.a66或deplib.ae66。这两种方式效果是否一样 2.您提到的多核可以同时访问共享memory时指MCSM吗,是否包括DDR3。可以同时去共享memory取数,可以同时写入数据么? 3.从软件上避免数据访问冲突是指多核可以访问不同的bank,还是说分时间访问共享memory。 |
|
|
|
YZDIC 发表于 2018-6-25 00:30 您好, 1. 效果是一样,建议加入lib; 2. 包括DDR3,读写均可。 3. 均可。 |
|
|
|
Richard, 从你的数据LL2情况下和simulator增加了三倍的开销,感觉高了一点。请确认L1P、L1D cache打开设置为最大,代码和数据全部都要在LL2,可以提供map我们一起看看。同时确保链接同样的库。 另外,你的测试cycle只是包含调用的TI库函数的开销还是有别的东西? 谢谢! |
|
|
|
宝弟弟弟 发表于 2018-6-25 00:52 只包含TI库函数。工程传上来了,请帮忙看下,为什么运行速度这么慢,因为数据量大,放在了MCSM上,放在LL2里速度差不多。 |
|
|
|
还没时间看你的工程。下面是FFT文档包含硬件上的测试数据供参考。 www.ti.com.cn/.../getliterature.tsp |
|
|
|
Richard Zhang 您好: 基你提供的工程,我也测了下FFT的效率,在Simulator下结果与手册相近,Emulator条件下时钟周期稍大些, 我尝试着将CCS中的DSPF_sp_fftSPxSP例程加入cache,包括 #include #include #include CACHE_setL1PSize (CACHE_L1_MAXIM3); CACHE_setL1DSize (CACHE_L1_MAXIM3); CACHE_setL2Size (CACHE_256KCACHE); printf ("Core 0 : L1P cache size %d. L1D cache size %d. L2 cache size %d.n",CACHE_getL1PSize(), CACHE_getL1DSize(), CACHE_getL2Size()); 等指令,但是运行后还是未加cache的结果,时钟周期数很大,跟你给的工程测得结果不一样,不知还需在工程中做哪些修改 刚接触Cache相关的知识,还望不吝赐教! 谢谢! |
|
|
|
Richard Zhang 您好:
我基于您所提供的工程修改CCS中的例程,但一直未能实现cache的优化,能否留下工作邮箱用以交流6678的学习心得,最近要给出6678FFT/IFFT vecmul matrix相关运算的实测报告,还请指教如何进行相关工程配置。 我的邮箱hafeigu_2006@126.com 谢谢! |
|
|
|
walsn123 发表于 2018-6-25 01:40 我的邮箱是 chuan_zy@126.com 有什么问题可以共同探讨 |
|
|
|
只有小组成员才能发言,加入小组>>
350 浏览 1 评论
544 浏览 2 评论
NA555DR VCC最低电压需要在5V供电,为什么用3.3V供电搭了个单稳态触发器也使用正常?
789 浏览 3 评论
MSP430F249TPMR出现高温存储后失效了的情况,怎么解决?
660 浏览 1 评论
对于多级放大电路板,在PCB布局中,电源摆放的位置应该注意什么?
1140 浏览 1 评论
AT32F407在USART2 DMA发送数据时,接包接到了要发送的数据,程序还是处于等待传输完成的标识判断中,为什么?
82浏览 29评论
287浏览 23评论
请问下tpa3220实际测试引脚功能和官方资料不符,哪位大佬可以帮忙解答下
261浏览 20评论
请教下关于TAS5825PEVM评估模块原理图中不太明白的地方,寻求答疑
210浏览 14评论
两个TMP117传感器一个可以正常读取温度值,一个读取的值一直是0,为什么?
68浏览 13评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-27 22:09 , Processed in 0.697968 second(s), Total 59, Slave 53 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号