Перейти к содержанию
    

ethernet blackfin

Добрый день!

Мучаю отладочную плату с bf537. Не могли бы дать работающий пример для передачи массива данных (желательно - DMA) ethernet без LwIР? Слышала, что так работает быстрее и надежнее. Или с LwIР передачи массива данных.

На сколько обработка ethernet загружает процессор?

Заранее спасибо всем откликнушився.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если вдруг ещё актуально. Обработка ethernet процессор почти не загружает благодаря DMA.

Если используется TCP, основную нагрузку на процессор создаёт вычисление контрольной суммы передаваемых сегментов.

LwIP - это библиотека, в которой реализована поддержка уровней сетевого (IP, ICMP, DHCP) и выше (TCP, UDP).

Ethernet-драйвер нужен вне зависимости от того, используется ли LwIP.

Что касается сетевой подсистемы в целом, выбор конкретной реализации (LwIP, uIP и др.) и её настроек сильно зависит от назначения устройства.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Добрый день!

Мучаю отладочную плату с bf537. Не могли бы дать работающий пример для передачи массива данных (желательно - DMA) ethernet без LwIР? Слышала, что так работает быстрее и надежнее. Или с LwIР передачи массива данных.

На сколько обработка ethernet загружает процессор?

Заранее спасибо всем откликнушився.

Ну барышня вы посмешили. Что ж проще LwIP, ну может разве что uIP? И что значит передача массива данных, вам всё равно какой-то стек IP нужен будет, или вы все уровни от сетевого до физического сами собрались руками писать? Да и наверное хотелось бы, что бы девайс на arp-запросы хотя бы отвечал (пинговался, например)? А загрузка процессора Азернетом :) в прямую зависит от сети к которой он подключён. Если вы в чистой "точка-точка", например, напрямую к компу подключены и на компе отключены всякие идиотские службы типа ДХЦП :) и прочей лабудени, то очень даже не много, буквально единицы процентов. А вот если вы его решили в конторскую сеть включить, или, тем паче, в И-нет, то тут да. Ибо бедному стеку придётся перелопачивать все входящие широковещательные, безадресные и (возможно) групповые пакеты. Кстати, что бы это предотвратить, можно ручками забраться в потроха LwIP (там всё понятно и просто) и вообще отключить обработку всех входящих пакетов. Но тогда устройство станет глухим как тетерев, даже на пинги ответить не сможет :), но слать вам данные будет исправно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну барышня вы посмешили. Что ж проще LwIP, ну может разве что uIP? ...
Сильно навороченный и тормозной стек, по сравнению с тем что мне приходилось потрошить. К тому же нестабильно себя ведет конкретно вешаясь, при средних и высоких загрузках сетевыми пакетами. ICMP отваливается ни стого ни с сего и вообще стек не держит мало мальски среднего теста. Думаю что он написан программистами ради самого процесса программирования в чем и приуспели, соответственно, а про читабельность кода вообще молчу. Если посмотреть википедию, то там пишут что применяется всеми включая Altera, Xilinx и конешно Analog Devices и это понятно - ничейный стек, без всяких гарантий работоспособности как раз подходит для оценочных плат где надо поморгать светодиодами и отправить туда сюда несколько пакетов.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Сильно навороченный и тормозной стек, по сравнению с тем что мне приходилось потрошить. К тому же нестабильно себя ведет конкретно вешаясь, при средних и высоких загрузках сетевыми пакетами. ICMP отваливается ни стого ни с сего и вообще стек не держит мало мальски среднего теста. Думаю что он написан программистами ради самого процесса программирования в чем и приуспели, соответственно, а про читабельность кода вообще молчу. Если посмотреть википедию, то там пишут что применяется всеми включая Altera, Xilinx и конешно Analog Devices и это понятно - ничейный стек, без всяких гарантий работоспособности как раз подходит для оценочных плат где надо поморгать светодиодами и отправить туда сюда несколько пакетов.

А мне пока нравится, ARP и ICMP работают после инициализации стека, фрагментацию пакетов на уровне IP поддерживает. Пришлось, правда, немножко поковыряться, но пока всё работает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Где-то завалялась чудо-операционка eCос с полноценным FreeBSD-стеком. Если еще актуально, могу поискать. Также можно нарыть на просторах интернетов.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...