Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Cyclone III PLL bug
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
Страницы: 1, 2
Postoroniy_V
Цитата(des00 @ Jan 5 2010, 20:55) *
Хроники расследования :

Забежал на пару часов на работу, проверил несколько идей. Результаты отрицательные.

1. Идея насчет изоляции клока АЦП от всего в схеме. Условия : PLL_3, с0 - только АЦП, с1/с2 - только система. c0 идет на PLLCLKOUT. Результат : помеха остается. Если инверсии клока нет то уровень помехи -28дБ. Если инверсия клока есть уровень помехи -23дБ.

2. Проверка использования другой PLL. Условия: PLL_2. Результат тот же -23/-28Дб.

Еще заметил интересную вешь. Есть у меня сигнал сброса CIC фильтров, в этом случае с выхода CIC фильтров летят нули. Так вот помеха пропадает в случаях :
1. Отключаю enable chain
2. Включаю сброс CIC фильтров.

Т.е. enable chain не сильно то и причем. Получается косяк в количестве хлопающей логики.

может это SSN? cranky.gif
http://www.altera.com/literature/an/AN508.pdf
SM
Цитата(Postoroniy_V @ Jan 6 2010, 09:25) *
может это SSN? cranky.gif

Да это явно оно, к бабке не ходи, только я думаю, скорее всего это SSN в части SSO, особенно тех O, что рядом с PLL.
des00
Цитата(vadimuzzz @ Jan 5 2010, 23:01) *
а если попробовать так: задействовать 2 PLL, одна только для АЦП, вторая только для логики.

сейчас смоюсь на работу и проверю

Цитата
видны гармоники и свои, и 50 МГц(паразитные). так что BGA не спасает )

ндя и это на альтеровском ките....


Цитата(Postoroniy_V @ Jan 6 2010, 00:25) *
может это SSN? cranky.gif

Насколько я понимаю SSN относиться к наводкам на сигналы ввода/вывода когда много пинов переключаются одновременно. Под данную конкретную ситуацию это не сильно подходит %)


Цитата(SM @ Jan 6 2010, 02:27) *
Да это явно оно, к бабке не ходи, только я думаю, скорее всего это SSN в части SSO, особенно тех O, что рядом с PLL.

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

UPD при этом slew rate везде выставлен самый медленный
SM
Цитата(des00 @ Jan 6 2010, 11:37) *
ну вот откуда возьмутся наводки, когда клок выводился в отдельный, неиспользуемый порт, при этом по бокам у него была земля ? smile.gif

А какая разница-то, куда и как выводится клок, если, например, прыгает потенциал подложки под PLL-кой из-за того, что ее обложили скоростными портами с fast slew rate, нагруженными аццкими емкостями... Уже очень давно как все эти дела производителями ПЛИС свалены на разработчика содержимого ПЛИС, и ПЛИСы имеют ограничение по SSO куда более жесткое, чем можно максимально нагрузить при помощи среды разработки. Насчет расположения дифпар об этом среда хоть как-то заботится, а вот о расположении PLL по видимому нет.

Да и есть уверенность в грамотности топологии разводки питания на плате? То, что это кит, вовсе не говорит, что индус, его разрабатывавший, все предусмотрел.
des00
Цитата(SM @ Jan 6 2010, 02:42) *
А какая разница-то, куда и как выводится клок, если, например, прыгает потенциал подложки под PLL-кой из-за того, что ее обложили скоростными портами с fast slew rate, нагруженными аццкими емкостями... Уже очень давно как все эти дела производителями ПЛИС свалены на разработчика содержимого ПЛИС, и ПЛИСы имеют ограничение по SSO куда более жесткое, чем можно максимально нагрузить при помощи среды разработки. Насчет расположения дифпар об этом среда хоть как-то заботится, а вот о расположении PLL по видимому нет.


Все так, но как уже писал. У ПЛИС используется 23 порта(!!!). При этом 10 это данные АЦП (вход), 1 клок АЦП(выход), 8 inout USB, 2 USB стробы (выходы), 2 USB флаги (входы). ВСЁ. USB используется в асинхроне, там эквивалентная частота около 8МГц. Остальные порты заглушены, в них выдается 0. Какие сверхскоростные интерфейсы вы тут видите?

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

