High level message priority assignment by a plurality of message-sending nodes sharing a signal bus
First Claim
1. A node operable in a data processing arrangement including a plurality of the nodes that are capable of communicating with one another via a serial bus, the node comprising:
- a send register for storing a message for transmission on the serial bus, wherein the message comprises at least a data ID including a content identifier inherently exhibiting a first bus arbitration priority, wherein the content identifier represents a pre-assigned priority of the message content;
a message priority module configured to store a variable bus arbitration priority contiguous with the data ID of the message, wherein the variable bus arbitration priority is computationally adjustable by the node to change the pre-assigned priority of the message content; and
a transmitter coupled to the message priority module to receive the message, and to serially transmit onto the serial bus the message as dominant and recessive signal levels in a bit format ordered from the variable bus arbitration priority to the first bus arbitration priority, wherein the data processing arrangement grants serial bus access to a selected one of the plurality of nodes having the highest first bus arbitration priority, if the variable bus arbitration priorities of the plurality of nodes do not differ.
2 Assignments
0 Petitions
Accused Products
Abstract
A system has a plurality of nodes communicating with each other on a serial data path using dominant and recessive signal levels. A dominant signal level sent on the data path by any of the nodes creates a dominant signal level on the data path irrespective of the number of recessive signal levels sent by other nodes. The dominant and recessive signal levels form a series of bits organized into messages by the nodes. Each sending node senses the signal level on the data path bit by bit, and if different from that sent by that sending node, halts further sending of signal levels by that sending node. A priority value generator in each node provides a priority signal encoding a value whose magnitude indicates a relative priority. A message priority module in each node receives the priority signal, and stores the priority value in predetermined leading bits of the message to be sent.
32 Citations
24 Claims
-
1. A node operable in a data processing arrangement including a plurality of the nodes that are capable of communicating with one another via a serial bus, the node comprising:
-
a send register for storing a message for transmission on the serial bus, wherein the message comprises at least a data ID including a content identifier inherently exhibiting a first bus arbitration priority, wherein the content identifier represents a pre-assigned priority of the message content; a message priority module configured to store a variable bus arbitration priority contiguous with the data ID of the message, wherein the variable bus arbitration priority is computationally adjustable by the node to change the pre-assigned priority of the message content; and a transmitter coupled to the message priority module to receive the message, and to serially transmit onto the serial bus the message as dominant and recessive signal levels in a bit format ordered from the variable bus arbitration priority to the first bus arbitration priority, wherein the data processing arrangement grants serial bus access to a selected one of the plurality of nodes having the highest first bus arbitration priority, if the variable bus arbitration priorities of the plurality of nodes do not differ. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A system for enabling a plurality of nodes to arbitrate for access to a serial bus by which the nodes communicate, comprising:
-
(a) a sending node comprising; (i) a send register for storing a first message for transmission on the serial bus, wherein the first message comprises at least a data ID including a content identifier inherently exhibiting a first bus priority, wherein the content identifier represents a pre-assigned priority of the message content; (ii) a message priority module configured to store a variable bus priority contiguous with the data ID of the first message, wherein the variable bus arbitration priority is computationally adjustable by the sending node to change the pre-assigned priority of the message content; (iii) a transmitter coupled to the message priority module to receive the first message, and to serially transmit onto the serial bus the message as dominant and recessive signal levels in a bit format ordered from the variable bus priority to the first bus priority; and (b) a receiving node comprising a monitor circuit coupled to the serial bus to monitor the dominant and recessive signal levels on the serial bus, and configured to disable further transmission of a second message being transmitted from the receiving node if a dominant signal level is present on the serial bus when a recessive signal level is being transmitted by the receiving node onto the serial bus, wherein, if the variable priorities of the respective first and second messages differ, the sending node and the receiving node grant serial bus access to the sending node or the receiving node having the highest variable bus priority in the respective first and second messages, and if the variable priorities of the respective first and second messages do not differ, the sending node and the receiving node grant serial bus access to the sending node or the receiving node having the highest first bus priority in the respective first and second messages.
-
-
18. A method, comprising:
-
assembling a message at a source node, wherein the message includes at least a data ID field for providing a content identifier inherently exhibiting a first bus priority, wherein the content identifier represents a pre-assigned priority of the message content, the message further including a priority field for providing a variable priority, wherein the variable bus arbitration priority is computationally adjustable by the node to change the pre-assigned priority of the message content, and wherein the priority field is assembled immediately preceding the data ID field in an order from leading bits to trailing bits; transmitting the assembled message bit by bit from the source node onto a serial bus as dominant and recessive signal levels in a bit format ordered to transmit the priority field immediately prior to the data ID field in the order from leading bits to trailing bits; monitoring the dominant and recessive signal levels on the serial bus; disabling further transmission of the message from the source node if a dominant signal level associated with the variable priority of at least one or more recipient nodes is present on the serial bus when a recessive signal level associated with the variable priority of the source node is being transmitted onto the serial bus; and if the variable priorities of the source node and the one or more recipient nodes differ, granting access to the serial bus to the source node or the recipient node having the highest variable priority, and if the variable priorities of the source node and the one or more recipient nodes do not differ, granting access to the serial bus to the source node or the recipient node having the highest first bus priority. - View Dependent Claims (19, 20, 21, 22, 23, 24)
-
Specification