Patent ID: 7941584

Claim:
A data processing apparatus for coupling to one or more slave devices, the data processing apparatus comprising: processing circuitry for issuing a series of access requests for handling by said one or more slave devices, said series of access requests including one or more write access requests, each write access request specifying a write operation to be performed by an addressed slave device from said one or more slave devices, and each issued write access request being a pending write access request until the write operation has been completed by the addressed slave device; and hazard detection circuitry for detecting occurrence of at least one hazard condition in respect of the series of access requests issued by the processing circuitry; said hazard detection circuitry comprising: a pending write access history storage comprising at least one buffer and at least one counter for keeping a record of each pending write access request; update circuitry, responsive to receipt of a write access request to be issued by the processing circuitry, to perform an update process to identify that write access request as a pending write access request in one of said at least one buffers and, if the identity of another pending write access request is overwritten by that update process, to increment a count value in said at least one counter; on completion of each write access request by the addressed slave device, the update circuitry being arranged to perform a further update process to remove the record of that completed write access request from the pending write access history storage; and hazard checking circuitry, responsive to at least a subset of the access requests to be issued by the processing circuitry, to reference the pending write access history storage in order to determine whether said at least one hazard condition occurs.