Jump to content
    

Цифровая ФАПЧ

Вы, часом, не про ПИ-звено? Или Вы именно про фильтр (ФНЧ)?

 

Нет. :)

 

вот схема

post-43553-1365442436_thumb.png

фнч у меня есть он предназначен для того чтоб срезать

двойную частоту

входная частота 2,65 mgц ее девиация 200 кgц

частота клока выборок 66 mgц

 

 

Share this post


Link to post
Share on other sites

Круто! :)

А выход то где? Где выходной клок?

выход идет с фд в момент девиации на нем должен быть выброс

сигнализирующий о изменении фазы входного сигнала

а клок я не рисовал эта системная частота с которой работает плис

по сути частота семплов

 

Share this post


Link to post
Share on other sites

выход идет с фд в момент девиации на нем должен быть выброс

сигнализирующий о изменении фазы входного сигнала

а клок я не рисовал эта системная частота с которой работает плис

по сути частота семплов

Признаюсь честно - я ни черта не понял :).

Просто когда речь заходит о цифровой ФАПЧ, то в голове у меня другая картинка рисуется...

 

Вы не могли бы поподробнее рассказать как работает Ваша ФАПЧ и, главное, для чего она работает.

 

Что это за блок "CORDIC PLL"? Общие представления о cordic имеются, что такое ARCT CORDIC тоже понятно. А вот что такое CORDIC PLL - нет :)

 

А заодно объясните, как она решает (и может ли решать) "типичные" задачи для ФАПЧ:

1) Фильтрация дрожания фазы входного сигнала (джиттера).

2) Захват частоты, а главное - удержание частоты при потере входного сигнала.

Edited by winipuh

Share this post


Link to post
Share on other sites

Признаюсь честно - я ни черта не понял :).

Просто когда речь заходит о цифровой ФАПЧ, то в голове у меня другая картинка рисуется...

 

Вы не могли бы поподробнее рассказать как работает Ваша ФАПЧ и, главное, для чего она работает.

 

Что это за блок "CORDIC PLL"? Общие представления о cordic имеются, что такое ARCT CORDIC тоже понятно. А вот что такое CORDIC PLL - нет :)

 

А заодно объясните, как она решает (и может ли решать) "типичные" задачи для ФАПЧ:

1) Фильтрация дрожания фазы входного сигнала (джиттера).

2) Захват частоты, а главное - удержание частоты при потере входного сигнала.

идею я взял вот тут демодулятор с фапч

CORDIC PLL генератор dds sin cos то я перепутал вместо dds написал pll

по поводу второго пункта даже не знаю надо проверить

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

Уважаемые форумчане, я студент, совершенно ничего не понимающий по сабжу, кроме как сюда мне обратиться некуда, поэтому просьба пинать несильно :)

Делаю лабу по созданию системы восстановления несущего колебания для QAM 256, но колебание не восстанавливается, скорее всего потому, что не могу рассчитать пропорциональный и интегральный коэффициенты. Методичка: Страница 64 отсюда ; скрины прилагаются. Кто-нибудь может подсказать, в какую сторону мне копать? Заранее благодарен за помощь)

 

1png_8292141_11646901.png

 

2png_6316782_11646924.png

 

3png_9158391_11646934.png

 

4png_7350388_11646940.png

Share this post


Link to post
Share on other sites

Делаю лабу по созданию системы восстановления несущего колебания для QAM 256, но колебание не восстанавливается, скорее всего потому, что не могу рассчитать пропорциональный и интегральный коэффициенты. Методичка: Страница 64 отсюда ; скрины прилагаются. Кто-нибудь может подсказать, в какую сторону мне копать? Заранее благодарен за помощь)

Методичка хорошая, но вы упустили из виду

The Costas loop is not designed to handle QAM16. It only works for BPSK, QPSK, and 8PSK.

читать здесь http://gnuradio.4.n7.nabble.com/Costas-loo...ck-td44109.html

 

Share this post


Link to post
Share on other sites

On 8/3/2012 at 9:40 AM, Pavel Proskura said:

Ниже приводится алгоритм расчета контура ФАПЧ по Незами:

fclk = 10e6; % Частота дискретизации (Гц)

T = 1/fclk; % Время выборки (секунды)

M = 32; % Разрядность фазового аккумулятора NCO

fres = fclk/(2^M); % Разрешение по частоте NCO (Гц)

Ko = fres*2*pi; % Коэфф. усиления NCO (рад/сек * разряд)

Kd = 0.5; % Коэфф. усиления детектора (хрен знает в чем измеряется??)

Bn = 10e3; % Натуральная полоса пропускания ФАПЧ (Гц)

wn = Bn*2*pi; % Круговая полоса пропускания (рад/с)

zeta = 0.707; % Коэфф. демпфирования (затухания)

BL = 2*pi*Bn*(zeta+(1/(4*zeta))); % Шумовая полоса ФАПЧ

Kp = (T*(wn^2)/(2*Ko*Kd))*(1+(1/tan(T*wn/(4*zeta)))); % Пропорциональный коэфф.

Ki = T*(wn^2)/(Ko*Kd); % Интегральный коэфф.

На какой странице книги методика, по которой расчитывали ?

На странице 3-50, вроде бы, расчитывается по другим формулам:

Quote

where BL is the noise loop bandwidth

Непонятно: если задача- демодулировать поднесущую 16КГц, кака выбрать "BL is the noise loop bandwidth" ?

