Patent ID: 7673076

Claim:
A method for data transfer between a plurality of ports comprising the steps of: receiving and queuing data transfer requests specifying a source port and a destination port; dispatching a queued data transfer request from queue to an assigned channel upon detection of an open channel of a plurality of channels; sending a source read request corresponding to a data transfer request directed to a specified source port to said source port upon detection said source port is open and that a write buffer memory provided for said assigned channel has room to store data corresponding to said source read request; receiving a read response signal from said source port in response to said source read request; storing received read response signals in a read response buffer memory corresponding to said source port; receiving read data from said source port in response to said source read request; storing received read data in a write buffer memory of said assigned channel; sending a destination write request and write data corresponding to a data transfer request directed to a specified destination port to said destination port from said write buffer memory of said assigned channel; and wherein said write buffer memory of said assigned channel is configured to simultaneously store received read data corresponding to plural data transfer requests for plural channels by storing read data for a data transfer request before sending a destination write request and write data for an earlier received data transfer request.