Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Host ioc-* cpu-*
User laci
SendEnv TERM=xterm
HostName %h.slac.stanford.edu
ProxyCommandProxyJump ssh -X gateway /usr/bin/nc %h %p <gateway>
StrictHostKeyChecking no
UserKnownHostsFile /dev/null

...

Host gateway
User myself
ProxyCommand ssh -X firewall /usr/bin/nc %h %p

However, as Faisal has pointed out - in the most common use-case the `ProxyJump` directive is more convenient:

Host gateway
User myself
ProxyJump firewall

Now when you say

bash$ ssh cpu-b12-xyz

herethen ssh will transparently set up the multi-hop connection. Note that others options can be passed and work as expected, i.e., you can set up port forwarding to the target machine, e.g.,

...

  1. Start xvcSrv on a machine with fast connectivity to the FPGA
      xvcSrv -t <target_ip>[:<udp_port>]
    A pre-compiled binary is installed here
      /afs/slac/g/reseng/xvcSrv/bin/<architecture>/
    or here
    /afs/slac/g/lcls/package/xvcSrv/<architecture>/
  2. Start hw_server on the same or a close-by machine (no special arguments necessary); if you run Vivado on-site then vivado takes care of this step and you may skip step 3.
  3. From remote (e.g., laptop) you might have to use an ssh tunnel to get to the hw_server. You can in fact use ssh to directly launch the server and tunnel the connection (assuming hw_server is on the PATH):
      ssh -L 3121:localhost:3121 gateway_machine  hw_server
  4. On the remote machine launch Vivado and connect to the default target (since the ssh tunnel was opened on local port 3121 Vivado will find it)
  5. In the Vivado hardware manager connect to the hw target:
      % open_hw_target -xvc_url  <machine_where_xvcSrv_runs>:2542
  6. That's it. Vivado should find the new target. You will need to load the debug probe (.ltx) file and possibly "refresh" the target.
  7. The initialization then takes quite a while (from my home it takes ~30s for the GUI to populate in the hardware manager) but further interaction (including display of waveforms) is acceptable.

...