Jump to content

    
Sign in to follow this  
prst

Начать работать с Hi-Speed USB - CY7C68013

Recommended Posts

Приветствую коллеги.

Ранее я надеялся на то что мне хватит того что по скорости обмена выжму с FTDI, но не хватило...

и уже немного изменились требования. Нужно чтото побыстрее.

Хочу начать работать с Hi-Speed USB.

(PS: Параллельно читаю аналогичный вопрос что был тут когда-то http://electronix.ru/forum/lofiversion/index.php/t25493.html )

Поверхностно пробежавшись, остановился на CY7C68013, как на самой популярной в этой категории, подозреваю (а точнее уверен) что она намного быстрее, правда пока не нашел конкретно на какую скорости USB можно надеяться. Мне необходимо сделать переходник с скоростью около 15-20МБайт/сек USB а параллельную щину или SPI. В дискуссиях сообщения что теоретический предел 60МБайт/сек, реально конечно скорость ниже, и у некоторых людей было ~20-24 МБайт/сек... а у некоторых едва 8 МБайт/сек получается. Как я понял с переписки на форуме - от кода зависит.

Какая скорость у кого получалась на практике, на что мне стоит надеяться?

 

Еще не понял до конца как с ней работать. На сколько я понял, это 8051 с USB шустрым приемопередатчиком на который нужно самому полностью написать прогу, проинитить, и осуществлять весь контроль на всем этапе обмена данными. Но есть она на настолько прозрачная как та же FTDI. Все верно?

 

Скачал мануал FX2_TechRefManual (link), там чтиво на 480 стр. Курю её... (приатачил сюда на всяк случай)

Чип конечно потяжелее чем тот же FTDI :)

На то и надеюсь что он и умеет на порядок больше.

Посоветуйте плз, как с ней начать максимально быстро работать.

Оказуется, есть еще какой-то софт EZ‐USB Control Panel.

По косвенной информации с упоминаниями Keil пока догадываюсь что именно в ней то и нужно будет весь проект делать. Так ли это?

Вот тут есть ссылка софт какой-то, но он не доступен. Так что вопрос тоже открыт покаместь.

 

Много вопросов. Буду рад любим вашим советам.

Ну и да, так как я пока не совсем в USB-теме, может подскажете более современные решения?

 

И еще, так как чипа у меня под рукой нет, как вы думаете? На сколько оправданно начать с покупки и использования вот этой платки?

FX2_TechRefManual.pdf

Share this post


Link to post
Share on other sites

+1 за платку, быстрее освоите. Но на платке той стоит 56-выводной МК, у которого не все пины доступны, хотя Вам для SPI хватит существующих.

У Cypress есть неплохие Application Notes на разные темы, в том числе и по Вашей (USB в быстрый последовательный интерфейс). Посмотрите на их сайте в разделе FX2LP, там есть отдельная страница с App notes.

Share this post


Link to post
Share on other sites
+1 за платку, быстрее освоите. Но на платке той стоит 56-выводной МК, у которого не все пины доступны, хотя Вам для SPI хватит существующих.

У Cypress есть неплохие Application Notes на разные темы, в том числе и по Вашей (USB в быстрый последовательный интерфейс). Посмотрите на их сайте в разделе FX2LP, там есть отдельная страница с App notes.

Спасибо.

Хотя на самом деле, мне нужно и параллельный интерфейс и SPI, желательно одновременно.

Share this post


Link to post
Share on other sites
Спасибо.

Хотя на самом деле, мне нужно и параллельный интерфейс и SPI, желательно одновременно.

этот мк идеален для параллельного интерфейса. Кстати, отвечая на первое Ваше сообщение, 8051 там как бы вторичен в случае скоростного обмена: 51 конфигурирует GPIO/FIFO, который затем работает как быстрый USB<>parallel.

Share this post


Link to post
Share on other sites
этот мк идеален для параллельного интерфейса. Кстати, отвечая на первое Ваше сообщение, 8051 там как бы вторичен в случае скоростного обмена: 51 конфигурирует GPIO/FIFO, который затем работает как быстрый USB<>parallel.

мммм, а можно Вас вот тут вот, более детально объяснить?

Те коды, что я накачал и бегло пробежался(разгребать коды буду позже), похоже что 8051 там как раз всё и делает...

Share this post


