В этом примере показано, как смоделировать цифровую фазовую подстройку частоты с помощью Mixed-Signal Blockset™. В цифровой фазовой подстройке частоты обнаружение фазы выполняется к цифровому конвертеру (TDC) времени, фильтрация цикла выполняется цифровым фильтром, и генератор является в цифровой форме управляемым генератором (DCO). Этот пример демонстрирует поведенческую модель TDC, использование BiquadFilter от DSP Systen Toolbox™ как цифровой контурный фильтр и использование VCOs и DACs от Mixed-Signal Blockset, чтобы смоделировать DCO.
Этот пример также демонстрирует один метод для разработки цикла управления цифрового PLL при помощи архитектур PLL от Mixed-Signal Blockset, чтобы спроектировать аналоговый PLL и затем перевести аналоговый проект в его цифровой эквивалент.
Открытый и запуск модель в качестве примера цифрового PLL. Затем выберите PLL Testbench в модели и нажмите кнопку шума фазы Plot (или вызовите функцию обратного вызова кнопки). Сохраните форму волны контурного фильтра и данные о шуме фазы для более позднего сравнения с аналоговыми результатами PLL.
open('DigitalPLL.slx'); simout = sim(gcs); msblks.PLL.pllTBPlotPhaseNoiseButton([gcs '/PLL Testbench']); dpll_vcntl = simout.dpll_vcntl; getDigitalPllPhaseNoise;
Поведенческая модель TDC использует триггируемые подсистемы, чтобы произвести время часов в возрастающих ребрах ссылочных часов и дробного делителя PLL. Это затем вычисляет разность между этими произведенными двумя, показывают время, и преобразует в целочисленное выходное значение на восемь битов. Чтобы смоделировать цифровую обратную связь, синхронизированную ссылкой, частота дискретизации выходного порта установлена в ссылочную частоту.
open_system('DigitalPLL/TDC','force');
Модель DCO представляет схему, в которой управление для VCO установлено цифро-аналоговым преобразователем (DAC). Преобразование в DAC инициировано ссылочными часами.
Ухудшение шума фазы в VCO включено. Модель DAC может также смоделировать ухудшения. Однако ухудшения DAC не включены в модели в качестве примера.
Вы могли альтернативно смоделировать DCO путем прямой установки массива напряжения управления VCO Mixed-Signal Blockset на массив последовательных целых чисел, который порождает линейную оболочку столбцов цифровых входных значений. Затем можно установить выходной массив частоты предоставлять выходную частоту для каждого возможного входного значения.
open_system('DigitalPLL/DCO','force');
Контурным фильтром является BiquadFilter от DSP System Toolbox. Это синхронизируется в ссылочной тактовой частоте выходным портом TDC.
Цифровой контурный фильтр создан с использованием функция автоматизированного проектирования Целого числа N PLL с моделью Single Modulus Prescaler от библиотеки Mixed-Signal Blockset PLL Architectures. Аналоговый контурный фильтр спроектирован, чтобы достигнуть заданной полосы пропускания контура и запаса по фазе, затем значения схемы и демонстрационный интервал переводятся в коэффициенты цифрового фильтра. Чтобы получить правильное полное усиление цикла, масштабный коэффициент применяется к модели фильтра biquad контурного фильтра.
Деривация цикла получает параллели масштабного коэффициента та из Методики проектирования для Полностью цифровой Фазовой подстройки частоты На основе Аналогии Фазовой подстройки частоты Насоса Заряда.
Переменные, используемые в деривации,
Заряжайте амплитуду тока максимума насоса
Аналоговый импеданс передачи контурного фильтра
Чувствительность VCO и для аналога и для цифрового PLLs
Ссылочный период часов
Разрешение времени TDC
Цифровая передаточная функция контурного фильтра
Усиление DAC
Обратите внимание на то, что для этого примера, общая область значений TDC является двумя ссылочными периодами часов.
Уравнение, чтобы сделать усиление цикла аналога и цифрового PLLs равным:
Поскольку TDC и DAC в этом примере были сконфигурированы, чтобы иметь то же количество битов, это уравнение уменьшает до:
Начиная с функционального getSOSfromAnalogPLL
включенный в этот пример производит коэффициенты фильтра, которые приводят к усилению фильтра, масштабный коэффициент для контурного фильтра.
В то время как коэффициенты контурного фильтра, входной сигнал и выходной сигнал в этом примере являются всей плавающей точкой двойной точности, также было бы возможно использовать Fixed-Point Designer™, чтобы смоделировать целый цифровой путь к обратной связи, использующий точно ту же цифровую точность в качестве в проектировании схем, таким образом получив еще более точную оценку ухудшений, таких как шум квантования.
Можно спроектировать и сконфигурировать цифровой контурный фильтр путем выполнения скрипта:
%%%designDigitalLoopFilter;
Можно сравнить захват цикла аналогового PLL к тому из цифрового PLL. Дополнительная высокочастотная пульсация в аналоговом ответе контурного фильтра происходит из-за формы волны насоса заряда.
open('AnalogPLL.slx'); simout = sim(gcs); apll_vcntl = simout.apll_vcntl; plotLoopFilterWaveforms; msblks.PLL.pllTBPlotPhaseNoiseButton([gcs '/PLL Testbench']); plot(xdpll,ydpll,'LineWidth',2,'DisplayName','Digital PLL');