各位TI工程师,各位DSP大牛好!
我在调试我们公司研制的两块板卡之间SRIO通信的时候遇到这样的问题:板卡A上有两个C6657,一个SRIO交换机,还有FPGA。板卡B上也有两个C6657。这两块板卡的DSP的SRIO端口1都连到交换机。交换机采用的是CPS-1616。我们想跑X1,2.5G的速度。目前板卡A上两个DSP都可以通过维护包去配置交换机,且本板内两个DSP之间通过SRIO交换机数据传输通信也正常。目前主要问题是,两块板卡插到底板上板间通信异常。现象是:板卡A的DSP配置交换机时都能扫描到板卡B的所有DSP,且板卡B的DSP上SRIO的端口状态寄存器SPx_ERR_STAT寄存器显示也连接正常,值为0x00000002。但是板卡A发送32KB的数据,板卡B只能接收到256B的数据,然后该寄存器显示0x00030006的错误。请问这有可能是什么问题?
后来,我们试着使用板卡B上的DSP去配置板卡A上的CPS-1616交换机。发现在SPx_ERR_STAT寄存器正常,值为0x00000002的情况下,把SPx_LM_REQ寄存器设置为InputStae状态去请求交换机时,SPx_LM_RESP寄存器的值为0x00000005,报错,维护包响应出错。请问在SPx_ERR_STAT状态器显示LINK正常的情况下,为什么维护包会出错啊,不能配置交换机,这有写什么原因会导致啊?
q zhao:
你好,我用的cps1848做srio交换机,想测试dsp6678和fpga得通信。有个问题想向您请教,dsp的程序您用的是官方例程吗?如果是的话都是做了哪方面的修改啊?那个例程可以用核1收数,用核0发数吗?
cps方面设置的端口dest id路由表,就是每个终端的device id是吗?举个例子,dsp接在cpsport 0上,那port里面的dest id就是另外一端的device id吗?谢谢
user3604554:
回复 q zhao:
是用的官方的MCSDK里的例程。修改就是基本的ID配置,PPL配置等。有没有大神来解答下我的问题啊!!!
user3604554:
回复 user3604554:
顶起来,急等各位大神来解惑啊!!
user4874797:
回复 user3604554:
不知您的问题得到解决没?我的问题与你类似,不知是否方便交流下,我的电话15811311151,QQ:273196088
user4874797:
回复 user3604554:
不知您的问题得到解决没?我的问题与你类似,不知是否方便交流下,我的电话15811311151,QQ:273196088
user3604554:
回复 user4874797:
你好,我们问题根本原因没找到。但是我们通过硬件改版,把CPS1616换为CPS1848芯片,其它没改。软件没改动,这问题就没有出现了,现在板间通信也正常了!