Arm Community
Site
Search
User
Site
Search
User
Support forums
Architectures and Processors forum
bit addressable arrays in ARM9
Jump...
Cancel
State
Accepted Answer
+1
person also asked this
people also asked this
Locked
Locked
Replies
4 replies
Subscribers
348 subscribers
Views
5732 views
Users
0 members are here
Address
Arm9
Keil
Options
Share
More actions
Cancel
Related
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 addressable arrays in ARM9
sgupta sgupta
over 12 years ago
Note: This was originally posted on 5th January 2009 at
http://forums.arm.com
plz help me by telling hw we can use bit addressable arrays menas arrays that can be used bitwise..while programming through keil microvision , is there any option available??? plz help..
Top replies
Jacob Bramley
over 12 years ago
+1
verified
Note: This was originally posted on 5th January 2009 at http://forums.arm.com I don't know of any language that natively supports bit-addressable arrays, as they are only really useful in very specific...
Parents
0
Peter Harris
over 12 years ago
Note: This was originally posted on 6th January 2009 at
http://forums.arm.com
ARM has no "access per bit" instruction - so the compiler will need to acccess bytes and then extract the data it needs using shifts / masks. While you could use language extensions to do this, writing it yourself shouldn't be too hard.
That said... Cortex-M3 is a special case which supports a bit-banded memory region (each bit is addressable as one word in the address map, removing the need for the mask and shift). There is a 32MB bit-band memory allocated in the address map, which allows addressing of a 1MB array of memory.
It depends on the MCU implementation on how much of this bit-band is allocated to real memory.
Cheers,
Iso
Cancel
Vote up
0
Vote down
Cancel
Reply
0
Peter Harris
over 12 years ago
Note: This was originally posted on 6th January 2009 at
http://forums.arm.com
ARM has no "access per bit" instruction - so the compiler will need to acccess bytes and then extract the data it needs using shifts / masks. While you could use language extensions to do this, writing it yourself shouldn't be too hard.
That said... Cortex-M3 is a special case which supports a bit-banded memory region (each bit is addressable as one word in the address map, removing the need for the mask and shift). There is a 32MB bit-band memory allocated in the address map, which allows addressing of a 1MB array of memory.
It depends on the MCU implementation on how much of this bit-band is allocated to real memory.
Cheers,
Iso
Cancel
Vote up
0
Vote down
Cancel
Children
No data