LVTTL buffers are typically capable of Vol=0.5V @24mA or 0.5/0.024= 20R drive impedance. So with 100R cable, to reduce ringing, 50~82R is desirable in series and may be increased to 200R.
But some are Vol=0.4V @8mA or 50R so 50R in series is optimal.
Vol= output low
Vih = input high
etc
LVTTL Rx threshold ~ 1.4V
example calculations
- Assume Tx Vol,Voh= 0,3.3 with 50R internal (RdsON)
- to Zo=100R cable to 3.3V Rx LVTTL
- logic thresh=1.4 (asymmetric, not Vcc/2)
- Voh spec>=2V ( for ~0.6V margin)
- Vil spec<=0.8V ( for ~0.6V margin)
Choosing 100R equivalent load gives more margin and matched termination.
Choose Rx voltage ratio = 1.4V for R network bias
A worst case Rx Vc of 3V is almost 50% where 3.3V is 42% or around 220Rup/180dn to Rx gives 99 R (Norton equiv) and 1.5Vavg
So you can see termination impedance biased to threshold is a tradeoff of no overshoot and attenuated signal.
Depending on clock period, and cable length determines ripple time from mismatch so designing for perfect match is a tradeoff for textbook waveforms and good ripple immunity.
You could consider anything from 220R / 180R or slightly higher with same ratio termination to 3.3V / 0V respectively
Single pullup of 510R or nothing works in short distances only and depends on cable impedance may work but with less noise immunity from external impulse noise currents ( inductors, motors, cap discharge etc)