True TTL has Vih=2.0V and Vil=0.8V levels which are entirely compatible with the 3.3V Vcco powered LVTTL IOSTANDARD.
If you're using a hybrid technology like ACT logic where the inputs are TTL compatible but the outputs are CMOS swing, simple series resistors will allow your 3.3V Vcco powered LVTTL inputs to deal with the high rails. It might be "safer" to include those resistors with classic 5V powered TTL devices anyway.
The series resistor is a consideration if you're doing I/Os over long lines for high slew rate edges because the resistor value is much larger than the characteristic impedance of the circuit board trace. Those are the only signals you have to pay closer attention to.
The appropriate resistor values and the data to back up the value selection are found in various pieces of the FPGA documentation.
LCX sub-family is good for going from TTL to LVTTL. It is 5V tolerant. If you want bi-directional then is hard to beat the use of a bus switch which passively limits voltage to the sensative side. We QS3861 regularly for this purpose.
John Adair Enterpoint Ltd. - Home of Broaddown2. The Ultimate Spartan3 Development Board.
There are zilions of options. With the requirement of "standard TTL" levels, the output voltage of a 3.3 Volt powered bank is fine for the TTL standard. Only protection of the Spartan is needed. This can be done:
- current limit resistors
- Bus switch like SN74CBTD338
- Level translating transceivers like SN74LVC8T245
- 3.3Volt powered SN74LVC245 First is cheapest, but eventually requires a 3.3 Volt supply that can sink current Second is a no-brainer, as no direction switching is needed. It's also fastest. Third is most universal, as this with work with lower voltages on the Spartan too. And for the last possibility, you probably already have the parts on hands.
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.