Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
USB System Architecture (USB 2.0).pdf
Скачиваний:
172
Добавлен:
03.05.2015
Размер:
7.03 Mб
Скачать

USB System Architecture

Table D-6: Definition of Transfer Descriptor Fields (DW1)

Bit

Field Name

Description

 

 

 

 

 

 

31:0

CBP

Current Buffer Pointer — This field points to the physical

 

 

address of the next memory location that will be accessed to

 

 

transfer data to or from the endpoint. A value of zero indicates

 

 

that all bytes for this TD have been transferred.

 

 

 

 

Table D-7: Definition of Transfer Descriptor Fields (DW2)

 

 

 

Bit

Field Name

Description

 

 

 

 

 

 

3:0

0

A field with zero must be written as a zero by the host control-

 

 

ler driver.

 

 

 

31:4

NextTD

Next Transfer Descriptor — Points to the next transfer descrip-

 

 

tor in the list for this endpoint.

 

 

 

 

Table D-8: Definition of Transfer Descriptor Fields (DW3)

 

 

 

Bit

Field Name

Description

 

 

 

 

 

 

31:0

BE

Memory Buffer End Address — This field contains the physical

 

 

address of the last byte in the memory buffer for this transfer

 

 

descriptor.

 

 

 

Isochronous Transfer Descriptor

Figure D-7 illustrates the format and contents of the 32 byte isochronous transfer descriptor. Since isochronous endpoints have a timing element to ensure data rate matching, the isochronous transfer descriptor can perform, track, and buffer up to eight consecutive frames of data.

The descriptor contains a starting frame number (in the StartingFrame field) consisting of 16 bits that determines when the isochronous transfer should

488

Appendix D: Open Host Controller

begin. The OHC subtracts this 16 bit starting frame value from the lower 16 bits of the actual frame count to determine when the transfer should begin. If the result is negative the controller recognizes that the starting point has not been reached and progresses to the next ED. However, when the starting frame and current frame numbers match, the OHC starts the transfer with a frame reference of zero. Data is placed in a buffer specified by the BufferPage0 and BufferEnd fields. The exact location within the buffer where data is placed is defined by the Offset0 field. Data from the next frame is placed in the buffer specified by Offset1, etc.

Following each data packet transfer, the offset value in the TD is replaced with completion status information, called the Packet Status Word (PSW). The upper four bits define the condition code and the remaining bits indicate the size of the transfer.

Each field within the isochronous TD is described in Table D-9 on page 490 through Table D-13 on page 492.

489

USB System Architecture

Figure D-7: Isochronous Transfer Descriptor

 

31 30 29 28 27 26 25 24 23

21 20

16 15

 

 

 

0

 

 

CC

--

FC

 

DI

 

---------

 

 

SF

 

 

DW 0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

31

 

 

 

 

 

12 11

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Buffer Page 0 (BP0)

 

---------

 

 

DW 1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

31

 

 

 

 

 

 

 

 

4

3

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

DW 2

 

 

 

 

 

 

 

Next TD Pointer (NextTD)

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

31

 

 

 

 

 

 

 

 

 

 

0

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Memory Buffer End (BE)

 

 

 

DW 3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

31

 

 

 

 

 

16 15

 

 

 

0

 

 

 

 

Offset1/PSW1

 

 

 

Offset0/PSW0

 

 

DW 4

 

 

 

 

 

 

 

 

 

 

 

 

 

 

31

 

 

 

 

 

16 15

 

 

 

0

 

 

 

 

Offset3/PSW3

 

 

 

Offset2/PSW2

 

 

DW 5

 

 

 

 

 

 

 

 

 

 

 

 

 

 

31

 

 

 

 

 

16 15

 

 

 

0

 

 

 

 

Offset5/PSW5

 

 

 

Offset4/PSW4

 

 

DW 6

 

 

 

 

 

 

 

 

 

 

 

 

 

 

31

 

 

 

 

 

16 15

 

 

 

0

 

 

 

 

Offset7/PSW7

 

 

 

Offset6/PSW6

 

 

DW 7

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

I

Table D-9: Definition of Isochronous Transfer Descriptor Field (DW0)

Bit

Field Name

Description

 

 

 

 

 

 

15:0

SF

Starting Frame — contains the lower 16 bits of the frame num-

 

 

ber in which the isochronous transfer is scheduled to begin.

 

 

 

20:16

“----”

Not Defined — These fields can be used by the host controller

 

 

driver for any purpose, and are ignored by the host controller.

 

 

 

490

 

 

Appendix D: Open Host Controller

 

 

 

 

Table D-9: Definition of Isochronous Transfer Descriptor Field (DW0)

 

 

 

Bit

Field Name

Description

 

 

 

 

 

 

23:21

DI

Delay Interrupt — Contains a delay count that specifies the

 

 

number of frames that the host controller must wait before gen-

 

 

erating an interrupt, indicating that the TD has completed suc-

 

 

cessfully. If this field contains “11b,” then there is no interrupt

 

 

associated with completing the TD.

 

 

 

25:24

FC

Frame Count — Number of data packets (frames) of data

 

 

described by this TD. 0= one frame and 7= eight frames.

 

 

 

27

“----”

Not Defined — These fields can be used by the host controller

 

 

driver for any purpose, and are ignored by the host controller.

 

 

 

31:28

CC

Error Condition Code — Specifies the type of error that has

 

 

occurred when executing this TD.

 

 

 

 

Table D-10: Definition of Isochronous Transfer Descriptor Fields (DW1)

 

 

 

Bit

Field Name

Description

 

 

 

 

 

 

11:0

“----”

Not Defined — These fields can be used by the host controller

 

 

driver for any purpose, and are ignored by the host controller.

 

 

 

31:12

BP0

Buffer Page 0 — Points to the physical page number where the

 

 

data buffered starts for this transfer descriptor.

 

 

 

 

Table D-11: Definition of Isochronous Transfer Descriptor Fields (DW2)

 

 

 

Bit

Field Name

Description

 

 

 

 

 

 

4:0

0

Reserved (must be written as zero).

 

 

 

31:5

NextTD

Next Transfer Descriptor — Points to the next isochronous TD

 

 

in the linked list.

 

 

 

491

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]