Перейти к содержанию

Генератор с цифровым управлением (DCO)

DCO — встроенный RC-генератор микроконтроллера, частоту которого задают цифровые регистры. Он запускается за микросекунды, поэтому позволяет процессору спать и просыпаться почти мгновенно, но без подстройки уступает кварцу в точности.

Обновлено Редакция GAW

DCO (digitally controlled oscillator, генератор с цифровым управлением) — встроенный в микроконтроллер генератор, частота которого задаётся числами в регистрах, а не внешним кварцем или резистором. В MSP430 он основной источник быстрого тактового сигнала для процессора и периферии.

Главное достоинство DCO — скорость запуска. По руководству TI SLAU144K он запускается и стабилизируется на 1 МГц быстрее чем за 2 мкс, а у MSP430G2553 выход из режимов LPM3 и LPM4 занимает до 1,5 мкс. Поэтому микроконтроллер может почти всё время спать и просыпаться по прерыванию без заметной задержки — на этом построена экономия энергии MSP430.

Недостаток — точность. Частота RC-генератора зависит от напряжения, температуры и экземпляра, поэтому TI калибрует DCO на заводе и записывает константы в информационную память:

Калиброванная частота MSP430G2553Разброс
1, 8, 12, 16 МГцдо ±3 % по температуре или напряжению, до ±6 % во всём диапазоне

Когда нужна точность кварца, DCO подстраивают по опорной частоте. В семействах MSP430FR2xx и FR4xx это делает петля FLL: она сравнивает DCO с часовым кварцем 32768 Гц или внутренним генератором REFO и сама поддерживает заданный множитель. Идея похожа на ФАПЧ (PLL), только подстраивается уже готовый генератор. Источники и сигналы тактирования MSP430 разобраны в статье «Архитектура MSP430», выбор конденсаторов для часового кварца — в статье о нагрузочной ёмкости.

Частые вопросы

Зачем DCO, если есть кварц?

Ради быстрого запуска и экономии. DCO у MSP430 по TI стабилизируется быстрее чем за 2 мкс, поэтому процессор может спать в режиме пониженного потребления и мгновенно просыпаться по прерыванию. Кварцевый генератор на мегагерцы запускается намного дольше и потребляет больше.

Насколько точен DCO?

Без подстройки — с точностью в единицы процентов. У MSP430G2553 откалиброванная на заводе частота 1 МГц уходит до ±3 % с температурой или напряжением и до ±6 % во всём диапазоне. Для UART на высокой скорости этого может не хватить — тогда DCO подстраивают по часовому кварцу.

Что такое FLL?

Петля автоподстройки частоты: в семействах MSP430FR2xx и FR4xx система тактирования сравнивает частоту DCO с опорной — внутренним генератором REFO или кварцем 32768 Гц — и сама поддерживает заданное отношение. Так DCO получает точность опорного источника без кварца на мегагерцы.

Источники

  1. Texas Instruments. MSP430F2xx, MSP430G2xx Family User's Guide (SLAU144K, revised August 2022) — разд. 1.2: DCO запускается и стабилизируется быстрее 2 мкс на 1 МГц; гл. 5: источник DCOCLK модуля Basic Clock+, тактирует MCLK и SMCLK
  2. Texas Instruments. MSP430G2x53, MSP430G2x13 Mixed Signal Microcontroller (SLAS735J, revised May 2013) — калиброванные частоты DCO 1, 8, 12 и 16 МГц (константы CALBC1 и CALDCO), точность ±3 % по температуре или напряжению и ±6 % во всём диапазоне; выход DCO из LPM3/LPM4 — до 1,5 мкс
  3. Texas Instruments. MSP430FR4xx and MSP430FR2xx Family User's Guide (SLAU445I, revised March 2019) — гл. 3: система тактирования CS с DCO, подстраиваемым петлёй FLL по опорной частоте — внутреннему генератору REFO или часовому кварцу

Нашли ошибку?