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

 
 
> ethernet, RGMII, потеря пакетов
bogaev_roman
сообщение Dec 16 2016, 09:04
Сообщение #1


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

Группа: Свой
Сообщений: 1 088
Регистрация: 20-10-09
Из: Химки
Пользователь №: 53 082



Уважаемые форумчане, требуется помощь.
Суть проблемы - теряются UDP пакеты в режиме RGMII. Была связка ПК->marvell 88e1111->борда с arriaII->marvell 88e1111->ПК и, соответственно, гонялись пакеты по обратной связи. Из миллиона отправленных пакетов принимались все без ошибок.
Сделали собственную плату с точно таким же контроллером - из миллиона пакетов стабильно теряются пару сотен, при этом MAC в fpga говорит о том, что все пакеты приняты и отправлены, т.е. потеря происходит где-то между выходом fpga->marvell->ПК. Все временные ограничения на fpga описаны в соответствии с документацией, более того - разводка на выходе фиксировалась и двигалась по фазе опорная частота с мелким шагом в пределах рабочего окна - в результате система либо не работала вообще, либо все те же доли процентов потери пакетов. Разработчик ПП проверил разброс длин сигнальных линий - все в пределах 20ps.
Куда двигаться дальше, ну помимо того, чтобы тыкаться осциллографом в сигналы RGMII?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Ant_m
сообщение Dec 16 2016, 09:36
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 756
Регистрация: 14-08-07
Из: Москва
Пользователь №: 29 765



Для начала сделать простой опыт: передать с ПК на ПК без всяких своих плат. Можете быть очень удивлены, если раньше такого не делали. santa2.gif
Прикрепленное изображение
Прикрепленное изображение
Go to the top of the page
 
+Quote Post
bogaev_roman
сообщение Dec 16 2016, 09:49
Сообщение #3


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

Группа: Свой
Сообщений: 1 088
Регистрация: 20-10-09
Из: Химки
Пользователь №: 53 082



Цитата(Ant_m @ Dec 16 2016, 12:36) *
Для начала сделать простой опыт: передать с ПК на ПК без всяких своих плат. Можете быть очень удивлены, если раньше такого не делали. santa2.gif

Я в курсе, что UDP не гарантирует доставку всех пакетов без ошибок. При этом, со слов программиста, - в режиме точка-точка ошибок быть не должно. Ну и в случае борды от производителя потерь не было вообще ну или я их не дождался. Тут ведь вопрос в чем - во всей этой тестовой системе отличие одно - ПП другая стоит (ПК, кабеля и прочее одинаковое). Соответственно нужно найти место, чтобы определить у кого руки кривые.
Go to the top of the page
 
+Quote Post
Ant_m
сообщение Dec 16 2016, 10:28
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 756
Регистрация: 14-08-07
Из: Москва
Пользователь №: 29 765



Цитата(bogaev_roman @ Dec 16 2016, 12:49) *
Я в курсе, что UDP не гарантирует доставку всех пакетов без ошибок. При этом, со слов программиста, - в режиме точка-точка ошибок быть не должно.

Как много раз я слышал эту песню 1111493779.gif biggrin.gif

Если найдете ответ, сообщите пожалуйста. Мне это крайне интересно, т.к есть такая же проблема.
Пока решение есть только одно - ставить самое быстрое железо для ПК какое есть сейчас.

Цитата
Тут ведь вопрос в чем - во всей этой тестовой системе отличие одно - ПП другая стоит (ПК, кабеля и прочее одинаковое)

Ну так это элементарно. Замыкаете шины mac ядра в плисе, (loopback на уровне mac), в дырку эзернета подтыкаете BER тестер для медного эзернета и тестируете.
Go to the top of the page
 
+Quote Post
bogaev_roman
сообщение Dec 16 2016, 10:46
Сообщение #5


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

Группа: Свой
Сообщений: 1 088
Регистрация: 20-10-09
Из: Химки
Пользователь №: 53 082



Цитата(Ant_m @ Dec 16 2016, 13:28) *
Ну так это элементарно. Замыкаете шины mac ядра в плисе, (loopback на уровне mac), в дырку эзернета подтыкаете BER тестер для медного эзернета и тестируете.

Там вообще можно пустить loopback через сам 88e1111, в обход fpga, только я пока не понял как. Что, кстати, на тестере можно увидеть?
Go to the top of the page
 
+Quote Post
EgorTol
сообщение Dec 16 2016, 11:47
Сообщение #6


Участник
*

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



Цитата(bogaev_roman @ Dec 16 2016, 13:46) *
Там вообще можно пустить loopback через сам 88e1111, в обход fpga, только я пока не понял как. Что, кстати, на тестере можно увидеть?


На тестере можно увидеть например количество битовых ошибок, определить правильно ли подсчитана контрольная сумма, возможно в преамбуле проблемы (это тоже может тестер показать), по крайней мере он может показать, что проблема точно не в FPGA или наоборот. ОС на ПК может не пропускать например пакеты с неправильной CRC (или даже сетевая карта на ПК может такое делать). Ну и тайминги на FPGA, должны обязательно выполняться) У меня была такая же схема ПК->ПЛИС->ПК, только не RGMII, а MII, тоже пакеты терялись, проблемы решить не удалось, забросил, с RGMII проще мне кажется.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- bogaev_roman   ethernet, RGMII, потеря пакетов   Dec 16 2016, 09:04
- - Dima_G   Цитата(bogaev_roman @ Dec 16 2016, 16:04)...   Dec 16 2016, 09:13
|- - bogaev_roman   Цитата(Dima_G @ Dec 16 2016, 12:13) Смотр...   Dec 16 2016, 09:18
||- - Ant_m   Цитата(bogaev_roman @ Dec 16 2016, 13:46)...   Dec 16 2016, 11:46
|- - RobFPGA   Приветствую! Цитата(Ant_m @ Dec 16 2016, ...   Dec 16 2016, 11:35
|- - Ant_m   Цитата(RobFPGA @ Dec 16 2016, 14:35) С эт...   Dec 19 2016, 07:49
|- - RobFPGA   Приветствую! Цитата(Ant_m @ Dec 19 2016, ...   Dec 19 2016, 08:38
- - gin   Добрый день! Проверьте, не изменилась ли прогр...   Dec 16 2016, 10:59
- - Aner   Элементарно. Проверяете на 10-ке, если там все без...   Dec 16 2016, 13:24
- - aabmail   Если важно не потерять ни одного пакета, нужно про...   Dec 16 2016, 14:07
- - FakeDevice   IP/UDP сами реализовывали? Данные те же самые, что...   Dec 19 2016, 06:20
- - bogaev_roman   Проблема решилась заменой кварца 25МГц, тактирующе...   Dec 26 2016, 11:00


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

 


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


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