...
B33 Integration FELIX Setup
B84 FELIX Test Setup
FELIX Configuration Process
- Assemble the test stand according to figures from the "B84 FELIX Test Setup" section. :
- 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.
- 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.
- 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.
- Configure VLDB (this part to be updated).
- Update/install the most recent Felix firmware (assuming Vivado Lab is installed, and one has access to GUI):
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.
- Get the .bit (directly upload v4.9).
- In Vivado Lab detect the target, use the .bit file to configure.
- Reboot the PC.
- 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.
- 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.
- Now you should see the RXDATA LED lighting with dim red color.
- Configure VLDB (GUI is needed for java):
- 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.
- Use the .jar programmer file and the txt config file.
- Run:
$ java -jar programmerv2.20180725.jar
Java GUI will appear. - Click "import i..." in the top left corner and select the txt config file.
- Click "Write GBTX". After the process is done, GUI should look like the attached screenshot
- Set up FELIX:
- 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. - 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. - If everything was done properly, the other two LEDs - TXRDY and RXRDY - should light up:
- Check some registers:
- ./flx-config -d0 list | grep GBT_GENERAL_CTRL
If returns other than 0x0000000000000004, run:
./flx-config -d set grep GBT_GENERAL_CTRL=0x4 - ./flx-config list | grep GBT_ALIGNMENT_DONE
returns 0x0..1..0 when an RD53a SCC is connected (one 1 for each SCC). - /flx-config list | grep GBT_RXCDR_LOCK
returns 0x0..1..0 when an RD53a SCC is connected (one 1 for each SCC).
- ./flx-config -d0 list | grep GBT_GENERAL_CTRL
- Run (from /home/itpix/FELIX/felix-04-01-00-stand-alone/x86_64-centos7-gcc8-opt/bin/ in the particular SLAC server):
- Configure E-links in elinkconfig:
- elinckconfig tool is described in the Felix manual - Section 6.1.