RT1170 Boundary Scan test based on lauterbach

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

RT1170 Boundary Scan test based on lauterbach

RT1170 Boundary Scan test based on lauterbach

RT1170 Boundary Scan test based on lauterbach

 

1. Abstract

Boundary Scan is a method of testing interconnections on circuit boards or internal sub-blocks of circuits. You can also debug and observe the pin status of the integrated circuit, measure the voltage or analyze the sub-modules inside the integrated circuit, and test based on the JTAG interface.

NXP officials have provided two good application notes: AN13507 (LPC) and AN12919 (RT). Based on the reference application note test method, this article provides the boundary scan test results for NXP MIMXRT1170-EVK revC1. It can use Lauterbach to connect the chip and perform boundary scan to control the external pins. A script file is also provided. It can realize one-click connection to boundary scan and achieve level control of external pins.

2. RT1170 test details

 

2.1 Hardware platform

Lauterbach:LA3050

MIMXRT1170-EVK rev C1:

The hardware modification point is to remove the onboard resistors R187, R208, R195 and R78. The purpose is that J6 prohibits external circuits from interfering with JTAG related pins. Disconnect J5, J6, J7, J8, that is, disconnect the onboard debugger, and use an external Lauterbach connection to J1. The connection situation is as follows:

1.jpg

Fig 1

RT1170 directly supports both SWD and JTAG by default, so unlike RT10XX which needs to modify the fuse to convert from SWD to JTAG, RT1170 can directly use the JTAG interface.

 

2.2 Software operation

Download Lauderbach's supporting software and install it. After installation, open the TRACE32 ICD Arm USB. If the Lauderbach device is connected, the interface will open successfully.

2.jpg

Fig 2

At this time, you can enter the relevant commands in the yellow box in the picture above.

Here you need to prepare the .bsdl file of the chip, which is usually placed on the chip introduction page of nxp.com. For example, the link to the bsdl file of RT1170 is:

https://www.nxp.com/downloads/en/bsdl/i.MXRT1170_BDSL.bsdl

You can copy the i.MXRT1170_BSDL.bsdl file to the Lauderbach installation path: C:\T32

Next, enter the following command in the window to open the boundary scan window and the i.MXRT1170_BSDL.bsdl file:

SYStem.Mode Down
BSDL.RESet
BSDL.ParkState Select-DR-Scan
BSDL.state

Here, it will open the window:

3.jpg

Fig 3

Click FILE item, input the downloaded i.MXRT1170_BSDL.bsdl, then in the window.,input the commander:

BSDL.SOFTRESET 

4.jpg

Fig 4

Click check->BYPASSall,IDCODEall,SAMPLEall, make sure the 3 methods can be passed.

5.jpg

Fig 5

6.jpg

Fig 6

7.jpg

Fig 7

To test the output control situation, it need to do the following operation:

BSDLSET 1.: instructions->EXTEXT, DR mode->Set Write, Fileter data->uncheck intern

BSDL.state->Run: check SetAndRun, TwoStepDR, Click RUN.

BSDLSET 1. Can control the related pins, eg, GPIO_AD_26 is on the on board D34 LED. 1 ON,0 OFF.

8.jpg

Fig 8

 

2.3 Automation control command script

As can be seen from Section 2.2, single-step operation requires manual typing of commands. In actual testing, the efficiency is very low, so scripting language can be used to directly implement automated command control.

Below, taking RT1170 as an example, we provide a script to control the on-board D34 light on and off. In this way, when the TRACE32 software is opened, you only need to open the script directly, enter the debug mode, run it to the end with one click, and check the on-board light control status.

Script language file, the suffix is .cmm, step: File->New Script, enter the following script command:

;system setup
SYStem.Mode Down
SYStem.CPU CortexM7

SYSTEM.CONFIG.DEBUGPORTTYPE JTAG

SYStem.JtagClock 1MHz

;BSDL Settings
BSDL.RESet
BSDL.ParkState Select-DR-Scan
BSDL.state

;configure boundary scan chain
BSDL.FILE i.MXRT1170_BDSL.bsdl
;Check boundary scan chain
BSDL.SOFTRESET

BSDL.BYPASSall
BSDL.IDCODEall
BSDL.SAMPLEall ;Perform Sample test

BSDL.RUN
BSDL.SetAndRun ON
BSDL.TwoStepDR ON


BSDL.SET 1.
BSDL.SET 1. IR EXTEST

 BSDL.SET 1. PORT GPIO_AD_26 0
 WAIT 1.s
 BSDL.SET 1. PORT GPIO_AD_26 1
 WAIT 1.s

 BSDL.SET 1. PORT GPIO_AD_26 0
 WAIT 1.s
 BSDL.SET 1. PORT GPIO_AD_26 1
 WAIT 1.s

 BSDL.SET 1. PORT GPIO_AD_26 0
 WAIT 1.s
 BSDL.SET 1. PORT GPIO_AD_26 1
 WAIT 1.s

 BSDL.SET 1. PORT GPIO_AD_26 0
 WAIT 1.s
 BSDL.SET 1. PORT GPIO_AD_26 1
 WAIT 1.s

 BSDL.SET 1. PORT GPIO_AD_26 0
 WAIT 1.s
 BSDL.SET 1. PORT GPIO_AD_26 1
 WAIT 1.s

Function, the led will be blinking 5 times, duration is 1s.

Save the script, then debug it.

9.jpg

Fig 9

This is the video for the testing:

 

It can be seen that the onboard light D34 can automatically flash, indicating that the BSDL automatic test has been completed so far.

 

 

 

 

 

Attachments
No ratings
Version history
Last update:
‎11-28-2023 01:21 AM
Updated by: