Data transfer engine of a processor having a plurality of modules
First Claim
1. In an information processing system, having a plurality of modules including a processor, a cache memory, a main memory and a plurality of I/O devices, a data streamer for performing data transfer operations between said modules comprises:
- a channel state memory configured to store a first allocated channel information, including data addresses, corresponding to a data transfer operation from a source module to said data streamer, and further configured to store a second allocated channel information, including data addresses, corresponding to said data transfer operation from said data streamer to a destination module;
a buffer memory allocated to said data transfer operation for receiving data provided by said source module in accordance with said first allocated channel information and providing said received data to said destination module in accordance with said second allocated channel information; and
a buffer state memory configured to store a relationship which determines that said first channel information and said second channel information and said buffer memory is used in said data transfer operation.
2 Assignments
0 Petitions
Accused Products
Abstract
In an information processing system which has plurality of modules including a processor, a main memory and a plurality of I/O devices, a data transfer switch for performing data transfer operations between the processor, main memory and I/O devices comprises a request bus which has a request bus arbiter for receiving read and write requests from each one of the plurality of modules. A processor memory bus is configured to receive address and data information from a predetermined number of modules, including the processor. The processor memory bus has a data bus arbiter for receiving data read and write requests from each one of the predetermined number of modules which are coupled to the processor memory bus.
An internal memory bus is configured to receive address and data information from a predetermined number of modules, including the memory and the I/O devices. The internal memory bus has a data bus arbiter for receiving data read and write requests from each one of the predetermined number of modules coupled to the internal memory bus. A transceiver system is coupled to the processor memory bus and the internal memory bus for transferring data between the processor memory bus and the internal memory bus.
-
Citations
19 Claims
-
1. In an information processing system, having a plurality of modules including a processor, a cache memory, a main memory and a plurality of I/O devices, a data streamer for performing data transfer operations between said modules comprises:
-
a channel state memory configured to store a first allocated channel information, including data addresses, corresponding to a data transfer operation from a source module to said data streamer, and further configured to store a second allocated channel information, including data addresses, corresponding to said data transfer operation from said data streamer to a destination module; a buffer memory allocated to said data transfer operation for receiving data provided by said source module in accordance with said first allocated channel information and providing said received data to said destination module in accordance with said second allocated channel information; and a buffer state memory configured to store a relationship which determines that said first channel information and said second channel information and said buffer memory is used in said data transfer operation. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. In an information processing system, having a plurality of modules including a processor, a cache memory, a main memory and a plurality of I/O devices, a data streamer for performing data transfer operations between said modules comprises:
-
a channel state memory configured to store a first allocated channel information including a first channel descriptor, wherein said data transfer operation from a source module to said buffer is accomplished in accordance with said first channel descriptor, said first channel information corresponding to a data transfer operation from a source module to said data streamer, and further configured to store a second allocated channel information, including a second channel descriptor, wherein said data transfer operation from said buffer to said destination module is accomplished in accordance with said second channel descriptor, said second channel information corresponding to said data transfer operation from said data streamer to a destination module, said first and said second channel descriptors having a different format and wherein the data transfer rate from a source module to a corresponding buffer in said buffer memory, is different than the data transfer rate from said buffer memory to a destination module; and a buffer memory allocated to each one of said data transfer operation for receiving data provided by said source module in accordance with said first allocated channel information and providing said received data to said destination module in accordance with said second allocated channel information, and wherein the size of said buffet memory variably changes in accordance with the size of data in a corresponding data transfer operation.
-
-
11. In an information processing system, having a plurality of modules including a processor, a cache memory, a main memory and a plurality of I/O devices, a method for performing data transfer operations between said modules comprising the steps of:
-
storing a first allocated channel information, including data addresses, corresponding to a data transfer operation from a source module to a buffer memory; storing a second allocated channel information, including data addresses, corresponding to said data transfer operation from said buffer memory to a destination module; receiving data provided by said source module in accordance with said first allocated channel information; providing said received data to said destination module in accordance with said second allocated channel information; and storing a relationship in a buffer state memory which determines that said first channel information and said second channel information and said buffer memory is used in said data transfer operation. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18)
-
-
19. In an information processing system, having a plurality of modules including a processor, a cache memory, a main memory and a plurality of I/O devices, a method for performing data transfer operations between said modules comprising the steps of:
-
storing a first allocated channel information, including a first channel descriptor, wherein said data transfer operation from a source module to said buffer is accomplished in accordance with said first channel descriptor, said first channel information corresponding to a data transfer operation from a source module to a buffer memory; storing a second allocated channel information, including a second channel descriptor, wherein said darn transfer operation from said buffer to said destination module is accomplished in accordance with said second channel descriptor, said second channel information corresponding to said data transfer operation from said buffer memory to a destination module, said first and said second channel descriptors having a different format; receiving data provided by said source module in accordance with said first allocated channel information; and providing said received data to said destination module in accordance with said second allocated channel information, wherein the data transfer rate from a source module to a corresponding buffer in said buffer memory, is different than the data transfer rate from said buffer memory to a destination module and wherein the size of said buffer memory variably changes in accordance with the size of data in a corresponding data transfer operation.
-
Specification