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

 
 
> Частота ядра, davinci dm365 arm9
Stepanov V. Andr...
сообщение Jan 31 2011, 10:29
Сообщение #1





Группа: Новичок
Сообщений: 5
Регистрация: 13-12-10
Пользователь №: 61 589



Привет.

Краткая информация:

Davinci dm365, tms320dm365.
ОС Linux.

Данная платка имеет два PLL: PLL1 и PLL2

Процессор ARM926EJ-S может тактоваться от:

* PLLC1SYSCLK2 - устанавливается при загрузке ОС Linux == 243000 kHz.
* PLLC2SYSCLK2 - то что я могу менять.

Максимальная частота процессора, которую теоретически можно установить: 300 000 kHz.
Минимальная == 121500 kHz == PLLC1SYSCLK4 (CFG/DMA bus clock frequency).

Алгоритм:
1. перевести процессор из PLLC2SYSCLK2 на PLLC1SYSCLK2.
2. Сресетить PLL2.
3. Настроить делители\множитель на PLL2.
4. Перебросить процессор обратно на PLLC2SYSCLK2.
5. Вызвать adjust_jiffies() (которое я украл из cpufreq.c)

Столкнулся с ситуацией, что моя схема работает только на некоторых частотах.

Например на частоты можно стабильно переключатся, сколько угодно раз:

272000 (kHz), mul=17, div=2
204000 (kHz), mul=17, div=3
252000 (kHz), mul=21, div=3
201600 (kHz), mul=21, div=4
200000 (kHz), mul=25, div=5
249600 (kHz), mul=26, div=4
259200 (kHz), mul=27, div=4
268800 (kHz), mul=28, div=4
278400 (kHz), mul=29, div=4
232000 (kHz), mul=29, div=5
205714 (kHz), mul=30, div=6
297600 (kHz), mul=31, div=4
248000 (kHz), mul=31, div=5
212571 (kHz), mul=31, div=6
186000 (kHz), mul=31, div=7

На следующие частоты переключится нельзя, плата мгновенно зависает:
144000 (kHz), mul=3, div=0
180000 (kHz), mul=15, div=3
136000 (kHz), mul=17, div=5
126000 (kHz), mul=21, div=7
157714 (kHz), mul=23, div=6
171428 (kHz), mul=25, div=6
133333 (kHz), mul=25, div=8
178285 (kHz), mul=26, div=6
162000 (kHz), mul=27, div=7
174000 (kHz), mul=29, div=7
165333 (kHz), mul=31, div=8
158400 (kHz), mul=33, div=9
296000 (kHz), mul=37, div=5
203076 (kHz), mul=55, div=12
299076 (kHz), mul=81, div=12

Вся периферия тактуется от PLL1.

Данная плата не имеет никаких доменов частот.
Есть домены только по энергопотреблению.

Может кто подсказать в чем проблема??

Это сходит с ума ОС Linux, или все таки сама плата?

Я потерялся в догадках.

Если выставить на PLL2 нужную частоту, но не переключать на нее процессор (оставить на PLLC1SYSCLK2), то все продолжает стабильно работать.

Посоветуйте на что обратить внимание sm.gif))
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов (1 - 2)
Dron_Gus
сообщение Jan 31 2011, 11:39
Сообщение #2


Профессионал
*****

Группа: Свой
Сообщений: 1 202
Регистрация: 9-01-05
Из: Санкт-Петербург
Пользователь №: 1 861



Откуда тактируется память? PLL лочится? Нет ли каких огнраничений на соотношение частот ядра/периферии?


--------------------
Если сверху смотреть, то сбоку кажется, что снизу ничего не видно.
Go to the top of the page
 
+Quote Post
Stepanov V. Andr...
сообщение Jan 31 2011, 12:23
Сообщение #3





Группа: Новичок
Сообщений: 5
Регистрация: 13-12-10
Пользователь №: 61 589



Цитата(Dron_Gus @ Jan 31 2011, 14:39) *
Откуда тактируется память? PLL лочится? Нет ли каких огнраничений на соотношение частот ядра/периферии?


Из руководства память (контроллер DDR2) тактуется одновременно двумя источниками:
1. VLCK == PLLC1SYSCLK4 (т.е. о чем я говорил: CFG/DMA bus clock frequency).
2. PLLC1SYSCLK7 или PLLC2SYSCLK3.

В Linux по умолчанию используется PLLC1SYSCLK7. Я не думаю что в этом проблема... так как плата спокойно переживает ресет PLL2, до тех пор пока я не "заскакиваю" процом обратно на PLL2.

Для других платок есть домены частот, т.е. четкие соотношения, между выходами PLL.
Для этой платы нету никаких ограничений.

PLL - делаю ему полный ресет - это единственный способ установить новые делители/множитель.



The DDR2/mDDR EMIF uses either PLLC1SYSCLK7 or PLLC2SYSCLK3 clock domains depending on
what the selection is by programming the DDRCLKS bit field in the PERI_CLKCTL register.

У меня используется PLLC1SYSCLK7.
Go to the top of the page
 
+Quote Post

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

 


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


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