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

USB System Architecture

issue the same start-split transaction at the next regularly scheduled polling interval.

Complete Split with STALL. The STALL packet is returned to the host when the target endpoint has returned a STALL handshake to the transaction translator. The STALL causes the host to halt the endpoint and notify the client software to hand the error.

Complete Split with ERR. The ERR packet is returned to the host by the transaction translator when the transaction has failed on the target bus due to a transaction translator time-out or packet error. The transaction translator retires the transaction due to the error. The host increments the error count and, depending on the count, either retries the transaction at the next polling interval or halts the endpoint. Note that the same “three strikes and you’re out” policy is used.

Handling CRC16 During Split Interrupt IN Transactions

Only one CRC16 is returned at the end of the data packet from the target endpoint. The low-speed handler is required to check this parity and report the CRC error by returning the ERR handshake packet during the complete-split transaction. In many cases, the entire interrupt IN packet will get returned to the transaction translator within a single microframe. This allows the highspeed handler to return the entire data packet at the end of the complete split transaction, along with CRC16.

When the data transfer crosses a microframe boundary, two data packets may get returned to the host. The first packet, MDATA, tells the host that another complete split is required to get the balance of the data packet. In this case, the High-Speed Handler must generate CRC16 for each data packet. Also, even if the MDATA packet is transferred successfully, the second transaction can fail, thereby causing the entire packet to fail.

326

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