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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Интерфейс для общения с ПК
Ink1918
сообщение Feb 26 2018, 08:20
Сообщение #1





Группа: Участник
Сообщений: 11
Регистрация: 11-02-18
Из: Санкт-Петербург
Пользователь №: 101 690



Всем привет! Вопрос общего характера, скорее даже желание получить совет от более опытных людей. Есть тестовая задача, которая не предполагает жестких дедлайнов и требований. Хочется сконектить ПЛИС( либо 3 cyclone, либо 4) с ПК для обмена данными между ними. Какой лучше всего использовать для данной задачи интерфейс? Скорости все такие тоже не совсем минимальные должны быть, что-то среднее.
Go to the top of the page
 
+Quote Post
Lmx2315
сообщение Feb 26 2018, 08:40
Сообщение #2


отэц
*****

Группа: Свой
Сообщений: 1 728
Регистрация: 18-09-05
Из: Москва
Пользователь №: 8 684



100 мбит ethernet


--------------------
b4edbc0f854dda469460aa1aa a5ba2bd36cbe9d4bc8f92179f 8f3fec5d9da7f0
SHA-256
Go to the top of the page
 
+Quote Post
Ink1918
сообщение Feb 26 2018, 09:34
Сообщение #3





Группа: Участник
Сообщений: 11
Регистрация: 11-02-18
Из: Санкт-Петербург
Пользователь №: 101 690



Цитата(Lmx2315 @ Feb 26 2018, 11:40) *
100 мбит ethernet

Вариант с ethernet рассматривается, но насколько реализация сложная, не подскажите? Опыт программирования ПЛИС колоссальным не назовешь, с 0 очень сложно будет Ethernet поднять?
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Feb 26 2018, 10:02
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



Входит изготовление платы в этот процесс или нет?
Если есть правильно сделанная плата с физикой, то вам надо воткнуть в ПЛИС IP мак контроллера (у производителей ПЛИС есть готовые, но полнофункциональные обычно платные). Воткнуть в ПЛИС софт процессор (ниос или микроблайз) и поднять на них ТСР стэк. Примеров куча, если совсем с езернетом дела не имели, то за месяц, другой разберетесь. Если имели то делов на пару недель.

Можно взять какие-либо преобразователи USB-UART это самое простое для организации интерфейса, если не езернет.
Go to the top of the page
 
+Quote Post
el.d
сообщение Feb 26 2018, 10:06
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 42
Регистрация: 2-08-17
Пользователь №: 98 600



Цитата(Golikov A. @ Feb 26 2018, 11:02) *
Входит изготовление платы в этот процесс или нет?
Если есть правильно сделанная плата с физикой, то вам надо воткнуть в ПЛИС IP мак контроллера (у производителей ПЛИС есть готовые, но полнофункциональные обычно платные). Воткнуть в ПЛИС софт процессор (ниос или микроблайз) и поднять на них ТСР стэк. Примеров куча, если совсем с езернетом дела не имели, то за месяц, другой разберетесь. Если имели то делов на пару недель.

Можно взять какие-либо преобразователи USB-UART это самое простое для организации интерфейса, если не езернет.

Так если там ничего серьезного не предвидится, то зачем там TCP если можно обойтись UDP....
Go to the top of the page
 
+Quote Post
Ink1918
сообщение Feb 26 2018, 10:14
Сообщение #6





Группа: Участник
Сообщений: 11
Регистрация: 11-02-18
Из: Санкт-Петербург
Пользователь №: 101 690



Цитата(Golikov A. @ Feb 26 2018, 13:02) *
Входит изготовление платы в этот процесс или нет?
Если есть правильно сделанная плата с физикой, то вам надо воткнуть в ПЛИС IP мак контроллера (у производителей ПЛИС есть готовые, но полнофункциональные обычно платные). Воткнуть в ПЛИС софт процессор (ниос или микроблайз) и поднять на них ТСР стэк. Примеров куча, если совсем с езернетом дела не имели, то за месяц, другой разберетесь. Если имели то делов на пару недель.

Можно взять какие-либо преобразователи USB-UART это самое простое для организации интерфейса, если не езернет.


Изготовление платы в этот процесс входит
Go to the top of the page
 
+Quote Post
_pv
сообщение Feb 26 2018, 10:31
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 2 558
Регистрация: 8-04-05
Из: Nsk
Пользователь №: 3 954



