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

 
 
> Пара вопросов по архитектуре
InsolentS
сообщение May 6 2008, 01:14
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 414
Регистрация: 8-06-06
Пользователь №: 17 897



1) Как из супервизора обратиться к пользовательским CPSR и SP?
2) Можно ли как-нибудь отследить обращение пользователя к определенным адресам памяти?
Ассемблер и компилятор RV, ядро ARM7TDMI без MMU (SAM7..LPC).
Буду благодарен за любую информацию по теме.


--------------------
Курильщик даташитов со стажем
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
InsolentS
сообщение May 12 2008, 09:45
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 414
Регистрация: 8-06-06
Пользователь №: 17 897



Есть ещё одна проблема, не стал создавать новую ветку.
Если прерывание возникает во время команды безусловного перехода ( B ), в LR сохраняется адрес следующей команды, а не той куда указывает B, т.е. прерывание как бы возникает по середине команды перехода, когда она уже загрузилась в конвейер, но ещё не выполнилась. Чувствую что надо поставить NOP чтобы прогнать конвейер, но не пойму где, посоветуйте пожалуйста как решить проблему эту 07.gif


--------------------
Курильщик даташитов со стажем
Go to the top of the page
 
+Quote Post
amw
сообщение May 12 2008, 10:14
Сообщение #3


Знающий
****

Группа: Свой
Сообщений: 601
Регистрация: 22-09-05
Из: Kharkov
Пользователь №: 8 847



Цитата(InsolentS @ May 12 2008, 12:45) *
Есть ещё одна проблема, не стал создавать новую ветку.
Если прерывание возникает во время команды безусловного перехода ( B ), в LR сохраняется адрес следующей команды, а не той куда указывает B, т.е. прерывание как бы возникает по середине команды перехода, когда она уже загрузилась в конвейер, но ещё не выполнилась. Чувствую что надо поставить NOP чтобы прогнать конвейер, но не пойму где, посоветуйте пожалуйста как решить проблему эту 07.gif

Либо компилятор вставит сам нужные команды, либо Вы вручную вставляете что-то типа
Код
@ Adjust and save LR_irq to IRQ stack
    sub    lr, lr, #4
    stmdb    sp!, {r0, r1, lr}    @ Save IRQ mode registers
...........
@ Restore adjusted LR_irq from IRQ stack directly in the PC
    ldmia    sp!, {r0, r1, pc}^    @ Restore IRQ mode registers

Компиляторы имеют спец-средства для определения обработчика прерывания.


--------------------
- А мораль отсюда такова: всякому овощу свое время. Или, хочешь, я это сформулирую попроще: никогда не думай, что ты иная, чем могла бы быть иначе, чем будучи иной в тех случаях, когда иначе нельзя не быть.
© Lewis Carroll. Alice's adventures in wonderland.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- InsolentS   Пара вопросов по архитектуре   May 6 2008, 01:14
- - defunct   1). CPRS у Вас будет в SPSR. А SP можно получить т...   May 6 2008, 02:27
|- - KRS   Цитата(defunct @ May 6 2008, 06:27) А SP ...   May 6 2008, 06:40
|- - defunct   Цитата(KRS @ May 6 2008, 09:40) IMHO прощ...   May 6 2008, 09:28
- - amw   Цитата(InsolentS @ May 6 2008, 04:14) 1) ...   May 6 2008, 07:45
- - Rst7   Если не ошибаюсь, то метод получения USP в режиме ...   May 6 2008, 10:51
|- - KRS   Цитата(Rst7 @ May 6 2008, 14:51) Если не ...   May 6 2008, 11:24
|- - aaarrr   Цитата(KRS @ May 6 2008, 15:24) А так нел...   May 6 2008, 11:57
- - Rst7   ЦитатаА так нельзя? Пробовать надо. По поводу тог...   May 6 2008, 11:40
- - InsolentS   Всем огромное спасибо! Ещё небольшой вопрос - ...   May 6 2008, 11:55
- - Rst7   ЦитатаА так нельзя? Пробовать надо. Для начала, н...   May 6 2008, 12:00
|- - InsolentS   Цитата(Rst7 @ May 6 2008, 18:00) Значит, ...   May 9 2008, 06:42
|- - KRS   Цитата(InsolentS @ May 9 2008, 10:42) Есл...   May 9 2008, 15:38
- - Rst7   ЦитатаМожно ли таким же макером достать пользовате...   May 9 2008, 11:30
- - Rst7   ЦитатаSTMIA SP, {R13,R14} забыли ^ КодSTMIA SP, ...   May 9 2008, 19:31
|- - InsolentS   Цитата(Rst7 @ May 10 2008, 01:31) Без нее...   May 9 2008, 23:18
- - aaarrr   Все правильно: в LR_irq сохраняется адрес возврата...   May 12 2008, 10:05
- - Rst7   ЦитатаЕсли прерывание возникает во время команды б...   May 12 2008, 10:12
- - InsolentS   Да, спасибо большое, разобрался :-) Более внимател...   May 12 2008, 10:13


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

 


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


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