Patent ID: 7349973

Claim:
A data transfer control device for data transfer over a bus, the data transfer control device comprising: a buffer controller which controls access to a packet buffer in which is stored transfer data; a register section including registers in which are set the total size of transfer data and the maximum packet size; a transfer controller which automatically issues a first transaction with respect to an end point, and automatically transfers data to the end point while calculating the remaining size of data to be transferred, based on the total size of data and the maximum packet size, wherein the transfer controller automatically issues a subsequent transaction and automatically transfers a short packet to the end point, when the remaining data size of transfer data in the first transaction is less than a maximum packet size; a plurality of pipe regions for storing data to be transferred to or from the end points are allocated in the packet buffer; the register section includes a plurality of transfer condition registers in each of which transfer condition information for data transfer between each of the pipe regions and corresponding one of the end points is set; the total size and the maximum packet size are set in the transfer condition registers as the transfer condition information; the transfer controller automatically issues a transaction with respect to one of the end points, based on the transfer condition information in the transfer condition registers, and automatically transfers data between each of the pipe regions and corresponding one of the endpoints; wherein: the transfer controller automatically issues the next transaction and automatically transfers a short packet of zero data length to the end point, when the payload size of a packet to be transferred by the current transaction is the maximum packet size, and also the remaining data size of the transfer data is zero; an automatic transfer instruction for turning on or off the automatic transfer of the short packet of zero data length is set in each of the transfer condition registers for each of the pipe regions; and the transfer controller automatically transfers the short packet of zero data length when the automatic transfer instruction set in each of the transfer condition registers is valid.