|
Cyclone III PLL bug, Откуда дровишки(+) |
|
|
|
Dec 29 2009, 08:16
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Добрый день господа! Есть у меня проект Cyclone III (25 ка, 7 ка в TQFP144 корпусе), наблюдается там занятнейший баг. Схема следующая ClockGen -> FPGA -> АЦП. Тактирование АЦП идет от ПЛИС (так сделано для удешевления, на Cyclone I/II работает без проблем). Сигнал переноситься из третьей зоны найквиста на ПЧ, потом идет обработка. С генератора идет тактовая 96МГц. Для эксперимента сделано две сборки : 1. Клок для АЦП берется с ПЛИС напрямую со входного порта. 2 Клок для АЦП берется с PLL в режиме работы 1:1. В остальном прошивки абсолютно одинаковые. С выхода АЦП сигнал сливается на комп, где по нему строим фурье. 1 ая сборка спектр сигнала чистый, а вот на второй видно что принимается два спектра сигнала, нужный и мешающий, с отстройкой по частоте на пару МГц. В процессе копания платы в спектре выходного сигнала PLL нашлась частота, преобразование которой дает мешающий спектр. Вот история в картинках Входной клок на ПЛИС 96МГЦ
Выходной клок с ПЛИС с работающей PLL
Частота, преобразование с которой крайне не айс
Та же частота когда работаем с 1 ой сборкой
PLL стоит в режиме Auto (хотя проверял режимы Low/Medium/High), частота ГУНа 576МГц. Главный вопрос откуда взялась частота в 336МГц? На плате нет источников сигнала такой, либо кратной частоты, на гармонику ГУНа это тоже не похоже. Еще вопрос что такого PLL сделала с чистым сигналом, что его так разнесло? Питание ПЛИС и PLL сделано как по даташиту. В схеме стоят импульсники, но замена их на хороший лабораторный источник питания результатов не дает. И самое занятное что точно так же сделаны платы на Cyclone I/II, там таких проблем нет. Это особенность третьих сыклонов, или особенность корпуса ? ЗЫ. Может быть Stewart Little поможет выяснить ситуацию
--------------------
|
|
|
|
|
 |
Ответов
(1 - 93)
|
Dec 29 2009, 08:46
|
Местный
  
Группа: Свой
Сообщений: 313
Регистрация: 8-09-04
Из: Таганрог
Пользователь №: 617

|
Цитата(des00 @ Dec 29 2009, 11:16)  Питание ПЛИС и PLL сделано как по даташиту. 1) Имеется в виду в соответствии с Cyclone® III Device Family Pin Connection Guidelines PCG-01003-1.0 ? 2) Включена ли компенсация фазы в PLL? (без компенсации джиттер много меньше)
|
|
|
|
|
Dec 29 2009, 08:52
|

Гуру
     
Группа: Свой
Сообщений: 2 291
Регистрация: 21-07-05
Пользователь №: 6 988

|
Цитата(des00 @ Dec 29 2009, 14:16)  PLL стоит в режиме Auto (хотя проверял режимы Low/Medium/High), частота ГУНа 576МГц. Главный вопрос откуда взялась частота в 336МГц? На плате нет источников сигнала такой, либо кратной частоты, на гармонику ГУНа это тоже не похоже. Еще вопрос что такого PLL сделала с чистым сигналом, что его так разнесло? частота ГУНа 576МГц будет толькр в режимах Low/Medium, в High - 480. причем в Low он сначала опору поделит на 17, а в Medium - на 1. соответственно, в варианте Low ожидается большое число шпор. вариант High почти такой же как Medium, только несимметричный (duty cycle 40/60).
|
|
|
|
|
Dec 29 2009, 08:56
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(cdg @ Dec 29 2009, 02:46)  1) Имеется в виду в соответствии с Cyclone® III Device Family Pin Connection Guidelines PCG-01003-1.0 ? 2) Включена ли компенсация фазы в PLL? (без компенсации джиттер много меньше) 1. Да. 2. Режим работы Normal mode, как я понимаю выходные частоты петлюются ко входной. Да и джиттер же виден как фазовый шум, а в данном случае в спектре сигнала на выходе PLL левая частота. Или я ошибаюсь. Цитата(vadimuzzz @ Dec 29 2009, 02:52)  частота ГУНа 576МГц будет толькр в режимах Low/Medium, в High - 480. причем в Low он сначала опору поделит на 17, а в Medium - на 1. соответственно, в варианте Low ожидается большое число шпор. вариант High почти такой же как Medium, только несимметричный (duty cycle 40/60). Для моих частот, по отчету мегавизарда в Low/Medium будет 576МГц, в High 384МГц, 336, ну никак не получается %)
--------------------
|
|
|
|
|
Dec 29 2009, 09:03
|
Местный
  
Группа: Свой
Сообщений: 313
Регистрация: 8-09-04
Из: Таганрог
Пользователь №: 617

