Problems have been found with the MIG 2.2 Update Design feature, and a patch is required to work around these issues. The issues are detailed below.
This patch is included in the MIG 2.3 release.
This patch should only be installed when using MIG 2.2.
The patch can be downloaded from either of the following locations:
The known issues with Update Design addressed in the tactical patch are as follows:
1. Bit notation in output RLOC_ORIGIN constraints might be incorrect. Lower bits will have the correct notation as shown in bit 23 below while the upper bits are incorrect, as follows:
These incorrect constraints will cause errors during NGDBuild similar to:
2. The DQ_IO_MS and DQS_IO_COL parameters in the top-level rtl ddr2_sdram.v/.vhd file of the updated design are specific to the original UCF and not the UCF uploaded to update.
If the pin-out is modified (a UCF is uploaded to update), these parameters must be updated. Two errors might be seen in the tools, one during MAP and one during PAR.
The following error might occur during MAP if the parameter settings are incorrect:
The following errors will be seen during PAR if the parameter settings are incorrect:
3. In some cases, the RLOC_ORIGIN constraints are incorrect. This will cause one of the two errors in MAP and PAR as mentioned in #2 above.
4. In some cases, the resource LOC constraints for the DQS Gate circuit are swapped between different DQS groups.
There are a total of 3 LOC constraints for each DQS group.
Below is an example where the DQS Gate constraints are swapped between bytes  and :
INST "*/gen_dqs.u_iob_dqs/u_iddr_dq_ce" LOC = "ILOGIC_X0Y18"; # Should be ILOGIC_X0Y16
INST "*/gen_dqs.u_iob_dqs/u_iodelay_dq_ce" LOC = "IODELAY_X0Y18"; # Should be IODELAY_X0Y16
INST "*/gen_dqs.u_iob_dqs/u_iddr_dq_ce" LOC = "ILOGIC_X0Y16"; # Should be ILOGIC_X0Y18
5. The IDELAYCTRL LOC constraint in the output UCF is specific to the original UCF and not the UCF uploaded to update. If the pin-out is modified (a UCF is uploaded to update), this value must be updated.
6. When non-DCI banks are selected for DQ/DQS in Virtex-5 DDR/DDR2 designs, one DM bit allocation was missing in the UCF file. This allocation is correct with the patch.
7. When non-DCI banks are selected for DQ, the RLOC constraints on the slave pins are not correct for the ddr2_v5 design. This allocation is correct with the patch.
8. For x4 memory parts, MIG 1.73 generates only one data mask per byte and MIG 2.2 generates two data masks per bytes. When a MIG 1.73 UCF is updated, the updated UCF and the RTL generated from 2.2 will not match.