|
Джиттер при большой загрузке ПЛИС |
|
|
2 страниц
1 2 >
|
 |
Ответов
(1 - 28)
|
Oct 20 2010, 12:36
|
Знающий
   
Группа: Свой
Сообщений: 972
Регистрация: 12-04-09
Из: Москва
Пользователь №: 47 543

|
Цитата При начале работы основной схемы А можно подробнее. Что значит - основная схема, когда она начинает работать? И какой период времени - "в начале"?
|
|
|
|
|
Oct 20 2010, 12:50
|

Участник

Группа: Участник
Сообщений: 29
Регистрация: 27-04-07
Из: Санкт-Петербург
Пользователь №: 27 351

|
Цитата(Koluchiy @ Oct 20 2010, 16:36)  А можно подробнее. Что значит - основная схема, когда она начинает работать? И какой период времени - "в начале"? "Основная схема", означает что функционируют (переключаются триггера, перезаписывается память) все те ресурсы, которые я указал в вопросе. Так вот, когда основная схема функционирует, как раз и существует джиттер. Если на вход значимости данных в "основную схему" подать постоянный ноль ("отключить основную схему"), то джиттер исчезнет. В этот момент работает только "оболочка основной схемы" (интерфейсы), которая занимает ничтожное количество ресурсов.
|
|
|
|
|
Oct 20 2010, 13:04
|

Участник

Группа: Участник
Сообщений: 29
Регистрация: 27-04-07
Из: Санкт-Петербург
Пользователь №: 27 351

|
Цитата(DmitryR @ Oct 20 2010, 16:57)  Развязка питания сделана референсно? Что вы имеете ввиду под словом "референсно"?
|
|
|
|
|
Oct 20 2010, 13:38
|

Участник

Группа: Участник
Сообщений: 29
Регистрация: 27-04-07
Из: Санкт-Петербург
Пользователь №: 27 351

|
Цитата(rloc @ Oct 20 2010, 17:22)  Чтобы выйти из этой ситуации вручную выбирал какая именно DCM будет отвечать за тот или иной клок. А как DCM выбирали?
|
|
|
|
|
Oct 20 2010, 13:41
|
Профессионал
    
Группа: Свой
Сообщений: 1 535
Регистрация: 20-02-05
Из: Siegen
Пользователь №: 2 770

|
Цитата(icyrock @ Oct 20 2010, 17:04)  Что вы имеете ввиду под словом "референсно"? Как производитель рекомендует. Цитата(rloc @ Oct 20 2010, 17:22)  Сами по себе VCO, входящие в состав DCM обладают очень большими шумами (очень большой джиттер). Это правда (потому что это DCM, а не PLL), однако этот джиттер, обусловленный ее конструкцией от загруженности ПЛИС меняться не должен IMHO.
|
|
|
|
|
Oct 20 2010, 13:45
|

Участник

Группа: Участник
Сообщений: 29
Регистрация: 27-04-07
Из: Санкт-Петербург
Пользователь №: 27 351

|
Цитата(DmitryR @ Oct 20 2010, 17:41)  Как производитель рекомендует. Всё в полном соответствии с рекомендацией. Проверяли.
|
|
|
|
|
Oct 20 2010, 14:07
|
Узкополосный широкополосник
     
Группа: Свой
Сообщений: 2 316
Регистрация: 13-12-04
Из: Moscow
Пользователь №: 1 462

|
Цитата(DmitryR @ Oct 20 2010, 17:41)  Это правда (потому что это DCM, а не PLL), однако этот джиттер, обусловленный ее конструкцией от загруженности ПЛИС меняться не должен IMHO. DCM - это и есть PLL, только другими словами, как-то копался в американских патентах и нашел описание этой DCM, там и про частоты было сказано и особенности работы. Джиттер очень сильно зависит от загруженности ПЛИС, посмотрите хотя бы на то, какими путями идет сигнал на вход CLKFB, замыкающий петлю ФАПЧ, не трудно представить как изменится джиттер если на этот сигнал чего-нибудь наведется. Еще кстати на джиттер влияет задержка в петле ФАПЧ - "Feedback Tap Delays", если хотите джиттер поменьше ставьте "Source-Synchronous" вместо "System-Synchronous". Цитата(icyrock @ Oct 20 2010, 17:38)  А как DCM выбирали? Используйте аттрибут RLOC_ORIGIN, можно в самом .vhdl/.v, можно в .ucf. Читайте "Constraints Guide" cgd.pdf и "Virtex-4 User Guide" ug070.pdf
|
|
|
|
|
Oct 20 2010, 14:25
|

