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

 
 
 
Reply to this topicStart new topic
> Ethernet на Altera DE1-SoC
vasilia
сообщение Dec 12 2016, 02:04
Сообщение #1





Группа: Участник
Сообщений: 7
Регистрация: 24-06-16
Пользователь №: 92 324



Привет.

Разбираюсь с тем как работает Ethernet и столкнулся с проблемой непонимания что читать. Нашел что в Quartus QSys можно использовать IP Core Triple Speed Ethernet и тем самым получить доступ из FPGA Fabric. Так же нашел что со стороны HPS можно создать baremetal прошивку(приложение?) на основе которой можно будет работать с ethernet. Хотелось бы реализовать ARP -> IP/ICMP чтобы хотя бы видеть работы ping.

Нашел http://kit-e.ru/preview/pre_121_4_14_FPGA_dr.php#lit_4 https://www.altera.com/support/support-reso...-tse-sgdma.html и https://rocketboards.org/foswiki/view/Proje...etDesignExample может быть кто-то может поделиться чем-то готовым иди дать ссылку на более подробную статью? Я совсем не понимаю куда мне копать и что конкретно пытаться реализовать.
Go to the top of the page
 
+Quote Post
BSACPLD
сообщение Dec 12 2016, 07:48
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 371
Регистрация: 24-07-05
Из: Москва
Пользователь №: 7 056



Для начала начните изучать RFC на ARP, ICMP и UDP.
https://tools.ietf.org/html/rfc791
https://tools.ietf.org/html/rfc826
https://tools.ietf.org/html/rfc792
https://www.ietf.org/rfc/rfc768.txt
Затем когда разберетесь со структурой пакета попробуйте собрать следующую систему:
Ethernet PHY <-> IP Ethernet MAC <-> IP CPU <-> IP UART (консоль для отладки)
В качестве первого варианта можно реализовать только ARP и ICMP.
Полностью руками без готового стека sm.gif Так быстрее придет понимание структуры пакетов sm.gif
Для анализа посылаемых/принимаемых пакетов рекомендую использовать Wireshark.
Go to the top of the page
 
+Quote Post
des333
сообщение Dec 12 2016, 08:05
Сообщение #3


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

Группа: Свой
Сообщений: 1 129
Регистрация: 19-07-08
Из: Санкт-Петербург
Пользователь №: 39 079



Цитата(BSACPLD @ Dec 12 2016, 10:48) *
...
В качестве первого варианта можно реализовать только ARP и ICMP.
Полностью руками без готового стека sm.gif
Так быстрее придет понимание структуры пакетов.
....


Да, а чтобы быстрее понять как, например, работает Linux -- нужно сначала написать свою ОС sm.gif


--------------------
Go to the top of the page
 
+Quote Post
Kuzmi4
сообщение Dec 12 2016, 08:14
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 3 304
Регистрация: 13-02-07
Из: 55°55′5″ 37°52′16″
Пользователь №: 25 329



2 vasilia
IP Core Triple Speed Ethernet:
Triple Speed Ethernet Data Path Reference Design
+
Single-Port Triple-Speed Ethernet and On-Board PHY Chip Reference Design

А все вот эти вот ..tools.ietf.org.. - это они вылазят из него cool.gif
Go to the top of the page
 
+Quote Post
Burenkov Sergey
сообщение Dec 12 2016, 08:31
Сообщение #5


Частый гость
**

Группа: Участник
Сообщений: 86
Регистрация: 10-01-13
Пользователь №: 75 145



Цитата(vasilia @ Dec 12 2016, 05:04) *
Привет.

Разбираюсь с тем как работает Ethernet и столкнулся с проблемой непонимания что читать. Нашел что в Quartus QSys можно использовать IP Core Triple Speed Ethernet и тем самым получить доступ из FPGA Fabric. Так же нашел что со стороны HPS можно создать baremetal прошивку(приложение?) на основе которой можно будет работать с ethernet. Хотелось бы реализовать ARP -> IP/ICMP чтобы хотя бы видеть работы ping.

Нашел http://kit-e.ru/preview/pre_121_4_14_FPGA_dr.php#lit_4 https://www.altera.com/support/support-reso...-tse-sgdma.html и https://rocketboards.org/foswiki/view/Proje...etDesignExample может быть кто-то может поделиться чем-то готовым иди дать ссылку на более подробную статью? Я совсем не понимаю куда мне копать и что конкретно пытаться реализовать.


В DE1-SoC Ethernet подключен только на HPS стороне. Соответственно надо делать все на HPS, TSE MAC IP вам не нужен. Ну или по крайней мере может быть я не осилил просто задачу - пытался использовать TSE MAC, подключившись к ногам HPS через LoanIo, ничего вы вышло, квартус ругается что не может поставить туда нужные буферы.
Go to the top of the page
 
+Quote Post
vasilia
сообщение Dec 12 2016, 10:21
Сообщение #6





Группа: Участник
Сообщений: 7
Регистрация: 24-06-16
Пользователь №: 92 324



