25. Тактовый генератор
25.1 Описание
Тактовый генератор имеет в своем составе низкочастотный RC-генератор, Основной тактовый генератор и модуль ФАПЧ (PLL). Он вырабатывает следующие тактовые сигналы:
- SLCK, низкочастотный тактовый сигнал, постоянен в пределах системы
- MAINCK выход основного тактового генератора
- PLLCK выход модуля ФАПЧ и делителя частоты
Интерфейс тактового генератора встроен в контроллер управления потребляемой мощности PMC и описан в главе 26.9. Однако имена регистров тактового генератора объединены в группе CKGR_.
25.2 Низкочастотный RC генератор
Низкочастотный RC генератор - единственный постоянный тактовый сигнал в пределах системы, включая контроллер управления потребляемой мощности PMC. Это необходимый сигнал для работы PMC.
Пользователь должен учитывать возможный дрейф RC генератора. Более подробная информация приведена в секции характеристик по постоянному току.
25.3 Основной тактовый генератор
На рис.25-1 приведена структурная схема тактового генератора .
Рис. 25-1. Структурная схема тактового генератора
25.3.1 Включение основного тактового генератора
Тактовый генератор включает в себя основной тактовый генератор, работающий с кварцевым резонатором частотой от 3 до 20 МГц. Типовая схема включения кварца приведена на рис.25-2. При работе с кварцем на частотах до 8 МГц требуется установка резистора номиналом 1 кОм. К выводам XIN и XOUT подключаются конденсаторы емкостью по 25 пФ. Следовательно, емкости CL1 и CL2 можно не устанавливать, при использовании кварца с входной емкостью равной 12,5 пФ. Более подробная информация по электрическим характеристикам приведена в секции характеристик по постоянному току.
Рис. 25-2. Типовая схема включения кварцевого резонатора
25.3.2 Время запуска основного тактового генератора
Время запуска основного тактового генератора приведено в секции характеристик по постоянному току. Время запуска зависит от частоты кварца и уменьшается с ростом частоты.
25.3.3 Управление основным тактовым генератором
Для уменьшения потребления мощности при запуске системы основной тактовый генератор отключен, при этом выбран низкочастотный RC генератор.
Программно возможно включить/отключить основной тактовый генератор для уменьшения потребляемой мощности. Для этого производится сброс MOSCEN бита в регистре основного генератора (CKGR_MOR).
Отключение основного тактового генератора сбросом MOSCEN бита в CKGR_MOR приводит к автоматическому сбросу MOSCS бита в регистре PMC_SR, сообщая, что основной тактовый генератор отключен.
При разрешенном основном генераторе, пользователь должен инициализировать счетчик основного генератора значением, соответствующим времени запуска генератора. Время запуска зависит от частоты подключенного кварца.
После записи MOSCEN бита и значения OSCOUNT в регистр CKGR_MOR для разрешения основного генератора, MOSCS бит в регистре статуса PMC_SR сбрасывается. Счетчик начинает отсчет на убывание от значения OSCOUNT с частотой сигнала в 8 раз меньшей частоты сигнала SLCK. Так как значение OSCOUNT кодируется 8-ю битами, то максимальное время старта составляет примерно 62 мс.
При достижении счетчиком нуля, MOSCS устанавливается, сообщая, что частота основного генератора установилась. Установка MOSCS бита в PMC_IMR может быт источником прерывания для процессора.
25.3.4 Счетчик установки частоты основного генератора
Счетчик установки частоты основного генератора позволяет точно определить частоту подключенного кварцевого резонатора. Это может быть полезно для программы бут загрузчика для конфигурации микроконтроллера правильным значением тактового сигнала, независимо от приложения.
Счетчик установки частоты основного генератора начинает счет на скорости основного тактового генератора после появления положительного фронта низкочастотного генератора (сигнала SLCK), после стабилизации основного тактового генератора, то есть, как только установлен MOSCS бит. Затем по 16-ому отрицательному фронту сигнала SLCK устанавливается MAINRDY бит в регистре основной тактовой частоты CKGR_MCFR (Main Clock Frequency Register) и счетчик останавливает счет. Это значение может быть считано в поле MAINF регистра CKGR_MCFR и равно числу циклов основного тактового генератора за 16 периодов сигнала SLCK. Таким образом, может быть определена частота подключенного кварцевого резонатора.
25.3.5 Подключение внешнего генератора
Вместо подключения кварца к контроллеру можно подключить внешний генератор. В этом случае внешний тактовый сигнал подается на вывод XIN. Входные характеристики вывода XIN в этих условиях приведены в секции электрических характеристик. Программист должен не забыть установить OSCBYPASS бит в 1, а MOSCEN бит в 0 в регистре основного генератора CKGR_MOR (Main OSC Register) для правильной работы с внешним тактовым сигналом.
25.4 ФАПЧ и Делитель частоты
ФАПЧ включена во входной делитель для увеличения точности результирующего тактового сигнала. Тем не менее, пользователь должен выбрать минимальное значение частоты на входе ФАПЧ при программировании делителя.
На рис.25-3. приведена структурная схема ФАПЧ и Делителя частоты.
Рис. 25-3. Структурная схема ФАПЧ и Делителя частоты
25.4.1 Фильтр ФАПЧ
Схема ФАПЧ требует подключения внешнего фильтра 2-го порядка через вывод PLLRC. На рис.25-4 приведена схема такого фильтра.
Рис. 25-4. Схема фильтра для ФАПЧ
Номиналы R, C1 и C2 ,подключенные к выводу PLLRC, рассчитываются как функции входной частоты ФАПЧ, выходной частоты ФАПЧ и фазы. Выбор оптимального значения осуществляется по сдвигу выходного сигнала и времени запуска.
25.4.2 Программирование схемы ФАПЧ и Делителя частоты
Делитель может быть установлен в диапазоне от 1 до 255. При записи в поле делителя DIV нуля, на выходах соответствующего делителя и ФАПЧ устанавливается сигнал низкого уровня. После сброса, в каждое поле DIV записывается нуль, что приводит к установке нуля на соответствующих тактовых входах ФАПЧ.
Схема ФАПЧ допускает умножение сигналов с выходов делителей. Частота тактового сигнала ФАПЧ зависит от частоты исходного сигнала и параметров DIV и MUL. Значение выходной частоты определяется выражением (MUL + 1)/DIV. Запись в поле MUL нуля приводит к отключению ФАПЧ. Включение схемы ФАПЧ осуществляется записью в поле MUL значения большего нуля.
После включения ФАПЧ или изменения одного из ее параметров LOCK бит в регистре PMC_SR автоматически сбрасывается. Значения, записанные в поле PLLCOUNT в регистре CKGR_PLLR, загружаются в счетчик ФАПЧ. Счетчик ФАПЧ после этого декрементируется на скорости сигнала SLCK до достижения нуля. В этот момент LOCK бит в регистре PMC_SR установлен и может сформировать прерывание для процессора. Пользователь должен загрузить число тактов сигнала SLCK в поле PLLCOUNT, что определяет время перекрытия переходного процесса ФАПЧ. Длительность переходного процесса зависит от фильтра ФАПЧ. Начальные параметры ФАПЧ и выходная частота могут быть вычислены с использованием специальной утилиты предоставляемой фирмой Atmel.
|