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

 
 
> ARM Cortex M4 TI Tiva, Время перехода на прерывание от GPIO
IJAR
сообщение Aug 19 2013, 08:31
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 232
Регистрация: 26-02-07
Из: г. Зеленоград
Пользователь №: 25 669



wacko.gif
В DS указано что время вызова обработчика прерывания детерминировано и равно 12-ти
тактам частоты процессора при автоматическое сохранение регистров.
При отладке программы , написанной на С/C++ Code Composer Studio, в обработчике прерывания от GPIO (видно в дизасемблерном коде ) компилятор вставляет команды push/pop (сохранения/восстановления регистров в стеке).
При этом регистр состояния процессора не сохраняется и не восстанавливается при возврате из обработчика
прерывания
Вопросы
1. На что уходят 12 тактов процессора при вызове обработчика прерывания
2 Если в эти 12 тактов не входит сохранение регистров процессора (контекста) то сколько времени
дополнительно занимает их сохранение
3. Как сохраняется/восстанавливается регистр состояния процессора


Зарание спасибо за помощь

Сообщение отредактировал IJAR - Aug 19 2013, 10:25


--------------------
Вяжешь - вой, а поедешь - песни пой.
Между "хочу" и "можно" всегда есть дистанция
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Golikov A.
сообщение Aug 19 2013, 10:47
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



такты идут на работы машины прерываний.

потому что кроме прерывания есть еще арбитраж их приоритета, сохранение регистра счетчика команд и прочих из ядра.
Но регистры сохраняются не в стэк, вернее правильнее сказать не во всех архитектурах регистры сохраняются в стэк. Есть архитектуры с теневыми регистрами, это копия набора регистров процессора, и при возникновении прерывания процессор просто переходит на работу с этим набором регистров.

http://vestnikmag.ru/wp-content/uploads/20...electronics.pdf
здесь написано что кортекс м4Ф автоматически сохраняет регистры, а как и куда не сказано, но если найти более официальный документ по этому вопросу будет все понятно..
Go to the top of the page
 
+Quote Post
IJAR
сообщение Aug 20 2013, 08:24
Сообщение #3


Местный
***

Группа: Свой
Сообщений: 232
Регистрация: 26-02-07
Из: г. Зеленоград
Пользователь №: 25 669



Цитата(Golikov A. @ Aug 19 2013, 14:47) *
такты идут на работы машины прерываний.
.....
кортекс м4Ф автоматически сохраняет регистры, а как и куда не сказано, но если найти более официальный документ по этому вопросу будет все понятно..

Н-да.... похоже весь контекст состоит из рег-ра состояния процессора и старого PC который грузится в LR а все остальное сохранять ручками и на все тратить такты, такты, такты ......и еще 12 штук тактов на возврат и + восстановление
контекста


--------------------
Вяжешь - вой, а поедешь - песни пой.
Между "хочу" и "можно" всегда есть дистанция
Go to the top of the page
 
+Quote Post



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

 


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


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