The I/O standard is 3.3-V LVTTL and your assumption about the method employed is correct.
Does the solution remain the same?
Is there any way to predict this type of behaviour or standard formulas?
Would changing the current strength or I/O standard help at all?
I have an FPGA demo board and on the GPIO I have attached a 4 x 3 membrane keypad. This keypad is simple, create a current on the column pins and look for a completed circuit on the row pins.
http://ebay.arduinodiy.co.uk/ebayimages/ebaycontent/kppinout2.jpg...