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

Compare with Current View Page History

« Previous Version 27 Next »

 

  1. git 2.2 and git-lfs will need to be installed.  This can be done through a conda environment or through the CentOS package manager (YUM).  
    1. For CentOS-7 
    2. sudo yum -y install https://centos7.iuscommunity.org/ius-release.rpm
    3. and then sudo yum -y install  git2u-all
    4. git lfs install
    5. (These instructions above maybe incorrect.)

  2. Setup the ssh key for github and the machine.  See following links for more instructions
    1. https://help.github.com/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent/
    2. https://help.github.com/en/articles/adding-a-new-ssh-key-to-your-github-account

  3. clone the repository and update submodules
    1. git clone git@github.com:slaclab/lcls2-pcie-apps.git
    2. cd lcls2-pcie-apps
    3. git submodule init
    4. git submodule update --recursive
    5. git checkout pre-release
    6. git submodule update --recursive

  4. install rogue into a conda environment
    1. first get the anaconda or miniconda installer from https://docs.conda.io/en/latest/miniconda.html.  Rogue will take up 3.3 GB so install miniconda or anaconda on a local hard drive, not in the user nfs or afs home.
    2. install rogue using the description here https://slaclab.github.io/rogue/installing/anaconda.html

  5. running the lcls2-pcie-apps vcs test
    1. checkout the pre-release
      1. cd lcls2-pcie-apps
      2. git checkout pre-release
      3. git submodule update --recursive
    2. the user_space_test1.sh located in lcls2-pcie-apps/tests script is a vcs / rogue integrated regression test and is designed to work out of the box.

    3. the firs time this script is run, the following commands maybe needed

      1. git-lfs install

      2. git-lfs pull

      3. git submodule foreach git-lfs pull

    4. The first time running this on a fresh CentOS 7 install will require the ncurses-devel packcage. The command is 

      1. sudo yum install ncurses-devel package

  6. installing aes-stream-drivers and loading the kernel module
    1. installation. The tagged version for aes-stream-drives will be listed in the dependencies here
    2. https://github.com/slaclab/lcls2-pcie-apps/tree/pre-release/software/TimeTool
    3. git clone git@github.com:slaclab/aes-stream-drivers.git
    4. cd aes-stream-drivers/data_dev/driver
    5. git checkout v5.4.0
    6. make clean
    7. make
    8. sudo insmod datadev.ko
    9. sudo chmod 666 /dev/datadev_0
    10. cat /proc/datadev_0     #this is to validate the kernel module has been loaded

  7. Configure machine to load this module on startup.  The instructions here lcls-pc83236 settings for rhel6 settings.  Use the Centos7 instructions instead.

  8. starting py-rogue / firmware gui

    1. cd lcls2-pcie-apps/software/TimeTool 

    2. source setup_env_template.sh
    3. python scripts/gui.py --dataDebug 1

    4. from the gui, load either slow_test_pattern_tpg_trig.yml or slow_test_pattern_soft_trig.yml and press the "Start Run Button" in the commands tab. This will print out the firmware results to the screen

  9. Typical no-machine or x-forwarding makes Vivado run slow.  A vnc server speeds things up.
    1. sudo yum install tigervnc-server

    2. vncpasswd
    3. dbus-launch vncserver -geometry 2560x1440
    4. if the port is blocked (can be validated by telnet'ing to the machine port 5901 remotely)
      1. sudo firewall-cmd --zone=public --permanent --add-port=5901/tcp

      2. sudo firewall-cmd --reload

    5. now a vnc viewer should work

  • No labels