This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

F28377D EMIF to SDRAM

Other Parts Discussed in Thread: CONTROLSUITE

谁有EMIF 外接SDRAM 的例子吗?可不可以发给我一份呢?  很困惑不知道怎么对SDRAM 进行读和写操作。

  • 同问。 看了28377D的资料,如果外接SDRAM、Flash,那么EMIF总线会冲突吗?因为GPIO好像只能在一个时间配置为SDRAM的Bank1、Bank0,但是又跟异步总线公用了Ea19

  • TI的技术支持感觉不是很成熟。虽然公司很大,很多年了。各个模块的范例不足严重不足,极大的影响开发效率。对于赶时间的项目,还是考虑熟悉的公司、片子更恰当。如果只是个人玩玩,学习新技术那就无所谓了。

    这个芯片的SDRAM配置我到现在也没搞清楚。能够读写(数据在SDRAM里不会丢失),但是似乎读写都只是影射到了某1个物理地址,也就是  所有的地址 的内容读写完全一样。在US的论坛上post了问题,有TI职员回了下,但显然没有能够解决问题。搜索了下对应关键字,多数的相关提问居然是零回复。

    目前在网上没有任何人声称并贴出了使用28377D读写SDRAM的例子程序,所以同学你先要担心的是能不能读写SDRAM,然后再考虑总线冲突问题。

  • Hello King,

    我看见你在US 论坛的帖子了,US 论坛里面那个“F28377D EMIF to SDRAM” 帖子也我post的。我发那个帖子都没有人理我。 我应该没有遇到你说的都映射到一个物理单元的问题。 我当时就简单写一串数字然后读出来。感觉没有问题就放在那边没管它了。我这最近应该会继续做这个project,随时欢迎探讨问题。 Thanks.

    Xiaowei

  • Hi Xiaowei,

    你的那种读写方式有问题,因为cpu内部地址线宽度不足,emif起始地址0x8000,0000的最高位是1,也就是第31位是1,你如果直接读写,实际上cpu操作的时候会忽略溢出的地址位,这样就影射到cpu内部的内存了。

    我们这边对这个芯片的应用开发目前在冻结中,只是关注状态,等待问题解决。(在研究更强力的C6000系列,目前看似可以用)

    我应该是最后有跟贴发了个链接,TI的那人说下月中旬会更新出来example。具体的读写方法,你也可以参考我贴出来的那个函数,又或者需要dma读写的话,我这可以分享下。互相帮助罢。

    好运。

    King

  • Hello King,

    谢谢你的回复。关于这个“因为cpu内部地址线宽度不足,emif起始地址0x8000,0000的最高位是1,也就是第31位是1” 的问题,datasheet有说吗? 可以告诉我在哪里可以找到吗?我们用F28377D是因为它有16bit ADC。 期待TI 的例子早点发布。

    Xiaowei

  • Hi Xiaowei,

    Datasheet里面有说,但是这个肯定平时注意不到。几百页的英文文档,国人哪里读得过来。据说16位的内置ADC存在硬件设计问题,US论坛里有讨论,需要在新版本中改正,不然没法实用。新的硬件版本应该是年底前发出。

    DMA内部地址实际宽度是32位,据说在datashee里面描述错误,写成了跟cpu一样的地址宽度。在US论坛里有提到并更正,说可以使用DMA读写EMIF。

    这些东西我也只是有印象了,因为1个月都没管那些了。现在是期待C6000的硬件制版没有问题,能够直接应用。明天就能拿到PCB了,无量天尊,佛祖保佑,阿门。

    反正很多问题都在US的论坛上能看到。有问题就在那边多搜下下,看看。

    Bests,

    King

  • Good Morning King,

    我拿到的开发板16位ADC是有问题,每次都要用跳线hard reset 才能进入16位模式。我计划是把ADC 结果直接DMA 移到EMIF, 所以16-bit DMA 就可以了。我再好好浏览一下论坛吧。 看了你的帖子才知道一定要用__addr32_write_uint32()读写EMIF。 感觉太混乱了,什么都没有预想的那么顺利。按理说TI的DSP 应该是很不错的, 祝你的C6000一切顺利。

    Regards,

    Xiaowei

  • 晚上好 Xiaowei,

    嗯,这就是这个芯片的硬件问题,前面提到的新版本硬件会解决这个问题。

    把ADC结果直接DMA移到EMIF应该是可行的吧,我忘掉了。前面有提到,DMA是可以直接访问EMIF的。

    我的同事已经拿到了EMIF的配置范例,明天会在我们自制的开发板上验证,但愿没问题。毕竟不知道这个范例程序是用的什么SDRAM。

    在用的这个C6000是好几年前推出的,相对比较成熟,已经从理论上验证了我们所关心的模块没有问题。顺便提下,我们也在用8-channel-16bit ADC,使用的是uPP读入数据。唯一问题是,TI的这个DSP号称FFT速度极快,但是我们自己run样板程序、各种优化,得出的结果却要慢10倍,很让人郁闷。原本预测一块C6000就够用了,因此我们修改了系统设计,并且很可能后面还要再加块芯片进行其他数据处理。

    也祝你一切顺利,并祝不用加班:)

    Bests,

    King

  • 不知道,老兄这个问题有答案没?我最近在用这片子。有例程的话可以共享么?

  • 现在的controlSUITE 里面有好多例子了。你可以参考那里面的例子,有问题欢迎随时讨论。

  • 例程都是测试例程,没有硬件连接的,希望可以进一步交流,可否加我QQ:1287355471

  • 请查看你的新浪邮箱