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

 
 
3 страниц V   1 2 3 >  
Reply to this topicStart new topic
> Ethernet на ПЛИС, Tri-Mode Ethernet MAC + marvell 88e1111
Alexey_pashinov
сообщение May 12 2014, 15:02
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 53
Регистрация: 6-03-14
Из: Зеленоград
Пользователь №: 80 823



Здравствуйте, пытаюсь реализовать Ethernet на плис, имеется отладочная плата Xilinx sp605 для отладки. Пока реализовал два нижних уровня: Mac(взял корку xilinx) реализован на плис, для физического уровня на плате стоит PHY - marvell 88e1111. PHY конфигурирую по mdio записывая в 0 регистр: 15 бит (сброс) - 1
8 бит (дуплекс) - 1
6 бит (задает скорость ) - 1 (1000 мб/с)
остальные биты в этом регистре 0.
Далее отсылаю с компа пакет ethernet, чипскопом смотрю что пакет приходит в ядро MAC, в MAC ядре есть блок addr_swap, который этот пакет разворачивает и пакет должен придти обратно на комп. но что происходит, этот пакет застревает на обратном пути на физическом уровне, т.е. я предполагаю что в PHY приемник работает, а передачик нет. кто работал с 88e1111 подскажите, что я упустил при конфигурации

Go to the top of the page
 
+Quote Post
doom13
сообщение May 12 2014, 15:14
Сообщение #2


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

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Если phy подключён к mac по rgmii, то можете попробовать подвигать "клок" относительно данных (регистр 0х14).

Сообщение отредактировал doom13 - May 12 2014, 15:15
Go to the top of the page
 
+Quote Post
Alexey_pashinov
сообщение May 12 2014, 15:53
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 53
Регистрация: 6-03-14
Из: Зеленоград
Пользователь №: 80 823



Цитата(doom13 @ May 12 2014, 19:14) *
Если phy подключён к mac по rgmii, то можете попробовать подвигать "клок" относительно данных (регистр 0х14).


phy подключен к mac по gmii

Сообщение отредактировал Alexey_pashinov - May 12 2014, 15:53
Go to the top of the page
 
+Quote Post
iosifk
сообщение May 12 2014, 18:23
Сообщение #4


Гуру
******

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



Цитата(Alexey_pashinov @ May 12 2014, 19:02) *
Здравствуйте, пытаюсь реализовать Ethernet на плис, имеется отладочная плата Xilinx sp605 для отладки. Пока реализовал два нижних уровня: Mac(взял корку xilinx) реализован на плис, для физического уровня на плате стоит PHY - marvell 88e1111. PHY конфигурирую по mdio записывая в 0 регистр: 15 бит (сброс) - 1
8 бит (дуплекс) - 1
6 бит (задает скорость ) - 1 (1000 мб/с)
остальные биты в этом регистре 0.
Далее отсылаю с компа пакет ethernet, чипскопом смотрю что пакет приходит в ядро MAC, в MAC ядре есть блок addr_swap, который этот пакет разворачивает и пакет должен придти обратно на комп. но что происходит, этот пакет застревает на обратном пути на физическом уровне, т.е. я предполагаю что в PHY приемник работает, а передачик нет. кто работал с 88e1111 подскажите, что я упустил при конфигурации

1. В трансивере, который 10/100 есть 2 вида заглушек. Одна - цифровая (называется режим монитор), а другая - аналоговая. Скорее всего что и в Вашем трансивере это тоже есть. Убираете по MII автосогласование, задаете нижнюю частоту в линии и передаете в дуплексе пакет. Он же и должен приняться... Если правильно стоит адрес или широковещательный пакет... Причем с него и начинайте...
2. Берете кусок кабеля и делаете на нем заглушку. И на него передавайте пакет. Должен встать линк. Когда получите все пакеты, то только тогда переходите на более высокую скорость...
Ну и не забудьте посмотреть "глазок"...
Вот только недавно все эти шаги тут расписывал. Вы бы хоть их прочитали бы...


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
doom13
сообщение May 12 2014, 18:23
Сообщение #5


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

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Для проверки приёмника и передатчика на уровне PHY попробуйте включить режим loopback (external loopback) и побросать пакеты на PHY с компа, но проблема, как мне кажется, в сечении MAC-PHY.
Go to the top of the page
 
