XC9500 devices receive programming vectors and instructions via the JTAG Test Access Port. During programming, the address and data information is shifted in first and then a programming time is initiated to imprint the programming data into the selected flash cells. This is repeated for all flash memory addresses within the device.