1
\$\begingroup\$

I am designing PCB which has an FT601 for USB communication. No matter how hard I tried, I could not keep the traces short enough in order to avoid reflections and simulation was revealing significant overshoot and undershoot (>300 mV) so I decided to use termination resistors. The impedance of the traces is 50Ω so I am going to use this value or a value close to it. So far so good.

What I realized, then, is that this means a great number of resistors. The FT has 36 data lines, which means 72 resistors since they are bidirectional (according to what I have read I must terminate in both directions) as well as 5 other control lines resulting in a total number of around 80 resistors. And here come my questions, since I am a rookie in the high-speed design business:

  • What type of resistor? Should I use regular SMD resistors or an array in a chip? FTDI in their breakout board UMFT601 use those 33Ω chip arrays which I cannot identify. I did some research over component distributors and found some solutions but I did not notice any significant advantage (space, total price) of using a chip over normal SMD, apart from easier placement during design. Is there a standard approach to this situation?

  • Max distance between pin and resistor? How far the pin is OK to place the the resistors? I know they should be as close as possible but since the FT package is QFN the array (whether is chip or normal SMD) has to have some distance in order to achieve the connections properly.

  • Terminate both sides? Do I have to terminate both sides on the bidirectional pins? Most literature is focused and discuss one direction when analyzing signal integrity and I have not found many resources on the subject of bidirectional.

\$\endgroup\$
  • \$\begingroup\$ Although short traces help, it is the impedance of the traces that keeps reflections down. USB3.0 requires 90ohm differential and 45ohm single ended impedance. USB 2.0 requires 90ohm differential and 30ohm single ended impedance. The pairs also need length matching, 5 mils and 150 mils, 3.0 and 2.0 respecitvly. Those parameters need to be fixed before adding resistors. \$\endgroup\$ – vini_i Apr 24 at 20:57
  • \$\begingroup\$ @vini_i Sorry if I my question was not clear enough but I was referring to the FIFO part of the chip, not the USB communication. That part is settled correctly, with the variables you said. \$\endgroup\$ – Manos Apr 24 at 21:01
  • \$\begingroup\$ What is on the "other side" of thi FIFO? Why do you believe you need terminations on the other end? \$\endgroup\$ – Ale..chenski Apr 24 at 21:37
  • \$\begingroup\$ Why do you question their original reference design? 4xSMD resistors are fairly common and easy to find... \$\endgroup\$ – Ale..chenski Apr 24 at 21:42
  • \$\begingroup\$ @Ale..chenski On the other side is an FPGA, MachXO2. The reason I think I need termination is because I simulated the design using the FPGA IBIS model for the outputs (unfortunately FTDI does not provide one for the FT) and there were significant overshoot/undershoot as I wrote in the original question. By placing termination resistors the signal improved. I tried to keep the traces short but I could not keep them that short (<= 1 inch). \$\endgroup\$ – Manos Apr 24 at 21:49
1
\$\begingroup\$

What type of resistor

People use SMD resistor arrays all the time. They are easy to find on Digi-Key, Mouser, or any other place. The FTDI reference design uses 4xR arrays. Why do you question their advice?

enter image description here

Max distance between pin and resistor? How far the pin is OK to place the the resistors? I know they should be as close as possible but since the FT package is QFN the array (whether is chip or normal SMD) has to have some distance in order to achieve the connections properly.

There is always a trade-off. See above. Why don't you take their reference design as a guide?

Terminate both sides? Do I have to terminate both sides on the bidirectional pins? Most literature is focused and discuss one direction when analyzing signal integrity and I have not found many resources on the subject of bidirectional.

Termination on the other end depends on input impedance of the link "partner". If this is a FPGA, good ones usually have configurable controlled impedance, so you might need no termination at all if the FPGA configuration is right.

More, from the FTDI datasheet (looking at VIH/VIL at specified drive current) it looks like their driver impedance is about 75 Ω. If you try to target your your traces for 70-80 Ω (which should be easier than 50 Ω) and don't use a controlled-impedance connector in between, you might need no series termination at all.

