Проверка функции USB на ASIC
Я являюсь инженером по встраиваемым системам, и наша компания планирует разработать пакет соответствия требованиям протокола USB 3.0(хост и устройство) / после-силиконовую проверку, охватывающий функциональные тестовые случаи. На самом деле, я ранее работал с функциональной проверкой низкоскоростных периферийных устройств, таких как I2C,SPI, разрабатывая тестовые сценарии с "голым железом" (без какой-либо ОС), работающие на простом микроконтроллере. Я не уверен, смогу ли я сделать то же самое с USB, так как я думаю, что сам по себе протокол сложен. Требуется ли для него разработка тестовых случаев с использованием ОС или RTOS? Можно ли запускать функциональные тесты в однопроцессорной системе? Я знаю, что ядро Linux и U-BOOT имеют поддержку USB. Если лучше использовать ядро, как можно использовать существующий стек USB в ядре для написания тестовых случаев? Кто-нибудь может пролить свет на это?
1 ответ
USB 3.0 (в частности, суперскорость) - это не простой блок, и его проверка охватывает весь спектр характеристик аппаратного и программного обеспечения, а также тестирование совместимости. См. http://www.usb.org/developers/compliance/
Вам действительно нужно привлечь профессиональную сервисную компанию, имеющую опыт в этом, если вы являетесь человеком, на которого полагаются для проверки этого блока после проверки, в противном случае ваша компания рискует отправить продукт, который не может получить логотип (или хуже). Вам, вероятно, следует задействовать их до того, как записать на пленку, чтобы ваша компания могла снизить вероятность очень дорогих ошибок. И я говорю это не для того, чтобы оскорбить вас, но чтобы прояснить вам, что, если вы спрашиваете о переполнении стека, вы не готовы выполнить эту работу в ближайшем будущем.
НО, когда я прошел высокоскоростную сертификацию USB2.0 для ASIC, нам нужно было иметь функциональный стек на тестируемом устройстве (наш чип, который представлял собой ARM со встроенным USB PHY), и мы провели сертификационный тест USB на Windows PC со специальным набором периферийных USB-устройств ("золотое дерево"), плюс мы должны были сделать глазковые диаграммы и т. д., чтобы убедиться, что наши сигналы соответствуют. Мы также проводили тестирование на Mac, но это было скорее маркетинговое решение, чем проблема соответствия.