
© G.N. Khan ARM Processors/Cores – EE8205: Embedded Computer Systems Page: 27
Bit Banding
• Memory mapped I/O, 4GB memory address space organized in bytes.
• 4GB is very large for small embedded applications.
• Bit-banding happens by taking advantage of this large memory space.
• Uses two different regions of the address space to refer the same physical
data in the memory.
• In primary bit-band region each address corresponds to single data byte.
• In the bit-band alias each address corresponds to 1-bit of the same data.
• It allows the access of a bit of data (read or write) by a single instruction.
• LDR can load a single bit and STR can write a single bit of data.
• Two bit band alias regions can be used to access individual status and
control bit of I/O devices or to implement a set of 1-bit Boolean flags
that can be used to implement a set of mutex objects.
• Bit-band hardware does not allow interruption of read-modify write.
Bit_band alias address = Bit_band base +128 x word_offset + 4 x bit #
If bit-3 at address 20001000
16
is to be modified the bit-band alias is
22000000
16
+ 128
10
x 1000
16
+ 4 x 3 = 2208000C
16
Comentários a estes Manuais