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

 
 
> Снова про FT245
zpv78
сообщение Sep 26 2007, 12:21
Сообщение #1





Группа: Новичок
Сообщений: 13
Регистрация: 8-02-07
Пользователь №: 25 181



Что необходимо:
Необходимо принимать параллельные данные с периодичностью 3 мкс (333 КБайт/сек). Объем данных в каждом пакете 5200 байт.

Ситуация:
Читаю не полный пакет. Не хватает по разному от 50 до 300 байт.

Что делал:
Становился частотомером на синхро - количество импульсов полное (5200). Становлюсь на TXE - количество импульсов такое же сколько читаю (не хватает).

FTDI заявило скорость 1 МБайт, мне же надо 333К. В чем дело. Читал аналогичную тему на этой странице про длительность TXE (4 с хреном мсек) - может из-за этого. Кстати подключал два аналогичных устройства на один информационный канал - читает разное количество. При приеме сигнал TXE не отслеживаю, все равно не могу ограничить скорость информационного канала.

Help me: Может кто сталкивался и победил такую фигню, или надо реализовывать другие схемные решения.

Крик души: FTDI-козлы.

В дополнение: Проверил длительность TXE - у меня все в норме - около 200 нс. Неужели происходит переполнение буфера в микрухе (384 байта).
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 13)
jorikdima
сообщение Sep 26 2007, 13:36
Сообщение #2


тут может быть ваша реклама
*****

Группа: Свой
Сообщений: 1 164
Регистрация: 15-03-06
Из: Санкт-Петербург/CA
Пользователь №: 15 280



а не Мбит ли они обещают? smile.gif
Go to the top of the page
 
+Quote Post
zpv78
сообщение Sep 26 2007, 16:29
Сообщение #3





Группа: Новичок
Сообщений: 13
Регистрация: 8-02-07
Пользователь №: 25 181



Нет, МБайт. Ведь FT245-преобразователь паралельного кода в USB.
Go to the top of the page
 
+Quote Post
-=Space=-
сообщение Sep 26 2007, 16:39
Сообщение #4


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

Группа: Свой
Сообщений: 105
Регистрация: 14-01-05
Из: Москва Зеленоград
Пользователь №: 1 962



Отвечу и здесь

Цитата(zpv78 @ Sep 26 2007, 16:21) *
При приеме сигнал TXE не отслеживаю ....

вот корень проблемы!
нельзя передать 5200 байт за один юзби-фрейм, он поделется на 64 байтовые Bulk транзакции.
Между транзакциями , если писать на тойже скорости что и всегдавозможно переполнение FIFO в FTшке
и она об этом сообщает удерживая TXE дольше чем обычно.
Go to the top of the page
 
+Quote Post
zpv78
сообщение Sep 26 2007, 17:03
Сообщение #5





Группа: Новичок
Сообщений: 13
Регистрация: 8-02-07
Пользователь №: 25 181



Спасибо, я в принципе догадывался, что дело в переполнении буфера. Вот только я не имею возможности корректировать информационный поток, а вынужден подстраиваться под него. Чего блин делать, пока не знаю. Еще раз спрсибо, буду думать. Пока.
Go to the top of the page
 
+Quote Post
-Al-
сообщение Sep 26 2007, 17:44
Сообщение #6


Местный
***

Группа: Свой
Сообщений: 330
Регистрация: 10-06-05
Из: Россия, Москва
Пользователь №: 5 894



Цитата(zpv78 @ Sep 26 2007, 21:03) *
Спасибо, я в принципе догадывался, что дело в переполнении буфера. Вот только я не имею возможности корректировать информационный поток, а вынужден подстраиваться под него. Чего блин делать, пока не знаю. Еще раз спрсибо, буду думать. Пока.

Поставить двухпортовое FIFO в разрыв между FT245 и входом потока.
Go to the top of the page
 
+Quote Post
zpv78
сообщение Sep 27 2007, 06:40
Сообщение #7





Группа: Новичок
Сообщений: 13
Регистрация: 8-02-07
Пользователь №: 25 181



Проверил логическим анализатором поведение TXE, действительно после приема 4300 байт TXE затыкается на 600 мкс (скидывает переполненный буфер), в этот момент я теряю информацию. Решение об аппаратном FIFO буфере возникло сразу, вот только я не слышал таких микрух. Может кто знает что нибудь подобное, подскажите, пожалуйста. Я пока буду искать.
Спасибо за помощь.
Go to the top of the page
 
+Quote Post
-Al-
сообщение Sep 27 2007, 07:04
Сообщение #8