|
Цитата(des00 @ Dec 29 2009, 11:56)  Режим работы Normal mode, как я понимаю выходные частоты петлюются ко входной. Интересно было бы видеть результат для MegaWizard=>Operation Mode=>With no compensation. С капризами Cyclone III PLL пока не сталкивался, а вот Cyclone II PLL c сериалайзерами TI только в режиме With no compensation заработало.
|
|
|
|
|
Dec 29 2009, 11:24
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(cdg @ Dec 29 2009, 03:03)  Интересно было бы видеть результат для MegaWizard=>Operation Mode=>With no compensation. С капризами Cyclone III PLL пока не сталкивался, а вот Cyclone II PLL c сериалайзерами TI только в режиме With no compensation заработало. спасибо за идею посмотрю Цитата(vadimuzzz @ Dec 29 2009, 03:07)  странно, я ваши частоты и подставлял, пишет - 480 ). я имел в виду не 336, а вообще шпоры. многовато их у вас на картинке. у меня 9.0сп1 пишет то, что я привел %)
--------------------
|
|
|
|
|
Dec 30 2009, 04:27
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Хроники расследования.
Нашелся источник этой частоты. Проект представляет собой демодулятор, большая часть которого (~15K логики из 25) хлопает по enable который идет на частоте 96/2 = 48МГц, еще ~5K на 24МГц. И это лезет 7ая гармоника этой частоты. Enable подается не тупо из одного источника на все блоки, а выстроен в цепочку. Т.е. заходит на модуль, который хлопает на нем, и через триггер выходит на следующий модуль. Выяснилось это с помошью введения динамического отключения enable цепочки на разных участках.
Т.е. наводка садиться внутри корпуса и немного зависит от разводки. Качество питания линий 1.2(цифра, аналог)/3.3/2.5 при отключении enable цепи не изменяется. Проверялось на осциллографе и панорамнике. ПЛИС обвешана кондерами по 1.2(цифра)/3.3 как новогодняя елка. 2.2/0.1/0.01 + танталы. По аналогу все как по документации. Источник 3.3В импульсный 6А/лабораторный 5А. Источник на ядро импульсный 6А, на 2.5В линейник. Тока на такой проект должно хватать. Пайка автомат, вероятность не пропая exposed pad мала. Кроме того эффект есть на серии плат. Проброс клока по самому короткому пути, вывод сигнала с PLL через PLL_OUTPUT ноги эффекта не дает.
Похоже что электромагнитная обстановка внутри выводных корпусов CycloneIII не фонтан %( Что же там происходит внутри у 40 ки в PQFP, остается только догадываться (она заложена у нас в паре проектов) %(
--------------------
|
|
|
|
|
Dec 30 2009, 08:23
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(_Anatoliy @ Dec 30 2009, 02:13)  Я стараюсь не подавать клок на АЦП из плис,а в своём демодуляторе применил генератор от Silabs (Si570,Si571). по идее так и надо делать, но делали дешевое решение и потому сделали так. Генераторов от силабса на требуемую мне частоту нет. Цитата(VslavX @ Dec 30 2009, 02:15)  Прошу простить за глупый вопрос (в ЦОС опыта никакого) - а как цифровой сигнал (тот что тактирует АЦП) с таким спектром выглядит - меандр с основной частотой + некоторый промодулированный джиттер? несмотрел, не знаю %) а панорамник показывает анализ спектра.
--------------------
|
|
|
|
|
Dec 30 2009, 10:29
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(_Anatoliy @ Dec 30 2009, 02:53)  Не понял - как это нет?В этих генераторах же DDS-ина стоит,самому можно программировать по I2C на нужную частоту. Но мне было легче - условия дешевизны не было. Просчет модема, разводку и конструирование платы выполняет другой человек, мой начальник. С меня прошивка и отладка модема с требуемым ТТХ. По его словам у фирмы силабс нет генераторов удовлетворяющих требуемым критериям. Мы заказываем у них генераторы но на другие частоты (для SDH систем). UPD#1 в схеме заложены генераторы GVXO-523 на частоту 44.8МГц. Цитата(vadimuzzz @ Dec 30 2009, 03:40)  т.е. там много палок по убывающей идут? я на снимках не разглядел. у себя в приемнике я тоже "КАМовские яйца" наблюдал, когда УКВ-радиостанцию поймал, которая близко к ПЧ была  кстати, а можно поподробнее о питающих? На снимке Выходной клок с ПЛИС с работающей PLL видны первая и третья гармоники (две большие палки слева и справа от 96МГц), дальше по спектру они тоже есть. Это не наводка, модем стоит по радиошлейфу, меняя параметры спектра излучения передатчика видно что изменяются одинаково оба спектра, основной и помеха. Также это не наводка от передатчика, т.к. модулятор и демодулятор разнесены на разные чипы. И эффект есть когда модулятор и демодулятор находятся на разных платах. О питающих не совсем понял вопрос. Я уже писал параметры источников и обвязки ПЛИС %) UPD#2 даже если положить что в демодулятор заложено не правильное решение, вопрос темы все равно не снимается. откуда такие наводки на внутренние/выходные сигналы ПЛИС при ее работе в третьем сыклоне в выводном 144 ногом корпусе.
--------------------
|
|
|
|
|
Dec 30 2009, 11:45
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(Harbour @ Dec 30 2009, 05:24)  Может издержки технологии производства - чем мельче мелкосхема, тем толще партиз ... подобные баги ? У меня давно в голове витает мысль, что это особенность корпуса. Кристал маленький, трассы длинные, ног питания/земли мало, вот и лезет наводка по всему. Похоже не зря больших чипов не делают в маленьких выводных корпусах. Цитата(DmitryR @ Dec 30 2009, 05:34)  Однако вот еще вопрос: тактовая частота с PLL выведена наружу через PLLCLKOUT или нет? В посте №8 уже писал "Проброс клока по самому короткому пути, вывод сигнала с PLL через PLL_OUTPUT ноги эффекта не дает. "
--------------------
|
|
|
|
|
Dec 31 2009, 02:50
|

Гуру
     
Группа: Свой
Сообщений: 2 291
Регистрация: 21-07-05
Пользователь №: 6 988

|
Цитата(des00 @ Dec 30 2009, 16:29)  На снимке Выходной клок с ПЛИС с работающей PLL видны первая и третья гармоники (две большие палки слева и справа от 96МГц), дальше по спектру они тоже есть. их бы побольше (гармоник) снять, амплитуды померять, форму импульса прикинуть, тогда можно и конкретный сигнал "обвинить". Цитата О питающих не совсем понял вопрос. Я уже писал параметры источников и обвязки ПЛИС %) 2.5В идет только на PLL и JTAG? на I/O - везде 3,3? тогда скорее всего лезет через 1,2. если, конечно, по питанию. ткнитесь анализатором спектра в питание PLL. Цитата UPD#2 даже если положить что в демодулятор заложено не правильное решение, вопрос темы все равно не снимается. откуда такие наводки на внутренние/выходные сигналы ПЛИС при ее работе в третьем сыклоне в выводном 144 ногом корпусе. разобраться надо обязательно. хотя бы ради будущих поколений ) еще вопросик, а как расположены входной пин клока/выходной пин на АЦП?
|
|
|
|
|
Dec 31 2009, 05:53
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(dvladim @ Dec 30 2009, 13:05)  Попробуйте вариант, когда ядро щелкает на паразитной частоте, а выводы замаскированы? вы имеете в виду подать на АЦП и ее обвязку один клок, а на остальную логику другой? Цитата В этом случае может помочь отделить входной и выходной пины клока от других через несколько непереключающихся пинов. Так и сделано, все выводы отключены, кроме выводов АЦП и усб логера(работает на частоте ~10МГц, на противоположной стороне плис) для связи с компом. Цитата Если внутри кристалла, попробуйте прокинуть паразитный клок через неглобальную шину. Т.е. разделить глобальную/неглобальную для нужного и паразитного клоков (или энейблов). В посте 8 я писал что проброс по короткому пути. минуя глобальные линии результата не дает и то что enable не сидит на глобальной линии, потому как используется enable chain. Цитата(vadimuzzz @ Dec 30 2009, 20:50)  их бы побольше (гармоник) снять, амплитуды померять, форму импульса прикинуть, тогда можно и конкретный сигнал "обвинить". В посте 1 писал что две прошивки отличаются только источником тактирования. В одном случае клок идет с порта. В другом с PLL в режиме 1к1. Берем панорамник, ставим определенный частотный диапазон и сравниваем 2 прошивки, прошивая через житаг. Так нашли частоту, увидели что она может завернуться в полосу в том месте где стоит помеха. А после того как было сделано динамическое отключение enable chain вышли на этот сигнал. Цитата 2.5В идет только на PLL и JTAG? на I/O - везде 3,3? тогда скорее всего лезет через 1,2. если, конечно, по питанию. ткнитесь анализатором спектра в питание PLL. Да так и сделано. В посте 8 я писал что на осцилле и панорамнике проверялись все питающие линии. На них наводка не обнаружена. Цитата еще вопросик, а как расположены входной пин клока/выходной пин на АЦП? Изначально входной/выходной были сделаны для PLL_3 (т.е. использовалась пара GCLK/PLLCLKOUT для этой PLL). Потом выходной пин был перекинут на другую сторону ПЛИС в свободный банк. Альтернативный генератор был подключен к PLL_2, выводились сигналы на разные стороны кристалла. Результат везде был один. Наводка не уходила, хотя уровень ее плавал. Был такой такой баг (паразитный спектр) и при разработке демодулятора. Баг такой : наводки не было до тех пор пока ПЛИС не заполнилась больше чем на половину. Потом от разводки к разводке уровень помехи плавал в пределах +-10Дб. Один раз получилось так : когда я в ручную оптималил проект и задействовал все регистры в умножителях, наводка просела на ~20Дб (забитость была 60%), но когда я сбросил базу инкрементальной компиляции и забил полный демодулятор на 99% плис, она вылезла в полный рост. Теперь она не уходит %)
--------------------
|
|
|
|
|
Dec 31 2009, 23:04
|
Знающий
   