если не хочется вообще что-нибудь делать со стороны ПК, то uart (USB->uart). получится стандартный последовательный порт.
если скорости не хватит можно посмотреть на USB->FIFO, вроде FT232H. со стороны плис даже проще. ну и на этом пути есть возможность взять ft601 и получить пару ГБит.
для тестовой задачи можно вообще обойтись JTAG-UART внутри ПЛИС и подключением к ПК через usb blaster. но там и скорости не очень и со стороны ПК есть небольшой геморрой с общением с этим uartом из своего приложения, а не через терминал квартуса.

ну а с езернетом для совсем простой передачи данных можно и не только без TCP, но и без ниоса обойтись.
http://www.fpga4fun.com/10BASE-T.html
Go to the top of the page
 
+Quote Post
iosifk
сообщение Feb 26 2018, 11:08
Сообщение #8


Гуру
******

Группа: Модераторы
Сообщений: 4 004
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(Ink1918 @ Feb 26 2018, 11:20) *
Хочется сконектить ПЛИС( либо 3 cyclone, либо 4) с ПК для обмена данными между ними. Какой лучше всего использовать для данной задачи интерфейс? Скорости все такие тоже не совсем минимальные должны быть, что-то среднее.

Я предлагаю следующее.
На плате с ПЛИС взять 4 вывода и к ним прицепить стартовый набор с микроконтроллером. И на нем довольно легко получить канал связи с ПК. Хоть USB, хоть Ethernet. А в ПЛИС отправить SPI, причем не 8 бит, а 16 и более. Сделать так, чтобы при передаче ПЛИС отправляла этот же кадр обратно и можно было бы сравнить переданный и принятый...
И уже в ПЛИС сделать разборку кадров будет несложно.
У Ксайлинкса в ISE 14.7 есть образцовый проект, где плата общается с ПК по UART...


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
fertna18
сообщение Feb 26 2018, 11:29
Сообщение #9


Участник
*

Группа: Участник
Сообщений: 33
Регистрация: 24-03-17
Пользователь №: 96 039



1) Если изготовление платы входит в задачу, то зачем ограничиваться одним лишь usb to uart(хотя всё зависит от поставленных задач ). Делайте и ethernet тоже - не купируйте функции и эргономично используйте ресурсы, а то как порой некоторые ставят МК где надо 2 транзистора, а где надо МК - придумывают непонятные извращения с кучей дискретных элементов. Посмотрите на тест бордах для вашей fpga какие банки используются для ethernet и выполняйте разводку. А с протоколом уже потом разберётесь. Для etherneta скорости выше гораздо.
2) В большинстве случаев используется microblaze для обмена информацией и шина axi4 на основе встроенных ядер.
3) Разобраться быстрее конечно с uart - если поверхностно то 2-3 дня, ну а так недельку. С ethernetом - вам уже написали пару месяцев(достаточно сложный стандарт).

PS из даташита:
The AXI UART 16550 core performs parallel-to-serial conversion on characters received from the AXI master and serial-to-parallel conversion on characters received from a modem or serial peripheral. The AXI UART 16550 is capable of transmitting and receiving 8, 7, 6, or 5-bit characters, with 2, 1.5 or 1 stop bits and odd, even or no parity. The AXI UART 16550 can transmit and receive independently.

The Tri-Mode Ethernet MAC (TEMAC) solution comprises the 10/100/1000 Mb/s, 1 Gb/s and 10/100 Mb/s IP cores which are fully-verified designs that support Verilog-HDL and VHDL. In addition, the example design provided with the core is in both Verilog and VHDL.




Цитата(Ink1918 @ Feb 26 2018, 08:20) *
Всем привет! Вопрос общего характера, скорее даже желание получить совет от более опытных людей. Есть тестовая задача, которая не предполагает жестких дедлайнов и требований. Хочется сконектить ПЛИС( либо 3 cyclone, либо 4) с ПК для обмена данными между ними.


У меня просто похожая задачка сейчас, но правда у меня тестовый борд на виртексе 6.
Go to the top of the page
 
+Quote Post
_pv
сообщение Feb 26 2018, 14:27
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 2 558
Регистрация: 8-04-05
Из: Nsk
Пользователь №: 3 954



