The JTAG interface can not only be used for testing, but also as a JTAG programmer to program devices on your PCBA’s. Flash memories, FPGA’s, CPLD’s, microcontrollers (embedded flash) and serial devices like I2C, SPI and PMBus devices can be programmed via their four port JTAG interface or via surrounding JTAG devices. Through JTAG it is possible to program such devices after they have been mounted on the PCB. This on-board programming, or in-system programming (ISP) results in:

  • Much simpler device logistics (only non-programmed parts in stock)
  • One time handling of a device instead of multiple times
  • Easy re-programing, also in the field, for product upgrades for example

Programming of large flash devices can be very slow, due to the serial nature of JTAG. This means if there is a programmable logic device (such as an FPGA) connected to the flash part, Provision and others can be used to dramatically speed up the programming process quite often reaching the maximum speed for the device.

Our solutions uses the internal circuitry of an onboard FPGA to create a simple flash programmer. This relieves the bandwidth restricted JTAG scan chain of repetitive tasks such as shifting in control, address and data bits. By removing traffic from the scan chain, the solutions are able to achieve close to theoretical programming times for a given flash memory device.

More information on in-system device programming can be found in our “In-System Device Programming guide“.

Happy to serve you!

We have been able to solve thousands of board test problems by actively engaging with our customers. Once you become a JTAG Technologies customer you are an integral part of our business with free access to our world-wide support network.