Про кит да, никакой. А в человеке который разводил мою плату есть %) эффект проявляющейся на ней тот же самый.
SM
Цитата(des00 @ Jan 6 2010, 11:48) *
Какие сверхскоростные интерфейсы вы тут видите?

Теперь вижу, что никаких. Тогда остается превышение SSN не по SSO, а по количеству одновременно переключаемых тяжело нагруженных LE внутри. Как вариант - попробуйте уменьшить max_fanout синтезатору (точно знаю, что синплифай с латисом это умеют, а вот квартус - не знаю, но думаю должен ). Или поставить более толстый кристалл, совместимый по пинам.
des00
Цитата(SM @ Jan 6 2010, 02:52) *
Тогда остается превышение SSN не по SSO, а по количеству одновременно переключаемых тяжело нагруженных LE внутри. Как вариант - попробуйте уменьшить max_fanout синтезатору (точно знаю, что синплифай с латисом это умеют, а вот квартус - не знаю, но думаю должен ).

спасибо за наводку, почитаю отчеты синтезатора и проверю эту идею.

Цитата
Или поставить более толстый кристалл, совместимый по пинам.

в данном корпусе TQFP144, это самый жирный кристал. Проект и так заоптимален по размеру по самые помидоры, еле всё влезло %)
SM
Цитата(des00 @ Jan 6 2010, 11:59) *
еле всё влезло %)

Вот это и есть IMHO основная причина. Я тут как-то с привидениями в латисе воевал - триггер сам изредка асинхронно сбрасывался... А причина была околопохожая.
des00
Цитата(SM @ Jan 6 2010, 03:10) *
Вот это и есть IMHO основная причина. Я тут как-то с привидениями в латисе воевал - триггер сам изредка асинхронно сбрасывался... А причина была околопохожая.

Наводка появилась когда заполненность кристалла была 40-50% и ИМХО плохой это метод ставить печеньку много толще чем нужно %)

Хроники расследования :

1. Идея подвинуть клок на 90 градусов. PLL2/PLL3 - клок на АЦП отдельный со сдвигом на 90 градусов. не инвертированный. Результат -(23-25)Дб. Т.е. эффекта не дало
2. Максимальные фанауты в проекте : на одном сегменте enable - chain цепи 2532, остальные не выше 950. Поставил на ту enable секцию фанаут = 1000. результата не дало.
SM
Цитата(des00 @ Jan 6 2010, 14:44) *
2. Максимальные фанауты в проекте : на одном сегменте enable - chain цепи 2532, остальные не выше 950. Поставил на ту enable секцию фанаут = 1000. результата не дало.

Фигасе фанауты... Я в латисе игрался цифрами ограничителя не более 100 (который по умолчанию). Неужели в альтере такие мегаваттные LE smile.gif что один умудряется без проблем протянуть 1000 входов....
des00
Цитата(SM @ Jan 6 2010, 06:27) *
Фигасе фанауты... Я в латисе игрался цифрами ограничителя не более 100 (который по умолчанию). Неужели в альтере такие мегаваттные LE smile.gif что один умудряется без проблем протянуть 1000 входов....

Да я как то не задавался таким вопросом%) 100 МГц проект, от этой линии тактируется всего 2 фильтра.

Чип кстати холоднее второго сыклона раза в 2 (если сравнивать на близких проектах). Т.е. палец еле еле чувствует тепло. Это при почти 100% забитости на частотах 80% 100 МГц 20% 200МГц.
SM
Цитата(des00 @ Jan 6 2010, 15:29) *
от этой линии тактируется всего 2 фильтра.

Не, что от чего тактируется, когда оно идет глобальным сигналом (предразведенным буферированнм деревом), там понятно, что фанаутов может быть сколько угодно. Я про неглобальные и не тактовые сигналы.

Попробуйте еще вот что:
- пустить енабли и резеты (кто там еще high fanout) в глобальную сеть (не в интернет smile.gif ) - мало ли...
- аццкий совет, но... Пустить клок к части проекта вне глобальной сети (если ква справится с задачей) - с целью разбросать моменты переключений "туда-сюда".

