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

AMBA AHB5 : Stable Between Clock Question

Hi All,

I have a question on AMBA5 AHB feature : Stable_between_Clock property

The AMBA5 AHB Specification describes:

Signals that are described as being stable are required to remain at the same value when sampled at different rising clock edges in an extended transfer. However, it is possible that these signals can glitch after clock edges, returning to the same value as previously driven.

AHB5 defines the Stable_Between_Clock property to determine if an interface guarantees that signals that are required to be stable remain stable between rising clock edges.

If this property is True, it is guaranteed that signals that are required to be stable remain stable and glitch free between rising clock edges.

If this property is False, or is not defined, signals can glitch between rising clock edges.

Also the Specification says during waited transfer the transfer type(htrans) can change from IDLE -> NONSEQ, BUSY -> SEQ (for fixed length burst), BUSY -> any other transfer type (for undefined length burst).

My question here is,

1.What are the AHB5 signals that needs to remain stable between the clock during an extended transfer (waited transfer) other than HWDATA.?

2. Does AHB5 support multi master, as the AHB5 spec does not provide information about Arbiter signals ?

Thanks !!

Parents
  • Swetha,

    1. HWDATA is the only signal that must remain stable during extended transfers.

    As you have observed, HTRANS can change under some circumstances, and when HTRANS is allowed to change, all other address phase control signals can also change to signal the new transfer required. As well as the sequences you listed when HTRANS can change, the other time HTRANS can change during a waited transfer is when the slave returns an ERROR response, when the master can change HTRANS to IDLE, meaning all the other address phase controls can also change.

    For the data phase signals, HRDATA and HEXOKAY are only required to be at their final value when HREADY is driven high by the slave, so could in theory change while HREADY is low. HRESP needs to be able to change while HREADY is low when returning an ERROR response. So none of the data phase signals (other than HWDATA) must remain stable during extended transfers.

    2. AHB5 is really an update to the AMBA 3 AHB-lite protocol, so only one master is supported on the bus, and no arbitration signals like you would have seen in AMBA 2 AHB. Where a system has multiple masters using AHB5 (or AHB-lite), the expectation would be that you would use a multi-layer interconnect to access shared slaves, this way supporting all masters active at the same time, something you couldn't have in an AHB system where all masters share one bus.

    Hope that helps,

    JD

Reply
  • Swetha,

    1. HWDATA is the only signal that must remain stable during extended transfers.

    As you have observed, HTRANS can change under some circumstances, and when HTRANS is allowed to change, all other address phase control signals can also change to signal the new transfer required. As well as the sequences you listed when HTRANS can change, the other time HTRANS can change during a waited transfer is when the slave returns an ERROR response, when the master can change HTRANS to IDLE, meaning all the other address phase controls can also change.

    For the data phase signals, HRDATA and HEXOKAY are only required to be at their final value when HREADY is driven high by the slave, so could in theory change while HREADY is low. HRESP needs to be able to change while HREADY is low when returning an ERROR response. So none of the data phase signals (other than HWDATA) must remain stable during extended transfers.

    2. AHB5 is really an update to the AMBA 3 AHB-lite protocol, so only one master is supported on the bus, and no arbitration signals like you would have seen in AMBA 2 AHB. Where a system has multiple masters using AHB5 (or AHB-lite), the expectation would be that you would use a multi-layer interconnect to access shared slaves, this way supporting all masters active at the same time, something you couldn't have in an AHB system where all masters share one bus.

    Hope that helps,

    JD

Children