Миландр

Ключевым подразделением нашей компании является Центр Проектирования интегральных микросхем
Текущее время: 2018-дек-14 08:21

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: UDP, ARP и ping для 1986BE3 в режиме FIFO
СообщениеДобавлено: 2017-мар-14 12:14 
Не в сети
Аватара пользователя

Зарегистрирован: 2014-дек-09 15:26
Сообщения: 65
Реализация UDP, ARP и ping для 1986BE3 (ревизия начиная с 1436) в режиме FIFO контроллера Ethernet, с примером для GNU ARM Eclipse.

1986BE3_UDP

По мотивам: Подключение микроконтроллера к локальной сети: UDP-сервер.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: UDP, ARP и ping для 1986BE3 в режиме FIFO
СообщениеДобавлено: 2017-мар-14 13:48 
Не в сети

Зарегистрирован: 2009-сен-21 12:39
Сообщения: 483
SWAP16 можно определить через CMSIS-овскую __REV16, что, возможно, чуть быстрее :).
Если по делу, то:
1 Как боролись с errata "0021 Ограничения при работе буферов Ethernet контроллера в автоматическом режиме и режиме FIFO". Её, вроде, поправили только с 6-й ревизии (с даты 1645).
2 Тестировали ли длительно в составе какой-нибудь сети? В процессе портирования uIP на ВЕ1 пришлось с бубном в руках подбирать параметры настройки Eth модуля, иначе на подключенном в офисную сеть макете связь падала с периодичностью 4...8 часов.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: UDP, ARP и ping для 1986BE3 в режиме FIFO
СообщениеДобавлено: 2017-мар-14 16:09 
Не в сети
Аватара пользователя

Зарегистрирован: 2014-дек-09 15:26
Сообщения: 65
ЧумА писал(а):
SWAP16 можно определить через CMSIS-овскую __REV16, что, возможно, чуть быстрее :).

Думал об этом... Для runtime быстрее __REV16 и __REV, но если аргумент - константа, то макрос может быть вычислен в compile time (если включена оптимизация))
Нужно будет реализовать оба варианта swap...

ЧумА писал(а):
1 Как боролись с errata "0021 Ограничения при работе буферов Ethernet контроллера в автоматическом режиме и режиме FIFO". Её, вроде, поправили только с 6-й ревизии (с даты 1645).

В errata от 25/11/15 для 1986ВЕ3 эта ошибка исправлена именно с даты 1436.

ЧумА писал(а):
2 Тестировали ли длительно в составе какой-нибудь сети? В процессе портирования uIP на ВЕ1 пришлось с бубном в руках подбирать параметры настройки Eth модуля, иначе на подключенном в офисную сеть макете связь падала с периодичностью 4...8 часов.

Тестирую... Офисная сеть, обмен между интерфейсами, плюс 2 внешних пинга, пока не падала... ждем))


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: UDP, ARP и ping для 1986BE3 в режиме FIFO
СообщениеДобавлено: 2017-мар-14 17:47 
Не в сети
Аватара пользователя

Зарегистрирован: 2014-дек-09 15:26
Сообщения: 65
Хотя, если аргумент - константа, то проще перевернуть вручную...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: UDP, ARP и ping для 1986BE3 в режиме FIFO
СообщениеДобавлено: 2017-мар-14 17:51 
Не в сети

Зарегистрирован: 2009-сен-21 12:39
Сообщения: 483
Спасибо!
Я тестировал воткнув в хаб (именно в хаб) и гонял по сети через хаб копированием большие (1,5 Гига) файлы. За десяток "перегонов" падало. Просто в сети через хаб могло и сутками стоять. "Падение" выглядело как неспособность Eth к приему, т.е. никаких ошибок, но не принимает :(


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: UDP, ARP и ping для 1986BE3 в режиме FIFO
СообщениеДобавлено: 2017-мар-15 12:05 
Не в сети
Аватара пользователя

Зарегистрирован: 2014-дек-09 15:26
Сообщения: 65
ЧумА писал(а):
Спасибо!
Я тестировал воткнув в хаб (именно в хаб) и гонял по сети через хаб копированием большие (1,5 Гига) файлы. За десяток "перегонов" падало. Просто в сети через хаб могло и сутками стоять. "Падение" выглядело как неспособность Eth к приему, т.е. никаких ошибок, но не принимает :(

Вам большое спасибо за полезные советы. Буду пробовать нагружать сеть.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: UDP, ARP и ping для 1986BE3 в режиме FIFO
СообщениеДобавлено: 2017-мар-15 16:48 
Не в сети
Аватара пользователя

Зарегистрирован: 2014-дек-09 15:26
Сообщения: 65
Первые результаты тестирования

Оба интерфейса Ethernet, через Hub, подключены к офисной сети.
Интерфейсы обмениваются UDP сообщениями (1066 байт, 100 в сек).
Выполняется ping обоих интерфейсов (1024 байт).
В это же время, через Hub идет трафик (копируются файлы).

Итого:
Трафик через Hub - 50GB.
Каждый интерфейс передал ~1 млн. сообщений, принял ~60%.
Индикатор коллизий на Hub горит не мигая)) Ping нестабилен.

Оба пока живы...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: UDP, ARP и ping для 1986BE3 в режиме FIFO
СообщениеДобавлено: 2017-мар-15 17:49 
Не в сети

Зарегистрирован: 2009-сен-21 12:39
Сообщения: 483
Что не может не радовать :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: UDP, ARP и ping для 1986BE3 в режиме FIFO
СообщениеДобавлено: 2017-мар-15 18:13 
Не в сети
Аватара пользователя

Зарегистрирован: 2014-дек-09 15:26
Сообщения: 65
Пока не радуюсь из суеверных соображений))

UPD
В качестве нагрузки, добавил 2 потока Nping каждый 200 пак./сек.
Работают...


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 9 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB