UPGRADE YOUR BROWSER

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# 42176

MIG Spartan-6 MCB - Debugging Calibrated Input Termination

Description

MIG can provide calibrated on-die input termination for DDR2 and DDR3 memory interfaces.When this option is selected, the mcb_soft_calibration module calibrates the input termination for the bidirectional memory interface signals dq, ldqs_p/n, udqs_p/n to an external 100 Ohm pull-up resistor on the RZQ pin. It is possible to determine the values that the mcb_soft_calibration module selects for the pull-up (p-term) and the pull-down(n-term) by using the ChipScope Pro toolto read out those values. Reading out the values can provide insight as to whether the calibrated input termination has been performed as expected.

NOTE: This Answer Record is 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.

Solution

For ISE 13.2, MIG 3.8, the calibrated input termination algorithm is as follows:

  1. Set RZQ pin n-term to x0
  2. Set RZQ pin p-term to x0
  3. Increment RZQ pin p-term until the RZQ pin flips from a logic-0 to a logic-1
  4. Scale found RZQ p-term by 7/4
  5. Load scaled p-term value into ZIO pin
  6. Set ZIO pin n-term to x0
  7. IncrementZIO pin n-term until the ZIO pin flips from a logic-1 to a logic-0
  8. Skew the found p-term by 9/8 and n-term by 7/8 and load into all bidirectional memory interface pins (provides slight pull-up)
  9. Skew the found p-term by 7/8 andn-term by 9/8 and load into all differential bidirectional memory interfacepositive pins (provides slight pull-down)
  10. Skew the found p-term by 9/8 andn-term by 7/8 and load into all differential bidirectional memory interfacenegative pins (provides slight pull-up)
  11. Set RZQ pin p-term to x0
  12. SetZIO pin n-term to x0

This provides a ~50 Ohm calibrated parallel input termination.

To determine the values for the p-term and n-term that are programmed into thebidirectional memory interface pins, you need to observe the following signals in the mcb_soft_calibration module:

P_Term - p-term value programmed initially into allbidirectional memory interface pins

N_Term- n-term value programmed initially into allbidirectional memory interface pins

P_Term_s -p-term value programmed into all differential bidirectional memory interfacenegative pins

N_Term_w-n-term value programmed into all differential bidirectional memory interfacenegative pins

P_Term_w-p-term value programmed into all differential bidirectional memory interfacepositive pins

N_Term_s -n-term value programmed into all differential bidirectional memory interfacepositive pins

Typical values for these signals depend on the I/O standard and theVCCAUX voltagefor the interface. For a DDR3 interface with a 3.3 Volt VCCAUX setting theP_Term signal should be around 0xF and the N_Term signal should be around 0xB.The other values can becalculated from the P_Term and N_Term values.

Linked Answer Records

Associated Answer Records

Answer Number Answer Title Version Found Version Resolved
43557 MIG Spartan-6 MCB - Determining which calibration stage failed N/A N/A
AR# 42176
Date Created 08/22/2011
Last Updated 12/15/2012
Status Active
Type General Article
Devices
  • Spartan-6 LX
  • Spartan-6 LXT
IP
  • MIG