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

USB System Architecture

The theoretical HS bandwidth of 60MB/s is of course considerably more than actual data bandwidth. However, greater bus throughput and efficiency is possible with high-speed transfers due to larger packet sizes and new transactions defined for high-speed. Note that the same primary packets are used for highspeed, full-speed, and low-speed transactions; thus, the overhead associated with the packets themselves remains the same. Bandwidth issues associated with each transfer type are discussed in the corresponding sections later in this chapter.

Periodic Transfers

Both isochronous and interrupt transfers must be scheduled on a periodic basis. Isochronous transactions are scheduled every frame, and interrupt transactions occur at specified polling intervals. These transfer types ensure throughput at the periodic rate, making them useful for USB applications that need specific bandwidth to perform adequately.

High-Speed Isochronous Transfers

Several changes have been made to the isochronous transfer type including:

Maximum packet size changed from 1023 to 1024 bytes

High bandwidth capability

New data packet types used during high-bandwidth transfers

The following sections discuss these new features and summarize the overall characteristics of high-speed transfers.

Maximum Packet Size

Maximum packet size for HS isochronous transactions is 1024 bytes. The maximum packet size for FS isochronous transactions is 1023 bytes. Note that the 2.0 specification does not support software requests for isochronous data packets of zero bytes, but rather reserves a packet size zero encoding for a packet size of 1024 bytes.

Isochronous Bandwidth/Performance

A single isochronous transaction is permitted per endpoint during a singleframe in the standard implementation. The maximum data rate of an isochronous transfer is a function of the:

244

Chapter 12: HS Transfers, Transactions, & Scheduling

packet overhead associated with an isochronous transaction

propagation time of each packet (between host and target device)

device response time

size of the data payload

Figure 12-2 on page 245 illustrates the overhead from packets and lists the overhead associated with propagation delay. The overhead from the token packet and the data packet is 8 bytes each:

Token

Data

4 byte sync

4 byte sync

1 byte PID

1 byte PID

2 byte address + EP number + CRC

2 byte CRC

1 byte EOP

1 byte EOP

Interpacket delay consists of the propagation time for the packets to travel between the host and device, plus the host controller recovery time (during OUT transactions) or the response time of the device (during IN transactions). Bit stuffing time is not included in this overhead calculation.

Figure 12-2: Isochronous Packet Overhead

 

 

 

 

 

 

 

 

,1 7RNHQ 3DFNHW

 

 

 

H

 

 

 

 

 

 

 

2YHUKHDG

E\W

 

 

 

 

 

 

7\SH )LHOG

 

 

&KHFN )LHOG

'HYLFH $GGUHVV

(QG3RLQW $GGU

&5&

 

 

OVE

 

 

PVE OVE

 

 

PVE

OVE

PVE

OVE

PVE

PVE

OVE

 

E\WHV

 

 

 

 

 

 

 

 

$GG

$GGU (3 U

(3 &5&

&5&

 

 

 

 

 

 

 

 

 

 

 

 

 

 

E\WH PL

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

,GOH

6\QF

 

 

 

 

 

 

 

 

 

 

 

 

 

(23

 

 

 

 

 

 

 

2YHUKHDG

E\W

 

 

 

H

 

 

 

 

 

 

 

 

 

'DWD 3DFNHW

 

 

 

 

 

 

 

7\SH )LHOG

 

 

&KHFN )LHOG

 

'DWD )LHOG

 

&5&

 

 

OVE

 

 

PVE OVE

 

 

PVE

OVE

 

 

PVE

PVE

OVE

 

E\WHV

 

 

 

 

 

 

 

 

 

%

 

&5& &5&

,GOH

 

 

 

 

 

 

 

 

 

 

 

 

 

 

E\WH PL Q

6\QF

 

 

 

 

 

 

 

 

 

 

 

 

 

(23

 

 

 

 

 

,VRFKURQRXV 7UDQVIHU 2YHUKHDG

 

 

 

 

 

 

 

 

 

3DFNHW RYHUKHDG

E\WHV

 

 

 

 

 

 

 

 

 

 

,QWHUSDFNHW GHOD\

E\WHV

 

 

 

 

 

 

 

 

 

 

7RWDO RYHUKHDG

E\WHV

 

 

 

The bandwidth that is available for isochronous transactions during a givenframe is summarized in Table 12-1 on page 246. The table provides the following information:

245

USB System Architecture

Column 1 — gives a variety of example payload sizes from 1 byte up to the maximum packet size of 1024 bytes.

Column 2 — gives the percentage of bus bandwidth taken by a single transaction when the payload is of the size specified in column 1.

Column 3 — gives the theoretical number of these transactions that could be completed in a single frame. These additional transactions could only be performed in the event that the same number of additional endpoints were being accessed during the same frame.

Column 4 — gives the maximum bandwidth that could be consumed by isochronous transactions in a given frame.

Table 12-1: High-Speed Isochronous Bandwidth

 

Percentage of

Max

 

Data

Frame

Maximum

Xfers/

Payload

Bandwidth/

Bandwidth

Frame

 

Transfer

 

 

 

 

 

 

 

 

 

 

 

 

1

1%

192

1.536MB/s

 

 

 

 

2

1%

187

2.992MB/s

 

 

 

 

4

1%

178

5.696MB/s

 

 

 

 

8

1%

163

10.432MB/s

 

 

 

 

16

1%

138

17.664MB/s

 

 

 

 

32

1%

107

27.392MB/s

 

 

 

 

64

1%

73

37.376MB/s

 

 

 

 

128

2%

45

46.080MB/s

 

 

 

 

256

4%

25

51.200MB/s

 

 

 

 

512

7%

13

53.248MB/s

 

 

 

 

1024

14%

7

57.344MB/s

 

 

 

 

246

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