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.

TMS570LC4357 芯片的EMIF 口连了一个MRAM,一个SDRAM,一个FPGA芯片,现在每个模块的操作都异常。

Other Parts Discussed in Thread: HALCOGEN

连接的3个模块,数据线都是16bit,共用;每个模块的地址线数量不一样。功能线部分共用。对3个模块占用的地址进行读写,都无法写入。

pin引脚使用haicogen配置的,核对过没有问题;

MRAM使用CS2片选,读写对应地址时,观察cs2,oe,we 信号,波形无变化;

fpga使用CS3片选,读写对应地址时,观察cs3,oe,we 信号,波形无变化;

sdram 使用的HALCoGent自动生成的初始化函数systemInit();  ->  emif_SDRAM_StartupInit(); 这个函数是按照手册上的B流程进行初始化的。但是初始化完成 EMIF_CLK 引脚上没有始终输出,我配置的是75Mhz的时钟, 对写CS0对应的地址空间时,时钟脚上也没有信号输出。这是怎么回事?还有,SDRAM初始化时需要对 SDRAM的模式寄存器进行初始化操作,这个是怎么进行的?

  • 建议您最好对3个模块来分别测试,如SDRAM,在C:\ti\Hercules\HALCoGen\v04.07.01\examples\TMS570LC43x下就有相关的例程

    example_emif_sdram

    另外您是否有通过配置HALCoGen上的PINMUX选项卡,使所需的EMIF信号在分配的端子上输出?

    具体的话,您可以看一下 www.ti.com.cn/.../spnu563a.pdf

    6.5.2 Control for other EMIF Outputs 以及 21.2.4 EMIF Signal Multiplexing Control

    并对照 I/O Multiplexing and Control Module