Hi, When the current AHB slave is busy (hready low) servicing the Master,but if the master drives IDLE transfer in the next cycle , then according to the protocol slave should give a zero wait state OKAY response,but by seeing the hready high for this IDLE response ,master will drive it's address and data.Later the slave will drive hready for the pending(previous transfer) service.This is malfuntion the current transfer...so it is alwayas nessacary to give a zero wait state OKAY response for an IDLE transfer??
In T0, AHB master issue transfer (note that HREADY is high) In T1, AHB slave start doing the work (putting HREADY to low) In T2 and T3, despite HTRANS is IDLE in previous cycle, AHB slaves can ignore it because HREADY is low. In T4, AHB slave set HREADY to high, so all AHB slave will have to check what is on HTRANS, HADDR (also HSEL,HWRITE etc). In T5, AHB slave output a zero wait state OKAY response for the IDLE in T4.
Hope this answered your question. In addition, question about AHB might be better be posted on comp.sys.arm newsgroup. (I know, you might not be using ARM stuffs but I guess more people on that newsgroup can answer questions on AMBA stuffs).
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.