Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: lpc1788, проблемы USB host.
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > RS232/LPT/USB/PCMCIA/FireWire
Alekseeey
Здравствуйте.

На днях NXP обьявила о запуске в производство микроконтроллера lpc1788.

Я прошу знающих USB интерфейс людей прокомментировать один из четырех пунктов эрраты на этот микроконтроллер:

3.4 USB.1: USB host controller hangs on a dribble bit

Introduction:
Full-/low-speed signaling uses bit stuffing throughout the packet without exception. If the
receiver sees seven consecutive ones anywhere in the packet, then a bit stuffing error has
occurred and the packet should be ignored.
The time interval just before an EOP is a special case. The last data bit before the EOP
can become stretched by hub switching skews. This is known as dribble and can lead to a
situation where dribble introduces a sixth bit that does not require a bit stuff. Therefore,
the receiver must accept a packet for which there are up to six full bit times at the port with
no transitions prior to the EOP.

Problem:
The USB host controller will hang indefinitely if it sees a dribble bit on the USB bus. It will
hang the first time a dribble bit is seen. Once it is in this state there is no recovery other
than a hard chip reset. This problem has no effect on the USB device controller.

Work-around:
None.

Я так понял, речь идет о зависании намертво USB хоста микроконтроллера, если на шине появятся подряд 7 единиц (что является признаком битого пакета) при приеме данных от usb девайса. А появление 7-й единицы на шине возможно из-за "растягивания" 6-й хабом.

Я правильно понимаю?

Как часто возможна такая ситуация?

Можно ли использовать такой USB host с некоторыми оговорками, или вообще нельзя?

Пожалуйста.
_3m
Цитата(Alekseeey @ Jun 2 2011, 19:00) *
Work-around:
None.

Ай молодцы!!! biggrin.gif biggrin.gif biggrin.gif
Меня всегда веселит описание в еррате бага с которым жить нельзя и приписка Work-around: None.
Цитата
Я так понял, речь идет о зависании намертво USB хоста микроконтроллера, если на шине появятся подряд 7 единиц (что является признаком битого пакета) при приеме данных от usb девайса. А появление 7-й единицы на шине возможно из-за "растягивания" 6-й хабом.
Я правильно понимаю?
Как часто возможна такая ситуация?
Можно ли использовать такой USB host с некоторыми оговорками, или вообще нельзя?

Ну если вас устроит что хост зависнет при первом же сбое то можно.
Короче фтопку.
Индусы изо всех сил стараются доказать что usb == мегаглюк.
VslavX
Цитата(Alekseeey @ Jun 2 2011, 18:00) *
Я так понял, речь идет о зависании намертво USB хоста микроконтроллера, если на шине появятся подряд 7 единиц (что является признаком битого пакета) при приеме данных от usb девайса. А появление 7-й единицы на шине возможно из-за "растягивания" 6-й хабом.

Мда, неприятно. Без хаба вероятность зависнуть существенно меньше (да и с хабом непонятно как часто такое может быть), но, в моих типовых проектах, всего один хост без хаба не интересен. Придется ждать следующей ревизии чипа, как то оно традиционно для LPC - в ревизии '-' всегда находится критический баг.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.