Участник

Группа: Участник
Сообщений: 29
Регистрация: 27-04-07
Из: Санкт-Петербург
Пользователь №: 27 351

|
Цитата(rloc @ Oct 20 2010, 18:07)  Используйте аттрибут RLOC_ORIGIN Да как установить на желаемое место я знаю. А я спросил, как вы определили подходящее место.  Теперь, думаю, придется к чертям собачьим выкинуть DCM-ку (она работала как синтезатор частоты) и попросить прислать нужную частоту из соседнего ПЛИСа.
|
|
|
|
|
Oct 20 2010, 15:26
|
Гуру
     
Группа: Свой
Сообщений: 2 198
Регистрация: 23-12-04
Пользователь №: 1 640

|
Цитата(rloc @ Oct 20 2010, 18:07)  DCM - это и есть PLL, только другими словами, как-то копался в американских патентах и нашел описание этой DCM, там а Вы уверены? во всех бумагах ксайлинса упирается на то, что DLL (основной компонент DCM) они делают на цифровой логике, а не VCO. поэтому оно стабильнее и по моему опыту тактирование в ксайлинсах значительно лучше тактирования альтер, кроме джитера, который обусловлен у ксайлинса дискретностью линии задержки. то есть элемент задержки 0.6нс(?) в спартанах и 0.3(?) в виртексах и является минимально допустимым джитером. но это не значит, что при плохом внутреннем питании тактирование не будет ухудшаться - тактовый сигнал проходит через кучу буфферов пока дойдет до потребителя, если эти буффера питаются кое-как, то и сигнал будет такой же
|
|
|
|
|
Oct 20 2010, 16:03
|
Узкополосный широкополосник
     
Группа: Свой
Сообщений: 2 316
Регистрация: 13-12-04
Из: Moscow
Пользователь №: 1 462

|
Цитата(yes @ Oct 20 2010, 19:26)  а Вы уверены? во всех бумагах ксайлинса упирается на то, что DLL (основной компонент DCM) они делают на цифровой логике, а не VCO. У ксайлинкс DCM состоит как минимум из двух компонентов - DLL + DFS (Digital Frequency Synthesizer). Если бы в них не было синтезатора, они занимали бы намного меньше места С PLL немного погорячился, спутал с Virtex-5, соответственно и VCO там нет. Но джиттер определяется не шагом задержки, который составляет 5-60ps, а какими-то другими параметрами, возможно схемой SSC (Spread-Spectrum Clock). Рост джиттера в своей схеме я обнаружил, когда с увеличением размера проекта стал периодически сбоить блок цифровой обработки. Невыполнение времянок было исключено, потому как сам блок был написан с помощью так называемых "Hard Macros", т.е. расположение на кристалле и связи были предопределены и не зависели от объема заполнения кристалла. Первоначально проблема была решена перебором всех DCM и выбором наилучшего из них, в следующих проектах просто перешел на внешний синтезатор и о проблемах со сбоями забыл.
|
|
|
|
|
Oct 21 2010, 07:13
|

Участник

Группа: Участник
Сообщений: 29
Регистрация: 27-04-07
Из: Санкт-Петербург
Пользователь №: 27 351

|
Цитата(Shtirlits @ Oct 20 2010, 22:54)  как и чем вы смотрите выходные сигналы на которых джиттер? что выводится на эти ножки? Я смотрю такты православно выведеные через ddr и смотрю осциллографом. А подтверждает наличие джиттера по тактам сбои в системе приема моих выходных данных. А выходные данные мои DS-кодированы. DS-декодер (на приемной стороне) как раз и чувствителен джиттеру.
|
|
|
|
|
Oct 21 2010, 11:22
|
Частый гость
 
Группа: Свой
Сообщений: 127
Регистрация: 16-02-07
Из: Долгопрудный
Пользователь №: 25 406

|
Цитата(icyrock @ Oct 20 2010, 16:00)  При начале работы основной схемы возникает жуткий джиттер на выходных тактах (200 Мгц). Они тактируют очень малую часть схемы. Извиняюсь, но еще тупой вопрос: это после того, как завершился захват фазы в DCM? И потом: "При начале работы"... т.е. в последствии он (джиттер) устраняется?
Сообщение отредактировал Gothard - Oct 21 2010, 11:23
|
|
|
|
|
Oct 21 2010, 11:51
|

Участник

Группа: Участник
Сообщений: 29
Регистрация: 27-04-07
Из: Санкт-Петербург
Пользователь №: 27 351

