|
|
  |
АЦП ADS42LB49/69, QDR режим, как использовать FRAME |
|
|
|
Feb 10 2016, 10:17
|
Знающий
   
Группа: Свой
Сообщений: 756
Регистрация: 14-08-07
Из: Москва
Пользователь №: 29 765

|
Цитата(GAYVER @ Feb 10 2016, 10:40)  так в том то и дело что в юзер гайде на АЦП с последней ревизией в сентябре 2013 я ничего дельного на эту тему не нашел. кроме этой диаграммы и описания пина: DAFRAMEP, DAFRAMEM — Differential frame clock output for channel A user guide я даже не смотрел. В документе http://www.ti.com/lit/ds/symlink/ads42lb49.pdf на страницах 31-33, 41-43 приведено достаточное количество картинок для понимания работы интерфейса. Если этого не хватает, то можно например посмотреть аналогичные АЦП с подобным интерфейсом, работаю они также.
|
|
|
|
|
Feb 10 2016, 12:16
|
Частый гость
 
Группа: Свой
Сообщений: 139
Регистрация: 3-04-13
Пользователь №: 76 333

|
Цитата(Алга @ Feb 10 2016, 14:11)  Подозреваю, что у Altera может быть эти калибровки идут постоянно, динамически подстраиваясь под изменения температуры, питания и тд. Tе динамическая подстройка то же самое я и делал, только для ддр режима у ацп-ки. при этом xapp-ы не читал  . первоначальная подстройка по включению питания, плюс возможность подстройки в любой момент - только дернуть соответствующую ногу у моего контроллера. а ее можно было дернуть при определенном значении температуры (контроллер под внешний температурный датчик тоже я делал  ), либо же блок управления мог по таймеру или по еще какому прерыванию это сделать. а вот с qdr-ом что то затупил - и кристалл поменялся и требования повыше...
|
|
|
|
|
Feb 12 2016, 13:55
|
Частый гость
 
Группа: Свой
Сообщений: 139
Регистрация: 3-04-13
Пользователь №: 76 333

|
Цитата(Timmy @ Feb 11 2016, 12:07)  Подстройка выравнивания клока и данных может выполняться непрерывно, для этого клоковый вход подключается к SERDES, как обычная линия данных, и тактируется собой же через IDELAY, в аппнотах это описано подробно. только я не соображу как потом распределяются эти частоты. задача - собрать данное на ИСЕРДЕСЕ в режиме MEMORY Interface Type. На ИСЕРДЕСЕ клоки ЦЛК, ОЦЛК, ЦЛКДИВ. Соответственно как я понимаю: ДЦЛК = ЦЛК BitClk_MonClkOut = ОЦЛК BitClk_RefClkOut = ЦЛКДИВ в этом случае выполняются все требования - фронты ЦЛК и ОЦЛК разнесены и не получится попадания на момент переключения, и ОЦЛК с ЦЛКДИВом выровнены по фазе. вот только не знаю - можно ли с выхода ЛВДС буфера так растянуть нетку на ИОДЕЛЕЙ, ИСЕРДЕС (Д вход в этом же пине) и как синхру на ИСЕРДЕС в другом пине
Эскизы прикрепленных изображений
|
|
|
|
|
Feb 19 2016, 06:08
|
Частый гость
 
Группа: Свой
Сообщений: 139
Регистрация: 3-04-13
Пользователь №: 76 333

|
Цитата(Timmy @ Feb 13 2016, 11:23)  А зачем тянуть выход LVDS буфера прямо на синхру? Все линии данных синхронизируются по BitClk_MonClkOut и BitClk_RefClkOut, в XAPP-ах же исходники есть. уже разобрались. хилинх предполагает что ДЦЛК и данные уже выровнены (фронт синхры посередине данных) и подстраивает внутрянку с буферов под входную, предполагая что тогда и она будет посередине данного. этот вариант не подходит - синхру с данными надо ровнять вручную
|
|
|
|
|
Feb 19 2016, 06:48
|
Профессионал
    
Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539

|
Цитата(Алга @ Feb 10 2016, 14:11)  Нет, Altera похоже автоматизировала этот процесс, ее ядро. Значит ALTERA здесь лучше подумала. У Xilinx этот процесс калибровки не автоматизирован- делай сам вручную! О чем я и пишу. Твой самопальный автомат (или заимствованный из какого-нибудь проекта) будет делать эти калибровки.
Подозреваю, что у Altera может быть эти калибровки идут постоянно, динамически подстраиваясь под изменения температуры, питания и тд. Tе динамическая подстройка Так и не понял, что Вы тут хотели сказать? Ядро SelectIO Interface Wizard работает по тому же принципу, что и ALTLVDS_RX у Altera. Порт bitslip используется для битового сдвига данных, чтобы получить правильное выравнивание. Если битовым сдвигом не удаётся получить правильные данные, то можно ставить задержки на линии "клока" и данных. Автомат будет определять выравнены ли данные и управлять сдвигом данных (о чём я и спрашивал).
|
|
|
|
|
Feb 19 2016, 08:27
|
Частый гость
 
Группа: Свой
Сообщений: 116
Регистрация: 29-12-04
Пользователь №: 1 739

|
Цитата(doom13 @ Feb 19 2016, 10:48)  Так и не понял, что Вы тут хотели сказать? Ядро SelectIO Interface Wizard работает по тому же принципу, что и ALTLVDS_RX у Altera. Порт bitslip используется для битового сдвига данных, чтобы получить правильное выравнивание. Если битовым сдвигом не удаётся получить правильные данные, то можно ставить задержки на линии "клока" и данных. Автомат будет определять выравнены ли данные и управлять сдвигом данных (о чём я и спрашивал). Ядро SelectIO Interface Wizard состоит только из примитивов ISERDESE IDELAY, которыми надо управлять внешними сигналами BITSLIP и задержками. Те строится внешний автомат калибровок. Он не входит в состав ядра. С Aлтерой я не работал. Если здесь ядро похоже сделано то грустно.
|
|
|
|
|
Feb 21 2016, 08:48
|
Частый гость
 
Группа: Свой
Сообщений: 116
Регистрация: 29-12-04
Пользователь №: 1 739

|
Цитата(doom13 @ Feb 10 2016, 11:40)  Для Altera всё понятно, там есть готовое ядро ALTLVDS_RX для приёма таких данных. Есть ли что-то похожее у Xilinx? Или придётся делать свой приёмник? Уточните, пожалуйста, у Алтеры полностью готовое ядро или "болванка", к которой необходим дополнительный внешний автомат калибровок (state mashine).
|
|
|
|
|
May 2 2016, 11:55
|
Профессионал
    
Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539

|
Цитата(Алга @ Feb 10 2016, 13:06)  Собрать это ядро не проблема, прочитав xapp'ы. Можно пользоваться этим ядром, но он без автоматов. Автоматы все равно надо создавать. Это так в ISE. Цитата(GAYVER @ Feb 19 2016, 09:08)  уже разобрались. хилинх предполагает что ДЦЛК и данные уже выровнены (фронт синхры посередине данных) и подстраивает внутрянку с буферов под входную, предполагая что тогда и она будет посередине данного. этот вариант не подходит - синхру с данными надо ровнять вручную Цитата(Timmy @ Feb 20 2016, 00:07)  Если синхра с данными не выровнена из-за несогласованной длины дорожек, надо в каждый вход вставить IDELAY, откалибровать их всех на старте, а потом динамически выравнивать только клок и данные, таким же образом, как предлагает Xilinx. Если можно, расскажите алгоритм работы автомата калибровки (предполагаем, что линии данных и клока могут иметь разную длину).
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|