Discussion on ARM JTAG Emulator Circuit

Publisher:Blissful444Latest update time:2021-01-26 Source: eefocusKeywords:ARM  JTAG Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

Introduction: The following is some of my experience in practice. I found this because I encountered problems when trying to use the programming board circuit suitable for SAMSUNG S3C44B0 JTAG to program another ARM9 core MPU S3C2440 of SAMSUNG. After consulting some information, I finally solved it. I hope this will be helpful to those friends who have difficulties in making their own ARM JTAG programmer.


1. The essence of JTAG emulator

JTAG (Joint Test Action Group) programming and debugging actually utilizes the tracking and debugging function built into the MCU/MPU chip (MCU/MPU hardware support is required). One end of the JTAG programming board is connected to the parallel port of the PC, and the other end is connected to the target board. Since the operating voltage of the MCU/MPU is usually between 1.8V and 3.6V, and the level logic output by the PC parallel port is 5V, a level conversion is required. Usually a buffer/driver (such as: 74××244/74××541) is used for isolation, and the voltage is limited by resistors to divide the voltage. Because the PC parallel port has no voltage output, the IC on the programming board must be powered by the target board, that is: the VCC pin in the JTAG interface must be properly connected.


2. Pin definition of JTAG interface


The mainstream JTAG interface has two types: 14-pin and 20-pin. The pin assignment is shown in Figure 1.


The 14-pin JTAG interface is an old-fashioned interface.

The definition of non-ground pins in JTAG is shown in Figure 2.

3. The first line sequence JTAG programming board circuit

The JTAG programming board circuit in the SAMSUNG ARM7 S3C44B0 development kit I used is shown in the figure

However, after connecting the programming board to S3C2440, the program cannot be loaded correctly.

According to the input and output relationship of 244, the corresponding relationship between the PC parallel port and the JTAG interface pins can be sorted out as follows:


PC parallel port pinout

2 3 8 4


JTAG Pinouts

TCK TMS TDI nSRST


4. The second line sequence JTAG programming board circuit


After consulting the programming board circuit in the USER'S GUIDE of the official JTAG programming board SJF2440 of S3C2440, the corresponding relationship between the PC parallel port and the JTAG interface pins is sorted out as follows:


PC parallel port pinout

2 3 4 11


JTAG Pinouts

TCK TDI TMS TDO


Based on this, it can be inferred that the failure of JTAG debugging of S3C2440 using S3C44B0 JTAG programming board is due to the difference in the allocation of PC parallel port control pins. That is, the parallel port pins used by S3C2440 JTAG debugging agent to simulate JTAG timing are different from those used by S3C44B0 debugging agent.


Based on this, we flexibly flew wires on the S3C44B0 JTAG programming board and successfully debugged the S3C2440 using the programming board again.


5. Some speculation

In the JTAG related search, I found a JTAG programming board circuit given by netizen Li Jie, as shown in Figure 5.


The correspondence between the JTAG pins and the PC parallel port pins in this circuit is the same as that in the S3C2440 JTAG programming board, and the author claims that this circuit is applicable to all ARM chips. Based on this, it is speculated that most companies develop ARM debugging software that supports two different line sequences of parallel port simulation JTAG debugging, and can automatically detect the programming board hardware connection and implement control when debugging starts. The official S3C2440 JTAG debugging software only supports one line sequence.

Keywords:ARM  JTAG Reference address:Discussion on ARM JTAG Emulator Circuit

Previous article:ARM Basics 9
Next article:Design of the Minimum System Based on S3C4510B Microprocessor

Recommended ReadingLatest update time:2024-11-23 07:02

ARM Instruction Set
  【Jump instruction】     1) B WAITA jumps to the WAITA number;       B 0x1234 jumps to address 0x1234;   (Generally used when the subroutine does not return)   2)BL  label (LR=PC-4,PC=label)     【Data processing instructions】   1) Data transfer instructions     MOV R11,#
[Microcontroller]
Design and implementation of fingerprint recognition system based on ARM9
        Biometric technology uses the body's inherent physiological characteristics (such as fingerprints, facial features, red membranes, etc.) and behavioral characteristics (such as handwriting, voice, gait, etc.) to identify personal identity.   Biometrics is safer, more confidential and more convenient than tra
[Microcontroller]
Design and implementation of fingerprint recognition system based on ARM9
Build a simple robotic arm using ARM7 LPC2148 microcontroller
  Robotic arms are one of those fascinating engineering creations, and it's always fascinating to watch these things tilt and translate to accomplish complex things just like a human arm. These robotic arms are commonly found in industries that perform high-intensity mechanical work such as welding, drilling, and pain
[Microcontroller]
Build a simple robotic arm using ARM7 LPC2148 microcontroller
Design of oilfield production and transportation IoT monitoring system based on ARM CortexM0
introduction my country's oil resources are widely distributed, the mining environment is relatively harsh, and oil production and transportation cover a wide area and are mostly carried out in the wild. With the expansion of the scale and area of ​​mining year by year, in order to improve oil production efficiency
[Microcontroller]
Design of oilfield production and transportation IoT monitoring system based on ARM CortexM0
Introduction to ARM platform printf function positioning to uart output
1.1 ARM serial port output function uart_printf It would be very convenient if ARM could use the printf function format that comes with the C function library, but the default printf is located at the stdout terminal, not the serial port. This article describes how to locate the serial port of ARM. 1.1.1 Main func
[Microcontroller]
Two firmware download modes of stm32: JTAG and SWD
1. JTAG mode This model generally has 10-pin, 14-pin and 20-pin. Although the number of pins and the order of the pins are different, some of the pins are the same. It is worth noting that different IC companies will define their own Jtag headers for their own products to download or debug programs. Test Clock Inp
[Microcontroller]
Two firmware download modes of stm32: JTAG and SWD
Design of GPS Synchronous Timing System Based on ARM
Abstract: Based on the international navigation standard NMEA-0183 as the data protocol, in order to ensure the accurate timing of the power system, the ARM microcontroller STM32f103rbt6 and the high-precision GPS receiver module NEO-5Q are used as the core to control data acquisition and transmission, and the desig
[Industrial Control]
Design of GPS Synchronous Timing System Based on ARM
Design of USB interface expansion for 32-bit ARM embedded system
Common high-speed communication interfaces between hosts and embedded peripherals include LPT parallel port, USB, 1394 and 10/100M Ethernet. RS232 is not suitable for high-speed data transmission, and the 1394 interface requires a special adapter interface, which is too expensive and is generally rarely used. The USB i
[Microcontroller]
Design of USB interface expansion for 32-bit ARM embedded system
Latest Microcontroller Articles
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号