реклама на сайте
подробности

 
 
> Cyclone III, частотомер, PLL, Непонятные глюки PLL, Cross-Talking, температура
Reanimator++
сообщение Nov 8 2016, 21:38
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 399
Регистрация: 1-01-06
Из: Волгоград
Пользователь №: 12 763



Надо помощь зала.
Напоролся на непонятную засаду в своем проекте.
Как и много лет назад, делаю многоканальный частотомер.
Смысл метода и структура на картинках (реальная битность счетчиков - 32, картинка старенькая, и счетчики синхронные).

ПЛИС - EP3C10
Дополнительно ко всему что на рисунке я использую 2 контрольных счетчика для точек 1) и 2) (красным на рисунке), т.е. прошу систему посчитать собственную опорную частоту, умноженную PLL. (Входная 10 МГц, счетная 100). Pll в режиме Source Syncrous mode.
Обычно значение второго счетчика ровно в 10 раз больше значения первого. Если появились расхождения значит мы имеем большой джиттер в опорной частоте и потенциальную неисправность, результат замера выбраковывается. Такой вот самоконтроль.

Сделали новую плату. Немного изменили код ПЛИС - в этой ревизии было удобнее применить последовательную выгрузку данных, как на рисунке изображено. В предыдущей была параллельная через мультиплексор.

Суть проблемы. Когда подается на частотомер много (более 20) входных сигналов (все они 3.3В КМОП), и при температуре выше 70°С, система начинает сыпать ошибки измерений. Контрольный счетчик не сходится.
Что интересно, счетчик заполнения всегда выдает значения кратные 10, а сам счетчик опоры выдает значения немного меньше (на 10-50 импульсов), чем соответствовало бы счетчику заполнения. То есть. Измеряем 0.4 секунды. В счетчике 1 видим 4000123, в счетчике 2 видим 40001350.

Т.е. либо PLL не множит, либо счетчик сбивается (ну, еще может выгрузка данных но не верю).
Эффект повторяется на разных платах в партии (все пока не оттестировали).

При этом сам код не новый и чипы тоже, в 4-5 более старых ревизиях ничего подобного не наблюдалось.

Эффект исчезает если убрать счетные частоты - оставляем одну - прекрасно считает на 100°С. Наводит мысль на какую-то проблему с Cross-Talking. Но опять же непонятно почему этого не было на других ревизиях.

Выявлено что температурный фактор влияет именно на саму ПЛИС - греешь ее феном и ошибки начинают сыпаться. Нагрев других компонентов платы не приводит к результату.

TimeQuest ругается на Hold time по частоте sclk - последовательной выгрузки данных. Больше никаких предупреждений нет. Выгрузку выполняем очень медленно (<100 кГц), поэтому тоже не верю.

Загрузка ПЛИС по ячейкам 99.5%. Пробовал снижать разрядность счетчиков и уменьшать до 90% - не помогало.

На плате 6 слоев, опорный слой земли имеется, разведено вроде прилично. Блокировки рядом, на питание PLL ферритовый фильтр. Пробовали дополнительно кондерами обвешивать питание PLL - не помогает.

Што проверять куда копать? )

Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Reanimator++
сообщение Nov 9 2016, 13:13
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 399
Регистрация: 1-01-06
Из: Волгоград
Пользователь №: 12 763



На плате слой земли и питание тоже широкими полигонами подходит.
Прошлись по питаниям.
Осциллом ничего не видно на максимальном усилении.
Дополнительно повесили по 1нФ прямо на лапки между AVDD и AGND.
AVDD по даташиту - стаб, 10мкф, 1 мкф, фильтр ферритовый 1кОм, 10мкф, 0.1мкф х 2шт, 0.01 мкф х 2шт.

Попробовали вывести наружу клок до PLL и после PLL. (из точек 1 и 2)
Клок до PLL совпадает по осцилу с входящим в ПЛИС клоком (в любых условиях).
Клок после PLL ведет себя стабильно до тех пор пока не подаем сигналы на счетные входы.
Когда подаем сигналы, клок после PLL начинает дрожать. (пробовали на частоте 20 МГц)
Даже при наличии нормального PLL Lock появляется большой джиттер.

Делаем следующее - берем клок и подаем на плисину в LVDS виде (LVDS приходит на плату, там отдельно приемник и конвертер в КМОП стоит).
И о чудо, PLL начинает работать стабильно, джиттер на выходе пропадает, ошибки исчезают.

Т.е. либо мы профукали где-то клок при транспорте КМОП по плате (хотя там всего 3 см дорожки и два получателя - ПЛИС и процессор),
либо условия входа КМОП сигнала в плисину создались какие-то непонятные.
Более всего непонятно, что клок выведенный из плисины из точки 1 по осцилу точно совпадает со входным. Не видно ни джиттера, ни пропусков, никаких отклонений (смотрели в режиме накопления).
Получается что форма входного сигнала влияет на работу PLL. странно.
посмотрим, пока оно на столе только ожило, надо проверить во всем диапазоне и на выборке плат.
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Reanimator++   Cyclone III, частотомер, PLL   Nov 8 2016, 21:38
- - iosifk   Цитата(Reanimator++ @ Nov 9 2016, 0...   Nov 8 2016, 21:46
- - ViKo   Температура ПЛИС превышена. Надо кулер прицепить.   Nov 9 2016, 05:09
- - warrior-2001   в топике не указана версия квартуса. Мною замечено...   Nov 9 2016, 05:35
|- - ViKo   Цитата(warrior-2001 @ Nov 9 2016, 08...   Nov 9 2016, 06:22
- - Reanimator++   Цитата(iosifk @ Nov 9 2016, 00:46) Скольк...   Nov 9 2016, 07:47
- - warrior-2001   Не хочется умничать, но наверное на разных платах ...   Nov 9 2016, 08:20
- - Reanimator++   PLL Lock падает. Зависимость есть как от температ...   Nov 9 2016, 10:58
|- - ViKo   Цитата(Reanimator++ @ Nov 9 2016, 1...   Nov 9 2016, 12:04
- - Reanimator++   1. Клок берется с внешнего рубидиевого генератора....   Nov 10 2016, 16:01
- - ViKo   А какой приемник LVDS > CMOS?   Nov 10 2016, 18:53
- - Reanimator++   ds90lv012a Приемник стоит рядом с плисиной. Нагре...   Nov 11 2016, 14:39
- - ViKo   Vcca? Vccd_pll?   Nov 11 2016, 19:56
- - warrior-2001   Явно глючит pll. Выше правльно указывают Vcca и Vc...   Nov 19 2016, 07:57
- - Reanimator++   Что баг в работе PLL это факт. Вопрос в другом - п...   Nov 22 2016, 08:01
- - warrior-2001   А можете озвучить поставщика кристалла, если не се...   Nov 22 2016, 09:48
- - Reanimator++   Брали в Компэле. Ничего плохого про них сказать не...   Nov 25 2016, 14:34


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 24th August 2025 - 05:09
Рейтинг@Mail.ru


Страница сгенерированна за 0.01307 секунд с 7
ELECTRONIX ©2004-2016