[Color Computer][Coco] Tandy Hard Disk Controller
Gene Heskett
gene.heskett at verizon.net
Sun Mar 5 01:02:33 EST 2006
On Saturday 04 March 2006 23:25, Mark Marlette wrote:
>Gene,
>
>The 4n1 worked, but it didn't even follow the electrical spec for
>SCSI. I'm sure if you would have loaded the bus with all devices it
>would have failed. Not the case with the TC^3.
I do now that it failed when a cdrom was also attached and set for the
next address up. I haven't tried that with your tc^3 yet though, I
need to salvage another connector to install, & find the round tuit to
get it done.
>Glazing over??? Come on Gene I wanted you to teach me something I
>didn't already know about SCSI. :)
Doubtfull if I could have taught you anything about scsi, even a decade
ago. The one single thing I've long since learned is that very few
engineers building this stuff, really, truely, understand scsi's
termination. The biggest single reason scsi has a reputation for
needing ritual sacrifices, vestal virgins prefered to make the bus
actually work I'll discuss.
The first huge engineering, or bean counter mistake, I think sometimes
the engineers get over-ridden in their parts procurements by bean
counters that don't always understand the nuances of the difference in
something as simple as a diode. The engineer usually knows about the
problem, and specs a schotkey for the bus isolation diode in an attempt
to maintain a decent noise margin in the resting logic 1 voltage. With
that, the usual 220-330 resistor network used per line gives maybe 2.85
volts. Thats arrived at via assuming the psu is 5 volts, the schotkey
drop is .15 to .2 volts, leaving a 4.8 to 4.85 voltage for the
termpacks. So the logic line on the buss is sitting at an open
collector voltage of 2.88 volts, and the bus has a noise margin of 440
millivolts above a guaranteed logic 1. With decent cabling, the buss
will work error free even if it does ring a little. And it will.
Now sub a small si diode for that, which may well drop that 4.8 volts to
4.3 or less as the si diode will drop .75 volts at that current level
typically. (4.3/550)*330 now equals 2.58 volts, only a 180 millivolt
noise margin. Then due to wireing losses and old age in the psu, its
now down to 4.88 volts on the 5 volt line at the motherboard connector,
and by the time it gets thru the motherboard to the scsi card & the top
of that diode, its maybe 4.6 volts. Subtract the diodes nominal drop
of .7 volts and you have (3.9/550)*330=2.38 volts and no noise margin.
The bus rings maybe .7 volts on a signal edge, and there's not a ttl
gate in the world that won't see that and make a mistake. Not even
active terms on the other end will fix that. And people wind up
sacrificing goats, chickens (I used to use KFC's, but after they made
me sick a few times I got smart), whatever, trying to find the magic
incantation that makes it work.
I don't recall how many scsi busses (7 or 8 at least) I've converted
from flakey to dead solid with nothing more than a small schotkey power
diode replacing the cheapo si diode that the card shipped with back
when I was doing some amiga work. And one run of an expensive card
actually had the termpacks installed backwards so the resting voltage
was only about 1.9. Soldered in, it was easier to cut and jump the pcb
to fix it than to extract 3 termpacks and turn them around. I called
the maker and he wasn't the least bit embarrased. And that was the
last of those cards we ever bought.
The bus 'ringing' is just another word for VSWR, and those 220-330
resistor packs are just the nearest handy std value that attempts to
match the impedance of a ribbon cable, but misses the mark by at least
10 ohms most of the time for flat cables, & I haven't the foggiest how
far off it is for round cables, I shudder to contemplate it. And I've
had much better luck with std ribbon cable than with rounded stuff. At
least one can mathematicly calculate the flat ribbons impedance with a
10% slop figure and come up with something in the 118-124 ohm range if
I did it right. The termpacks 220 and 330 in parallel give you around
132 if the tolerances are nominal, so you can see there is an error,
leading to some ringing.
Active terms are another horse entirely, generally consisting of a bias
supply, and a power op-amp that supplies about 3 volts at a very low
impedance. All the data lines are then fanned out from this fixed
supply, usually by trimmed onchip r's of about 132 ohms per line, so
both the logic 1 voltage they supply, and the terminating impedance are
a lot closer to ideal. The development of this technology was driven
by the portable business, where every watt you burn is that much less
battery life. Termpack resistors draw .818 watts of power full time,
the active terms draw it only when the lines are carrying data, and
then only in proportion to the logic 0's on the buss at that instant.
>All the flavors of SCSI, the spec is something to get lost in for
>sure. Know it all? Nope, just enough for the CoCo. :)
>
>Mark
>Cloud-9
And thats my contribution to the knowledge pool vis-a-vis the care and
feeding of a scsi bus.
To a lot of folks its voodoo, to someone familiar with transmission
lines, which both the scsi and the atapi/ide busses are, the
explanation, and the fixes to make it work, makes sense.
Relatively unk is that in the case of ide/atapi drives, the one jumpered
as master also turns the cable terms on, and that means it should be on
the end of the cable, with the slave drive in the middle. Its not
always happy if the master is on the center connector, and the slave,
or nothing, is on the end of the cable. Thats asking for trouble with
a big kick me sign taped on your back.
[...]
--
Cheers, Gene
People having trouble with vz bouncing email to me should add the word
'online' between the 'verizon', and the dot which bypasses vz's
stupid bounce rules. I do use spamassassin too. :-)
Yahoo.com and AOL/TW attorneys please note, additions to the above
message by Gene Heskett are:
Copyright 2006 by Maurice Eugene Heskett, all rights reserved.
More information about the Coco
mailing list