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.

dsp srio

各位专家:

        最近我在调试FPGA与DSP的SRIO联调,遇到一些问题,请高手赐教!谢谢!

        FPGA使用的是SPARTAN6系列芯片,DSP使用的是C6657,硬件环境为自己开发的板子,两片芯片在同一块电路板上,两者之间的TX与RX直接连线互接了。DSP使用的软件环境是CCS V5.1,现将我调试中疑惑及遇到的问题列下来,请FAE或是高手赐教,谢谢!

1。根据datasheet,C6657的SRIO参考输入时钟最小只能是156.25M,但我以前调试过C6455的SRIO,其参考输入时钟有很多种,而我需要的是125M,请问在C6657上,SRIO的参考输入时钟不能用125M吗?C6657的datasheet只是没有列出多种参考输入时钟吧?

2。FPGA作为主设备,其包信号中的DESTID应该要与DSP的DEVICEID一致的,在参考例程中DEVICEID是如何设置的?

3。FPGA向DSP发数据,在偏移地址C014、C018、C01C寄存器中可以看到,DSP解出的包的ADDR,ID和包类型,但查看地址空间未接收到数据啊?以前调试C6455与FPGA通信的时候,当FPGA发送包信号过来,DSP会将数据存储到相应的地址空间的。

4。查看SP_ERR_STAT寄存器,其PORT OK被置1了,是否是不正常的?

5。SP_ERR_STAT寄存器中,其input error-stopped位是0,是否表示DSP的SRIO的输入端口是描述的输入错误停止,故DSP只能接收一个包信号?我现在调试中发现,DSP只能接收到一次信号,当FPGA重新发送包信号(改变地址),从偏移地址C014、C018、C01C寄存器中无法看到解出正确的地址了。

6。发现DSP接收FPGA传过来的包信号后,解出包头Header了,因为可以观看到地址,ID号,包类型等信息,所以我怀疑DSP解出了包头后因为ID号等不匹配,所以认为不是自己的包,所以MAU控制DMA不将数据从RX FIFO中搬运到对应地址的空间中(实验中我需求将数据放入L2空间中)。经看datasheet,我发现MAU的一个寄存器SUPRVSR_ID的作用是,当接收的包的SOURCEID只有当与SUPRVSR_ID配置相同时,才认为是DMA的包,才进行数据搬运,但我将SUPRVSR_ID设置与SOURCEID一致后发现,DSP仍不能正确接收数据。

以上问题,请求高手们赐教!非常感谢!

  • 1. SRIO的参考输入时钟不能用125M。
    2. 请问参考的是哪个例程?
    4. Port OK表示两端能link了。
    3,4,5 先做一下FPGA,DSP端各自的loopback是否能成功?看一下基本配置是否正确,如果各自能自环成功的话,再连接到一起,先看是否port ok能link起来,一步步检查,便于定位问题。
x 出现错误。请重试或与管理员联系。