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

 
 
> За какое время у TNKernel выполняется, "interprocess program control flow transfer"?
spf
сообщение Apr 5 2007, 15:16
Сообщение #1


Странник
****

Группа: Свой
Сообщений: 766
Регистрация: 29-08-05
Из: Екатеринбург
Пользователь №: 8 051



Имеются такие данные?

Зажгли лампочку и передаем управление ожидающей задаче, лампочку гасит ожидающая, как получит управление. Какое время будет гореть лампочка?

На известной частоте ядра и в одном из режимов.


--------------------
"Как много есть на свете вещей, которые мне не нужны!" Сократ
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
VslavX
сообщение Mar 15 2010, 15:23
Сообщение #2


embarrassed systems engineer
*****

Группа: Свой
Сообщений: 1 083
Регистрация: 24-10-05
Из: Осокорки
Пользователь №: 10 038



Майка становилась все чернее и чернее smile.gif
Написан порт TNKernel на Cortex-M3. Надо сказать, что архитектура CM3 оказалась безумно красивой и на нее идеально легла упомянутая ОС - я получил немалое удовольствие при портировании.
В итоге на LPC1768, 100МГц, FlashWS = 4, результаты такие:
- 4.86uS - включены все проверки и assert-ы
- 3.94uS - отключены проверки и assert-ы, оставлен только потоковый профайлер (меряет процессорное время для задачи в тактах ядра)
- 2.87uS - отключены все проверки, assert-ы и профайлер
- 2.83uS - то же самое, но обработчик переключения контекста выравнен на 16 байт (как раз 4 100МГц такта выигралось)
В-общем, LPC17xx вещь очень неплохая, но LPC23xx по скорости не так уж превосходит. Оно бы взлетело - да флеш не дает.

Upd: скомпилировал с оптимизацей по скорости - получил 2.50uS, размер теста стал ~9300 байт вместо ~7900.
Go to the top of the page
 
+Quote Post
Alex B._
сообщение Mar 16 2010, 20:20
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 943
Регистрация: 6-07-04
Из: Санкт-Петербург
Пользователь №: 274



Цитата(VslavX @ Mar 15 2010, 18:23) *
Написан порт TNKernel на Cortex-M3.

Чем ваш порт отличается от того, что лежит на родном сайте?
Go to the top of the page
 
+Quote Post
VslavX
сообщение Mar 16 2010, 21:49
Сообщение #4


embarrassed systems engineer
*****

Группа: Свой
Сообщений: 1 083
Регистрация: 24-10-05
Из: Осокорки
Пользователь №: 10 038



Цитата(Alex B._ @ Mar 16 2010, 22:20) *
Чем ваш порт отличается от того, что лежит на родном сайте?

Три года назад родная версия (2.3 на тот момент) была "доработана напильником" под собственные нужды. При этом она стала работать примерно в два раза быстрее (тут же в топике хроника событий) и несколько утратила совместимость с "официальными" портами.

Оптимизировать в официальной версии можно достаточно много, ну а идеология кортексовского порта та же самая - PendSV на переключение контекста - в самом деле, трудно предложить что-нибудь лучше для C-M3. Ну и частнопортовые оптимизации - запрос на переключение контекста ставится не в каждом прерывании, а именно в тот момент когда нужно переключение контекста - в других же портах приходится явно проверять при выходе из прерывания на предмет переключения. Флажка tn_context_switch_request как такового у меня вообще нет - выкинут еще три года назад при оптимизации, да и сам обработчик PendSV занимает 16 инструкций вместо 22 родного (можно было бы и 15 и минус один ldr=, но IAR 5.xx перестал нормально выражения с внешними символами поддерживать)
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- spf   За какое время у TNKernel выполняется   Apr 5 2007, 15:16
- - DASM   520 тактов проца от set_event до wait_event (управ...   Apr 5 2007, 17:50
- - VslavX   Цитата(spf @ Apr 5 2007, 15:16) Имеются т...   Apr 5 2007, 18:06
|- - spf   Спасибо за исчерпывающий ответ. В Thumb mode будет...   Apr 6 2007, 06:03
|- - VslavX   Цитата(spf @ Apr 6 2007, 06:03) Было бы и...   Apr 6 2007, 10:10
- - DASM   ну теже самый числа - это радует. У меня LPC48, вр...   Apr 5 2007, 18:11
- - VslavX   Мне тут в привате еще scmRTOS и FreeRTOS посоветов...   Apr 6 2007, 17:37
|- - zltigo   Цитата(VslavX @ Apr 6 2007, 16:37) Мне ту...   Apr 6 2007, 18:22
|- - VslavX   Цитата(zltigo @ Apr 6 2007, 18:22) На Fre...   Apr 6 2007, 18:41
|- - zltigo   Цитата(VslavX @ Apr 6 2007, 17:41) по scm...   Apr 6 2007, 18:58
|- - spf   Цитата(VslavX @ Apr 6 2007, 21:41) А сове...   Apr 6 2007, 20:40
|- - VslavX   Цитата(spf @ Apr 6 2007, 20:40) 3 - в ком...   Apr 6 2007, 23:05
|- - Сергей Борщ   Цитата(VslavX @ Apr 6 2007, 22:05) Хроник...   Apr 10 2007, 13:59
- - DASM   Гы. Отныне появилось третье измерение по мемерению...   Apr 7 2007, 01:12
- - yuri_t   Далось же вам это время переключения контекста ...   Apr 7 2007, 11:37
|- - VslavX   Цитата(yuri_t @ Apr 7 2007, 11:37) Высока...   Apr 7 2007, 12:32
||- - VslavX   Еще немного поковырял TNKernel, итого: - 6.0uS бе...   Apr 9 2007, 10:33
||- - zltigo   Цитата(VslavX @ Apr 9 2007, 09:33) Завязы...   Apr 9 2007, 11:28
||- - VslavX   Цитата(VslavX @ Apr 9 2007, 12:33) Еще не...   Nov 28 2007, 15:06
||- - dxp   Цитата(VslavX @ Nov 28 2007, 21:06) Для с...   Nov 29 2007, 05:26
||- - VslavX   Цитата(dxp @ Nov 29 2007, 07:26) А скольк...   Nov 29 2007, 09:08
||- - dxp   Цитата(VslavX @ Nov 29 2007, 15:08) Чисты...   Nov 29 2007, 13:14
||- - VslavX   Цитата(dxp @ Nov 29 2007, 15:14) А PPC мо...   Nov 29 2007, 19:52
||- - VslavX   "- Василий Иванович, а Ваша майка чернее моей...   Apr 8 2008, 13:37
|- - AlexandrY   В коммерческих осях, вообще проблему скорости реак...   Apr 9 2007, 17:12
- - prgjz   Использую TNKernel на LPC2387 - всё прекрасно рабо...   Mar 18 2010, 09:45
|- - VslavX   Цитата(prgjz @ Mar 18 2010, 11:45) Поэтом...   Mar 19 2010, 07:06
- - prgjz   Таймерная задача меня тоже немного удивила... Хотя...   Mar 19 2010, 11:52
- - VslavX   Update: Новые времена - новые контроллеры - новые ...   Feb 12 2013, 18:30


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

 


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


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