Electrical computers and digital data processing systems: input/ – Intrasystem connection – Bus access regulation
Reexamination Certificate
1999-09-23
2004-04-20
Myers, Paul R. (Department: 2181)
Electrical computers and digital data processing systems: input/
Intrasystem connection
Bus access regulation
C710S105000, C710S107000, C710S316000, C710S317000
Reexamination Certificate
active
06725307
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 system for improving data throughput within a data processing system. Specifically, the present invention relates to a method and system for improving performance of storage access and control using cache-coherence.
2. Description of Related Art
Traditionally, symmetric multiprocessors are designed around a common system bus on which all processors and other devices such as memory and I/O are connected by merely making physical contacts to the wires carrying bus signals. This common bus is the pathway for transferring commands and data between devices and also for achieving coherence among the system's cache and memory. A single-common-bus design remains a popular choice for multiprocessor connectivity because of the simplicity of system organization.
This organization also simplifies the task of achieving coherence among the system's caches. A command issued by a device gets broadcast to all other system devices simultaneously and in the same clock cycle that the command is placed on the bus. A bus enforces a fixed ordering on all commands placed on it. This order is agreed upon by all devices in the system since they all observe the same commands. The devices can also agree, without special effort, on the final effect of a sequence of commands. This is a major advantage for a single-bus-based multiprocessor.
A single-common-bus design, however, limits the size of the system unless one opts for lower system performance. The limits of technology typically allow only a few devices to be connected on the bus without compromising the speed at which the bus switches and, therefore, the speed at which the system runs. If more master devices, such as processors and I/O agents, are placed on the bus, the bus must switch at slower speeds, which lowers its available bandwidth. Lower bandwidth may increase queuing delays, which result in lowering the utilization of processors and lowering the system performance.
Another serious shortcoming in a single-bus system is the availability of a single data path for transfer of data. This further aggravates queuing delays and contributes to lowering of system performance.
Two broad classes of cache-coherence protocols exist. One is bus-based snooping protocols, wherein all the caches in the system connect to a common bus and snoop on transactions issued on the common bus by other caches and then take appropriate actions to stay mutually coherent. The other class is directory-based protocols, wherein each memory address has a “home” site. Whenever a cache accesses that address, a “directory” at the home site is updated to store the cache's identity and the state of the data in it. When it is necessary to update the state of the data in that cache, the home site explicitly sends a message to the cache asking it to take appropriate action.
In terms of implementation and verification complexity, the bus-based snooping protocol is significantly simpler than the directory-based protocol and is the protocol of choice of symmetric multiprocessor (SMP) systems. However, the bus-based snooping protocol is effectively employed in a system with only a small number of processors, usually 2 to 4.
Thus, although a single-system-bus design is the current design choice of preference for implementing coherence protocol, it cannot be employed for a large-way multiprocessor system.
Therefore, it would be advantageous to have a large-way, distributed, multi-bus, multiprocessor, design using bus-based cache-coherence protocols.
SUMMARY OF THE INVENTION
A distributed system structure for a large-way, symmetric multiprocessor system using a bus-based cache-coherence protocol is provided. The distributed system structure contains an address switch, multiple memory subsystems, and multiple master devices, either processors, I/O agents, or coherent memory adapters, organized into a set of nodes supported by a node controller. The node controller receives commands from a master device, communicates with a master device as another master device or as a slave device, and queues commands received from a master device. Due to pin limitations that may be caused by large buses, e.g. buses that support a high number of data pins, the node controller may be implemented such that the functionality for its address paths and data paths are implemented in physically separate components, chips, or circuitry, such as a node data controller (NCD) or a node address controller (NCA). In this case, commands may be sent from the node address controller to the node data controller to control the flow of data through a node.
REFERENCES:
patent: 4152764 (1979-05-01), Connors et al.
patent: 4484270 (1984-11-01), Quernemoen et al.
patent: 4862354 (1989-08-01), Fiacconi et al.
patent: 5208914 (1993-05-01), Wilson et al.
patent: 5325503 (1994-06-01), Stevens et al.
patent: 5327570 (1994-07-01), Foster et al.
patent: 5335335 (1994-08-01), Jackson et al.
patent: 5426765 (1995-06-01), Stevens et al.
patent: 5440752 (1995-08-01), Lentz et al.
patent: 5553246 (1996-09-01), Suzuki
patent: 5555425 (1996-09-01), Zeller et al.
patent: 5566342 (1996-10-01), Denneau et al.
patent: 5577204 (1996-11-01), Brewer et al.
patent: 5649106 (1997-07-01), Tsujimichi et al.
patent: 5649209 (1997-07-01), Umetsu et al.
patent: 5689657 (1997-11-01), Desor et al.
patent: 5696913 (1997-12-01), Gove et al.
patent: 5704058 (1997-12-01), Derrick et al.
patent: 5708792 (1998-01-01), Hayes et al.
patent: 5715430 (1998-02-01), Hirayama
patent: 5754877 (1998-05-01), Hagersten et al.
patent: 5765196 (1998-06-01), Liencres et al.
patent: 5768609 (1998-06-01), Gove et al.
patent: 5794062 (1998-08-01), Baxter
patent: 5815680 (1998-09-01), Okumura et al.
patent: 5859975 (1999-01-01), Brewer et al.
patent: 5872940 (1999-02-01), Circello et al.
patent: 5890007 (1999-03-01), Zinguuzi
patent: 5895495 (1999-04-01), Arimilli et al.
patent: 5901294 (1999-05-01), Tran et al.
patent: 5931938 (1999-08-01), Drogichen et al.
patent: 6011791 (2000-01-01), Okada et al.
patent: 6092165 (2000-07-01), Bolyn
patent: 6163835 (2000-12-01), Todd et al.
patent: 6286068 (2001-09-01), Armilli et al.
patent: 6330656 (2001-12-01), Beaklowski et al.
patent: 6442597 (2002-08-01), Deshpande et al.
patent: 6456676 (2002-09-01), O'Connor et al.
patent: 911731 (1999-04-01), None
patent: 911736 (1999-04-01), None
Non-Blocking Distributed Bus Switch For Multicomputer Systems, Research Disclosure Jul. 1998 pp. 1003-1004.
Alvarez, II Manuel Joseph
Davidson Joel Roger
Deshpande Sanjay Raghunath
Geiger Peter Dau
Powell Lawrence Joseph
McBurney Mark E.
Myers Paul R.
Phan Raymond N
Walder, Jr. Stephen J.
Yee Duke W.
LandOfFree
Method and system for controlling data transfers with... 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 system for controlling data transfers with..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and system for controlling data transfers with... will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-3237318