Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

USB device в Lattice FPGA
http://mcu-bg.com/mcu_site/viewtopic.php?f=2&t=15723
Страница 1 от 3

Автор:  Н'бабане Гт'муан'га [ Пон Яну 29, 2018 3:02 pm ]
Заглавие:  USB device в Lattice FPGA

Някой правил ли е такова нещо? Интересува ме какъв ресурс е нужен в фпга за нещо от тоя сорт.
Мерси

Автор:  miro_atc [ Пон Яну 29, 2018 3:12 pm ]
Заглавие:  Re: USB device в Lattice FPGA

Ако можеш намери друго решение... не ти трябва на баир лозе!

USB е супер смотан стандарт и дори големите форми ползват чужди IP-та (говоря за STM32, LPC и т.н.). Ако все пак те интересува имам документацията на такива IP (над 10000 страници ако ти се чете).

Автор:  Н'бабане Гт'муан'га [ Пон Яну 29, 2018 3:33 pm ]
Заглавие:  Re: USB device в Lattice FPGA

miro_atc написа:
Ако можеш намери друго решение... не ти трябва на баир лозе!

USB е супер смотан стандарт и дори големите форми ползват чужди IP-та (говоря за STM32, LPC и т.н.). Ако все пак те интересува имам документацията на такива IP (над 10000 страници ако ти се чете).


Не ми се чете :) Интересува ме само колко голямо фпга трябва да такава цел

Автор:  stefan63 [ Пон Яну 29, 2018 4:35 pm ]
Заглавие:  Re: USB device в Lattice FPGA

Може да ти помогне
FT245R interface :: Overview
USB FT232H Avalon-MM interface :: Overview
www.opencores.org

Автор:  TheHungry [ Пон Яну 29, 2018 11:00 pm ]
Заглавие:  Re: USB device в Lattice FPGA

Н'бабане Гт'муан'га написа:
miro_atc написа:
Ако можеш намери друго решение... не ти трябва на баир лозе!

USB е супер смотан стандарт и дори големите форми ползват чужди IP-та (говоря за STM32, LPC и т.н.). Ако все пак те интересува имам документацията на такива IP (над 10000 страници ако ти се чете).


Не ми се чете :) Интересува ме само колко голямо фпга трябва да такава цел



https://opencores.org/project,usb_host_core

* the design contains 214 flops, 2 RAM cells (RX and TX FIFOs)
* synthesizes to more than the required 48MHz on a Xilinx Spartan 6 LX9 (speed -3)


Пак там има и други може да погледнеш , много зависи какво точно ти трябва .


Аз лично не съм пускал , имам достатъчно сиви коси от останалите неща свързани с FPGA :)

Успех !

Автор:  Bai Ui [ Вто Ное 06, 2018 11:46 pm ]
Заглавие:  Re: USB device в Lattice FPGA

Сложи си един такъв чип https://uk.farnell.com/ftdi/ft600q-b-t/ ... 6?st=ft600 и си готов. Висока скорост, готови драйвери за УЙндоус и Линукс, готови библиотеки за С и Java и най-важното - не ти заминава половината логика на матрицата, където така или иначе трябва да закачиш някакъв физически интерфайс - диференциален трансивър или подобно.

Автор:  MYXATA [ Сря Ное 07, 2018 12:52 am ]
Заглавие:  Re: USB device в Lattice FPGA

miro_atc написа:
Ако можеш намери друго решение... не ти трябва на баир лозе!

USB е супер смотан стандарт и дори големите форми ползват чужди IP-та (говоря за STM32, LPC и т.н.). Ако все пак те интересува имам документацията на такива IP (над 10000 страници ако ти се чете).

Аз предпочитам да си правя каквото мога сам, но тука съм напълно съгласен с Миро, то не само е на баир лозе ами е четвъртит йух в лозето на баира:)
и наистина повечето ФПГА решения имат я фтди(за усб2.0), я сайпрес(за усб 3.0)- даже големите бордове с много скъпите матрици са така - защо и аз не знам :)
иначе конкретно на въпроса - не съм правил. на латице само МИПИ2 съм тествал - и то с един мазен чип на сайпрес мипи<=>усб3

