Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Вопрос про частоту процессора AT91SAM7S
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
Pasha 111
Насколько я понял, сначала выбирается, откуда брать частоту (от RC генератора, напрямую от осцилятора или из PLL). Если выбирается частота из PLL, то для её получения указывается делитель входной частоты, а потом множитель. Получаем частоту PLL.

Далее, чтобы получить частоту процессора, нужно частоту PLL поделить на 2, 4, .., 64.
В стандартном файлике Cstartup_SAM7.c делитель частоты осцилятора - 5, множитель 26 (25+1), а потом PLL ещё делиться на 2 (18.432 / 5 * 26 / 2 = 47.9232 ~= 48 Mhz).

Так вот у меня вопрос: будут ли отличатся режимы работы процессора, если задавать делить 5, а множитель 30 (и при делении на 2 получать 55.296 Mhz), и если задавать делитель 4 и множитель 24 (и при делении на 2 получать те же 55.296 Mhz)?

И вообще, правильно ли так устанавливать штатные 55 мегагерц?
Pasha 111
Неужели никто не знает?
DASM
Цитата(Pasha 111 @ Oct 3 2006, 22:32) *
Неужели никто не знает?

всем лень даташит открывать smile.gif
Pasha 111
Так в том-то и дело, что у меня тоже даташит есть, но, как говорят, смотрю с книгу... smile.gif
В даташите написано просто, что есть делитель и множитель, а про разницу в различных сочетаниях не написано. Написано только, что частота PLL может быть от 80 до 200 МГц.

И ещё вопрос: для получения частоты USART'а, нужно частоту проца поделить на 16, а потом на число, которое выбирается в регистре. Так вот может получится не точно, скажем, 115200, а ,например, 107000. Какой приемлимый разброс частоты может быть?
aaarrr
Цитата(Pasha 111 @ Oct 3 2006, 23:07) *
И ещё вопрос: для получения частоты USART'а, нужно частоту проца поделить на 16, а потом на число, которое выбирается в регистре. Так вот может получится не точно, скажем, 115200, а ,например, 107000. Какой приемлимый разброс частоты может быть?

По опыту разброс более 1.5% может вызвать проблемы.

Цитата(Pasha 111 @ Oct 3 2006, 23:07) *
Так в том-то и дело, что у меня тоже даташит есть, но, как говорят, смотрю с книгу... smile.gif
В даташите написано просто, что есть делитель и множитель, а про разницу в различных сочетаниях не написано. Написано только, что частота PLL может быть от 80 до 200 МГц.

Ну если производитель не дает особых указаний, значит можно выбирать по своему усмотрению.

P.S. А в даташите, оказывается, много чего интересного написано. Например, упоминаются две PLL (PLL A и PLL B ). Но в жизни присутствует только PLL B.
Pasha 111
Цитата(aaarrr @ Oct 4 2006, 00:52) *
По опыту разброс более 1.5% может вызвать проблемы.

Ну если производитель не дает особых указаний, значит можно выбирать по своему усмотрению.

P.S. А в даташите, оказывается, много чего интересного написано. Например, упоминаются две PLL (PLL A и PLL B ). Но в жизни присутствует только PLL B.


ок, всё ясно, спасибо за ответы.
Ruslan1
Цитата(aaarrr @ Oct 3 2006, 23:52) *
Цитата(Pasha 111 @ Oct 3 2006, 23:07) *

И ещё вопрос: для получения частоты USART'а, нужно частоту проца поделить на 16, а потом на число, которое выбирается в регистре. Так вот может получится не точно, скажем, 115200, а ,например, 107000. Какой приемлимый разброс частоты может быть?

По опыту разброс более 1.5% может вызвать проблемы.


Тут все можно объяснить. Цель: синхронизировавшись по стартовому биту, не вылезти за границы бита при приеме последнего бита. Для 8N1 это выглядит так: длительность бита должна уплыть не более чем на полбита за время передачи 10 бит, иначе когда приемник будет ожидать середину последнего бита, передатчик еще будет передавать предыдущий бит или уже закончит передавать этот бит.
Получается, что требуется точность 1/2 бита из 10 бит- это 5%. Учитывая, что отличаться от нормы может и приемник и передатчик, допустимую погрешность установки частоты нужно уменьшить еще в два раза. То есть 2.5%.
Если отличие скорости приемника и передатчика от номинала не превышает 2.5%, то гарантированно должно работать. Или нужно говорить о разницы скоростей приемника и передатчика не более чем 5%.

Есть методы, которые статистически могут улучшить результат (позволят работать с бОльшими отклонениями- но это отдельная песня. smile.gif
aaarrr
Цитата
Если отличие скорости приемника и передатчика от номинала не превышает 2.5%, то гарантированно должно работать. Или нужно говорить о разницы скоростей приемника и передатчика не более чем 5%.


Есть еще среда передачи, а она бывает далека от идеала. Нередко драйверы на материнских платах заваливают фронты на больших скоростях.
Ruslan1
Цитата(aaarrr @ Oct 5 2006, 15:39) *
Цитата
Если отличие скорости приемника и передатчика от номинала не превышает 2.5%, то гарантированно должно работать. Или нужно говорить о разницы скоростей приемника и передатчика не более чем 5%.


Есть еще среда передачи, а она бывает далека от идеала. Нередко драйверы на материнских платах заваливают фронты на больших скоростях.


Да, действительно. Сейчас глянул на своей материнке- есть такая буква. Передний фронт (стоп->старт) имеет спад полторы микросекунды, задний- даже две микросекунды. На 115200 это уже должно быть чувствительно.
Раньше с RS232 не применял таких скоростей, чтобы драйверы вносили заметные искажения, вот и не думал об этом. Спасибо, учту. Тут действительно все хитрее, и характеристику драйвера надо смотреть, да и емкость линии COM-порта контролировать, то есть уже и о RC надо думать.
Сергей Борщ
Цитата(Pasha 111 @ Oct 3 2006, 22:07) *
Так в том-то и дело, что у меня тоже даташит есть, но, как говорят, смотрю с книгу... smile.gif
В даташите написано просто, что есть делитель и множитель, а про разницу в различных сочетаниях не написано. Написано только, что частота PLL может быть от 80 до 200 МГц.
Я так полагаю что разница будет в токе потребления и частоте ВЧ помех. С точки зрения процессора же разницы никакой пока частоты PLL и ядра укладываются в описанные в даташите рамки.
vmp
Цитата(Pasha 111 @ Oct 3 2006, 23:07) *
Так в том-то и дело, что у меня тоже даташит есть, но, как говорят, смотрю с книгу... smile.gif
В даташите написано просто, что есть делитель и множитель, а про разницу в различных сочетаниях не написано. Написано только, что частота PLL может быть от 80 до 200 МГц.

При разных установках получаются разные номиналы компонентов PLL-фильтра. И, соответственно, разные времена запуска. Рекомендую почитать аппноту и поиграть с программой PLL_LFT_Filter_Calculator.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.