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

 
 
9 страниц V  « < 5 6 7 8 9 >  
Reply to this topicStart new topic
> Оси, как таковые
murug
сообщение Dec 14 2012, 10:25
Сообщение #91


Участник
*

Группа: Участник
Сообщений: 28
Регистрация: 23-12-10
Пользователь №: 61 816



Сугубо практический вопрос на обсуждаемую тему. Только выбор стоит не "без ОС или с ОС", а "с минимальной ОС а-ля FreeRTOS или с ОС побольше а-ля uClinux".
LPC2478 (ARM7-TDMI, 96 кБ ОЗУ, 512 кБ флеш) + дофига (десятки мегабайт) внешней памяти с возможностью выполнения оттуда кода, как ОЗУ так и флеша.
Прибор - контроллер АСУТП. Из стандартных вещей, для реализации которых хотелось бы использовать какие-то готовые программные модули - работа с графическим индикатором (текст, простейшая графика - диаграммы), USB Host и Slave, работа с файловой системой на флешке. Остальное - сбор дискретных, аналогвых и цифровых данных, расчеты и логика управления - пожалуй никак не связано с выбором ОС.
Требуемое время реакции на некоторые события жесткое и весьма малое, порядка сотен наносекунд. Обеспечит ли какой-нибудь из линуксов такое время?
Я сам раньше ни с какими ОС не работал. Главным образом поэтому и склоняюсь к чему-то совсем простому типа FreeRTOS, в чем легко будет разобраться. Кроме того предполагаю, что возможности линукса избыточны для моей задачи, а вот ресурсов он явно будет потреблять много.
Прав ли я? Или может быть линукс содержит какие-то вкусности, которые в рамках обрисованной задачи компенсируют время, потраченное на его освоение?
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Dec 14 2012, 11:02
Сообщение #92


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Цитата(murug @ Dec 14 2012, 14:25) *
uClinux + LPC2478 + Требуемое время реакции на некоторые события жесткое и весьма малое, порядка сотен наносекунд.
Не реально. У нас на AM3517 600MHz + Linux + PreemptRT время переключения контекста 160мкс.
А у вас частота фактически в 10 раз ниже. Можете поэкстраполировать.


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
juvf
сообщение Dec 14 2012, 12:22
Сообщение #93


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

Группа: Свой
Сообщений: 1 261
Регистрация: 14-05-09
Из: Челябинск
Пользователь №: 49 045



Цитата(demiurg_spb @ Dec 14 2012, 17:02) *
Не реально. У нас на AM3517 600MHz + Linux + PreemptRT время переключения контекста 160мкс.
А у вас частота фактически в 10 раз ниже. Можете поэкстраполировать.

ну а если задачу с быстрой реакцией перенести на уровень ядра? Грубо говоря в обработчик прерывания засунуть быструю реакцию на событие. Тоже линукс не успеет?
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Dec 14 2012, 12:45
Сообщение #94


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Цитата(juvf @ Dec 14 2012, 16:22) *
ну а если задачу с быстрой реакцией перенести на уровень ядра? Грубо говоря в обработчик прерывания засунуть быструю реакцию на событие. Тоже линукс не успеет?
Я не замерял таким образом. Так-что пока не могу вам ответить на вопрос.


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
ReAl
сообщение Dec 14 2012, 13:03
Сообщение #95


Нечётный пользователь.
******

Группа: Свой
Сообщений: 2 033
Регистрация: 26-05-05
Из: Бровари, Україна
Пользователь №: 5 417



Цитата(murug @ Dec 14 2012, 12:25) *
LPC2478
...
порядка сотен наносекунд
Т.е. порядка десятков тактов процессора.
Только если реакция несложная и вся в обработчике прерываний.

Тут неподалёку как-то обсуждалось время переключения задач в scmRTOS на Cortex-M3 (72 MHz STM32F1, 100 MHz LPC17). Ну так эти «сотни наносекунд» идут десятками.


--------------------
Ну, я пошёл… Если что – звоните…
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Dec 14 2012, 14:09
Сообщение #96


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(murug @ Dec 14 2012, 12:25) *
Требуемое время реакции на некоторые события жесткое и весьма малое, порядка сотен наносекунд. Обеспечит ли какой-нибудь из линуксов такое время?
Прав ли я? Или может быть линукс содержит какие-то вкусности, которые в рамках обрисованной задачи компенсируют время, потраченное на его освоение?


Сам микроконтроллер выбран неправильно. Нужно было брать на Cortex-M3 или M4. Там механизм прерываний оптимизирован для малых задержек.
И там легче сделать независимые от оси прерывания.
Вообще независимые от оси прерывания можно сделать практически на любом современном микроконтроллере и в любой оси включая линукс.
Надо только порт оси поправить и все драйвера. Чтобы не было глобальных запрещений прерываний.

Очень быстрый механизм прерываний с поддержкой сервисов оси сделан в свободной RTOS от Keil-а.
https://www.keil.com/demo/eval/rtx.htm
Go to the top of the page
 
+Quote Post
TigerSHARC
сообщение Dec 14 2012, 18:23
Сообщение #97


Знающий
****

Группа: Свой
Сообщений: 688
Регистрация: 4-09-09
Пользователь №: 52 195



Цитата(juvf @ Dec 14 2012, 15:22) *
ну а если задачу с быстрой реакцией перенести на уровень ядра? Грубо говоря в обработчик прерывания засунуть быструю реакцию на событие. Тоже линукс не успеет?

нет не успеет.
читайте http://www.at91.com/linux4sam/bin/view/Linux4SAM/RealTime
Go to the top of the page
 
+Quote Post
murug
сообщение Dec 17 2012, 06:16
Сообщение #98


