Storage device buffer access control in accordance with a...

Electrical computers and digital data processing systems: input/ – Input/output data processing – Input/output data buffering

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C710S061000, C710S124000, C710S310000, C711S167000

Reexamination Certificate

active

06438629

ABSTRACT:

BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to an arbitration mechanism for controlling access to a buffer provided as part of a storage device. More specifically, the present invention relates to a hard disk buffer arbitration subsystem.
2. Description of Background Information
Computer systems (e.g., personal computers, workstations and the like) and intelligent devices (e.g., appliances, kiosks, consumer electronic devices provided with microcontrollers and microprocessors) are typically provided with memory systems having memory hierarchies for handling the computer system's long-term and short-term storage needs. Such memory hierarchies comprise primary (main) storage devices such as the computer's main memory (typically random access memory (RAM)) and secondary (auxiliary) storage devices such as disk drives (typically magnetic hard disks) and other external devices. The memory system manages the exchange of data between the main memory and the auxiliary memory, and thereby enhances the computer's perceived performance. One such management function includes caching—keeping active data in the memory having a higher access speed, i.e., in the main memory. As the data becomes inactive, it is migrated to the lower-speed auxiliary memory. Another function of the memory system involves buffering of data transferred to and from the auxiliary memory. For this purpose, a buffer having a buffer channel with a relatively high data transfer rate is provided. The buffer may be provided as part of the computer, or it may be provided within the storage device containing the auxiliary memory, such as is the case with disk drives with built-in disk buffers, dedicated to disk operations.
The time it takes to access a disk device is substantial in comparison to accessing the primary/main memory. Time is needed for a read/write head to position itself over the track that contains the stored data. It takes more time to rotate the media until the read/write head reaches the stored data. Another delay is encountered in transmitting the data from the auxiliary memory through an input/output port to the main memory. Not only is there a delay due to the transfer rate limitations of the input/output port, but the requester may be temporarily denied access to the input/output port in favor of another requester already using the input/output port.
Disk buffers can alleviate the perceived access delays of the disk device by buffering data in fast memory without burdening the input/output channel feeding to the actual disk media. The disk buffer may also concurrently serve as a cache, accessing and holding disk data not yet but likely to be requested.
The computer system may have clients, e.g., an application and various processes provided within the disk drive, which request access to the disk buffer. Such clients may make concurrent and thus contentious demands on the disk buffer's channel which has a limited data transfer rate. Thus, schemes have been incorporated in disk drives to arbitrate between the various disk buffer access requests. Traditionally, such schemes have included either a fixed priority encoder or a “round-robin” scheme. A fixed priority encoder scheme assigns a fixed request level to each client. A given requestor will gain access to the buffer when two conditions are satisfied. The buffer must not be already is use, and there must be no higher priority client also requesting access to the buffer. In the case of a “round-robin” scheme, each time the buffer finishes an operation, it will circulate from client to client polling for a requester. If a client is requesting at the time it is polled, it will gain access to the buffer. Otherwise, the client must wait for the next occurrence of its poll in the round-robin queue.
Difficulties associated with these approaches are that they assume relatively static requirements such as latency limits and memory bandwidth requirements. This is not always the case with disk drive environments.
There is a need for an arbitration mechanism which will limit the latency associated with buffer access requests for select clients such as disk and micro-instruction buffer accesses during heavy load intervals, but will continue to give priority access to other clients as the load diminishes. The system would be preferably versatile and programmable to allow the varying of priorities assigned to certain clients when vying for access to the buffer.
3. Definitions of Terms
ARBITRATION
In a computer system, a process by which a process, device, or subsystem receives requests for access to a single resource, for example, a channel, and decides which one of the requesters will get access.
CHANNEL
A path or link through which information passes between two devices, subsystems, or units. A channel can be internal and/or external to a computer, and has a limited bandwidth (i.e., rate of data transfer, in bits per second).
CLIENT
A process, which may be performed by a program, task, device, or circuitry, which requests a service provided by another process.
CONTENTION
In a computer system, a process by which two or more devices, entities, or processes vie for access to a single resource, for example, a channel.
DATA TRANSFER
The movement of data from one location to another.
LATENCY
The delay between a request for a data transfer action (involving movement of data from one location to another) and the time the action is performed. When the data transfer is a request for information, the latency is the time from the making of the request to the time the information is supplied to the requester.
SUMMARY OF THE INVENTION
The present invention is provided to improve upon subsystems for arbitrating requests for access to a storage device buffer, by allocating the use of a buffer channel in a manner so as to best accommodate the functionality of the overall computer system and its application. In order to achieve this end, one or more aspects of the present invention may be followed in order to bring about one or more specific objects and advantages, such as those noted below.
One object of the present invention is to provide an improved mechanism for storage device buffer arbitration which limits the latency associated with a buffer access request from select clients.
The present invention, therefore, may be directed to a memory method or system, or one or more parts thereof, for use in a system having a host computer comprising an application and an operating system, or for use in an intelligent device such as an appliance having a microcontroller. Such a computer subsystem or intelligent device may comprise a disk storage device such as a magnetic hard disk storage device.
In accordance with one aspect of the present invention, a memory subsystem is provided. The memory subsystem comprises a buffer, a storage device, a buffer access determining mechanism, a request communicator, and a disk input/output subsystem. The buffer has a limited storage capacity and comprises a buffer channel having a limited data transfer rate. The storage device comprises a read/write mechanism and non-volatile storage media. The buffer access determining mechanism determines when a given client is to be given access to the buffer channel. The buffer access determining mechanism comprises a latency monitor for monitoring a latency parameter indicative of buffer channel access latency for the given client, and further comprises a buffer access controller for controlling when the given client is given access to the buffer channel in accordance with the monitored latency parameter.
The request communicator couples requestors to the buffer access determining mechanism. The requestors request the buffer access determining mechanism to give clients access to the buffer channel. When they are given access to the buffer channel, the clients write data to or read data from the buffer via the buffer channel. The disk input/output subsystem exchanges data between the buffer and the storage media.
The memory subsystem may be a disk storage

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Storage device buffer access control in accordance with a... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Storage device buffer access control in accordance with a..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Storage device buffer access control in accordance with a... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2973299

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.