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

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Marvell 88E1111 обрезает пакеты
VladimirB
сообщение Mar 29 2017, 10:06
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 612
Регистрация: 12-06-09
Из: рядом с Москвой
Пользователь №: 50 219



Добрый день.

Есть самодельная плата с Kintex7 и Marvell 88E1111.
В ПЛИС стоит ядро Xilinx TEMAC из Vivado 16.4.
Принимаемые пакеты с MACa берем по интерфейсу AXIstream закольцовываем и отправляем обратно напрямую, без участия DMA и микроблейзов.

Сеть 100BASE-TX, Full Duplex - 100МБит/c. Светодиоды на Марвеле, соответствующие светятся.

Плату подключаем напрямую к ПК.
С ПК отправляем 50 пакетов по 1514 байт с максимально возможной скоростью.
Назад в ПК приходят все пакеты, но примерно 2-3 штуки из них обрезанные по длине, случайным образом. Т.е. начало пакета правильное (счётчик), потом он резко обрывается.
Косяк на приёме данных с ПК. Смотрели чипскопом обрезанные пакеты идут уже с PHY на MAC. Включили внутри 88E1111 счётчик ошибок CRC, он увеличивается каждый раз на количество битых пакетов. Ещё когда в ПК смотрим обрезанные пакеты Wireshark'oм, то CRC у них правильная, что тоже указывает, что пакет побился на приёме, закольцевался с наружи TEMACa и ушёл обратно уже с новой CRC.

Проблема наблюдается на нескольких одинаковых платах.
Плата многослойка. От PHY до разъёма с магнетиксом где-то 20 мм.
Микросхема PHY 88E1111 вызвала подозрение - перепаял на новую от другого поставщика, с другой датой изготовления - ничего не изменилось.
Пробовали менять кабель, перепаивали резисторы согласующие на плате (вместо 50 ом ставили 75, 100, 120), добавлял конденсаторов по питанию, меняли разъём с магнетиксом: вместо MagJack TRP, аккуратно привертолётили HALO HFJ11-1G01ERL. Пробовали менять ПК на ноутбук. Ничего не меняется вообще - стабильно 2-3 пакета на 50 обрезанные.
С ПК на ноутбук той же программой передается всё нормально.

Питание в норме 2.5В и 1В, цифровое и аналоговое питание 2.5В развязано фильтром. Смотрели осциллографом и питание и сигналы на разъёме Ethernet. Ничего подозрительного не увидели.

Подскажите люди добрые, в чём тут может быть проблема?
Может еррата какая-нибудь есть?

P.S. ещё заметили, что пакеты обрезаются только когда идёт одновременный приём и передача данных. Если данные только принимать и не передавать обратно, то счётчик ошибок CRC в PHY не увеличивается.
Go to the top of the page
 
+Quote Post
litv
сообщение Mar 29 2017, 12:19
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 384
Регистрация: 6-10-04
Из: Воронеж
Пользователь №: 806



Такой проблемы у нас нет и на 1Гиге.
Похоже что на одновременной передаче и приеме помеха перекрестная. Может неправильно кабель езернет зажат sm.gif
http://www.hardware.zp.ua/docs/ether10.htm
или разьем разведен не так или по питанию чтото выскакивает.
Go to the top of the page
 
+Quote Post
wolfman
сообщение Mar 29 2017, 12:30
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 498
Регистрация: 15-06-05
Из: Питер
Пользователь №: 6 032



А что уходит с MACа на PHY смотрели?


--------------------
Россия это даже не страна.
Россия это секрет, завернутый в загадку и укрытый не проницаемой тайной...
Go to the top of the page
 
+Quote Post
VladimirB
сообщение Mar 29 2017, 13:05
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 612
Регистрация: 12-06-09
Из: рядом с Москвой
Пользователь №: 50 219