Участник
*

Группа: Участник
Сообщений: 28
Регистрация: 23-12-10
Пользователь №: 61 816



Ок, вынесение самых критичных по времени действий в обработчики прерываний - снимает вопрос времени реакции.
А возвращаясь к вопросу о вкусностях - для работы с USB и FAT'ом - как обстоят дела с хорошими бесплатными библиотеками под линукс и под FreeRTOS?
И еще, вопрос объема используемой памяти оказался все-таки актуальным. Какого порядка объемы флеша и ОЗУ нужны под ядро линукса и под каждую задачу?
Go to the top of the page
 
+Quote Post
TigerSHARC
сообщение Dec 17 2012, 06:41
Сообщение #99


Знающий
****

Группа: Свой
Сообщений: 688
Регистрация: 4-09-09
Пользователь №: 52 195



Цитата(murug @ Dec 17 2012, 10:16) *
Ок, вынесение самых критичных по времени действий в обработчики прерываний - снимает вопрос времени реакции.


с чего вы это взяли? смотря с какой частотой прерывания поступают. Навскидку: прерывания до 1кГц только можно "ловить вовремя", быстрее - сложнее. А о частотах порядка мегагерц и речи нет. Всё зависит от задачи.

Цитата(murug @ Dec 17 2012, 10:16) *
А возвращаясь к вопросу о вкусностях - для работы с USB и FAT'ом - как обстоят дела с хорошими бесплатными библиотеками под линукс и под FreeRTOS?

В Linux с этим, насколько я знаю, лучше чем у других.

Цитата(murug @ Dec 17 2012, 10:16) *
И еще, вопрос объема используемой памяти оказался все-таки актуальным. Какого порядка объемы флеша и ОЗУ нужны под ядро линукса и под каждую задачу?

тут не подскажу. Ведь ещё ucLinux бывает

P.S. реализация TCP/IP в Linux - одна из самых лучших. всякие Lwip и рядом не валялись. ИМХО

Сообщение отредактировал TigerSHARC - Dec 17 2012, 06:44
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Dec 17 2012, 07:07
Сообщение #100


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Цитата(murug @ Dec 17 2012, 10:16) *
И еще, вопрос объема используемой памяти оказался все-таки актуальным. Какого порядка объемы флеша и ОЗУ нужны под ядро линукса и под каждую задачу?
Всяко бывает. Всё от задачи зависит.


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
Kornelij
сообщение Dec 18 2012, 07:06
Сообщение #101


Участник
*

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



Цитата(murug @ Dec 17 2012, 09:16) *
И еще, вопрос объема используемой памяти оказался все-таки актуальным. Какого порядка объемы флеша и ОЗУ нужны под ядро линукса и под каждую задачу?

Зависит от задачи. Минимум 4МВ флэш и 16МБ RAM но начинать лучше с 8МВ флэш и 64МБ RAM.
Go to the top of the page
 
+Quote Post
TigerSHARC
сообщение Dec 18 2012, 09:59
Сообщение #102


Знающий
****

Группа: Свой
Сообщений: 688
Регистрация: 4-09-09
Пользователь №: 52 195



Цитата(Kornelij @ Dec 18 2012, 10:06) *
но начинать лучше с 8МВ флэш и 64МБ RAM.

это вы с чего взяли? я запускался на AT91+4MBDataFlash+32MB_SDRAM
слабее конфигурацию не пробовал.
Go to the top of the page
 
+Quote Post
demiurg_spb
сообщение Dec 18 2012, 13:11
Сообщение #103


неотягощённый злом
******

Группа: Свой
Сообщений: 2 746
Регистрация: 31-01-08
Из: Санкт-Петербург
Пользователь №: 34 643



Цитата(TigerSHARC @ Dec 18 2012, 13:59) *
слабее конфигурацию не пробовал.
Ничего, другие это проделали:-)
http://dmitry.co/index.php?p=./04.Thoughts...nux%20on%208bit


--------------------
“Будьте внимательны к своим мыслям - они начало поступков” (Лао-Цзы)
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Dec 18 2012, 14:44
Сообщение #104


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(demiurg_spb @ Dec 18 2012, 15:11) *
Ничего, другие это проделали:-)
http://dmitry.co/index.php?p=./04.Thoughts...nux%20on%208bit


Цитата
...uARM is certainly no speed demon. It takes about 2 hours to boot to bash prompt...


Фанатик, что сказать. В Google людям видать больше нечего делать.
Go to the top of the page
 
+Quote Post
SyncLair
сообщение Dec 18 2012, 23:22
Сообщение #105


Местный
***

Группа: Свой
Сообщений: 209
Регистрация: 6-01-12
Пользователь №: 69 197



Цитата(murug @ Dec 14 2012, 14:25) *
Сугубо практический вопрос на обсуждаемую тему.
Или может быть линукс содержит какие-то вкусности, которые в рамках обрисованной задачи компенсируют время, потраченное на его освоение?

TCP/IP -- помоему одна из действительных вкусностей. А так рекомендую Вам поначалу взять этот чип (если уж вы решились именно на этот), а затем перейти на CotexM3 LPC178x он должен идти ножка в ножку с LPC2478. А FAT32 с USB HOST у меня как одельный поток неплохо работает.

CotexM3 действительно более хорош для более быстрой реакции на прерывания чем LPC2478.

Перифирия у чипов схожая. Если хотите возится с переносимостью кода, то см мой проект.


--------------------
Go to the top of the page
 
+Quote Post

9 страниц V  « < 5 6 7 8 9 >
Reply to this topicStart new topic
4 чел. читают эту тему (гостей: 4, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 29th July 2025 - 04:31
Рейтинг@Mail.ru


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