Все таки полное ощущение что проблемы от SSN, и, все же, возможно, кривыми токами по земле и питанию PLL.
des00
Цитата(SM @ Jan 6 2010, 06:35) *
Не, что от чего тактируется, когда оно идет глобальным сигналом (предразведенным буферированнм деревом), там понятно, что фанаутов может быть сколько угодно. Я про неглобальные и не тактовые сигналы.

думал про одно, писал про другое. Энейблиться конечно.

Цитата
Попробуйте еще вот что:
- пустить енабли и резеты (кто там еще high fanout) в глобальную сеть (не в интернет smile.gif ) - мало ли...
- аццкий совет, но... Пустить клок к части проекта вне глобальной сети (если ква справится с задачей) - с целью разбросать моменты переключений "туда-сюда".

Все таки полное ощущение что проблемы от SSN, и, все же, возможно, кривыми токами по земле и питанию PLL.

Попробую чуть позже, пока проверю идею с дробным приемником
Builder
Цитата(des00 @ Jan 6 2010, 13:44) *
1. Идея подвинуть клок на 90 градусов. PLL2/PLL3 - клок на АЦП отдельный со сдвигом на 90 градусов. не инвертированный. Результат -(23-25)Дб. Т.е. эффекта не дало
Может и глупость скажу, не пинайте. А если выходной клок двигать не на 90 градусов, а так, что-бы он выскакивал наружу перед тем, как пойдёт фронт на внутренней логике. Типа выдавать клок наружу, когда внутри всё уже по максимуму отсчёлкало.
Только тут нужно иметь запас по частоте логиги, что-б там внутри всё реально отсчёлкало к времени выдачи клока наружу. И желательно побольше, что-б все возможные переходные процессы по максимуму завершились.
DmitryR
Цитата(des00 @ Jan 5 2010, 14:55) *
Если инверсии клока нет то уровень помехи -28дБ.

Скажите, а чего вы вообще еще хотите от цифрового чипа? -28дБ - это ровно 25 раз, 130 мВ на размахе в 3.3. Я понимаю конечно что вы, возможно, хотите еще децибелл 10, но для этого IMHO придется все учествующее запитать от low-noise LDO и емкости повесить на каждую лапу не так, как рекомендовано у Альтеры, а втрое больше. Потому что когда Альтера писала свои рекомендации - она расчитывала на обеспечение работоспособности цифровой схемы.
SM
Кстати да. Вбило почему-то в голову, что надо бороться с источником помехи. А каким образом вообще помеха с уровнем <-20 дБ на логическом (тактовом) сигнале может влиять на тактирование АЦП? Если допустить, что сигнал имеет размах 3.3 вольта, то это "нечто" в районе 0.3 вольта, что значительно меньше порога, и что для цифрового сигнала явно допустимо. Тут похоже надо бороться не с ее источником, а с тем, почему она вообще на что-то повлияла. И посмотреть на все это дело не спектроанализатором, не синус все таки исследуется, а такт, в нем не гармоники важны, а стабильность и правильность фронтов.
vadimuzzz
Цитата(SM @ Jan 7 2010, 03:12) *
А каким образом вообще помеха с уровнем <-20 дБ на логическом (тактовом) сигнале может влиять на тактирование АЦП?

клок АЦП только с виду логический сигнал, он же идет на SHA(THA), тот же смеситель по сути, соответственно все помехи свернет в одну полосу. логический сигнал (быстрый фронт) нужен чтобы быстро зарядить входную емкость, чтоб шумы поменьше.
des00
Цитата(DmitryR @ Jan 6 2010, 13:02) *
Скажите, а чего вы вообще еще хотите от цифрового чипа? -28дБ - это ровно 25 раз,

хмм под помехой я с начала темы понимаю не наводку на сигнал тактирования АЦП, а паразитный спектр который заворачивается в полосу приемника. Спектр этот появляется за счет нелинейного преобразования на АЦП на гармонике, которой по идее вообще не должно быть в этом сигнале.
SM
Цитата(vadimuzzz @ Jan 7 2010, 06:38) *
клок АЦП только с виду логический сигнал, он же идет на SHA(THA), тот же смеситель по сути,

