I am designing a PCB for an ST micro MCU with external SDRAM.

On the demo board, ST is using one(1) series resistor termination for the bidirectional data lines. ST places this resistor at about 30/70% split of line length, where the resistor is 30 % of line length away from the MCU.

My understanding from research is to use two (2) resistors on bidirectional lines, one at each end, very close to the ICs connected to the line. The resistor values would match the IC output impedance to the line impedance.

What is the general recommended way to terminate a bidirectional data line?

Can a single resistor perform termination on a bidirectional line?

  • \$\begingroup\$ Not sure if those resistors are for impedance matching. A series impedance would act as source matching, but in bi-directional with a push-pull transmitter and HiZ receiver I don't see the correlation to the transmission line impedance matching. \$\endgroup\$ Oct 28, 2021 at 20:23
  • \$\begingroup\$ Which specific MCU? Which specific demo board? \$\endgroup\$
    – Justme
    Oct 28, 2021 at 23:23
  • \$\begingroup\$ The demo board is STM32H745I-DISCO. I am using the same MCU but different memory. \$\endgroup\$
    – MatAEM
    Nov 1, 2021 at 16:52

1 Answer 1


It's not in the textbooks, but a little bit of playing around reveals that placing some sort of termination in the middle of a transmission line gives a reasonable approximation to source termination at both ends. Making it a bit higher than the line impedance seems a good compromise. It looks like a neat trick to at least investigate for a bidirectional line. Here is a sim:

enter image description here

You get nice clean edges at the receiving end, and the advantage is that it works in the opposite direction. The overshoot / undershoot is small enough that the input schottky protection diodes may not get significantly involved, but I haven't investigated. Not sure about the 1/3 2/3 bit - maybe something to do with the relative driving impedances at each end, or possibly simply a layout issue.

For contrast, here is the same sim without the resistor (or very small anyway):

enter image description here

Clearly there are problematic reflections. Note, this is not accurate as the schottky diodes at the receiver input would certainly conduct in this case, probably making things worse, but I haven't investigated.

Of course, you can simply source terminate a bidirectional line at both ends:

enter image description here

The only issue would appear to be the degradation in risetime at the receiver, but for the values I have used - a 5p capacitor that sees 175 ohms during the risetime, gives a time constant a bit under 1ns. Not sure it's really worth saving a resistor.

  • \$\begingroup\$ Thanks so much for the thorough answer. I am using HyperLynx and haven't enough time to set it up to properly run a simulation. I will terminate the bidirectional line at both ends as cost and space for 32 resistors is not a problem. \$\endgroup\$
    – MatAEM
    Nov 1, 2021 at 17:13
  • \$\begingroup\$ You're welcome - it was an interesting question. \$\endgroup\$
    – Tesla23
    Nov 1, 2021 at 18:56

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.