TI中文支持网
TI专业的中文技术问题搜集分享网站

C6455 SRIO 4px1模式相关寄存器配置

各位专家,最近在调试c6455芯片srio接口,网上找到的csl库demo程序用的是1px4模式,我们的实际应用打算使用4px1模式。

按照srio用户手册上2.3.13.2 PLL, Ports, and Data Rate Initializations上所述,

 

if (srio4p1x_mode){
rdata = SRIO_REGS->PER_SET_CNTL;
wdata = 0x0000014F; //4p1x
mask = 0x000001FF;
mdata = (wdata & mask) | (rdata & ~mask);
SRIO_REGS->PER_SET_CNTL = mdata ; // enable PLL
}
else{
wdata = 0x0000004F; // enable PLL, 1p4x
rdata = SRIO_REGS->PER_SET_CNTL;
mask = 0x000001FF;
mdata = (wdata & mask) | (rdata & ~mask);
SRIO_REGS->PER_SET_CNTL = mdata ; // enable PLL, 1p1x/4x
}
//INIT_MAC0
if (srio4p1x_mode){
SRIO_REGS->SP_IP_MODE = 0x4400003F; // mltc/rst/pw enable, clear
}
else{
SRIO_REGS->SP_IP_MODE = 0x0400003F; // mltc/rst/pw enable, clear
}
SRIO_REGS->SERDES_CFG0_CNTL = 0x00000013;
SRIO_REGS->SERDES_CFG1_CNTL = 0x00000000;
SRIO_REGS->SERDES_CFG2_CNTL = 0x00000000;
SRIO_REGS->SERDES_CFG3_CNTL = 0x00000000;
SRIO_REGS->SERDES_CFGRX0_CNTL = 0x00081121 ; // enable rx, half rate
SRIO_REGS->SERDES_CFGRX1_CNTL = 0x00081121 ; // enable rx, half rate
SRIO_REGS->SERDES_CFGRX2_CNTL = 0x00081121 ; // enable rx, half rate
SRIO_REGS->SERDES_CFGRX3_CNTL = 0x00081121 ; // enable rx, half rate
SRIO_REGS->SERDES_CFGTX0_CNTL = 0x00010821 ; // enable tx, half rate
SRIO_REGS->SERDES_CFGTX1_CNTL = 0x00010821 ; // enable tx, half rate
SRIO_REGS->SERDES_CFGTX2_CNTL = 0x00010821 ; // enable tx, half rate
SRIO_REGS->SERDES_CFGTX3_CNTL = 0x00010821 ; // enable tx, half rate

即需要对PER_SET_CNTL 和SP_IP_MODE 寄存器进行配置,但是现在出现的情况是软件操作SP_IP_MODE 寄存器会出现读写不一致,想问一下:

1  c6455芯片是否可以通过硬件管脚来配置srio工作模式(4px1还是1px4)?

2 上述SP_IP_MODE 寄存器在读写操作上有什么特殊之处?

3 是否有经过验证的4px1模式demo程序?

谢谢!

 

 

chengfei kou:

遇到同样问题,求解答!

JIAYING SUN:

现在是同样的问题 写SRIO_REGS->SP_IP_MODE   0x0400003F 读出数据为0x0000002A

求解答

join join:

回复 JIAYING SUN:

你好,这个问题有结果没有?

join join:

回复 JIAYING SUN:

你好,请问你们咋么解决的这个问题?望不吝赐教。我的邮箱wendaotianya0828@126.com

谢谢各位

赞(0)
未经允许不得转载:TI中文支持网 » C6455 SRIO 4px1模式相关寄存器配置
分享到: 更多 (0)