pll.png

PLL_design.docx

Share this post


Link to post
Share on other sites

Software Defined Radio Using MATLAB & Simulink and the RTL-SDR название книги.  стр 264. раздел pll-design. Там очень подробно все описано по шагам.

Книга в свободном доступе (по крайней мере была раньше).

Share this post


Link to post
Share on other sites

Спасибо !

Подставил коэфициенты
fs = 30720000;            % sampling rate
fq = 100000;                % expected (quiescent) frequency
M = 32;                         % Разрядность фазового аккумулятора DDS
fres = fs/(2^M);            % Разрешение по частоте DDS (Гц)
Ko = fres*2*pi;             % Коэфф. усиления DDS (рад/сек * разряд)
Bn = 16000;                 % noise bandwidth

Не выходит каменный цветок:

На выходе ФАПЧ должна быть только 16 КГц. Получается 16 КГц, промодулированная 100КГц.

%PLL NOISE MODEL CONFIGURATOR

% PRINT FILE INFORMATION HYPERLINK TO COMMAND WINDOW
disp(['View file information for <a href="matlab: mfileinfo(''',mfilename,''')">',mfilename,'</a>']);

% set primary parameters
%---------------------------

fs = 30720000;              % sampling rate
T = 1/fs;                   % sample period
fq = 100000;                % expected (quiescent) frequency
d = 0.707;                  % damping ratio
Kp = 0.5;                   % phase detector gain (multiplier)
%Ko = 1;                     % oscillator gain
M = 32; % Разрядность фазового аккумулятора DDS 
fres = fs/(2^M); % Разрешение по частоте DDS (Гц) 
Ko = fres*2*pi; % Коэфф. усиления DDS (рад/сек * разряд) 
Bn = 16000;                  % noise bandwidth

% calculate secondary parameters
%-----------------------------------

mu_q = (2*pi*fq)/fs;        % quiescent step size for NCO

eta = (Bn*T)/(d+(1/d));     % a repeated section of the equations below

K1 = (4*d*eta)/(Ko*Kp*(1+(2*d*eta)+eta^2));     % Loop filter prop coeff.
K2 = (4*eta^2)/(Ko*Kp*(1+(2*d*eta)+eta^2));     % Loop filter integral coeff.
% for simulation purposes...
%-----------------------------------
n = 50000;                  % number of samples in simulation
ferr = 4500;                % frequency error of input sine (in Hz)
awgn = 0.05;                % variance of AWGN
fprintf('Коэфф. усиления DDS %d\n', Ko);
fprintf('Пропорц. коэфф Kp %d\n', K1);
fprintf('Интегр. коэфф Ki %d\n', K2);


Коэфф. усиления DDS 4.494084e-02
Пропорц. коэфф Kp 3.088788e-02
Интегр. коэфф Ki 1.072604e-05

 

3.png

pll_model.slx

Share this post


Link to post
Share on other sites

On 1/7/2021 at 12:18 PM, Pavel Proskura said:

Software Defined Radio Using MATLAB & Simulink and the RTL-SDR название книги.  стр 264. раздел pll-design. Там очень подробно все описано по шагам.

Книга в свободном доступе (по крайней мере была раньше).

ФАПЧ подстраивается с коэффициентами на 3-4 порядка больше рассчитанных.

Расчет по скрипту из рекомендованной Вами книги стр 264:

Частота дискретизации 30.72 МГц.

Разрядность NCO 32 бит

Несущая 100 КГц

Модулирующий сигнал 16 КГц.

Где ошибка в расчетах ?

disp(['View file information for <a href="matlab: mfileinfo(''',mfilename,''')">',mfilename,'</a>']);
% set primary parameters
%---------------------------
fs = 30720000;              % sampling rate
T = 1/fs;                   % sample period
fq = 100000;                % expected (quiescent) frequency
d = 0.707;                  % damping ratio
Kp = 0.5;                   % phase detector gain (multiplier)
%Ko = 1;              % oscillator gain
M = 32; % Разрядность фазового аккумулятора DDS 
fres = fs/(2^M); % Разрешение по частоте DDS (Гц) 
Ko = fres*2*pi; % Коэфф. усиления DDS (рад/сек * разряд) 
Bn = 10;                  % noise bandwidth
% calculate secondary parameters
%-----------------------------------
mu_q = (2*pi*fq)/fs;        % quiescent step size for NCO
eta = (Bn*T)/(d+(1/d));     % a repeated section of the equations below
K1 = (4*d*eta)/(Ko*Kp*(1+(2*d*eta)+eta^2));     % Loop filter prop coeff.
K2 = (4*eta^2)/(Ko*Kp*(1+(2*d*eta)+eta^2));     % Loop filter integral coeff.
% for simulation purposes...
%-----------------------------------
n = 50000;                  % number of samples in simulation
ferr = 4500;                % frequency error of input sine (in Hz)
awgn = 0.05;                % variance of AWGN
fprintf('Коэфф. усиления DDS %d\n', Ko);
fprintf('Пропорц. коэфф Kp %d\n', K1);
fprintf('Интегр. коэфф Ki %d\n', K2);

Коэфф. усиления DDS == 4.494084e-02
Пропорц. коэфф Kp == 1.931162e-05
Интегр. коэфф Ki == 4.191312e-12

 

1.PNG

pll_model_v2_2017.slx

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...