|
LDM-XC3SxxxE-PQ208 (XC3S500) и USB3300 USB HS Board |
|
|
|
Jul 4 2015, 15:29
|

Участник

Группа: Участник
Сообщений: 68
Регистрация: 2-05-15
Из: Смоленск
Пользователь №: 86 484

|
вот и есть необходимость подавать данные с плис на компьютер через этот USB 3300. Вменяемого русского описания самой платы не нашел. Про чип USB 3300-EZK, на котором она построена прочитал-разобрался. Мне нужно понять, куда и как (к каким ногам плис и напрямую или через резисторы-конденсаторы) мне прилепить USB. Короче необходимо научить компьютер видеть то, что выдает ПЛИС. Драйвера на эту приблуду имеются стандартные. Данные будут в виде потока 16-ти или 8-ми битных чисел. Прикрепил схему USB. Цитата(Александр77 @ Jul 4 2015, 18:29)  Если с плис раньше не работали, то до проекта далековато - надо тренироваться на кошках, мышках, крокодильчиках. Т.е. научиться понимать чего хочется и как этого достичь.  На мышках уже потренеровался, а на крокодильчиках попутно будем ездить. Ща рисую схему конечного устройства на бумаге. Профессору покажу - если одобрит - буду в ИЗЕ ее рисовать. Скажу так: на вход ПЛИС будет поступать несколько 16-ти битных сигналов (через мультиплексор или на прямую), в ПЛИСине будет происходить над ними обработка и нужно на комп выдать результат и записать в текстовый файл. Задача вроде такая.
|
|
|
|
|
Jul 4 2015, 16:14
|
Знающий
   
Группа: Свой
Сообщений: 608
Регистрация: 10-07-09
Из: Дубна, Московская область
Пользователь №: 51 111

|
По поводу документации на плату, может ее у производителя запросить? Насколько понимаю, плата представляет собой поле с контактами плисины. Если это так, то можно и почерпать из даташитаПодключать платку USB можно "почти к любым" выводам (на представленном Вами пдфе сигналы data0...data7, stp, nxt, dir во всяком случае. clkout (если это выход USB3300) - лучше подцепить к тактовому выводу плисины)
|
|
|
|
|
Jul 4 2015, 16:41
|

Участник

Группа: Участник
Сообщений: 68
Регистрация: 2-05-15
Из: Смоленск
Пользователь №: 86 484

|
Цитата(Александр77 @ Jul 4 2015, 21:14)  По поводу документации на плату, может ее у производителя запросить? Насколько понимаю, плата представляет собой поле с контактами плисины. Если это так, то можно и почерпать из даташитаПодключать платку USB можно "почти к любым" выводам (на представленном Вами пдфе сигналы data0...data7, stp, nxt, dir во всяком случае. clkout (если это выход USB3300) - лучше подцепить к тактовому выводу плисины) На ПЛИСину докумнтация есть. Я и хотел разобраться, какие ноги можно подключать, любые или нет. А вот пр USB-ишник мне не совсем понятны названия этих сигналов. И ног у нее 20!!! Что 8 сигнальных ног я понял. А как ее запитать? Для чего остальные ноги? могут ли остаться висячие ноги? Как организовать кодирование инфорации? То есть как 16-ти битовые числа передать на восемь входных ног, передать через USB на компьютер и записать их в текстовый файл? Где почитать? У кого спросить?
|
|
|
|
|
Jul 4 2015, 17:37
|
Местный
  
Группа: Участник
Сообщений: 221
Регистрация: 6-07-12
Пользователь №: 72 653

|
Цитата(aleshanoff @ Jul 4 2015, 18:29)  Драйвера на эту приблуду имеются стандартные. Что за драйвера такие интересные? Не поделитесь? По-моему вы не понимаете назначение и возможности этой микросхемы. Она может быть любым устройством или хостом. Цитата(aleshanoff @ Jul 4 2015, 19:41)  ...Как организовать кодирование инфорации? То есть как 16-ти битовые числа передать на восемь входных ног, передать через USB на компьютер и записать их в текстовый файл? Где почитать? У кого спросить? Это микросхема физического уровня USB (проще - PHY). Рулится по ULPI (даташит в сети есть). Чтобы передать данные на компьютер, нужно организовать работу PHY в режиме периферии USB, по сути полностью написать на ПЛИС остальные уровни: пакетный, endpoint. Нужно знать принцип работы USB на всех уровнях, чтобы что-то завелось. Проще будет взять более "умный" контроллер USB, например что-нть от Cypress или FTDI. Имхо для ваших задач этот PHY - пушка по воробьям, если, конечно, не в методических целях.
Сообщение отредактировал Inanity - Jul 4 2015, 17:45
|
|
|
|
|
Jul 4 2015, 17:56
|

Участник

Группа: Участник
Сообщений: 68
Регистрация: 2-05-15
Из: Смоленск
Пользователь №: 86 484