Группа: Свой
Сообщений: 654
Регистрация: 24-01-07
Из: Воронеж
Пользователь №: 24 737

|
Цитата(des00 @ Dec 31 2009, 08:53)  вы имеете в виду подать на АЦП и ее обвязку один клок, а на остальную логику другой?
Так и сделано, все выводы отключены, кроме выводов АЦП и усб логера(работает на частоте ~10МГц, на противоположной стороне плис) для связи с компом.
В посте 8 я писал что проброс по короткому пути. минуя глобальные линии результата не дает и то что enable не сидит на глобальной линии, потому как используется enable chain. Имеется ввиду влияние топологии кристалла. Во-первых, влияет ли количество ресурсов тактируемых от паразитной частоты? (Вы писали, что тактируется примерно 10к из 25к). Если разницы от количетсва ресурсов не будет, то возможно виновата трассировка глобальных шин (клоки). Для разделения этих вещей нужно разные клоки пустить разными путями - например один из них глобальным, а другой неглобальным. По топологии рядом они не будут и влиять будут меньше. Если же дело в количестве элементов переключающихся на паразитрой частое, то дело в локальной просадке напряжения. Если снаружи кристалла с фильтрацией ядра все в порядке (а я так понял, что там все в порядке по словам "обвешана как елка") то с этим ничего сделать невозможно. PS. Я вообще правильно понял, что в ПЛИС заходят два клока - из первого делается клок для АЦП, второй тактирует основное количество логики? PPS. Я это все к тому, что подача питания и трассировка от кристалла до внешних ног в корпусах QFP и BGA сильно различается и результаты расследования могут дать информацию о том, можно ли применять такие реализации в BGA. Т.е. вопрос не праздный.
|
|
|
|
|
Jan 1 2010, 14:12
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(vadimuzzz @ Dec 31 2009, 08:12)  а этот enable, по которому демодулятор работает, по глобальному пути проложен? кхм, я три раза в этой теме (последний раз в посте 33) сказал что нет %) Цитата а если вывести клок на пин рядом с PLL? геометрически PLLCLKOUT находиться как раз рядом с PLL. Это видно в Fpga editore Цитата(dvladim @ Dec 31 2009, 17:04)  Во-первых, влияет ли количество ресурсов тактируемых от паразитной частоты? (Вы писали, что тактируется примерно 10к из 25к). В посте 33 я писал что зависит, в посте 8 что 15к хлопает на enable == clk/2 и еще 5 к на enable == clk/4. Цитата PS. Я вообще правильно понял, что в ПЛИС заходят два клока - из первого делается клок для АЦП, второй тактирует основное количество логики? нет, все работает на одном клоке. Посты про второй генератор относились к тому, что в целях отладки я использовал качественный генератор на другую частоту, который на плате стоит как опорный. Цитата PPS. Я это все к тому, что подача питания и трассировка от кристалла до внешних ног в корпусах QFP и BGA сильно различается и результаты расследования могут дать информацию о том, можно ли применять такие реализации в BGA. Т.е. вопрос не праздный. меня тоже интересует этот вопрос, когда я обнаружил сие поведение минут 5 парил в прострации от сего факта %) Цитата(VslavX @ Jan 1 2010, 06:42)  А нельзя ли по фазе попробовать отстроиться? Внутри все переключения делаем по одному тактовому, а на АЦП выдаем сдвинутый на 90 (или на любой другой подходящий угол) - тогда, по идее, все переключения что внутри ПЛИС происходят, будут иметь минимальное влияние на фронты внешнего сигнала. хмм, надо подумать. Пока как запасной я хочу реализовать дробный приемник (АЦП работает на частоте не целочисленно кратной символьной приемного потока) и пробросить на АЦП сигнал от него.
--------------------
|
|
|
|
|
Jan 2 2010, 17:28
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(vadimuzzz @ Jan 1 2010, 23:46)  еще вопросик: а как в проекте с пинами? сколько используется/не используется. как сконфигурированы те, что не используются. особенно интересно в районе клока. кхм, в посте 33 об этом писал %) Фотографии в посте 1 сделаны при использовании 10 пинов АЦП, 1 клок + 12 пинов усб. Клок выводился по разному, в том числе GND GND CLK GND GND. Уменьшения заметно не было. Цитата и еще, возвращаясь к варианту с PLL. логика запитывается с PLL_OUT, как и АЦП? или на логику идет GCLK(PLL_IN), а на АЦП PLL_OUT? вопрос не понятен. Используется вывод PLLCLKOUT с с0 выхода PLL и потом глобальный тактовый буфер.
--------------------
|
|
|
|
|
Jan 3 2010, 01:48
|

