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

 
 
> AT91SAM9G45, Настройка частоты работы GPIO
Sergey1212
сообщение Apr 24 2013, 08:02
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 22
Регистрация: 23-04-13
Пользователь №: 76 596



Подскажите пожулуйста как настроить GPIO частоту равную мастер клоку 133Мгц, ARM только начал изучать.
Проинициализировал Процессор клок на 400Мгц Мастер клок на 133, далее в безконечном цикле дергаю ногой в своем примере из SRAM без убутов и бутстрапов получаю максимум 2,8 Мгц период т.е. включение выключение. Такой же код вписал в убут собрал запустил получил 11,111111 Мгц период т.е. 11,1111Мгц х 2 х 6 тактов = 133 Мгц.
Интересует есть ли какие либо еще регистры где прописывается частота тактирования GPIO?
В даташите на него ничего не нашел.


Как я понял дело в MMU и кеше
Включил MMU кеш как описано здесь http://electronix.ru/forum/index.php?showt...&hl=SAM9G45
получил 7.8431 МГц но этого тоже мало должно быть как в убуте 11.11111МГц
подскажите пример MMU и кеша на полную катушку так сказать
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Golikov A.
сообщение Apr 24 2013, 09:59
Сообщение #2


Гуру
******

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



Еще в некоторых процах можно выбрать режим скорости работы ноги, в одних быстро - медленно, а в некоторых стмах (правда уже кортексах) аж 4 уровня скорости есть от 2.5 МГц, до максимума, и если нога настроена на медленную работу, то хоть клок проца на нее выводи быстрее не поедет...

посмотрите в около FAST GPIO и или GPIO SPEED. и так далее...

Но в целом да, АРМ - это использование периферии, GPIO - это не для него, вся моща уйдет в ножки... Частота GPIO обычно половина от системной, а на изменение состояния ноги обычно 2-4 команды, вот и считайте... неоткуда 100 МГц на 400 клоке взяться...
Go to the top of the page
 
+Quote Post
Sergey1212
сообщение Apr 24 2013, 11:43
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 22
Регистрация: 23-04-13
Пользователь №: 76 596



Цитата(Golikov A. @ Apr 24 2013, 13:59) *
Еще в некоторых процах можно выбрать режим скорости работы ноги, в одних быстро - медленно, а в некоторых стмах (правда уже кортексах) аж 4 уровня скорости есть от 2.5 МГц, до максимума, и если нога настроена на медленную работу, то хоть клок проца на нее выводи быстрее не поедет...

посмотрите в около FAST GPIO и или GPIO SPEED. и так далее...

Но в целом да, АРМ - это использование периферии, GPIO - это не для него, вся моща уйдет в ножки... Частота GPIO обычно половина от системной, а на изменение состояния ноги обычно 2-4 команды, вот и считайте... неоткуда 100 МГц на 400 клоке взяться...


На изменение состояния ноги судя по картинкам из даташита уходит 6 тактов Мастер клока MCK котрый настроен на 133МГц соответственно 133МГц / 6 = 22,2222...
чтобы получился период, а он состоит из включения и выключения, делим 22,22222222 на 2 получается 11,111111МГц который я и вижу когда запускаю этот цикл в u-boot'е
FAST GPIO и GPIO SPEED в даташите опять же не нашел

Вообще дергание ногой я использую для того чтобы замечать смещение фронта (увеличение скважности) импульса на осциллографе при добвлении в тот же код нескольких команд i++


Цитата(Golikov A. @ Apr 24 2013, 15:36) *
какие то интересные исследованияsm.gif можно же всегда поглядеть дизасемблерный код, да и узнать сколько инструкций на что идет. Ведь есть еще разные настройки оптимизации, разворачивание циклов, предсказание ветвлений... в чем смысл этих исследований?

Не могли бы вы поподробнее о настройках оптимизации?

Попробовал я вставить код MMU кеш из убута резальтат такой же 7.84Мгц вместо ожидаемых 11.111...

