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

 
 
 
Reply to this topicStart new topic
> Как изменить скважность, Совет нужен...
alexPec
сообщение Aug 2 2011, 13:24
Сообщение #1


Профессионал
*****

Группа: Свой
Сообщений: 1 284
Регистрация: 9-04-06
Пользователь №: 15 968



Всем добрый день. Задача такая: есть генератор (дифференциальный), чистый, с малым фазовым шумом. Он генерит импульсы LVDS со скважностью 50/50. Надо изменить эту скважность с пропорцией примерно 80/20. Суть такая. Генератор фронтом импульса защелкивает в УВХ АЦП входное значение сигнала, поэтому важно сохранить момент фронта импульса. Спад импульса может по времени гулять в пределах 80 +/- 10..15% периода. В устройстве есть ПЛИС, логично конечно завести генератор туда, а там встроенным PLL сформировать что нужно с любой пропорцией, но фазовый шум фронта выходных импульсов с PLL ни в какие ворота не лезет. Что посоветуют гуру?

Заранее благодарен.
Go to the top of the page
 
+Quote Post
theBMV
сообщение Aug 2 2011, 16:31
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 131
Регистрация: 14-10-08
Из: г. Королев
Пользователь №: 40 940



Быть может RS-триггер, а кондёром подобрать скважность...

Go to the top of the page
 
+Quote Post
alexPec
сообщение Aug 2 2011, 17:01
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 284
Регистрация: 9-04-06
Пользователь №: 15 968



Цитата(theBMV @ Aug 2 2011, 20:31) *
Быть может RS-триггер, а кондёром подобрать скважность...

Так после триггера уже грязный фронт будет - питание пульсирует, порог срабатывания меняется и все, приехали.
Go to the top of the page
 
+Quote Post
DK64
сообщение Aug 2 2011, 18:54
Сообщение #4


Участник
*

Группа: Свой
Сообщений: 64
Регистрация: 4-02-06
Пользователь №: 13 996



Думаю можно ипользовать для этого IODELAYE1 (Xilinx Virtex6) или что-то подобное в других FPGA. В отличие от PLL не добавляет джиттер - для сигналов типа CLK, а только заданную калиброванную задержку. Более подробно работа описана в datasheet.
Go to the top of the page
 
+Quote Post
тау
сообщение Aug 2 2011, 19:37
Сообщение #5


.
******

Группа: Участник
Сообщений: 2 424
Регистрация: 25-12-08
Пользователь №: 42 757



Цитата(alexPec @ Aug 2 2011, 17:24) *
Суть такая. Генератор фронтом импульса защелкивает в УВХ АЦП входное значение сигнала, поэтому важно сохранить момент фронта импульса. Спад импульса может по времени гулять в пределах 80 +/- 10..15% периода.

обычно АЦП хочет иметь на входе 50/50% . Если имеется чистый клок с такой скважностью- почему бы его не подать на тактирование АЦП ?

Зачем подавать на АЦП импульс с нестабильным во времени " +/- 10..15% периода" спадом если можно без этого обойтись ? А в том месте где нужна задержка на 20% от периода (надеюсь что это уже не АЦП) , там поставить просто линию задержки например, или любой подходящий формирователь .

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

Сообщение отредактировал тау - Aug 2 2011, 19:38
Go to the top of the page
 
+Quote Post
alexPec
сообщение Aug 2 2011, 21:02
Сообщение #6


Профессионал
*****

Группа: Свой
Сообщений: 1 284
Регистрация: 9-04-06
Пользователь №: 15 968



Цитата(тау @ Aug 2 2011, 23:37) *
обычно АЦП хочет иметь на входе 50/50% . Если имеется чистый клок с такой скважностью- почему бы его не подать на тактирование АЦП ?

Зачем подавать на АЦП импульс с нестабильным во времени " +/- 10..15% периода" спадом если можно без этого обойтись ? А в том месте где нужна задержка на 20% от периода (надеюсь что это уже не АЦП) , там поставить просто линию задержки например, или любой подходящий формирователь .

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


