Post Go back to editing

ADRV9026 DATA PRBS RESET

Hello, 
The jesd data link is correctly working but I want to add DATA PRBS verification.

With DATA PRBS I mean the jesd link must be working despite of the PHY PRBS. 

-) in the file libBccMaint/radio_drivers/adLib/devices/adrv9025/public/src/adi_adrv9025_data_interface.c row 2410, the error combination is the following

/* Create the errorStatus. Note that there is no inverted value flag specific to sample mode */
counters->errorStatus[0] = (prbsInvalidDataFlag << 1) & (prbsErrorFlag << 2);

Comparing this line with the phy prbs one suggests that the "&" AND condition is not right: can you confirm it has to be replaced with a "|" OR ? 

-) In the downlink direction (adrv9026 tx fpga rx) data prbs verification is correctly working

In the opposite direction (adrv9026 rx fpga tx) data prbs verification fails. 

--) Is the function adi_adrv9025_DfrmPrbsCountReset good for both PHY PRBS and DATA PRBS counter reset? 

Regards

  • Comparing this line with the phy prbs one suggests that the "&" AND condition is not right: can you confirm it has to be replaced with a "|" OR

    In case of sample data its wrong , it should be OR'ed 

    -) In the downlink direction (adrv9026 tx fpga rx) data prbs verification is correctly working

    In the opposite direction (adrv9026 rx fpga tx) data prbs verification fails

    Could you please let us know the steps how you are verifying this?

    --) Is the function adi_adrv9025_DfrmPrbsCountReset good for both PHY PRBS and DATA PRBS counter reset? 

    Yes adi_adrv9025_DfrmPrbsCountReset can be used to reset both.

  • Here the steps I follow to perform the data prbs verification:

    -) the jesd link is up and running,

    -) I switch on the prbs data generator within the fpga

    -) I switch on the prbs data verification within the ADRV9026 using

    SETUP:
        injectPoint=0;
        testDataSource=7;
        polyOrder=1;
        prbsCheck=1;
        // FRAMER:    
        frmTestDataCfg.framerSelMask = ADI_ADRV9025_FRAMER_0;
        frmTestDataCfg.injectPoint = injectPoint;
        frmTestDataCfg.testDataSource = testDataSource;
        adi_adrv9025_FramerTestDataSet(p9025device, &frmTestDataCfg);
        // DEFRAMER
        dfrmPrbsCfg.deframerSel = ADI_ADRV9025_DEFRAMER_0;
        dfrmPrbsCfg.polyOrder = polyOrder;
        dfrmPrbsCfg.checkerLocation = prbsCheck;
        adi_adrv9025_DfrmPrbsCheckerStateSet(p9025device, &dfrmPrbsCfg);
        adi_adrv9025_DfrmPrbsCountReset(p9025device);

    COUNTERS READ:
        adi_adrv9025_DfrmPrbsErrCountGet(p9025device, &prbsErrCounters);
            
        print results.....

    COUNTERS RESET:        
        adi_adrv9025_DfrmPrbsCountReset(p9025device);

    *) With fpga internal signal analyzer I can confirm the prbs data I send to the ADRV9026 (uplink path - failing) are the same as the one I receive from the ADRV9026 chip (downlink path - working).

    *) I have already tried to invert bits or bit endianess without success.

  • 4064.Deframer PRBS Checker.zip

    Can you use the above script for using Deframer PRBS checker ? 

  • I have taken a look at the code you provided me but it seems this code is intended for PHY PRBS, not DATA PRBS.
    -) The deframer checker location is configured as ADI_ADRV9010_PRBSCHECK_LANEDATA.

    -) in the comment "deframer link status, link will be down" you expect to work with the jesd link down (as it would be for phy prbs but no for data prbs)

    -) in the fpga prbs configuration you call "PrbsSerializerEnable" .... serializer doesn't sound good.

    My target is DATA PRBS, not PHY PRBS.

  • Yes. Data PRBS checker is not supported on our chip. If you need to use PRBS checker, then you have to do it on phy PRBS.

  • From my first message I clearly specify I needed DATA PRBS

    You also reply about the prbs counter reset


    So realizing at the 5th message the DATA PRBS verification is not supported is quite a surprise!

    Could you please double check the DATA PRBS verification is available?

  • Sorry for the confusion.

    Yes, data PRBS is supported in our chip. Since, the evaluation platform  ADS-9 that supports ADRV9026  doesnot have sample PRBS generator implemented in it, hence sample PRBS checker is not working for ADRV9026. If customer implements sample PRBS generator in their FPGA, then sample PRBS checker will work for our chip.

  • Hello, 

    Did you solve the problem. I have the same problem currently.

  • Is this still open? If so, can you help us with the latest update?