摘要 |
A system and method for transferring data over a communications medium. A host is coupled to a device through a serial bus lacking error handling capabilities, such as an IEEE 1394 bus. The host may control the device by sending requests accessing its memory registers. The host generates a first request to the device to access a memory address location of the device, and which includes an address and status information indicating whether a prior request to the memory address location returned successfully. The device examines the status information to determine if it is a retry of a prior request, and if so, determines if the prior request completed successfully to the memory address location by comparing the address and data transfer size of the first request to those of the prior request. If identical, then the prior request completed successfully to the memory address location, and the request is ignored. Otherwise, the device retries the prior request. If the first request is not a retry the device performs it and returns an acknowledgement to the host indicating successful completion. If the host does not receive valid acknowledgement, it retries the first request, otherwise, it completes a transaction associated with the first request. Then, a new transaction request may be received which results in a new request being generated by the host to access the memory address location. The host may manipulate the status information in the new request to indicate that the first request to the memory address location returned successfully.
|