TCF/RISC-V
Contents
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
- Get Eclipse
- 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)
- 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: