How to connect 100Base-FX transceiver to SFP module (schematic)

Also see my post on selecting a suitable 100Base-FX Ethernet PHY.

Note that sometimes the capacitors and the 100 Ohm termination resistor is integrated in the specific SFP module in use! In that case, replace the capacitors by 0 Ohm resistors and omit the 100 Ohm resistor. My recommendation is to check out the datasheet of the SFP module or just try it out with the capacitors & termination if you don’t know.

100Base-FX transceivers are pretty easy to connect to the PHY, but you have to terminate the high speed interface correctly. Since PECL logic is used, the termination scheme is somewhat difference.

PECL & AC termination

The first thing is understand is that while all SFP modules are equal (i.e. subject to the SFP multi-source agreement), some are more equal than others.

More specifically, some of them include termination resistors, some of them include AC coupling capacitors, some of them include both and some of them include none. My recommendation is to assume that the SFP module contains both AC coupling caps and the transmit termination, but have spare component footprints in case you need to add them. Similar strategies are recommended

What you absolutely need is:

  • A 50 Ohm differential trace between the SFP and the PHY
  • Some termination scheme on the PHY side
  • You 100% absolutely need to checkout your PHY’s datasheet, or ask the manufacturer for reference schematics!
  • Short traces – the shorter the traces, the less headache you’ll get from debugging. You don’t want more headache than neccessary, believe me.

What you might or might not need, depending on SFP, PHY and board layout is:

  • Additional terminations (if you add those while other termination is already in place, this will approximately half your signal amplitude.
  • AC coupling capacitors (doesn’t hurt all too much to include them even if they are redundant)
  • Pullup resistors for the PHY driver

Variant 1: Microchip

The following information is based on Microchip’s application note for the LAN93xx series. The basic termination strategy is to use a 100R differential transmit termination, included with the note that some transceivers already contain the termination resistor inside them and using an extra termination resistor.

Note that in one of the schematics Microchip swapped the termination resistors. The 130 Ohm resistor should go toward 3.3V and not toward ground.

Furthermore, Microchip requires 50 Ohm (read: 49.9 Ohm) pull-up resistors to be fitted to the transmit lines. These resistors are required for the Microchip drivers, but not required for all drivers.

Variant 2: Marvell

In Marvell’s 88E3015/88E3018 datasheet, a slightly different termination scheme is implemented which omits the differential 100R termination resistor in favour of a pair of

Note that the Marvell device does not specify 50R pullup resistors. As far as I could find out SFP modules never appear to require these pullups, but some PHYs do. The only safe variant is to include these pullups into the schematic and do not populated them.

Combining the variants

A good idea with high speed signals, especially with different transceivers is to include all possible options and then just try out what works best.

Download KiCAD schematic

My recommendations on what to start with are as follows:

  • All resistors shown with NA values: Do not populate, populate only if needed experimentally
  • Since most SFP receivers already include AC coupling capacitors, these are not needed, but they typically do not hurt either
  • Try to keep the traces between the PHY and the SFP module short. This will solve most signal integrity problems without having to test-fit resistors etc.

In addition to the high speed data connection from the SFP module to the PHY, you want to find the LOS (loss of signal) pin, sometimes called signal detect or link detect and also connect it directly from the SFP module to the PHY (no termination or pullups required).

Regarding the layout, as usual with high speed connections, ensure that the components are placed near to the relevant components and try to place the PHY and the SFP module as close together as possible.