Тот по сути смеситель, но по схемотехнике - операционник, четыре емкости и шесть ключей вокруг. Ключи управляются тактовым сигналом тоже как цифровым, и тоже все, что далеко от порога, влиять не должно (там подавление прохождения клока, и всего, что на нем, в канал куда больше 60 дБ). А по аналоговым каналам ключей ходит только входной сигнал. Все таки у автора что-то не то в другой части консерватории. Посмотреть бы на его сигнал осциллографом, а не на спектр... Спектр он там совершенно официально может содержать до примерно полвольта (если он LVCMOS33) официальных наводок с SSN-происхождением, и это норма жизни. Или почему вообще LVDS-клок не вывести, ему этот SSN до одного места по причине синфазности...

Цитата(des00 @ Jan 7 2010, 10:13) *
за счет нелинейного преобразования на АЦП на гармонике

Вот поподробнее пожалуйста, что это за такой хитрый процесс и какова его суть. Куда именно и как попадает эта гармоника, что умудряется что-то куда-то завернуть?
MKS
Цитата(SM @ Jan 7 2010, 09:37) *
...
Вот поподробнее пожалуйста, что это за такой хитрый процесс и какова его суть. Куда именно и как попадает эта гармоника, что умудряется что-то куда-то завернуть?
Неоднократно наблюдал нечто похожее. АЦП тактировался от DDS частотой 60 МГц, кроме основной частоты с него шло много паразитных частот подавленых на -30...-60 дБ. Все эти частоты наблюдались на спектре оцифрованого сигнала. На рисунке спектр такой реализации сигнала.
Это я пишу к тому что любой мусор попадающий на тактовый вход АЦП попадает в спектр оцифрованого сигнала, и с этим надо быть осторожным.
Нажмите для просмотра прикрепленного файла
vadimuzzz
Цитата(SM @ Jan 7 2010, 13:37) *
Тот по сути смеситель, но по схемотехнике - операционник, четыре емкости и шесть ключей вокруг. Ключи управляются тактовым сигналом тоже как цифровым, и тоже все, что далеко от порога, влиять не должно. А по аналоговым каналам ключей ходит только входной сигнал.

а по входу клока у АЦП стоит драйвер, который раскачивает сигнал по самое не хочу (АЦП ведь наверняка позволяет запитку и LVDS, и LVPECL). что он сделает с маленькой помехой?
SM
Цитата(vadimuzzz @ Jan 7 2010, 11:32) *
а по входу клока у АЦП стоит драйвер, который раскачивает сигнал по самое не хочу (АЦП ведь наверняка позволяет запитку и LVDS, и LVPECL). что он сделает с маленькой помехой?

Должен - отрезать по уровню своего порога и убить. А по хорошему еще и гистерезис по входу иметь бы должен. А что сделает - не знаю, не я его разрабатывал smile.gif. Я подозреваю, что эта помеха лезет в сигнальный канал каким-то неофициальным путем, проникая например в сигнальный канал в виде наводки, хоть и из такта.

Автору - может просто пропустить этот клок через 74LVC1G14, запитанный от отдельного фильтра? Тем более, что фазу в ПЛИСе можно двигать как угодно, и эта задержка решительно ничего плохого не сделает.
VslavX
Цитата(SM @ Jan 7 2010, 12:44) *
Автору - может просто пропустить этот клок через 74LVC1G14, запитанный от отдельного фильтра? Тем более, что фазу в ПЛИСе можно двигать как угодно, и эта задержка решительно ничего плохого не сделает.

Именно, что фаза двигается при помощи PLL. ИМХО, поэтому-то сдвиг на 90 (удалили все фронты тактового сигнала от момента переключений внутри ПЛИС) не особо помог - так как PLL-ка внутри все равно "вздрогнула", соответственно и "довернутый" выход - тоже. Лично я проблему решил бы тупо и прямолинейно - клоковым буфером-разветвителем, один выход на ПЛИС, второй - на АЦП.
Postoroniy_V
Цитата(VslavX @ Jan 7 2010, 20:38) *
Именно, что фаза двигается при помощи PLL. ИМХО, поэтому-то сдвиг на 90 (удалили все фронты тактового сигнала от момента переключений внутри ПЛИС) не особо помог - так как PLL-ка внутри все равно "вздрогнула", соответственно и "довернутый" выход - тоже. Лично я проблему решил бы тупо и прямолинейно - клоковым буфером-разветвителем, один выход на ПЛИС, второй - на АЦП.

