When and Why to use termination resistors?? Please!

Thread Starter

PauloConstantino

Joined Jun 23, 2016
266
Dear friends,

I am building a CPU from scratch. I have already designed everything on paper except the schematics.

My question concerns so called termination resistors. I have researched on other peoples homemade CPU's and I have heard about using termination resistors for CPU's running at 4MHz or so.

I thought these only needed to be used for much higher speed circuits. As far as I know, termination resistors are needed to damp the main signal lines so that they do not behave like little antennas when the circuit is at high frequencies. I have also heard that the actual frequency is not the matter, but that the matter is the speed at which the actual signal changes from high to low and vice versa.

Can anyone PLEASE let me know when does one need termination resistors? I am planning to run my CPU at the same speed of 4MHz.

Your help is much appreciated.

Thanks

Paul

Moderators note: Please leave the original question.
Removing it will make the thread render useless.
 
Last edited by a moderator:

Papabravo

Joined Feb 24, 2006
21,227
You use termination resistors to match the characteristic impedance of a transmission line. There are two primary reasons for doing this:
  1. Eliminate reflections from an impedance discontinuity.
  2. To prevent the transmission line from acquiring and holding a residual charge
Depending on the dimensions of you CPU board I think you are unlikely to have problems with single ended signals and trace lengths in the 0-18 inch range for signals in the 4 MHz. range. This all supposes that you don't have any chips the produce extremely fast edges. These chips would be from the S, AS, AC, and ACT families. If you have any differential receivers, the preceding advice does not apply. there may also be special considerations that can only be dealt with by reviewing the full schematic.
 
Last edited:

nsaspook

Joined Aug 27, 2009
13,312
When you say scratch do you mean using a logic family like TTL or discrete transistor based. My general design rule for S-100 size vector boards with TTL was to use terminations for board to board buss/interface signals above a few MHz with digital logic. It's all depends on the construction method you use.

There should be some TI termination details in the links from this post.
http://forum.allaboutcircuits.com/threads/memio-emulator-for-z80.117003/#post-917222
 

Thread Starter

PauloConstantino

Joined Jun 23, 2016
266
When you say scratch do you mean using a logic family like TTL or discrete transistor based. My general design rule for S-100 size vector boards with TTL was to use terminations for board to board buss/interface signals above a few MHz with digital logic. It's all depends on the construction method you use.

There should be some TI termination details in the links from this post.
http://forum.allaboutcircuits.com/threads/memio-emulator-for-z80.117003/#post-917222
I mean CMOS 74HC IC's. Not TTL. I am confused because I don't know what they mean. Is it the clock frequency that is a problem or is it the rise/fall time that causes problems?
 
The general need for termination i think came about from slightly different reasons. TTL was the chip at the time and you had to bring the bus to a high state, but not too high because it can impact rise time. You could use, pull-ups as a first cut, a voltage divider for the second cut and an active terminator for the third version. So, your address and data buses were terminated. In one CPU system the "Terminator" was a card and the last card on the bus.

In that same system, the interrupt request line snaked through all of the cards. If a card was not inserted into that position, a "Bus grant" card had to be in it's place. This allowed priority by position on the bus as well as CPU priorities.

The more modern buses were the S-100, ISA, PCI and min-PCI busses. Modern CPU's have a bus for memory and internal buses as well as external buses and even slow speed busses like I2C.

So, it may or may not be "transmission line" type of terminators, but it could be. RS485 has a terminator at the beginning and the end of the bus.
 

nsaspook

Joined Aug 27, 2009
13,312
I mean CMOS 74HC IC's. Not TTL. I am confused because I don't know what they mean. Is it the clock frequency that is a problem or is it the rise/fall time that causes problems?
Look at this app note then: https://www.fairchildsemi.com/application-notes/AN/AN-393.pdf

It's all about timing with synchronous logic. As the clock increases the thresholds for setup, clock edge hold times , etc ... get smaller and smaller. Signal reflections and stored energy requirements for clean signal switching increase to the point where logic levels shift and are unreliable unless accounted for. For a single board CPU @4MHz it's unlikely you will have any logic to logic chip problems onboard if there is a proper ground-plane and power decoupling layout.

http://teledynelecroy.com/doc/troubleshooting-high-speed-digital-signals-with-dsos
 

crutschow

Joined Mar 14, 2008
34,464
I mean CMOS 74HC IC's. Not TTL. I am confused because I don't know what they mean. Is it the clock frequency that is a problem or is it the rise/fall time that causes problems?
In digital systems it's the rise and fall times that are the critical concern.
This Analog Devices paper states: "Terminate the transmission line in its characteristic impedance when the one-way propagation delay of the PCB track is equal to or greater than one-half the applied signal rise/fall time (whichever edge is faster)."

The only reason that the clock frequency is mentioned is that typically a lower clock frequency means the logic being used has a slower rise/fall time.
But if high speed logic is used at a low frequency then the rise/fall times is still the critical parameter.
 

OBW0549

Joined Mar 2, 2015
3,566
On a low-speed system composed entirely of 74HC and/or 74HCT chips (no 74AC, 74ACT, 74S or 74AS), I doubt you'll have much need for termination resistors except on very long lines. For traces longer than a foot or so, we used to use source termination (a.k.a. series termination), with a resistor (usually 22Ω-33Ω) in series with the line located right at the driver. Sometimes we'd use a device with a Schmitt trigger input, such as a 74HC14, at the receiving end to "clean up" the signal.

Keep in mind that it's mainly clocking signals (signals that drive the clock inputs of flipflops, counters and registers) that need terminating, to avoid such evils as double-clocking; for other signals, termination isn't usually needed at low speeds like 4 MHz.
 

ian field

Joined Oct 27, 2012
6,536
Dear friends,

I am building a CPU from scratch. I have already designed everything on paper except the schematics.

My question concerns so called termination resistors. I have researched on other peoples homemade CPU's and I have heard about using termination resistors for CPU's running at 4MHz or so.

I thought these only needed to be used for much higher speed circuits. As far as I know, termination resistors are needed to damp the main signal lines so that they do not behave like little antennas when the circuit is at high frequencies. I have also heard that the actual frequency is not the matter, but that the matter is the speed at which the actual signal changes from high to low and vice versa.

I have just read here: https://www.fairchildsemi.com/application-notes/AN/AN-610.pdf
that for 74HC series chips (which are the ones I am using), the trace length can be as long as 18 inches before needing termination.

Here's my question: Does this mean 18 inches for every output of one IC to the input of the next? So that I only need to worry about this if there is a situation where I have an IC driving another through a wire that is around 18 inches in length?

And if this never happens, then i dont need to worry? And that if this happens for some IC's, then I will need to terminate each of them individually?

Can anyone PLEASE let me know when does one need termination resistors? I am planning to run my CPU at the same speed of 4MHz.

Your help is much appreciated.

Thanks

Paul
If a copper track starts to look like a transmission line - it will also acquire a characteristic impedance. And impedance mismatch on the end will produce reflections.

Termination resistors were pretty much compulsory on busses like SCSI - onboard busses between a CPU and various peripheral chips are more likely to have series damper resistors to prevent ringing - about 22 -33R is typical.

If you still have problems - you may have to consider "data race" conditions. If a bunch of tracks turn a corner, the outside tracks will be a tiny bit longer - in a very fast system, the finite time it takes a pulse to travel could cause a rising edge to arrive late because of a longer track path. Sometimes on commercial boards; you find a few tracks that are a sort of square zig-zag - this delays some pulses while others catch up.
 
Top