Гуру
     
Группа: Свой
Сообщений: 2 291
Регистрация: 21-07-05
Пользователь №: 6 988

|
Цитата(des00 @ Jan 2 2010, 23:28)  вопрос не понятен. Используется вывод PLLCLKOUT с с0 выхода PLL и потом глобальный тактовый буфер. а потом с буфера и на АЦП, и на логику? я к тому, что у вас по всей микрухе параллельно идут клок и мешающий строб. тут как ни крутись, а перекрестных помех не избежать (кстати, об этом намекает спектр, помеха села аддитивно), особенно при таком кол-ве задействованной логики. поэтому клок для АЦП стоит развязывать от клока ПЛИС всеми способами. один вариант предложил VslavX. я говорю примерно о том же: вход с GCLK идет на глобальный буфер (для запитки логики) и на вход PLL (только для АЦП). при таком раскладе длина трассы клока АЦП внутри ПЛИС минимальна и на ней не сидят "левые" потребители. или логику запитать с PLL, а на АЦП пробросить входной клок. а лучше так - сделать 2 выхода с PLL, с0 - на пин для АЦП, c1 для логики.
|
|
|
|
|
Jan 3 2010, 07:27
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(vadimuzzz @ Jan 2 2010, 19:48)  а потом с буфера и на АЦП, и на логику? .... либо мы с вами читаем разные даташиты, либо что-то не так %) Cyclone III Device Handbook -> 6. Clock Networks and PLLs in Cyclone III Devices -> Cyclone III PLL -> External Clock Outputs Цитата Each Cyclone III PLL supports one single-ended clock output (or one differential pair). Only the C0 output counter can feed the dedicated external clock outputs, as shown in Figure 6–9, without going through the global clock network. Other output counters can feed other I/O pins through the global clock network Я понимаю это так, что используется самая оптимальная схема вывода клока из ПЛИС, как с точки зрения джиттера, так и с точки зрения наводок. Глобальный буфер ставиться уже после точки ответвления клока на PLLCLKOUT. Потому роли и не играет. Цитата вход с GCLK идет на глобальный буфер (для запитки логики) и на вход PLL (только для АЦП). при таком раскладе длина трассы клока АЦП внутри ПЛИС минимальна и на ней не сидят "левые" потребители. или логику запитать с PLL, а на АЦП пробросить входной клок. это только в том случае если частота генератора равна требуемой частоте, в моем случае это не так. Цитата а лучше так - сделать 2 выхода с PLL, с0 - на пин для АЦП, c1 для логики. В посте 8 я писал что сделал сборку вообще без PLL, используя генератор и его деление на триггере. результат тот же самый. На клоке наводка.
Эскизы прикрепленных изображений
--------------------
|
|
|
|
|
Jan 3 2010, 09:51
|

Гуру
     
Группа: Свой
Сообщений: 2 291
Регистрация: 21-07-05
Пользователь №: 6 988

|
Цитата(des00 @ Jan 3 2010, 13:27)  Я понимаю это так, что используется самая оптимальная схема вывода клока из ПЛИС, как с точки зрения джиттера, так и с точки зрения наводок. Глобальный буфер ставиться уже после точки ответвления клока на PLLCLKOUT. Потому роли и не играет. я с даташитом и не спорю ), но: так уж и не играет? буфер дает бесконечную развязку вход/выход(особенно нагруженный на такую сеть)? мне как-то более правильным кажется c0 пустить на АЦП, а c1 - на логику. хотя бы тупо попробовать ) Цитата В посте 8 я писал что сделал сборку вообще без PLL, используя генератор и его деление на триггере. результат тот же самый. На клоке наводка. так клок для триггера и для логики общий? результат не удивляет. кстати, это был пост №10 )
|
|
|
|
|
Jan 3 2010, 13:48
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(vadimuzzz @ Jan 3 2010, 03:51)  я с даташитом и не спорю ), но: так уж и не играет? буфер дает бесконечную развязку вход/выход(особенно нагруженный на такую сеть)? мне как-то более правильным кажется c0 пустить на АЦП, а c1 - на логику. хотя бы тупо попробовать ) попробывать то можно, но вот логического обоснования не вижу %). Ушел коннект с c0 на внешний пин, затем пошел на ближайший CLKCTRL блок, там прошел через мультиплексоры и ушел через буфер. Буфер этот скорее всего с высокоомным входом и сильно низкоомным выходом. Каким местом выход этого буфера даст наводку на вход этого буфера, а тем более на выделенную линию связи PLLCLKOUT в принципе не понятно. Цитата так клок для триггера и для логики общий? результат не удивляет. кстати, это был пост №10 ) уже писал что делал и общий глобальный и отдельно выделенный путь для АЦП и делитель делал отдельно выделенный с триггером для АЦП в IO буфере. Результат везде был один. ЗЫ. побить в бубен то можно, но вот логического обоснования не видно %)
--------------------
|
|
|
|
|
Jan 3 2010, 14:26
|

Гуру
     