Link to post
Share on other sites
скорости USB можно надеяться. Мне необходимо сделать переходник с скоростью около 15-20МБайт/сек USB а параллельную щину или SPI. В дискуссиях сообщения что теоретический предел 60МБайт/сек,

SPI на такую скорость не получите с CY7C68013. Разве что Quad-SPI и в одну сторону и то - очень сомнительно посмотрите хотя-бы на тактовую CY7C68013.

Да и чем Вы собрались принимать SPI на такой скорости, каким МК???

И кстати - параллельная шина параллельной шине рознь - смотря от кол-ва управляющих сигналов и требований к их времянкам может и не получите на 8-разрядной параллельной шине 20МБ/сек. Но CY7C68013 умеет 16-бит в параллель.

Да, как и писали тут, 8051 там нужен для конфигурирования и для работы по медленным эндпоинтам. Для быстрого обмена там есть Slave-FIFO, который программируется визуально в их спец.среде

(рисуете ручками в виде осциллограмм необходимые сигналы и зависимости), потом полученная осциллограмма работы вносится в ПО в виде массива чисел, который используется 8051-ядром при программировании логики Slave-FIFO.

Я больших скоростей не получал (не нужно было, нужно было немного быстрее USB FS) и проект на CY7C68013 делал давно, многих тонкостей уже не помню. Помню, что взял один из примеров и переделал его под себя, вроде без проблем.

Share this post


Link to post
Share on other sites

Максимум который я выжимал порядка 45 Мбайт/сек в устоявшемся в режиме Slave FIFO режиме . Зависит от конкретного порта USB компьютера. Я начинал с самодельной платки. Легко разводится и хорошо работает на двухслойной плате. На освоение CY7C68013 мы потратили кучу времени.

 

Share this post


Link to post
Share on other sites

Автор, ну, как успехи с FX2?

 

jcxz прав, быстрый SPI тем более совтовый поднимать на том 8051 - странная затея. Если Вам очень нужен SPI, то поищите преобразователи Parallel <> SPI, такой вы сможете подружить с FX2шным Slave-FIFO и наверняка обеспечит высокую скорость. Вроде бы даже TI делает нечто подобное.

 

Сам 8051 который встроен в FX2 довольно примитивный по современным меркам (если сравнивать с C8051 от Silabs, где есть аппаратный SPI, DMA и пр.) несмотря на то что фирма позиционирует его как high-performance. В нем даже нет watchdog, который может быть весьма полезен в случае зависания USB. В общем, high-performance версией 51 он мог считаться в конце 90-х, откуда собственно и растут его ноги. По большому счету, FX2 как и МК для Full Speed USB предлагаемые Cypress'ом разработан не самими кипарисами, а небольшой калифорнийской фирмочкой под названием Anchor Chips, которую Cypress скупили в 1999-м году за 15 миллионов баксов. Именно Anchor Chips придумали на тот момент весьма уникальную идею загрузки кода для 8051 по USB во внутреннюю ОЗУ с последующим исполнением из ОЗУ. Это свойство отчасти обеспечило популярность FX2.

Cypress даже поленились переименовать константы и функции в исходниках драйверов для FX2 - хорошо помню мелькание слова ANCHOR в Си коде в Kit'ах Cypress еще в 2004-2005 годах: нечто вроде typedef struct _ANCHOR_DOWNLOAD_CONTROL и тому подобное.

Share this post


Link to post
Share on other sites
По большому счету, FX2 как и МК для Full Speed USB предлагаемые Cypress'ом разработан не самими кипарисами, а небольшой калифорнийской фирмочкой под названием Anchor Chips...

И FX3, кажется, тоже был куплен на стороне.

Share this post


Link to post
Share on other sites

исходя из ТЗ T.S.

 

1.

Для реализации параллельного интерфейса - работает, и неплохо. По крайней мере то, что нам требовалось.

Режим - ввод, асинхронный. Шина-8бит. Управление от внешнего мастера - SLCS, SLWR, PKTEND.

Этот узел работает аппартатно, писать софт для 8051 не надо (только блок инициализации узла FIFO)

Флаги не использовались, тк. быстродействия хватало болеечем.

В качестве базы было взято Cypress AN Slave FIFO.

 

2.

Для SPI не подойдет. У Cypress есть AN для SPI, но он реализован программно на 8051

Через изворот, можно конечно и сделать, нечто bit-bang на fifo.

Для этих целей однозначно лучше FTDI2232D, где SPI-master реализован аппаратно.

 

 

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this