DONE pin indicates that the configuration process is over, and the device is in the Startup sequence. By default, the configuration startup sequence does not wait until the CLKDLLs have locked. How do I make sure the DONE does not go high until all the CLKDLLs are locked?
This is a two-step process:
1. Attach the STARTUP_WAIT attribute to the CLKDLL in the ucf file
INST <DLL instance name> STARTUP_WAIT=TRUE;
2. Use the following option in bitgen program:
Where # is a number between 0-6
To set the -g LCK_cycle:# in the GUI go to
Implementation -> Options -> Edit Configutaion Options -> Startup Tab
then click "C#" in the Release DLL section.