Method of data communication flow control in a data processing system using busy/ready commands
First Claim
1. In a processing system comprising at least a pair of transmitting/receiving elements coupled to one another by a bi-directional link for communicating multi-bit words, including multi-bit data words and multi-bit command words, a method of data communication flow control that includes the steps of:
- providing each of the pair of transmitting/receiving elements with a transmit clock signal that defines clock periods and is sent on the bi-directional link to the other of the pair transmitting/receiving elements;
a one of the pair of transmitting/receiving elements communicating data in the form of a series of multi-bit data words to the other of the pair of transmitting/receiving devices, each of the multi-bit data words being communicated with a clock period;
in absence of communicating data, the one of the pair of transmitting/receiving elements transmitting with each clock period first multi-bit command words to the other of the pair of transmitting/receiving elements; and
the one of the transmitting/receiving elements periodically sending a BUSY command word to indicate to the other of the pair of transmitting/receiving elements to at least temporarily halt communicating data or, if no data is being communicated, to not communicate data until a READY command word is sent by the one of the transmitting/receiving elements;
wherein after receiving the BUSY command word, failure to receive the READY command word or a subsequent BUSY command word within a predetermined period of time by the other of the pair of transmitting/receiving elements is an error.
3 Assignments
0 Petitions
Accused Products
Abstract
A multiprocessor system includes a number of sub-processor systems, each substantially identically constructed, and each comprising a central processing unit (CPU), and at least one I/O device, interconnected by routing apparatus that also interconnects the sub-processor systems. A CPU of any one of the sub-processor systems may communicate, through the routing elements, with any I/O device of the system, or with any CPU of the system.
Communications between I/O devices and CPUs is by packetized messages. Interrupts from I/O devices are communicated from the I/O devices to the CPUs (or from one CPU to another CPU) as message packets.
CPUs and I/O devices may write to, or read from, memory of a CPU of the system. Memory protection is provided by an access validation method maintained by each CPU in which CPUs and/or I/O devices are provided with a validation to read/write memory of that CPU, without which memory access is denied.
-
Citations
26 Claims
-
1. In a processing system comprising at least a pair of transmitting/receiving elements coupled to one another by a bi-directional link for communicating multi-bit words, including multi-bit data words and multi-bit command words, a method of data communication flow control that includes the steps of:
-
providing each of the pair of transmitting/receiving elements with a transmit clock signal that defines clock periods and is sent on the bi-directional link to the other of the pair transmitting/receiving elements; a one of the pair of transmitting/receiving elements communicating data in the form of a series of multi-bit data words to the other of the pair of transmitting/receiving devices, each of the multi-bit data words being communicated with a clock period; in absence of communicating data, the one of the pair of transmitting/receiving elements transmitting with each clock period first multi-bit command words to the other of the pair of transmitting/receiving elements; and the one of the transmitting/receiving elements periodically sending a BUSY command word to indicate to the other of the pair of transmitting/receiving elements to at least temporarily halt communicating data or, if no data is being communicated, to not communicate data until a READY command word is sent by the one of the transmitting/receiving elements; wherein after receiving the BUSY command word, failure to receive the READY command word or a subsequent BUSY command word within a predetermined period of time by the other of the pair of transmitting/receiving elements is an error. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. Apparatus for communicating information in the form of multi-bit data and command symbols, comprising:
-
at least a pair of transmitting/receiving units each including a transmitting port from which information is transmitted, and a receiving port whereat information is received; a communications link connecting the transmitting and receiving ports of a one of the pair of transmitting/receiving units to the receiving and transmitting ports, respectively, of the other of the pair of transmitting/receiving units; the pair of transmitting/receiving units each operating to communicate information to one another in the form of one or more multi-bit command and data symbols or, in absence of either, a first command symbol, the transmitting/receiving units indicating an error if a data or a command symbol is not received within a predetermined period of time; each of the transmitting/receiving units including means for sending from the transmitting port a BUSY command symbol when receiving information at the receiving port for indicating a temporary cessation of the communication of the information and to periodically send the BUSY signal to maintain the temporary cessation, and for sending a READY command symbol is sent in place of the BUSY command symbol to indicate termination of the temporary cessation and readiness to resume communication of the information. - View Dependent Claims (11, 12, 13)
-
-
14. In a processing system comprising at least a pair of transmitting/receiving elements coupled to one another by a bi-directional link for communicating multi-bit words, including multi-bit data words and multi-bit command words, a method of data communication comprising the steps of:
-
providing each of the pair of transmitting/receiving elements with a transmit clock signal that defines clock periods and is sent on the bi-directional link to the other of the pair transmitting/receiving elements; a one of the pair of transmitting/receiving elements communicating data in the form of a series of multi-bit data words to the other of the pair of transmitting/receiving devices, each of the multi-bit data words being communicated with a clock period; in absence of communicating data, the one of the pair of transmitting/receiving elements transmitting with each clock period first multi-bit command words to the other of the pair of transmitting/receiving elements; the one of the transmitting/receiving elements periodically sending a BUSY command word to indicate to the other of the pair of transmitting/receiving elements to at least temporarily halt communicating data or, if no data is being communicated, to not communicate data until a READY command word is sent by the one of the transmitting/receiving elements; and the other of the pair of transmitting/receiving elements transmitting, while receiving the series, second multi-bit command words to the one transmitting/receiving element; wherein failure to receive the READY command word or the BUSY command word within a predetermined period of time by the other of the pair of transmitting/receiving elements is an error. - View Dependent Claims (15, 16, 17, 18)
-
-
19. In a processing system comprising at least a pair of transmitting/receiving elements coupled to one another by a bi-directional link for communicating multi-bit words, including multi-bit data words and multi-bit command words, a method of data communication flow control that includes the steps of:
-
communicating data between the pair of transmitting/receiving elements in the form of a series of multi-bit data words; transmitting periodic first predetermined multi-bit command words in absence of communicating data; a one of the pair of transmitting/receiving elements inserting a BUSY command word in the series of multi-bit data words to indicate to the other of the pair of transmitting/receiving element a request to suspend communication of information; receiving the BUSY command work at the other of the transmitting/receiving elements to begin sending a second predetermined command word; the one of the transmitting/receiving elements sending a READY command word, after sending the BUSY command word, to indicate a readiness to receive data; and reporting an error when a multi-bit data word or command word is not received within a predetermined period of time. - View Dependent Claims (20, 21, 22)
-
-
23. A method of controlling communication flow between first and second data-communicating elements interconnected for communicating therebetween multi-bit symbols that includes the steps of:
-
the first data-communicating element transmitting a first series of multi-bit symbols to the second data-communicating element and receiving from the second data-communicating element a second series of multi-bit symbols; the second data-communicating element inserting a BUSY multi-bit symbol in the second series of multi-bit symbols; the first data-communicating element receiving the BUSY multi-bit symbol to halt transmission of the first series of multi-bit symbols and to begin transmission of periodic FILL multi-bit symbols; the second data-communicating element subsequently sending a READY multi-bit symbol that, when received by the first data-communicating element, causes resumption of the first series of multi-bit symbols; and the first data-communicating element reporting an error when a multi-bit symbol is not received from the second data-communicating element within a predetermined period of time. - View Dependent Claims (24)
-
-
25. A method of controlling data flow between at least first and second communicatively intercoupled data communication devices of a data processing system, the first and second data communication devices operating to send the data in the form of messages, the method including the steps of:
-
operating the first communication device in a first mode to communicate a data message to the second data communication device; inserting in the data message a BUSY command, and thereafter periodically sending the BUSY command when no data message is being sent; receiving at the second communication device the BUSY command to inhibit communicating data to the first communication device; then sending a READY command from the first communication device to the second communication device; and receiving the READY command at the second communication device to permit communicating data. - View Dependent Claims (26)
-
Specification