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

Как синхронизировать два генератора?

Здравствуйте!

 

Стоит следующая задача:

Нужно генерировать сигнал и излучать передающим датчиком. Сигнал трансформируется и принимается приемным датчиком, после чего оцифровывается при помощи АЦП. Данные с АЦП передаются в процессор и по ним производятся вычисления (рис.1). Из-за помех решено использовать несколько замеров, а их результаты суммировать (метод накопления).

 

Проблема в следующем: в качестве генератора используется AVR (тактовая до 16 (20) МГц), должна быть возможность более-менее плавно регулировать его частоту от 50% до 100%. АЦП должно работать на частотах 100МГц и более. Ес-но генераторы тактового сигнала у них разные и при многократном суммировании данные будут "плыть", а это очень сильно влияет на качество результата. Нужно, что бы в момент запуска фронты обоих тактовых совпадали (рис. 2) или расстояние между этими фронтами было постоянным.

 

Напрашивается ФАПЧ с несколькими выходами, но с ними никогда не работал, поэтому и прошу совета - ткните носом, что использовать :help:

 

P.S. Конечно логично бы было запустить генератор на той же частоте что и АЦП - но это либо ставить дорогой МК, либо ПЛИС, а с ПЛИСами никогда не работал...

post-6757-1227905897_thumb.jpg

post-6757-1227905902_thumb.jpg

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


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

А вы последовательность какую то передаете на АЦП?

 

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

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


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

А вы последовательность какую то передаете на АЦП?

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

 

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

Тут не совсем пойму...

Если сдвиг будет на n целых тактов, и n будет немного меняться, это не страшно. Я пытаюсь избавится от ситуации, когда болтаться будет в пределах такта АЦП. Т.е. синхронизировать нужно тактовый сигнал АЦП (см. рис. 1). Кружками показаны такты АЦП.

Тут можно синхронизировать начало тактового АЦП и от генератора (рис. 2) - но задача остается...

post-6757-1227911060_thumb.jpg

post-6757-1227911079_thumb.jpg

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


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

А Вы не хотите взять один 100 МГц генератор, использовать его для АЦП, и заодно поделить на 5 на одном чипе серии 74AC и использовать для тактирования процессора. Дальше уже значительно легче.

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


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

А Вы не хотите взять один 100 МГц генератор, использовать его для АЦП, и заодно поделить на 5 на одном чипе серии 74AC и использовать для тактирования процессора. Дальше уже значительно легче.

Делить я смогу только целочисленно. Если беру Мегу16 которая до 16МГц, следовательно получу

8,333333333333

9,090909090909

10

11,11111111111

12,5

14,28571428571

16,66666666667

Это получается слишком грубый шаг. Для Меги желательно иметь возможность устанавливать частоту с шагом 0.1МГц.

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


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

Что-то я не понял. Так Вы хотите менять частоту меандра, крутя генератор, питающий контроллер?

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


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

Что-то я не понял. Так Вы хотите менять частоту меандра, крутя генератор, питающий контроллер?

Ну да. Чтоб плавно менять его частоту. Ведь меандр должен быть частотой около 7МГц, и естественно программно на 16ти мегагерцовом контроллере особо не по подстраиваешся.

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


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

Напрашивается ФАПЧ с несколькими выходами, но с ними никогда не работал, поэтому и прошу совета - ткните носом, что использовать :help:

 

P.S. Конечно логично бы было запустить генератор на той же частоте что и АЦП - но это либо ставить дорогой МК, либо ПЛИС, а с ПЛИСами никогда не работал...

Самое простое решение - использовать для синхронизации АЦП LC генератор с ударным возбуждением.

Если стабильность устроит, конечно.

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


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

а как относятся тактовые частоты АЦП и процессора

например: тактовая частота процессора от 8МГц до 16МГц, при этом

тактовая частота АЦП всегда 100МГц, я правильно понял??

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


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

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

Могу предложить только, если это Вас устроит, защелкнуть меандр 100 МГц клоками, при этом средняя частота сохранится, но положения фронтов будут гулять +-5нс, зато будут синхронны с АЦП.

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

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


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

Возможно не всё правильно понял, но если использовать ADF4360-8

две штуки то очень даже легко получить два когерентных синфазных сигнала от 65МГц до 400МГц каждый.

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


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

а как относятся тактовые частоты АЦП и процессора

например: тактовая частота процессора от 8МГц до 16МГц, при этом

тактовая частота АЦП всегда 100МГц, я правильно понял??

Да. Желательно что бы АЦП всегда работал на максимальной частоте или близкой к ней.

 

Кроме того, если отклик среды похож на то, что изображено на картинке, то Вам не хватает частоты АЦП раз в десять, чтобы это измерить. Если же это вч шум, то его хорошо бы отфильтровать аналогом до АЦП, особенно при такой амплитуде.
Сигнал имеет другой вид. Это я нарисовал для пояснения сути. В принимаемом сигнале есть узкие пики которые собственно говоря и нужно отслеживать. Синхронизация нужна что бы пики не "смазывались". Ну и шум тоже там в широкой полосе, иногда по амплитуде больше самих пиков.

 

Возможно не всё правильно понял, но если использовать ADF4360-8

две штуки то очень даже легко получить два когерентных синфазных сигнала от 65МГц до 400МГц каждый.

Спасибо, сегодня посмотрю с чем их едят :)

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


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

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

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

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

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

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

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

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

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

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