+Quote Post
vadimuzzz
сообщение May 13 2014, 03:15
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 2 291
Регистрация: 21-07-05
Пользователь №: 6 988



Цитата(Alexey_pashinov @ May 12 2014, 22:02) *
для физического уровня на плате стоит PHY - marvell 88e1111. PHY конфигурирую по mdio записывая в 0 регистр: 15 бит (сброс) - 1
8 бит (дуплекс) - 1
6 бит (задает скорость ) - 1 (1000 мб/с)
остальные биты в этом регистре 0.

для марвела этого не достаточно. помимо указанного необходимо как минимум перевести phy в режим gmii-copper через регистр 0x20 и отключить приблуды для rgmii в регистре 0x14
Go to the top of the page
 
+Quote Post
Alexey_pashinov
сообщение May 13 2014, 07:47
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 53
Регистрация: 6-03-14
Из: Зеленоград
Пользователь №: 80 823



Проверил еще раз подключение mac к phy, в ucf все описано верно; включил режим loopback, tx также не работает, обратно отправленные мной пакеты присылать не хочет; есть мысли что нужно вручную устанавливать режим 1000base-t (но loopback и без этого вроде должен работать, для него нужно установить 0.15 - 1, 0.14 - 1 и скорость, что я и делаю), может у кого еще какие мысли есть?

Сообщение отредактировал Alexey_pashinov - May 13 2014, 07:54
Go to the top of the page
 
+Quote Post
Jury093
сообщение May 13 2014, 08:02
Сообщение #8


Знающий
****

Группа: Участник
Сообщений: 959
Регистрация: 11-01-06
Из: Санкт-Петербург
Пользователь №: 13 050



Цитата(vadimuzzz @ May 13 2014, 07:15) *
для марвела этого не достаточно. помимо указанного необходимо как минимум перевести phy в режим gmii-copper через регистр 0x20 и отключить приблуды для rgmii в регистре 0x14

у марвела есть пины конфигурации, посредством которых можно выставить нужный режим при включение аппаратно используя комбинации сигналов описанные в мане на камень (раздел 2.4 Hardware configuration)..

2ТС - вы аппаратуру по частям проверяйте..
сначала через MDIO регистры заверните сигнал в сторону меди - и убедитесь, что физика среды исправна
потом аналогично заворот в сторону gmii и добейтесь прохождения пакетов через чип физики
Go to the top of the page
 
+Quote Post
iosifk
сообщение May 13 2014, 08:20
Сообщение #9


Гуру
******

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



Цитата(Alexey_pashinov @ May 13 2014, 11:47) *
Проверил еще раз подключение mac к phy, в ucf все описано верно; включил режим loopback, tx также не работает, обратно отправленные мной пакеты присылать не хочет; есть мысли что нужно вручную устанавливать режим 1000base-t (но loopback и без этого вроде должен работать, для него нужно установить 0.15 - 1, 0.14 - 1 и скорость, что я и делаю), может у кого еще какие мысли есть?

Странно ... Вроде бы Вы читать то должны уметь...
Я же расписал все ходы. Мало? Найдите у меня на сайте статью про 8842, там написано подробнее.
Начните тогда вообще с заглушки внутри ПЛИС. Заведите передачу на прием, подайте частоту вместо трансивера на МАС и проверьте МАС.
Потом принудительно установите НИЖНЮЮ частоту в линии. И ищите линк. Линк есть? И только после установления линка возможна передача.
Ну так давно бы здесь привели всю информацию. Как сконфигурирован трансивер? Модет он вообще в сбросе или ему запрещена передача? Мы что все гадать должны?


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
Corvus
сообщение May 13 2014, 08:30
Сообщение #10


