IIRC what it actually does is load a bitfile into the FPGA that turns it into a programming device for the configuration flash chip. It's been a while since I've worked with Xilinx parts but I do know that you can load the bitstream directly (volatile) or program the flash (nonvolatile) with the same JTAG connection.