Electrical computers and digital data processing systems: input/ – Access arbitrating – Access prioritizing
Reexamination Certificate
1998-12-10
2001-04-24
Etienne, Ario (Department: 2155)
Electrical computers and digital data processing systems: input/
Access arbitrating
Access prioritizing
C710S240000, C710S121000, C710S114000, C710S111000, C710S040000
Reexamination Certificate
active
06223244
ABSTRACT:
FIELD OF THE INVENTION
This invention relates generally to bus arbitration schemes for computer systems and, more particularly, to a method for assuring device access to a bus having a fixed priority arbitration scheme including but not limited to the bus defined by the Small Computer Serial Interface (SCSI) standard.
BACKGROUND OF THE INVENTION
The SCSI standard describes a well-defined peripheral bus that is independent of computer system buses such as ISA buses, EISA buses, VESA Local Buses, and PCI buses. The SCSI bus is a shared, contention-based resource. Unlike computer system buses, a SCSI bus contains no clock signal, allowing data transfers to accommodate different speed devices with no impact on devices with faster transfer rates. SCSI decouples peripheral device design from system bus design, allowing users to take advantage of system bus advancement while preserving their investment in peripheral devices.
The SCSI definition allows up to eight SCSI device bus connections or up to 16 connections for the Wide SCSI variation. A SCSI device connects to a SCSI bus via the device's controller and may be either a peripheral device or a host computer. Thus, up to eight devices can connect to a narrow SCSI bus. More typically, one or more host computers connect to one or more peripheral devices through a SCSI bus. This arrangement allows users to upgrade presently-connected devices or add new devices to the bus without changing the devices already connected to the bus.
SCSI devices are either initiators or targets, or both. Initiators are devices such as a host computer that initiate and deliver requests for tasks for fulfillment. If a device can be both an initiator and target, it may only behave on the bus as one at any instant. Targets are devices such as a disk drive or tape drive that perform requested tasks.
SCSI devices communicate with one another using a well-defined protocol involving sequential states called phases. SCSI buses can only be in one phase at a time and buses enter most phases only after exiting previous specific states. Initiators communicate with targets through bus requests called commands. Thereafter, the targets control request resolution. After receiving a command, but before fulfilling it, a target may disconnect from the bus. This allows initiators to perform other work (such as issuing commands to other targets) as the target performs internal processing.
The SCSI architecture allows two, and only two, devices to communicate with each other over its bus simultaneously. A single device cannot broadcast to two or more devices simultaneously, and no conference calls are permitted. Each SCSI device has a unique bus ID which users set using switches, jumpers, or set-up routines. SCSI IDs range from seven (highest priority device ID) to zero (lowest priority device ID) for regular SCSI and up to 15 for the Wide SCSI variation. With wide SCSI the priority is from seven (highest priority device ID) to zero followed by 15 to eight (lowest priority device ID). Hosts typically have the highest SCSI bus ID, allowing them to initiate requests with minimum peripheral device interference.
To obtain bus control, devices must wait for the bus to achieve a bus free phase which indicates that the bus is idle. Devices then arbitrate for bus control. To begin the arbitration phase, each interested device detects a bus free phase. It then places its bus ID on the bus by asserting its associated data bus signal (i.e., device seven asserts a signal on data line seven while device two asserts a signal on data line two). After a brief delay, the device with the highest bus ID value signals its victory and directs lower-priority devices to the back off the bus. The winning device then proceeds through a number of additional phases to complete its task. The losing device must wait for the bus to achieve another bus free phase, at which time it again asserts its associated data bus signal in an attempt to gain control of the SCSI bus.
The specifics of the SCSI standard are explained in a number of works such as the standard itself (ANSI X3.131-1994 and later versions) and
Understanding I/O Subsystems,
by D. Schwanderer and A. Wilson Jr., which are hereby incorporated by reference. Further background information on SCSI is given in U.S. Pat. No. 5,613,076, which is also hereby incorporated by reference.
While simple to implement, the fixed priority arbitration scheme of SCSI has a significant drawback. Higher-priority devices always get access first, possibly preventing lower-priority devices from gaining sufficient access to the SCSI bus to perform properly. The potential for this adverse effect on lower-priority devices, known as “access starvation,” “initiator starvation,” or “target starvation,” has become much greater recently because newer devices move more data onto the SCSI bus faster. Consequently, higher-priority devices tend to monopolize the SCSI bus by consuming most, if not all, of the SCSI bus bandwidth. The bus bandwidth is defined as the number of bytes per second the bus can transfer. SCSI bandwidths range from a low of 3 megabytes (Mbytes) per second for SCSI-
1
buses to 20 to 40 Mbytes per second for Ultra SCSI buses.
An objective of the invention, therefore, is to provide an efficient method for assuring bus access to all devices connected to a bus having a fixed priority arbitration scheme. Another objective of the invention is to assure that lower-priority devices have access to a minimum “fair share” of the bus bandwidth.
SUMMARY OF THE INVENTION
In accordance with the invention, a method is described and shown herein for assuring device access to a bus having a fixed priority arbitration scheme such as a SCSI bus. The method includes determining if a first device is prevented from gaining sufficient access to the bus by a second device, and, if so, notifying the second device to limit sending new requests to the bus.
The method has multiple aspects. In one aspect, the method includes assigning to a lower-priority device such as an initiator a share of the bus bandwidth. A determination is then made whether the lower-priority device is prevented from using its share of the bus bandwidth by the higher-priority device. If so, the lower-priority device notifies the higher-priority device to limit new requests to the bus. The notifying may include failing to send an access signal from the lower-priority device to the higher-priority device. The limiting of requests may include stopping new requests by the higher-priority device.
In another aspect, the method includes assigning to a higher-priority device such as an initiator a share of the bus bandwidth. A determination is then made if a lower-priority device such as a target is prevented from gaining access to the bus for a specified time. If so, the higher-priority device is notified to limit the sending of new requests to the bus. The notifying may include sending a signal to the higher-priority device that the lower-priority device does not have sufficient access to the bus. The limiting of requests may include limiting new requests by the higher-priority device to its share of the bus bandwidth.
REFERENCES:
patent: 4257095 (1981-03-01), Nadir
patent: 4785394 (1988-11-01), Fischer
patent: 4972313 (1990-11-01), Getson, Jr. et al.
patent: 5204951 (1993-04-01), Keener et al.
patent: 5546550 (1996-08-01), Carter
patent: 5613076 (1997-03-01), Latif et al.
patent: 5715406 (1998-02-01), Henson et al.
patent: 5754887 (1998-05-01), Damron et al.
patent: 6016528 (2000-01-01), Jaramillo et al.
“SCSI Primer,”Understanding I/O Subsystems, by D. Schwanderer and A. Wilson, Jr., chapter 7, pp. 113-131.
Carbonari Steven Rino
Downer Wayne Alan
Lindsley Richard
Etienne Ario
International Business Machines - Corporation
Klarquist Sparkman Campbell Leigh and Whinston LLP
LandOfFree
Method for assuring device access to a bus having a fixed... does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Method for assuring device access to a bus having a fixed..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method for assuring device access to a bus having a fixed... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2543071