This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Please tell me which register value can be changed to enable test BIST?
Can I test for 24 hours? How to verify the test results?
Hello,
Please see section 7.5.12 of the 954 datasheet for all the details on BIST operation including how to enable the test and read back the results. You can run the test for however long you would like (24 hr is acceptable).
Best Regards,
Casey
I did the BIST test use TI tools yesterday. Can you explain the mean for me?
The Result as below.
# *** Running 953_954_BIST.py ***
Devices Reset
('954 Device ID (0x00):', '0x60')
('953 Device ID (0x00):', '0x30')
------------------------------------------------------------------
('Reciever Lock Status (0x04):', '0xcf')
Should read 0xDF
------------------------------------------------------------------
('Read BCC Error Status (0x79):', '0x0')
Consult Register 0x79 on the SER for more information
------------------------------------------------------------------
('Pre-Error Link Status of 953 (0x52):', '0x45')
Should read 0x45 = RX Lock Detect, HS PLL Lock, Link Detect
------------------------------------------------------------------
('BIST CRC Error count (0x54) on 953 before forced error.', '0x0')
------------------------------------------------------------------
('Read BIST CTL register (0xB3) Before BIST ENABlED', '0x8')
Should read 0x00 or 0x08
('Read BIST CTL (0xB3) register After BIST ENABLED', '0x1')
Should read 0x01
------------------------------------------------------------------
('Read BIST Lock Status Change of 954 RIGHT AFTER BIST enabled (0x4D):', '0x13')
Read to clear BIST enable Lock Status Change.
('Read Post-BIST Lock Status Change of 954 RIGHT BEFORE BIST disabled (0x4D):', '0x3')
Should read 0x03, If lock status changed during BIST, will read 0x13
------------------------------------------------------------------
('Post-Error Link Status of 953 (0x52):', '0x4d')
Should read 0x4D = RX Lock Detect, HS PLL Lock, Link Detect, and BIST CRC Error
('Reciever Lock Status (0x04):', '0xcf')
Should read 0xDF
------------------------------------------------------------------
('BIST CRC Error count (0x54) on 953.', '0x1')
('Parity Error count MSB (0x56) on 954.', '0x0')
('Parity Error count LSB (0x55) on 954.', '0x0')
------------------------------------------------------------------
*** Script execution time 0 min 15.614 sec ***
Hello Be,
Currently the script sets the BIST delay is set as 10sec. (line 106 shown below)
You can set this value inside time.sleep() to whatever you want. For example, to put 24 hours = 24 x 60 x 60 = 86400, use
time.sleep(86400)
You can first try a few low numbers to check it is working for longer period say 60 (1 minute), 300 (5 minutes), etc and then give 24 hour run.
Thanks,
Vishy
Hello Be,
Regarding script results you see:
a) At the top the script defines 954 and 953 addresses (Lines 24 and 25). As explained in the comments at the end of the line, check it matches your board addresses.
b)Confirm device id printed out in lines 44 and 45 are correct for your setup
c) Line 55 printed out should be 0xDF to confirm there is lock
Like above you can verify all the prints correctly reflect the execution. You can read more on the DS as well regarding BIST.
Thanks,
Vishy
Thanks a lot.
So ,Are these below sentence error statistics?
('BIST CRC Error count (0x54) on 953.', '0x1')
('Parity Error count MSB (0x56) on 954.', '0x0')
('Parity Error count LSB (0x55) on 954.', '0x0')
A nother question
Can I use TI tools(Analog LaunchPAD) to issue BIST test command, then disconnect from PC. after 24 hours, use soft tools to connect with device, and then check register value to determine how many errors have occurred?
Which register represents the number of errors?
Hello
>>>>Are these below sentence error statistics?
('BIST CRC Error count (0x54) on 953.', '0x1')
('Parity Error count MSB (0x56) on 954.', '0x0')
('Parity Error count LSB (0x55) on 954.', '0x0')
Regarding ('BIST CRC Error count (0x54) on 953.', '0x1'):
Please see line 133 of the script also shown below:
print ("BIST CRC Error count (0x54) on 953.", hex(board.ReadI2C(UB953, 0x54, 1))) #0x54 is BIST ERR CNT
0x54 is BIST_ERR_CNT register and its values is read and printed out by the above line. Note 0x54 is serializer register that's why script makes a read to UB953 and register 0x54. Also, note BIST error count read out is 1 because the script for testing purpose forces 1 error in line 103
Similarly regarding
('Parity Error count MSB (0x56) on 954.', '0x0')
('Parity Error count LSB (0x55) on 954.', '0x0')
Please see script lines 134 and 135
print ("Parity Error count MSB (0x56) on 954.", hex(board.ReadI2C(UB954, 0x56, 1))) #0x56 is number of Parity error 8 most significant bits
print ("Parity Error count LSB (0x55) on 954.", hex(board.ReadI2C(UB954, 0x55, 1))) #0x55 is number of Parity error 8 least significant bits
0x56 and 0x55 are parity error msb/lsb registers of the deserializer. As read out parity error count is 0
>>>>Which register represents the number of errors?
As explained above CRC error is register 0x53 of device 953. Please check the data sheet more details. Similarly read about parity error counter in 954 data sheet.
>>>>Can I use TI tools(Analog LaunchPAD) to issue BIST test command, then disconnect from PC. after 24 hours, use soft tools to connect with device, and then check register value to determine how many errors have occurred?
No. You have to leave the PC connected.
Thanks,
Vishy