|
драйвер на USB драйвер для USB 2 Цитата(Inanity @ Jul 4 2015, 22:37)  Это микросхема физического уровня USB (проще - PHY). Рулится по ULPI (даташит в сети есть). Чтобы передать данные на компьютер, нужно организовать работу PHY в режиме периферии USB, по сути полностью написать на ПЛИС остальные уровни: пакетный, endpoint. Нужно знать принцип работы USB на всех уровнях, чтобы что-то завелось. Проще будет взять более "умный" контроллер USB, например что-нть от Cypress или FTDI. Имхо для ваших задач этот PHY - пушка по воробьям, если, конечно, не в методических целях. А где об этих уровнях прочитать? И чем "умнее" контроллеры, предложенные вами? Цитата(Александр77 @ Jul 4 2015, 22:45)  В плис реализуется вся логика приема и передачи. Нечто подобное делал на FT, в итоге внутри плис появились буфера для принимаемых и передаваемых потоков. Плюс формирователь пакетов. Набор конечных автоматов для рулежки. Такое ощущение, что я с другой планеты. Очень плохо понимаю, что твоя моя говорить)))) Где б об этом почитать? И много ли ресурсов занимает логика приема-передачи? Желание осилить этот вопрос - огромное, стимул подходящий тоже имеется, и глаза горят и руки на месте - а вголове нет ниче))) Чел, который в этом хоть немного шарит, сейчас в отпуске. Профессор в жлезках не силен. Объяснить, направить некому - печалька короче...
Сообщение отредактировал aleshanoff - Jul 4 2015, 17:59
|
|
|
|
|
Jul 4 2015, 18:07
|
Местный
  
Группа: Участник
Сообщений: 221
Регистрация: 6-07-12
Пользователь №: 72 653

|
Цитата(aleshanoff @ Jul 4 2015, 20:56)  А где об этих уровнях прочитать? И чем "умнее" контроллеры, предложенные вами? Такое ощущение, что я с другой планеты. Очень плохо понимаю, что твоя моя говорить)))) Где б об этом почитать? И много ли ресурсов занимает логика приема-передачи? Об этом почитать можно на usb.org. Качайте спецификацию USB и читайте. Умные контроллеры, например любой из этих: http://www.ftdichip.com/FTProducts.htmВ них уже всё сделано до уровня endpoint. Есть буферы, чтобы принять и отправить данные. Ваш PHY всего этого не может, всё это нужно реализовать на логике FPGA. Всё, что он может - кодировать\декодировать данные в NRZI и обратно, отдавать состоянии линии (SE0, SE1, K, J)+ ещё некоторые мелочи, но не более. Такой PHY используется когда надо сделать действительно нестандартное устройство или хост USB. Для решения задачи простой передачи данных лучше использовать более высокоуровневые контроллеры.
|
|
|
|
|
Jul 4 2015, 18:10
|

Участник

Группа: Участник
Сообщений: 68
Регистрация: 2-05-15
Из: Смоленск
Пользователь №: 86 484

|
Цитата(Inanity @ Jul 4 2015, 23:07)  Об этом почитать можно на usb.org. Качайте спецификацию USB и читайте. Умные контроллеры, например любой из этих: http://www.ftdichip.com/FTProducts.htmВ них уже всё сделано до уровня endpoint. Есть буферы, чтобы принять и отправить данные. Ваш PHY всего этого не может, всё это нужно реализовать на логике FPGA. Всё, что он может - кодировать\декодировать данные в NRZI и обратно, отдавать состоянии линии (SE0, SE1, K, J)+ ещё некоторые мелочи, но не более. Такой PHY используется когда надо сделать действительно нестандартное устройство или хост USB. Для решения задачи простой передачи данных лучше использовать более высокоуровневые контроллеры. Спасибо, только что значит спецификация USB. И для какого USB ее читать? и есть источники информации на русском?
Сообщение отредактировал aleshanoff - Jul 4 2015, 18:13
|
|
|
|
|
Jul 4 2015, 19:06
|
Знающий
   
Группа: Свой
Сообщений: 608
Регистрация: 10-07-09
Из: Дубна, Московская область
Пользователь №: 51 111

|
Цитата(aleshanoff @ Jul 4 2015, 21:56)  И чем "умнее" контроллеры, предложенные вами? Контроллеры от FTDI умнее тем, что в них уже имеется парочка мелкой памяти (несколько сотен байт) для того чтобы хранить данные отправляемые от железа в ПК и наоборот. С контроллеров на железо подаются сигналы-признаки наличия/отсутствия данных и возможности заполнения той самой мелкой памяти для передачи потока. Цитата(aleshanoff @ Jul 4 2015, 21:56)  И много ли ресурсов занимает логика приема-передачи? Сейчас по памяти могу только прикинуть: делал 8кБ FIFO для передачи потоков, 128Б FIFO для приема команд. Около 1000 ЛЭ (циклон2) ушло на формирователь пакетов, автоматы, счетчики адресов, синхронизаторы, туда же 256Б двухпортовки.
|
|
|
|
|
Jul 5 2015, 06:26
|
Знающий
   
Группа: Свой
Сообщений: 608
Регистрация: 10-07-09
Из: Дубна, Московская область
Пользователь №: 51 111

|
Цитата(aleshanoff @ Jul 4 2015, 23:21)  Но какой чип Вы именно посоветуете? Я посмотрел FT120 - USB full-speed device controller. Но у него аж 28 ног. может есть что попроще? Если "простота" заключается в числе выводов, то проще наверное не найти. По той причине, что мне не ведомы требования к обеспечению скорости, я бы рекомендовал более сложную и универсальную микросхему, что-нибудь из FT2232H/FT4232H. У них большее количество выводов, но в случае, когда не хватит скорости простого UART-USB, можно будет быстро перейти в синхронный режим и гонять данные на более высокой скорости.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|