hi,
Is HREADY is used by the slave to notify the master that it is ready to receive or to indicate transfer is completed??
thanks in advance
HREADY is driven high by the slave in the final cycle of a data phase transfer to tell the master that the requested data transfer is completing.
How master knows that slave is ready to receiveth data, i mean through which signal master come to know slave is ready to receiveth data at the starting of transfer
HREADY signal is used for both cases:
to notify the master that slave is ready to transfer data (HREADY is high);
to notify the master that transfer is completed (HREADY is high).
When HREADY is low - the transfer is extended (wait state is added).
The Master also samples HRESP (from slave) for OKAY or ERROR transfers.
The AHB master doesn't know that the slave is ready to receive data, the master simply performs a write transfer address phase to tell the slave what location it will attempt to write to, and then in the data phase of that transfer the master drives HWDATA with the data for that requested transfer, and the slave tells the master if and when that data has been accepted by driving HREADY high at the end of the data phase, with HRESP indicating if the transfer completed successfully.
So the master doesn't wait for the slave to indicate that it can accept data, it attempts a transfer and then waits to see the slave's responses on HREADY and HRESP.
In AXI the slave has the ability to indicate that it is ready to accept data (WREADY), but this sort of function isn't supported in AHB.