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

Bit-band data size clarification

  • Note: This was originally posted on 17th August 2011 at http://forums.arm.com


    The one-bit per word mapping and data representation is fixed, however, the instruction dictates what size AHB transactions are used to perform the bit-band access.

    If the peripheral being accessed via the bit-band alias has different behaviour or limitations depending on whether it is accessed via an 8, 16 or 32-bit transaction, then LDRB/H can be used to select what size transaction is performed.

    hth
    s.


    Thanks for clarification!

    Could you give one example where a peripheral being accessed via  bit-banding alias has different behavior or limitations depending on  whether 8, 16 or 32 access?

    Thanks.
    Zhang Wei
  • Note: This was originally posted on 18th August 2011 at http://forums.arm.com

    OK. Based on your explanations, the access to bit-band address and corresponding bit-band alias address are actually through the SAME bus, and to the same address (the actual bit-band address). Then I understand why the access size needs to fit the bus size. I missed this concept in the book and always had the impression that access to alias region is using a separate bus.

    Thanks!
    Zhang Wei
  • Note: This was originally posted on 17th August 2011 at http://forums.arm.com

    Another situation that would be useful to use 8-bit or 16-bit size:
    If the bit band memory / device is on an external bus with 8-bit / 16-bit data, then using 8-bit or 16-bit transfer will be faster. Otherwise each 32-bit size bit band alias write operation will be convert to two 32-bit transfers, and each of them have to be converted to multiple 8-bit or 16-bit transfers, it can take quite a bit of time.
  • Note: This was originally posted on 16th August 2011 at http://forums.arm.com

    The one-bit per word mapping and data representation is fixed, however, the instruction dictates what size AHB transactions are used to perform the bit-band access.

    If the peripheral being accessed via the bit-band alias has different behaviour or limitations depending on whether it is accessed via an 8, 16 or 32-bit transaction, then LDRB/H can be used to select what size transaction is performed.

    hth
    s.
  • Note: This was originally posted on 17th August 2011 at http://forums.arm.com

    Hi Zhang Wei,

    The limitations on access size are normally defined by the peripheral hardware in question; some peripherals only accept 32-bit reads and writes to their register interface, for example. I'd recommend checking the peripheral datasheet.

    Iso