The MIG 3.2 GUI allows users to enable or disable usage of Data Mask.
The following is stated in the MIG tool for the Data Mask option:
"Uncheck this box if you would like to not use data masks and save FPGA I/Os that are used for DM signals."
This option should not be available as the Data Mask signals MUST be used in Spartan-6 FPGA MCB designs.
Data Mask cannot be disabled, and the udm and ldm pins cannot be used as GPIO.
Version Fixed: 11.4 (MIG v3.3)
Data Mask must be enabled and the udm (x16 only) and ldm I/O (mcbx_dram_ldm and mcbx_dram_udm) must be connected to the DM pin(s) on the memory component even if the user does not intend to mask any data.
Data Mask must be enabled as the MCB will need to use the Data Mask pins in certain cases, even when the user has not requested data masking at the User Interface.
User Interface: Configured as 32-bit wide
Memory width: x8
Memory Burst Length: 8
In this case, the normal memory transaction would be 64 bits.
However, if the user only requests a single User Word (32 bits) to be written at the user interface (User Burst Length = 1), then the MCB will need to mask off half of the data beats.
The Spartan-6 Memory Controller User Guide (UG388) includes the following in the "MCB Functional Description" section:
In addition to these guidelines, Data Mask must be used, and therefore, LDM and UDM can never be used as GPIO.