Концентратор с питанием от шины USB - более 100 мА на устройство?

11

Я хотел бы задать довольно конкретный вопрос относительно управления питанием USB.

Прежде всего, я опишу дизайн моего устройства. Это симметричный драйвер сигнальной линии со встроенным аудиокодеком для моей акустической системы DIY. Устройство внутренне разделено на два в основном независимых блока: линейный драйвер с управляющим MCU и аудиокодек (TI PCM2706). Для обоих требуется подключение USB-данных (через FT232R для блока драйвера), и все устройство должно питаться от шины. Два блока будут связаны между собой с помощью USB-чипа-концентратора, что приведет к единственному USB-соединению восходящей линии связи с ПК. Я ожидаю, что потребление ступени драйвера будет между 100 и 200 мА (определенно больше, чем одна единица нагрузки).

Возникает проблема: в соответствии со спецификацией USB концентратор с питанием от шины может обеспечить только один модуль на каждый выходной порт, в то время как отводит максимум 5 устройств от входного порта. Я хотел бы знать, что бы сделал концентратор, если бы я запросил два модуля через FT232 для этапа драйвера. Верхний предел в 5 блоков не будет достигнут (1 единица для концентратора, 1 единица для кодека и два для драйвера), поэтому компьютер должен быть физически способен подавать этот ток.

Что касается чипа-концентратора, я проверял http://www.ti.com/lit/ds/symlink/tusb2036.pdf . Есть опция «группового» режима питания, это поможет? Или чип просто отказался бы предоставить два блока водителю? И в этом случае, есть ли грязный обходной путь?

Мне известно о требовании, чтобы устройства высокой мощности также потребляли максимум 100 мА во время подсчета; это не проблема, так как FT232 может включить драйвер сразу после перечисления. Концентратор включит стадии независимо также.

Надеюсь, я изложил свою проблему достаточно ясно и спасибо за ваше время заранее :)

ОБНОВИТЬ:

Я провел еще несколько исследований на чипе TUSB2036. Защита от перегрузки по току может быть отключена с помощью контакта / OCPROT. Затем концентратор сообщает корневому контроллеру, что он не может обнаружить превышение тока. В техническом паспорте есть предупреждение, что защита по OC требуется по спецификации USB 2.0 - для меня это не важно, мне нужен только 1.1 Full-speed. Корневой концентратор ПК должен затем подать ИМО 500 мА на все устройство. Таким образом, я мог установить для FT232 драйвера только 100 мА, и концентратор никогда бы не узнал, превысил ли я предел (конечно, учитывая 500 мА от ПК). Может кто-нибудь сказать, может ли это работать?

Ладислав
источник

Ответы:

3

Насколько я понимаю, ваш дизайн состоит в том, что все устройство находится на одной печатной плате, находится в одном корпусе и подключено к хосту одним кабелем USB. Вы встроили концентратор в PCB, чтобы оба устройства могли обмениваться данными с ПК. Следующий ответ будет зависеть от этих предположений: если он состоит из нескольких отдельных устройств, соединенных отсоединяемыми кабелями, это меняет дело.

В этом случае я предлагаю вам просто сконфигурировать концентратор для перечисления в качестве мощного устройства и распределить полученные 500 мА среди всей платы. Интересно, что пример схемы TI для группового порта показывает все устройства, соединенные вместе, даже при использовании их ИС управления питанием:

введите описание изображения здесь

Входящая линия электропитания 5 В (выделена синим цветом, так как это одна из двух сетей, которая нас интересует на этой сложной схеме), подключена к ИС управления питанием TPS2041 (достаточно подробное описание, это действительно просто FET, который отключается, когда он обнаруживает 500 мА передаваемого тока). Однако каждый из входов закорочен вместе, и каждый из выходов также закорочен вместе, а затем распределен на каждый из нижестоящих портов (сеть показана красным).

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

В соответствии со спецификацией USB, концентратор с питанием от шины может обеспечить только один модуль на каждый выходной порт при одновременном использовании не более 5 модулей ...

но, чтобы непосредственно ответить на ваш вопрос, этот дизайн от Texas Instruments (член группы USB и основной разработчик) показывает, что вам нужно только гарантировать, что общий ток составляет менее 5 единиц.


Чтобы решить вашу проблему, укажите в правилах (взяты из отличного USB в двух словах ):

