An image recovery algorithm that recovers completely lost blocks in an imagevideo frame using spatial information surrounding these blocks. In a single thread mode, the microprocessor allows a single thread to have access to multiple ones of the register files. The present invention also provides adaptive adjustment of cycling criteria to optimize the cycling operation. In response to another write command being received from the first device, a buffered write command and its corresponding write data are sent to a second device for execution, without waiting for the write data corresponding to said another write command to be sent from the first device.