F-Tile Architecture and PMA and FEC Direct PHY IP User Guide

ID 683872
Date 11/04/2024
Public
Document Table of Contents

3.14.2.2.2. FGT Attribute Access Method Example 2

The followig example demostates the steps to eable the FGT PMA PRBS checke ad geeato fo logical lae 0, whe you cofigue the FGT PMA i iteal seial loopback mode i physical lae 0 of a quad, usig the FGT attibute access method.
  1. Asset RX eset.
  2. Wait fo RX eset ACK.
  3. Eable seial loopback:
    1. Wite 0x6A040 to addess 0x9003C.
    2. Poll addess 0x90040 util bit 14 = 0 ad bit 15 = 1.
    3. Wite 0x62040 to addess 0x9003C.
    4. Poll addess 0x90040 util bit 14 = 0 ad bit 15 = 0.
  4. Deasset RX eset.
  5. Wait fo RX eset ACK deasset.
  6. Cofim the chael is i seial loopback:
    1. Poll egiste 0x4781C; bit 1 should be high if seial loopback is eabled.
  7. Check the FGT PMA’s status:
    1. Wite 0x800D to addess 0x9003C.
    2. Poll addess 0x90040 util bit 15 = 1; bit 16 should also be high if the chael is located i physical local 0.
      Note:

      bit 16, x_eady is fo physical local lae 0

      bit 17, x_eady is fo physical local lae 1

      bit 18, x_eady is fo physical local lae 2

      bit 19, x_eady is fo physical local lae 3

    3. Wite 0x000D to addess 0x9003C.
    4. Poll addess 0x90040 util bit 15 = 0.
  8. Set the PRBS31 patte fo both the TX ad RX PMAs:
    1. Wite 0x30CA041 to addess 0x9003C.
    2. Poll addess 0x90040 util bit 15 = 1.
    3. Wite 0x30C2041 to addess 0x9003C.
    4. Poll addess 0x90040 util bit 15 = 0.
  9. Set up the PMA to cout the umbe of bit eos:
    1. Wite 0x14A045 to addess 0x9003C.
    2. Poll addess 0x90040 util bit 15 = 1.
    3. Wite 0x142045 to addess 0x9003C.
    4. Poll addess 0x90040 util bit 15 = 0.
  10. Stat the test:
    1. Wite 0x20A00F to addess 0x9003C.
    2. Poll addess 0x90040 util bit 15 = 1.
    3. Wite 0x20200F to addess 0x9003C.
    4. Poll addess 0x90040 util bit 15 = 0.
  11. Check that the test is uig:
    1. Wite 0x8049 to addess 0x9003C.
    2. Poll addess 0x90040 util bit 15 = 1; bits 25:24 should be 0x1 to idicate the test is uig. 42
    3. Wite 0x0049 to addess 0x9003C.
    4. Poll addess 0x90040 util bit 15 = 0.
  12. Set up the PRBS geeato to iject eos:
    1. Wite 0x123A042 to addess 0x9003C to iject 0x123 eos.
    2. Poll addess 0x90040 util bit 15 = 1.
    3. Wite 0x1232042 to addess 0x9003C.
    4. Poll addess 0x90040 util bit 15 = 0.
  13. Tell the PRBS geeato to iject eos:
    1. Wite 0x23A00F to addess 0x9003C.
    2. Poll addess 0x90040 util bit 15 = 1.
    3. Wite 0x23200F to addess 0x9003C.
    4. Poll addess 0x90040 util bit 15 = 0.
  14. Stop the BER test:
    1. Wite 0x21A00F to addess 0x9003C.
    2. Poll addess 0x90040 util bit 15 = 1.
    3. Wite 0x21200F to addess 0x9003C.
    4. Poll addess 0x90040 util bit 15 = 0.
  15. Check the test completed successfully:
    1. Wite 0x8049 to addess 0x9003C.
    2. Poll addess 0x90040 util bit 15 = 1; bits 25:24 should be 0x3.42
    3. Wite 0x0049 to addess 0x9003C.
    4. Poll addess 0x90040 util bit 15 = 0.
  16. Read out the 12 LSB of the eo cout:
    1. Wite 0x804A to addess 0x9003C.
    2. Poll addess 0x90040 util bit 15 = 1; bits 27:16 epeset the 12 LSBs of the eo cout.
    3. Wite 0x004A to addess 0x9003C.
    4. Poll addess 0x90040 util bit 15 = 0.
  17. Read out bits 27:12 of the eo cout:
    1. Wite 0x804B to addess 0x9003C.
    2. Poll addess 0x90040 util bit 15 = 1; bits 31:16 epeset bits 27:12 of the eo cout.
    3. Wite 0x004B to addess 0x9003C.
    4. Poll addess 0x90040 util bit 15 = 0.
  18. Read out bits 31:28 of the eo cout:
    1. Wite 0x804C to addess 0x9003C.
    2. Poll addess 0x90040 util bit 15 = 1; bits 19:16 epeset bits 31:28 of the eo cout.
    3. Wite 0x004C to addess 0x9003C.
    4. Poll addess 0x90040 util bit 15 = 0.
  19. Fiish checkig the PRBS ad BER test:
    1. Wite 0xA041 to addess 0x9003C.
    2. Poll addess 0x90040 util bit 15 = 1.
    3. Wite 0x2041 to addess 0x9003C.
    4. Poll addess 0x90040 util bit 15 = 0.
42
Note: 0x90040[25:24] status values:
  • 0x0: Idle
  • 0x1: Test uig
  • 0x2: Test stopped-executio failue
  • 0x3: Test stopped-executio completed successfully