TLK6002 的PRBS 的产生和检测
我用TLK6002的PRBS TEST产生所需要的码型后,怎么进行通道的同步判别?还有就是系统复位后,我的我的误码计数寄存器 ERROR_COUNT为什么读出来总是0XFFFF,而其他的寄存器能够读出系统的默认值(MDIO接口可以正常的写入和读出)?
你好,
在设置7.13 TP_GEN_EN为1 = Activates test pattern generation selected by bits 7.10:8
以及7.10:8 TEST_PATTERN_SEL[2:0]为
101 = 27 - 1 PRBS pattern
110 = 223 - 1 PRBS pattern
111 = 231 - 1 PRBS pattern (Default 3’b111)
后就没有再进行8b10b了,
你需要设置7.12 TP_VERIFY_EN 0 为 1 = Activates test pattern verification selected by bits 7.10:8
才能 在14.15:0 ERROR_COUNTER[15:0]读出正确的误码.
此问题建议发布到接口/时钟版面
另外想了解下贵公司所在城市,谢谢!
感谢你的答复,你所说的我已经设置过了,不知道是不是我的电路设计有问题,现在还在查,如果可以的话,能不能给一段程序我参考一下,包括MDIO驱动和一段已经调试过的TEST PATTERN GENNERATION AND VERIFICATION。我的程序设计是,首先是系统复位,然后你所说的进行设置,后来调试的时候我在每一次进行寄存器写入操作后进行一次读操作,发现数据是正常写入寄存器了,可以读出来。然后用5.12 TP_STATUS标志位判断是否接收while(TP_STATUS==0);。在这里程序就一直停在这里了。不能正常接收。后来我修改了一下寄存器2,对里面的加重和去加重进行设置,然后才能正常接收。后来又出现一个问题,就是误码计数寄存器读出来基本是0或者全是1,当我有意扭动电缆的接口时,有时可以读出来有误码,但是这种误码不能连续变动,我的问题就是,当我可以扭动电缆接口线时,当出现一次误码后,不在扭动电缆,此时应该可以连续不断地读出误码数,但实际结果是并没有连续读到。
TEST PATTERN GENNERATION AND VERIFICATION相关内容在手册83页就有,其实修改相关寄存器即可.
4.19.2 PRBS TEST GENERATION AND VERIFICATION PROCEDURES
Use one of the following procedures to generate and verify the respective PRBS test patterns. It is
assumed that an appropriate external cable has been connected between serial outputs and serial inputs.
No external parallel side connections are necessary.
4.19.2.1 2
7
-1 / 2
23-1 / 2
31-1 PRBS Register Based Testing
• Note: PRBS TX does not support eighth rate mode.
• Reset Device:
– Issue a hard or soft reset (RESET_N asserted -or- Write 1 to 0.15 GLOBAL_RESET)
• Select SERDES Reference Clock Input:
– If REFCLK_0_P/N used – Ensure REFCLK_A_SEL (or REFCLK_B_SEL if channel B is used)
primary input pin is low
– If REFCLK_1_P/N used – Ensure REFCLK_A_SEL (or REFCLK_B_SEL if channel B i
TI的EVM使用的是一个sonic MDIO软件和一个MDIO接口板,你是在哪个城市.如果需要该软件的支持,建议你与当地代理技术支持联系.建议仔细看手册4.18/19
http://www.ti.com/lit/ug/sllu132/sllu132.pdf
按照您所说的,我还是有个地方没看明白:Wait until either AGC_LOCKED asserted or 250M UI,这句话里是叫我延时250M UI吗?250M UI 是个什么意思?
一般你等他AGC_LOCKED就可以