ну почему же тупо? smile.gif) (я бы на ацп завёл бы дифф сигнал если такое возможно)

2 des00, Денис, цена вопроса 1 бякс на клоковом дистрибуторе? ...а геморру то сколько cranky.gif
petrov
В клоке ли дело? "Яйца" на моделях не раз наблюдал из-за ошибок в ЦОС.
des00
Цитата(Postoroniy_V @ Jan 7 2010, 05:47) *
2 des00, Денис, цена вопроса 1 бякс на клоковом дистрибуторе? ...а геморру то сколько cranky.gif

опять те же вопросы? %) уже объяснял на первой странице поста, что у меня нет на плате генератора с частотой равной частоте тактирования АЦП. У меня стоит генератор LVCMOS на частоту в 2 раза меньше.

Цитата
бы на его сигнал осциллографом, а не на спектр... Спектр он там совершенно официально может содержать до примерно полвольта (если он LVCMOS33) официальных наводок с SSN-происхождением, и это норма жизни. Или почему вообще LVDS-клок не вывести, ему этот SSN до одного места по причине синфазности...

Хороший осцил смогу взять только после праздников, АЦП используется AD9215BRU-105, у него нет LVDS входа тактовой. Но это пол беды, у сыклона в таком корпусе почти нет LVDS выходов.

Цитата
Вот поподробнее пожалуйста, что это за такой хитрый процесс и какова его суть. Куда именно и как попадает эта гармоника, что умудряется что-то куда-то завернуть?

Как мне объяснил мой модемный гуру, в данной схеме АЦП по сути смеситель, и на его не линейности рождаются гармоники спектра, которые затем сворачиваются с частотой наводки и попадают в полосу приемника. Это происходит в самом АЦП. И эти наводки уже ничем из полосы не вырежешь.

Цитата(petrov @ Jan 7 2010, 05:54) *
В клоке ли дело? "Яйца" на моделях не раз наблюдал из-за ошибок в ЦОС.

прочитайте тему внимательно с первого поста %) дело именно в этом.

Цитата
Автору - может просто пропустить этот клок через 74LVC1G14, запитанный от отдельного фильтра? Тем более, что фазу в ПЛИСе можно двигать как угодно, и эта задержка решительно ничего плохого не сделает.

Т.е. по сути поставить внешний усилитель/ограничитель и "срезать" паразитную модуляцию клока ?
vadimuzzz
Цитата(SM @ Jan 7 2010, 16:44) *
Должен - отрезать по уровню своего порога и убить. А по хорошему еще и гистерезис по входу иметь бы должен. А что сделает - не знаю, не я его разрабатывал smile.gif. Я подозреваю, что эта помеха лезет в сигнальный канал каким-то неофициальным путем, проникая например в сигнальный канал в виде наводки, хоть и из такта.

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

Цитата(des00 @ Jan 7 2010, 19:28) *
Т.е. по сути поставить внешний усилитель/ограничитель и "срезать" паразитную модуляцию клока ?

у вас не модуляция, на спектр посмотрите - он несимметричный. помеха чисто аддитивная (ну, в первом приближении). имеем на выходе sin(f_АЦП)+sin(f_логики)+их гармоники. подаем на нелинейный элемент (а их в АЦП есть) - и привет.
VslavX
Цитата(des00 @ Jan 7 2010, 15:28) *
Т.е. по сути поставить внешний усилитель/ограничитель и "срезать" паразитную модуляцию клока ?

ИМХО, буфер не поможет, сигнал-то цифровой, и "модулироваться" реально может только момент фронта/среза - джиттер. Буфер этот "модулированный джиттер" просто повторит (да еще свой добавит).
P.S. По ходу вопрос - а что можно применить для уменьшения джиттера? Добавить внешний чип PLL между ПЛИС и АЦП?
des00
Цитата(VslavX @ Jan 7 2010, 08:18) *
ИМХО, буфер не поможет, сигнал-то цифровой, и "модулироваться" реально может только момент фронта/среза - джиттер. Буфер этот "модулированный джиттер" просто повторит (да еще свой добавит).

