Доброго всем времени. прошу прощение за молчание. проблема вроде бы разрешилась. ну или хотя бы частично.
проблем было две - с VCXO и с кодом.
Проблема VCXO в том, что он имеет слишком маленький диапазон перестройки. Пытаясь синхронизоваться с 50МГцовой опорой, напряжение на подстраиваемой ножке VCXO просто уходило в зашкал. итог - PLL1 не в LOCk моде.
При подаче в качестве опоры сигнала в 80МГц, сгенерированного аналогичным VCXO, PLL1 сразу входит в LOCK. (разумеется, при перерасчете соответсвующих делителей)
Второй вариант решения мог быть при подключении вместо VCXO опорного сигнала в 50МГц. Но это фактически просто работа без PLL1
PLL2 не входил в LOCK по следующим причинам:
1. в даташит есть пункт
MAXIMUM PFD FREQUENCY
Antibacklash Pulse Width
Minimum and Low 250 MHz
Maximum and High 125 MHz
у меня в регистре, где задается Antibacklash Pulse Width был указан максимум
плюс был включен удвоитель частоты VCXO
то есть на PFD приходила частота 160МГц, что противоречит указанным нормам.
Тут просто надо было выключить удвоитель и пересчитать соответсвующий делитель (N2 на схеме)
2. Есть регистр "PLL2 charge pump control", если его не описывать, то ток устанавливается минимальный. ставлю его хотя бы в середину шкалы и вуаля - PLL2 входит в LOCK
Наверное, для тех, кто с кристаллом не работал, вообще ничего не понятно отсюда. Для улучшения понимания приведу картинку с ADIsimCLK, хотя не уверена, что сильно поможет. Но из нее хотя бы наглядно видно, что есть удвоитель и PFD. В любом случае, вдруг кто будет мучиться с тем же? что и я, и тогда может кому-то это все пригодится.
Сообщение отредактировал AiS - Apr 11 2013, 08:46
Эскизы прикрепленных изображений