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

 
 
> FPGA - USB 2.0
swayze
сообщение Feb 28 2009, 15:27
Сообщение #1





Группа: Новичок
Сообщений: 3
Регистрация: 16-02-09
Пользователь №: 44 973



Всем добрый вечер!
Я - начинающий разработчик аппаратуры и хотел бы спросить у более опытных коллег такой вопрос:

Имеется задача, решение которой предполагает довольно интенсивный поток данных между компьютером и ПЛИС фирмы Xilinx (конкретно - XC95216). Соответственно, нужно решение, которое обеспечит быструю связь между компьютером и ПЛИС.

Использование USB - естественное решение, как мне кажется.
Вызывает трудности дальнейшая реализация. Какой USB-контроллер и какой интерфейс взаимодействия между ним и ПЛИС выбрать?
UART? ULPI? Повторюсь, определяющее решение здесь - скорость. Хотя, доступность чипов, на которых эти интерфейсы реализованы и их цена также не мало важны smile.gif
А может быть имеет смысл реализовать USB на самом ПЛИС? Насколько я знаю, у Xilinx существуют и такие решения (правда, не известно насколько они до сих пор поддерживаются).

Если у Вас есть опыт в разработке такого рода устройств или просто идеи по этому поводу, пожалуйста, пишите в этот топик! Подтолкните на правильное решение wink.gif

Заранее спасибо!
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
=AK=
сообщение May 1 2009, 03:53
Сообщение #2


pontificator
******

Группа: Свой
Сообщений: 3 055
Регистрация: 8-02-05
Из: страны Оз
Пользователь №: 2 483



Мы работаем на связке FPGA+CY7C68013A. Даже этот сравнительно простой вариант "поднять" не так уж просто, придется попыхтеть. Зато кайф в том, что все грузится по USB: после подключения фирмварь грузится в CY7C68013A, а потом через CY7C68013A код грузится в FPGA.

А на варианты с реализацией USB в самом FPGA (USB PHY ессно внешний) мы забили, поскольку сочли их нереалистичными - там работы в разы больше.
Go to the top of the page
 
+Quote Post
mikeT
сообщение May 2 2009, 11:35
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 73
Регистрация: 6-02-08
Из: Новосибирск
Пользователь №: 34 789



Цитата(=AK= @ May 1 2009, 10:53) *
Мы работаем на связке FPGA+CY7C68013A. Даже этот сравнительно простой вариант "поднять" не так уж просто, придется попыхтеть. Зато кайф в том, что все грузится по USB: после подключения фирмварь грузится в CY7C68013A, а потом через CY7C68013A код грузится в FPGA.


Не могли бы Вы ответить на такие вопросы:
  1. Какой режим загрузки FPGA у вас используется?
  2. Вы напрямую прошивку для FPGA качаете (через USB с помощью FX2LP) или используете какой-то промежуточный буфер - например,память какую-нибудь?

Поясню что я имею в виду (второй вопрос): напрямую - это принял пакет от Хоста и записал его в FPGA (конфигурационная инфа), а другой вариант - сначала скачиваете ВСЮ конфиг инфу в какой-то буфер (в FX2LP ведь не влезет, если FPGA не маленькая), а потом уже из буфера спокойно грузите FPGA
Go to the top of the page
 
+Quote Post
=AK=
сообщение May 3 2009, 00:28
Сообщение #4


pontificator
******

Группа: Свой
Сообщений: 3 055
Регистрация: 8-02-05
Из: страны Оз
Пользователь №: 2 483



Цитата(mikeT @ May 2 2009, 21:05) *
Какой режим загрузки FPGA у вас используется?

Passive serial по терминологии Альтеры. Используем два варианта:
- Когда ставим 56-ногий FX2, в котором нет последовательных портов, то делаем простейший бит-банг через порт. Скорость загрузки получается порядка 700 кбит/сек
- Когда ставим многоножечный проц, то грузим через последовательный порт с бодовой скоростью 4 Мбит/сек. Реальная скорость получается ниже раза в 3, т.е. всего лишь раза в два больше, чем с бит-бангом. Одна из причин задержек состоит в том, что проц на лету меняет порядок следования битов в каждом байте, ведь UART выводит данные младшим битом вперед.

Цитата(mikeT @ May 2 2009, 21:05) *
Вы напрямую прошивку для FPGA качаете (через USB с помощью FX2LP) или используете какой-то промежуточный буфер - например,память какую-нибудь?

Напрямую, через bulk pipe.
Go to the top of the page
 
+Quote Post
mikeT
сообщение May 6 2009, 16:01
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 73
Регистрация: 6-02-08
Из: Новосибирск
Пользователь №: 34 789



Цитата(=AK= @ May 3 2009, 07:28) *
Passive serial по терминологии Альтеры.
...
Напрямую, через bulk pipe.


Хочу для полной ясности уточнить: если я правильно понял, то Альтера в любом случае грузится ТОЛЬКО от FX2LP? Никаких загрузочных микрух вы не используете.
Go to the top of the page
 
+Quote Post
=AK=
сообщение May 6 2009, 23:56
Сообщение #6


pontificator
******

Группа: Свой
Сообщений: 3 055
Регистрация: 8-02-05
Из: страны Оз
Пользователь №: 2 483



Цитата(mikeT @ May 7 2009, 01:31) *
Альтера в любом случае грузится ТОЛЬКО от FX2LP? Никаких загрузочных микрух вы не используете.

Совершенно верно. И для загрузки фирмваря в саму FX2LP тоже никаких загрузочных микрух не используем. Все грузится из РС по USB.
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 21st July 2025 - 15:56
Рейтинг@Mail.ru


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