дело то здесь не в джиттере, джиттер даст фазовые шумы, а не дополнительные гармоники. ИМХО vadimuzzz правильно написал про помеху.

Цитата
P.S. По ходу вопрос - а что можно применить для уменьшения джиттера? Добавить внешний чип PLL между ПЛИС и АЦП?

ИМХО генератор -> внешняя PLL -> клоковый буфер -> АЦП и ПЛИС

ЗЫ. Я тут подумал инвертирование клока АЦП как раз и есть разнесение клоков по фазе и влияние инверсии на уровень помехи есть. Так что идея о сдвиге работает, но дает меньше чем хотелось бы %)

ЗЗЫ. Еще обдумываю об уменьшении количества логики хлопающей по enable, оставить на нем только те места, без которых работа невозможна, а остальное посадить на чистый клок. Немного проиграю по теплу, но здесь запас есть.
SM
Цитата(des00 @ Jan 7 2010, 16:28) *
Т.е. по сути поставить внешний усилитель/ограничитель и "срезать" паразитную модуляцию клока ?

Да. А лучше SN65LVDT2, раз АЦП сам это не умеет. Ну а один dedicated LVDS clock output наверняка найдется. ИМХО гораздо проще накрепко замуровать дыру, откуда лезут привидения, чем бороться с ним там, где их миллион.
des00
Цитата(vadimuzzz @ Jan 7 2010, 07:53) *
у вас не модуляция, на спектр посмотрите - он несимметричный. помеха чисто аддитивная (ну, в первом приближении). имеем на выходе sin(f_АЦП)+sin(f_логики)+их гармоники. подаем на нелинейный элемент (а их в АЦП есть) - и привет.

неправильно выразился, если мне память не изменяет, сумма двух синусоид разной частоты дает вейвформу на которой огибающая основного тона изменяется по амплитуде в соответствии с помехой. Как я понял SM он предлагает срезать это изменение, получив на выходе чистый сигнал основного тона, пусть и с большим джиттером.
SM
Цитата(vadimuzzz @ Jan 7 2010, 16:53) *
нету там гистерезиса, ибо вход не логический. посмотрите любой даташит, там даже смещение по постоянке нормируют и рекомендуют через кондер запитывать.

Ну если так, то вполне возможно все. Но это вообще странноватый подход к проектированию, не знал что так бывает. Сколько не разбирал "IP Core" таких АЦП (конвейерных), построенных грубо говоря на дискретных элементах, клоковход там чисто логический и буферированый обычными "двойными инверторами", а дальше разведен на классические КМОП-ключи, мацающие туда-сюда конденсаторы.

Цитата(des00 @ Jan 7 2010, 17:31) *
сумма двух синусоид разной частоты

Ну это в школе еще проходили. sin(x)+sin(y)=2*sin((x+y)/2)*cos((x-y)/2)
des00
Фронт работ составлен, спасибо всем за советы. О результатах как проверю, отпишусь %)
vadimuzzz
Цитата(des00 @ Jan 7 2010, 20:31) *
неправильно выразился, если мне память не изменяет, сумма двух синусоид разной частоты дает вейвформу на которой огибающая основного тона изменяется по амплитуде в соответствии с помехой.

неа, это вы АМ описали. тут не тот случай, все (пока) линейно. а как только доходим до нелинейного элемента (скорее всего драйвер клока) получаем преобразование. вариант с внешним буфером основан на гистерезисе, которым не обладает клоковый вход АЦП.
Цитата(SM)
Ну если так, то вполне возможно все. Но это вообще странноватый подход к проектированию, не знал что так бывает.

это, видимо, попытка угодить всем. хотят, чтоб работало и от CMOS, и от LVDS, и от PECL.
Postoroniy_V
Цитата(des00 @ Jan 7 2010, 22:28) *
опять те же вопросы? %) уже объяснял на первой странице поста, что у меня нет на плате генератора с частотой равной частоте тактирования АЦП. У меня стоит генератор LVCMOS на частоту в 2 раза меньше.
...


