Телесистемы
 Разработка, производство и продажа радиоэлектронной аппаратуры
На главную   | Карта сайта | Пишите нам | В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:jobsmp@pochta.ru

Телесистемы | Электроника | Конференция «Микроконтроллеры и их применение»

Некоторые опытные данные по скорости обмена USB под WIndows(+)

Отправлено misyachniy 08 декабря 2006 г. 12:52


USB устройство с BULK PIPE и двойным буферирование 64 байта прокачивало под XP 820КБ/С под NT2000 всего 245К.

Чтение производилось блоками по 4096КБ(ReadFile), общий объем пересылаемих данных 131КБ, 1.3МБ, 13МБ

Начали исследовать.

После серии экспериментов сделали следующие выводы по работе драйвера нижнего уровня.

В NT2000+SP4 на фрейм выделяеться 4 пакета(проверено осциллографом) в результате 4*64*1000=256КБ теоретический максимум даже при одном устройстве на шине USB.

Под XP прокачка 780..820КБ (131КБ) осциллограф показал промежутки между пачками в 1,5 миллисекунд.

В Windows Me размер блока для чтения ограничен 4096КБ.
При установке в размера 8192КБ чтение не производилось.
После 10 секунд ожидания функуция чтения вываливалась с ошибкой и результатом 0 пересланных байт.

Физики этого не знали и предложили увеличить размер блока.
Постепенным увеличением довели размер блока чтения до 64КБ.
Промежутки между пачками увеличились до 1,75миллисекунды скорость возросла до 1130КБ(при чтении 13МБ)

Попытка чтения блоками по 131КБ привела к той же ошибке, что и Windows Me при увеличении размера блока с выше 4096КБ.

Я вас не утомил? :-)



Составить ответ | Вернуться на конференцию

Ответы


Отправка ответа

Имя*: 
Пароль: 
E-mail: 
Тема*:

Сообщение:

Ссылка на URL: 
URL изображения: 
если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
введите число 90:

Перейти к списку ответов | Конференция | Раздел "Электроника" | Главная страница | Карта сайта

Rambler's Top100 Рейтинг@Mail.ru
 
Web telesys.ru