Перейти к содержанию

Аппаратный USB анализатор

Всвязи с наличием в моем девайсе редко проявляющихся глюков назрела необходимость воспользоваться USB-анализатором. В силу ряда причин софтовый не подходит. Требуется Full-Speed, но в будущем и High-Speed очень вероятно, что понадобится.
Как минимум нужно сохранять все данные с линий DM/DP для последующего поиска сбоев, возможно понадобится отладка и в реальном времени (с USB анализаторами дел не имел, поэтому точно еще не знаю что нужно). Но точно нужен удобоваримый софт (поиск по токенам, фильтрация, проверка CRC и т.п.).
Есть логический анализатор Tektronix TLA715, пока пытаюсь с его помощью найти глюки, но памяти в нем маловато.

Пошерстил по инету в поиска анализаторов:
USB-2XT – (стыкуется с логическим анализатором Tektronix) - ???$
Beagle USB 12 Protocol Analyzer - 400$
Beagle USB 480 Protocol Analyzer - 1200$
Kitty USB Analyzer (Full Speed) - 875$
USB Streamscope US-F100A (Full speed) - 1000 $
Packet-Master USB500 AG - 1258$
USB Explorer 200 (basic/pro) - 1000/3700$
Iwatsu SB-2020 USB Ver.2.0 Bus Protocol Analyzer - 6795$
FTS4USB™ USB Protocol Analyzer - 7499$
FS4120 Universal Serial Bus (USB2.0) Analysis Probe - 7995$
USBTracer/Trainer™ Protocol Verification System – по виду сильно крутая штука тысяч на 10 (точной цены не нашел)

Подскажите, какой из них лучше/хуже впечатления от использования? Бюджет правда небольшой 3-3.5К$.
Пока склоняюсь в сторону USB Explorer 200: подкупает то, что взяв basic edition потом можно апгрейдить до pro версии.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Explorer вполне рабочий инструмент, тем более, если баги на физ уровне искать надо. Плохо то, что анализаторы классов у них все за деньги, но это больше актуально для реверс-инжинеринга.
Beagle по описанию понравился. HS анализатор за $1200 это круто

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Ну Explorer 200 тоже HS анализатор и цена от 1000$.
Вы Explorer сами использовали? Какие впечатления?

PS: Packet-Master USB500 AG по описанию еще круче - может работать как генератор.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата(Serg_Sm @ Sep 17 2009, 13:48) <{POST_SNAPBACK}>
Ну Explorer 200 тоже HS анализатор и цена от 1000$.

ого! реально они цены снизили...

Цитата(Serg_Sm @ Sep 17 2009, 13:48) <{POST_SNAPBACK}>
Вы Explorer сами использовали? Какие впечатления?

c Explorer 100 работал - это только full speed (сейчас на сайте ellysys его уже нет). Впечатления хорошие, ничего плохого сказать не могу.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Пока склоняюсь в сторону Packet-Master USB500 AG. За 850 фунтов получается девайс на уровне Explorer 260, а это уже 5-11K евро.
Только он мало распространен по сравнению с продуктами ellysys. Но цена и фичи все перевешивают.
Буду заказывать - потом отпишусь о впечатлениях.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Обещал отписать о впечатлениях Packet-Master USB500 AG. Уже пару месяцев с ним поработал, есть что сказать.
Впечатления в целом неплохие. Работал я с ним в основном Full-Speed, High-Speed немного попробовал - в целом тоже самое, только быстрее smile.gif
В режиме генератора тоже не юзал, но как анализатор пакетов поюзал прилично. Пробовал вывод "сырых" данных DP/DM c USB-анализатора на логический по триггеру (определенный пакет). В целом софт простенький - в этом свои плюсы (все быстро и понятно делается) и минусы (возможно потребуется недоступный на текущий момент функционал).
Все что касается разбора пакетов/ошибок - это представлено в полной мере. Доступны триггеры по типам пакетов, размера данных, совпадения данных (поиск максимум 8 байт), ну и по ошибкам.
Данные захватываются в буфер размером 215Мбайт, почему так - не знаю памяти у меня 2 гига установлено. В захваченных данных можно поискать интересующие события - таковых выбор несколько больше, чем для триггера.
А вот, что касается более высокого уровня нежели пакетный, то здесь довольно бедненько. Хотя в комплекте и идут дополнительные модули анализа данных (принтер, Mass-Storage) - они лишь пакуют (визуально) несколько пакетов в транзакцию, чего-то еще я не разглядел, но правда особо и не смотрел.
Пообщался я и с техподдержкой. Отвечают кстати очень быстро. Но мою проблему не решили - судя по всему у них не большой баг в софте.
Проблема - из-за кривых фронтов (или джиттера) анализатор временами в захваченных данных показывает фантомный лишний байт - и как следствие неверный CRC (даже триггер этот сбой не ловит), хотя обмен идет без сбоев. Долго с ними переписывался, они никак не могли внять в чем проблема, кучу данных им выслал. В конце сказали - "У вас похоже дефект транссивера, давайте поменяем". Менять смысла нет (да и долго очень), поскольку сбои идут только на моем девайсе. На этом переписка прекратилась.
Если кого интересует сей анализатор задавайте вопросы - постараюсь ответить.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата(Serg_Sm @ Jan 13 2010, 13:32) <{POST_SNAPBACK}>
Обещал отписать о впечатлениях Packet-Master USB500 AG. Уже пару месяцев с ним поработал, есть что сказать.

