Claims
- 1. A multiprocessing system comprising:
a plurality of processing subsystems, each including a cache memory; a memory subsystem including a directory; a network interconnecting said plurality of processing subsystems and said memory subsystem; wherein the network includes a mode unit configured to control whether a given coherency request is transmitted through said network according to a directory protocol or a broadcast protocol, and wherein said given coherency request is initiated by a requesting processing subsystem, and wherein an encoding of said given coherency request excludes an indication of whether said given coherence request is to be transmitted according to said directory protocol or said broadcast protocol.
- 2. The multiprocessing system as recited in claim 1 wherein said directory includes a plurality of entries corresponding to different memory locations mapped to said memory subsystem, wherein each entry contains information indicative of whether a cached copy of a corresponding block has been created in one or more of said plurality of processing subsystems.
- 3. The multiprocessing system as recited in claim 2 wherein when said given coherency request is transmitted through said network according to said broadcast protocol, said coherency request is broadcasted to said memory subsystem and to each of said plurality of processing subsystems regardless of information contained within said directory.
- 4. The multiprocessing system as recited in claim 3 wherein said given coherency request is transmitted to said network through a point-to-point link.
- 5. The multiprocessing system as recited in claim 3 wherein when said coherency request is transmitted through said network according to said directory protocol, said given coherency request is transmitted through said network to said memory subsystem.
- 6. The multiprocessing system as recited in claim 5 wherein when said given coherency request is transmitted through said network according to said directory protocol, said directory is accessed by said memory subsystem and responsive coherency commands are provided to one or more of said plurality of processing subsystems dependent upon information contained within said directory.
- 7. The multiprocessing system as recited in claim 1 wherein said mode unit includes a coherency mode storage unit configured to store an indication to control whether said given coherency request is transmitted through said network according to said directory protocol or said broadcast protocol.
- 8. The multiprocessing system as recited in claim 7 wherein said coherency mode storage unit is configured to store a plurality of additional indications to control whether other coherency requests are transmitted through said network according to said directory protocol or said broadcast protocol.
- 9. The multiprocessing system as recited in claim 8 wherein selected coherency requests are transmitted through said network according to said directory protocol while other coherency requests are transmitted through said network according to said broadcast protocol.
- 10. The multiprocessing system as recited in claim 9 wherein an address of each coherency request is used to dictate whether said each request is transmitted through said network according to said directory protocol or said broadcast protocol.
- 11. The multiprocessing system as recited in claim 1 wherein said network is implemented using a plurality of address switches.
- 12. A multiprocessing system comprising:
a memory subsystem including a directory, the directory including a plurality of directory entries corresponding to memory locations mapped to said memory subsystem; a plurality of processing subsystems each including a cache for storing blocks corresponding to selected ones of said memory locations; a network interconnecting said plurality of processing subsystems and said memory subsystem; a mode unit configured to provide an indication of whether a given block is a point-to-point mode block or a broadcast mode block; wherein the network is configured to route a coherency request for said given block initiated by one of said processing subsystems to said directory in response to said indication indicating said given block is a point-to-point mode block, and wherein said network is configured to broadcast said coherency request to said memory subsystem and to each of said plurality of processing subsystems in response to said indication indicating said given block is a broadcast mode block, whereby a conveyance of said coherency request through said network according to either a directory protocol or a broadcast protocol is performed transparent to said one of said processing subsystems.
- 13. A method of operating a multiprocessing system including a plurality of processing subsystems and a memory subsystem interconnected through a network, the method comprising:
a first processing subsystem initiating a coherency request; and a mode unit indicating whether said coherency request is to be transmitted through said network according to a directory protocol or a broadcast protocol; said network conveying said coherency request using either said directory protocol or said broadcast protocol according to said indication and transparent to said first processing subsystem.
- 14. The method as recited in claim 13 further comprising said mode unit accessing a coherency mode storage unit that stores an indication that indicates whether said coherency request is to be transmitted through said network according to said directory protocol or said broadcast protocol.
- 15. The method as recited in claim 13 further comprising accessing a directory entry in response to said coherency request when said coherency request is transmitted through said network according to said directory protocol.
- 16. A multiprocessing system comprising:
a plurality of processing subsystems; a memory subsystem; a network interconnecting said plurality of processing subsystems and said memory subsystem; and a mode unit configured to control whether a coherency request is transmitted through said network according to a directory protocol or a broadcast protocol, whereby a conveyance of said coherency request through said network according to either said directory protocol or said broadcast protocol is performed transparent to said plurality of processing subsystems.
- 17. The multiprocessing system as recited in claim 16 wherein said mode unit includes a coherency mode storage unit configured to store an indication to control whether said coherency request is transmitted through said network according to said directory protocol or said broadcast protocol.
- 18. The multiprocessing system as recited in claim 17 wherein said coherency mode storage unit is configured to store a plurality of additional indications to control whether other coherency requests are transmitted through said network according to said directory protocol or said broadcast protocol.
- 19. The multiprocessing system as recited in claim 18 wherein selected coherency requests are transmitted through said network according to said directory protocol while other coherency requests are transmitted through said network according to said broadcast protocol.
- 20. The multiprocessing system as recited in claim 19 wherein an address of each coherency request is used to dictate whether said each request is transmitted through said network according to said directory protocol or said broadcast protocol.
Priority Claims (1)
Number |
Date |
Country |
Kind |
01303988.8 |
May 2001 |
EP |
|
Parent Case Info
[0001] This application is a continuation-in-part of U.S. patent application Ser. No. 10/136,619 filed May 1, 2002. This application also claims the benefit of U.S. provisional patent application serial No. 60/392,179, filed Jun. 28, 2002.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60392179 |
Jun 2002 |
US |
Continuation in Parts (1)
|
Number |
Date |
Country |
Parent |
10136619 |
May 2002 |
US |
Child |
10601402 |
Jun 2003 |
US |