测试板型号:TMDXEVM6678LE
测试程序:STK-SRIO例程
一、loopmode:digital loopback
1. 当 serdes_cfg.commonSetup.inputRefClock_MHz=312.5; serdesLinkSetup.linkSpeed_GHz=5时
程序在如下三个path下
internal_path[]={SRIO_PATH_CTL_1xLaneA,SRIO_PATH_CTL_2xLaneAB,SRIO_PATH_CTL_4xLaneABCD}均可以正常运行。
2.当 serdes_cfg.commonSetup.inputRefClock_MHz=156.25; serdesLinkSetup.linkSpeed_GHz=2.5时
SRIO初始化失败,程序总是执行到 Wait_SRIO_PLL_Lock();
请问这是什么问题?对于6678EVM inputRefClock和linkSpeed是有设置限制吗?
二、loopmode:serdes loopback
DEBUG:
[C66xx_0] SRIO_SERDES_LOOPBACK test start............................................
Initialize DSP main clock = 100.00MHz/1x10 = 1000MHz
Enable Exception handling...
SRIO link speed is 5.000Gbps
SRIO path configuration 1xLaneA
SWRITE from 0x10802200 to 0x1080a200, 8 bytes, 4259 cycles, 15 Mbps, completion code = 0
data mismatch at unit 0, 0x1 (at 0x10802200) != 0xffffffff (at 0x1080a200)
SWRITE from 0x10802200 to 0x1080a200, 16 bytes, 4187 cycles, 30 Mbps, completion code = 0
SWRITE from 0x10802200 to 0x1080a200, 32 bytes, 4371 cycles, 58 Mbps, completion code = 0
SWRITE from 0x10802200 to 0x1080a200, 64 bytes, 4580 cycles, 111 Mbps, completion code = 0
data mismatch at unit 0, 0x4 (at 0x10802200) != 0xffffffff (at 0x1080a200)
SWRITE from 0x10802200 to 0x1080a200, 128 bytes, 5094 cycles, 201 Mbps, completion code = 0
data mismatch at unit 0, 0x5 (at 0x10802200) != 0xffffffff (at 0x1080a200)
SWRITE from 0x10802200 to 0x1080a200, 256 bytes, 6092 cycles, 336 Mbps, completion code = 0
data mismatch at unit 0, 0x6 (at 0x10802200) != 0xffffffff (at 0x1080a200)
SWRITE from 0x10802200 to 0x1080a200, 512 bytes, 8286 cycles, 494 Mbps, completion code = 0
data mismatch at unit 0, 0x7 (at 0x10802200) != 0xffffffff (at 0x1080a200)
程序运行到KeyStone_SRIO_wait_LSU_completion;
请问这是什么问题?
三、loopmode:no loopback (只用了一块板子)
当serdes_cfg.commonSetup.inputRefClock_MHz=312.5; serdesLinkSetup.linkSpeed_GHz=5时,
SRIO初始化失败,程序总是执行到KeyStone_SRIO_Init;
if(srio_cfg->blockEn.bLogic_Port_EN[i])
{
while(0==(gpSRIO_regs->RIO_SP[i].RIO_SP_ERR_STAT&
CSL_SRIO_RIO_SP_ERR_STAT_PORT_OK_MASK));
}
查看寄存器值
bLogic_Port_EN[0,1]=0 bLogic_Port_EN[2,3]=1;
gpSRIO_regs->RIO_SP[2].RIO_SP_ERR_STAT=1;
这是因为我只用了一块板子的原因吗?