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

 
 
 
Reply to this topicStart new topic
> Время выполнения команд в Cortex-M3.
bs_p
сообщение Jan 7 2011, 09:59
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 28
Регистрация: 17-04-09
Пользователь №: 47 882



Подскажите, пожалуйста, нет ли таблицы команд процессора Cortex-M3,
в которой указывалось бы время их выполнения.
Go to the top of the page
 
+Quote Post
zltigo
сообщение Jan 7 2011, 10:43
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244



По ядру arm.com а вообще сколько ws Flash? Сколько ws RAM? Какая ширина данных Flash... и понеслось. Это уже НЕ AVR и иже с ним.


--------------------
Feci, quod potui, faciant meliora potentes
Go to the top of the page
 
+Quote Post
DpInRock
сообщение Jan 7 2011, 11:00
Сообщение #3


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



http://infocenter.arm.com/help/index.jsp?t...403c/index.html
Типа, в человеком можешь ты не быть, но в гугле понимать обязан.


--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post
GetSmart
сообщение Jan 7 2011, 11:06
Сообщение #4


.
******

Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753



Так же работает метод тыка.


--------------------
Заблуждаться - Ваше законное право :-)
Go to the top of the page
 
+Quote Post
bs_p
сообщение Jan 7 2011, 12:38
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 28
Регистрация: 17-04-09
Пользователь №: 47 882



Спасибо за подсказку.
Go to the top of the page
 
+Quote Post
ReAl
сообщение Jan 8 2011, 04:48
Сообщение #6


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

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



А зачем это Вам?

Одной систмы команд мало, как уже сказано. Режим флеша, сочетание команд, работа шин...
На stm32f103
Код
   str куда-то в APB2
   inc r2
   str куда-то в APB2
выполняются за то же время, что и
Код
   str куда-то в APB2
   str куда-то в APB2
Просто во втором случае вторая команда str ждёт готовности шины, а в первом -- нет, за такт команды инкремента шина освободилась (на запись, это ещё никаких чтений не замешалось sm.gif ).


--------------------
Ну, я пошёл… Если что – звоните…
Go to the top of the page
 
+Quote Post
vallav
сообщение Jan 9 2011, 05:57
Сообщение #7


Частый гость
**

Группа: Участник
Сообщений: 197
Регистрация: 8-04-05
Пользователь №: 3 977



Цитата(DpInRock @ Jan 7 2011, 17:00) *
http://infocenter.arm.com/help/index.jsp?t...403c/index.html
Типа, в человеком можешь ты не быть, но в гугле понимать обязан.


В этом времянки нет, она есть в
http://infocenter.arm.com/help/topic/com.a...m3_r2p0_trm.pdf

Почему то в последующих ревизиях этого документа времянку убрали.
Go to the top of the page
 
+Quote Post
Deka
сообщение Jan 10 2011, 08:40
Сообщение #8


Местный
***

Группа: Свой
Сообщений: 248
Регистрация: 18-07-06
Из: Сочи
Пользователь №: 18 890



А вот интересно, если 1Wire делать, то как посчитать? Или надо для конкретного сочетания кучи параметров делать?
Go to the top of the page
 
+Quote Post
GetSmart
сообщение Jan 10 2011, 08:56
Сообщение #9


.
******

Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753



Я считал по таймеру. Там задержки от 5 мкс и выше (если память не изменяет). По таймеру без прерываний. Просто считывая текущее состояние счётчика таймера в цикле.


--------------------
Заблуждаться - Ваше законное право :-)
Go to the top of the page
 
+Quote Post
prottoss
сообщение Jan 10 2011, 09:24
Сообщение #10


Гуру
******

Группа: Свой
Сообщений: 2 720
Регистрация: 24-03-05
Пользователь №: 3 659



Цитата(Deka @ Jan 10 2011, 19:40) *
А вот интересно, если 1Wire делать, то как посчитать? Или надо для конкретного сочетания кучи параметров делать?
1-ware можно сделать на штатном USART или использовать мост i2C<->1-Ware


--------------------
Go to the top of the page
 
+Quote Post
Deka
сообщение Jan 11 2011, 03:25
Сообщение #11


Местный
***

Группа: Свой
Сообщений: 248
Регистрация: 18-07-06
Из: Сочи
Пользователь №: 18 890



Значит вывод такой, что просто по тактам программно протокол сделать довольно сложно. Нужно почти обязательно задействовать какое-либо аппаратное устройство. Оно может быть любым, лишь бы позволило сделать синхронизацию. Ок. Спасибо за пояснения.
Go to the top of the page
 
+Quote Post
vallav
сообщение Jan 11 2011, 03:59
Сообщение #12


Частый гость
**

Группа: Участник
Сообщений: 197
Регистрация: 8-04-05
Пользователь №: 3 977



Цитата(Deka @ Jan 11 2011, 09:25) *
Значит вывод такой, что просто по тактам программно протокол сделать довольно сложно. Нужно почти обязательно задействовать какое-либо аппаратное устройство. Оно может быть любым, лишь бы позволило сделать синхронизацию. Ок. Спасибо за пояснения.


Да не, делаете цикл из трех команд и имеете задержку от 5 наносекунд до нескольких часов с шагом в n наносекунд.
Чему равно n для данного проца - измеряете.
Но если использовать аппаратное устройство, проц при этом можно занять чем то более интересным, чем декремент регистра в цикле.

Go to the top of the page
 
+Quote Post
izerg
сообщение Jan 11 2011, 04:16
Сообщение #13


Знающий
****

Группа: Свой
Сообщений: 531
Регистрация: 1-02-05
Из: Украина, Киев
Пользователь №: 2 342




Deka, весь вопрос в точности соблюдения времянок протокола. Если надо совсем-совсем точно - то запрещаете все ( прерывания) и по тактам выстраиваете протокол. Время исполнения протокола - любая ИДЕ покажет. Но если что-то нужно поменять - такая "пирамидка" рассыпается, и приходится ее строить заново. Если контроллер работает только с одним протоколом (устройством) - то такой подход понять можно, но если снаружи происходит еще несколько событий, на которые нужно реагировать - то в итоге вы их пропустите sm.gif
Обычно жертвуют одним аппаратным таймером. Он в прерывании отмеряет время кратное всем процессам.
В алгоритме протокола - сравнивают текущее число сработок таймера и предыдущее, если настало время что-то делать - делаем, нет - дальше ожидаем. При этом процессор в состоянии реагировать на остальные внешние и внутренние раздражители. Небольшое "дрожание" времени в протоколе наблюдаться будет (например из-за заходы в прерывания), но это плата за то, что такая "пирамидка" не распадется при изменении кода.
Go to the top of the page
 
+Quote Post

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

 


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


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