Цитата(iosifk @ Feb 26 2018, 17:08) *
На плате с ПЛИС взять 4 вывода и к ним прицепить стартовый набор с микроконтроллером. И на нем довольно легко получить канал связи с ПК. Хоть USB, хоть Ethernet. А в ПЛИС отправить SPI, причем не 8 бит, а 16 и более.

можно конечно что угодно использовать для преобразования интерфейсов для связи с ПК, https://marsohod.org/projects/m2rpi-project...61-ma2rpi-first

но вот ft232h через усб может прикидываться и SPI мастером/слэйвом, i2c, уартом, параллельным фифо или шиной, без каких-либо дополнительных телодвижений.
Go to the top of the page
 
+Quote Post
Maverick
сообщение Feb 26 2018, 14:44
Сообщение #11


я только учусь...
******

Группа: Модераторы
Сообщений: 3 444
Регистрация: 29-01-07
Из: Украина
Пользователь №: 24 839



FT2232 (режим Синхронного фифо до 35МБ/с) - рекомендую для старта (board) -- USB 2.0
или
FT601 - тоже режим Синхронного фифо до 5 гигабит/с -- USB 3.0


--------------------
If it doesn't work in simulation, it won't work on the board.

"Ты живешь в своих поступках, а не в теле. Ты — это твои действия, и нет другого тебя" Антуан де Сент-Экзюпери повесть "Маленький принц"
Go to the top of the page
 
+Quote Post
yes
сообщение Feb 26 2018, 16:01
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 2 184
Регистрация: 23-12-04
Пользователь №: 1 640



я тоже за FTDI в режиме FIFO

для FT601 есть мезонинные платы под Альтеру/Ксайлинкс - то есть если ПЛИС тоже на каком-то готовом наборе типа DE* от Terasic - то и паять ничего не надо, воткнул и готово sm.gif
Go to the top of the page
 
+Quote Post
Leka
сообщение Feb 26 2018, 18:22
Сообщение #13


Профессионал
*****

Группа: Участник
Сообщений: 1 066
Регистрация: 30-09-05
Пользователь №: 9 118



Для 100Мбит Ethernet от ПЛИС к ПК - достаточно 1 витую пару с последовательными резисторами, 2 ноги ПЛИС, и все (даже трансформатор не обязателен). Обратный канал немного сложнее (больше ног и резисторов). Но открытых проектов не видел (сам не выкладывал).

Сообщение отредактировал Leka - Feb 26 2018, 18:22
Go to the top of the page
 
+Quote Post
AVR
сообщение Feb 27 2018, 08:31
Сообщение #14


фанат Linux'а
*****

Группа: Свой
Сообщений: 1 340
Регистрация: 23-10-05
Из: SPB.RU
Пользователь №: 10 008



Цитата(_pv @ Feb 26 2018, 13:31) *
ну а с езернетом для совсем простой передачи данных можно и не только без TCP, но и без ниоса обойтись.
http://www.fpga4fun.com/10BASE-T.html

Это плохой вариант. А вот хороший вариант - можно легко присобачить Ethernet платку (от STM32 Discovery) прямо к ПЛИС и будет 100 Мбит/с сетка. И да, взять тупо UDP - получится не сложнее чем UART.

Но когда я только начинал с этим - была куча вопросов. Сейчас эти вопросы можно задать мне.


--------------------
Go to the top of the page
 
+Quote Post
iosifk
сообщение Feb 27 2018, 08:44
Сообщение #15


Гуру
******

Группа: Модераторы
Сообщений: 4 004
Регистрация: 8-09-05
Из: спб
Пользователь №: 8 369



Цитата(_pv @ Feb 26 2018, 17:27) *
можно конечно что угодно использовать для преобразования интерфейсов для связи с ПК, https://marsohod.org/projects/m2rpi-project...61-ma2rpi-first

но вот ft232h через усб может прикидываться и SPI мастером/слэйвом, i2c, уартом, параллельным фифо или шиной, без каких-либо дополнительных телодвижений.

Вот только прикол в том, что при 8-ми битовом кадре придется делать байт-стаффинг и в ПЛИС заниматься поддержкой протокола. А при 16-ти битовом кадре все можно уложить в этот кадр... И парсить его будет гораздо проще..


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 19th September 2018 - 09:52
Рейтинг@Mail.ru


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