Группа: Свой
Сообщений: 2 291
Регистрация: 21-07-05
Пользователь №: 6 988

|
Цитата(des00 @ Jan 3 2010, 19:48)  попробывать то можно, но вот логического обоснования не вижу %). Ушел коннект с c0 на внешний пин, затем пошел на ближайший CLKCTRL блок, там прошел через мультиплексоры и ушел через буфер. Буфер этот скорее всего с высокоомным входом и сильно низкоомным выходом. ну, омы буфера слабо коррелируют с reverse isolation. по аналогии с усилителем, он имеет мощный выход(такую сеть на такой тактовой тянуть), маленькие размеры, меры по защите входа от выхода уже нужны. а если еще и вход высокоомный, сами понимаете.. Цитата Каким местом выход этого буфера даст наводку на вход этого буфера, а тем более на выделенную линию связи PLLCLKOUT в принципе не понятно. выход буфера - мощный, согласование - хреновое в общем случае, линия связи соединена с входом буфера.
|
|
|
|
|
Jan 6 2010, 05:01
|

Гуру
     
Группа: Свой
Сообщений: 2 291
Регистрация: 21-07-05
Пользователь №: 6 988

|
Цитата(des00 @ Jan 5 2010, 17:55)  Т.е. enable chain не сильно то и причем. Получается косяк в количестве хлопающей логики. мысль о недостаточной развязке клоков на этом и основывалась: клок логики самый разветвленный, большие блоки при срабатывании вполне могут давать просадку (по уровню, на самом клоке). судя по децибелам, что вы привели, просадку в момент строба должно быть хорошо видно на осциллографе. непонятен механизм наводки этого "грязного" клока на клок АЦП. а если попробовать так: задействовать 2 PLL, одна только для АЦП, вторая только для логики. upd: собрал на стартер-ките(EP3CF324) системку с PLL и ниосом. входной клок 50 МГц идет на PLL, c0 (66 МГц) идет на пин PLLCLKOUT, с1 - на ниос (50 МГц, имитирует логику проекта). смотрю спектр с PLLCLKOUT (выведен на разъем), интересная картина:  видны гармоники и свои, и 50 МГц(паразитные). так что BGA не спасает )
|
|
|
|
|
Jan 6 2010, 08:37
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(vadimuzzz @ Jan 5 2010, 23:01)  а если попробовать так: задействовать 2 PLL, одна только для АЦП, вторая только для логики. сейчас смоюсь на работу и проверю Цитата видны гармоники и свои, и 50 МГц(паразитные). так что BGA не спасает ) ндя и это на альтеровском ките.... Цитата(Postoroniy_V @ Jan 6 2010, 00:25)  может это SSN?  Насколько я понимаю SSN относиться к наводкам на сигналы ввода/вывода когда много пинов переключаются одновременно. Под данную конкретную ситуацию это не сильно подходит %) Цитата(SM @ Jan 6 2010, 02:27)  Да это явно оно, к бабке не ходи, только я думаю, скорее всего это SSN в части SSO, особенно тех O, что рядом с PLL. ну вот откуда возьмутся наводки, когда клок выводился в отдельный, неиспользуемый порт, при этом по бокам у него была земля ?  UPD при этом slew rate везде выставлен самый медленный
--------------------
|
|
|
|
|
Jan 6 2010, 08:42
|
Гуру
     
Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881

|
Цитата(des00 @ Jan 6 2010, 11:37)  ну вот откуда возьмутся наводки, когда клок выводился в отдельный, неиспользуемый порт, при этом по бокам у него была земля ?  А какая разница-то, куда и как выводится клок, если, например, прыгает потенциал подложки под PLL-кой из-за того, что ее обложили скоростными портами с fast slew rate, нагруженными аццкими емкостями... Уже очень давно как все эти дела производителями ПЛИС свалены на разработчика содержимого ПЛИС, и ПЛИСы имеют ограничение по SSO куда более жесткое, чем можно максимально нагрузить при помощи среды разработки. Насчет расположения дифпар об этом среда хоть как-то заботится, а вот о расположении PLL по видимому нет. Да и есть уверенность в грамотности топологии разводки питания на плате? То, что это кит, вовсе не говорит, что индус, его разрабатывавший, все предусмотрел.
|
|
|
|
|
Jan 6 2010, 08:48
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(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. Какие сверхскоростные интерфейсы вы тут видите? Цитата Да и есть уверенность в грамотности топологии разводки питания на плате? То, что это кит, вовсе не говорит, что индус, его разрабатывавший, все предусмотрел. Про кит да, никакой. А в человеке который разводил мою плату есть %) эффект проявляющейся на ней тот же самый.
--------------------
|
|
|
|
|
Jan 6 2010, 08:59
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(SM @ Jan 6 2010, 02:52)  Тогда остается превышение SSN не по SSO, а по количеству одновременно переключаемых тяжело нагруженных LE внутри. Как вариант - попробуйте уменьшить max_fanout синтезатору (точно знаю, что синплифай с латисом это умеют, а вот квартус - не знаю, но думаю должен ). спасибо за наводку, почитаю отчеты синтезатора и проверю эту идею. Цитата Или поставить более толстый кристалл, совместимый по пинам. в данном корпусе TQFP144, это самый жирный кристал. Проект и так заоптимален по размеру по самые помидоры, еле всё влезло %)
--------------------
|
|
|
|
|
Jan 6 2010, 11:44
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(SM @ Jan 6 2010, 03:10)  Вот это и есть IMHO основная причина. Я тут как-то с привидениями в латисе воевал - триггер сам изредка асинхронно сбрасывался... А причина была околопохожая. Наводка появилась когда заполненность кристалла была 40-50% и ИМХО плохой это метод ставить печеньку много толще чем нужно %) Хроники расследования : 1. Идея подвинуть клок на 90 градусов. PLL2/PLL3 - клок на АЦП отдельный со сдвигом на 90 градусов. не инвертированный. Результат -(23-25)Дб. Т.е. эффекта не дало 2. Максимальные фанауты в проекте : на одном сегменте enable - chain цепи 2532, остальные не выше 950. Поставил на ту enable секцию фанаут = 1000. результата не дало.
--------------------
|
|
|
|
|
Jan 6 2010, 12:35
|
Гуру
     
Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881

