How do I calculate the strength of the internal pull-up and pull-down resistors.
How do I calculate the external pull-down resistor with an internal pull-up enabled.
To calculate the internal pull-up or pull-down you will need Irpu (max) or Irpd (max) from the device DC and AC Switching Characteristics Datasheet.
This Irpu / Irpd value is based on the Vcco voltage. With this information you can calculate Rpu and Rpd using the equations below.
From Virtex UltraScale (DS893) Irpu at Vin = 0, Vcco = 1.8V, Irpu(max) = 678uA
Rpu = 1.8V / 678uA = 2.564 k
If you need to add an external pull-down you will need Irpu (max) and the maximum Vin Low (Vil) input level for the I/O standard being used.
For this calculation we will treat Irpu (max) as a constant current source.
With the pull-down (Rpd-ext) the line level must be less than Vil for the I/O Standard.
Rpd-ext * Irpu (max) < Vil (max)
Rpd-ext < Vil / Irpu
From Zynq-7000 PL (DS191) Irpu at Vin = 0V, Vcco = 3.3V, Irpu (max) = 330uA
LVCMOS33 Vil (max) = 0.8V
Rpd-ext < 0.8V / 330uA
Rpd-ext < 2.424 k