\$\endgroup\$
  • \$\begingroup\$ What you write is correct, and I agree with you, but in practice there a lot of information missing. Here are my views: a) I know they use arrays, but I did not want to use them unquestionably, I wanted to know if there are advantages over single resistors. b) The FT600 Chip Config Utility has pin drive strength options which let you control the impedance. Highest option is 50Ω. The FPGA also is configured as 8mA LVCMOS33 so it should be 50Ω BUT according to the official IBIS if memory serves is 25Ω. \$\endgroup\$ – Manos Apr 24 at 22:58
  • \$\begingroup\$ ....Both datasheets do not mention anything explicitly about input impedance unless I have not understood something due to my inexperience. So, theoretically, it is possible I don't need termination resistors. But practically, I do not want to risk sending something for manufacturing and then find out it does not work. But then again, I may be wrong. \$\endgroup\$ – Manos Apr 24 at 22:58
1
\$\begingroup\$

What type of (series) resistor?

Use the 4-in-1 0804 33 Ohm package example is equivalent to 4x discrete 0402 packages. There are many OEM's; incl. Yageo, Panasonic, Bourns, CTS.

enter image description here

I don't know your assumptions for source impedance, no load rise time but the reflections only start when the total prop delay is greater than the rise time.

Some users get away without series R's https://blackmesalabs.wordpress.com/tag/fpga/

\$\endgroup\$
  • \$\begingroup\$ Thanks for the link, it ruined my day haha! You got me questioning my approach yet again! How is it possible not to use termination over such length and such connectors?? \$\endgroup\$ – Manos Apr 24 at 21:53
-1
\$\begingroup\$

I assume you mean a series resistor, but just want to clarify, because a 50 ohm parallel termination to ground would be an awful lot of current.

I agree, I think the resistor packs probably save a little room, and make the BOM shorter. But they can also be sources of assembly errors, IME. I don't think it makes a difference which way you go signal integrity wise.

As for where you put it, my opinion is put one, and put it anywhere. Do the math but I bet you'll find that the capacitance at the IO pads exceeds the trace capacitance by enough that it mostly won't matter where on the trace you put the resistor (unless you have longer traces than I'm imagining...). I'd like to tell you I've done this with success...but I actually can't remember an equivalent situation right now involving a bidirectional bus.

\$\endgroup\$
  • \$\begingroup\$ DONT just put it anyway. Series source impedance works best at close (as close as you can to the driver). This can clearly be seen in calculations and/or simulations. Fire up hyperlinks and see \$\endgroup\$ – JonRB Apr 24 at 21:36
  • \$\begingroup\$ I think you're not wrong in situations where signal integrity is a major concern, with higher frequencies and long traces. If you can demonstrate that it's actually a driving consideration for a 100MHz single ended signal to have a source resistor, let's say 3 inches from the driver instead of very close, I would be interested to see it. \$\endgroup\$ – Jeff McBride Apr 24 at 22:55
  • \$\begingroup\$ it isn't about higher frequencies, its about risetime, drive strength and propagation time. Loading a card layout into Hyperlinx will show this \$\endgroup\$ – JonRB Apr 25 at 0:07
  • \$\begingroup\$ To reliably transmit a synchronous signal to your receiver, I think its fair to say frequency plays a role; for very low frequency these characteristics don't affect the ability to receive the right data, because the signal will have stabilized by the receiving edge (clocks excluded). So we're left primarily with EMI concern, and I think adding a resistor anywhere will reduce the edge rate. It is better to have the resistor at the source, I don't disagree there. I'm just not sure it's worth the cost of double resistors in a case like this. \$\endgroup\$ – Jeff McBride Apr 25 at 0:26
  • \$\begingroup\$ Also, I honestly am not sure how much better -- on a short trace of just 2 or 3 inches -- putting two resistors right next to pads on both ends would be vs putting a single on either end or in the middle. My instinct is that it you get most of the way there without it, but I would legitimately be interested to see any analysis that proves me wrong. It wouldn't be the first time :). \$\endgroup\$ – Jeff McBride Apr 25 at 0:30

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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