嵌入式开发者社区

标题: C6748下,DRAM是否太慢 [打印本页]

作者: njxaf    时间: 2015-8-27 13:58
标题: C6748下,DRAM是否太慢
C6748板,跑以太网,ping 长度为1400的包,延时4ms,同样的以太网芯片在stm32下,延时1ms,而C6748主频400M,浮点DSP,没有一点优势,我分析是否为DRAM太慢引起,STM32下使用的是内部SRAM。


作者: 希望缄默    时间: 2015-8-27 14:08
用 SYS/BIOS NDK 例程试下 SYS/BIOS 下使用了缓存提高了读写效率
裸机的网络仅供参考评估 不建议用于实际运用
下图是 NDK TCP OOB 数据传输
发送 11811871 Bytes/s = 90 Mb/s(1024进制)
接收 10405211 Bytes/s = 79 Mb/s(1024进制)
基本上达到 100M 网络上限了 CPU 占用率大概在 40%-50% 之间


[attach]435[/attach]

[attach]436[/attach]

作者: 希望缄默    时间: 2015-8-27 14:15
另外主频是 456MHZ
作者: njxaf    时间: 2015-8-27 14:26
本帖最后由 njxaf 于 2015-8-27 14:29 编辑

使用CACHE时延时2ms,效率也不是太高,10年前我用40MHz的CPU,ping 1400长度的包延时就是3ms,我认为主频速度是够了,但外部RAM太慢拖了整体速度,麻烦【希望缄默】ping 1400包试试,再发个图片
作者: 希望缄默    时间: 2015-8-27 17:08
njxaf 发表于 2015-8-27 14:26
使用CACHE时延时2ms,效率也不是太高,10年前我用40MHz的CPU,ping 1400长度的包延时就是3ms,我认为主频速 ...

[attach]437[/attach]
作者: njxaf    时间: 2015-8-27 17:15
谢谢【希望缄默】,我没有用sys/bios操作系统,用的是StarterWare下LWIP,是否是没有用好CACHE,StarterWare下没有CACHE例程,麻烦指点,
CacheEnableMAR((unsigned int)0xC0000000, (unsigned int)0x20000000);
CacheEnable(L1DCFG_L1DMODE_32K | L1PCFG_L1PMODE_32K | L2CFG_L2MODE_256K);
以上为我使用CACHE语句

作者: 希望缄默    时间: 2015-8-27 17:40
njxaf 发表于 2015-8-27 17:15
谢谢【希望缄默】,我没有用sys/bios操作系统,用的是StarterWare下LWIP,是否是没有用好CACHE,StarterWar ...

这个是使能了缓存没有问题
但是在用的时候还有很多地方需要考虑 建议参考 TI 的官方文档 TMS320C674x DSP Cache User's Guide.pdf
作者: njxaf    时间: 2015-8-28 11:47
本帖最后由 njxaf 于 2015-8-28 12:35 编辑

今天又做了一个实验,使用内部ram,不用ddr2,一样ping延时为2ms,看来不是DDR2慢的原因,看来只有一个可能EMIFA的问题,C6748还有很多可待探讨的技术,望创龙多指点




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