Patent ID: 7849210

Claim:
A system comprising: a receiving device; and a transmitting device configured to transmit data in a plurality of packets to the receiving device, wherein each of the data packets is a predetermined number of data bytes wide, wherein the transmitting device includes a transfer count unit configured to maintain a data transfer count based on a number of transmitted data bytes; wherein the receiving device is configured to: prior to completion of a data transfer, program the transmitting device with a transfer count mark, wherein the transfer count mark is a number that corresponds to a specific count of the data transfer count, and wherein the transfer count mark specifies a portion of the data to be transferred; wherein during the data transfer, the transmitting device is configured to calculate a difference between the data transfer count and the transfer count mark; wherein, in response to the difference between the data transfer count and the transfer count mark being less than the predetermined number, the transmitting device is configured to transmit a short data packet having less than the predetermined number of data bytes to the receiving device, thereby completing transfer of the portion of the first amount of data; and wherein the transmitting device further comprises an additive transfer count unit, wherein the receiving device is configured to program the additive transfer count unit of the transmitting device with a value indicating additional data to be transferred, wherein in response to said programming the additive transfer count unit is configured to add the value to the data transfer count.