Гальваническая изоляция USB 2.0 High Speed

Эта статья — новый способ «разогнать» изолированный USB-порт. Здесь приведен частный пример, а так же немного дополнительной информации про скорость USB.
Если сильно постараться, то можно ужать данную статью до мема.

Рис.1 Краткое содержание статьиРис. 1 Краткое содержание статьи

Общаться и с людьми бывает небезопасно — неосторожное слово и у кого-то полыхнет, сложная мысль заставит зависнуть, а упоминание матери вообще может напрочь закоротить весь обмен информацией. С цифровой электроникой почти то же самое. USB — один из самых популярных цифровых интерфейсов для подключения чего-бы-то-ни-было, и задача его обезопасить (== изолировать) возникает часто.

Практическая часть

В 2009 м году миру явили ADuM4160 — USB-изолятор. Казалось бы, чего еще желать, однако, из трёх возможных скоростей USB 2.0 (1500 Кбит/c, 12 Мбит/с, 480 Мбит/с) микросхема поддерживает только две самые медленные. Обычно этого вполне достаточно, чтобы реализовывать HID-устройства, виртуальные COM-порты. Это перекрывает практически все потребности при работе с микроконтроллерами, но сегодня мы преодолеем это ограничение. Недавно (в ноябре 2021!), Texas Instruments выпустили партию инженерных образцов микросхемы ISOUSB211.

Мне повезло заполучить пару микросхем и протестировать их работоспособность. В схемотехнике я не выдумывал ничего за границами даташита и развёл небольшую платку с прицелом на имеющийся у меня на руках корпус. Я развёл собственный изолированный DC-DC преобразователь, но для того чтобы быстрее перейти к тестам я использовал старенький SBT01L-05

Рис. 2 Печатная плата после монтажа компонентов.  Динозавры передают пакеты через гальванический барьерРис. 2 Печатная плата после монтажа компонентов. Динозавры передают пакеты через гальванический барьер

В качестве первого теста я скопировал туда-обратно файлы на флешку, получив ~23 МБайт/с (184 МБит/с) для чтения и ~10 МБайт/с (80 МБит/с) для записи (см. Рис. 3)

Рис. 3 Скорость чтения и скорость записи (SanDisk Cruzer Blade USB Device)Рис. 3 Скорость чтения и скорость записи (SanDisk Cruzer Blade USB Device)

Я результатом доволен скорость High Speed взята! Ура! Спасибо за внимание! Фото поделки в сборе на рисунке 4.

Рис. 4 Вид готового устройстваРис. 4 Вид готового устройства

Факультативная теоретическая часть

Тэкс, почему-то некоторые не расходятся… Дайте угадаю, у вас в голове сейчас что-то такое: «Так, @coolebyak, ты говорил про USB 2.0 High Speed, у которого 480 Мбит/с или 60 МБайт/c. А результаты-то у тебя на скриншотах меньше! Обман!»
Я рад, что вы остались, потому что это действительно может сбить с толку. Лаконичный ответ на этот вопрос лежит в сети уже с 2011-го. По сути, я сейчас повторю, что ответили вот в этом посте, но только переводя с английского.

USB 2.0 использует фреймы в 1 мс, а в режиме High Speed (480 Мбит/с) они делятся на 8 микрофреймов. Максимальный размер пакетов, используемых запоминающими устройствами USB, составляет 512 Байт. Согласно этому очень информативному документу теоретический максимум составляет 13 пакетов на микрофрейм. Итак, теоретическая максимальная скорость USB-накопителя 2 составляет:

1000×8 * 512×13 = 53248000 ~ = 53 МБайт/с

Рис. 5 Таблица теоретических пределов скорости передачиРис. 5 Таблица теоретических пределов скорости передачиРис. 6 USB-фрейм для массовой передачи данныхРис. 6 USB-фрейм для массовой передачи данных

На практике слабым местом, как правило, является сама флешка. В качестве примера приводят временную диаграмму записи в NAND Flash (Рис. 7). Время для каждого передаваемого пакета можно разбить на три участка: 1) время для выполнения USB-передачи, 2) первичные временные затраты операционной системы (или встроенного ПО) и 3) время программирования NAND Flash.

Рис. 7 Пример узкого места для скорости передачи данных по USBРис. 7 Пример узкого места для скорости передачи данных по USB

Получается, для моей видавшей виды флешки результаты вполне достойные. Главное, что они выше 1.5 МБайт/с.

Результаты и выводы

Испытание высоким напряжением еще предстоит, пока что могу сказать лишь, что электрический разряд от шерстяного свитера микросхема выдерживает. Прототип изолятора получен и успешно испытан на флешках, камерах, внешних аудиокартах. Что очень меня радует, чем делюсь и хвастаюсь здесь. Надеюсь, Texas Instruments наладят производство и в скором времени эти микросхемы снова появятся в продаже и будут дешевле ~13$. Надеюсь, было полезно. Теперь точно Спасибо за внимание!

P.S.

Пример, как задачу изолирования USB 2.0 High Speed решить супер дорого. 2*ULPI, 2*ПЛИС, быстродействующие оптопары и не забывайте — кто-то это программировал.

ea52dad293c53216d4815441df95f170.jpg

P.P. S.

Прикладываю схему. На ней отсутствует разработанный мною изолированный DC-DC, т.к. я его ещё не тестировал.

Схема принципиальнаяСхема принципиальная

© Habrahabr.ru