05192024

Last update2016/05/28 14:38

Back 現在地: Home パートナー segger-tools

J-Link Ultra Model comparison

Model comparison

Model comparison

 

The following tables show the features which are included in each J-Link / J-Trace model.

Hardware features

Software features are features implemented in the software primarily on the host. Software features can either come with the J-Link or be added later using a license string from Segger.

Hardware features
J-Link J-Link Pro J-Link Ultra J-Trace for Cortex-M3 J-Trace
USB
Ethernet no no no no
Supported cores ARM7
(no tracing)
ARM9
(no tracing)
ARM11


(no tracing)


(no tracing)

Cortex-A5
(no tracing)

(no tracing)
Cortex-A8
(no tracing)

(no tracing)
Cortex-M0
(no tracing)
Cortex-M1
(no tracing)
Cortex-M3
(no tracing)
Cortex-M4
(no tracing)
Cortex-R4
(no tracing)

(no tracing)
Renesas RX
(no tracing)

(no tracing)
JTAG
SWD no
SWO no
ETM Trace no no no
Software features
J-Flash
(optional)


(optional)

(optional)

(optional)
Flash Breakpoints2
(optional)

(optional)

(optional)

(optional)
Flash Download1
GDB Server
(optional)

(optional)

(optional)

(optional)
RDI
(optional)

(optional)

(optional)

(optional)

1 Most IDEs come with their own flashloaders, so in most cases this feature is not essential for debugging your applications in flash. The J-Link flash download (FlashDL) feature is mainly used in debug environments where the debugger does not come with an own flashloader (e.g. the GNU Debugger). For more information about flash breakpoints, please refer to Flash Download.

2 The flash breakpoint feature allows setting an unlimited number of breakpoints even if the application program is not located in RAM, but in flash memory. Without this feature, the number of breakpoints which can be set in flash is limited to the number of hardware breakpoints (typically two for ARM 7/9, six for Cortex-M3). For more information about flash breakpoints, please refer to Flash Breakpoints.

 

J-Link Ultra Flash programming utilities

Flash programming utilities

Flash programming utilities

 

The SEGGER J-Link comes with dedicated flash programming utilities (DFPU) for a number of popular eval boards. These utilities are designed to program a .bin file into the flash memory of the target hardware, with J-Link. Each dedicated flash programming utility works only with the Eval board it was designed for.

Using the dedicated flash programming utilities which come with J-Link, is permitted for development purposes only. As long as the dedicated flash programming tools are used for development purposes only, no additional license is required. If you want to use the dedicated flash programming utilities for commercial and production purposes, you need to obtain a license from SEGGER. SEGGER also offers to create dedicated flash programming utilities for custom hardware. When starting a dedicated flash programming utility, a message box appears which tells the user about the purpose of the dedicated flash programming utility:

Supported Eval boards

The list below shows the Eval boards for which dedicated flash programming utilities have been already developed. Simple flash programming utilities for other, popular Eval boards are on the schedule.

Eval board manufacturer Eval board name Flash memory Prices for source code
Cogent CSB737 Typically 65 MB external NOR flash Product 8.20.01
ST Microelectronics MB525 Typically 128 KB internal NOR flash Product 8.20.03
Toshiba TOPAS910 Typically 32 MB external NOR flash Product 8.20.02

Supported flash memories

The dedicated flash programming utilities for J-Link can be created for the following flash memories:

  • Internal flash
  • External NOR flash
  • NAND flash
  • Data flash
  • SPI flash

In order to use external NOR flash, a CFI compliant flash memory has to be used because the flash programming utilities use the CFI information to detect the flash size and sectorization.

How to use the dedicated flash programming utilities

The dedicated flash programming utilities are very simple to use. Every tool expects a path to a data file (*.bin) passed as a command line parameter, on startup. If no path is passed the flash programming utility searches for a data in the Samples directory. This .bin file has to be named as shown in the table above. For example, for the Cogent CSB737 Eval board this file is named: CogentCSB737.bin.

Using the dedicated flash programming utilities for production and commercial purposes

If you want to use dedicated flash programming utilities for production and commercial purposes you need to obtain a license from SEGGER. In order to obtain a license for a dedicated flash programming utility, there are two options:

The source code can be compiled using a Microsoft Visual C++ V6 or newer compiler. It contains code which is executed on the target device (RAMCODE). This RAMCODE may not be used with debug probes other than J-Link.

Purchasing the source code of an existing dedicated flash programming utility

Purchasing the source code of an existing dedicated flash programming utility (described above) allows you to use the dedicated flash programming utility for production and commercial purposes. Making the resulting executable publicily available is not permitted.
For more information about the pricing for the source code of existing dedicated flash programming utilities, please refer to the pricelist.

Purchasing the source code of a dedicated flash programming utility for custom hardware

SEGGER also offers to design dedicated flash programming utilities for custom hardware for which you will also need to obtain a license. The resulting executable may be used for organization internal purposes only.

F.A.Q.

Q: Can the dedicated flash programming utilities be used for commercial purposes?
A: Yes, you can buy the source code of one or more of the flash programming utilities
which makes it possible to use them for commercial and production purposes.

Q: I want to use the dedicated flash programming utilities with my own hardware. Is that possible?
A: The free dedicated flash programming utilities which come with J-Link do not support custom hardware.
In order to use your own hardware with a dedicated flash programming utility, SEGGER offers to create
dedicated flash programming utilities for custom hardware

Q: Do I need a license to use the dedicated flash programming utilities?
A: As long as you use the dedicated flash programming utilities, which come with J-Link, for development purposes only, you do not need an additional license.
In order to use them for commercial and/or production purposes you need to obtain a license from SEGGER.

Q: Which file types are supported by the dedicated flash programming utilities?
A: Currently, the dedicated flash programming utilities support *.bin files.

