297 lines
16 KiB
Plaintext
297 lines
16 KiB
Plaintext
|
||
|
||
|
||
|
||
ÉÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ»
|
||
º º
|
||
º A Hard Disk Drive º
|
||
º for º
|
||
º Steve's Dream Machine º
|
||
º º
|
||
º by º
|
||
º Steve Gibson º
|
||
º GIBSON RESEARCH CORPORATION º
|
||
º º
|
||
º Portions of this text originally appeared in Steve's º
|
||
º InfoWorld Magazine TechTalk Column. º
|
||
º º
|
||
ÈÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍͼ
|
||
|
||
|
||
|
||
I love hard disk storage, it's elegant, amazing, tricky,
|
||
logical, and completely understandable. So let's begin by
|
||
discussing one of my favorite aspects of modern personal
|
||
computer architecture, and some critical components of Steve's
|
||
Dream Machine... the Hard Disk Storage Sub-System.
|
||
|
||
We all want several things from our hard disk systems: High
|
||
Speed, High Capacity, Low Cost, and High Reliability. I've found
|
||
a unique combination of hard disk and controller, for any
|
||
machine with a 16-bit I/O bus, which delivers all four in
|
||
spades.
|
||
|
||
The performance of a hard disk system is determined by two
|
||
simple and separate things: The average time required to begin a
|
||
data transfer and the speed of that transfer once it begins.
|
||
|
||
In my opinion the world is completely seek-performance crazy.
|
||
When someone asks "How FAST is that drive?" they're speaking
|
||
only of the average seek performance. Sure it's a factor, but
|
||
it's FAR from being the most important issue. What matters much
|
||
more is the CONTROLLER's data encoding format, minimum
|
||
achievable sector interleave, head switching behavior, and
|
||
believe it or not, the number of heads on the drive!
|
||
|
||
DOS numbers a disk's sectors sequentially from the outside
|
||
inward. When it wants to read or write a sector, it first
|
||
determines where the sector is located on the drive then sends
|
||
the heads to that location. This means that the issue is not
|
||
how long it takes a drive to move its heads to cylinder 100, but
|
||
rather how long it takes to move them to SECTOR NUMBER X. For
|
||
different drives these can be very different questions.
|
||
|
||
For example, let's take the ubiquitous Seagate ST225 20 megabyte
|
||
hard disk drive as our baseline. It can't handle RLL encoding,
|
||
so it's limited to 17 sectors per track. It also has four heads
|
||
for four tracks per cylinder. Therefore this drives has a
|
||
CYLINDER DENSITY of 17 times 4, or 68 sectors per cylinder.
|
||
|
||
Now let's compare this with the Steve's Dream Machine drive, the
|
||
MiniScribe 3650. This lovely half-height drive handles RLL
|
||
encoding without a hiccup for 26 sectors per track, and its 6
|
||
heads combine to deliver a cylinder density of 156 sectors per
|
||
cylinder.
|
||
|
||
In other words, the 3650 packs 2.29 times more sectors into each
|
||
cylinder than the ST225. DOS's sector numbering scheme means
|
||
that the 3650 needs to move its heads 2.29 times less far, or
|
||
about 44% the distance of the ST225!
|
||
|
||
So while the Miniscribe drive might appear to be slow, with its
|
||
head positioner rated at 61 milliseconds average access time, if
|
||
we compare apples to apples, using the ST225's 65 millisecond
|
||
speed as a reference, the 3650 is equivalent to a ST225 drive
|
||
with a 26 millisecond actuator!
|
||
|
||
In order to correctly compare hard drive access times, I
|
||
designed an index which takes all of these factors into account
|
||
and which can be used to correctly rate any drive. I call it the
|
||
Real Sector Access Factor, or RSA Factor.
|
||
|
||
To determine it for any drive simply multiply the sectors per
|
||
track (17 for MFM encoding, 26 for RLL) by the drive's head
|
||
count, then divide by the drive's average seek time. This yields
|
||
an index which is completely compensated to account for cylinder
|
||
density and allows drives to be correctly compared.
|
||
|
||
The RSA Factor for the ST225 is 1.04, versus 2.55 for the
|
||
Miniscribe 3650. The Seagate ST238 with its RLL encoding comes
|
||
in with a 1.60 and the ST251 with its 40 millisecond average
|
||
access ranks an RSA Factor of only 1.70. As these numbers
|
||
demonstrate, it's important to compare apples to apples when
|
||
evaluating drive specifications. The "sluggish" 3650 even beats
|
||
out the "swifter" ST251 when compared correctly.
|
||
|
||
In the case of average sector access times, the actual distance
|
||
the heads must move is really determined by the number of
|
||
sectors the drive and controller are able to stuff onto each
|
||
cylinder, not by shaving milliseconds from average access times.
|
||
|
||
The Miniscribe 3650 is not quite officially RLL certified,
|
||
though I hear rumors that it's about to be, simply because it
|
||
works so well. I've tested many of them myself, and the bright
|
||
boys at Northgate Computer Systems (who turned me on to this
|
||
drive in
|
||
the first place) are shipping thousands with RLL controllers in
|
||
their 286 AT compatibles. They've had no problems. I'm quite
|
||
comfortable with the 3650 and RLL encoding.
|
||
|
||
Finally, the 3650 is rated as having 809 cylinders, though it
|
||
actually has 852. I've been low-level formatting mine out to 842
|
||
cylinders. Then, under DOS 3.3 with RLL encoding, you get two
|
||
MAXIMUM SIZE 33.4 megabyte DOS partitions! They couldn't be any
|
||
bigger! Sixty-seven fast megabytes in an inexpensive half-height
|
||
drive is hard to beat!
|
||
|
||
Okay, so we've defined the real performance of a hard disk sub-
|
||
system to be: The average time required to begin a data
|
||
transfer, and the time required to preform the transfer once it
|
||
has started. We then examined the first of these terms and saw
|
||
that the data encoding technology (MFM or RLL) and the drive's
|
||
head count both dramatically affect the system's actual head
|
||
seek performance since they determine the average distance the
|
||
head must move to get to the proper DOS sector. Now we'll examine
|
||
the second determiner of hard disk system performance, the actual
|
||
data throughput.
|
||
|
||
Many tricky and interacting issues determine a hard disk
|
||
system's delivered data throughput, but none of them are very
|
||
tough to understand.
|
||
|
||
The raw data that rotates underneath our hard disk's heads
|
||
moves at quite a clip. Data bits that are encoded with Modified
|
||
Frequency Modulation (MFM) technology flow to and from the
|
||
drive's head at 5 million bits per second, and Run Length
|
||
Limited (RLL) encoding moves its data at 7.5 million bits per
|
||
second. After subtracting the inter-sector gap intervals and
|
||
sector addressing overhead, this translates to 522,240 bytes of
|
||
real data per second for MFM and 798,720 bytes per second for
|
||
RLL.
|
||
|
||
Unfortunately the hard disk controllers and motherboards used in
|
||
PC, XT, and most current generation AT computers are completely
|
||
unable to keep up with data flowing at this rate. So the
|
||
practice known as SECTOR INTERLEAVING was invented to slow
|
||
things down to a rate which our computers can handle. Sector
|
||
interleaving spaces successively numbered sectors out around the
|
||
disk so that our slower hard disk controllers and computers can
|
||
digest the prior sector before the next one begins. Failing to
|
||
space the sectors far enough apart incurs the substantial delay
|
||
of waiting for the disk to spin all the way around again.
|
||
|
||
The original IBM XT's hard disk was interleaved at 6-to-1 (6:1)
|
||
which meant that 1/6th of the track's sectors were read during
|
||
each revolution of the disk and that six revolutions were
|
||
required to read a single 17-sector track. This also meant that
|
||
the original XT's effective data transfer rate was 522,240
|
||
divided by 6, or 87,040 bytes per second. Not very exciting.
|
||
|
||
Even today things are frequently not much better. I have upset
|
||
Western Digital in the past by reporting that most of the
|
||
machines I had tested were not fast enough for the default 3:1
|
||
sector interleave they were using on their MFM controller with
|
||
the result that only one sector was being transferred for each
|
||
revolution of the disk. This of course resulted in horrible
|
||
30,720 byte per second throughput. The fact is that most of
|
||
today's XT and AT machines are using MFM encoding with an
|
||
interleave of 3:1 or 4:1 and delivering unexciting throughputs
|
||
of 174,080 or 130,560 bytes per second respectively.
|
||
|
||
When I wrote a series of columns on hard disk performance, I
|
||
reported that RLL encoding was "not here yet" but that I was sure
|
||
it would be a good thing and that we were only premature, rather
|
||
than wrong, about its ultimate viability. Well, I'm delighted to
|
||
report that RLL encoding is FINALLY
|
||
REALLY HERE! The controllers have their acts together and
|
||
reliable and robust RLL drives are readily available. If
|
||
horrible experiences set you forever against RLL, I strongly
|
||
advise you to re-address the issue. As long as you
|
||
choose your drive and controller carefully, you won't have any
|
||
trouble.
|
||
|
||
Aside from cramming more data into a drive, RLL also increases
|
||
the real seek performance of any drive. Remember our discussion
|
||
of Real Sector Access (RSA) Factor. Raising the drive's cylinder
|
||
density by 150% drops its average seek times to just 66% of what
|
||
they would be with MFM encoding. And since the drive's data is
|
||
encoded at 150% density, the raw data rate from the drive is 150%
|
||
higher.
|
||
|
||
However, a higher data rate from the drive doesn't help us much
|
||
if we must immediately water it down with a large sector
|
||
interleave. Western Digital's latest 1002A-27X 8-bit RLL
|
||
controller defaults to an unexciting interleave of 4:1,
|
||
delivering 199,680 bytes per second throughput which beats an
|
||
MFM controller with 3:1... but not by much.
|
||
|
||
The great news is that we're just beginning to see some really
|
||
hot (and inexpensive) hard disk controllers which are fully able
|
||
to keep up with a 1-to-1 interleaved disk for the delivery of
|
||
screaming 798,720 byte per second data transfer rates! That's
|
||
just shy of 0.8 megabytes per second!
|
||
|
||
|
||
I've explained my choice of hard disk drive for Steve's Dream
|
||
Machine. The Miniscribe 3650 is very inexpensive (several booths
|
||
at a recent Southern California swap meet were selling them for
|
||
between $290 and $300), it's half height (so you can have a pair
|
||
of them!), utterly capable of handling RLL encoding, and places
|
||
six heads under the control of a 61 millisecond (average seek)
|
||
stepping motor positioner.
|
||
|
||
Twenty-six sectors per track and six tracks per cylinder give the
|
||
3650 a cylinder sector density which is 2.29 times higher than a
|
||
typical four head MFM drive, so it actually performs like a
|
||
drive with a 26 millisecond average seek time because the heads
|
||
only need to move 44% as far to get to the same sector.
|
||
|
||
Even though Miniscribe says the drive has only 809 cylinders it
|
||
actually has 852 physically and I've been formatting all of mine
|
||
out to 842. Northgate Computer accepted my suggestion and has
|
||
been doing the same to hundreds of theirs also without hitch, so
|
||
I'm quite comfortable suggesting this to everyone.
|
||
|
||
I run under DOS version 3.3 because it's able to split the drive
|
||
into two MAXIMUM SIZE 33.4 megabyte partitions WITHOUT the need
|
||
for any messy third-party partitioning software. This yields a
|
||
"C" and "D" partition of 33.4 megabytes respectively or 67
|
||
megabytes overall!
|
||
|
||
So what about a hard disk controller? Well in this day and age
|
||
there's no excuse for NOT going with RLL and a 1:1 sector
|
||
interleave. So let me make this point quite clear. First, even
|
||
though disks seem to be spinning quite fast, they're really
|
||
quite slow. 3600 RPM is only 60 revolutions per second, which is
|
||
16.67 milliseconds per revolution.
|
||
|
||
Now imagine that we wish to read or write a moderate size file
|
||
of 26K bytes. Since sectors are 512 bytes, 26K bytes requires 52
|
||
sectors. On an MFM format drive with 17 sectors per track this
|
||
fills 3 tracks. A typical interleave of 4:1 requires 12 disk
|
||
revolutions, for a total transfer time of 0.2 seconds. However
|
||
an RLL controller with 26 sectors per track and 1:1 interleaving
|
||
moves the same 52 sectors in just two revolutions or 0.033
|
||
seconds. Two revs versus twelve... or SIX TIMES FASTER!
|
||
|
||
I'm delighted to tell you that choosing a hard disk controller
|
||
was quite simple, because nothing even comes remotely close to
|
||
Adaptec's model 2372 masterpiece. In the first place, it REALLY
|
||
handles a SUSTAINED 1:1 interleave. Other 1:1 controllers may
|
||
grab an entire track in one revolution, but they're then unable
|
||
to continue with the next track immediately afterward.
|
||
Consequently the system's performance drops by half to that of a
|
||
2:1 interleaved drive. The Adaptec sustains 798K bytes per
|
||
second across multiple tracks.
|
||
|
||
Secondly, you don't need a 16 megahertz 386 system. Any AT
|
||
compatible can achieve screaming 800,000 bytes per second
|
||
transfers with this controller. It comes in two flavors, the
|
||
2372 handles two hard drives as well as two high or low density
|
||
floppy drives and the 2370 just handles two hard drives.
|
||
|
||
The built-in low-level formatting software has to be seen to be
|
||
believed. It's the cleanest and most comprehensive of any I've
|
||
ever seen. If you want to run with multiple partitions, or a
|
||
partition larger than 33 megabytes it will actually create the
|
||
required CONFIG.SYS driver by "downloading" it from its own ROM
|
||
onto the root directory of the hard disk! Unbelievable.
|
||
|
||
Finally, and most incredibly, it is so compatible with the
|
||
standard AT hard disk MFM-style chip sets that it DOESN'T
|
||
REQUIRE ANY ROM BIOS WHATSOEVER up there in the high memory
|
||
"twilight zone!" After booting and initializing itself, the ROM
|
||
is never again used. This means that the "twilight zone" region
|
||
is not reduced in size and fragmented. Then utilizing Steve's
|
||
Dream Machine's memory manager, 386-to-the-Max, 225K of
|
||
completely free contiguous "twilight zone" memory is available
|
||
for loading TSRs and other resident software!
|
||
|
||
Finally, by using a non-RLL capable Seagate ST225 drive and some
|
||
ruthless worst-case data pattern testing software I've
|
||
developed, I was able to quantitatively compare the robustness
|
||
of the RLL data separators used in all of the contending
|
||
controllers. The Adaptec 2372 is absolutely up at the top of the
|
||
heap of RLL reliability because it makes the Seagate ST225,
|
||
which is totally worthless for RLL in any case, look BETTER than
|
||
any of the other RLL controllers do. So I'm more confident of
|
||
the Adaptec with a real RLL drive than I would be with any of the
|
||
others.
|
||
|
||
- The End -
|
||
|
||
|
||
Copyright (c) 1989 by Steven M. Gibson
|
||
Laguna Hills, CA 92653
|
||
**ALL RIGHTS RESERVED **
|
||
|