20.2.5 ETAP Fast Data
(ETAP_FASTDATA
) Command
The ETAP_FASTDATA
command provides a mechanism for quickly transferring
data between the processor and the probe. The width of the Fastdata register is one bit.
During a fast data access, the Fastdata register is written and read (a bit is shifted
in and a bit is shifted out). During a fast data access, the Fastdata register value
shifted in specifies whether the fast data access must be completed or not. The value
shifted out is a flag that indicates whether the fast data access was successful or not
(if completion was requested). The FASTDATA access is used for efficient block transfers
between the DMSEG segment (on the probe) and target memory (on the processor). An
“upload” is defined as a sequence that the processor loads from target memory and stores
to the DMSEG segment. A “download” is a sequence of processor loads from the DMSEG
segment and stores to target= memory. The “Fastdata area” specifies the legal range of
DMSEG segment addresses (0xFF200000 to 0xFF20000F) that can be used for uploads and
downloads. The Data and Fastdata registers (selected with the FASTDATA
instruction) allow efficient completion of pending Fastdata area accesses.
During Fastdata uploads and downloads, the processor will stall on accesses to the Fastdata area. The PrAcc (processor access pending bit) will be ‘1’ indicating the probe is required to complete the access. Both upload and download accesses are attempted by shifting in a zero SPrAcc value (to request access completion) and shifting out SPrAcc to see if the attempt will be successful (i.e., there was an access pending and a legal Fastdata area address was used).
Downloads will also shift in the data to be used to satisfy the load from the DMSEG segment Fastdata area, while uploads will shift out the data being stored to the DMSEG segment Fastdata area.
- PrAcc must be ‘
1
’ (there must be a pending processor access) - The Fastdata operation must use a valid Fastdata area address in the DMSEG segment (0xFF200000 to 0xFF20000F)