Перейти к содержанию
    

Приём данных DDR из АЦП

Коллеги, несколько дней не могу решить эту головоломку. Схема такая АЦП с тактовой 1100МГц - преобразователь Гильберта - прореживание на 4 - вычисление модуля комплексного сигнала - прореживание на 2 - слабенький ФНЧ - логарифм.

Довольно часто появляется сбой некоторых конкретных бит в коде АЦП если на вход АЦП подать радиоимпульс, например на частоте 415МГц. Частоту назвал потому, что на некоторых частотах эти сбои абсолютно отсутствуют, например на частоте 447МГц их совсем нет.

И если на вход ничего не подавать то сбоев тоже нет, только шум тракта. Поясняющие картинки в пристёжке. Т.к. я двигаю фазу фиксирующего клока в ПЛИС по всему размеру глазка данных то ,на мой взгляд, очень неправдоподобной выглядит версия что проблема в интерфейсе. Сбой бит всегда происходит после окончания радиоимпульса(третья картинка сверху). Всегда сбоят 8-й,9-й и 10-й биты. Уже рассматриваю шальную мысль о "левой" партии АЦП. Может кто уже наблюдал нечто похожее?

igla.doc

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 hour ago, _sda said:

Т.к. я двигаю фазу фиксирующего клока в ПЛИС по всему

Может вместо клока попробовать двигать отдельные биты?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 час назад, 10ff сказал:

Может вместо клока попробовать двигать отдельные биты?

Двигать биты на Altera например нельзя...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 час назад, 10ff сказал:

Может вместо клока попробовать двигать отдельные биты?

А зачем? Если движение клока по всему глазку не даёт нужного эффекта. Или нужно предположить что некоторые биты шины выходят за пределы глазка. На мой взгляд это нонсенс.

И это не поясняет зависимость эффекта от частоты радиоимпульса.

 

1 час назад, Flip-fl0p сказал:

Двигать биты на Altera например нельзя...

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

А у меня 5-й Виртекс.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 hours ago, _sda said:

 Всегда сбоят 8-й,9-й и 10-й биты. Уже рассматриваю шальную мысль о "левой" партии АЦП. Может кто уже наблюдал нечто похожее?

31 minutes ago, _sda said:

И это не поясняет зависимость эффекта от частоты радиоимпульса.

Точно плисовые пины одинакового типа, без всяких дополнительных функций, которые приводят к большей емкости пина или ограничению его возможностей по настройке/питанию или еще чего? А частота как раз может быть такого, что при ваших соотношениях, в этих битах нет коротких сигналов, а есть длительные. Попробуйте менять амплитуду, появиятся ли сбои на "чистых" частотах?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 час назад, des00 сказал:

Точно плисовые пины одинакового типа, без всяких дополнительных функций, которые приводят к большей емкости пина или ограничению его возможностей по настройке/питанию или еще чего? А частота как раз может быть такого, что при ваших соотношениях, в этих битах нет коротких сигналов, а есть длительные. Попробуйте менять амплитуду, появиятся ли сбои на "чистых" частотах?

Да, обязательно попробую, спасибо! Но иголки появляются после радиоимпульса, третья картинка сверху. Вот это заставляет мозг закипать.

До этого выпущено десяток изделий с этой платой - проблем не было. Правда, на первом изделии было что то очень похожее, я сначала думал что это "звон" какой то после импульса, но тогда вопрос решился добавлением ёмкостей на питание ядра FPGA. И проблема ушла до сегодняшних дней.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А импульс какой мощности? И шина между АЦП и ПЛИС какая?

Изменено пользователем Pengozoid

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 часа назад, _sda сказал:

А зачем? Если движение клока по всему глазку не даёт нужного эффекта. Или нужно предположить что некоторые биты шины выходят за пределы глазка. На мой взгляд это нонсенс.

И это не поясняет зависимость эффекта от частоты радиоимпульса.

 

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

А у меня 5-й Виртекс.

А не скажите тогда что за блок за это отвечает. Я в своем время искал похожий функционал, но не нашел. Нашёл только блок dynamic delay chain. Но это немного не то. Может пропустил чего ?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

24 минуты назад, Flip-fl0p сказал:

А не скажите тогда что за блок за это отвечает. Я в своем время искал похожий функционал, но не нашел. Нашёл только блок dynamic delay chain. Но это немного не то. Может пропустил чего ?

 

Похоже пропустили, именно dynamic delay chain я использую в разработках на Альтере. Там всё просто, из ниос при инициализации я просто прописываю нужные константы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Проверьте длину дорожек в разводке pcb, может она разная для каждого бита.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

49 минут назад, Pengozoid сказал:

А импульс какой мощности? И шина между АЦП и ПЛИС какая?

 

Обычная шина DDR 12 бит. На четвёртой картинке видно что иголки возникают уже после окончания радиоимпульса на фоне шумовой дорожки. Сам радиоимпульс в кодах имеет амплитуду примерно 150...200 единиц кода. При увеличении уровня баг остаётся.

1 минуту назад, Skryppy сказал:

Проверьте длину дорожек в разводке pcb, может она разная для каждого бита.

Не, это пройденный этап, ещё на этапе разводки первой платы длины выравнивались...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Выдает ли ваш АЦП тестовые данные ( режим bist или подобный) , если да, то проверьте непосредственно данные с АЦП. Вы сейчас смотрите данные после нескольких операций, может в них дело, а не в АЦП.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 час назад, Skryppy сказал:

Выдает ли ваш АЦП тестовые данные ( режим bist или подобный) , если да, то проверьте непосредственно данные с АЦП. Вы сейчас смотрите данные после нескольких операций, может в них дело, а не в АЦП.

Увы, ничего этого мой АЦП не умеет(ADS54RF63). А то что я показываю картинки с выхода логарифма - поверьте, я скрупулёзно прополз все цепи до самых входных ножек и уверен что проблема существует в самом начале пути данных по FPGA. Последняя картинка тому подтверждение.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Приветствую!

9 minutes ago, _sda said:

Увы, ничего этого мой АЦП не умеет(ADS54RF63). А то что я показываю картинки с выхода логарифма - поверьте, я скрупулёзно прополз все цепи до самых входных ножек и уверен что проблема существует в самом начале пути данных по FPGA. Последняя картинка тому подтверждение.

Тогда остается самый печальный вариант - смотрите хорошим осциллографом питание на ADC (цифровую часть) и на FPGA  в частности аналоговый домен питания PLL. Может там короткие провалы при нагрузке при приходе сигнала. 

Ну или  наводки шумов на эти линии идут при одновременном  переключении  множества линий когда код с выхода ADC около 0. 

Удачи! Rob.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 минуты назад, RobFPGA сказал:

Приветствую!

Тогда остается самый печальный вариант - смотрите хорошим осциллографом питание на ADC (цифровую часть) и на FPGA  в частности аналоговый домен питания PLL. Может там короткие провалы при нагрузке при приходе сигнала. 

Ну или  наводки шумов на эти линии идут при одновременном  переключении  множества линий когда код с выхода ADC около 0. 

Удачи! Rob.

Я как раз вчера колдовал с питанием цифры АЦП - результат нулевой. А вот насчёт питания 2,5В в FPGA как то не подумал, а шина то LVDS...

Вполне может оказаться что собака зарыта именно здесь. Спасибо!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...