Цитата(litv @ Mar 29 2017, 15:19) *
Такой проблемы у нас нет и на 1Гиге.
Похоже что на одновременной передаче и приеме помеха перекрестная. Может неправильно кабель езернет зажат sm.gif
http://www.hardware.zp.ua/docs/ether10.htm
или разьем разведен не так или по питанию чтото выскакивает.


Питание смотрели осциллографом с полосой 1ГГц - всё чисто.

Кабеля разные пробовали. Короткие, длинные, заводские, самодельные. Ничего не меняется.

Также осциллографировали сигналы на выводах разъёма RJ45 со встроенным магнетиксом при вставленном кабеле - они есть только на первых двух дифф.парах MDI0, MDI1 - на остальных контактах разъёма пустота.
Если бы бы неправильно включён разъём - то сигналы были бы на других ногах разъёма. Также подпаивал на проводках другой разъём с другой цоколёвкой от HALO - соответственно цоколёвку заново смотрел.
Самое обидное - никакой реакции, было бы хоть какое-нибудь ухудшение или улучшение.

P.S. На соседней ветке форума вчера бурно обсуждали как на двухслойке 100МБит Ethernet работает.
Вроде как преобладало мнение, что 100BASE-TX всё нипочём, и сопротивление волновое можно не согласовывать и длину дорожек по 10см делать.

P.S.2 Вот фрагмент платы с Ethernet.
Прикрепленное изображение
Go to the top of the page
 
+Quote Post
Flood
сообщение Mar 29 2017, 13:44
Сообщение #5


Знающий
****

Группа: Свой
Сообщений: 641
Регистрация: 8-06-06
Пользователь №: 17 871



Все ли хорошо на клоке 88e1111? Осциллограммы на XTAL-ногах чистые? Также можно проверить сам кварц и номиналы пикофарадных конденсаторов.
Go to the top of the page
 
+Quote Post
VladimirB
сообщение Mar 29 2017, 13:57
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 612
Регистрация: 12-06-09
Из: рядом с Москвой
Пользователь №: 50 219



Цитата(Flood @ Mar 29 2017, 16:44) *
Все ли хорошо на клоке 88e1111? Осциллограммы на XTAL-ногах чистые? Также можно проверить сам кварц и номиналы пикофарадных конденсаторов.


У нас кварцевый генератор AU-25.000MBE-T.
Go to the top of the page
 
+Quote Post
iosifk
сообщение Mar 29 2017, 14:16
Сообщение #7


Гуру
******

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



Цитата(VladimirB @ Mar 29 2017, 14:06) *
P.S. ещё заметили, что пакеты обрезаются только когда идёт одновременный приём и передача данных. Если данные только принимать и не передавать обратно, то счётчик ошибок CRC в PHY не увеличивается.

А если на проводах сделать заглушку Tx-Rx, то нормально работает?


--------------------
www.iosifk.narod.ru
Go to the top of the page
 
+Quote Post
eugen_pcad_ru
сообщение Mar 29 2017, 18:10
Сообщение #8


Знающий
****

Группа: Свой
Сообщений: 629
Регистрация: 15-11-07
Пользователь №: 32 353



WireShark-ом смотрите?


--------------------
Правильно сформулированый вопрос содержит в себе половину ответа.
P.S.: Некоторые модераторы в качестве ответа так навязчиво предлагают посетить свой сайт, что иначе как саморекламу такие действия интерпретировать сложно.
Go to the top of the page
 
+Quote Post
andrewkrot
сообщение Mar 29 2017, 19:39
Сообщение #9


Местный
***

Группа: Участник
Сообщений: 297
Регистрация: 11-11-04
Из: Москва
Пользователь №: 1 106



Попробуйте свою прошилку на какой-нибудь плате с другим PHY чипом.
Go to the top of the page
 
+Quote Post
VladimirB
сообщение Mar 29 2017, 19:46
Сообщение #10


Знающий
****

Группа: Свой
Сообщений: 612
Регистрация: 12-06-09
Из: рядом с Москвой
Пользователь №: 50 219



