You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 33 Next »

General FELIX Documentations

Related DAQ/Electronics Documentations

B33 Integration FELIX Setup


B84 FELIX Test Setup 



FELIX Configuration Process

  1. Assemble the test stand according to figures from the "B84 FELIX Test Setup" section:
    1. Plug MTP12_CH1_STX cable where X = 1, 2, 3 or 4 (labeled as "1", "2", "3" or "4") into the VLDB's RX. We at SLAC use X = 1.
    2. Plug mini-HDMI in G0-LinkX on VLDB, where X = 0, 2, 4 or 6. The X will further be used as "TX" parameter in YARR configs.
    3. Use J77 for mini-HDMI and J93 for mini-DP on the interface board (look into the board's schematics for the reason of the choice). In general, mini-HDMI and mini-DP ports standing against each other are coupled.
  2. Configure VLDB (this part to be updated).
  3. Update/install the most recent Felix firmware (assuming Vivado Lab is installed, and one has access to GUI):
    1. Plug in a JTAG-USB cable in a correct port on the FLX-712 board.

      SLAC FLX-712 Board

      ANL FLX-712 Diagram

      Xilinx Dongle:

      No LED light: PC doesn't see the dongle. Check drivers.

      Yellow LED: No target. Check JTAG connections.

      Green LED: Good! Can Proceed.

    2. Get the .bit (directly upload v4.9).
    3. In Vivado Lab detect the target, use the .bit file to configure.
    4. Reboot the PC.
    5. Unplug the MTP12-CH1-TXA cable from the VLDB, make sure you observe red light coming from the wire, plug it back to the VLDB's RX. You can use TXA ch1 through ch4 cables.
    6. If there is no GUI and/or Vivado on the Felix server, one may use an external PC to configure the FLX-712 board: keep the board in the server, plug the Xilinx USB dongle into the external PC and run Vivado from there.
    7. Now you should see the RXDATA LED lighting with dim red color.




  4. Configure VLDB (GUI is needed for java):
    1. Supply 5V with 1A limit in current to VLDB. With 5V input voltage a VLDB may consume as low as 300mA. Once the VLDB and Felix configuration process is done, the board consumes about 450mA.
    2. Use the .jar programmer file and the txt config file.
    3. Run:
      java -jar programmerv2.20180725.jar
      Java GUI will appear.
    4. Click "import i..." in the top left corner and select the txt config file.
    5. Click "Write GBTX". After the process is done, GUI should look like the attached screenshot




  5. Set up FELIX:
    1. Run (from /home/itpix/FELIX/felix-04-01-00-stand-alone/x86_64-centos7-gcc8-opt/bin/ in the particular SLAC server):
      $ ./flx-init -c0 
      Run the init comment only one. If you run it twice or more, you need to reboot the computer.
      $ ./flx-info -c0
      May omit the info command, but it is useful to crocs-check that everything is ok.
    2. Check polarity of the channels, and invert if needed:
      $ ./flx-config -d0 list | grep POLARITY
      $ ./flx-config -d1 list | grep POLARITY
      If you observe something like "
      GBT-TXPOLARITY 0x000000000000", run:
      $ ./flx-config -d1 set GBT-TXPOLARITY=0xffffffffffffffff 
      -d1 option selects the 1st FLX card. 
    3. If everything was done properly, the other two LEDs - TXRDY and RXRDY - should light up:



    4. Check some registers:
      1. ./flx-config -d0 list | grep GBT_GENERAL_CTRL
        If returns other than 0x0000000000000004, run:
        ./flx-config -d set grep GBT_GENERAL_CTRL=0x4
      2. ./flx-config list | grep GBT_ALIGNMENT_DONE
        returns 0x0..1..0 when an RD53a SCC is connected (one 1 for each SCC).
      3. /flx-config list | grep GBT_RXCDR_LOCK
        returns 0x0..1..0 when an RD53a SCC is connected (one 1 for each SCC). 

  6. Configure E-links in elinkconfig:
    1. elinckconfig tool is described in the Felix manual - Section 6.1.
    2. TL;DR:
      1. $ source "path_to_felix"/source.sh
      2. elinkconfig
      3. elinkconfig GUI:

        Initial state of the elinkconfig

        Target state of the elinkconfig

      4. Click "FULLmode" in the top panel. The left panel will collapse into just one box named "Enable FULLMODE": check the small box, and the entire big box will turn orange.
      5. Check "TTC-to_Host (63b)" box in the top panel.
      6. Uncheck all the Epaths in the right panel: select "Egroup 0" on the bottom right, click "Disable" 0n the bottom right, click "Relp 2 All" on the bottom right; uncheck "EC (3f)" by hand.
      7. Click "2-bit" under the Egroup 0 and select "4-bit".
      8. Check Egroup0-EpathX according to your setup (G0-LinkX mini-HMDI ports on the VLDB).
      9. Click "TH_FanOut..." on the top menu. New window will appear, click "None" and "OK". Repeat same for "FH_FanOut".

        "ToHost FanOut" Initial state (same for "FromHost")

        "ToHost FanOut" Target state (same for "FromHost")

      10. Click "Repl 2 All" on the top panel.
      11. Save the configuration: click "Generate/Update" on the top panels. new window will appear, click the top "Upload" button and "Close".
      12. Click "FLX-device" breakdown menu on the top panel, select 1 instead of 0. Repeat same procedure for the device 1. (NOTE: number of devices and their actual address depend on the number of FLX-712 cards used in a server. In case of one card use only 0 and 1.)
  • No labels