читал внимательно. вопрос не правильный задал. smile.gif
Вы сэкономили на клок дистрибуторе + pll генераторе( он же может быть jitter cleaner-ом). Такое решение правда не 1 бякс...но избавляет от кучи проблем.
des00
Цитата(vadimuzzz @ Jan 7 2010, 08:57) *
неа, это вы АМ описали. тут не тот случай, все (пока) линейно. а как только доходим до нелинейного элемента (скорее всего драйвер клока) получаем преобразование. вариант с внешним буфером основан на гистерезисе, которым не обладает клоковый вход АЦП.

вы правы, для закрепления построил в маткаде %)


Цитата(Postoroniy_V @ Jan 7 2010, 09:00) *
Вы сэкономили на клок дистрибуторе + pll генераторе( он же может быть jitter cleaner-ом). Такое решение правда не 1 бякс...но избавляет от кучи проблем.

как ни странно, на старых чипах (сыклон 1/2) работало без проблем %)
SM
Цитата(des00 @ Jan 7 2010, 18:13) *
вы правы, для закрепления построил в маткаде %)

Тут все зависит... Взять две частоты поближе друг к другу, да мощностями поровнее... Тогда и без нелинейностей будет явный вид, что частота-полуразность как бы модулирует частоту-полусумму. Да и помехи у Вас определенно далеки от синусоидальных.

Цитата(des00 @ Jan 7 2010, 18:13) *
как ни странно, на старых чипах (сыклон 1/2) работало без проблем %)

Сейчас экономят на всем. В том числе и в чипы меди недокладывают на кольца и страйпы питания.... smile.gif
DmitryR
Цитата(des00 @ Jan 7 2010, 16:28) *
АЦП используется AD9215BRU-105

Я посмотрел его характеристики, и на формуле влияния джиттера на SNR вспомнил альтернативный взгляд на проблему. Смотрите, jitter у PLL Циклона - 30mUI, что для частоты в 90 МГц есть примерно 300 ps. Посчитайте к какому снижению SNR это приведет - IMHO единицы децибелл. То есть, если отвлечься от того, откуда берутся помехи - попытка от них избавится это IMHO попытка обмануть даташит в части джиттера PLL.
des00
Цитата(DmitryR @ Jan 7 2010, 11:08) *
Я посмотрел его характеристики, и на формуле влияния джиттера на SNR вспомнил альтернативный взгляд на проблему. Смотрите, jitter у PLL Циклона - 30mUI, что для частоты в 90 МГц есть примерно 300 ps. Посчитайте к какому снижению SNR это приведет - IMHO единицы децибелл. То есть, если отвлечься от того, откуда берутся помехи - попытка от них избавится это IMHO попытка обмануть даташит в части джиттера PLL.

Может быть ошибаюсь, но причем здесь джиттер? Да джиттер даст фазовый шум и ухудшение SNR этого АЦП SNR Degradation = 20 x log10 [2 x pi x fINPUT x tA] = 15Дб. Фазовый шум будет выглядеть как размытие точек по кругу (крайние точки КАМ будут овальными), а ухудшение SNR будет хорошо видно по IEVM. Но к делу заворота в полосу приемника "левого" спектра сигнала джиттер не имеет никакого отношения.

Если вы имели ввиду ситуацию "зачем бороть помеху, когда джиттер и так хорошо гадит", я не могу с этим согласиться, ведь я ясно вижу что помеха пропадает, когда я отключаю большую часть приемника.

ЗЫ. Господа подскажите что означает эта фраза из даташита
Цитата
If the clock is generated from another type of source (by gating, dividing, or other methods), it should be retimed by the original clock at the last step.