|
Цитата(des00 @ Jan 6 2010, 15:29)  от этой линии тактируется всего 2 фильтра. Не, что от чего тактируется, когда оно идет глобальным сигналом (предразведенным буферированнм деревом), там понятно, что фанаутов может быть сколько угодно. Я про неглобальные и не тактовые сигналы. Попробуйте еще вот что: - пустить енабли и резеты (кто там еще high fanout) в глобальную сеть (не в интернет  ) - мало ли... - аццкий совет, но... Пустить клок к части проекта вне глобальной сети (если ква справится с задачей) - с целью разбросать моменты переключений "туда-сюда". Все таки полное ощущение что проблемы от SSN, и, все же, возможно, кривыми токами по земле и питанию PLL.
|
|
|
|
|
Jan 6 2010, 12:42
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(SM @ Jan 6 2010, 06:35)  Не, что от чего тактируется, когда оно идет глобальным сигналом (предразведенным буферированнм деревом), там понятно, что фанаутов может быть сколько угодно. Я про неглобальные и не тактовые сигналы. думал про одно, писал про другое. Энейблиться конечно. Цитата Попробуйте еще вот что: - пустить енабли и резеты (кто там еще high fanout) в глобальную сеть (не в интернет  ) - мало ли... - аццкий совет, но... Пустить клок к части проекта вне глобальной сети (если ква справится с задачей) - с целью разбросать моменты переключений "туда-сюда". Все таки полное ощущение что проблемы от SSN, и, все же, возможно, кривыми токами по земле и питанию PLL. Попробую чуть позже, пока проверю идею с дробным приемником
--------------------
|
|
|
|
|
Jan 6 2010, 13:44
|
iBuilder©
   
Группа: Свой
Сообщений: 519
Регистрация: 14-07-04
Из: Минск
Пользователь №: 322

|
Цитата(des00 @ Jan 6 2010, 13:44)  1. Идея подвинуть клок на 90 градусов. PLL2/PLL3 - клок на АЦП отдельный со сдвигом на 90 градусов. не инвертированный. Результат -(23-25)Дб. Т.е. эффекта не дало Может и глупость скажу, не пинайте. А если выходной клок двигать не на 90 градусов, а так, что-бы он выскакивал наружу перед тем, как пойдёт фронт на внутренней логике. Типа выдавать клок наружу, когда внутри всё уже по максимуму отсчёлкало. Только тут нужно иметь запас по частоте логиги, что-б там внутри всё реально отсчёлкало к времени выдачи клока наружу. И желательно побольше, что-б все возможные переходные процессы по максимуму завершились.
Сообщение отредактировал Builder - Jan 6 2010, 15:04
|
|
|
|
|
Jan 6 2010, 21:12
|
Гуру
     
Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881

|
Кстати да. Вбило почему-то в голову, что надо бороться с источником помехи. А каким образом вообще помеха с уровнем <-20 дБ на логическом (тактовом) сигнале может влиять на тактирование АЦП? Если допустить, что сигнал имеет размах 3.3 вольта, то это "нечто" в районе 0.3 вольта, что значительно меньше порога, и что для цифрового сигнала явно допустимо. Тут похоже надо бороться не с ее источником, а с тем, почему она вообще на что-то повлияла. И посмотреть на все это дело не спектроанализатором, не синус все таки исследуется, а такт, в нем не гармоники важны, а стабильность и правильность фронтов.
|
|
|
|
|
Jan 7 2010, 07:37
|
Гуру
     
Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881

|
Цитата(vadimuzzz @ Jan 7 2010, 06:38)  клок АЦП только с виду логический сигнал, он же идет на SHA(THA), тот же смеситель по сути, Тот по сути смеситель, но по схемотехнике - операционник, четыре емкости и шесть ключей вокруг. Ключи управляются тактовым сигналом тоже как цифровым, и тоже все, что далеко от порога, влиять не должно (там подавление прохождения клока, и всего, что на нем, в канал куда больше 60 дБ). А по аналоговым каналам ключей ходит только входной сигнал. Все таки у автора что-то не то в другой части консерватории. Посмотреть бы на его сигнал осциллографом, а не на спектр... Спектр он там совершенно официально может содержать до примерно полвольта (если он LVCMOS33) официальных наводок с SSN-происхождением, и это норма жизни. Или почему вообще LVDS-клок не вывести, ему этот SSN до одного места по причине синфазности... Цитата(des00 @ Jan 7 2010, 10:13)  за счет нелинейного преобразования на АЦП на гармонике Вот поподробнее пожалуйста, что это за такой хитрый процесс и какова его суть. Куда именно и как попадает эта гармоника, что умудряется что-то куда-то завернуть?
|
|
|
|
|
Jan 7 2010, 08:24
|

Местный
  
Группа: Свой
Сообщений: 469
Регистрация: 13-03-05
Пользователь №: 3 315

|
Цитата(SM @ Jan 7 2010, 09:37)  ... Вот поподробнее пожалуйста, что это за такой хитрый процесс и какова его суть. Куда именно и как попадает эта гармоника, что умудряется что-то куда-то завернуть? Неоднократно наблюдал нечто похожее. АЦП тактировался от DDS частотой 60 МГц, кроме основной частоты с него шло много паразитных частот подавленых на -30...-60 дБ. Все эти частоты наблюдались на спектре оцифрованого сигнала. На рисунке спектр такой реализации сигнала. Это я пишу к тому что любой мусор попадающий на тактовый вход АЦП попадает в спектр оцифрованого сигнала, и с этим надо быть осторожным.
|
|
|
|
|
Jan 7 2010, 10:44
|
Гуру
     
Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881

|
Цитата(vadimuzzz @ Jan 7 2010, 11:32)  а по входу клока у АЦП стоит драйвер, который раскачивает сигнал по самое не хочу (АЦП ведь наверняка позволяет запитку и LVDS, и LVPECL). что он сделает с маленькой помехой? Должен - отрезать по уровню своего порога и убить. А по хорошему еще и гистерезис по входу иметь бы должен. А что сделает - не знаю, не я его разрабатывал  . Я подозреваю, что эта помеха лезет в сигнальный канал каким-то неофициальным путем, проникая например в сигнальный канал в виде наводки, хоть и из такта. Автору - может просто пропустить этот клок через 74LVC1G14, запитанный от отдельного фильтра? Тем более, что фазу в ПЛИСе можно двигать как угодно, и эта задержка решительно ничего плохого не сделает.
|
|
|
|
|
Jan 7 2010, 11:38
|

