Discussion:
IO pins : short circuit protection ?
(too old to reply)
Timo Dammes
2004-11-15 14:49:58 UTC
Permalink
Hello


When connecting external circuits to the fpga's IO-pins, should I use
something like 10k-resistors to protect the IO-pins from overload ? I'm
trying to be careful, but I could imagine a high signal on an
output-IO-pin and connecting the pin to ground at the same time could
destroy the fpga...
Or do the Xilinx fpgas have an internal protection ?

Regards,
Timo
Austin Lesea
2004-11-15 15:52:03 UTC
Permalink
Timo,

If you look in the IBIS models (there are in ASCII), you will find the
protection diode IV curves.

As long as you stay within the Absoulte Maximum (Table 1, section 3)
limits of the specifications for any currents and voltages, everything
will be just fine.

Shorting an IO pin to ground momentarily will not damage the device.
Shorting it for months just might damage it.

Shorting more than one pin to ground momentarily will also not damage
the device.

Shorting ten or more to ground for a long time just might damage the device.

Driving an output pin with another chip is likely to damage the other
chip, not the FPGA.

Austin
Post by Timo Dammes
Hello
When connecting external circuits to the fpga's IO-pins, should I use
something like 10k-resistors to protect the IO-pins from overload ? I'm
trying to be careful, but I could imagine a high signal on an
output-IO-pin and connecting the pin to ground at the same time could
destroy the fpga...
Or do the Xilinx fpgas have an internal protection ?
Regards,
Timo
Timo Dammes
2004-11-15 22:01:10 UTC
Permalink
I read the ibis modell for my fpga
(http://www.xilinx.com/support/sw_ibis.htm)...
|--------------------------- XC2S200 ------------------------------
|
variable typ min max
|R_pkg 182.50m 180.00m 185.00m
|L_pkg 13.350nH 11.700nH 15.000nH
|C_pkg 1.5500pF 1.3000pF 1.8000pF
Ok, but that doesn't mean any short circuit protection, as 180mOhm isn't
that much...
[Temperature Range] 27.0000 100.0000 0.000
[Voltage Range] 2.5000V 2.3750V >2.6250V
[Pulldown]
| voltage I(typ) I(min) I(max)
|
-2.5000 -35.2520mA -24.0630mA -41.1300mA
...
4.8000 0.2267A 0.1802A 0.2622A
5.0000 0.2513A 0.1997A 0.2917A
I'm not sure if I understand this :
When connecting a 5V voltage source to the fpga-io-pin (as
pulldown-output), a current of 0.25A would be fed ?
As long as you stay within the Absoulte Maximum (Table 1, section 3)
This is a thing that I can't find in the file spartan2.ibs...
Shorting ten or more to ground for a long time just might damage the device.
And that is a thing that I want to prevent. So I thought putting a
resistor between an A/D-converter and falsely output-switched io-pin to
prevent a hughe current.
What I simply wanted to ask is, how much current is acceptable ?


Regards,
Timo
Austin Lesea
2004-11-15 22:49:07 UTC
Permalink
Timo,

Page 1, Table 1. Look at the allowed voltage. Then use the diode IV
table in the IBIS model to find current.

From the file,
[POWER_clamp]
| voltage I(typ) I(min) I(max)
|
-3.30 6.17A 6.28A 6.12A
-3.20 5.90A 6.01A 5.86A
-3.10 5.64A 5.75A 5.60A
-3.00 5.38A 5.49A 5.33A
-2.90 5.11A 5.23A 5.07A
-2.80 4.85A 4.96A 4.80A
-2.70 4.59A 4.70A 4.54A
-2.60 4.32A 4.44A 4.28A
-2.50 4.06A 4.18A 4.01A
-2.40 3.80A 3.91A 3.75A
-2.30 3.54A 3.65A 3.49A
-2.20 3.27A 3.39A 3.23A
-2.10 3.01A 3.13A 2.97A
-2.00 2.75A 2.87A 2.71A
-1.90 2.49A 2.61A 2.44A
-1.80 2.23A 2.35A 2.18A
-1.70 1.97A 2.10A 1.93A
-1.60 1.72A 1.84A 1.67A
-1.50 1.46A 1.59A 1.41A
-1.40 1.21A 1.33A 1.16A
-1.30 0.96A 1.08A 0.91A
-1.20 0.71A 0.84A 0.66A
-1.10 0.47A 0.60A 0.42A
-1.00 0.25A 0.38A 0.21A
-0.90 78.20mA 0.18A 53.88mA
-0.80 14.96mA 44.93mA 18.61mA
-0.70 6.69mA 8.78mA 10.98mA
-0.60 2.80mA 2.96mA 5.51mA
-0.50 0.68mA 0.83mA 1.82mA
-0.40 81.59uA 0.14mA 0.29mA
-0.30 5.30uA 14.08uA 20.76uA
-0.20 0.23uA 1.07uA 0.81uA
-0.10 8.35nA 67.32nA 24.93nA
0.00 1.14nA 6.95nA 4.38nA

So, if -0.5 V is the abs max, then the anything less than 1.82 mA is
perfectly safe.

Generally speaking, less than 10 mA will not affect operation, and will
not hurt anything. Anything more than that, will probably affect
functionality. Damage will occur above ~ 100 mA.

Austin
Post by Timo Dammes
I read the ibis modell for my fpga
(http://www.xilinx.com/support/sw_ibis.htm)...
|--------------------------- XC2S200 ------------------------------
|
variable typ min max
|R_pkg 182.50m 180.00m 185.00m
|L_pkg 13.350nH 11.700nH 15.000nH
|C_pkg 1.5500pF 1.3000pF 1.8000pF
Ok, but that doesn't mean any short circuit protection, as 180mOhm isn't
that much...
[Temperature Range] 27.0000 100.0000 0.000
[Voltage Range] 2.5000V 2.3750V
2.6250V
[Pulldown]
| voltage I(typ) I(min) I(max)
|
-2.5000 -35.2520mA -24.0630mA -41.1300mA
...
4.8000 0.2267A 0.1802A 0.2622A
5.0000 0.2513A 0.1997A 0.2917A
When connecting a 5V voltage source to the fpga-io-pin (as
pulldown-output), a current of 0.25A would be fed ?
As long as you stay within the Absoulte Maximum (Table 1, section 3)
This is a thing that I can't find in the file spartan2.ibs...
Shorting ten or more to ground for a long time just might damage the device.
And that is a thing that I want to prevent. So I thought putting a
resistor between an A/D-converter and falsely output-switched io-pin to
prevent a hughe current.
What I simply wanted to ask is, how much current is acceptable ?
Regards,
Timo
Timo Dammes
2004-11-16 07:50:04 UTC
Permalink
Thank you

Loading...