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

многопоточность в VDK

Мне требуется создать сетевое приложение под Блэкфин. Поэтому всплыли потоки. Конечно потоки они в Африки потоки. Но наверное есть нюансы по организации межпоточных очередей, критических секций...

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


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

Мне требуется создать сетевое приложение под Блэкфин. Поэтому всплыли потоки. Конечно потоки они в Африки потоки. Но наверное есть нюансы по организации межпоточных очередей, критических секций...

Обычно гораздо больше нюансов у операционок, а не у процессоров. Касательно процессоров, у блекфина, насколько я знаю, очень большие накладные расходы на переключение контекста.

 

Видел, народ пользуется FreeFTOS с LwIP. Судя по всему, работает.

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


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

в форуме

http://www.blackfin.org/phorum/list.php?15

 

есть хорошие примеры с LWIP+VDK для сетевых приложений.

 

Несмотря на значительные накладные расходы переключения контекста, для мультимедийных задач (обмен большими блоками) скорость обмена получается близкой к 100 Мбит/cек. Пингуется LWIP под VDK малыми пакетами со скоростью до 20000 пакетов/сек. Это много хуже, чем достигают коммуникационные процессоры, но не мало для остальных. Я проверял так же UCOS с его встроеным стеком. Порядок скоростей тот же

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


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

в форуме

http://www.blackfin.org/phorum/list.php?15

 

есть хорошие примеры с LWIP+VDK для сетевых приложений.

 

Несмотря на значительные накладные расходы переключения контекста для мультимедийных задач (обмен большими блоками) скорость обмена получается близкой к 100 Мбит/cек

Насколько большие блоки? По UDP или TCP, были ли фрагментированые блоки, и куда обмен? Туда или сюда? Ну и сколько на остальное оставалось, или TCP съедал все процессорное время?

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


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

у блекфина, насколько я знаю, очень большие накладные расходы на переключение контекста.

Которые компенсируются большой тактовой частотой.

FreeFTOS это что? Где можно скачать?

http://www.freertos.org/

Я расматриваю комплекс VDK и блэкфин.

IMHO, VDK - кака.

Помимо вышеназванной freertos, советую посмотреть на ucOS/II и scmRTOS.

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


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

Насколько большие блоки? По UDP или TCP, были ли фрагментированые блоки, и куда обмен? Туда или сюда? Ну и сколько на остальное оставалось, или TCP съедал все процессорное время?

 

И по UDP и по TCP. По TCP размер блока должен быть больше 1000 байт. По UDP слабже зависит. С фрагментацией.

В обе стороны эхом.

Посмотрите EE-312 у Аналога. Там кое-что есть из конкретных ответов

 

Процессорное время он сильно не съедает, процентов на 30-40.

 

Проблема больше заключается в том, что я не встречал сколько-нибудь нормальной реализации стека для BF, пусть минимального, которая вместе с операционкой ложилась бы во внутреннюю память. Поэтому обязательно нужна

внешняя память на плате. И кеширование этой памяти. И соответствующие тормоза

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


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

Блоки не большие порядка 2к.

Схема простая двустороний обмен. сеть - расчёт-Spi. скорость порядка 2мегабита в секунду

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


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

Блоки не большие порядка 2к.

Схема простая двустороний обмен. сеть - расчёт-Spi. скорость порядка 2мегабита в секунду

 

 

Без проблем по любому. Даже не кешируя память данных.

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


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

А рабочие примеры с сетью без VDK может кто нибудь дать?

 

Cтек с другой ОС?

 

UCOS TCP/IP для BF.

 

Исходник в общем-то доступен. Там не LWIP, там стек является частью операционки UCOS.

Строго говоря UCOS не является свободно распространяемой операционкой и требует роялти.

Но исходники свободно доступны. Можно попользовать некоммерчески ))

Только Вы уверены, что хотите изучать новую операционку? )) Пример-то заработает.

 

Наоборот хороший пример LWIP+VDK есть на blackfin.org от суппорта Аналога. Я копировал его когда-то сюда.

Ищите поиском как LWIP.

У меня надежно работает LWIP+VDK+PPI+SPI на скорости потоков PPI и TCP/IP 30 Мбит/сек. Больше просто не было нужно. К вопросу о VDK и как его нужно готовить. Он большой - это да. Но он по крайней мере поддерживается как-то суппортом AD. Любой другой вариант Вы будете поддерживать сами.

 

IMHO, VDK - кака.

Помимо вышеназванной freertos, советую посмотреть на ucOS/II и scmRTOS.

 

Вы предупреждайте человека, что портировать LWIP на свободные scmRTOS и FreeRTOS ему прийдется самому.

Такое ноу-хау как портирование операционки на новый "нетипичный" процессор иногда кормит людей годами.

Вряд ли кто-то станет делиться

AN_3530.pdf

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


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

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

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

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

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

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

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

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

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

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