АЦП AD7356, привожу картинку работы. В доке написано выборка производится по спаду CS (перепутал, написал по фронту в предыдущих постах). Так вот этот спад надо и стабильным (во времени) сделать, т.е. с малым джитером. SCLK пойдет однозначно с ПЛИС, там можно и гряззный клок. В общем спад такой есть, НО если он (АЦП) обнаружит фронт CS раньше 10 клоков SCLK (а при скважности CS 50/50 так и будет) он уходит в power-down, а это мне не надо, а если формировать фронт CS после 10-го клока SCLK то получается скважность CS должна быть примерно 20/80. Т.е. когда CS уйдет в 1 неважно, лишь бы после 10-го клока, а вот переход в ноль определяет момент выборки.

Цитата
Думаю можно ипользовать для этого IODELAYE1 (Xilinx Virtex6) или что-то подобное в других FPGA. В отличие от PLL не добавляет джиттер - для сигналов типа CLK, а только заданную калиброванную задержку. Более подробно работа описана в datasheet.


Через ПЛИС пускать чистый клок - сразу все погубить. Проверено. Пускал чистый клок скважностью 50/50 просто НАПРЯМУЮ через ПЛИС, т.е. использовались входной буфер, линия связи, выходной буфер. Как только в плисине начинает что-то работать, все, конец, джитер клока вылетает далеко за рамки дозволенного. Видимо из-за того что порог срабатывания элементов прыгает. Соединил проводом мимо ПЛИС (а не через ПЛИС внутри) - до неприличия красивый сигнал, все ОК.

Есть такая идея, покритикуйте:

взять у техаса логический элемент AND (один в корпусе SC70), повесить на его питание фильтр с хорошим керамическим конденсатором (чтоб порог срабатывания от питания не прыгал), чистый клок пустить через него и гейтить его плисиной. Суть такая: изначально выставляем на выходе ПЛИС лог.1 (он же вход AND2), поэтому как только клок на втором входе AND перейдет в ноль, на выходе тоже появится ноль - получаем "чистый" спад. Детектим этот спад плисиной, как только появился - на входе AND выставляем 0 (т.е. выход AND в 1 уже не перейдет при переходе чистого клока в 1), генерим 14 клоков, считываем данные, выставляем на входе AND 1. К этому времени чистый клок на втором входе AND уже будет в 1 и на выходе почаем грязный переход из 0 в 1. Дальше по циклу.
Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
DS
сообщение Aug 4 2011, 18:36
Сообщение #7


Гуру
******

Группа: СуперМодераторы
Сообщений: 3 096
Регистрация: 16-01-06
Из: Москва
Пользователь №: 13 250



CS совершенно не обязан быть с малым джиттером. Он только по времени должен правильно выставляться относительно клока. По сему - клок заводится и на АЦП и на ПЛИС, в ПЛИСе спокойно формируется CS (стробированием по соответствующему фронту клока). Идея возиться со скважностью изначально порочна в этом случае.


--------------------
Не бойтесь тюрьмы, не бойтесь сумы, не бойтесь мора и глада, а бойтесь единственно только того, кто скажет - "Я знаю как надо". А. Галич.
Go to the top of the page
 
+Quote Post
alexPec
сообщение Aug 5 2011, 07:36
Сообщение #8


Профессионал
*****

Группа: Свой
Сообщений: 1 284
Регистрация: 9-04-06
Пользователь №: 15 968



Цитата(DS @ Aug 4 2011, 22:36) *
CS совершенно не обязан быть с малым джиттером. Он только по времени должен правильно выставляться относительно клока. По сему - клок заводится и на АЦП и на ПЛИС, в ПЛИСе спокойно формируется CS (стробированием по соответствующему фронту клока). Идея возиться со скважностью изначально порочна в этом случае.

Так выборка сигнала производится не по клоку, а по CS. А мне надо именно производить выборку через одинаковые интервалы времени, а не считывать данные с АЦП через одинаковые интервалы. Поэтому CS (а точнее спад CS) как раз обязан быть с малым джитером. А если я CS выведу из ПЛИС, я уже писал, это все погубит.
Go to the top of the page
 
+Quote Post
ledum
сообщение Aug 5 2011, 09:35
Сообщение #9



******

Группа: Участник
Сообщений: 3 650
Регистрация: 1-02-09
Из: Киев
Пользователь №: 44 237



Цитата(alexPec @ Aug 5 2011, 10:36) *
Так выборка сигнала производится не по клоку, а по CS.

