On 1/12/2011 10:00 PM, dwight elvey wrote:
Hi
I believe all 3.5 inch drives without DiskReady will block
both the read data and the index until the drive is considered
to be ready.
Dwight
My experience echos this at least on standard PC 3.5" floppy drives.
When read data starts pulsing, the data is immediately correct and
valid. While the drives spin up, read data isn't active at all. The
spec sheets I've read all point to 500ms worst case for spin up. I
assume the drive waits 'til the RPMs are within tolerance, and then
starts pulsing read data. There aren't any invalid pulses, like time
between edges too large due to too slow rotational speed.
For my purposes (a read-only amiga controller), the initial data coming
off the track isn't valuable anyways because you are ALMOST always in
the middle of the track at the beginning of the read. There are some
corner cases that need to be caught and dealt with appropriately.
I've not bothered to use diskready or index in my application, although
they are connected to the FPGA -- but I use them to look at RPM
consistency, etc. I simply read slightly more than a full track to
guarantee I have all sectors in a sequential buffer rather than screw
with wrapping the end of the buffer w/ the beginning. I pay a slight
per track performance penalty for this but this is negated because I can
start reading prior to receiving an index signal.(where some other
solutions would just wait)
Keith