Jump to content

    
Sign in to follow this  
cornflyer

Широкополосный умножитель частоты

Recommended Posts

От ВЧ системы поступает частота, которая со скоростью 8kHz/1ms увеличивается от 500kHz до 6MHz, фаза - гладкая функция (без скачков)

 

1. На входе стоит эллиптический BPF 500kHz - 6MHz (5-го порядка)

2. Далее через ВЧ трансформатор отфильтрованная частота подается на уcилитель G=+10 (AD8067 с G=+10 не искажает в полосе),

3. Далее детектор нуля (ADCMP604)

На выходе компаратора - меандр, который хотелось бы умножить раз в 30 для тактирования АЦП.

 

Я нашел CS2300-03, который умножает в 4 раза

После него можно поставить CS2300-01 для умножения в 8 раз

В итоге частота должна умножится в 32 раза.

 

У меня есть вопрос к стабильности работы такого решения - будет ли работать вообще ?

В идеальном случае, когда duty cycle 50% или когда на входе может быть duty cycle 30-70% (после детектора нуля)

 

PS

в мануале на CS2300-OTP сказано

The following outlines which conditions cause the PLL to go unlocked:

• Discontinuities on the Frequency Reference Clock, CLK_IN.

• Gradual changes in CLK_IN frequency great

er than ±30% from the starting frequency.

• Step changes in CLK_IN frequency

Share this post


Link to post
Share on other sites

эта задача из ускорительной физики

в процессе ускорения ионного пучка его оборотная частота растет ( в LHC, например, она поястоянна и равна 10kHz, однако для маленьких ускорителей это сделать сложнее)

и чтобы ее вычесть из результата измерений и избежать лишних вычислений - АЦП тактируется частотой от ВЧ системы

это уже работает , но возникла необходимость синхронизации измерений с нужным сгустком ионов (bunch)

для этого частота уножается в 30 раз

и можно двигать фазу тактирования АЦП достаточно точно

 

это очень плохое решение

вот я и спрашиваю, может кто знает как сделать лучше?

Share this post


Link to post
Share on other sites
вот я и спрашиваю, может кто знает как сделать лучше?

Напрашивается преобразователь период-код на ПЛИС и DDS AD9910 в режиме параллельного интерфейса.

Share this post


Link to post
Share on other sites
Напрашивается преобразователь период-код на ПЛИС и DDS AD9910 в режиме параллельного интерфейса.

у меня есть Spartan3 XC3S400 (200MHz) и точность подсчета периода +\-5 ns,

а джиттер должен быть не больше 500 ps

можеть есть готовый преобразователь период-код?

иначе придется Kintex-7 использовать

Share this post


Link to post
Share on other sites
и чтобы ее вычесть из результата измерений и избежать лишних вычислений - АЦП тактируется частотой от ВЧ системы

..тут постоянную частоту для АЦП получить проблема, чтобы обеспечивала требуемый С\Ш а вы боитесь "лишних" вычислений.

Тем более как я понял у вас можно результаты эксперимента записать и обрабатывать сколько хочешь времени потом. Да даже если и на лету - то не вижу проблем взять ПЛИС потолще, кроме финансовых. И уже в математике цифровым ЛЧМ DDS исправить что нужно.

 

Мне кажется вычисления - правильный путь, а ваш тупик.

з.ы

Сделать тактовую чтобы она плавала от 6 до 192 МГц и при этом была с гладкой фазой и не плавала от времени и температуры и чтобы шумы были низкие (какой у вас АЦП кстати?) это гораздо труднее чем сделать всё в цифре.

И ещё, не понимаю как должен работать ваш антиальязинговый фильтр перед АЦП, ему ведь надо как то отслеживать изменение частоты найквиста в 32 раза.

Share this post


Link to post
Share on other sites
у меня есть Spartan3 XC3S400 (200MHz) и точность подсчета периода +\-5 ns,

а джиттер должен быть не больше 500 ps

Как тут уже много раз советовали, "нос" и "хвост" можно домерять интегратором.

можеть есть готовый преобразователь период-код?

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

иначе придется Kintex-7 использовать

Ну и тут, думаю, не всё так гладко. Скорее логику Hittite придётся задействовать.

Косвенный метод выглядит на порядок безобиднее и точнее.

Share this post


Link to post
Share on other sites

Спасибо, думаю, что Вы правы - буду делать все на Kintex-7

АЦП - AD7760 24 bit, 2.5 MSPS, параллельный интерфейс

тактирование кратной частотой - до 2.4MSPS, т.е. каждый 80-й такт будет использоваться для запуска АЦП

600kHz ... 6000kHz x 32 => 19.200MHz ... 192MHz / 80 => 240kHz ... 2.4MHz

