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

Вопрос по синтезатору LMX2572LP

Здравствуйте, уважаемые коллеги, прошу вас помочь разобраться с синтезатором частот LMX2572. 
Для установки выходной частоты и общего управления синтезатором использую программу TICS Pro v1.7, тактирование от  генератора ABLNO-V-100МГц.
Задаю частоту 200 МГц, а получаю 202. Коэффициенты все целочисленные, захват Lock Detect =1. Почему может быть такая большая ошибка синтезатора?
Откровенно говоря, я не переписываю все 126 регистров, как рекомендуют, после внутреннего сброса все регистры заполнены заводскими установками. И 
программируются лишь необходимые. Содержимое регистров контролируется через чтение их содержимого. Прилагается код программы инициализации для частоты 200 МГц.

Set_PLL2572LP_ML (0,0x211A);  // Power UP, Reset
  Delay (15);

  Set_PLL2572LP_ML (0,0x2118);     // Power Down_Up, Calibrate
  Delay (15);

  Set_PLL2572LP_ML (0x09,0x0004);  // Doubler = 0

  Set_PLL2572LP_ML (0x0C,0x5001);  // Pre_R =1
  Delay (15);

  Set_PLL2572LP_ML (0x0A,0x10F8);  // Multipler = 1

  Set_PLL2572LP_ML (0x0B,0xB018);  // R = 1

  Set_PLL2572LP_ML (0x0E,0x1870);  // Charge Pump = 6500

  Set_PLL2572LP_ML (0x4B,0x0940);  // Channel Div = 32
  Set_PLL2572LP_ML (0x20,0x0305);  // MASH Phase Synchro =3
  Set_PLL2572LP_ML (0x25,0x0205);  // PFD DLY SEL
	
  Set_PLL2572LP_ML (0x2C,0x0923);  // OUT A PWR = 9
  Set_PLL2572LP_ML (0x2D,0xC609);  // OUT B PWR = 9

  Set_PLL2572LP_ML (0x22,0x0010);  // PLL_N 0..3xxxx
  Set_PLL2572LP_ML (0x24,0x0020);  // PLL_N 0..FFFF - 32

  Set_PLL2572LP_ML (0x2A,0x0000);  // PLL_NUM / 
  Set_PLL2572LP_ML (0x2B,0x0000);  // PLL_NUM / 

  Set_PLL2572LP_ML (0x26,0x0000);  // PLL_DEN / 
  Set_PLL2572LP_ML (0x27,0x0000);  // PLL_DEN / 
			
//  Set_PLL2572LP_ML (0,0x2118);  		// Power Down_Up, Calibrate, MUXout - MISO 
  Set_PLL2572LP_ML (0,0x211C);  		// Power Down_Up, Calibrate, MUXout - Lock Detect
  Delay (15);

Заранее благодарен. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Vladimir_T,  похоже что неверно прописан регистр Channel Div = 32. Попробуйте (0x4B,09C0).

И раз уж у Вас целочисленный режим, попробуйте установить MASH_ORDER = 0 (0x2C, 0900);  PFD_DLY_SEL = 1 (0x25, 0x0105); и PLL_N = 64 (0x24,0040)

LMX2572LP_Integer200MHz.txt

Изменено пользователем AFK
Добавлена карта регистров

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

4 hours ago, AFK said:

похоже что неверно прописан регистр Channel Div = 32. Попробуйте (0x4B,09C0)

Благодарю Вас, установил ваши значения и стало все нормально. 

А то, что я обновляю лишь часть регистров (только несколько основных) это допустимо?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 час назад, Vladimir_T сказал:

А то, что я обновляю лишь часть регистров (только несколько основных) это допустимо?

В общем-то да. Не требуют перезаписи те регистры, в описании которых стоит комментарий "After programming R0 with RESET = 1, no need to program this register", а также те,  у которых текущие значения соответствуют Вашим требованиям. 

Изменено пользователем AFK
поправлено

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Благодарю за помощь. Добавил программу преобразования выходного файла TICS в файл для включения в С-код. Сделана на скорую руку, но может кому-то еще,  кроме меня, будет полезной. Регистры можно обновлять из полученного массива, как по отдельности, так и блоком. 

Преобразователь_TICS.rar

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Здравствуйте, уважаемые коллеги, подскажите, почему нет выходного сигнала с LMX2572LP на частотах выше 200 МГц? Петля из таких элементов C1=2200, С2= 15000, R1 = 330, сигнал захвата MuxOut = 1. Частоты от 200 MHz (амплитуда - 500мВ)  и ниже формируются, но с понижением частоты - амплитуда растёт до напряжения питания.  На что нужно обратить внимание и почему с частотой падает амплитуда. Коэффициенты пробовал разные и целочисленные - все равно плохо...

 

 

300_MHz.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Здравствуйте, Vladimir_T.

