The J-Link GDB Server translates the monitor commands from your GDB capable Integrated Development Environment into commands understood by the J-Link ARM JTAG In-Circuit Debugger/Programmer or the J-Trace ARM JTAG In-Circuit Debugger/Programmer. As such it allows you to use the J-Link ARM and J-Trace ARM JTAG in-circuit debuggers with any ARM Toolchain and IDE that supports GDB. GDB / GDB Server Overview The GNU Project Debugger (GDB) is a freely available debugger, distributed under the terms of the GPL. It connects to an emulator via a TCP/IP connection, and can connect to every emulator for which a GDB server software is available. The latest Unix version of the GDB is freely available from the GNU Commitee. Hardware requirements User interface The J-Link GDB Server's user interface shows information about the debugging process and the target connected via JTAG, including: - Host IP address that is connected to the J-Link GDB Server
- Connection status of J-Link
- Information about the target core
- Measured target voltage
- Bytes that have been downloaded
- Status of target
- Log output of the J-Link GDB Server (if Log window is checked)
- Initial and current JTAG speed
- Target endian setting
The following image shows what the J-Link GDB Server screen looks like when a J-Link and target system are connected: Setting up the J-Link GDB Server Typically, most of the GDB setup is done from GDB via remote commands (monitor) in the gdbinit file. However it is also possible to do the setup manually via user interface, as shown below: Using the JTAG speed drop-down box, the JTAG speed can be selected. The box below allows changing the endian setting of the target. These two boxes will be grayed out while debugging, but their values can be changed from the debugger console using remote commands. Log window The log window is visible only if the Log window checkbox is selected. The log window shows all commands which the GDB sends to the GDB Server. The log window is primarily useful for troubleshooting. Log file If Log to file is checked, the GDB Server generates the log file C:\JLinkGDB.log. Supported remote commands J-Link GDB Server supports several remote commands from the GDB. These commands can be used from within a gdbinit file or the GDB console to initialize the target board and to set up J-Link GDB Server specific parameters. | Command | Function | | ClrBP | Removes an instruction breakpoint. | | Endian | Sets endianess of the target. | | Go | Starts the target CPU. | | Halt | Halts the target CPU. | | JTAGConf | Configures a JTAG scan chain with multiple devices on it. | | Long | Reads or writes from/to given address. | | Reg | Reads or writes from/to given register. | | Reset | Resets and halts the target CPU. | | Select | Selects the way J-Link is connected to host system. | | SetBP | Sets an instruction breakpoint at a given address. | | Sleep | Sleeps for a given time period. | | Speed | Sets the JTAG speed of J-Link / J-Trace. | | Step | Performs one or more single instruction steps. | | WaitHalt | Waits for target to halt code execution. | | WIce | Writes to given IceBreaker register. | J-Link GDB Bundle Option If you do not yet own a J-Link ARM, you can buy one with this GDB Server at a discount by purchasing the J-Link GDB Bundle. For a complete list of J-Link bundle packages, see the J-Link ARM order page. There are no bundle packages that include the J-Trace ARM.
|