Q: Can I use the dedicated flash programming utilities with other debug probes than J-Link?
A: No, the dedicated flash programming utilities only work with J-Link

 

J-Link Ultra Flash SDK

J-Link Flash SDK

 

An enhanced version of the J-Link SDK, which contains additional API functions for Flash programming. The add. API functions (Prefixed JLINKARM_FLASH_) allow erasing and programming the flash memory. This DLL comes with a sample executable, as well as with source code of this executable and a project file. It can be an interesting option if you want to write your own programs for production purposes. This DLL also requires an extra license from SEGGER; please contact このメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。 .com for more information.

Additional API functions included in the Flash SDK

The following table lists the additional Flash SDK API routines:

Flash functions
Routine Explanation
JLINKARM_FLASH_AddBank() Adds a flash bank.
JLINKARM_FLASH_DelBank() Deletes a flash bank.
JLINKARM_FLASH_SetBankPara() Sets a bank parameter.
JLINKARM_FLASH_SetClockSpeed() Sets the CPU clock speed.
JLINKARM_FLASH_EraseRequired() Erases all required sectors to program data file.
JLINKARM_FLASH_Program() Programs data file into flash memory.
JLINKARM_FLASH_Verify() Compares data file with memory content.
JLINKARM_FLASH_OpenDataFile() JLINKARM_FLASH_OpenDataFile() Opens a data file.
JLINKARM_FLASH_CloseDataFile() Closes a data file.
JLINKARM_FLASH_GetNumLoadedBytes() JLINKARM_FLASH_GetNumLoadedBytes() Returns number of bytes in data file.

 

J-Link Ultra GDB Server

GDB Server

 

The J-Link GDB Server is a remote server for the GDB which allows to use J-Link with GDB or any toolchain which uses GDB as debugging interface, such as Yagarto and Sourcery G++). The GDB and GDB Server communicate via a TCP/IP connection, using the standard GDB remote serial protocol. The GDB supports a standard set of commands like open elf/bin files, reading/writing memory, etc. Beside this, the GDB also supports so called monitor commands which are passed to the GDB Server and interpreted by it, allowing it to implement J-Link specific commands like reading/writing CP15 registers, enabling flash download via J-Link, using flash breakpoints, enabling semihosting, etc.

GNU Project Debugger (GDB) overview

The GNU Project Debugger (GDB) is a freely available debugger, distributed under the terms of the GNU Public license (GPL). It connects to an emulator via a TCP/IP connection. It 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 under: http://www.gnu.org/software/gdb/download/

GDB Server licensing

J-Link GDB Server is distributed as "free for evaluation and non commercial use". The software can be used free of charge for educational and non-profit purposes without an additional license. To use the software for other, especially commercial purposes, a license is required. To obtain an trial or unlimited license, please このメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。 with us. Full and valid license terms are specified in file License.txt which comes with the J-Link software and documentation package.

Note: J-Link OEM versions ATMEL SAM-ICE and Digi JTAG Link come with a built-in license for J-Link GDB Server.

Supported cores

Currently the J-Link GDB Server can be used with the following CPU cores:

  • ARM7TDMI (Rev 1)
  • ARM7TDMI (Rev 3)
  • ARM7TDMI-S (Rev 4)
  • ARM720T
  • ARM920T
  • ARM922T
  • ARM926EJ-S
  • ARM946E-S
  • ARM966E-S
  • ARM1136JF-S
  • ARM1136J-S
  • ARM1156T2-S
  • ARM1156T2F-S
  • ARM1176JZ-S
  • ARM1176JZF
  • ARM1176JZF-S
  • Cortex-M0
  • Cortex-M1
  • Cortex-M3

Requirements

To use the J-Link GDB Server, you have to meet the following requirements:

User interface

The J-Link GDB Server's user interface shows information about the debugging process and allows the user to configure some settings like target endianess, if memory reads should be cached in order to improve performance or if a logfile shall be generated.

Setting up the J-Link GDB Server

Typically, most of the GDB and target setup is done from GDB via remote commands (monitor) in the .gdbinit file. The commands used in the .gdbinit file are performed before the download of the application into the target memory is performed. This allows the user to perform initialization steps which might be necessary to enable the access to the target memory. The .gdbinit file also allows to use download into flash memory via J-Link and flash breakpoints.

Protocol extensions

  • SWO support
    GDB Server supports transfer of SWO data (terminal output, instrumentation trace, PC samples, etc.)
  • ETM (processor trace) support: upon request

 

J-Link Ultra IDE integration

J-Link IDE integration

 

J-Link / J-Trace can be used with different IDEs. Some IDEs support J-Link directly, for other ones additional software (such as J-Link RDI) is necessary in order to use JLink. The following tables list which features of J-Link / J-Trace can be used with the different IDEs.

ARM Cortex-M3
IDE Debug support4 Flash Download Flash Breakpoints Trace support SWO
support
IAR EWARM
Keil MDK
Rowley
CodeSourcery
Yargato (GDB)

 

ARM7/9
IDE Debug Support4 Flash Download Flash Breakpoints Trace support3
IAR EWARM
Keil MDK
Rowley
CodeSourcery
Yargato (GDB)
RDI compliant
toolchains such as
RVDS/ADS
1 1 1

 

ARM11
IDE Debug support4 Flash Download Flash Breakpoints Trace support3
IAR EWARM 2 2
Rowley
Yargato (GDB) 2 2

 

 

1 Requires J-Link RDI license for download of more than 32KBytes

2 Coming soon

3 Requires emulator with trace support

4 Debug support includes the following: Download to RAM, memory read/write, CPU register read/write,
Run control (go, step, halt), software breakpoints in RAM and hardware breakpoints in flash memory.