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

Who controls HREADY in AHB?

Note: This was originally posted on 5th March 2011 at http://forums.arm.com

Q1: Who controls HREADY in AHB?In FAQ, it is said: "General: Is HREADY an input or an output from slaves?
Applies to: AHB
An AHB slave must have the HREADY signal as both an input and an output.
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 which is routed to all masters on the AHB and is also fed back to all slaves as the HREADY input."

Does it mean that it is slave that controls the HREADY?

If it is, if a master writes data into a slave, how can the slave know when the transmission is completed? that is to say, when to set HREADY to high or low?

Thanks a lot.
Parents
  • Note: This was originally posted on 6th March 2011 at http://forums.arm.com

    Thank you very much.
    I have another question when reading the spec.
    It is said that HGRANTx "This signal indicates that bus master x is currently the highest priority master. Ownership of the address/control signals changes at the end of a transfer when HREADY is HIGH, so a master gets access to the bus when both HREADY and HGRANTx are HIGH."

    My question is : "How can I know the transfer is about to end?"
    I cannot judge it by HREADY since HREADY would be high all time for a write transaction.

    for example, for Fig.3-17, it is said that "The arbiter changes the HGRANTx signals when the penultimate (one before last) address has been sampled. "
    Does it mean that I need a counter (for example) in Arbiter to count the number, and when counting to the penultimate, the arbiter can change the HGRANTx?

    Thanks a lot
Reply
  • Note: This was originally posted on 6th March 2011 at http://forums.arm.com

    Thank you very much.
    I have another question when reading the spec.
    It is said that HGRANTx "This signal indicates that bus master x is currently the highest priority master. Ownership of the address/control signals changes at the end of a transfer when HREADY is HIGH, so a master gets access to the bus when both HREADY and HGRANTx are HIGH."

    My question is : "How can I know the transfer is about to end?"
    I cannot judge it by HREADY since HREADY would be high all time for a write transaction.

    for example, for Fig.3-17, it is said that "The arbiter changes the HGRANTx signals when the penultimate (one before last) address has been sampled. "
    Does it mean that I need a counter (for example) in Arbiter to count the number, and when counting to the penultimate, the arbiter can change the HGRANTx?

    Thanks a lot
Children
No data