реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> USB-FTDI, Проблемы с приемом потока данных в PC
Asb
сообщение Dec 10 2004, 13:17
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 294
Регистрация: 11-11-04
Из: Москва
Пользователь №: 1 109



Используется микросхема FT245BM (подключена к ATmege128) и драйвер 2XX. При входном пототоке до 540 КБайт/сек - все O'k. На больших скоростях FT_Read возвращает ( не сразу) FT_STATUS = 0x04 (ошибка ввода/вывода) и устройство отключается от системы. Cобственно вопрос: В чем может быть причина и можно ли получить хотя бы 700 КБайт/сек ?
Go to the top of the page
 
+Quote Post
Alex11
сообщение Dec 10 2004, 20:27
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 106
Регистрация: 23-10-04
Из: С-Петербург
Пользователь №: 965



Я на 245AM получал поток около 700КБ/сек. Ошибок не было. Наблюдалось несколько интересных эффектов: Большой поток можно получить только при запросе в драйвере не патеты большого размера. У них очень длинная разборка до запуска собственно передачи. И второй - система изредка (независимо от потока) вылетает так, что восстанавливается только перетыканием кабеля USB. Для борьбы с этим явлением был поставлен полевик в цепь подтяжки линии данных USB. Когда периферийный контроллер видел, что все отвалилось, он выключал подтяжку, все переинициировалось и начинало жить. Простой ресет на чип не помогал совершенно.
Go to the top of the page
 
+Quote Post
sphere
сообщение Dec 24 2004, 09:56
Сообщение #3





Группа: Новичок
Сообщений: 1
Регистрация: 24-12-04
Пользователь №: 1 659



Микросхемы USB от FTDI не использовал но меня интересует такой прогноз: если подключить 32 контроллера типа FT245BM, FT232BM или 16 контроллеров FT2232 через USB HUBы к одному HOST на PC то какую скорость можно получить и какая при этом будет загрузка ЦП? Разумеется USB HUBы и HOST на PC поддерживают режим high speed. Мне хочется, чтобы получилось больше 10мбайт/сек. Если у кого есть возможность собрать и проверить такую (пускай даже не полную 24, ..., 4 USB контролера) систему буду, признателен за достоверный результат. Так же интересуют прогнозы людей имеющих опыт.
rolleyes.gif
Go to the top of the page
 
+Quote Post
Alex11
сообщение Dec 24 2004, 16:22
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 2 106
Регистрация: 23-10-04
Из: С-Петербург
Пользователь №: 965



Больше 800Кб/сек не может быть теоретически. HUB не умеет перепаковывать full speed в high speed, поэтому вся система встанет в full speed с соответствующим ограничением суммарной скорости.
Go to the top of the page
 
+Quote Post
Harbour
сообщение Feb 11 2005, 07:46
Сообщение #5


Местами Гуру
*****

Группа: Validating
Сообщений: 1 103
Регистрация: 5-12-04
Пользователь №: 1 323



Были траблы при плотном потоке на win2k - линукс такой поток хавал без проблем - т.е. подозрение пало на win2k USB драйвера.
Go to the top of the page
 
+Quote Post
Trashy
сообщение Feb 11 2005, 11:35
Сообщение #6


Частый гость
**

Группа: Свой
Сообщений: 121
Регистрация: 19-01-05
Пользователь №: 2 049



Цитата(Alex11 @ Dec 24 2004, 19:22)
Больше 800Кб/сек не может быть теоретически. HUB не умеет перепаковывать full speed в high speed, поэтому вся система встанет в full speed с соответствующим ограничением суммарной скорости.
*


В спецификации есть:
When the hub upstream facing port is attached to an electrical environment that is operating at high-speed,
the full-/low-speed hub repeater is not operational. In this electrical environment when a high-speed device
is attached on downstream facing port, the routing logic will connect the port to the hub repeater and the
hub repeater must operate as a high-speed repeater. In this case, when a full-/low-speed device is attached
on a downstream facing port, the routing logic must connect the port to the transaction translator