Местный
***

Группа: Свой
Сообщений: 330
Регистрация: 10-06-05
Из: Россия, Москва
Пользователь №: 5 894



Например что-нибудь из серий:
IDT720x
CY7C46x
Go to the top of the page
 
+Quote Post
zpv78
сообщение Sep 27 2007, 07:16
Сообщение #9





Группа: Новичок
Сообщений: 13
Регистрация: 8-02-07
Пользователь №: 25 181



Спасибо, посмотрю. Успехов.
Go to the top of the page
 
+Quote Post
_ANDREW
сообщение Oct 4 2007, 11:22
Сообщение #10


Участник
*

Группа: Участник
Сообщений: 53
Регистрация: 14-03-06
Пользователь №: 15 223



не так давно делал вводилку на ft245, (не доделал появились дугие задачи..). Так вот , ни о каком МБ/сек который они обещают нет и речи. сделал аналогично предложенному решению (промежуточный буфер), а именно сначала сделал на плиске и sram пробывал сделать пин-понг буфер, но так как sram была одна там возникали проблемы с арбитром шины. сейчас думаю либо асинхронный fifo внутриплисочный прикутить, либо арбитра придумывать...да, максимальная скорость, которую я добился ~2,3 - 2,5 Мбит/сек...
Go to the top of the page
 
+Quote Post
-=Space=-
сообщение Oct 4 2007, 14:09
Сообщение #11


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

Группа: Свой
Сообщений: 105
Регистрация: 14-01-05
Из: Москва Зеленоград
Пользователь №: 1 962



ну тут дело не в микрухе.
возможно хост не успевает принять данные?
или плис не успевает выдавать?

у меня получилось 120Гц пакетами по ~3600 байт
это уже 3,4Мбит, при этом загрузка шины FTшки <50%
но увиличивать скорость дальше мне было сложно, поэтому ограничился 120 Гц

Сейчас сделано так:
в плиске fifo на 16 байт, пакеты формирует embeded проц pblaze,
по 14 байт кидает в fifo
по опустошению fifo генерируется прерывание процу, по которому
закидывается в fifo новый блок из 14 байт.
fifo высвобождается автоматически по спаду txe.
Go to the top of the page
 
+Quote Post
PSP
сообщение Oct 5 2007, 20:53
Сообщение #12


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

Группа: Свой
Сообщений: 118
Регистрация: 1-10-07
Пользователь №: 30 988



Я достигал на прием скорости 500кбайт/сек на объемах в несколько мегабайт, причем ограничивалась скорость возможностями моего микропроцессора, а не FTDI. Осциллографом хорошо видно, что процессор читает готовность FTDI, а она всегда (почти) готова. Потом читает байт данных и т.д. То есть случаев подтормаживания со стороны FTDI очень мало, фактически только между заполнением его FIFO. Правда, я использовал на стороне PC не драйвера виртуального COM порта, а D2XX, они быстрее.
Go to the top of the page
 
+Quote Post
SALOME
сообщение Oct 6 2007, 04:09
Сообщение #13


Местный
***

Группа: Свой
Сообщений: 311
Регистрация: 11-06-07
Из: Российская империя, 1861г.
Пользователь №: 28 349



Цитата(PSP @ Oct 6 2007, 03:53) *
Я достигал на прием скорости 500кбайт/сек на объемах в несколько мегабайт, причем ограничивалась скорость возможностями моего микропроцессора, а не FTDI.

Подтверждаю. У нас скорость порядка 900 мегабайт/сек. Хотя по началу было совсем мало. Потом обнаружили ошибку в программе проца.


--------------------
Итак увидел я, что нет ничего лучше, чем наслаждаться человеку делами своими (Еккл) .
Go to the top of the page
 
+Quote Post
-Al-
сообщение Oct 6 2007, 06:06
Сообщение #14


Местный
***

Группа: Свой
Сообщений: 330
Регистрация: 10-06-05
Из: Россия, Москва
Пользователь №: 5 894



Цитата(SALOME @ Oct 6 2007, 08:09) *
Подтверждаю. У нас скорость порядка 900 мегабайт/сек. Хотя по началу было совсем мало. Потом обнаружили ошибку в программе проца.

Не 'мегабайт' а 'килобайт' wink.gif Да, действительно на FT245 можно достичь такой скорости. НО поток в реальном времени на такой скорости без потерь можно передать только при наличии внешнего буфера хотя-бы на 4кБ, лучше побольше smile.gif
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 23rd June 2025 - 20:17
Рейтинг@Mail.ru


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