Double Control Packet Configuration Memory
1179
SPNU563A – March 2018
Copyright © 2018, Texas Instruments Incorporated
High-End Timer Transfer Unit (HTU) Module
24.5.6 Current Full Address B Register (HTU CFADDRB)
Figure 24-47. Current Full Address B Register (HTU CFADDRB)
31
16
CFADDRB
R/WP-X
15
0
CFADDRB
R/WP-X
LEGEND: R/W = Read/Write; WP = Write in privilege mode only; -
n
= value after reset; X = Unknown
Table 24-48. Current Full Address B Register (HTU CFADDRB) Field Descriptions
Bit
Field
Description
31-0
CFADDRB
Current (byte) Address of Buffer B
The current main memory address register is updated at the end of each frame. Therefore it points to the start
address of the frame, which is the next to transfer, if currently no frame is transferred on this DCP. If currently a
frame is transferred, then it points to the start address of this frame. After the last element of a buffer was
transferred it will point to the buffer end address plus 0x4.
The main purpose of the current full address registers for buffer A and buffer B (see next section) is to enable
the software to find out the recently transferred element in the frozen buffer while the address of the active
buffer increments.
Note:
A frame can be automatically stopped if any of the events listed in Conditions for Frame Transfer
Interruption happens. If a frame is stopped before it could complete, then the current full address register is not
updated and it will point to the start of the bad frame after the DCP was automatically disabled.
To transfer the first frame of buffer x, the information in the corresponding initial DCP RAM (IFADDRx,
IHADDRCT, ITCOUNT) is loaded to an internal state machine but not to the current DCP RAM
(CFADDRx, CFTCTx).
This is valid for all of the following modes:
•
Buffer x has reached it's end in circular mode and rolls back to its start address.
•
CP x is enabled by a CPENA access (and corresponding BIM bit is 0).
•
A CPENA access or auto-switch mode causes a switch from CP y to CP x.
This means after starting the transfer to/from buffer x, CFADDRx and CFTCTx is not updated before the
end of the first frame. So before the software switches from CP y to CP x using a write access to the
CPENA register, it needs to initialize CFADDRx, CFTCTx. This allows the software to find out if the next
request on CP x after the switching to CP x was delayed or never occurring.