
MOTOROLA
Chapter 23. READI Module
23-99
Application Notes
23.12.3Calibration Variables Not Located in Contiguous
Memory Locations
23.12.3.1 Data Write Messaging
Option A:
If calibration variables are not located in contiguous memory locations, then a contiguous
section of the RAM can be reserved for variable acquisition tracing. At engine/time
synchronous points, the software can write these contiguous locations with the values of the
variables. This activity will be traced and messaged out data write messaging.
This method requires a ‘shadow’ location for each word being monitored.
A load and a store will be required for each variable to update the shadow locations, which
are traced.
READI queue sizes and IEEE-ISTO 5001 port throughput will require few clocks between
the individual ‘writes’ of the variables. This could be achieved by adding a few ‘nop’
instructions.
Option B:
Another possibility is to allocate a (single/few) word(s) in the RAM that are configured to
be traced by the READI module. Then at engine/time synchronous points, the software will
write the values of a SERIES of variables to a corresponding location. This activity will be
traced and messaged out data write messaging.
This method requires a ‘shadow’ location, for each SERIES (of related) variables or
channels, in the RAM.
A load and a store will be required for each variable to update the shadow locations, which
are traced. The 1st write to the location could be a byte which indicates the channel number.
The calibration tool then will not be required to know the address translation for channel
information.
The advantage of using this option is that fewer locations need to be reserved in memory
for measurement and the data trace messages are smaller, since a whole table (45 values)
may be written to the same location.
The disadvantage of using this option is that the calibration tool needs to be aware of which
series a particular location represents, and the order in which the values are written.
READI queue sizes and READI port throughput will require few clocks between the
individual ‘writes’ of the variables. This could be achieved by adding a few ‘nop’
instructions.