Calculating bytes-per-sector for Xylogics 450/451
Don Speck
mangler at csvax.caltech.edu
Tue Apr 25 23:12:01 AEST 1989
It turns out that you can often get another sector or two out of each
track if you're willing to calculate the minimum sector size.
The fixed part of Xylogics 451 timing is:
read gate asserted 16 bytes before header sync
1 sync byte, 4 header bytes, 4 CRC bytes
20 bytes of gap between header and data
1 sync byte, 512 data bytes, 4 ECC bytes
3 byte write splice
That's 565 bytes. At the end of this, write gate turns off. It takes
typically 10 microseconds before it's safe to turn on read gate for the
next sector (called the write recovery time). This spec is in the disk
drive manual.
Thus, the minimum number of bytes per sector is:
bytes_per_sector = 565 + write_recovery_spec * transfer_rate
(in microseconds) (in MB/s)
Usually this does not evenly divide the track. Increase the sector size
until the remainder is not much larger than 150 bytes, or it disappears
and the last data sector is still above minimum size.
Examples: minimum adjusted
write xfer sector track sector runt
drive recovery rate size size sectors size sector
Fujitsu 2351 12us 1.859 MB/s 588 28160 47 595 195
Fujitsu 2372 10us 2.458 MB/s 590 40960 69 590 250
CDC Sabre 850 7us 2.465 MB/s 583 41088 70 587 none
My three Fujitsu 2372's are configured as indicated above. The Fujitsu
2351 calculation matches the figure Sun uses for Eagles.
Xylogics 451 manuals give a value big enough for any drive (600), and
disks are usually shipped configured for a sector size that evenly divides
the track (typically about 640 bytes). These will certainly work, but are
overconservative and will waste space.
More information about the Comp.sys.sun
mailing list