Datasheet

ARMulator Basics
2-28 Copyright © 1999-2001 ARM Limited. All rights reserved. ARM DUI0058D
2.8.3 Selecting the mapfile memory model
Under
armsd
, the map memory model inserts itself automatically, if loaded, as the
memory model to use whenever an
armsd.map
file exists in the directory where
armsd
is
started.
Under AXD, the map memory model is automatically inserted whenever a memory map
file is specified. Specify map files using the Memory Maps tab of the ARMulator
configuration dialog.
2.8.4 How the mapfile memory model calculates wait states
The memory map file specifies access times in nanoseconds for
nonsequential/sequential reads/writes to various regions of memory. By inserting wait
states, the map memory model ensures that every access from the ARM processor takes
at least that long.
The number of wait states inserted is the least number required to take the total access
time over the number of nanoseconds specified in the memory map file. Consider this
when designing your system.
For example, with a clock speed of 33MHz (a period of 30ns), an access specified to
take 70ns in a memory map file results in two wait states being inserted, to lengthen the
access to 90ns.
If the access time is 60ns (only 14% faster) the model inserts only one wait state (33%
quicker).
A mismatch between processor clock-speed and memory map file can sometimes lead
to faster processor speeds having worse performance. For example, a 100MHz
processor (10ns period) takes five wait states to access 60ns memory (a total access time
of 60ns). At 110MHz, the map memory model must insert six wait states (a total access
time of 63ns). So the 100MHz-processor system is faster than the 110MHz processor.
(This does not apply to cached processors, where the 110MHz processor would be
faster.)
Note
For accurate simulation of the real hardware, access times specified in the memory map
file must include propagation delays and memory controller decode time as well as the
access time of the memory devices. For example, for 70ns RAM, if there is a 10ns
propagation delay, configure the map file as 80ns.