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.

C6455和C6454的差别?代码移植问题

你好,请教以下两个问题

前提:我在C6455上调试的代码,现在在C6454上运行出现了问题

1,   C6454和C6455的代码是否兼容?代码(在C6455上调试没问题)在C6454上使用EMIF和DMA读取fpga端图像时,图像是花的,但在C6455上是正常的

2,   EMIF走线是否对数据传输是否有大的影响,布板应该注意一些什么地方?

  • Jun  Ma:

    你好!

    是同一个设计的电路板上还是不同的电路板?C6455和C6454的频率是一样的吗?不知是否是DDR2 EMIF。EMIF走线可能影响数据传输。是否可以脱离图像进行一些基本数据访问测试看看数据是否错误,有无规律。

    布板请参考下面几个链接文档。

    focus.ti.com/.../getliterature.tsp

    focus.ti.com/.../getliterature.tsp

    谢谢!

  • Yu:

       你好!

     两个电路板是有差别的 , 主频一样,同为1G,我们对程序的修改仅仅是L2 ram空间大小(c6454为1MB,C6455为2MB)。

  • 请先确认,代码是否可以兼容,谢谢

  • Jun Ma,

    你好!

    从代码应该是兼容的,link cmd文件应该有区别。

    谢谢!

  • Jun Ma,

    你好!

    可能需要先从硬件区别开始查。是否可以脱离图像进行一些基本数据访问测试看看数据是否错误,有无规律。

    谢谢!

  • Yu Liu您好,现在我们用基本的数据进行测试,结果无误,但是接相机时,出现错误。我先把我们的构架介绍如下:

    C6454前端输入是通过EMIF接一个异步fifo,DSP通过gpio中断,利用EDMA来读取数据。我们测试时,如果将异步fifo的数据用一个累加数进行测试,dsp获取的数据是正确的。但是如果fifo的输入为相机数据时,dsp接收数据出现行错乱。我们已经证明相机没问题。

    在c6455的开发板上运行代码时,是没有问题的,经我们查证,c6454和c6455的区别主要是主频和L2ram,我们采用的是和c6455相同主频 1ghz的c6454,L2ram的空间映射也已经修改。因此排除代码问题。

    硬件上,为何测试数据无问题,而相机数据有问题?情况比较蹊跷,想问下有没有好的建议和测试方法。谢谢!

  • depeng kong:

    您好!

    你们证明相机没有问题是指相机传输的数据没有问题,不知道是否时序配合上也没有问题?感觉像配合上的问题。

    是否有EDMA读FIFO是没有数据或者EDMA读数据不够及时导致FIFO满数据丢失的问题?

    是否能够让相机持续输出一个方格图像然后在接受侧观察问题。

    另外,EDMA是否使用了FIFO寻址模式?是否可以改为固定地址模式?参见下面链接勘误表中的“2.1.4 EMIFA: EDMA FIFO Addressing Mode Should Not Be Used When Reading from EMIFA”。

    focus.ti.com/.../getliterature.tsp

  • Yu Liu:

    您好,非常感谢您细致的回答。

    EDMA之前已经根据勘误表中的说明进行设置,而且程序已经在c6455开发板上验证通过。我们自制的硬件板也是仿照开发板来做的。

    因此,我们先考虑到出现错误无非有两个原因,一是c6454和c6455芯片的差别,二是我们硬件的问题。

    今天发现,我们拿到的c6454是720MHZ主频的,和C6455(1G)的主频不一样。我想先把主频调整。输入时钟为50MHZ,配置如下:

    PLLM_val =    14;//14*50=700MHZ,之前C6455为20*50

    PREDIV_val =  1;//预分频为1

    PLLDIV4_val = 8;//sysclk4 8分频,与之前C6455开发板相同,用作EMIF时钟

    PLLDIV5_val = 4;//sysclk5 4分频,与之前C6455开发板相同

    问题1:直接调整PLLM是否合适?

    问题2:由于异步fifo输出时钟接EMIF时钟,由于修改主频后,PLLDIV4_val 分配后时钟也会改变,此时钟大小是否会导致数据错误或者时序配合错误?

    其中,异步fifo输入为 8位图像数据,深度为2048,输出为32位接EMIF,通过计数器满1280后给中断到DSP,DSP通过32EMIF,EDMA读取数据。

  • 调整PLLM应该没有问题。主频导致的时钟改变需要查FIFO的资料确认时序配合问题。在你的设计中1280满了之后进行EDMA搬运时是否还有新的数据进入FIFO。如果有的话,还有考虑数据取走的速度。

  • depeng kong:

    您好!

    请问你的问题最后解决没有?是否还需要进一步支持?

    谢谢!

  • depeng kong:

    您好!

    请问你的问题最后解决没有?是否还需要进一步支持?

    谢谢!

  • Yu Liu :

        您好,非常感谢您的建议,经测试,初步估计是emif走线问题,现在我们重新做了一版硬件,待测试后,再来确认。

  • depeng kong:

    您好!

    感谢您的更新!