Так вот, transaction translator - это как раз тот самый перепаковщик.
Go to the top of the page
 
+Quote Post
MSL
сообщение Mar 15 2005, 12:44
Сообщение #7


Частый гость
**

Группа: Участник
Сообщений: 75
Регистрация: 25-07-04
Из: Rostov-on-Don
Пользователь №: 382



привет всем-)

я вожусь сейчас с ft2232, вернее с ее портом А в режиме MPSSE (все обращения через d2xx их соот-но.). Софт почти весь дописал и начал же сразу оптимизировать и пытаться полусить макс. скорость-) и вот что за фигня получается:

1. наибольшая скорость получается при больших пакетах и она действительно около 800 кбайт/с (поток данных на саму и сасмой 2232) или чуть больше - точно не помню уже.

2. Сделал статистику по времени, кол-ву обращений и размеру данных - и получилось что: 98% времени занимает запись в файл, по 1% на чтение и статус. И это при том что размер отправленных байт и полученных соотносятся как 6 к 1 примерно.

3. TCK. данные шифтятся по фронтам TCK, но в реальности при установке дивизора для TCK например 6, 3 или 2 MHz - особой разницы по скорости нет...

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

в связи с этим такой вопрос: есть люди, которые писали под ftdi дрова или полностью расковыряли и изучили те sys что есть?

2 Trashy > если это ты на х-портале - не общался ли по этому поводу с Тарасом? я написал ему, но его нет чтоли щас... я по это:

Цитата
Если Вы собираетесь написать собственный драйвер для устройства на базе FTDI, Вам они будут интересны. Обратился в саппорт и в обмен на некое соглашение о не разглашении информации (Шотландское виски сильно бьет в голову?) получил упраляющие структуры для сего устройства. Кроме того, уяснил некоторые особенности его работы:
Внутрях есть FIFO буфер. Данные передаются по заполнению FIFO буфера или по таймеру. Минимальный период таймера 1мс, а по умолчанию 16мс. Поэтому, даже сконфигурировавшись на скорость 2МБ/c можно получить существенные задержки при передаче
В первых 2 байтах в каждом блоке из 64 байтов в составе пакета данных, переданных через USB, содержится информация о состоянии RS232 расположенного на микросхеме. Если нет данных, то эти два байта все равно передаются раз в 1мс. Таким образом временное разрешение на обнаружение изменения состояния RS232 не менее 1мс. При этом при чтении данных приходится выкидовать mod 64 mod 64 + 1 байты.


WBR, MSL
Go to the top of the page
 
+Quote Post
Trashy
сообщение Mar 16 2005, 04:32
Сообщение #8


Частый гость
**

Группа: Свой
Сообщений: 121
Регистрация: 19-01-05
Пользователь №: 2 049



Цитата(MSL @ Mar 15 2005, 15:44)
2 Trashy > если это ты на х-портале - не общался ли по этому поводу с Тарасом? я написал ему, но его нет чтоли щас... я по это:
WBR, MSL
*


Он есть, только у него интерес пропал. Отвечает только на вопросы которые интересны ему самому, либо если для ответа не требуется много времени.
Впринципе, он меня всему и научил...
Go to the top of the page
 
+Quote Post
MSL
сообщение Mar 22 2005, 14:37
Сообщение #9


Частый гость
**

Группа: Участник
Сообщений: 75
Регистрация: 25-07-04
Из: Rostov-on-Don
Пользователь №: 382



