Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

TCF/RISC-V

< TCF
Revision as of 16:45, 23 November 2020 by Eugene.largest.net (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Getting TCF to run on the RISC-V

Hardware

RISC-V development board with Linux installed and network connection.

For example, RISC-V FPGA design for Digilent Nexys Video board.

Build the TCF Agent

Assuming RISC-V host name is debian and user name is debian:

  ssh debian@debian
  sudo apt-get update
  sudo apt-get upgrade
  sudo apt-get install git make gcc libssl-dev uuid-dev libc6-dbg
  git clone git://git.eclipse.org/gitroot/tcf/org.eclipse.tcf.agent.git
  cd org.eclipse.tcf.agent/agent
  make

Run the TCF Agent

  obj/GNU/Linux/riscv64/Debug/agent

To allow remote access to all processes and files (owned by system and other users), run the agent as root:

  sudo obj/GNU/Linux/riscv64/Debug/agent

Alternatively, TCF Agent can be added as Linux service, so it will always start on boot.

Please, note that by default TCF Agent runs without any security, which is the best setup for software development on a local network protected by a firewall.

However, if the board is connected to a public network, you would need to run the agent with authentication and encryption enabled.

Connect the TCF Debugger

  1. Get Eclipse
  2. Launch it, choose Help > Install New Software, select --All Available Sites-- and search for TCF
    • You can safely install all of TCF (will also get you the sources)
  3. Allow to restart, then switch to the Target Explorer Perspective
    • Your RISC-V machine should show up under "Neighborhood"

Debugging Over JTAG

JTAG allows to debug everything on the target machine: boot ROM code, RISC-V proxy kernel, U-Boot, Linux kernel, Linux modules, Linux user space - all in same debug session. It is very powerful debug mode, but it is also rather complicated, more suitable for system software development rather than application development. JTAG mode not supported by regular TCF Agent, you need special version on the agent, which supports your hardware. In case of FPGA RISC-V designs, Xilinx provides version of the agent (aka Xilinx Hardware Server), which supports JTAG debugging.

JTAG debugger screenshot - stepping through RISC-V boot ROM: Risc-V-Debug-bootrom.png

Back to the top