Sunday 6 January 2019

signal - How termination resistors work; what happens if I use lower values?


I am going to try to interface low-speed 8bit DDR2 chip to FPGA, and I've got some questions crucial to make it work :-)


Is that correct that the idea of termination resistor is to sink most of the signal to GND, so that only small part of it reflected back? Have anyone tried to put let's say 2-3 resistors of smaller value so that multiple remining reflections will be out of phase & cause less interference?



Answer



A transmission line can be modelled as an infinite set of capacitors and inductors (lossless). You start to use this model as your electrical line becomes large enough that you cannot think of the line as an instant connection.



General Idea


First, an LC circuit is going to have ring, and if it suddenly hits an "open" instead of another LC circuit it will bounce very high. If you were to make a model using 10 inductors and 10 capacitors this would easily happen. When you place termination on the end you are damping the signal. If you have a perfectly matched resistor at the end you will have 0 overshoot as the resistor will dissipate its power.


Source Termination


If you instead place a resistor that matches the transmission line in series between the source and the transmission line you get one of the most effective termination techniques. In this case the line can only be driven to 1/2 of the target voltage, but the signal travels down the line and when it hits the open at the other end (most inputs are almost opens with very high impedances) it bounces, doubling, and giving you a full voltage at the receiver. The signal then travels backwards and, when it reaches the source, terminates on the resistor.


This may not be instantly clear, I would very much suggest "High Speed Digital Design: A Handbook of Black Magic", but this means your line does not drive nearly as high at one point, and noise is a function of dV/dt. This only terminates noise on the line at the source, which helps a large amount. I would heavily suggest you tear into my favorite handbook of black magic.


Trace Impedance


Most people have heard of the simple equation forms of inductance and capacitance. Capacitance goes up with area and down with distance. Inductance goes up with the size of the loop.


If you think of of a trace above a ground plane, as your widen the trace, the area increases but distance does not. This means that your capacitance increases while your inductance stays the same. As your distance increases, your area must increase a lot to keep the same impedance.


There are many many different calculators out there. I found one instantly with a google search.


Just match your impedance, add some termination, and try to avoid bad practices like bridging across a break in a ground plane (No embedded traces around these signal lines). I hope this also makes the physical effects a little more clear.



Too Small a Termination?


You will actually get reflections, but instead of bouncing up, it will bounce down. An open will double your voltage, it will all reflect backwards. A short does the opposite, giving you zero voltage. It also greatly increases your power absorption from your driver.


No comments:

Post a Comment

arduino - Can I use TI's cc2541 BLE as micro controller to perform operations/ processing instead of ATmega328P AU to save cost?

I am using arduino pro mini (which contains Atmega328p AU ) along with cc2541(HM-10) to process and transfer data over BLE to smartphone. I...