Спасибо!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Много лет прошло со времени последнего поста в этой теме.
Может быть появилось что-то новое? У кого-нибудь есть опыт использования?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата(uriy @ Mar 13 2018, 11:16) <{POST_SNAPBACK}>
Много лет прошло со времени последнего поста в этой теме.
Может быть появилось что-то новое?


вышел Saleae Pro 16 за 999$
пушут что Supported Protocols: Universal Serial Bus (USB) 2.0 (low speed and full speed)

Цитата(uriy @ Mar 13 2018, 11:16) <{POST_SNAPBACK}>
У кого-нибудь есть опыт использования?

софт без железки можно попробовать в режиме демо
я юзал пару раз, волне удобный в отличие от USBee

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Ellisys USB Exporer 200 Analyzer - работаю с этой штукой. Сравнивать не с чем. По функционалу довольно удобен и безошибочен. Единственное что раздражает только то что софт падает при попытке подвигать плавающий тулбар (стерпелся, в работе не мешает). В остальном софт и железо работают безупречно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата
Saleae даже китайский клон, купленный баксов за 10 или того дешевле, показывает логи. Проверял на своих железках
В моем случае он оказался очень не удобен для USB. Он показывает все что ходит по шине как обычно в виде осциллограм. Среди этих данных найти свои большая проблема.

Я пишу USB хост на свою железку с STM32F4. В качестве девайса соединяется чужая железка. Обмен булками. В какой-то момент происходит что-то неладное и девайс перестает отвечать на данные от хоста. Смущает еще то что Saleae показывает некоторые пакеты битыми. Все же это китайский клон и не исключаю проблему в нем самом тоже.
Надо видеть что мой хост шлет то что нужно и когда нужно и еще бы форму сигналов посмотреть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата(uriy @ Mar 14 2018, 07:31) <{POST_SNAPBACK}>
В моем случае он оказался очень не удобен для USB. Он показывает все что ходит по шине как обычно в виде осциллограм. Среди этих данных найти свои большая проблема.


Вы наверно не разобрались как подключать софтовые анализаторы, должно было получится так
[attachment=111518:saleae_usb.png]

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
У меня это выглядит вот так на разных зумах:
[attachment=111561:001.png]
[attachment=111562:002.png]
[attachment=111563:003.png]
Полезные данные я шлю каждые 60 мсек. Но в какой-то момент, через десятки секунд что-то ломается и девайс похоже перестает получать то что нужно.
В saleae я этого найти не могу. Логи в десятки секунд большие, софт еле ворочается.

А ведь это наверно уже косяк. Ведь вроде в случае простоя по USB sync пакеты должны идти кажду 1 мсек?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата(uriy @ Mar 16 2018, 10:41) <{POST_SNAPBACK}>
Полезные данные я шлю каждые 60 мсек. Но в какой-то момент, через десятки секунд что-то ломается и девайс похоже перестает получать то что нужно.
В saleae я этого найти не могу. Логи в десятки секунд большие, софт еле ворочается.

Чтоб логи было проще смотреть, можно вывести на свободный канал анализатора синхросигнал, с любого пина контроллера. А в программу добавить изменение этого пина при начале отправки данных (или в любом другом случае). По таким "маркерам" легко находятся нужные участки, и просматриваются детально.

Синхросигналом ещё можно начинать запись в произвольный момент, с использованием триггера. В программе контроллера задать отсчёт времени - те самые десятки секунд нормальной работы, далее подать сигнал, и анализатор начнёт писать только с этого момента.
Изменено пользователем controller_m30

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация