|
|
  |
USB, EZ-USB FX2 |
|
|
|
Sep 16 2004, 15:09
|
Частый гость
 
Группа: Свой
Сообщений: 104
Регистрация: 27-08-04
Из: Минск
Пользователь №: 556

|
Цитата(udofun @ Jun 17 2004, 06:26 PM) Итересен переходник с USB на RS232. Самый простой и дешевый вариант такого переходника - Cygnal CP2101 USB to UART Bridge Controller. Если для FTDI надо внешний кварц, EEPROM и еще горсть мелочевки, то для CP2101 не нужно НИЧЕГО (ну кроме пары фильтрующих кондеров :D ). И все это в корпусе MLP-28 5x5 мм! И еще стабилизатор 3,3 В 80 мА впридачу! И по цене меньше чем FTDI (~ $3). Правда драйвера Cygnal (сорри, теперь уже Silicon Labs) просто так не дает, надо кит за баксов 50 купить. Но это небольшая проблема - если кому драйвера надо, могу куда-нибудь залить/намылить. Единственное, правды ради хочу сказать, чип несколько менее гибкий, чем FTDI.
|
|
|
|
|
Sep 17 2004, 08:27
|

Участник

Группа: Свой
Сообщений: 44
Регистрация: 13-09-04
Из: Екатеринбург
Пользователь №: 654

|
Подскажите кто знает... Мне нужно написать программку на CY7C67хх, EZ-USB Development Tools V2.61.700 потдетживает эту серию контроллеров? И вообще что поддерживыает серию контроллеров enCoRe и M8? Игде можно найти? Знаю что некоторые контроллеры с архитектурой 51 поддерживаются uVisio. Зарание Спасибо!!!
|
|
|
|
|
Oct 5 2004, 10:27
|
Группа: Свой
Сообщений: 14
Регистрация: 21-07-04
Из: Moscow
Пользователь №: 347