Цитата(eugen_pcad_ru @ Mar 29 2017, 21:10) *
WireShark-ом смотрите?


Да.
Promiscuous mode включён.
ОС Win 7.
Смотрели на разных ПК.

Цитата(andrewkrot @ Mar 29 2017, 22:39) *
Попробуйте свою прошилку на какой-нибудь плате с другим PHY чипом.


Дык там и ПЛИС другая.

Цитата(iosifk @ Mar 29 2017, 17:16) *
А если на проводах сделать заглушку Tx-Rx, то нормально работает?


Можно попробовать завтра диффпары перекрестить, чтобы ПК проверить.
А, чтобы так плату проверить, надо переписывать прошивку, делать генератор и проверятор пакетов.
Go to the top of the page
 
+Quote Post
Vitus
сообщение Mar 30 2017, 09:22
Сообщение #11


Участник
*

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



Была похожая проблема. У меня резонатор стоял (не генератор, как у вас, ну и чип другой, хотя тоже марвеловский). Из-за ошибки в схеме резанатор был подключен к чипу через конденсаторы, которые на GND должны идти. Проходили все пакеты кроме самых длинных. Длинные обрезались как и в вашем случае. Предполагаю, что в моем случае имело место смещение тактовой, в результате которого буфер в PHY переполнялся на длинных пакетах. Попробуйте более точный генератор.
Go to the top of the page
 
+Quote Post
andrewkrot
сообщение Mar 30 2017, 15:12
Сообщение #12


Местный
***

Группа: Участник
Сообщений: 297
Регистрация: 11-11-04
Из: Москва
Пользователь №: 1 106



Цитата(VladimirB @ Mar 29 2017, 22:46) *
Да.
Promiscuous mode включён.
ОС Win 7.
Смотрели на разных ПК.



Дык там и ПЛИС другая.



Можно попробовать завтра диффпары перекрестить, чтобы ПК проверить.
А, чтобы так плату проверить, надо переписывать прошивку, делать генератор и проверятор пакетов.

А что мешает скомпилить для другой плис проект?
Go to the top of the page
 
+Quote Post
VladimirB
сообщение Mar 30 2017, 16:20
Сообщение #13


Знающий
****

Группа: Свой
Сообщений: 612
Регистрация: 12-06-09
Из: рядом с Москвой
Пользователь №: 50 219



Цитата(andrewkrot @ Mar 30 2017, 18:12) *
А что мешает скомпилить для другой плис проект?


Vivado, т.к. оно поддерживает ограниченное кол-во семейств.
Go to the top of the page
 
+Quote Post
andrewkrot
сообщение Mar 30 2017, 16:52
Сообщение #14


Местный
***

Группа: Участник
Сообщений: 297
Регистрация: 11-11-04
Из: Москва
Пользователь №: 1 106



Цитата(VladimirB @ Mar 30 2017, 19:20) *
Vivado, т.к. оно поддерживает ограниченное кол-во семейств.

Понимаю) Проект ведь Ваш тестовый не очень сложный, наверное. В ISE под спартан перепишите. Если на плате есть свободные пины от плис, то туда можно другого физика подцепить. Я на тестовых платах всегда вывожу на отдельный разъем неиспользованные пины плис. Если конечно, место есть. Когда все отлажено можно из платы выбросить, а можно и оставить
Go to the top of the page
 
+Quote Post
Wic
сообщение Mar 31 2017, 04:58
Сообщение #15


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

Группа: Свой
Сообщений: 183
Регистрация: 16-03-08
Из: Новосибирск
Пользователь №: 35 954



По ощущениям, у вас канал передачи влияет на канал приёма. Тут очень вероятна не правильная разводка платы и/или согласование с магнетикой(разъёмом)
По хорошему нужно смотреть разводку платы
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 21st September 2017 - 17:41
Рейтинг@Mail.ru


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