0
\$\begingroup\$

I have never used differential I/Os in FPGA ( XC3S400). I always use PlanAhead for pin planning .When I click on a specific pin, it has all single ended standards but none of the differential standards exist ( as LVDS-25 , DIFFxxx, ...). When I try manually type these standards into the relative boxes, I receive an error ( the line gets red and save stops).

What am I missing?

I think it is possible to assign a differential I/O in .ucf file , but I don't know the syntax!

enter image description here

\$\endgroup\$
4
  • \$\begingroup\$ Wild guess : is there a way to select an appropriate pair of pins? If so, do additional standards appear? \$\endgroup\$
    – user16324
    Commented Nov 17, 2013 at 15:19
  • \$\begingroup\$ @BrianDrummond nope! \$\endgroup\$
    – Aug
    Commented Nov 17, 2013 at 15:37
  • \$\begingroup\$ ok. does p.280 of the PlanAhead User Guide (UG632) help? \$\endgroup\$
    – user16324
    Commented Nov 17, 2013 at 16:31
  • 1
    \$\begingroup\$ This may be obvious, but did you check that the pins you are trying to use are actually suitable to use as a differential pair, and that the bank they are part of have the right output voltage supply (VCCO)? If you are not sure, Chapter 10 of the Spartan 3 user guide (UG331) is your friend. \$\endgroup\$ Commented Nov 20, 2013 at 4:43

1 Answer 1

1
\$\begingroup\$

Were you trying to assign those pins as outputs? Xilinx Spartan3 FPGAs have a restriction that the differential standard outputs can be assigned to Banks 0 or 2 only. Only a few combinations of IOSTANDARDS are also possible on those banks. For further details, please refer to Differential I/O Standard Bank Compatibility" section under chapter 10 in UG331.

Not sure why the differential standard is not showing up in the "Create IO Ports" option in PlanAhead. However, if you want to assign it through .ucf, you can use this syntax:

NET LOC = | IOSTANDARD = LVDS_25; NET LOC = | IOSTANDARD = LVDS_25;

This example is assuming that you are trying to use 2.5V LVDS IOs. If you are trying to use another IOSTANDARD, please substitute the keyword for the respective standard.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.