ИМХО Вы все правильно написали. Хотя я бы поставил одногейтовый триггер с подачей чистого клока на вход С, а сброс или установка (что более для Вас удобно) с плисины после отсчета ею 14+ SCLK. Что не очень от Вашего отличается. Хотя смотря что оцифровываете. Может джиттер ПЛИС уже не столь страшен. Если там, скажем, первый Найквист при 5МГц оцифровки и 12 бит

Сообщение отредактировал ledum - Aug 5 2011, 09:41
Go to the top of the page
 
+Quote Post
тау
сообщение Aug 5 2011, 10:10
Сообщение #10


.
******

Группа: Участник
Сообщений: 2 424
Регистрация: 25-12-08
Пользователь №: 42 757



Цитата(alexPec @ Aug 3 2011, 01:02) *
АЦП AD7356,
....
Через ПЛИС пускать чистый клок - сразу все погубить. Проверено. Пускал чистый клок скважностью 50/50 просто НАПРЯМУЮ через ПЛИС, т.е. использовались входной буфер, линия связи, выходной буфер. Как только в плисине начинает что-то работать, все, конец, джитер клока вылетает далеко за рамки дозволенного. Видимо из-за того что порог срабатывания элементов прыгает. Соединил проводом мимо ПЛИС (а не через ПЛИС внутри) - до неприличия красивый сигнал, все ОК.

В таких SAR ADC чистый клок не нужен. Спад CS важен и то не всегда. Вот у нас есть пара проектов подобных на 16 разрядных SAR ADC, с полосой сигнала до 300 кГц , там и CS и CLK идут с плисин и ......всё великолепно просто.
То что у вас там с плисовским клоком возникли проблемы - есть какая то другая причина , нежели джиттер.
Для хорошего джиттера по CS (например вам это сильно надо из за высокой зоны найквиста) просто пропустите его через отдельный D-триггер , тактируемый чистым клоком и все будет хорошо.
Ledum прав.

ps / вот вы писали вначале "Он генерит импульсы LVDS со скважностью 50/50. Надо изменить эту скважность с пропорцией примерно 80/20" тут у Вас путаница - клоки это одно , их скважность не надо менять, а CS идет с понижением частоты относительно клока, там любая скважность может быть образована чем угодно, да хоть плисиной. Только почистить при необходимости, что возможно и не надо , имхо. причина , из-за чего у вас "все погубилось" джиттером клока - неясна. Клок не защелкивает данные в УВХ вашего АЦП, это делает CS
Цитата
The CS signal initiates the data transfer and conversion process.


Сообщение отредактировал тау - Aug 5 2011, 10:26
Go to the top of the page
 
+Quote Post
ledum
сообщение Aug 5 2011, 11:35
Сообщение #11



******

Группа: Участник
Сообщений: 3 650
Регистрация: 1-02-09
Из: Киев
Пользователь №: 44 237



Под клоком я имел ввиду меандр CS, думаю и ТС об этом говорил. SCLK чисто вспомогательный сигнал я его даже не рассматриваю - его как раз можно в ПЛИС ФАПом получить.
Это просто ремарка.

Сообщение отредактировал ledum - Aug 5 2011, 11:42
Go to the top of the page
 
+Quote Post
alexPec
сообщение Aug 5 2011, 15:36
Сообщение #12


Профессионал
*****

Группа: Свой
Сообщений: 1 284
Регистрация: 9-04-06
Пользователь №: 15 968



Цитата(ledum @ Aug 5 2011, 13:35) *
ИМХО Вы все правильно написали. Хотя я бы поставил одногейтовый триггер с подачей чистого клока на вход С, а сброс или установка (что более для Вас удобно) с плисины после отсчета ею 14+ SCLK. Что не очень от Вашего отличается. Хотя смотря что оцифровываете. Может джиттер ПЛИС уже не столь страшен. Если там, скажем, первый Найквист при 5МГц оцифровки и 12 бит


Вот то что я хотел услышать - значит направление мысли верное, спасибо. А джитер плис страшен - это демодуляция OFDM и джитер плис при оцифровке здесь сказывается так же как фазовый шум в модуляторе - соседние бины спектра склеиваются при джитере больше 50..100ps.

Цитата
Под клоком я имел ввиду меандр CS, думаю и ТС об этом говорил.


Именно так!

Спасибо всем участвовашим в дискуссии, все что хотел -услышал, осталось проверить теорию на практике!
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 18th July 2025 - 10:53
Рейтинг@Mail.ru


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