Знающий
****

Группа: Свой
Сообщений: 771
Регистрация: 24-04-08
Из: Зеленоград
Пользователь №: 37 056



Собственно, к SP605 есть куча готовых примеров. Может с них и начать? А может ими и закончить, перепилив под свою задачу. rolleyes.gif Раскройте подробнее задачу "реализовать Ethernet на ПЛИС". Может вам пару байт по UDP переслать, а может ftp и web-интерфейс... Решения будут разные.
Go to the top of the page
 
+Quote Post
iosifk
сообщение May 13 2014, 08:39
Сообщение #11


Гуру
******

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



Цитата(Corvus @ May 13 2014, 12:30) *
Собственно, к SP605 есть куча готовых примеров. Может с них и начать? А может ими и закончить, перепилив под свою задачу. rolleyes.gif Раскройте подробнее задачу "реализовать Ethernet на ПЛИС". Может вам пару байт по UDP переслать, а может ftp и web-интерфейс... Решения будут разные.

В любом случае, дальнейшее относится к софту, а МАС и PHY при этом те же самые.
А здесь видимо "прикол" в том, что "хочу свое, но не знаю как"... При этом и "читать и смотреть где-то лень".... И "типа железо само должно заработать", а "мы - только софт любим"...


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
Alexey_pashinov
сообщение May 13 2014, 08:53
Сообщение #12


Участник
*

Группа: Участник
Сообщений: 53
Регистрация: 6-03-14
Из: Зеленоград
Пользователь №: 80 823



Так, еще раз: линк есть, прием есть, пакет приходит на мак и мак разворачивает его назад и пакет застревает на phy, т.е. не работает tx в phy.
При сбросе или включении phy конфигурируется как представлено на прикрепленном рисунке.

Я конфигурирую только регистр 0: 0.15 - 1, 0.8 - 1, 0.6 - 1, осальные 0.

Сообщение отредактировал Alexey_pashinov - May 13 2014, 08:56
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
iosifk
сообщение May 13 2014, 08:59
Сообщение #13


Гуру
******

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



Цитата(Alexey_pashinov @ May 13 2014, 12:53) *
Так, еще раз: линк есть, прием есть, пакет приходит на мак и мак разворачивает его назад и пакет застревает на phy, т.е. не работает tx в phy.
При сбросе или включении phy конфигурируется как представлено на прикрепленном рисунке.

Я конфигурирую только регистр 0: 0.1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 000000

Тогда еще раз.
Если есть генератор на PHY и он работает, то:
PHY отправляет "фаст-линк-пульсы"... На другой стороне они принимаются и PHY поднимает флаг "линк"... Далее, если PHY разрешен прием и передача, то он ОБЯЗАН передавать и принимать. В нем нет памяти! Он работает сквозняком. В нем вообще ничего застревать не может...
Давайте сюда диаграмму сигналов по передаче:
Клоки, Tx, строб передачи данных, ошибку передачи данных...


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
Alexey_pashinov
сообщение May 13 2014, 09:15
Сообщение #14


Участник
*

Группа: Участник
Сообщений: 53
Регистрация: 6-03-14
Из: Зеленоград
Пользователь №: 80 823



Вот я и сколняюсь к тому что передача в phy запрещена, это кнч странно, но других обяснений происходящему нет, и нужно изучать регистры конфигурации, что я и делаю
Go to the top of the page
 
+Quote Post
Bad0512
сообщение May 13 2014, 09:18
Сообщение #15


Знающий
****

Группа: Свой
Сообщений: 802
Регистрация: 11-05-07
Из: Томск
Пользователь №: 27 650



Возможно ТС генерит некорректный пакет(битый CRC, неправильный dest MAC, wrong endianess, etc.), и этот пакет дропается на уровне MAC компутера.
В PHY есть разные счётчики статистические - рекомендую обратить на них внимание.
Go to the top of the page
 
+Quote Post

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

 


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


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