New faster methods for the in-system programming of onboard flash as well as I2C and SPI memory are explained in a new eBook published by ASSET InterTech. In-system programming has many advantages over standalone programming stations, but, until now, its programming speed has presented a challenge for design and production engineers. Advanced programming methods based on the IEEE 1687 Internal JTAG (IJTAG) standard and embedded programming engines in an onboard FPGA can accelerate programming speeds by a factor of 1,000, shortening the process from tens of minutes to a second or less.
“In many cases, the contents of FPGA-connected flash is not available when prototypes of a board design are produced. And production engineers often don’t know what version of the firmware to load until a customer orders a system,” said Kent Zetterberg, author of the eBook and an ASSET product manager. “In cases like this, in-system programming is the best solution. Faster programming speeds make it even more effective.”
Previously, in-system programming which utilized the IEEE 1149.1 JTAG port on the FPGA required that every memory write operation traverse the FPGA’s entire scan chain. The new IJTAG standard can embed a dynamically reconfigurable network of embedded instruments and at-speed programming engines into FPGAs, systems-on-a-chip (SoC) and other types of devices. Since the IJTAG network is reconfigurable, the in-system programming process can take a shortcut through the FPGA’s JTAG scan chain to reduce programming times significantly.