и будет возможность подобрать начало запуска измерений

 

 

Как тут уже много раз советовали, "нос" и "хвост" можно домерять интегратором.

 

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

 

Ну и тут, думаю, не всё так гладко. Скорее логику Hittite придётся задействовать.

Косвенный метод выглядит на порядок безобиднее и точнее.

Прошу Вас поподробнее о косвенном методе

Share this post


Link to post
Share on other sites
Спасибо, думаю, что Вы правы - буду делать все на Kintex-7

В чём прав? Я этого не предлагал - Вы это преложили сами себе...

Прошу Вас поподробнее о косвенном методе

Ну там смысл в том, что бОльшую часть периода (а в вашем случае лучше полупериода) измеряют грубо "в лоб" счётной схемой, которая не обеспечивает необходимой точности измерений, а время от стартового фронта измеряемого сигнала до первого счётного фронта опоры и время от последнего счётного фронта опоры до финишного фронта измеряемого сигнала измеряют посредством преобразования времени в напряжение с помощью калиброваного интегратора с аналоговым ЗУ и АЦП на выходе. Дрейф аналоговой схемы в процессе работы постоянно корректируется по той же счётной опоре, которая измеряет основную часть периода (полупериода) в процессе измерения, в результате чего влияние ТКС и ТКЕ интегратора и других факторов, вносящих погрешность, минимизируется.

 

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

Share this post


Link to post
Share on other sites
Спасибо, думаю, что Вы правы - буду делать все на Kintex-7

АЦП - AD7760 24 bit, 2.5 MSPS, параллельный интерфейс

тактирование кратной частотой - до 2.4MSPS, т.е. каждый 80-й такт будет использоваться для запуска АЦП

600kHz ... 6000kHz x 32 => 19.200MHz ... 192MHz / 80 => 240kHz ... 2.4MHz

и будет возможность подобрать начало запуска измерений

что-то тут не так.

 

что в Вашем понимании есть запуск АЦП (указанного типа AD7760)? АЦП же непрерывно работает , там же сигма-дельта модулятор.

ЧТо значит "тактирование кратной частотой - до 2.4MSPS"? это сигнал МCLK? так у МCLK по даташиту границы от 1 до 40 МГц, о каких тогда 240 кГц речь ?

Если это мегасэмплы в секунду для выходных данных , то откуда берется подход , выраженный в словах "каждый 80-й такт будет использоваться"

 

Входной сигнал, подаваемый на АЦП, у Вас с какой полосой ? случайно не короткие импульсы ?

Share this post


Link to post
Share on other sites
что-то тут не так.

 

что в Вашем понимании есть запуск АЦП (указанного типа AD7760)? АЦП же непрерывно работает , там же сигма-дельта модулятор.

ЧТо значит "тактирование кратной частотой - до 2.4MSPS"? это сигнал МCLK? так у МCLK по даташиту границы от 1 до 40 МГц, о каких тогда 240 кГц речь ?

Если это мегасэмплы в секунду для выходных данных , то откуда берется подход , выраженный в словах "каждый 80-й такт будет использоваться"

 

Входной сигнал, подаваемый на АЦП, у Вас с какой полосой ? случайно не короткие импульсы ?

импульсы не короткие, полоса 500kHz - 1200kHz

В текущей версии работает AD9444

как тактировать AD7760 - только начал разбираться

MCLK от FPGA, рабочий режим - 2.4 MSPS

может буду использовать ADS1675 - у него есть START

Share this post


Link to post
Share on other sites
может буду использовать ADS1675 - у него есть START
а чем SТART лучше SYNC (у AD7760) . То же самое барахло, надо ждать порядка 12-14 мкс после него до появления адекватных данных на выходе. 12 мкс определяются полосой вашего сигнала через установки фильтров внутри АЦП (табл 6 даташита)

 

В текущей версии работает AD9444
неплохой выбор, непонятно чем он вас не устраивает.

 

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

Share this post


Link to post
Share on other sites

да, согласен, что из 24 бит - 6-7 младших будут "шумящими"

поэтому скорее всего остановлюсь на AD7960 - 18-Bit, 5 MSPS PULSAR® Differential ADC

а умножение частоты придется делать внутри Kintex-7

Share this post


Link to post
Share on other sites
да, согласен, что из 24 бит - 6-7 младших будут "шумящими"

из 24 шумящими будут 10 разрядов - к бабке не ходи. При выбранной полосе до 2 МГц (4000 kSps) для ADS1675 (см табл 1 стр 16 даташита - последняя строчка по вашим хотелкам полосы) и это в идеальном случае входных цепей.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this