|
Цитата(левша @ Oct 4 2004, 10:18 PM) Ктонибудь делал на CY7C68013 что нибудь? Если да то интересно какую скорость удалось достичь, и какая при этом была загрузка процессора? Про изохронную передачу не знаю, а вот про Bulk могу сказать вот что. На сайте Cypress есть такая информация: Using Bulk endpoints Fx2 can perform a data rate of 20 MBps on PCI Host Controllers 5 packets per microframe 5 packet *512 Bytes/Packet per microframe 2.5 Kbytes per microframe 8 microframe * 2.5 K Bytes per Frame 20,000 KB per second 20 MBps (about twice this speed on Motherboard based Host Controllers such as ICH4) Конечно не все так хорошо, но это похоже на правду. Я как-то пробовал такую штуку: FX2 (без внешней периферии), EP2 - IN, 512 byte, quad buffering. Внутренний 8051 - тупо крутил цикл проверяя не свободно ли EP2 FIFO и если оно оказывалось вычитанным, то снова "взводил" его записью в регистры EP2BCH и EP2BCH. Могу сейчас наврать но было что-то вроде: if(!(EP2468STAT & bmEP2FULL)) { SYNCDELAY; EP2BCH = 0x02; SYNCDELAY; EP2BCL = 0x00; } В свою очередь на PC программа + синхронный драйвер (аналогичный ezusb.sys) опять же тупо в цикле вычитывали данные. Приоритет потока я не поднимал, драйвер за один раз запрашивал передачу 32 Kбайт. Дело было давно но получилось что-то вроде: P3 900 MHz + PCI USB2.0 Host (Tekram) в районе 15 MByte/sec P4 2.4 GHz + ICH4 на маме - чуть ли не 30 MByte/sec Загрузка процессора, если мне не изменяет память была в районе 30% (Тут могу наврать, но помню что я сильно обрадовался  Видимо если написать нормальный драйвер то можно скорость передачи FX2->PC несколько увеличить.
|
|
|
|
|
Oct 6 2004, 16:53
|
Частый гость
 
Группа: Свой
Сообщений: 151
Регистрация: 4-10-04
Из: Москва
Пользователь №: 789

|
Цитата(grumbler @ Oct 6 2004, 12:45 AM) Использую CY7C68001 - то же но без встроенного процессорного ядра. Получается без напряга 15 Мбайт/с при загрузке ЦП PENTIUM-M 1.5 несколько процентов. Думаю можно больше, просто мне не надо.
Лучше пользуйте USBIO . 1,5% это внушает, но мне необходима импульсная передача (передача-пауза-передача...). А что такое USBIO? Если имеется ввиду работать напрямую с портами ввода вывода то я думую это лишнее, а если есть драйвер с помощью которого можно обратиться к USB то хотелосьбы получить подробную справку. Пока мне известен только один такой общий драйвер это драйвер HID учтройств, но он мне подходит по скорости.
|
|
|
|
|
Oct 6 2004, 17:43
|
Частый гость
 
Группа: Свой
Сообщений: 135
Регистрация: 10-07-04
Из: Зеленоград
Пользователь №: 310

|
Цитата(левша @ Oct 6 2004, 08:53 PM) А что такое USBIO? Если имеется ввиду работать напрямую с портами ввода вывода то я думую это лишнее, а если есть драйвер с помощью которого можно обратиться к USB то хотелосьбы получить подробную справку. http://www.thesycon.decrack искатить в конфе на телесистемах.
|
|
|
|
|
Oct 6 2004, 20:53
|
Частый гость
 
Группа: Свой
Сообщений: 151
Регистрация: 4-10-04
Из: Москва
Пользователь №: 789

|
Цитата(grumbler @ Oct 6 2004, 09:43 PM) http://www.thesycon.decrack искатить в конфе на телесистемах. Спасибо, возьму на заметку.
|
|
|
|
|
Oct 16 2004, 07:10
|
Участник

Группа: Свой
Сообщений: 74
Регистрация: 16-10-04
Из: Москва
Пользователь №: 889

|
2 qlock17 Цитата Столкнулся с проблемой при сопровождении устройства на CY7C68013. Бывает неопознанный глюк: флаг переполнения FIFO уходит в 0 (FIFO full) и FPGA перестает качать данные в USB-чип. Причем глюк носит случайный характер. То он всплывает, когда писишная программа только инициализирует устройство и никаких данных со стороны FPGA еще не идет, то выскакивает в момент передачи данных. Конфигурация чипа следующая: FIFO в режиме Slave, AUTO IN mode, размер пакета 1024 байта, буферизация quad, режим передачи данных bulk. Используется только Endpoint2, остальные отключены. Если кто-нибудь сталкивался с подобным глюком - поделитесь информацией. Я в долгу не останусь Заранее спасибо А как это вам удалось сделать размер пакета 1024 в BULK режиме? В мануале написано что такое возможно только в ISOCHRONOUS. Что касается вашего глюка, то очень похоже на сбои по питанию или наводки по IFCLK (или по SLWR - если асинхронный режим). Еще полезно перед началом работы ресетить FIFO столько раз, чему равна буферизация, т.е. в вашем случае 4. Вы каким драйвером пользуетесь. С новым драйвером от Cypress - CyUsb.sys не работали? Не могу с его помощью засатавить свой девайс заснуть, хотя вроде средства для этого есть. Может кто еще сталкивался?
|
|
|
|
|
Oct 17 2004, 16:08
|
Частый гость
 
Группа: Свой
Сообщений: 151
Регистрация: 4-10-04
Из: Москва
Пользователь №: 789

|
Цитата(Al Jumper @ Oct 16 2004, 11:10 AM) 2 qlock17 Цитата Столкнулся с проблемой при сопровождении устройства на CY7C68013. Бывает неопознанный глюк: флаг переполнения FIFO уходит в 0 (FIFO full) и FPGA перестает качать данные в USB-чип. Причем глюк носит случайный характер. То он всплывает, когда писишная программа только инициализирует устройство и никаких данных со стороны FPGA еще не идет, то выскакивает в момент передачи данных. Конфигурация чипа следующая: FIFO в режиме Slave, AUTO IN mode, размер пакета 1024 байта, буферизация quad, режим передачи данных bulk. Используется только Endpoint2, остальные отключены. Если кто-нибудь сталкивался с подобным глюком - поделитесь информацией. Я в долгу не останусь Заранее спасибо А как это вам удалось сделать размер пакета 1024 в BULK режиме? В мануале написано что такое возможно только в ISOCHRONOUS. Что касается вашего глюка, то очень похоже на сбои по питанию или наводки по IFCLK (или по SLWR - если асинхронный режим). Еще полезно перед началом работы ресетить FIFO столько раз, чему равна буферизация, т.е. в вашем случае 4. Вы каким драйвером пользуетесь. С новым драйвером от Cypress - CyUsb.sys не работали? Не могу с его помощью засатавить свой девайс заснуть, хотя вроде средства для этого есть. Может кто еще сталкивался? Несмотря на то что я отказался от использования изохрона мне былобы интересно увидеть пример работы с этим типом конечнойт точки драйвера CyUSB.sys. Когда драйвер жрёт 60-70% процессорного времени на скорости 3,3 МБ/сек и передаёт испорченые данные на остальное можно уже не смотретть. Возможно это изза некорректной передачи данных но в чём лаг я так и не понял. Если ктото что делал под этот драйвер для изохрона пожайлуста поделитесь опытом в том что косается особенностей этого типа передачи под этот драйвер.
|
|
|
|
|
Nov 15 2004, 10:02
|
Участник

Группа: Новичок
Сообщений: 23
Регистрация: 13-11-04
Из: Нижний Новгород
Пользователь №: 1 120

|
Цитата(glock17 @ Sep 3 2004, 06:41 AM) Столкнулся с проблемой при сопровождении устройства на CY7C68013. Бывает неопознанный глюк: флаг переполнения FIFO уходит в 0 (FIFO full) и FPGA перестает качать данные в USB-чип. Причем глюк носит случайный характер. То он всплывает, когда писишная программа только инициализирует устройство и никаких данных со стороны FPGA еще не идет, то выскакивает в момент передачи данных. Конфигурация чипа следующая: FIFO в режиме Slave, AUTO IN mode, размер пакета 1024 байта, буферизация quad, режим передачи данных bulk. Используется только Endpoint2, остальные отключены. Если кто-нибудь сталкивался с подобным глюком - поделитесь информацией. Я в долгу не останусь Заранее спасибо Добрый день. Такой глю кнаблюдаеьтся сразу после инициализации, пока от внешнего хоста не придет информация, что устройство подхвачено драйвером ОС. у самого на CY7C680001 флаги стоят в состоянии, как попало.
|
|
|
|
|
Nov 20 2004, 11:42
|
Частый гость
 
Группа: Свой
Сообщений: 151
Регистрация: 4-10-04
Из: Москва
Пользователь №: 789

|
Цитата(glock17 @ Sep 3 2004, 05:41 AM) Столкнулся с проблемой при сопровождении устройства на CY7C68013. Бывает неопознанный глюк: флаг переполнения FIFO уходит в 0 (FIFO full) и FPGA перестает качать данные в USB-чип. Причем глюк носит случайный характер. То он всплывает, когда писишная программа только инициализирует устройство и никаких данных со стороны FPGA еще не идет, то выскакивает в момент передачи данных. Конфигурация чипа следующая: FIFO в режиме Slave, AUTO IN mode, размер пакета 1024 байта, буферизация quad, режим передачи данных bulk. Используется только Endpoint2, остальные отключены. Если кто-нибудь сталкивался с подобным глюком - поделитесь информацией. Я в долгу не останусь Заранее спасибо У меня тоже были какието проблемы с началом передачи, поэтому я ввёл дополнительный сигнал включения выключения сеанса передачи. При неактивном уровне у меня происходит сброс моего синхронного автомата плиски и прочищается канал передачи данных от данных прошлого сеанса передачи(это изза драйвера наверно). Конечно можно обойтись и без него при более тщательном изучении контроллера, но мне так проще. Интересно а кто нибудь делал одноврменно с каналом передачи данных Slave FIFO <-> FPGA интерфейс заливки прошивки ПЛИС от CY7C68XXX к FPGA? И вообще возможно ли это?
|
|
|
|
|
Dec 6 2004, 18:20
|
Участник

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

|
Если кто еще использует чипы от FTDI (после такой рекламы CP2101 и CY7C68013), скажите: их драйвера можно как-то устанавливать автоматически (ну, к примеру из своего дистрибутива, так, чтобы они уже прописывались в Windows)? Куда что в реестре надо записать, что кинуть в Windows/System и так далее? Вообще, это в принципе возможно? А то не солидно всем потребителям объяснять: "Когда воткнете кабель, запустится мастер установки нового оборудования, поставьте галочку там-то и там-то и укажите путь к драйверам, а если мастер у вас почему-то не запустился, то возможно несколько вариантов...". Не все пользователи от этого в восторге.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|