AHA2790UW has speed-limit problems ?

Mike Bilow mikebw at bilow.bilow.uu.ids.net
Sun Aug 16 12:41:24 PDT 1998



Ross Harvey wrote in a message to Mike Bilow:

 RH> I would advise against doing this!  Three reasons:

I didn't advise in favor of overterminating the bus, either.  :)

 RH>   1. The terminators have a DC load. The load from the first
 RH> pair of terminators is already at the specified max for the 
 RH> drivers.

This is true to a point, but the practical situation is that you have a very
large safety margin that is nearly an order of magnitude.  In terms of DC load,
an extra terminator will appear in parallel with the existing two.

 RH>   2. At the point where the incident wave hits the middle 
 RH> `terminator', the bus Z becomes Z/2. A terminator of resistance 
 RH> R is equivalent to an infinite length transmission line of 
 RH> impedance Z==R. The middle `terminator' then appears as a fork, 
 RH> with an infinite length line one way and the remainder of your 
 RH> SCSI `bus' (it's not really a bus any more!) going the other 
 RH> way.  For an incident wave with voltage step V, you get an 
 RH> inverted reflection of V/2 heading back to the src and a 
 RH> truncated forward wave of V/2 heading towards the original dst. 
 RH> At the source, the driver will put out another V/2, (if it can, 
 RH> it's now being asked to sink or source more mA than its data 
 RH> sheet allows) and this will reflect forward and back as V/4 at 
 RH> the middle `terminator'.

I don't mean this to sound facetious, and I'm not even disagreeing with your
analysis, but what you have constructed is a theoretical argument against
attaching peripherals to the SCSI bus.  Admittedly, you have to introduce
impedance discontinuities into the system at numerous places, because a SCSI
bus without peripherals may not be especially useful.  It is certainly possible
to push this too far, as you say, but the issue is really how much is too far? 
I have never seen any real SCSI bus fail due to overtermination even when the
bus was absolutely packed full of peripherals, and the loading resulting from
the addition of a third terminator is roughly comparable to what you get by
adding a couple of peripheral devices.

It is precisely this problem of device loading which causes the design problem
in the first place.  SCSI devices must be designed to support anywhere from two
to eight device loads, and this represents a significant range.  It is a common
mistake to say that these loads are high-impedance devices in contrast to the
terminators and therefore do not affect the system impedance, but everyone
knows from practical experience that this is not true.  In fact, the average
SCSI bus is probably operating underterminated because it had to be designed to
accommodate such a wide range of cable lengths and peripheral counts, and many
problems are the result of this undertermination.

Sure, it is possible to make all kinds of clever circuits which sense impedance
and correct for the ideal design condition, and forced perfect termination is a
good example of such a system.  However, economic considerations usually compel
device designers to compromise on this, and to design using devices that are
simply fixed with sufficient bias to operate linearly over an acceptably wide
range of conditions.  It usually works, but this sort of engineering falls flat
on its face when you start using long cable lengths, adding lots of devices,
and increasing data rates.

Ultimately, where you and I disagree is your assertion that overtermination
_always_ results in increased noise (or, to think of it another way, decreased
signal-to-noise ratio).  This can certainly happen, but it is not always true.

 RH>      You might observe this to work, anyway, in some specific 
 RH> example case. This might be due to a combination of slow 
 RH> drivers and a short bus, so that it is partly a lumped load and 
 RH> not a transmission line, and because the drivers fortunately 
 RH> had extra capacity, they didn't burn out, and you didn't notice 
 RH> the possibly shorter drive lifetimes. Or, perhaps, because an 
 RH> end terminator was defective or not really enabled as expected. 
 RH> But see #3.

I readily concede that more sophisticated techniques, particularly forced
perfect termination, are preferable to deliberately overterminating the bus. 
And, while your theoretical arguments have some merit, I can tell you from long
experience that I have never blown up a single device due to overtermination,
and I have blown up many through other causes!  I have watched enough of these
things on analyzers and oscilloscopes to know that nearly all devices are
necessarily designed so that they tend to be close to the low side of their
range in actual operation.  For that matter, I have on a few occasions tested a
SCSI bus and learned just how much safety margin really exists, shortly
thereafter using a fire extinguisher on the SCSI cables.

As for overtermination working only when the system operates as a lumped load
rather than a transmission line, it is worth pointing out that the same
technique has been used successfully in real radio antennas for decades, and
that several classical designs (such as the rhombic) actually depend upon it.

 RH>   3. The correct solution is to recycle the SE HW and go 
 RH> differential, LVD, or FC. Even if you can tweak it into working 
 RH> by upgrading terminators or cables or by --oh dear-- *refolding 
 RH> and untwisting the cables*, whatever, you can bet money that 
 RH> you have no noise margin. 

I agree, but your "correct solution" involves replacing all of the hardware!
 
-- Mike



To Unsubscribe: send mail to majordomo at FreeBSD.org
with "unsubscribe aic7xxx" in the body of the message



More information about the aic7xxx mailing list