|
Cдвиг частоты на 500 ps, Spartan6, как получить? |
|
|
|
Feb 25 2014, 11:46
|
Группа: Участник
Сообщений: 11
Регистрация: 25-02-14
Пользователь №: 80 677

|
Здравствуйте, уважаемые коллеги. Стоит такая задача. Система формирует частоту 50 МГц для АЦП, которую к тому же надо сдвигать с шагом 500 ps (всего 40 сдвигов на период 20 нс). Либо система должна держать эту частоту, но с такой же задержкой (40 сдвигов) формировать импульс. Длительность же импульса программируемая, с шагом 5 ns. Пытался задействовать функцию "PhaseShifter" в DCM (который позволяет сдвигать выходную частоту, в зависимости от количества поступивших в него импульсов), там можно перестроить фазу частоты на выходе, с определенным шагом ( у меня получался 1 шаг = 28-30 ps). Поначалу даже все получилось, но оказалось, что со сменой партии микросхем шаг может изменится, не намного, 1-2 ps, но может. Получается что для каждой серии микросхем надо задавать новую таблицу (количество нужных шагов у меня задается таблицой), что несовсем удобно. В даташите на Spartan6 ("ds162" стр. 60) также написано "DCM_DELAY_STEP (Finest delay resolution, averaged over all steps) - 10...40 ps. A typical delay step size is 23 ps." Шаг от 10 до 40 ps. - очень большой разброс.
Как еще можно добиться "надежного" сдвига в 500 ps.
Спасибо.
|
|
|
|
|
Feb 25 2014, 16:06
|
Местный
  
Группа: Свой
Сообщений: 462
Регистрация: 20-01-06
Пользователь №: 13 399

|
Цитата(boul @ Feb 25 2014, 14:46)  Как еще можно добиться "надежного" сдвига в 500 ps. Ну частоту 2GHz вы очевидно в кристалле не получите. Значит сделайте грубые и точные шаги. Какой частоты достигните в кристалле? 300-400МНz? Эта частота определит грубую сетку. Точную сетку добейте лог. примитивами.
|
|
|
|
|
Feb 25 2014, 17:54
|
Профессионал
    
Группа: Свой
Сообщений: 1 214
Регистрация: 23-12-04
Пользователь №: 1 643

|
Приветствую! Цитата(SM @ Feb 25 2014, 19:11)  в общем, в ПЛИС, никак, чтобы с такой точностью Ну зачем так категорично. Например берем и запускаем мультигигабит трансивер на 2 GHz без всякого 8/10 кодирования, соответственно меня последовательность байт на входе трансивера можно управлять "фазой" и "скважностью" выходного сигнала и с шагом точно 500 ps.  Однако вот абсолютная задержка относительно входной референтной частоты будет также зависит от температуры и вольтажа. Чтобы уменьшить это вредное влияние враждебной среды можно формировать таким образом 2 выхода - один из которых будет работать опорным, а второй с изменяемой задержкой относительно первого. 2 boul Вы бы объяснили более полно зачем Вам такое нужно. Тогда было бы легче давать Вам вредные советы. Мне вот так кажется что Вы мил человек пытаетесь стробоскопический режим для АЦП сварганить. Тогда я думаю проще поискать внешнюю мс регулируемой задержки которая бы обеспечивала требуемые точности. Успехов! Rob.
|
|
|
|
|
Feb 26 2014, 07:42
|
Группа: Участник
Сообщений: 11
Регистрация: 25-02-14
Пользователь №: 80 677

|
Объясню зачем мне это нужно. Проект - оптический рефлектометр. Запускается импульс лазера в оптоволокно и измеряется отражение в линии. При дескретизации 20 нс будем иметь сетку 2 метра (свет он довольно быстрый), а минимальный шаг должен быть 5 см, т.е. в 40 раз меньше, поэтому и нужно 20 нс разбить на 40 частей. Тут есть 2 варианта: клок АЦП стоит на месте, а двигается импульс запуска с шагом 500 пс, либо наоборот - запуск на месте, двигается клок.
это вы плисину еще не грели и не морозили sm.gif
и морозил и грел. Да, клок относительно импульса немного уходил, приходилось добавлять вентили (инвертены на лутах) в цепь формирования импульса и говорить синтезатору чтобы не оптимизировал. И все было нормально. Но в итоге возникла проблема, которую я описал.
И еще одна проблема, возможно связанная с разводкой платы, боролись долго, но пока безрезультатно. Когда работает модуль сдвига фазы в DCM, но сильно фонит на аналоговую часть, ту которая стоит до АЦП, что увеличивает шумы, один из ключевых параметров для рефлектометра. Отключил эту схему и все стало хорошо.
|
|
|
|
|
Feb 26 2014, 07:48
|
Знающий
   
Группа: Свой
Сообщений: 802
Регистрация: 11-05-07
Из: Томск
Пользователь №: 27 650

