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

About AHB5 protection control signals

In AHB5, we have extended memory bits as [6:4] hprot. Previously we have [3:0] hprot. For implementation purpose, i treated [6:4] as a separate signal. This separate signal am qualifying based on some filter, just because not to consider for older AHB. Please suggest me, whether am doing in correct way.

  • Hi smata and welcome tot he Community!

    I have moved your question to ARM Processors where I think you will get your answer.

  • Hi smata,

    Treating HPROT[6:4] as a separate signal wouldn't be an issue, in fact they are documented as separate in section 2.2 "Master signals" in the AMBA 5 AHB spec.

    As far as "qualifying based on some filter" is concerned, again the AMBA 5 AHB spec section 2.2 refers to an "AHB5 Extended_Memory_Types" property being defined if these additional HPROT extension bits are supported, so your approach looks similar to that in the spec. If your "filter" was having this "AHB5 Extended_Memory_Types" property defined, it would then be clearer why you are, or are not, supporting/testing the HPROT[6:4] bits.

    JD

  • Thank you.

    One more query regarding implementation is, for the extended HPROT bits {lookup, allocate, shareable} there are de-assert conditions for each bit i.e. {non_lookup, non_allocate, non_shareable}. Test is randomizing all the bits, still am not able to hit non_allocate and non_shareable. In all way am trying, giving more weightage in constraint or by directed test, still not able hit.

    Can you please suggest, is there any restriction to hit those 2 bits or we can ignore in normal functionality or how it is.

  • Hi smata,

    There isn't really much anyone could suggest here, it sounds is if your tool's "randomize" function isn't very random if you don't see these bits driven low.

    Going by table 3-6 in the protocol, non-shared and non-allocated transfers are valid (as demonstrated by the first 5 memory types listed), so it can't be something the tool has forbidden as illegal.

    This is probably something you should be asking the supplier of the verification tool to see why you never see these 2 bits tested as you require.


    JD