本人接触多核DSP时间不长,目前正在调试一块C6670和FPGA Z7板卡。在做SRIO之间通信的时候,发现不论双方是配置成1X还是4X的模式,都只能是FPGA当发送端、DSP做接收端收数据(用N_WRITE with response操作),而DSP做发送端做N_WRITE with response操作给FPGA发送却无法使其收到数据。
查看了DSP的PLM Port(n) Path Control Register,发现不论我配置成1X 还是 4X 模式(用CSL语句操作),PATH_CONFIG位都是100,即Configuration 4 – 4 lanes, a maximum of 4 ports模式。
现在怀疑FPGA是通过DSP的Port0接收端给DSP发送了数据,但是DSP却不能用自己的Port0的Lane0发送数据,怀疑是配置的问题。
程序是同事用CSL语句写的,和官方给的Keystone教程不太一样,但都有对SRIO的寄存器进行配置操作。
有这样一个问题,PLM Port(n) Path Control Register这个寄存器在PATH_CONFIG位数都是只读(R)状态,不能直接写操作,那么我应该在哪些寄存器中进行操作才能配置成1X 仅Port0模式呢?或者利用哪些相关的CSL语句进行配置?
Shine:
建议先在DSP端和FPGA端做自环看能不能正确收发。
PER_SET_CNTL中的boot complete用来决定只读位是否可以改写。