How can you configure multiple Virtex devices in SelectMAP mode and have all Virtex devices become active at the same time?
Connect the CCLK, Data, /WRITE, BUSY, DONE, and /INIT pins in parallel. Each Virtex device is loaded separately by asserting the /CS pin of each device.
The Host processor should follow these steps:
- Set /WRITE LOW.
- Sequence A:
1. Set /CS of one Virtex device LOW.
2. Send configuration Data.
3. At the end of the bitstream, deselect the Virtex device by setting its /CS pin HIGH.
4. Repeat Sequence A for all other Virtex devices.
- Disable Data Source.
- Configuration Completed - Done will go HIGH when all devices have released it.
The programming sequence for SelectMAP can be found in Flowchart form in the Virtex data sheet V2.5, (Figure 17, Page 2-17).
The "Virtex 2.5V FPGA Complete Data Sheet (all four Modules)" can be downloaded at:
It is possible to configure multiple Virtex devices using SelectMAP without external circuitry, given the following conditions:
- The SelectMAP pins must not be persisted (-g Persist:No).
- The devices will NOT start up at the same time (i.e., the DONE pins should not be tied together).
- An extra I/O pin is available.
In the design of each device, an I/O needs to be added that is permanently tied to ground. This I/O should be routed on the board to the /CS pin of the next Virtex device in the SelectMAP chain. All the devices must have preconfiguration pull-ups enabled (010). When the first device starts up, it will drive the /CS line of the next device Low, effectively readying it for configuration.
This method could be very useful when using an 18V00 PROM or PROMs, or a similar method of sending the data stream in a constant fashion.