Последовательный через USB 2.0. Действительно ли он быстрее стандартного последовательного?

Последовательный через USB 2.0. Действительно ли он быстрее стандартного последовательного?

Один из участников нашего научного сотрудничества разработал блок сбора данных с 4 каналами @ 1 кГц, который синхронизирует время с GPS. Он использует USB 2.0 для связи блока с компьютером, а последовательный интерфейс COM со скоростью передачи данных 115200 используется для передачи данных на компьютер в формате ASCII. Производитель называет это «виртуальным последовательным» через USB 2.0. Следовательно, все конфигурации, такие как четность, управление рабочим процессом и т. д., не имеют значения в последовательном интерфейсе, но для работы необходимо установить только скорость передачи данных 115200.

Мой вопрос:Действительно ли это число 115200 представляет собой максимальное количество байт в секунду, которое может быть передано через этот порт, создавая ограничение на то, что может сделать порт USB 2.0? Или это число действительно не имеет значения и реальная скорость передачи составляет около480 Мбит/с в стандартной комплектации USB 2.0?

Какие факторы это определяют?

Почему спрашиваешь?В настоящее время устройство использует однонаправленную последовательную связь для передачи данных, что вызывает проблемыиногда теряет байты при перегрузке компьютера. Надежным решением было бы сделать соединение двунаправленным с контрольными суммами и запрашивать пакеты и переспрашивать при повреждении данных. Однако, если мы действительно ограничены 115 кБ/с, это означает, что мы не можем передавать 4 канала @ 1 кГц.

Если вам потребуется дополнительная информация, пожалуйста, обращайтесь.

решение1

Последовательный через USB 2.0. Действительно ли он быстрее последовательного?

Ваша терминология небрежна.
«Последовательный через USB 2.0»может относиться к использованию адаптеров USB-RS232 или относиться кCDC/ACM.
Ваша последняя ссылка на"серийный"предположительно, это RS-232.

Мой вопрос: действительно ли число 115200 отражает максимальное количество байтов в секунду, которое может быть передано через этот порт, ограничивая тем самым возможности порта USB 2.0?

115200 — это скорость передачи данных, которая (в данном случае) выражается в битах в секунду (а не в байтах в секунду).
Поскольку это асинхронный канал, каждый символ/байт индивидуально кадрируется одним стартовым битом и 1/1,5/2 стоповыми битами. Таким образом, накладные расходы на кадрирование составляют 25% (предполагая типичную конфигурацию 8N1).

USB — это шина, которая может обрабатывать более одного канала данных.
Асинхронные данные RS-232 пакетируются для передачи по синхронному USB и разделяют общую полосу пропускания USB 2.0 в 480 Мбит/с. (Хотя типичный адаптер USB-RS232 использует только USB 1.1.)

Я был свидетелем того, как четыре канала RS-232 одновременно передавали данные со скоростью 115200 бод по одному соединению USB 1.1 без каких-либо сбоев.

Или эта цифра на самом деле не имеет значения и реальная скорость передачи данных составляет около 480 Мбит/с, как у стандартного USB 2.0?

Число имеет значение, поскольку это скорость передачи данных, настроенная для данного канала.

Какие факторы это определяют?

Максимальная скорость передачи данных обычно ограничивается аппаратным обеспечением и поддерживающим программным обеспечением.

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

Потеря данных, по всей видимости, произошла из-за переполнения системного буфера. Данные поступают быстрее, чем они считываются/обрабатываются прикладной программой. На канале данных не применяется управление потоком для предотвращения переполнения.

Связанный контент