2 Trashy > да я уже это понял... да и правильно он говорит все... я просто услышал то, что хотел услышать - что надо писать свои дрова и скорость будет намного больше. Поставил ДДК и буду потихоньку разбираться, потому как дров еще не писал сам..(( Так что если есть желание - пиши в ПМ или на мыло - будем вместе писать-)
Go to the top of the page
 
+Quote Post
khach
сообщение Mar 23 2005, 09:02
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 3 439
Регистрация: 29-12-04
Пользователь №: 1 741



Посмотрите драйвера FTDI для Линуха- там все в исходниках
http://ftdi-usb-sio.sourceforge.net/
Но с другой стороны, если скорости нехватает - меняйте микросхему. Смотрите в сторону Cypress (EZ-USB) например.
Go to the top of the page
 
+Quote Post
PowerF1
сообщение May 18 2005, 09:56
Сообщение #11


Участник
*

Группа: Новичок
Сообщений: 34
Регистрация: 12-03-05
Из: Новосибирск
Пользователь №: 3 288



Интересно, кто-нибудь делал дата кабель для сотовых на этих микрухах?
Go to the top of the page
 
+Quote Post
Xenix
сообщение Aug 16 2005, 08:38
Сообщение #12


Участник
*

Группа: Свой
Сообщений: 29
Регистрация: 4-05-05
Пользователь №: 4 741



Цитата(Asb @ Dec 10 2004, 16:17)
Используется микросхема FT245BM (подключена к ATmege128) и драйвер 2XX. При входном пототоке до 540 КБайт/сек - все O'k. На больших скоростях FT_Read возвращает ( не сразу)  FT_STATUS = 0x04 (ошибка ввода/вывода) и устройство отключается от системы. Cобственно вопрос: В чем может быть причина и можно ли получить хотя бы 700 КБайт/сек ?
*

700 Можно получить. У меня с ПЛМ-кой работает. Только что-бы не было ошибки - надо TimeOut ставить на 100мс. Скорость не меняется (смотрел ослилопом), зато ошибки 04 не видел больше.
Для скорости надо поиграть с латентностью и размерами буферов
у меня 2 и 32768/32768. См. мануалы по спец.функциям ВМ дров D2хх
Go to the top of the page
 
+Quote Post
Xenix
сообщение Aug 16 2005, 08:42
Сообщение #13


Участник
*

Группа: Свой
Сообщений: 29
Регистрация: 4-05-05
Пользователь №: 4 741



Цитата(Harbour @ Feb 11 2005, 10:46)
Были траблы при плотном потоке на win2k - линукс такой поток хавал без проблем - т.е. подозрение пало на win2k USB драйвера.
*

Поставь SetTimeOut на 100. У меня, что под В2К, что под ВыньХП арбайтает
Go to the top of the page
 
+Quote Post
Asb
сообщение Aug 23 2005, 06:31
Сообщение #14


Местный
***

Группа: Свой
Сообщений: 294
Регистрация: 11-11-04
Из: Москва
Пользователь №: 1 109



Возвращаясь к исходному вопросу.
В очередной раз налетев на те же грабли, обратился таки на support FTDI.
Получил ответ, и надо отметить, быстро.

>>As the device appears to be hanging up this could suggest issues with your
>>USB termination.
>>
>>Ensure you have 27R terminators on USB DP and USB DM.
>>
>>Ensure the USB connector shield is isolated from the GND.
>>
>>Try adding 47pF capacitors on USB DP and USB DM to GND.
>>http://www.ftdichip.com/Support/Knowledgebase/whydoesntmyft232245workwhenco.htm

Пункт 1 - вопросов не вызывает.
Пункт 3 - добавление конденсаторов полностью решило проблему сбоев.
Пункт 2 - вообще то понятно, но хотелось бы услышать комментарии кто как подключает этот самый экран.
Go to the top of the page
 
+Quote Post
Xenix
сообщение Aug 23 2005, 08:33
Сообщение #15


Участник
*

Группа: Свой
Сообщений: 29
Регистрация: 4-05-05
Пользователь №: 4 741



Цитата(Asb @ Aug 23 2005, 09:31)
Возвращаясь к исходному вопросу.

>>
>>Ensure the USB connector shield is isolated from the GND.
>>



Пункт 2 - вообще то понятно, но хотелось бы услышать комментарии кто как подключает этот самый экран.
*


Обычно 1 МоМ резистор к земле; иногда + кондюк 0,1мк - 1мк
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 08:48
Рейтинг@Mail.ru


Страница сгенерированна за 0.01467 секунд с 7
ELECTRONIX ©2004-2016