Communications system having plurality of originator and corresponding recipient buffers with each buffer having three different logical areas for transmitting messages in single transfer
First Claim
1. High performance communications channels for exchanging messages with low latency between elements of data processing systems, each of said communication channels comprising:
- an originator buffer in a message originator element and a recipient buffer in a message recipient element, said message originator element containing a plurality of originator buffers and said message recipient element containing a plurality of recipient buffers, an originator buffer of said plurality of originator buffers being paired with a recipient buffer of said plurality of recipient buffers,each of said originator buffer and said recipient buffer being composed of three logical areas designated as a request area, a response area and a data area, respectively, said request area for storing request messages, said response area for storing response messages and said data area for storing data, each of said three logical areas being separate from one another, each of said originator buffers and said recipient buffers being hardware communications buffers;
a transmission path connecting said originator buffer and said recipient buffer;
said message originator element managing both said originator buffer and said recipient buffer and transferring a message request from the request area of said originator buffer to the request area of said recipient buffer without requiring a correct request signal and a correct grant signal from said originator buffer and said recipient buffer, respectively, and, selectively transferring message dam from the data area of said originator buffer to the data area of said connected recipient buffer; and
said message recipient element responding by transferring a message response from the response area of said recipient buffer to the response area of said originator buffer and, selectively transferring message data from the data area of the recipient buffer to the data area of the originator buffer,wherein a message transmission is performed in a single transfer without a handshaking request signal and a handshaking grant signal and wherein said channel supports a plurality of concurrent message operations.
1 Assignment
0 Petitions
Accused Products
Abstract
Buffers are provided in two elements between which data is to be transferred wherein both buffers are managed solely by the originator of the data transfer. Only one transfer is required to transmit a message, and a second transfer acknowledges the completion of the function because message delivery to the receiver is guaranteed under the implemented protocol. When a request is sent, a message timer is started at the sender. When the normal response for the request is received, the timer is reset; however, if the duration of the message operation exceeds the timeout value, a message-timeout procedure is initiated. When the cancel command is issued, a second timer is set. If this timer is exceeded, subsequent cancel commands can be issued. If subsequent cancel commands are issued, a cancel complete command must be sent and responded to. Since the commands must be executed in the sequence in which they are received, a response to the cancel complete command ensures that there are no other cancel operation commands remaining in the receiver, allowing subsequent operations to start without danger of being canceled.
46 Citations
22 Claims
-
1. High performance communications channels for exchanging messages with low latency between elements of data processing systems, each of said communication channels comprising:
-
an originator buffer in a message originator element and a recipient buffer in a message recipient element, said message originator element containing a plurality of originator buffers and said message recipient element containing a plurality of recipient buffers, an originator buffer of said plurality of originator buffers being paired with a recipient buffer of said plurality of recipient buffers, each of said originator buffer and said recipient buffer being composed of three logical areas designated as a request area, a response area and a data area, respectively, said request area for storing request messages, said response area for storing response messages and said data area for storing data, each of said three logical areas being separate from one another, each of said originator buffers and said recipient buffers being hardware communications buffers; a transmission path connecting said originator buffer and said recipient buffer; said message originator element managing both said originator buffer and said recipient buffer and transferring a message request from the request area of said originator buffer to the request area of said recipient buffer without requiring a correct request signal and a correct grant signal from said originator buffer and said recipient buffer, respectively, and, selectively transferring message dam from the data area of said originator buffer to the data area of said connected recipient buffer; and said message recipient element responding by transferring a message response from the response area of said recipient buffer to the response area of said originator buffer and, selectively transferring message data from the data area of the recipient buffer to the data area of the originator buffer, wherein a message transmission is performed in a single transfer without a handshaking request signal and a handshaking grant signal and wherein said channel supports a plurality of concurrent message operations. - View Dependent Claims (2, 3, 4)
-
-
5. A data processing system having at least first and second elements interconnected by high performance channels for synchronously exchanging messages with low latency between said first and second elements, each of said high performance channels supporting at least one message and comprising:
-
an originator buffer in said first element and a dedicated recipient buffer in said second element, each of said originator buffer and said recipient buffer being composed of three logical areas designated as a request area, a response area and a data area, respectively, said first element containing a plurality of originator buffers and a plurality of recipient buffers and said second element containing a plurality of originator buffers and a plurality of recipient buffers each of said originator buffers and said recipient buffers being hardware communications buffers, said request area for storing request messages, said response area for storing response messages and said data area for storing data, each of said three logical areas being separate from one another; first and second transmission paths of a high performance link connecting channels; said first element managing both a connected originator buffer and a dedicated recipient buffer and transferring only a single request message over said first transmission path without requiring a correct request signal and a correct grant signal from said originator buffer and said recipient buffer, respectively, said single request message comprising a message request from the request area of said originator buffer to the request area of said recipient buffer and, selectively transferring message data from the data area of said originator buffer to the data area of said recipient buffer; and said second element responding by transferring only a single response message over said second transmission path, said single response message comprising a message response from said response area of said recipient buffer to said response area of said originator buffer and, selectively transferring message data from the data area of said recipient buffer to the data area of said originator buffer, wherein a message transmission is performed in a single transfer without a handshaking request signal and a handshaking grant signal and said channel supports a plurality of concurrent message operations. - View Dependent Claims (6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. In a data processing system including high performance channels for exchanging messages with low latency between elements of the data processing system, each of said high performance channels supporting multiple messages and comprising an originator buffer in a first element and a recipient buffer in a second element, each of said originator buffer and said recipient buffer being composed of three logical areas designated as a request area, a response area and a data area, respectively,
said originator buffer and said recipient buffer being connected by a pair of transmission paths of a high performance link having a plurality of transmission paths, said first element controlling both a connected originator buffer and recipient buffer and transferring only one message, without requiring a correct request signal and a correct grant signal from said originator buffer and said recipient buffer, respectively, said message comprising a message request from the request area of said originator buffer to the request area of said recipient buffer and, said first element selectively transferring message data from the data area of said originator buffer to the dam area of said recipient buffer, and said second element responding by transferring only one message comprising a message response from said response area of said recipient buffer to said response area of said originator buffer and, selectively transferring message data from the data area of said recipient buffer to the data area of said originator buffer, a method for recovery of individual operations in a multiple operation environment comprising the steps of: -
sending a request from said originator buffer to said recipient buffer and setting a timer for a first expected response time period; processing all requests at said recipient buffer in an order in which received; checking said timer and if said first expected response time period expires, sending a first cancel operation request from said originator buffer to said recipient buffer and setting said timer for a second expected response time period; and checking said timer and if a cancel request response is received from the recipient buffer by the originator buffer within said second expected response time period, terminating said request, the step of terminating said request having no effect on other messages processing operations being simultaneously in a same high performance channel.
-
-
18. In a data processing system including high performance channels for exchanging messages with low latency between elements of the data processing system, each of said high performance channels supporting multiple messages and comprising an originator buffer in a first element and a recipient buffer in a second element, each of said originator buffer and said recipient buffer being composed of three logical areas designated as a request area, a response area and a data area, respectively,
said originator buffer and said recipient buffer being connected by a pair of transmission paths of a high performance link having a plurality of transmission paths, said first element controlling both a connected originator buffer and recipient buffer and transferring only one message comprising a message request from the request area of said originator buffer to the request area of said recipient buffer and, selectively transferring message data from the data area of said originator buffer to tile data area of said recipient buffer, and said second element responding by transferring only one message comprising a message response from said response area of said recipient buffer to said response area of said originator buffer and, selectively transferring message data from the data area of said recipient buffer to the data area of said originator buffer, a method for recovery of individual operations in a multiple operation environment comprising tile steps of: -
sending a request from said originator buffer to said recipient buffer and setting a timer for a first expected response time period; processing all requests at said recipient buffer in an order in which received; checking said timer and if said first expected response time period expires, sending a first cancel operation request from said originator buffer to said recipient buffer and setting said timer for a second expected response time period; and checking said timer and if a cancel request response is received from the recipient buffer by the originator buffer within said second expected response time period, terminating said request, the method further including the step of establishing a system threshold for a number of cancel operation requests that may be transmitted for any original request message, wherein if said second expected response time period expires, said method further comprises the steps of; sending additional cancel operation requests from said originator buffer to said recipient buffer and, for each said additional cancel operation request sent, setting said timer for an additional expected response time period; counting cancel operation requests sent to generate a number and comparing said number with said threshold; and returning a status message from said high performance channel indicating a failure of the high performance channel if said number equals said threshold.
-
-
19. In a data processing system including high performance channels for exchanging messages with low latency between elements of the data processing system, each of said high performance channels supporting multiple messages and comprising an originator buffer in a first element and a recipient buffer in a second element, each of said originator buffer and said recipient buffer being composed of three logical areas designated as a request area, a response area and a data area,
said originator buffer and said recipient buffer being connected by a pair of transmission paths of a high performance link having a plurality of transmission paths, said first element controlling both a connected originator buffer and recipient buffer and transferring only one message comprising a message request from the request area of said originator buffer to the request area of said recipient buffer and, selectively transferring message data from the data area of said originator buffer to the data area of said recipient buffer, and said second element responding by transferring only one message comprising a message response from said response area of said recipient buffer to said response area of said originator buffer and, selectively transferring message data from the data area of said recipient buffer to the data area of said originator buffer, a method for recovery of individual operations in a multiple operation environment comprising the steps of: -
sending a request from said originator buffer to said recipient buffer and setting a timer for a first expected response time period; processing all requests at said recipient buffer in an order in which received; checking said timer and if said first expected response time period expires, sending a first cancel operation request from said originator buffer to said recipient buffer and setting said timer for a second expected response time period; and checking said timer and if a cancel request response is received from the recipient buffer by the originator buffer within said second expected response time period, terminating said request, wherein if said second expected response time period expires, said method further comprises the steps of; sending a second cancel operation request from said originator buffer to said recipient buffer and setting said timer for said second expected response time period; upon receiving a cancel request response after sending said second cancel operation request, sending a cancel complete request from said originator buffer to said recipient buffer; and responding to a cancel complete response from said recipient buffer to said originator buffer by terminating said request. - View Dependent Claims (20, 21, 22)
-
Specification