How much time is required to program a Platform Flash device via JTAG?
The time required to program the Platform Flash via JTAG depends on the bitfile size and the TCK frequency.
The programming sequence for the Platform Flash looks like this:
ISC_DATA_SHIFT (16 TCK)
Shift in 256 bit Data (256 TCK)
ISC_PROGRAM (16 TCK)
RUNTEST 1000 TCK (1000 TCK)
Since only 256 bits are shifted in at a time, this sequence gets repeated bitfile_size[bits]/256 times.
The following formula gives an estimate of the needed TCK cycles:
TCK_cycles = (16 + 256 + 16 + 1000) * bit_size[bits]/256
Here is an example to illustrate this:
Bitfile size: 1886560 bits (Spartan-3A 400)
TCK frequency: 10MHz
TCK_cycles = (16 + 256 + 16 + 1000) * 1886560/256 = 9491755
This gives a programming time of:
T_programming = TCK_cycles/TCK_frequ = 9491755/10E6 = 0.949s
Please note that this estimate takes only the actual programming of the Platform Flash into account.