как можно сделать ретайминг аналоговому сигналу? Спасибо.
MKS
Прошу прощения, но на рисунке в посте №70 я похоже наврал. Дело было весной прошлого года smile.gif. Картинку коментировал по памяти.... А щас порылся в старых записях эксперемента, и оказалось что для этой картинки спектр тактовой частоты представляет из себя "лес" синусоид с шагом в 5 МГц. Всмотревшись в рисунок понял что на нем видна аналогочиная проблема что и у топикстартера. Правда в моем случае из за того что полезный сигнал узкий он не наложился на свой образ (а может и наложился но я этого не заметил smile.gif ).
Нажмите для просмотра прикрепленного файла
Для полноты изложения скажу что входной полезный сигнал на рисунке расположен на частоте 7.5 МГц и состоит из поднесущей QPSK с символьной частотой 930 кГц смещенной влево на 1 МГц от центральной частоты, и синусоиды смещенной вправо от центральной частоты на 1 МГц.
Теперь мне бы хотелось получить тотже результат что на рисунке теоретически. В теме говорилось что АЦП можно представить как смеситель, поэтому вопрос к старшим товарищам можно ли в первом приближении представить АЦП как перемножитель тактового входа на сигнальный ?
vadimuzzz
Цитата(des00 @ Jan 8 2010, 00:00) *
как можно сделать ретайминг аналоговому сигналу? Спасибо.

имеется в виду, что если клок получали ,скажем, делением на триггере (вместо "... Low jitter, crystal-controlled oscillators ..."), то подрегистрить исходным клоком.
кстати, конкретно у этого АЦП вход клока, похоже, логический:

для сравнения, входы более скоростного АЦП (AD9430)


еще прикольная статейка попалась http://www.analog.com/library/analogDialog...timization.html
особенно Figure 18 там.

да, еще о джиттере: кроме случайного(теплового) есть еще и детерминированный, который вызывается перекрестными помехами в том числе. поставите буфер - амплитудные наводки преобразуются в фазовые(фронт сильнее дрожать будет). теже яйца, только в профиль.
des00
Цитата(SM @ Jan 7 2010, 04:44) *
Автору - может просто пропустить этот клок через 74LVC1G14, запитанный от отдельного фильтра? Тем более, что фазу в ПЛИСе можно двигать как угодно, и эта задержка решительно ничего плохого не сделает.

именно такого под руками не было, поставил обычный инвертор NC7WZ04 + включил CLOCK DUTY CYCLE STABLIZER в АЦП, ситуация с помехой стала много лучше, уровень помехи упал еще на 6-8дБ, и точки стали более шумовыми, чем были до этого.

попробывать использовать LVDS выход клока, на этих платах затруднительно, т.к. VCCIO запитан от полигона цифровых 3.3В, переходные под корпусом, а поднимать лапы желания нет %)

Цитата(vadimuzzz @ Jan 7 2010, 22:55) *
имеется в виду, что если клок получали ,скажем, делением на триггере (вместо "... Low jitter, crystal-controlled oscillators ..."), то подрегистрить исходным клоком.

ну это то понятно, но там указаны и другие методы, что делать если клок формируется на PLL ? smile.gif

Цитата(vadimuzzz @ Jan 7 2010, 22:55) *
еще прикольная статейка попалась

занятная статья
SM
Цитата(des00 @ Jan 8 2010, 15:35) *
уровень помехи упал еще на 6-8дБ,

Я думаю, что в таком случае 14-й инвертор вместо 04 с хорошей развязкой по питанию от ПЛИСы и подача на него клока через резистор еще улучшит ситуацию. Что касается LVDS и 3.3 вольта - а Вы квартусу скажите, что там 2.5, а сами 3.3 подайте smile.gif На экспериментальный вариант пойдет, только резисторы надо пересчитать, если LVDS там не true.
des00
Итого.

Обнаружил у себя косячок, на который вовремя не обратил внимание.
VCCIO запитаны от 3.3В, а режимы везде стояли LVCMOS 3.0. Привел стандарты в соответствие с питающим напряжением, т.к. LVCMOS 3.3 слишком уж порезаный, поставил 3.3 LVTTL и току 4/8ма. Пришлось подрихтовать времянку интерфейсов, подвигать клоки, задержки и т.д.
Кроме того обнаружил в квартусе занятную настройку фиттера для 3 их сыклонов SSN Optimization. Включил. Время сборки, даже с инкрементальной компиляцией возросло на 50%.

Ради интереса загрузил в не модифицированную плату и получил результат лучше чем на модифицированной со старой прошивкой. Помеха ушла, IEVM стал на 2 дБ лучше. Снял инвертор с модифицированной платы, залил новую прошивку и на ней результат стал таким же %)

Модем вышел на расчетные показатели в таком, дешевом варианте %)
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.