Uwharrie Test Solutions


TSN_logo.JPG (12298 bytes)


Firmware Scan

Frequently Asked Questions

Do you know how many different Microcontrollers there are in the market and how many of them do not have 1149.1 testability features?

Answer: No I don’t know how many exactly. But we could start counting… PIC12, 16, 18 more than 200 devices, ST10XXX ~ 20-30 devices, ATTiny/ATMega ~20 devices, Infineon XC2XXX about 20-30 devices, Renesas 78K series ~40-50 devices, ST10XXX 20-30 devices

There are also devices that have JTAG but no Boundary Scan 1149.1 capability, MSP430FXXX for example. However these parts allow the GPIOs to be read through the JTAG using read register commands. Therefore, you would not need to upload firmware to test the pins. I would not recommend these for Firmware Scan.

My best estimate is that about 60-65% of all Microcontrollers currently on the market today are target for Firmware Scan.

How do you correlate the single output pin to one of the failing GPIO input pins for diagnostic purposes? Do you use the same Fail bit technique as BasicSCAN?

Answer: A Firmware Scan burst uses exactly the same END BURST [] pin diagnostics as a Basic Scan model. And for BGA devices it takes advantage of the PINORDER to identify the failing BGA ball as well.

What is the typical time to program the microcontroller with the firmware and test?

Answer: These are time stamps from a couple devices. As you can see the time to program and execute the Firmware Scan is negligible compared to erase and programming of the entire user firmware. Note, in the 2nd example the time stamps do not differentiate between the programming and execute bursts. These times also include erasing the area where the Firmware Scan program is programmed.

UPD78F0849 60K flash, 80 pin device

      ** ID TIME             =    0.109 SECONDS

      ** PROGRAM PIN-TEST    =    0.250 SECONDS --- Erase and program Firmware Scan

      ** EXECUTE PIN-TEST    =    0.031 SECONDS --- Execute Firmware Scan

      ** ERASE TIME          =    0.422 SECONDS

      ** PROGRAM TIME        =    8.313 SECONDS

      ** CHECKSUM TIME       =     0.375 SECONDS

      ** UUT PROGRAM TIME    =    0.625 SECONDS

      ** UUT VERIFY  TIME    =    0.156 SECONDS

      ** TOTAL  TIME            =   10.281 SECONDS


PIC18F452 32K Flash, 44 pin device


      ** DEVICE ID  TIME     =    0.031 SECONDS

      ** PIN_TEST TIME       =    0.188 SECONDS <---- Erase, Program and Execute Firmware Scan


      ** TOTAL TIME          =    6.906 SECONDS


Return to Main Page