Автор:  Bai Ui [ Сря Ное 07, 2018 2:09 am ]
Заглавие:  Re: USB device в Lattice FPGA

На Сайпръс чипа не съм го пробвал, той е и бая скъп в сравнение с FTDI чипа, освен това сега направих бърза справка - не намерих никакви библиотеки за Java или C, или поне някакви темплейти, а това е важно когато правиш интерфейса на РС-то. Другото, което е - Сайпръса е наличен само в BGA корпус, докато FTDI е QFN, което го прави по-удобен за прототипи. Иначе Lattice са ми любими - в къщи имам един MachX02 кит - най-лесното FPGA нещо с което съм работил някога.

Автор:  stoyanoff [ Сря Ное 07, 2018 11:35 pm ]
Заглавие:  Re: USB device в Lattice FPGA

Не се пиша специалист, но не трябва ли предварително да се знае точният протокол(HID,CDC, PS2 и т. н.), за да се избере правилен експанжън чит?! Лично аз бих избрал някакъв друг контролер ако е нещо завъртяно. Зависи вече какво ще има от другата страна на USB-то. В общия случай не трябва кой знае какъв ресурс. ОБАЧЕ има варианти, когато си трябва...

Автор:  Bai Ui [ Чет Ное 08, 2018 12:42 am ]
Заглавие:  Re: USB device в Lattice FPGA

Здравей stoyanoff, не използваш специфичен клас а комуникираш дирекно с endpoints. Интерфейсът, който този чип поддържа се нарича FIFO, от страната на чипа имаш паралелен интерфейс, чипът има 2 варианта - 16 битов паралелен порт или 32 битов паралелен порт. На паралелният порт може да закачиш процесор или матрица и комуникацията се осъществява по т.н. FIFO протокол. Чипът има няколко специални регистъра, където се определя дълбочината на буферите и др. параметри, обикновенно имаш 3 ендпоинта, 0 е контролен ендпоинт, 1 и 2 са съответно на предаване и приемане, може да осъществяваш дуплексна връзка, т.е. и компютъра и контролера/матрицата могат да пълнят своите буфери едновременно и съответно едновременно да четат буфера на другото устройство. Прочети дейташита на чипа и може да разбереш принципа.

Автор:  stoyanoff [ Чет Ное 08, 2018 9:54 am ]
Заглавие:  Re: USB device в Lattice FPGA

Офффф! Значи! Интерфейсът е хардуера, физическите изводи на чипа(заедно е обработващия модул отзад), за които закачаш комуникационната линия. Протоколът е самият алгоритъм за обмен на данни! Прочети по-внимателно чаршафа. Няма как с готов чип да се постигнат всички модификации на USB протокола. За това производителят ти е предложил множество чипове групирани в различни серии - искаш USB host - отделен чип, искаш USB client - отделен чип, искаш Win/Linux/MAC - отделен чип, искаш Android - отделен чип, искаш HID - отделен чип и т .н.
Друга особеност е, че при изброените ситуации протоколът е стандартен и предполага отсрещното у-во да е стандартно - PC или някакъв телефон. Производителят ти е предоставил драйвер, който си инсталираш и протоколът се "оеднаквява". ОБАЧЕ ако отсрешното у-во е някакъв модул или платка?! Тогава как ще инсталираш драйвера?! Тогава трябва да се модифицира протокола на USB-то спрямо инструкциите, които е дал производителят на другата страна....
Лично бих сложиш един малък контролер с USB, който да може да се препрограмира според случая. Вече каква е точно ситуацията Набабане си знае!

Автор:  ps66 [ Чет Ное 08, 2018 10:14 am ]
Заглавие:  Re: USB device в Lattice FPGA

