We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 29261

10.1 EDK, MPMC v4.00.a - How do I go up one revision from a Virtex-5 DDR2 MPMC v3 design to an MPMC v4 design?


Keywords: Virtex5, upgrade, convert, MIG, UCF

How do I go up one revision (rev-up) from a Virtex-5 DDR2 MPMC v3 design to an MPMC v4 design?


Virtex-5 rev-up for DDR2 MIG PHY MPMC designs has been simplified in EDK 10.1 Service Pack 1, and improved in Service Pack 2 and Service Pack 3. A recommended early version of the Service Pack 3 scripts can be downloaded from:

To update a Virtex-5 DDR2 design:

-Extract this the above ".zip" file on the local computer.
-Execute the following commands in a command prompt shell where ISE tools are in the PATH:


<PATH_TO_SCRIPT> is the location of the extracted zip file, containing revup_v5_ucf.pl.
<MPMC v3 UCF> is the name of the UCF file from your mpmc_v3_00_a or mpmc_v3_00_b project.
<PART NUMBER> is the FPGA part you are targeting; for example xc5vlx50ff676.
<DQ PIN NAME> is the base name of the DQ pins in your UCF file, without bus indices.
<DQSn PIN NAME> is the base name of the DQSn pins in your UCF file, without bus indices.
<USER UCF> is the output UCF file that should be used in your mpmc_v4_00_a project.
<MHS SNIPPET> is the name of an output text file that contains the new MPMC parameter settings.

For example:

xilperl C:/Xilinx/EDK/hw/XilinxProcessorIPLib/pcores/mpmc_v4_00_a/data/revup_v5_ucf.pl C:/myproject/etc/system.ucf xc5vlx330tff1738 fpga_0_DDR2_SDRAM_32Mx64_DDR2_DQ fpga_0_DDR2_SDRAM_32Mx64_DDR2_DQSn system_new.ucf system_new.mhs


-Use the output UCF file in the 10.1 XPS project.

MHS Snippet

-Cut and paste the generated MHS snippet file directly into the MPMC instance of the project's MHS file.

New MPMC_Clk0_DIV2 port

For Virtex-5 DDR2 MIG PHY designs, a new PORT called MPMC_Clk0_DIV2 must be connected to a clock that is 1/2 the frequency of, and synchronous to, MPMC_Clk0. This PORT specification is a new requirement for MPMCv4, and is included in the generated MHS snippet.

Multiple MPMCs

For designs with multiple MPMCs, this script should be executed multiple times. The new constraints from each run correspond to a single MPMC instance. The new constraints in this case must be made more specific by modifying the '*/' wildcard in constraint names to signify the particular MPMC instance the script was run for. For example, replace '"*/' with '"*MPMC_INST_0/'. Also, there must be only one set of generated timegroups and timespec names. Uniquify the following timespec and timegroup names used for each MPMC instance:


AR# 29261
Date Created 02/22/2008
Last Updated 10/24/2008
Status Active
Type General Article