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.

UCD3138: Questions of ucd3138 PEC/CRC algorithm

Part Number: UCD3138

Hi TI experts,

Can UCD let customer change/define pec/crc algorithm? Can I use FW calculation to in stead of  HW calculation for PEC/CRC ? Do you have any sample code? thanks.

ex:

Case 1: (What UCD produced)

 [S] B0 Write 79 [S] B1 Read 00 00 D4 NACK [P]

 

Case 2: (Get it from a 3rd party PSU)

 [S] B0 Write 79 [S] B1 Read 00 00 81 NACK [P]

- Poly 0x07 is represent the caculation of f(x) = x^8 + x^2 + x^1 + x^0.

  • The PFC EVM code has its own PEC calculation code.  See the pmbus_insertion function in pmbus_common.c.  It's in the Drivers directory, under PMBus.  The PFC EVM code is here:

    I'm pretty sure that our PEC calculation is a perfect match for the PMBus spec.  We've been using it for a long time, including in point of load and telecom applications, which are much more likely to require true PMBus.  I suspect that the 0x81 you are getting comes because they are ignoring the B0 and 79.  If you but B10000 into our algorithm, you will get 0x81.  I can't really comment on the other results.