Note: This Answer Record is a part of the Xilinx MIG Solution Center (Xilinx Answer 34243) The Xilinx MIG Solution Center is available to address all questions related to MIG. Whether you are starting a new design with MIG or troubleshooting a problem, use the MIG Solution Center to guide you to the right information.
Usage:
An MMCM uses the input system clock to generate the capture clock(s) and resynchronization clock(s) using the CLKPERF output. This CLKPERF output is a low jitter clock source that goes directly from the MMCM to the I/O without using a buffer. This MMCM is located in the infrastructure.v/.vhd module in the output 'rtl/ip_top' directory. The MMCM CLKPERF output is routed to OSERDES/IODELAY elements. These IODELAY elements drive BUFIO (capture logic) and BUFR (resynchronization logic) local clock buffers to create the CPT and RSYNC clocks. The IODELAYs allow each of these clocks to be adjusted individually to provide for reliable capture of the read data eye from the memory. The RSYNC clock is used for final stage data capture in the DQ ISERDES and to transfer read data into fabric.
For a view of this capture/rsync logic, see the PHY Clocking Architecture figure (Figure 1-47) in The Virtex-6 FPGA Memory Interface Solutions User Guide. For more information on this logic, see the DDR2 and DDR3 Memory Interface Solution > Core Architecture > PHY section in The Virtex-6 FPGA Memory Interface Solutions User Guide.
Placement:
Constraints:
The MIG output locks the required number of CCIO pins and associated IODELAY and OSERDES sites for the interface generated. These LOCs are contained in the output User Constraints File (design.ucf). Here is an example rsync logic placement:
CONFIG PROHIBIT = A20;
INST "u_memc_ui_top/u_mem_intfc/phy_top0/u_phy_read/u_phy_rdclk_gen/gen_loop_col0.u_oserdes_rsync"
LOC = "OLOGIC_X1Y143";
INST "u_memc_ui_top/u_mem_intfc/phy_top0/u_phy_read/u_phy_rdclk_gen/gen_loop_col0.u_odelay_rsync"
LOC = "IODELAY_X1Y143";
INST "u_memc_ui_top/u_mem_intfc/phy_top0/u_phy_read/u_phy_rdclk_gen/gen_loop_col0.u_bufr_rsync"
LOC = "BUFR_X1Y7";
By default, MIG uses Single Region Clock Capable I/O (P_SRCC) sites because all of the related logic data group logic exists within the same bank. Multi-Region P_CCIO sites may also be used. If it is desired to move the Capture Logic prohibits and site LOCs, users should modify the sites within the output UCF and run the updated UCF through the Verify UCF and Update UCF and Design tool. For more information, see (Xilinx Answer 34386) Information:
While the design does not capture data using DQS, it does monitor the phase of DQS during reads to account for any phase shift due to voltage/temperature changes. If the phase varies, the capture clock phase is adjusted using the MMCM Phase Shift.
Because DQS is not used to capture data, it only needs to be placed on ap/n I/O pair rather then a Clock Capable I/O (CCIO) pair.
For more information on the capture logic, please see:
Answer Number | 问答标题 | 问题版本 | 已解决问题的版本 |
---|---|---|---|
34543 | MIG Virtex-6 DDR2/DDR3 - DQS I/O Placement | N/A | N/A |
34308 | MIG Virtex-6 DDR3/DDR2 - Verify pin-out/banking requirements are met | N/A | N/A |
34477 | MIG Virtex-6 DDR2/DDR3 - Capture Logic Placement Requirements | N/A | N/A |