HS_USB2.0 host
RM0082
432/844
Doc ID 018672 Rev 1
The SOF frame number value for the bus SOF token is derived or alternatively managed
from this register. The value of FRINDEX must be 125 µsec (1 micro-frame) ahead of the
SOF token value. The SOF value may be implemented as an 11 bit shadow register. For this
discussion, this shadow register is 11 bits and is named SOFV. Then, SOFV updates every
8 micro-frames (1 millisecond).
An example implementation to achieve this behavior is to increment SOFV each time the
FRINDEX[2:0] increments from a 0 to a 1.
Software must use the value of FRINDEX to derive the current micro-frame number, both for
high-speed isochronous scheduling purposes and to provide the get micro-frame number
function required for client drivers.
Therefore, the value of FRINDEX and the value of SOFV must be kept consistent if either
chip is reset or software writes to FRINDEX. Writes to FRINDEX must also write-through
FRINDEX[13:3] to SOFV[10:0]. In order to keep the update as simple as possible, software
should never write a FRINDEX value where the three least significant bits are 3‘b111 or
3‘b000.
22.6.12 CTRLDSSEGMENT
register
The CTRLDSSEGMENT (control data structure segment) is a RW register which
corresponds to the most significant address bits [63:32] for all EHCI data structures.
If the 64 bit addressing capability (64BAC) field in HCCPARAMS register is set to 1‘b0, then
this register is not used. Software cannot write to it and a read from this register will return
zeros.
If the 64BAC field in HCCPARAMS register is set to 1‘b1, then this register is used with the
link pointers to construct 64 bit addresses to EHCI control data structures. This register is
concatenated with the link pointer from either the PERIODICLISTBASE, ASYNCLISTADDR
or any control data structure link field to construct a 64 bit address.
This register allows the Host software to locate all control data structures within the same 4
GByte memory segment.
22.6.13 PERIODICLISTBASE
register
The PERIODICLISTBASE (periodic frame list base address) is a RW register which
contains the beginning address of the periodic frame list in the system memory. If the EHCI
host controller is in 64 bit mode (as indicated by a 1‘b1 in the 64BAC field in the
HCCSPARAMS register, then the most significant 32 bits of every control data structure
address comes from the CTRLDSSEGMENT register (see above). The
PERIODICLISTBASE register bit assignments are given in
Table 358.
USBCMD register encoding
FLS field value
Number of elements
N
2‘b00
1024
12
2‘b01
512
11
2‘b10
256
10
2‘b11
Reserved
-