embarrassed systems engineer
    
Группа: Свой
Сообщений: 1 083
Регистрация: 24-10-05
Из: Осокорки
Пользователь №: 10 038

|
Цитата(SM @ Jan 7 2010, 12:44)  Автору - может просто пропустить этот клок через 74LVC1G14, запитанный от отдельного фильтра? Тем более, что фазу в ПЛИСе можно двигать как угодно, и эта задержка решительно ничего плохого не сделает. Именно, что фаза двигается при помощи PLL. ИМХО, поэтому-то сдвиг на 90 (удалили все фронты тактового сигнала от момента переключений внутри ПЛИС) не особо помог - так как PLL-ка внутри все равно "вздрогнула", соответственно и "довернутый" выход - тоже. Лично я проблему решил бы тупо и прямолинейно - клоковым буфером-разветвителем, один выход на ПЛИС, второй - на АЦП.
|
|
|
|
|
Jan 7 2010, 11:47
|

МедвеД Инженер I
   
Группа: Свой
Сообщений: 816
Регистрация: 21-10-04
Пользователь №: 951

|
Цитата(VslavX @ Jan 7 2010, 20:38)  Именно, что фаза двигается при помощи PLL. ИМХО, поэтому-то сдвиг на 90 (удалили все фронты тактового сигнала от момента переключений внутри ПЛИС) не особо помог - так как PLL-ка внутри все равно "вздрогнула", соответственно и "довернутый" выход - тоже. Лично я проблему решил бы тупо и прямолинейно - клоковым буфером-разветвителем, один выход на ПЛИС, второй - на АЦП. ну почему же тупо?  ) (я бы на ацп завёл бы дифф сигнал если такое возможно) 2 des00, Денис, цена вопроса 1 бякс на клоковом дистрибуторе? ...а геморру то сколько
--------------------
Cogito ergo sum
|
|
|
|
|
Jan 7 2010, 13:28
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(Postoroniy_V @ Jan 7 2010, 05:47)  2 des00, Денис, цена вопроса 1 бякс на клоковом дистрибуторе? ...а геморру то сколько  опять те же вопросы? %) уже объяснял на первой странице поста, что у меня нет на плате генератора с частотой равной частоте тактирования АЦП. У меня стоит генератор LVCMOS на частоту в 2 раза меньше. Цитата бы на его сигнал осциллографом, а не на спектр... Спектр он там совершенно официально может содержать до примерно полвольта (если он LVCMOS33) официальных наводок с SSN-происхождением, и это норма жизни. Или почему вообще LVDS-клок не вывести, ему этот SSN до одного места по причине синфазности... Хороший осцил смогу взять только после праздников, АЦП используется AD9215BRU-105, у него нет LVDS входа тактовой. Но это пол беды, у сыклона в таком корпусе почти нет LVDS выходов. Цитата Вот поподробнее пожалуйста, что это за такой хитрый процесс и какова его суть. Куда именно и как попадает эта гармоника, что умудряется что-то куда-то завернуть? Как мне объяснил мой модемный гуру, в данной схеме АЦП по сути смеситель, и на его не линейности рождаются гармоники спектра, которые затем сворачиваются с частотой наводки и попадают в полосу приемника. Это происходит в самом АЦП. И эти наводки уже ничем из полосы не вырежешь. Цитата(petrov @ Jan 7 2010, 05:54)  В клоке ли дело? "Яйца" на моделях не раз наблюдал из-за ошибок в ЦОС. прочитайте тему внимательно с первого поста %) дело именно в этом. Цитата Автору - может просто пропустить этот клок через 74LVC1G14, запитанный от отдельного фильтра? Тем более, что фазу в ПЛИСе можно двигать как угодно, и эта задержка решительно ничего плохого не сделает. Т.е. по сути поставить внешний усилитель/ограничитель и "срезать" паразитную модуляцию клока ?
--------------------
|
|
|
|
|
Jan 7 2010, 13:53
|

Гуру
     
Группа: Свой
Сообщений: 2 291
Регистрация: 21-07-05
Пользователь №: 6 988

|
Цитата(SM @ Jan 7 2010, 16:44)  Должен - отрезать по уровню своего порога и убить. А по хорошему еще и гистерезис по входу иметь бы должен. А что сделает - не знаю, не я его разрабатывал  . Я подозреваю, что эта помеха лезет в сигнальный канал каким-то неофициальным путем, проникая например в сигнальный канал в виде наводки, хоть и из такта. а я так рассуждаю, что раскачает, то что на вход подали, и полезный сигнал, и помеху. нету там гистерезиса, ибо вход не логический. посмотрите любой даташит, там даже смещение по постоянке нормируют и рекомендуют через кондер запитывать. Цитата(des00 @ Jan 7 2010, 19:28)  Т.е. по сути поставить внешний усилитель/ограничитель и "срезать" паразитную модуляцию клока ? у вас не модуляция, на спектр посмотрите - он несимметричный. помеха чисто аддитивная (ну, в первом приближении). имеем на выходе sin(f_АЦП)+sin(f_логики)+их гармоники. подаем на нелинейный элемент (а их в АЦП есть) - и привет.
|
|
|
|
|
Jan 7 2010, 14:28
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(VslavX @ Jan 7 2010, 08:18)  ИМХО, буфер не поможет, сигнал-то цифровой, и "модулироваться" реально может только момент фронта/среза - джиттер. Буфер этот "модулированный джиттер" просто повторит (да еще свой добавит). дело то здесь не в джиттере, джиттер даст фазовые шумы, а не дополнительные гармоники. ИМХО vadimuzzz правильно написал про помеху. Цитата P.S. По ходу вопрос - а что можно применить для уменьшения джиттера? Добавить внешний чип PLL между ПЛИС и АЦП? ИМХО генератор -> внешняя PLL -> клоковый буфер -> АЦП и ПЛИС ЗЫ. Я тут подумал инвертирование клока АЦП как раз и есть разнесение клоков по фазе и влияние инверсии на уровень помехи есть. Так что идея о сдвиге работает, но дает меньше чем хотелось бы %) ЗЗЫ. Еще обдумываю об уменьшении количества логики хлопающей по enable, оставить на нем только те места, без которых работа невозможна, а остальное посадить на чистый клок. Немного проиграю по теплу, но здесь запас есть.
--------------------
|
|
|
|
|
Jan 7 2010, 14:35
|
Гуру
     
Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881

