JTAG interface Overview

Source: Internet
Author: User
Tags jlink
1. Functions of the JTAG interface in Embedded Systems

Reference: http://nancy.spaces.eepw.com.cn/articles/article/item/16322

1 For flash burning

Flash-burning software has many types of packages, such as jatg.exe fluted flashpgm. However, all these software uses the JTAG interface to burn flash. Because there is no JTAG interface on the PC, therefore, the joint port is used to transmit information to the JTAG interface of the target board. Therefore, it is necessary to convert the parallel port to the JTAG interface circuit.

2 For program debugging

At the same time, we should note that the JTAG interface can also be used to debug programs. In order to debug the program on the Target Board through the JTAG interface, the debugging program (such as the axd in the arm development component) also uses the parallel port of the PC to convert the JTAG interface to realize communication with the target board. In this way, the circuit for converting the parallel port to the JTAG interface has two functions.

3. Simulator

According to the summary of 1 and 2, the parallel port to the JTAG interface circuit is the key of two kinds of applications, and this circuit is called a simulator in embedded development. There are many types of interfaces for parallel-to-JTAG conversion, which are simple and complex. Common simulators include wiger, easyjtag, and multi-ice. The internal circuits of these so-called simulators are all parallel-to-JTAG interfaces. The difference is that the circuits are different or the technologies used are different.

2. wiger Circuit

3. openjtag Circuit

Introduction to open JTAG
There are many excellent development tools in embedded development. For example, Keil, IAR, And Rowley associates. They install and use are very convenient, powerful functions, but expensive; also need to buy the corresponding hardware, such as J-link, U-LINK USB to the JTAG conversion box, which is not small expenses.
But now there is a low-cost development environment that uses free development tools such as javasae and openocd, and then uses some cheap JTAG converters (such as parallel converters ), it can achieve or even exceed the commercial software effect. However, the JTAG speed of the parallel port is too low and is rarely used. A better converter is the openjtag converter.

Openjtag hardware uses the Max II epm570 CPLD of Altera as the parallel string converter, and the FIFO of USB adopts the ftdi chip company FT245BM. This circuit is simple and easy to understand. FT245BM is a USB front-end from PC and CPLD, bringing a simple and inexpensive communication solution to the target hardware.

Reference: http://hi.baidu.com/jnuli/blog/item/c94522db1104896dd1164ef7.html

What is open JTAG. Open JTAG is an open-source project. Its goal is to enable embedded developers to use open hardware and software systems for coding, verification, and debugging through the JTAG interface.

As the official website of open JTAG, The http://www.openjtag.net details the hardware solution that can be implemented by open jatg.

However, their focus is indeed to elaborate on the $200 high-speed jatg solution, which left us very dissatisfied with shanzhai developers.

Fortunately, the liberation solution of the USB interface provides a relatively low solution, and the 20 m speed is not low. This is the JTAG debugger for the ftdi ft2232 series.

Of course, the hardware cost of open JTAG cannot be lower than that of jlink.

However, with its special open-source advantages, open JTAG is especially suitable for embedded developers, especially in Lunix.

Openocd is commonly used with the software. It is an open source JTAG host computer program. The homepage is http://openocd.berlios.de/web/and the Forum is http://forum.sparkfun.com/viewforum.php? F = 18. Multiple chips are currently supported. You can simply check the definition of target_types in src/target. C to find out which processors are supported:

target_type_t *target_types[] ={        &arm7tdmi_target,        &arm9tdmi_target,        &arm920t_target,        &arm720t_target,        &arm966e_target,        &arm926ejs_target,        &feroceon_target,        &xscale_target,        &cortexm3_target,        &arm11_target,        &mips_m4k_target,        ... ...

That is to say, all the above listed open jtags are available. Moreover, with the open OCD function, more and more chips are supported at night.

Official solution schematic diagram (FT245BM serves as a usb fifo buffer and epm570 Max II serves as a serial parallel converter)

Plug-in: Commonly Used USB to serial port chip (Ft2232cCp2102Pl2303)

Http://hi.baidu.com/fire4work/blog/item/0673c523cfbe1e4dac34de75.html

4. jlink Circuit

The key part is the use of IC, at91sam7s64 (AMO's ARM microcontroller)

Reference: http://www.ourdev.cn/bbs/bbs_content.jsp? Bbs_sn = 3219462 & bbs_page_no = 1 & search_mode = 3 & search_text = juedi & bbs_id = 9999

5. Differences between openjtag and jlink

1. Operating System:

Openjtag can be used in Windows and Linux;
Jlink can only be used in windows.

2. Integrated Development Environment:

Openjtag can be used in all tools that support the gdb debugging protocol, such as IAR, eclipse, and winarm. It cannot be used in tools that support the RDI protocol, such as ads.
Jlink supports multiple debugging protocols, such as RDI and GDB, and supports almost all windows tools, such as ads, Keil MDK, and IAR.

3. Flash burning:

Openjtag and jlink have almost the same powerful flash burning functions.

4. How to choose:

If you are studying Linux, openjtag is applicable (because jlink can only be used in Windows );
If you prefer tools such as ads (using the RDI debugging protocol) and Keil, jlink is applicable;

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.