User manual

Table Of Contents
Zynq-7000 AP SoC Technical Reference Manual www.xilinx.com 215
UG585 (v1.11) September 27, 2016
Chapter 6: Boot and Configuration
bitstream from the PCAP. The smallest amount of bitstream data that can be read back from the PL
is one configuration frame which contains 101 32-bit words. An example program sequence is shown
below. The datapath is illustrated in Figure 6-19.
Example: PL Bitstream Readback
This example shows the first DMA access for a PL bitstream readback:
1. DMA Source Address – location of PL readback command sequence.
2. DMA Destination Address – desired location to store readback bitstream, note that the OCM
memory is not large enough to hold a complete PL bitstream readback.
3. DMA Source Length – number of commands in the PL readback command sequence.
4. DMA Destination Length – number of readback words expected from the PL.
There are four limitations when accessing the PL configuration module:
1. Readback of configuration registers or the bitstream cannot be performed until the
devcfg.INT_STS [PCFG_DONE] bit asserts.
2. A single PCAP readback access cannot be split across multiple DMA accesses. If the readback
command sent to the PL requests 505 words, the DevC DMA must also be set up to transfer 505
words. Splitting the transaction into two DMA accesses results in data loss and unexpected DMA
behavior.
3. The DMA must have sufficient bandwidth to process the PL readback due to a lack of data flow
control on the PL side of the PCAP. Overflow of the PCAP RxFIFO results in data loss and
unrecoverable DMA behavior. If adequate bandwidth cannot be allocated to the DevC DMA, then
the PCAP clock could be slowed down or the readback could be broken up into multiple smaller
transactions.
4. All DMA transactions must be 64-byte aligned to prevent accidently crossing a 4K byte boundary.
For more information regarding PL bitstream readback, see UG470
, 7 Series FPGAs Configuration
User Guide.
Loopback For Boot Image Transfers
The DMA controller is used to move boot images. Loopback is enabled by setting the devcfg.MCTRL
[INT_PCAP_LPBK] bit = 1; the boot image is read into the RxFIFO and written to another memory
location from the TxFIFO. The DMA source address can be to a linearly addressable flash device and
the destination can be OCM or DDR memory. The PL does not need to be powered-up to use the
loopback datapath. The datapath is illustrated in Figure 6-19.
Note: Caution should be taken in loopback mode when transferring boot images between slave
ports that prioritize writes over reads. This situation can lead to a DevC DMA hang condition.