|
Цитата(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)
|
|
|
|
|
Jan 7 2010, 14:57
|

Гуру
     
Группа: Свой
Сообщений: 2 291
Регистрация: 21-07-05
Пользователь №: 6 988

|
Цитата(des00 @ Jan 7 2010, 20:31)  неправильно выразился, если мне память не изменяет, сумма двух синусоид разной частоты дает вейвформу на которой огибающая основного тона изменяется по амплитуде в соответствии с помехой. неа, это вы АМ описали. тут не тот случай, все (пока) линейно. а как только доходим до нелинейного элемента (скорее всего драйвер клока) получаем преобразование. вариант с внешним буфером основан на гистерезисе, которым не обладает клоковый вход АЦП. Цитата(SM) Ну если так, то вполне возможно все. Но это вообще странноватый подход к проектированию, не знал что так бывает. это, видимо, попытка угодить всем. хотят, чтоб работало и от CMOS, и от LVDS, и от PECL.
|
|
|
|
|
Jan 7 2010, 15:13
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(vadimuzzz @ Jan 7 2010, 08:57)  неа, это вы АМ описали. тут не тот случай, все (пока) линейно. а как только доходим до нелинейного элемента (скорее всего драйвер клока) получаем преобразование. вариант с внешним буфером основан на гистерезисе, которым не обладает клоковый вход АЦП. вы правы, для закрепления построил в маткаде %) Цитата(Postoroniy_V @ Jan 7 2010, 09:00)  Вы сэкономили на клок дистрибуторе + pll генераторе( он же может быть jitter cleaner-ом). Такое решение правда не 1 бякс...но избавляет от кучи проблем. как ни странно, на старых чипах (сыклон 1/2) работало без проблем %)
Эскизы прикрепленных изображений
--------------------
|
|
|
|
|
Jan 7 2010, 18:00
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(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. как можно сделать ретайминг аналоговому сигналу? Спасибо.
--------------------
|
|
|
|
|
Jan 7 2010, 21:25
|

Местный
  
Группа: Свой
Сообщений: 469
Регистрация: 13-03-05
Пользователь №: 3 315

|
Прошу прощения, но на рисунке в посте №70 я похоже наврал. Дело было весной прошлого года  . Картинку коментировал по памяти.... А щас порылся в старых записях эксперемента, и оказалось что для этой картинки спектр тактовой частоты представляет из себя "лес" синусоид с шагом в 5 МГц. Всмотревшись в рисунок понял что на нем видна аналогочиная проблема что и у топикстартера. Правда в моем случае из за того что полезный сигнал узкий он не наложился на свой образ (а может и наложился но я этого не заметил  ).
Для полноты изложения скажу что входной полезный сигнал на рисунке расположен на частоте 7.5 МГц и состоит из поднесущей QPSK с символьной частотой 930 кГц смещенной влево на 1 МГц от центральной частоты, и синусоиды смещенной вправо от центральной частоты на 1 МГц. Теперь мне бы хотелось получить тотже результат что на рисунке теоретически. В теме говорилось что АЦП можно представить как смеситель, поэтому вопрос к старшим товарищам можно ли в первом приближении представить АЦП как перемножитель тактового входа на сигнальный ?
|
|
|
|
|
Jan 8 2010, 04:55
|

Гуру
     
Группа: Свой
Сообщений: 2 291
Регистрация: 21-07-05
Пользователь №: 6 988

|
Цитата(des00 @ Jan 8 2010, 00:00)  как можно сделать ретайминг аналоговому сигналу? Спасибо. имеется в виду, что если клок получали ,скажем, делением на триггере (вместо "... Low jitter, crystal-controlled oscillators ..."), то подрегистрить исходным клоком. кстати, конкретно у этого АЦП вход клока, похоже, логический:  для сравнения, входы более скоростного АЦП (AD9430)  еще прикольная статейка попалась http://www.analog.com/library/analogDialog...timization.htmlособенно Figure 18 там. да, еще о джиттере: кроме случайного(теплового) есть еще и детерминированный, который вызывается перекрестными помехами в том числе. поставите буфер - амплитудные наводки преобразуются в фазовые(фронт сильнее дрожать будет). теже яйца, только в профиль.
|
|
|
|
|
Jan 8 2010, 12:35
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Цитата(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 ? Цитата(vadimuzzz @ Jan 7 2010, 22:55)  еще прикольная статейка попалась занятная статья
--------------------
|
|
|
|
|
Jan 18 2010, 08:10
|
Вечный ламер
     
Группа: Модераторы
Сообщений: 7 248
Регистрация: 18-03-05
Из: Томск
Пользователь №: 3 453

|
Итого.
Обнаружил у себя косячок, на который вовремя не обратил внимание. VCCIO запитаны от 3.3В, а режимы везде стояли LVCMOS 3.0. Привел стандарты в соответствие с питающим напряжением, т.к. LVCMOS 3.3 слишком уж порезаный, поставил 3.3 LVTTL и току 4/8ма. Пришлось подрихтовать времянку интерфейсов, подвигать клоки, задержки и т.д. Кроме того обнаружил в квартусе занятную настройку фиттера для 3 их сыклонов SSN Optimization. Включил. Время сборки, даже с инкрементальной компиляцией возросло на 50%.
Ради интереса загрузил в не модифицированную плату и получил результат лучше чем на модифицированной со старой прошивкой. Помеха ушла, IEVM стал на 2 дБ лучше. Снял инвертор с модифицированной платы, залил новую прошивку и на ней результат стал таким же %)
Модем вышел на расчетные показатели в таком, дешевом варианте %)
--------------------
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|