Method and apparatus for arbitrating access to multiple...

Electrical computers and digital data processing systems: input/ – Intrasystem connection – Bus access regulation

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C710S120000, C710S113000

Reexamination Certificate

active

06260093

ABSTRACT:

BACKGROUND OF THE INVENTION
1. Technical Field
The present invention relates generally to an improved data processing system and in particular to a method and apparatus for arbitrating access to multiple buses in a data processing system. Still more particularly, the present invention relates to a method and apparatus for arbitrating access to multiple buses in a data processing system using a distributed arbitration mechanism.
2. Description of the Related Art
The performance demands on personal computers are ever increasing. It has been determined that a major bottleneck in improving performance is the capability to perform input/output (I/O) operations. Processor speeds continue to increase at a great rate and memory speeds and architectures can partially keep pace. However, the speed of I/O operations, such as disk and local area network (LAN) operations, has not kept pace. The increasing complexity of video graphics used in personal computers is also demanding greater performance than can be conventionally provided.
Some of the problems were in the bus architecture used in IBM PC-compatible computers. The EISA architecture provided some improvement over the ISA architecture of the IBM PC/AT, but more performance was still required. To this end Intel Corporation, primarily, developed the Peripheral Component Interconnect (PCI) bus. The PCI bus is a mezzanine bus between the host or local bus in the computer, to which the processor and memory are connected, and the I/O bus, such as ISA or EISA. For more details on the PCI bus, reference to the PCI Standard Version 2.0, from the PCI Special Interest Group in care of Intel Corp., which is hereby incorporated by reference, is advised. The bus was designed to have a high throughput and to take advantage of the increasing number of local processors that support I/O functions. For example, most disk controllers, particularly SCSI controllers, and network interface cards (NICs) include a local processor to relieve demands on the host processor. Similarly, video graphics boards often include intelligent graphics accelerators to allow a higher level function transfer. Typically these devices have the capability of operating as bus masters, to allow the devices to transfer data at the highest possible rates. Each of these devices also is referred to as a “node”.
To effectively utilize a common bus system for the transfer of data and messages by various local processors connected to the bus some form of arbitration is required to determine which processor obtains access to the bus. A central arbiter may be coupled to each of the processors to determine which one will be granted access to the bus during any given bus cycle. Such a central arbiter receives separate bus requests from various nodes at times when those nodes are ready to obtain access to a bus to transmit a message or transfer data to another node. In response to a number of bus requests, the central arbiter sends a bus grant to only one of the requested nodes in a predetermined matter corresponding to a selected priority scheme.
In data processing systems containing multiple buses and multiple master devices, in which the master devices communicate with devices on other buses, a system of arbitration on multiple buses is required for high performance and reliability of avoiding deadlock situations in which master devices on different buses make requests for target devices or resources on opposite sides of the buses. Presently available arbitration systems include a complex hierarchical arbitration system that determines all possible deadlock situations up front in designing the system. In such an arbitration system, all of the deadlock situations are designed into a top level arbiter. This top level arbiter, directed lower level arbiters on the bus level to avoid deadlock. The drawback of such an arbitration system is that is a potential deadlock condition was missed, the chip could lock up. Therefore, an improved method and apparatus for bus arbitration that avoids deadlock situations for multiple bus data processing systems is desirable.
SUMMARY OF THE INVENTION
The present invention provides a method and apparatus in a data processing system for multiple bus arbitration, wherein the data processing system includes a first bus connected to a second bus by a bridge. In response to receiving a request for a target device from a master device connected to a first bus, a determination is made as to whether the target device is connected to the first bus. The bridge is selected in response to determining that the target device is located on the second bus. The bridge initiates a request for the second bus in response to the selection of the bridge. The first bus and the second bus are connected to each other by the bridge in response to the bridge receiving a grant to the second bus, wherein the master device transfers data between the master device and the target device across the bridge. In response to the bridge being selected from a master device on both the first bus and the second bus, the bridge signals one master device to retract or withdraw the selection of the bridge, allowing the other master device to complete a data transfer.


REFERENCES:
patent: 4373183 (1983-02-01), Means et al.
patent: 4641237 (1987-02-01), Yabushita et al.
patent: 4930102 (1990-05-01), Jennings
patent: 5301333 (1994-04-01), Lee
patent: 5353415 (1994-10-01), Wolford et al.
patent: 5396602 (1995-03-01), Amini et al.
patent: 5420985 (1995-05-01), Cantrell et al.
patent: 5463740 (1995-10-01), Taniai et al.
patent: 5511165 (1996-04-01), Brady et al.
patent: 5546546 (1996-08-01), Bell et al.
patent: 5555383 (1996-09-01), Elazar et al.
patent: 5619661 (1997-04-01), Crews et al.
patent: 5621900 (1997-04-01), Lane et al.
patent: 5632021 (1997-05-01), Jennings et al.
patent: 5708794 (1998-01-01), Parks et al.
patent: 5717873 (1998-02-01), Rabe et al.
patent: 5734850 (1998-03-01), Kenny et al.
patent: 5737545 (1998-04-01), Wszolek et al.
patent: 5740376 (1998-04-01), Carson et al.
patent: 5748918 (1998-05-01), Cho et al.
patent: 5761454 (1998-06-01), Adusmilli et al.
patent: 5835738 (1998-11-01), Blackledge, Jr. et al.
patent: 5838932 (1998-11-01), Alzien
patent: 5838935 (1998-11-01), Davis et al.
patent: 5857084 (1999-01-01), Klein
patent: 5864688 (1999-01-01), Santos et al.
patent: 5884027 (1999-03-01), Garbus et al.
patent: 0 391 537 (1990-10-01), None
patent: 0 654 743 A1 (1995-05-01), None
patent: 0 814 468 A2 (1997-12-01), None
PCI System Architecture, Third Edition, Tom Shanlley/Don Anderson, 1995, pp. 381-387.

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

Method and apparatus for arbitrating access to multiple... 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 and apparatus for arbitrating access to multiple..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and apparatus for arbitrating access to multiple... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2516341

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