Функции с питанием от шины высокой мощности получают всю ее мощность из шины и не могут получать более одной нагрузки на единицу, пока не будут сконфигурированы, после чего она может потреблять 5 единичных нагрузок (макс. 500 мА), если об этом попросят в своем дескрипторе.

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

Другое преимущество перечисления в качестве устройства большой мощности - улучшенные характеристики входного напряжения. Если вы перечислили устройство с низким энергопотреблением, хост должен выдавать только 4,40 В на входном порте (который будет ниже на вашем устройстве из-за сопротивления кабеля). Если вы перечислили устройство высокой мощности, спецификация гарантирует, что вы получите 4,75 В, что, скорее всего, будет в пределах рабочего диапазона любых компонентов 5 В, которые вы можете использовать.

Кевин Вермеер
источник
Спасибо за отличный ответ. Но как мне настроить концентратор таким образом? Нужна ли мне внешняя EEPROM или я просто привязываю контакт / GANGED к земле (и другие контакты конфигурации в соответствии с отправленной схемой)?
Ладислав
1
Вы должны были бы привязать! GANGED к земле и! EXTMEM до 3.3V. Тем не менее, внешняя EEPROM может быть полезной: в противном случае ваше устройство будет отображаться как «универсальный USB-концентратор» на ПК. В качестве альтернативы, вы могли бы, вероятно, эмулировать EEPROM с вашим встроенным микроконтроллером (настроить один из интерфейсов I2C для работы в качестве ведомого). Затем вы можете сообщить об этом как «Драйвер акустической системы и контроллер кодека» или что-то в этом роде.
Кевин Вермеер
5

Я разработал доску вокруг этого центра.

В моем приложении это разрешало доступ к FT232 и FT245.

Если все находится на вашей собственной печатной плате, я бы порекомендовал вам просто полностью игнорировать все системы защиты от сверхтока. В конце концов, если что-то на вашей печатной плате выходит из строя, все это должно работать, поэтому создание устройства, способного справиться с частичным отказом, является своего рода спорным вопросом.

В моей ситуации я связал TUSB, чтобы запросить полные 500 мА и отключить защиту от перегрузки по току, и просто запустил все прямо с USB 5.0v. Я достиг этого, заставив концентратор сообщать о том, что он подключен к автономному хосту.

Я сделал пару плат без каких-либо реальных проблем, так что это кажется вполне выполнимой стратегией. Он также использовался на нескольких разных компьютерах, поэтому я чувствовал себя довольно уверенно, используя его как есть.

Конечно, если речь идет о производственном устройстве, а не о личном проекте или тестовом жгуте (что и есть в моем случае), это совсем другая проблема.

введите описание изображения здесь

(См. Примечание на схеме)


Для чего бы это ни стоило, вы можете довольно ужасно злоупотреблять большинством современных USB-портов без особых проблем. Многие из них могут обеспечить гораздо большую мощность, чем 500 мА, на которые они рассчитаны, без особых проблем.
Кроме того, большинство из них (все, что я тестировал, за исключением некоторых ноутбуков ) с радостью предоставят полные 500 мА без устройства для перечисления вообще.

Тем не менее, это зависит от материнской платы к материнской плате, в зависимости от того, как устроен USB-хост. Ваш пробег может варьироваться.

Коннор Вольф
источник
Да, я думал об этом, но, как вы сказали, это варьируется от МБ до МБ. Устройство не будет производиться тысячами, но мне нужно, чтобы оно было настолько совместимым, насколько это возможно, чтобы оно «просто работало» на любом компьютере. В любом случае, практические наблюдения так же ценны :).
Ладислав
@Ladislav - Я не думаю, что в любом случае нужно избегать необходимости переключать питание устройств ниже по потоку, не нарушая хотя бы спецификацию USB.
Коннор Вольф
Стоит отметить, что если вы привязываете устройство к отчету о питании от шины и просто не беспокоитесь о переключении питания, оно может работать в любом случае. Это может стоить тестирования. В качестве альтернативы ищите только USB-1.1 концентратор IC.
Коннор Вольф
1

Может быть немного грязно: TUSB2036 позволяет выбирать порт нисходящего потока (p3 NPINT1-0 установлен в 10). Затем подключите ваше устройство к двум (физическим) портам, чтобы вы могли подключить 2 устройства параллельно.

Суха
источник