TI论坛
直播中

李海龙

7年用户 154经验值
私信 关注
[问答]

请问如何实现C6748 EMIF异步和EDMA的组合

大家好,我需要用C6748 EMIF 16bit宽度 从FPGA拿数据,需要40MB/S 带宽
CS用4 BANK
以下是我配置代码

void PSCInit(void)
[
    // 使能 GPIO 模块
    PSCModuleControl(SOC_PSC_1_REGS, HW_PSC_GPIO, PSC_POWERDOMAIN_ALWAYS_ON, PSC_MDCTL_NEXT_ENABLE);

    // 使能 EMIFA 模块
    PSCModuleControl(SOC_PSC_0_REGS, HW_PSC_EMIFA, PSC_POWERDOMAIN_ALWAYS_ON, PSC_MDCTL_NEXT_ENABLE);
]
void EMIFAInit(void)
[
    // 配置 EMIFA 相关复用引脚
    //AD7606PinMuxSetup();

    // 配置数据总线 16bit
    EMIFAAsyncDevDataBusWidthSelect(SOC_EMIFA_0_REGS,EMIFA_CHIP_SELECT_4, EMIFA_DATA_BUSWITTH_16BIT);

    // 选择 Normal 模式
    EMIFAAsyncDevOpModeSelect(SOC_EMIFA_0_REGS,EMIFA_CHIP_SELECT_4, EMIFA_ASYNC_INTERFACE_NORMAL_MODE);

    // 禁止WAIT引脚
    EMIFAExtendedWaitConfig(SOC_EMIFA_0_REGS,EMIFA_CHIP_SELECT_4, EMIFA_EXTENDED_WAIT_DISABLE);

    // 配置 W_SETUP/R_SETUP W_STROBE/R_STROBE W_HOLD/R_HOLD   TA 等参数
    EMIFAWaittimingConfig(SOC_EMIFA_0_REGS,EMIFA_CHIP_SELECT_4, EMIFA_ASYNC_WAITTIME_CONFIG(1, 2 , 1, 1, 2, 1, 0 ));
]

main
[    PSCInit();
    EMIFAInit();
while(1)
[emif_rbuffer[0] = ((short *)SOC_EMIFA_CS4_ADDR)[0];
]
]

通过逻辑分析仪看 RD 和CS4的波形,如下:



RD和CS 频率是3.2MHz, x 16bit = 6.4MB/s,不足以满足要求

我看到可以使用 EDMA的方式来对EMIF进行操作,总带宽可以到40MB/S
请问有相关的例程可以参考吗?谢谢

回帖(10)

李波

2019-1-24 09:54:55
我这里有个EMIFA的性能总结对比,你写的B是bit还是byte? 如果是bit还是可以达到的。



                                                                         http://processors.wiki.ti.com/index.php/Main_Page
Think Over Before Asking.
http://www.catb.org/~esr/faqs/smart-questions.html#goal
举报

李海龙

2019-1-24 10:03:42
引用: lifei639156 发表于 2019-1-24 16:34
我这里有个EMIFA的性能总结对比,你写的B是bit还是byte? 如果是bit还是可以达到的。

大 B , byte
不知 C6748  用EDMA  EMIF可以跑到 40MByte/s 吗?
举报

余少虹

2019-1-24 10:21:30
引用: 1188天琪 发表于 2019-1-24 16:42
大 B , byte
不知 C6748  用EDMA  EMIF可以跑到 40MByte/s 吗?

可以看一下下面测试的数值。
processors.wiki.ti.com/.../AM1x_Throughput_Measurements
举报

张强

2019-1-24 10:29:14
基于性能考虑,使用EDMA搬移并将异步时延全配置为最低是可以达到的,但是太不划算了,EDMA搬移EMIF数据就将你的互联交换总线带宽占用了将近50%,会严重影响你的其他子系统性能的.
建议upp,甚至同步EMIF将时延调为最低的方式都能好很多.
举报

更多回帖

发帖
×
20
完善资料,
赚取积分