Claims
- 1. In a multiprocessor system including a plurality of processors coupled via a system bus to a main memory the system bus operating in accordance with a SNOOPY bus protocol, each processor having a cache memory that is accessible by the respective processor and is accessible by the other processors in said multiprocessor system via transactions on the system bus, each transaction including the communication of address and data information over the system bus, a method of ensuring adequate access to said cache by said respective processor to prevent starvation of said respective processor, said method comprising the steps of:
- arbitrating between requests for access to said system bus by said plurality of processors, said step of arbitrating further comprising the steps of;
- monitoring the system bus for a preselected pattern of transaction activity on the bus, wherein the step of monitoring the bus for a preselected pattern of transaction activity comprises the step of monitoring the bus to detect a preselected number of back-to-back bus write transactions; and
- upon detecting the preselected pattern of transaction activity by said monitoring, inserting an idle bus cycle on said system bus to permit said respective processor to access its cache memory.
- 2. The method of claim 1, wherein the step of monitoring the bus for said preselected pattern of transaction activity comprises the step of monitoring the bus to detect a completion of a bus transaction.
- 3. In a multiprocessor system including a plurality of processors coupled via a system bus to a main memory the system bus operating in accordance with a SNOOPY bus protocol, each processor having a cache that is accessible by the respective processor and is accessible by the other processors via transactions on the system bus, each processor having a system bus interface, each transaction including the communication of address and data information over the system bus, an arbiter in said system bus interface of one of said processors for ensuring access by said processor to its respective cache memory to prevent starvation of said processor, said method comprising:
- means for accepting requests for control of the system bus;
- means for granting control of the system bus in respect of one of the requests;
- means for monitoring the bus for a preselected pattern of transaction activity on the system bus, wherein the preselected pattern of transaction activity comprises a preselected number of back-to-back bus write transactions; and
- means, responsive to a detection of said preselected pattern of transaction activity, for providing an idle cycle on said system bus to permit said processor access to its respective cache memory.
- 4. The arbiter of claim 3, wherein the preselected pattern of transaction activity comprises completion of a bus transaction.
- 5. The method according to claim 3, further comprising the steps of:
- monitoring the bus for a bus grant signal indicating that a processor is to be granted access to the bus within a preselected period of time, and
- halting, upon the detection of the bus grant signal, ongoing processor cache memory access operations in processors other than the processor granted request of the bus at a point from which the halted cache memory access operations of said halted processors can be continued without the loss of unique data.
Parent Case Info
This application is a continuation of application Ser. No. 08/073,251, filed Jun. 8, 1993, now abandoned, which is a continuation of application Ser. No. 874,236 filed Apr. 24, 1992 now abandoned.
US Referenced Citations (25)
Continuations (2)
|
Number |
Date |
Country |
Parent |
73251 |
Jun 1993 |
|
Parent |
874236 |
Apr 1992 |
|