|
High-Speed USB устройство, Вопросы к специалистам |
|
|
|
Sep 11 2005, 00:17
|

Гуру
     
Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987

|
Разрабатывается довольно навороченное устройство захвата видео. Связь с PC-совместимым компьютером, работающим под Windows2K/XP предполагается осуществлять по шине USB в режиме High Speed. В качестве контроллера USB используется ISP1582 от Philips. Предположительная конфигурация девайса (не считая эндпоинта 0): - три эндпоинта типа IN; - один эндпоинт типа OUT. Эндпоинты типа IN несут следующую функциональную нагрузку (пронумерованы условно): 1) Передача видео превью (картинка 360х288) в стандарте ITU-601/656 с эффективной скоростью порядка 40-45 Мбит/с. Режим - изохронный. 2) Передача видео в стандарте MPEG-2 с фиксированной скоростью порядка 4 Мбит/с. Режим - асинхронный, конкретно пока не выбран. 3) Передача побочной информации, <1 Мбит/с. Режим - interrupt. Эндпоинт типа OUT используется для передачи служебной информации от PC к девайсу. Режим - bulk. Таким образом, существует 4 пайпа, не считая управляющих, с суммарной эффективной скоростью передачи около 50 Мбит/с. Превью должно выводиться на экран, а другие IN пайпы предназначены для записи на диск. В дальнейшем предполагается подключать к одному компьютеру до 4-х таких устройств. В связи с этим возникает ряд вопросов. 1. Как правильно создать драйвера верхнего уровня для стыковки с клиентским софтом? Достаточно ли для этого использовать WinDriver USB, или есть какие-то подводные камни? Проблема усугубляется тем, что я сам, в силу определенных причин, не пишу софт под винду, а наши программисты ленивы и/или недостаточно квалифицированы, поэтому помощи от них ждать не приходится. 2. Прожует ли один USB порт суммарный поток данных ~200-240 Мбит/с, если к нему будут подключены 4 таких устройства через внешний хаб (предполагается, что корневой хаб более ничем не будет загружен)? И прожует ли этот поток сама винда? 3. Нужен ли какой-либо дополнительный софт для использования внешнего хаба? 4. Уместно ли заводить дополнительные пайпы или эндпойнты в рамках того же девайса для достижения каких-либо преимуществ? Пока все. Простите, если вопросы покажутся несколько ламерскими - тематика для меня совсем новая. Заранее спасибо.
--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
|
|
|
|
2 страниц
1 2 >
|
 |
Ответов
(1 - 23)
|
Sep 12 2005, 00:37
|

Гуру
     
Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987

|
Цитата(MALLOY2 @ Sep 11 2005, 15:48) Прожует, но мильно играет роль на таких скоростях конфигурация, у меня реальная скорость была на CY7C68013 в BULK режиме 312 Мбит/с. это почти физический предел USB. С изохронными потоками не много сложнее там ситуация такая если нужной полосы пропускания на шине не будет (к примеру кто то флешку подключимт и будет копировать фильм ) то ендпоинт получит откат. ДЛя хаба если он не твоей разроботки софта дополнительного не надо. Скажите каких приемуществ я скажу уместно это или нет. В первую очередь, естественно, более полная утилизация "полосы пропускания" USB хабов, во вторую - удобство написания софта для девайса - предполагается, что заполнение буфера IN для изохрона будет осуществляться короткими бёрстами, размер которых оределяется емкостью FIFO буфера видеодекодера (SAA7114). Однако, второе не столь важно, т.к. ISP1582 имеет двойную буферизацию, а для эндпойнта типа изохрон можно отводить до 3-х таймслотов в микрофрейме. А Вы такую скорость получили при использования одного эндпойнта или нескольких? По моим прикидкам, с одного получиться не должно. Еще повторю, что подключение других устройств к корневым USB хабам не предполагается, поэтому можно использовать всю полосу целиком. Внешний хаб, следовательно, является полностью прозрачным устройством. Спасибо за Ваш ответ, но все же, что делать с софтом? Клиентскую часть напишут, но за все остальное наш народ упорно не желает браться, и когда спрашиваешь, что же еще им нужно, молчат, как партизаны. Хотелось бы все-таки выяснить, как можно сконструировать простейшие драйвера второго уровня, чтобы ткнуть кого следует в них лицом и заставить наконец разобраться с этим как положено.
--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
|
|
|
|
|
Sep 12 2005, 07:31
|
Знающий
   
Группа: Validating
Сообщений: 838
Регистрация: 31-01-05
Пользователь №: 2 317