Цитата(des333 @ Dec 12 2016, 11:05) *
Да, а чтобы быстрее понять как, например, работает Linux -- нужно сначала написать свою ОС sm.gif


В общих чертах я знаю как работает Linux, там есть kgdb/ftrace, сейчас еще DTrace появился. В общем разобраться как работает при желании можно.

Цитата(BSACPLD @ Dec 12 2016, 10:48) *
Для начала начните изучать RFC на ARP, ICMP и UDP.
https://tools.ietf.org/html/rfc791
https://tools.ietf.org/html/rfc826
https://tools.ietf.org/html/rfc792
https://www.ietf.org/rfc/rfc768.txt
Затем когда разберетесь со структурой пакета попробуйте собрать следующую систему:
Ethernet PHY <-> IP Ethernet MAC <-> IP CPU <-> IP UART (консоль для отладки)
В качестве первого варианта можно реализовать только ARP и ICMP.
Полностью руками без готового стека sm.gif Так быстрее придет понимание структуры пакетов sm.gif
Для анализа посылаемых/принимаемых пакетов рекомендую использовать Wireshark.


Про pcap/tcpdump/Wireshark я в курсе. Спасибо. Меня именно хардверная часть интересует sm.gif

Цитата(Kuzmi4 @ Dec 12 2016, 11:14) *
2 vasilia
IP Core Triple Speed Ethernet:
Triple Speed Ethernet Data Path Reference Design
+
Single-Port Triple-Speed Ethernet and On-Board PHY Chip Reference Design

А все вот эти вот ..tools.ietf.org.. - это они вылазят из него cool.gif


Спасибо, почитаю sm.gif

Цитата(Burenkov Sergey @ Dec 12 2016, 11:31) *
В DE1-SoC Ethernet подключен только на HPS стороне. Соответственно надо делать все на HPS, TSE MAC IP вам не нужен. Ну или по крайней мере может быть я не осилил просто задачу - пытался использовать TSE MAC, подключившись к ногам HPS через LoanIo, ничего вы вышло, квартус ругается что не может поставить туда нужные буферы.


http://stackoverflow.com/a/40341399/691960 вот тут чувак говорит что у него работает. Но мне не принципиально будет ли это FPGA или HPS. Код на Си написать не проблема, надо только понять как это все сделать и как залить.
Go to the top of the page
 
+Quote Post
Burenkov Sergey
сообщение Dec 12 2016, 11:36
Сообщение #7


Частый гость
**

Группа: Участник
Сообщений: 86
Регистрация: 10-01-13
Пользователь №: 75 145



Цитата(vasilia @ Dec 12 2016, 13:21) *
http://stackoverflow.com/a/40341399/691960 вот тут чувак говорит что у него работает. Но мне не принципиально будет ли это FPGA или HPS. Код на Си написать не проблема, надо только понять как это все сделать и как залить.

У него там кастомный IP Core, мне нужен был именно TSE MAC. В обычном режиме пины нормально пробрасываются, проверял на лампочке и кнопке sm.gif Если нужна будет информация о том как сконфигурировать pin multiplexing в HPS для этой задачи - пишите, расскажу что знаю

Сообщение отредактировал Burenkov Sergey - Dec 12 2016, 11:38
Go to the top of the page
 
+Quote Post
EgorTol
сообщение Dec 16 2016, 11:58
Сообщение #8


Участник
*

Группа: Участник
Сообщений: 27
Регистрация: 23-01-13
Пользователь №: 75 311



Цитата(vasilia @ Dec 12 2016, 13:21) *
http://stackoverflow.com/a/40341399/691960 вот тут чувак говорит что у него работает.


У чувака то работает, но доступа к DDR буферам у него все равно нет, поэтому 1 Гбит у него не получается и на Triple Speed Ethernet не получится.
Go to the top of the page
 
+Quote Post
vasilia
сообщение Dec 16 2016, 13:33
Сообщение #9





Группа: Участник
Сообщений: 7
Регистрация: 24-06-16
Пользователь №: 92 324



Цитата(Burenkov Sergey @ Dec 12 2016, 14:36) *
У него там кастомный IP Core, мне нужен был именно TSE MAC. В обычном режиме пины нормально пробрасываются, проверял на лампочке и кнопке sm.gif Если нужна будет информация о том как сконфигурировать pin multiplexing в HPS для этой задачи - пишите, расскажу что знаю


Я что-то натыкал по примерам. Случайно чувак из ARM дал контакты чувака из Altera который может помочь с примерами. Жду чего он ответит sm.gif

Цитата(EgorTol @ Dec 16 2016, 14:58) *
У чувака то работает, но доступа к DDR буферам у него все равно нет, поэтому 1 Гбит у него не получается и на Triple Speed Ethernet не получится.


Мне не принципиально будет ли это FPGA или HPS. Мне нужен в любом виде слой выше PHY. Будет ли это готовый (G)MII IP core или придется самому писать значения не имеет. Да и гигабит тоже не принципиален, может быть только VLAN поковырять имеет смысл. У меня это что-то типа хобби sm.gif
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 18th July 2025 - 20:23
Рейтинг@Mail.ru


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