1) Уточните, пожалуйста - "сигнал захвата MuxOut = 1" означает всё-таки захват или отсутствие захвата? Просто чтоб не было путаницы, а то в документации rb_LD_VTUNE = 1:Unlocked, а rb_LD_VTUNE = 2:Locked. Если MuxOut =1 означает захват, то всегда ли он есть - и ниже 200 МГц и выше 200 МГц?

2) Как и чем вы измеряете уровень? Если осциллографом, то проверьте - достаточно ли широкая полоса у него и у щупа.

3) Чтоб уменьшить диапазон гаданий, не могли бы вы привести фрагмент схемы или сделать фотографию участка платы от выхода LMX2572LP до места съёма сигнала. Проблема может быть как в обвязке,  так и с регистрами, а может и с измерениями. 

P.S.: Charge Pump Gain 625 мкА возможно маловат - это может влиять на стабильность петли.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

17 hours ago, AFK said:

1) Уточните, пожалуйста - "сигнал захвата MuxOut = 1" означает всё-таки захват или отсутствие захвата? 

Честно говоря, я не знаю как должно быть, но картина такая, что когда применяю целочисленные коэффициенты, например, для частоты 100МГц, тогда MuxOut = 0. А в для дробных, как например 100.001 МГц, то MuxOut = 1. Вот и получается, что MuxOut = 1 всегда почти.   

2) Как и чем вы измеряете уровень?

Осциллограф LeCroy 64xS-A 600 MHz, щуп штатный 1:10 500MHz/9.5pF. 

3) Чтоб уменьшить диапазон гаданий, не могли бы вы привести фрагмент схемы или сделать фотографию участка платы от выхода LMX2572LP до места съёма сигнала.

Конечно привожу.  Сама связь CPout и UTune в нижнем слое. В самом симуляторе PLLatium показано, что С1 у CPout, на примере КИТа C1 у UTune. Я пробовал оба варианта - работают одинаково: нет сигнала. Общие требования к расположению элементов старался выполнить.

P.S.: Charge Pump Gain 625 мкА возможно маловат - это может влиять на стабильность петли.

Пробовал с разными значениями тока заряда - не помогает в моем случае.

 

ПП_кусок.png

Схема_PLL.png

C28 - 2200pF, C34 - 15 nF, R29 - 330 Ом

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 часа назад, Vladimir_T сказал:

когда применяю целочисленные коэффициенты, например, для частоты 100МГц, тогда MuxOut = 0. А в для дробных, как например 100.001 МГц, то MuxOut = 1

Прикрепите, пожалуйста, карты регистров для пары случаев когда MuxOut = 0 и для пары случаев когда MuxOut = 1 - желательно считать с микросхемы.

 

Ещё попрошу уточнить - 

1) характер спада уровня сигнала после 200 МГц - сигнал совсем исчезает или плавно продолжает снижаться с ростом частоты?

2) щуп прикладываете к C32/(C33),  т.е. до логических микросхем?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

5 hours ago, AFK said:

карты регистров для пары случаев когда MuxOut = 0 и для пары случаев когда MuxOut = 1  считать с микросхемы.

Сигнал после 200МГц только появляется, со снижением частоты - амплитуда только растет. 

Щуп ставлю после  C32/(C33). Выходной сигнал - синусоида

Благодарю за помощь.  

100_001MHz.png

Это содержимое регистров для 100.001 МГц

100MHz.png

Это содержимое регистров для 100 МГц

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Vladimir_T, подправил немного регистры с верхней картинки для выходной частоты 100,001 МГц (Fosc = 100 МГц) - на выход MUXout выведено состояние захвата: высокий уровень - Lock; низкий уровень - Unlock.

LMX2572LP_100m001.txt

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 5/14/2021 at 2:19 PM, AFK said:

 включить FCAL_EN: 0-й регистр 2110 -> 2118

Калибровка делается после обновления регистров, как положено. Но потом через небольшую задержку бит калибровки убираю, потому, как он автоматически не снимается. 

2. Program R0 with FCAL_EN = 1. The PLL will calibrate and lock using the new PLL_R and PLL_N values. (SNAS764 –MAY 2018)

 

On 5/14/2021 at 3:02 PM, AFK said:

Vladimir_T, подправил немного регистры с верхней картинки для выходной частоты 100,001 МГц (Fosc = 100 МГц) - на выход MUXout выведено состояние захвата

Благодарю вас, сейчас проверю. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

44 минуты назад, Vladimir_T сказал:

Калибровка делается после обновления регистров, как положено. Но потом через небольшую задержку бит калибровки убираю, потому, как он автоматически не снимается. 

Бит FCAL_EN лучше не трогать. В описании регистра 0 об этом прямо сказано:

Capture+_2021-05-17-06-25-58.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

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

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...