|
Я и использовал 1 ендпоит с 4х буферизацией (4*512) все было нормально, но это на CY7C68013 с вашей микрухой я не работал. По поводу драйверов, есть некие универсальные драйвера USBIO вот ссылка на них http://www.thesycon.de/deu/home.shtml с ними идеет еще демо программа с помощью которой очень легко отлаживать USB девыйсы, вот эти дрова можно заюзать к ним еще идет API. вобщем все там очень просто советую закачать. Кому интерестно могу на FTP залить версию 2.0 ломаную.
|
|
|
|
|
Sep 12 2005, 09:38
|
Частый гость
 
Группа: Свой
Сообщений: 121
Регистрация: 19-01-05
Пользователь №: 2 049

|
Цитата(MALLOY2 @ Sep 11 2005, 15:48) Прожует, но мильно играет роль на таких скоростях конфигурация, у меня реальная скорость была на CY7C68013 в BULK режиме 312 Мбит/с. это почти физический предел USB. С изохронными потоками не много сложнее там ситуация такая если нужной полосы пропускания на шине не будет (к примеру кто то флешку подключимт и будет копировать фильм ) то ендпоинт получит откат. ДЛя хаба если он не твоей разроботки софта дополнительного не надо. Скажите каких приемуществ я скажу уместно это или нет. Сайпресс68013 разгонял в одну трубу 26мегабайт пер секонд (два фильма слил за 50 секунд). Кстати, количество труб влияло на скорость, только в режиме USB1.1. В 2.0, даже не заметно(хотя зависит от конфигурации компа). На драйвере от производителя. Драйвер весьма не удобный. И больше предназначен как демонстрационный. НО! Я к нему приспособился. Говорят, новый удобней, но скорости выше 13мег не получали(сам не пользовал, не скажу).
|
|
|
|
|
Sep 12 2005, 09:48
|
Знающий
   
Группа: Validating
Сообщений: 838
Регистрация: 31-01-05
Пользователь №: 2 317

|
Цитата(Trashy @ Sep 12 2005, 12:38) Цитата(MALLOY2 @ Sep 11 2005, 15:48) Прожует, но мильно играет роль на таких скоростях конфигурация, у меня реальная скорость была на CY7C68013 в BULK режиме 312 Мбит/с. это почти физический предел USB. С изохронными потоками не много сложнее там ситуация такая если нужной полосы пропускания на шине не будет (к примеру кто то флешку подключимт и будет копировать фильм ) то ендпоинт получит откат. ДЛя хаба если он не твоей разроботки софта дополнительного не надо. Скажите каких приемуществ я скажу уместно это или нет. Сайпресс68013 разгонял в одну трубу 26мегабайт пер секонд (два фильма слил за 50 секунд). Кстати, количество труб влияло на скорость, только в режиме USB1.1. В 2.0, даже не заметно(хотя зависит от конфигурации компа). На драйвере от производителя. Драйвер весьма не удобный. И больше предназначен как демонстрационный. НО! Я к нему приспособился. Говорят, новый удобней, но скорости выше 13мег не получали(сам не пользовал, не скажу). USBIO дает скорость 44 метра пер секонд, программеры говорят удобный API. Офф: а как на FTP заливать с помощью виндовых средств, сейчас нету натачке не одной проги для работы с FTP.
|
|
|
|
|
Sep 12 2005, 11:40
|
Знающий
   
Группа: Validating
Сообщений: 838
Регистрация: 31-01-05
Пользователь №: 2 317

|
Цитата(bve @ Sep 12 2005, 14:23) Попробуйте Total(Windows) Commander или Far для закачки. Они работают, но инсталяхи все дома, винт новый поставил еще не переписал ничего.
|
|
|
|
|
Sep 12 2005, 12:15
|
Местный
  
Группа: Свой
Сообщений: 316
Регистрация: 20-02-05
Из: Ленинградская обл.
Пользователь №: 2 765

|
Цитата(MALLOY2 @ Sep 12 2005, 14:40) Цитата(bve @ Sep 12 2005, 14:23) Попробуйте Total(Windows) Commander или Far для закачки. Они работают, но инсталяхи все дома, винт новый поставил еще не переписал ничего. Могу кинуть на ftp Total Commander 6.53 с плагинами. весят примерно 6М. Надо?
|
|
|
|
|
Sep 12 2005, 14:22
|
Знающий
   
Группа: Validating
Сообщений: 838
Регистрация: 31-01-05
Пользователь №: 2 317

|
Цитата(FLTI @ Sep 12 2005, 16:55) "USBIO дает скорость 44 метра пер секонд". Это и на запись , и на чтение? А какова при этом загрузка процессора? Или передача идет через DMA ? Нет, это в одну сторону или запись или чтение, как внутри компа работает незнаю, а в CY7C680013 FPGA поток генерит. Точнее OUT в USB медленней немного (~35) из за винта, IN пишется по кругу в память. Так они пишут у меня реально получилось 39 польшке FPGA не выдавала, загрузка проца компьютера примерно ~50-60%, но тачка у меня слабоватая celeron 2000, 256 мозгов winXp, если мозгов по больше поставить падает гдето до 30
|
|
|
|
|
Sep 12 2005, 21:16
|
Знающий
   
