Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Реализация HS USB на Cyclone II
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам > RS232/LPT/USB/PCMCIA/FireWire
kabesot
Здравствуйте.

Стоит задача реализации HS USB интерейса на основе микросхемы SMSC USB3300EZK и ПЛИС Циклон 2. Данная микросхема использует ULPI интерфейс. Предполагается через данный интерфейс ганять видео и данные больших обёъмов. Разрабатываемое устройство должно работать в режиме переферийного устройства. Основная идёя по реализации - это проект с гибкой логикой (для реализации разпознаваний пакетов, вычисления контрольных сумм,описание конечных точек) и ядро на основе НИОС для управления.

Вопрос:

Как проще реализовать данный интерфейс?
Не совсем понятно...с чего начинать и как тестить...как правильно конфигурировать данную микросхему, что бы её увидел комп?
vmp
Цитата(kabesot @ Jun 15 2007, 13:59) *
Как проще реализовать данный интерфейс?

Поставить вместо ULPI готовый USB контроллер Cypress CY7C68013A. Никаких проблем с быстрым стартом. Вдобавок через него можно будет конфигурить Циклон непосредственно с компа - в готовом устройстве вообще может не быть зашивок, только файлы в компе.

Цитата(kabesot @ Jun 15 2007, 13:59) *
Не совсем понятно...с чего начинать и как тестить...как правильно конфигурировать данную микросхему, что бы её увидел комп?

C поиска мегафункции USB-device, поддерживающей ULPI. Комп её не увидит до тех пор, пока не заработает USB-device в Циклоне.
kabesot
CY7C68013A не подходит...в силу желания заказчика...и в силу того, что в будущем необходимо будет реализацовать OTG.

А вот с мегафункциями всё вроде-бы неплохо и на опенкоре есть да и менторовская есть неплохая прямо-таки с ULPI...все настройки конечных точек происходят в ядре(есть конфиг). На выходе у неё АМБА интерфейс для микроконтроллера, вот только не понятно как сначала законфигурировать вход PHY?
Ведь для HS там необходимо подтягивающий резистор сначала включить, что бы хост определил девайс.
vmp
Цитата(kabesot @ Jun 15 2007, 18:33) *
Ведь для HS там необходимо подтягивающий резистор сначала включить, что бы хост определил девайс.

Перед тем, как включать резистор, неплохо бы ULPI Specifications прочитать, особенно таблицу 41.
http://www.ulpi.org/documents.html.
kabesot
Цитата(vmp @ Jun 15 2007, 17:59) *
Перед тем, как включать резистор, неплохо бы ULPI Specifications прочитать, особенно таблицу 41.
http://www.ulpi.org/documents.html.

Я именно это и имел в видуwink.gif...
kabesot
Так вот вопрос...функцию записи данных в регистр для подтяжки резистора на входную шину должна выполнять мегафункция (Core) или же управление должно происходить через внешний интерфейс с помощю микроконтроллера? Мне для начала нужно хотя бы что-бы комп определили девайс, а потом уже в остальном буду разбираться.
kabesot
Есть ли у кого опыт реализации HS USB-device с ULPI интерфейсом? Поделитесьwink.gif
DjDiAbLo
Привет всем!!!
У меня тоже проблема в ULPI.
Нашел немножко больше о 3300 документации, может кому пригодится...
kabesot
Делаю проект, вот, что получается.....
Нашёл ядро "musbhdrc", на основе его создал FPGA проект, далее в SOPC делаю проект для Ниоса (с различными мостами типа Avalon to АMBA и AMBA to External bus (для подключения IP-core)).
Далее нахожу софт под это ядро....благо есть готовое..."musbxdrcs"...отличный стэк с поддержкой ОТГ, но работает под ОС микроС/ОС-II...сейчас разбираюсь с этой операционкой...как портировать на мой проект Ниоса, да и вообще, что это и с чем его едят....до этого никогда не имел опыта работать с встроенными ОС. Будет, что-то получаться буду отписывать....может кому-то будет полезно....если кто-то подобное делал пишите комментарии...надо ведь разобраться с этим ЮСБ и системами на кристале....смотрю чем больше в лес тем больше дров....да драйвера тоже прийдёться писать , но это уже совсем другая история...
unholy1986
Приветствую Вас. Меня зовут Владимир, мне 22 года. Являюсь студентом Тихоокеанского Государственного Университета по специальности Вычислительные Машины, Комплексы, Системы и Сети кафедры Вычислительная Техника. В данный момент пишу выпускную квалификационную работу - диплом.
Тема диплома связана с работой с отладочной платой ML402 (Xilinix Virtex 4 FPGA) с микросхемой USB3300.
Интересует такой момент, может вы чем поможете. В общем, необходимо выдать по линиям DP и DM микросхемы некоторые USB - пакеты. Выдача организуется на всех скоростях: LS, FS, HS.
В общем, проблемы с выдачей пакетов типа SOF, OUT, ACK и некоторые других - нет. Отлично выдаются все биты по шине USB, посылаемые микросхеме по ULPI.
Проблема состоит в посылке пакетов типа DATA. Для данного пакета поля SYNC, PID, CHECK и EOP генерируются просто идеально. Проблема в том, что самих данных в поле DATA и кода CRC16 могу послать всего 2 байта в сумме. Итого, пакет имеет абсолютно неверную форму.
Все сигналы выставляю строго в соответствии с временными диаграммами на USB3300. Может чем поможете или подскажете??? Я также могу поделиться доступной мне информацией и опытом работы.
Также интересует прием USB - пакета трансивером USB3300. Данной работой я вообще еще не занимался, но придется - также прошу поделиться, чем можете. Заранее спасибо.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.