Сообщение отредактировал Sergey1212 - Apr 24 2013, 11:46
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Sergey1212   AT91SAM9G45   Apr 24 2013, 08:02
- - jcxz   Цитата(Sergey1212 @ Apr 24 2013, 14:02) П...   Apr 24 2013, 09:00
|- - Sergey1212   Цитата(jcxz @ Apr 24 2013, 13:00) Если уж...   Apr 24 2013, 11:30
- - Golikov A.   какие то интересные исследования можно же всегда п...   Apr 24 2013, 11:36
- - Fedor   Максимальную скорость выполнения кода можно получи...   Apr 24 2013, 11:55
- - Sergey1212   OPTIMIZATION = -O3 Решили проблему)) вышел на 12.1...   Apr 24 2013, 12:10
|- - Fedor   Попробуйте использовать модуль PWM могу конечно ош...   Apr 24 2013, 12:55
|- - Sergey1212   Цитата(Fedor @ Apr 24 2013, 16:55) Попроб...   Apr 24 2013, 13:32
- - Golikov A.   вообщем я думаю самый правильный путь это посмотре...   Apr 24 2013, 13:45
- - Sergey1212   Пока что интересуют именно к этому процу Как я пон...   Apr 24 2013, 13:52
|- - Golikov A.   Цитата(Sergey1212 @ Apr 24 2013, 17:52) П...   Apr 24 2013, 14:27
- - Sergey1212   Вот кусок с дизассемблерра получил из eclipsa запу...   Apr 24 2013, 15:16
- - Fedor   Смысл использовать MMU если у вас код и данные ве...   Apr 24 2013, 17:07
|- - Sergey1212   Цитата(Fedor @ Apr 24 2013, 21:07) И проп...   Apr 24 2013, 18:19
- - Golikov A.   в дизасемблере надо смотреть что за такты в цикле,...   Apr 24 2013, 19:58
- - Fedor   Не мешает проверить также на какую область памяти ...   Apr 25 2013, 05:23
|- - Sergey1212   Цитата(Fedor @ Apr 25 2013, 09:23) Не меш...   Apr 25 2013, 09:08
|- - Fedor   Цитата(Sergey1212 @ Apr 25 2013, 15:08) А...   Apr 25 2013, 09:46
- - Sergey1212   Вот lds: CODEOUTPUT_FORMAT("elf32-littlearm...   Apr 25 2013, 10:57
|- - Fedor   КодpTranslationTable[i] = i << 20 ...   Apr 25 2013, 14:08
- - Sergey1212   поправил pTranslationTable[i] = i << 20 | (3...   Apr 25 2013, 16:55
|- - Fedor   Не нужно кэшировать область памяти где расположена...   Apr 25 2013, 17:52
|- - Sergey1212   Цитата(Fedor @ Apr 25 2013, 21:52) Смысл ...   Apr 25 2013, 18:30
|- - Golikov A.   Цитата(Sergey1212 @ Apr 25 2013, 22:30) И...   Apr 25 2013, 20:51
|- - aaarrr   Цитата(Golikov A. @ Apr 26 2013, 00:51) К...   Apr 25 2013, 21:13
|- - Golikov A.   Цитата(aaarrr @ Apr 26 2013, 01:13) Кэш р...   Apr 26 2013, 03:31
|- - aaarrr   Цитата(Golikov A. @ Apr 26 2013, 07:31) я...   Apr 26 2013, 07:57
|- - Golikov A.   Цитата(aaarrr @ Apr 26 2013, 11:57) Прост...   Apr 26 2013, 11:18
- - Genadi Zawidowski   При работе периферии с прямым доступом к памяти (P...   Apr 25 2013, 17:36
- - taoga   Вот код инициализации MMU из softpack для sam9g35....   Apr 25 2013, 18:28
- - taoga   Для измерения скорости работы проца можно использо...   Apr 25 2013, 18:55
- - Sergey1212   Да пожалуй на пока инфы и примеров достаточно, над...   Apr 25 2013, 19:06


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

 


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


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