摘要:
A single microprocessor (22) hard disk drive (10) having a shared buffer memory (40) for storing sector data as well as microprocessor variables and code includes a buffer manager (38) for arbitrating requests from various channels or clients for access to the shared buffer memory. The buffer manager arranges channels including a disk data channel (32, 140), a host interface channel (50, 140), and microprocessor channels (144, 148) into a round-robin circular priority queue, with the disk data channel normally assigned the highest priority for buffer access. A state machine carries out an arbitration cycle by sequentially servicing access requests pending within the queue. The state machine senses (139) a servo interrupt (SVOINT) to elevate the priority of any pending microprocessor access requests to the shared buffer, such that the requests are serviced and cleared rapidly to allow the servo interrupt servicing routine to start sooner. The servo interrupt is preferably asserted during a spoke gate (100) time when a head (16) is sensing a disk (12) servo region (S). During this time data transfers between the disk and the shared buffer memory are stopped, pending buffer memory data transfers can be paused, and head seeking and tracking is controlled. This technique reduces the uncertainty delay in starting the servo interrupt service routine by 10 percent, which restores otherwise lost processing time and reduces head positioner servo (20) phase jitter, thereby improving head tracking and seeking performance.
摘要:
A single microprocessor (22) hard disk drive (10) having a shared buffer memory (40) for storing sector data as well as microprocessor variables and code includes a buffer manager (38) for arbitrating requests from various channels or clients for access to the shared buffer memory. The buffer manager arranges channels including a disk data channel (32, 140), a host interface channel (50, 140), and microprocessor channels (144, 148) into a round-robin circular priority queue, with the disk data channel normally assigned the highest priority for buffer access. A state machine carries out an arbitration cycle by sequentially servicing access requests pending within the queue. The state machine senses (139) a servo interrupt (SVOINT) to elevate the priority of any pending microprocessor access requests to the shared buffer, such that the requests are serviced and cleared rapidly to allow the servo interrupt servicing routine to start sooner. The servo interrupt is preferably asserted during a spoke gate (100) time when a head (16) is sensing a disk (12) servo region (S). During this time data transfers between the disk and the shared buffer memory are stopped, pending buffer memory data transfers can be paused, and head seeking and tracking is controlled. This technique reduces the uncertainty delay in starting the servo interrupt service routine by 10 percent, which restores otherwise lost processing time and reduces head positioner servo (20) phase jitter, thereby improving head tracking and seeking performance.