|
Marvell 88E1111 обрезает пакеты |
|
|
|
Mar 29 2017, 10:06
|
Знающий
   
Группа: Свой
Сообщений: 614
Регистрация: 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 не увеличивается.
|
|
|
|
|
 |
Ответов
|
Mar 31 2017, 12:02
|
Знающий
   
Группа: Свой
Сообщений: 614
Регистрация: 12-06-09
Из: рядом с Москвой
Пользователь №: 50 219

|
Появилась новая информация. 1) Если на ПК в свойствах сетевой карты убрать Автопределение скорости и жёстко поставить 100BASE-TX FullDuplex то пакеты между ПК и платой начинают передаваться без ошибок и обрезанных пакетов нет. При этом в 88E1111, при инициализации в регистрах жестко устанавливаем 100BASE-TX FullDuplex и в случае автоопределения сетевой картой скорости, связь идёт в том же режиме. 2)Сетевую карту ПК замыкали кроссовой перемычкой саму на себя - ошибок нет, пакеты все передаются. Цитата(Wic @ Mar 31 2017, 07:58)  По ощущениям, у вас канал передачи влияет на канал приёма. Тут очень вероятна не правильная разводка платы и/или согласование с магнетикой(разъёмом) По хорошему нужно смотреть разводку платы Вот тут пишут, что Ethernet 100 пролезет везде, и можно ничего не согласовывать и использовать двухслойные и однослойные платы: https://electronix.ru/forum/index.php?showt...p;#entry1488846Но несмотря на это, у нас всё разведено с расчётом на 1Гбит/c короткими диффпарами 100 Ом (длина 20мм) и стоят согласующие резисторы см. схему.
Эскизы прикрепленных изображений
|
|
|
|
|
Apr 3 2017, 04:54
|
Участник

Группа: Свой
Сообщений: 56
Регистрация: 26-07-07
Из: Челябинск
Пользователь №: 29 374

|
Цитата(VladimirB @ Mar 31 2017, 17:02)  Появилась новая информация. 1) Если на ПК в свойствах сетевой карты убрать Автопределение скорости и жёстко поставить 100BASE-TX FullDuplex то пакеты между ПК и платой начинают передаваться без ошибок и обрезанных пакетов нет. При этом в 88E1111, при инициализации в регистрах жестко устанавливаем 100BASE-TX FullDuplex и в случае автоопределения сетевой картой скорости, связь идёт в том же режиме. Возможно, при работе в Half-Duplex режиме не отслеживаются коллизии. В ядре MAC-контроллера из ISE были сигналы tx_collision и tx_retransmit для отслеживания подобных ситуаций. При возникновении коллизии нужно было повторно отправить поврежденный пакет.
|
|
|
|
Сообщений в этой теме
VladimirB Marvell 88E1111 обрезает пакеты Mar 29 2017, 10:06 litv Такой проблемы у нас нет и на 1Гиге.
Похоже что на... Mar 29 2017, 12:19 VladimirB Цитата(litv @ Mar 29 2017, 15:19) Такой п... Mar 29 2017, 13:05 wolfman А что уходит с MACа на PHY смотрели? Mar 29 2017, 12:30 Flood Все ли хорошо на клоке 88e1111? Осциллограммы на X... Mar 29 2017, 13:44 VladimirB Цитата(Flood @ Mar 29 2017, 16:44) Все ли... Mar 29 2017, 13:57  Jury093 Цитата(VladimirB @ Mar 29 2017, 16:57) У ... Apr 3 2017, 10:03 iosifk Цитата(VladimirB @ Mar 29 2017, 14:06) P.... Mar 29 2017, 14:16 eugen_pcad_ru WireShark-ом смотрите? Mar 29 2017, 18:10 VladimirB Цитата(eugen_pcad_ru @ Mar 29 2017, 21:10... Mar 29 2017, 19:46  Vitus Была похожая проблема. У меня резонатор стоял (не ... Mar 30 2017, 09:22  andrewkrot Цитата(VladimirB @ Mar 29 2017, 22:46) Да... Mar 30 2017, 15:12   VladimirB Цитата(andrewkrot @ Mar 30 2017, 18:12) А... Mar 30 2017, 16:20    andrewkrot Цитата(VladimirB @ Mar 30 2017, 19:20) Vi... Mar 30 2017, 16:52 andrewkrot Попробуйте свою прошилку на какой-нибудь плате с д... Mar 29 2017, 19:39  Leka Цитата(VladimirB @ Mar 31 2017, 15:02) Во... Mar 31 2017, 14:03   VladimirB Цитата(Alex_AZ @ Apr 3 2017, 07:54) Возмо... Apr 3 2017, 07:59 andrewkrot Возможно вы начинаете свои манипуляции по передаче... Apr 2 2017, 13:37 VladimirB Цитата(andrewkrot @ Apr 2 2017, 16:37) Во... Apr 2 2017, 21:06 VladimirB Дал другому разработчику FPGA в руки свой старый п... Apr 3 2017, 20:30 Golikov A. Маков всегда было несколько. Бесплатный был до 100... Apr 4 2017, 06:33 Kluwert Уважаемый, 88E1111 уже давно изьюзанная и абсолютн... Apr 12 2017, 08:41 VladimirB Цитата(Kluwert @ Apr 12 2017, 11:41) Уваж... Apr 16 2017, 22:24 Unfog Прошу прощения за оффтоп, но
Цитата(Kluwert ... Apr 17 2017, 06:27 litv С испугу позвонили в avnet - они говорят 88е1111 б... Apr 17 2017, 10:33
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|