stoyanoff написа:
Офффф! Значи! Интерфейсът е хардуера, физическите изводи на чипа(заедно е обработващия модул отзад), за които закачаш комуникационната линия. Протоколът е самият алгоритъм за обмен на данни! Прочети по-внимателно чаршафа. Няма как с готов чип да се постигнат всички модификации на USB протокола. За това производителят ти е предложил множество чипове групирани в различни серии - искаш USB host - отделен чип, искаш USB client - отделен чип, искаш Win/Linux/MAC - отделен чип, искаш Android - отделен чип, искаш HID - отделен чип и т .н.
Друга особеност е, че при изброените ситуации протоколът е стандартен и предполага отсрещното у-во да е стандартно - PC или някакъв телефон. Производителят ти е предоставил драйвер, който си инсталираш и протоколът се "оеднаквява". ОБАЧЕ ако отсрешното у-во е някакъв модул или платка?! Тогава как ще инсталираш драйвера?! Тогава трябва да се модифицира протокола на USB-то спрямо инструкциите, които е дал производителят на другата страна....
Лично бих сложиш един малък контролер с USB, който да може да се препрограмира според случая. Вече каква е точно ситуацията Набабане си знае!


мислиш като "пикоборец" !
всички наречени от теб "класове" са софт.слой над ендпоинтите.

Автор:  Bai Ui [ Чет Ное 08, 2018 11:20 am ]
Заглавие:  Re: USB device в Lattice FPGA

stoyanoff, FTDI също си имат драйвери, при това са едни от най разпространените чипове за УСБ комуникация, драйверът е мидълуеъра между софтуера и операционната система и предлага флагове за препълнен буфер, за наличие на пакети в буфера, показалец (pointer) за нивото на буфера, софтуерни прикъсвания при постъпване на информация в буфера и т.н. Когато забодеш едно USB устройство за порта на компютъра, ОС не знае какво е това нещо, без значение дали е device, host и какъвто и да е било, първото нещо, което ОС прави е да прочете ендпоинт 0 (контролния ендпоинт) както съм споменал и преди. Значи първо да уточня какво е ендпоинт - това е абстрактен адрес, към който устройствата се обръщат за да получат някаква информация. Единствено контролният ендпоинт (0) има установен стандарт, когато ОС прочете 'адрес' 0 се сдобива с информация за производителя (Vendor ID) , типа на устроиството (Device ID) и др. полезна информация. От там нататък знаейки производителя и идентификационния номер на устройството Операционната Система проверява за инсталиран драйвер и ако няма такъв го изтегля от някъде и го инсталира. Веднъш инсталиран, управлението на порта се прехвърля към драйвера, който си организира вече регистрите и др. атрибути, които вече споменах. Трябва да попрочетеш малко за УСБ стандарта преди да се хвърляш в спорове с рогата напред, определението "чаршаф", което използва показва че изобщо не си отворил документацията както те посъветвах, иначе щеше да установиш че е само няколко страници. И между другото за момента USB3 интерфейса предлага най-висока скорост на комуникация при това ако се ползва както споменах - с директен достъп до ендпоинтите.

Автор:  stoyanoff [ Чет Ное 08, 2018 11:43 am ]
Заглавие:  Re: USB device в Lattice FPGA

Имам чувството, че нещо си говорим за различни неща. Чипът, който виждам на линка по горе, би следвало да съдържа модул за обработка - вграден софтуерен слой(виж блок схемата)! И освен това има различни модификации в зависимост от случая(това инфо не е в дадения чаршаф, а като се разровиш малко за серията). Нищо не подсказва, че това е само "прозрачен" мост м/у USB и сериен порт. То ако беше чист мост нямаше да има нужда да ти предоставят драйвер, понеже драйвера на USB-стека за контролера отзад щеше да върши работа!

Автор:  ps66 [ Чет Ное 08, 2018 11:50 am ]
Заглавие:  Re: USB device в Lattice FPGA

stoyanoff написа:
Имам чувството, че нещо си говорим за различни неща. Чипът, който виждам на линка по горе, би следвало да съдържа модул за обработка - вграден софтуерен слой(виж блок схемата)! И освен това има различни модификации в зависимост от случая(това инфо не е в дадения чаршаф, а като се разровиш малко за серията). Нищо не подсказва, че това е само "прозрачен" мост м/у USB и сериен порт. То ако беше чист мост нямаше да има нужда да ти предоставят драйвер, понеже драйвера на USB-стека за контролера отзад щеше да върши работа!

явно представите ти за usb се свеждат то "сериен порт", а за микроконтролери до пик!

Страница 1 от 3 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/