Multiprocessor communication system and method
First Claim
1. A system for facilitating inter-processor communication in a multiple processor computer system having one or more shared resources, comprising:
- a first mailbox associated with a first processor for indicating the status of the shared resources in the system and for sharing one or more tasks among the multiple processors;
a second mailbox associated with a second processor for indicating the status of the shared resources in the system and for sharing one or more tasks among the multiple processors; and
a semaphore unit for indicating the status of the shared resources in the system and for notifying the first and second processors of a particular task to be executed by the respective processors.
7 Assignments
0 Petitions
Accused Products
Abstract
To facilitate inter-processor communication between multiple processors in a computer system and to enable the accessing of a dual port memory, or other system resources, without requiring the memory or the data/address bus to be locked, the present invention provides a semaphore unit that preferably incorporates a shared mailbox architecture that, in combination with a set of hardware semaphore registers, enables inter-process communication among the multi-processors. Cooperative multitasking may be accomplished through the use of shared mailbox communication protocols while a preemptive multitasking may be accomplished through the use of hardware semaphore registers.
139 Citations
20 Claims
-
1. A system for facilitating inter-processor communication in a multiple processor computer system having one or more shared resources, comprising:
-
a first mailbox associated with a first processor for indicating the status of the shared resources in the system and for sharing one or more tasks among the multiple processors;
a second mailbox associated with a second processor for indicating the status of the shared resources in the system and for sharing one or more tasks among the multiple processors; and
a semaphore unit for indicating the status of the shared resources in the system and for notifying the first and second processors of a particular task to be executed by the respective processors. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 18, 19, 20)
-
-
16. A system for facilitating inter-processor communication in a multiple processor computer system having one or more shared resources, comprising:
-
means for cooperatively multitasking and preemptively multitasking among the multiple processors;
means for notifying a respective processor of a particular task to be executed;
means for indicating the status of the shared resources in the system; and
means for communicating the status of a particular shared resource to the processor for execution of the task.
-
-
17. A method for facilitating inter-processor communication in a multiple processor computer system having one or more shared resources, comprising the steps of:
-
sending a message to a first mailbox indicating a task to be executed by a first processor;
notifying the first processor of the message;
reading the message from the first mailbox;
configuring a first semaphore register to indicate the data contained at a desired address location of a particular one of the shared resources; and
accessing the first semaphore register and reading the data from the first semaphore register to execute the task.
-
Specification