|
выходные регистры синтезируются как и где нужно?да клок разведен через глобальные буферы?да видна ли на осциллографе разница между ножками?Если речь о D и S, то не смотрел. И думаю смотреть нет смысла. такты я вижу, и вижу в FPGA Editor, что регистры на месте. если на выходной регистр в качестве данных подать единицу и ноль и посмотреть на получившуюся копию клока, что видно?По такой копии клока я и смотрел (DDR-триггер) feedback как надо и куда надо заведен?да, и кроме того я уже избавился от DCM, просто из соседнего плиса прислали хороший клок. И этот хороший клок всё-равно поганится моей "главной схемой". DCM-ки в уравнении уже нет. Цитата(Gothard @ Oct 21 2010, 15:22)  Извиняюсь, но еще тупой вопрос: это после того, как завершился захват фазы в DCM? И потом: "При начале работы"... т.е. в последствии он (джиттер) устраняется? Джиттер никуда не устраняется сам по себе. Только если я отключу "основную часть схемы". (её триггера не будут переключаться)
|
|
|
|
|
Oct 21 2010, 13:20
|

Участник

Группа: Участник
Сообщений: 29
Регистрация: 27-04-07
Из: Санкт-Петербург
Пользователь №: 27 351

|
Цитата(Shtirlits @ Oct 21 2010, 16:15)  Тогде сомнительное, но все же предложение - разделить схему на части и тактировать их разными фазами, сколько получится повынимать из DCM и на сколько хватит глобальных сетей. Clock skew к тому же улучшится внутри каждой части.
Вы писали про наблюдение пульсаций питания осциллографом. Если не секрет, какая полоса у осциллографа и удалось ли подлезть к ножкам питания ядра? Да, решение довольно суровое, и значительное усложнение схемы. Пульсации питания я не наблюдал, а наблюдал только джиттер тактов, которые к тому же были модулированы по амплитуде в полном соответствии с работой "основной схемы". Пульсации питания я предположил как вариант. К ножкам и не подобраться. Осцилл гиговый.
|
|
|
|
|
Oct 21 2010, 20:27
|
Знающий
   
Группа: Свой
Сообщений: 614
Регистрация: 12-06-09
Из: рядом с Москвой
Пользователь №: 50 219

|
Цитата(icyrock @ Oct 21 2010, 17:20)  ... Пульсации питания я не наблюдал, а наблюдал только джиттер тактов, которые к тому же были модулированы по амплитуде в полном соответствии с работой "основной схемы". Пульсации питания я предположил как вариант. К ножкам и не подобраться. Осцилл гиговый. согласен с Cioma - амплитудная модуляция делает этот вариант основным. Кристалл у вас очень жирный - а судя по вашей загрузке, такой может легко 15-20 ампер по ядру жрать. Сколько и каких у вас конденсаторов стоит по VCCINT, VCCAUX и VCCIO? ESR танталовых или полимерных конденсаторов какое? Помнится оно должно быть в диапазоне 20-50 мОм - в России такие очень тяжело купить. Y5V керамику не используете?
|
|
|
|
|
Oct 22 2010, 08:52
|

Участник

Группа: Участник
Сообщений: 29
Регистрация: 27-04-07
Из: Санкт-Петербург
Пользователь №: 27 351

|
Уровень джиттера удалось снизить до приемлемого. Во первых максимально укоротил пути критических тактов, чтобы они покрывали минимальную часть ПЛИС. А также поддали мощности. Цитата(VladimirB @ Oct 22 2010, 00:27)  согласен с Cioma - амплитудная модуляция делает этот вариант основным.
Кристалл у вас очень жирный - а судя по вашей загрузке, такой может легко 15-20 ампер по ядру жрать.
Сколько и каких у вас конденсаторов стоит по VCCINT, VCCAUX и VCCIO? ESR танталовых или полимерных конденсаторов какое? Помнится оно должно быть в диапазоне 20-50 мОм - в России такие очень тяжело купить. Y5V керамику не используете? Он больше 7.5 ампер жрать не может в принципе. А конденсаторы все согласно рекомендации.
|
|
|
|
|
Oct 22 2010, 14:00
|

Участник

Группа: Участник
Сообщений: 29
Регистрация: 27-04-07
Из: Санкт-Петербург
Пользователь №: 27 351

|
Цитата(ViKo @ Oct 22 2010, 13:23)  Это как? У вас напряжения питания насколько дергалось (или проседало постоянно) до того, как "поддали"? На 35 мВ проседало при работе "основной схемы", и это на плате. Что там в ядре делалось - бог весть.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|