This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

The reason why AHB Slave has HREADY input and output both

I saw 'Is HREADY an input or an output on slaves?'. 

it saids

"Any AHB ("AMBA 2 AHB" or "AMBA 3 AHB-lite" or "AMBA 5 AHB") slave must have HREADY as both an input and an output port (not bi-directional).

HREADY is required as an output from a slave so that the slave can extend the data phase of a transfer.

HREADY is also required as an input so that the slave can determine when the previously selected slave has completed its final transfer and the first data phase transfer for this slave is about to commence.

Each AHB Slave should have an HREADY output signal (conventionally named HREADYOUT) which is connected to the "Slave-to-Master Multiplexer". The output of this multiplexer is the global HREADY signal seen by the AHB master, which is also fed back to all slaves as their HREADY input.

For single AHB slave buses this "Slave-to-Master Multiplexer" is replaced by direct connections, so HREADYOUT from the slave drives the AHB master's HREADY input, and is also fed back to the slave's HREADY input."

I can't clearly understand about "HREADY is also required as an input so that the slave can determine when the previously selected slave has completed its final transfer and the first data phase transfer for this slave is about to commence"

Assumming 1 master(M0) and 3 slaves(S0,S1,S2), if M0 and S0 is doing transaction and M0 requested to S2, is it right S2 is determining another transaction is working by HREADY input? 

Is there other reason of HREADY input?

If my assumming is right, I think HTRANS is also common signal and other slaves can determining transaction by HTRANS signal.

I want exact reason of HREADY input in AHB Slave and if you give example I will appreciate about it

Thank you