Normal MCB Behavior
The MCB is set up by default to automatically send a REFRESH command every 7.8 or 3.9 microseconds. The operating temperature typically determines the selected refresh rate for a system. This auto-generated REFRESH adheres to the JEDEC specification. An internal counter is used for the auto-REFRESH period and is set by the C_MEM_TREFI parameter. When the counter expires, the REFRESH is automatically sent.
Manually Sending Refresh
You have the ability to manually send the REFRESH command (i.e., during a known idle period) from the user interface by setting pX_cmd_instr to 3b1xx. When a REFRESH is then sent from the user interface, the counter is reset.
Changing the Auto-Refresh Period
The MCB does not support completely turning auto-REFRESH off. However, there is the ability to change (increase) the period between REFRESH commands. The parameter for the refresh period is C_MEM_TREFI. The calculation for the counter is as follows:
refresh counter = ceiling (C_MEM_TREFI / tCK)
By default, C_MEM_TREFI is 7.8 or 3.9 microseconds,depending on the temperature you are running the memory, and tCK is the period of the sysclk. The allowable range for the refresh counter is 0 - 4095. As an example, a customer running DDR3 at 400 MHz and wanting as few REFRESH commands as possible would manually change the C_MEM_TREFI setting in the wrapper file (memc_wrapper.v) to 10237500 (4095 * 2500).
NOTE: Using the Create Custom Part feature, available in the MIG tool, allows the refresh period (trefi - average periodic refresh interval) to be defined within the tool and the corresponding MIG parameters to be set properly.