Группа: Validating
Сообщений: 838
Регистрация: 31-01-05
Пользователь №: 2 317

|
Цитата(FLTI @ Sep 12 2005, 17:34) А почему все-таки такая высокая загрузка процессора? Разве не DMA используется? Я думаю это оболочка много забирает котороя показывает трафик ошибки и другую информацию
|
|
|
|
|
Sep 12 2005, 21:26
|
Знающий
   
Группа: Validating
Сообщений: 838
Регистрация: 31-01-05
Пользователь №: 2 317

|
Цитата(aal @ Sep 12 2005, 12:20) Залил /upload/Drivers/USBIO V20/
|
|
|
|
|
Sep 20 2005, 16:12
|

Гуру
     
Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987

|
Вот еще вопрос: как правильно установить связь с корневым хабом? Исходные данные: USB device controller - ISP1582, ОС на PC - Windows 2000, корневой хаб поддерживает High-Speed протокол. Дело в том, что не удается добиться приема даже SETUP token. После шинного ресета девайс переходит в режим High-speed, затем шина через некоторое время переходит в состояние Resume, а потом - Suspend. Приема SETUP токена не происходит. Далее сброс повторяется, и так 3 раза. Подскажите, плиз, кратко - какую последовательность действий надо применить, чтобы хоть что-то ожило, или где прочитать. В описании USB стандарта ничего полезного для этой ситуации не нашел.
--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
|
|
|
|
|
Sep 20 2005, 21:53
|

Гуру
     
Группа: Свой
Сообщений: 4 363
Регистрация: 13-05-05
Из: Москва
Пользователь №: 4 987

|
Цитата(Konst_777 @ Sep 20 2005, 21:15) Цитата(Stanislav @ Sep 20 2005, 19:12) ... Подскажите, плиз, кратко - какую последовательность действий надо применить, чтобы хоть что-то ожило, или где прочитать. В описании USB стандарта ничего полезного для этой ситуации не нашел. Возможно, следующие документы будут полезны: AN10039: "ISP1582/83 Firmware Programming Guide"AN10046: "ISP1581/2/3 Frequently Asked Questions"AN10031: "ISP1582/83 Control Pipe"AN10045: "ISP1582/83 Clearing an IN Buffer"UM10042: "ISP1582 PCI Mass Storage Kit Firmware"Большое спасибо, но все это я уже прочитал. К сожалению, на Филипсе очень плохая документация. По всей видимости, дело как-то связано с самой виндой. //------------------------------------ Ура, заработало! Причина траха - плохая документация. Кроме того, выяснилось, что у ISP1582 параллельный интерфейс имеет пропускную способность ниже, чем последовательная USB шина, что очень неприятно.
Сообщение отредактировал Stanislav - Sep 23 2005, 13:55
--------------------
Самонадеянность слепа. Сомнения - спутник разума. (с)
|
|
|
|
|
Oct 7 2005, 12:32
|
Знающий
   
Группа: Свой
Сообщений: 549
Регистрация: 1-06-05
Пользователь №: 5 644

|
Цитата(Stanislav @ Sep 23 2005, 16:55) Ура, заработало! Причина траха - плохая документация. Кроме того, выяснилось, что у ISP1582 параллельный интерфейс имеет пропускную способность ниже, чем последовательная USB шина, что очень неприятно. Каковы впечатления от работы с ISP1582? Какие "подводные камни" были обнаружены? Если есть время и желание, пожалуйста, напишите поподробнее.
|
|
|
|
|
Oct 12 2005, 06:22
|
Группа: Новичок
Сообщений: 2
Регистрация: 11-10-05
Пользователь №: 9 500

|
Коллеги, подскажите где можно взять взломанную версию USBIO, или лекарство?
|
|
|
|
|
Oct 18 2005, 17:49
|
Знающий
   
Группа: Свой
Сообщений: 793
Регистрация: 5-11-04
Из: Краматорск, Украина
Пользователь №: 1 057

|
Цитата(Inno @ Oct 12 2005, 09:22) Коллеги, подскажите где можно взять взломанную версию USBIO, или лекарство? Код Comparing files usbio.old and USBIO.SYS 00000138: EB EA 00003E3A: 01 00
|
|
|
|
|
Oct 24 2005, 12:26
|
Группа: Новичок
Сообщений: 2
Регистрация: 11-10-05
Пользователь №: 9 500

|
Благадрю. Еще вопрос: CY7C68001, Использую windriver от Jungo. Дескиптор взят из дата шита по сайпросу. Максимальная скорость 4MByte/sec. Есть ли способ увеличть скорость обмена?
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|