|
Цитата(boul @ Feb 26 2014, 14:42)  Объясню зачем мне это нужно. Проект - оптический рефлектометр. Запускается импульс лазера в оптоволокно и измеряется отражение в линии. При дескретизации 20 нс будем иметь сетку 2 метра (свет он довольно быстрый), а минимальный шаг должен быть 5 см, т.е. в 40 раз меньше, поэтому и нужно 20 нс разбить на 40 частей. Тут есть 2 варианта: клок АЦП стоит на месте, а двигается импульс запуска с шагом 500 пс, либо наоборот - запуск на месте, двигается клок.
это вы плисину еще не грели и не морозили sm.gif
и морозил и грел. Да, клок относительно импульса немного уходил, приходилось добавлять вентили (инвертены на лутах) в цепь формирования импульса и говорить синтезатору чтобы не оптимизировал. И все было нормально. Но в итоге возникла проблема, которую я описал.
И еще одна проблема, возможно связанная с разводкой платы, боролись долго, но пока безрезультатно. Когда работает модуль сдвига фазы в DCM, но сильно фонит на аналоговую часть, ту которая стоит до АЦП, что увеличивает шумы, один из ключевых параметров для рефлектометра. Отключил эту схему и все стало хорошо. Я конечно дико извиняюсь, но ... использовать АЦП с приемлемой частотой дискретизации (2ГГц в вашем случае) религия не позволяет?
|
|
|
|
|
Feb 26 2014, 07:59
|
Группа: Участник
Сообщений: 11
Регистрация: 25-02-14
Пользователь №: 80 677

|
Цитата(Джеймс @ Feb 25 2014, 18:06)  Ну частоту 2GHz вы очевидно в кристалле не получите. Значит сделайте грубые и точные шаги. Какой частоты достигните в кристалле? 300-400МНz? Эта частота определит грубую сетку. Точную сетку добейте лог. примитивами. Да, я думал об этом. У меня есть 200МГц, по которым я формирую импульс запуска с шагом 5 нс. Но получается уж очень сложная схема. Синхронизация от фронта импульса, 4 импульса клока, в каждом из которых надо на примитивах сделать 10 задержек. Тут я абсолютно не уверен что можно получить 500 пс или близкую к ней, будет например 400 пс или 600 на одном луте. И в добавок ко всему на выходе большой мультиплексор 40/1, который тоже даст непонятный перекос фаз. Ну или каскад мультиплексоров для меньшего перекоса. Все это, конечно, надо будет привязать в Floorplanner чтобы при новой раскладке все не разъехалось. Цитата(Bad0512 @ Feb 26 2014, 09:48)  Я конечно дико извиняюсь, но ... использовать АЦП с приемлемой частотой дискретизации (2ГГц в вашем случае) религия не позволяет? Да именно религия. У нас портативное устройство на батарейках, соответственно первый параметр - время автономной работы, прибор должен работать многие часы, а не минуты.
|
|
|
|
|
Feb 26 2014, 08:14
|
Знающий
   
Группа: Свой
Сообщений: 802
Регистрация: 11-05-07
Из: Томск
Пользователь №: 27 650

|
Цитата(boul @ Feb 26 2014, 14:59)  Да именно религия. У нас портативное устройство на батарейках, соответственно первый параметр - время автономной работы, прибор должен работать многие часы, а не минуты. Ну тогда у вас только один путь - использовать внешние линии задержки.На этом пути тоже немало разных граблей разложено (типа выравнивания усиления аналоговых каналов и пр.) . Но на ПЛИС _стабильные_ задержки вам получить не удастся. Всё будет сильно плавать от температуры, партии микросхем, напряжения питания и т.д. Можно ситуацию улучшить калибровкой, но это во-первых достаточно сложно, а во-вторых не во всех случаях можно использовать - зависит от применения.
|
|
|
|
|
Feb 27 2014, 12:52
|
Местный
  
Группа: Участник
Сообщений: 230
Регистрация: 29-08-09
Пользователь №: 52 094

|
Цитата(boul @ Feb 25 2014, 15:46)  Как еще можно добиться "надежного" сдвига в 500 ps. Подтверждаю слова вышеотписавшихся товарищей - стабильные задержки вы на tap-ах не получите, они не для этого предназначены. Единственный вариант (помимо чисто внешних задержек) - это калибровка, но для неё всё равно нужен некий внешний опорный элемент или придумывать статистический вариант по аналогии с калибровкой, которая производится у Xilinx-а для SDRAM-интерфейсов (в MIG-е).
Сообщение отредактировал o_khavin - Feb 27 2014, 13:36
|
|
|
|
|
Feb 28 2014, 08:28
|
Гуру
     
Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881

|
В MachXO2 Tdly = 250 ps, не пойдет. У LattidceXP2 там 16 шагов по 22.5 градусов фазы, тоже маловато будет. Хотя пишут, что для клока в 420 МГц удается получить 32 шага по 70 ps (с использованием WRDEL), но, как бы, тоже маловато будет. У ECP3 есть одновременно и то и это, но там tPA (Tdly по machxo2) 65...260 ps (!разброс!), а фаза с тем же шагом... В общем не катит
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|