TMP91C824
91C824-83
2008-02-20
(3)
Setting memory start addresses and address areas
Figure 3.6.4 show an example of specifying a 64-Kbyte address area starting from
010000H using the CS0 areas.
Set 01H in memory start address register MSAR0<S23:16> (Corresponding to the
upper 8 bits of the start address). Next, calculate the difference between the start
address and the anticipated end address (01FFFFH). Bits 20 to 8 of the result
correspond to the mask value to be set for the CS0 area. Setting this value in memory
address mask register MAMR0<V20:8> sets the area size This example sets 07H in
MAMR0 to specify a 64-Kbyte area.
0
0
0
0
0
0
0
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
1
0 1 F F F F
S23 S22 S21 S20 S19 S18 S17 S16
0 0 0 0 0 0 0 1
0 1
H
V20 V19 V18 V17 V16 V15
V14 to V9
V8
0 0 0 0 0 0 0 0 1 1 1
1
1
1
1
1
1
1
1
1
1
1
1
1
0
7
H
Figure 3.6.4 Example Showing How to Set the CS0 Area
After a reset, MSAR0 to MSAR3 and MAMR0 to MAMR3 are set to FFH.
B0CS<B0E>, B1CS<B1E> and B3CS<B3E> are reset to 0. This disabling the CS0,
CS1 and CS3 areas. However, as B2CS<B2M> to 0 and B2CS<B2E> to 1, CS2 is
enabled from 000FE0H to 000FFFH to 003000H to FFFFFFH in TMP91C824. Also,
the bus width and number of waits specified in BEXCS are used for accessing
addresses outside the specified CS0 to CS3 area. (See 3.6.2 “Chip Select/Wait Control
Registers”.)
Memory
end
address
H
Memory
start
address
CS0 area
size
(64 Kbytes)
Memory address
mask register
setting
MSAR0
MSMR0
Setting of 07H specifies a 64-Kbyte area.