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

 
 
3 страниц V  < 1 2 3 >  
Reply to this topicStart new topic
> АЦП ADS42LB49/69, QDR режим, как использовать FRAME
Алга
сообщение Feb 10 2016, 10:06
Сообщение #16


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

Группа: Свой
Сообщений: 116
Регистрация: 29-12-04
Пользователь №: 1 739



Собрать это ядро не проблема, прочитав xapp'ы. Можно пользоваться этим ядром, но он без автоматов.
Автоматы все равно надо создавать. Это так в ISE.



ИДЕЛАЙ и ИСЕРДЕС включить не особая проблема.

Важно к xapp' ам есть примеры проекта .zip файлы.

Сообщение отредактировал Алга - Feb 10 2016, 09:52
Go to the top of the page
 
+Quote Post
Ant_m
сообщение Feb 10 2016, 10:17
Сообщение #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 приведено достаточное количество картинок для понимания работы интерфейса. Если этого не хватает, то можно например посмотреть аналогичные АЦП с подобным интерфейсом, работаю они также.
Go to the top of the page
 
+Quote Post
doom13
сообщение Feb 10 2016, 10:31
Сообщение #18


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

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(Алга @ Feb 10 2016, 13:06) *
Собрать это ядро не проблема, прочитав xapp'ы. Можно пользоваться этим ядром, но он без автоматов.
Автоматы все равно надо создавать. Это так в ISE.

Что понимается под автоматом? Работал с ALTLVDS_RX от Altera, там АЦП необходимо загнать в режим синхронизации, кога на выход идёт тестовая последовательность. Автомат тактирует align порт ядра и задаёт правильное выравнивание (приём) данных, после чего АЦП переключается в рабочий режим. Тут также?
Go to the top of the page
 
+Quote Post
Алга
сообщение Feb 10 2016, 11:11
Сообщение #19


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

Группа: Свой
Сообщений: 116
Регистрация: 29-12-04
Пользователь №: 1 739



Нет,
Altera похоже автоматизировала этот процесс, ее ядро. Значит ALTERA здесь лучше подумала.
У Xilinx этот процесс калибровки не автоматизирован- делай сам вручную! О чем я и пишу.
Твой самопальный автомат (или заимствованный из какого-нибудь проекта) будет делать эти калибровки.

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

У Xilinx также имеется форум и поиск по ключевым словам iserdese, bitslip xapp585, и тд работает
Go to the top of the page
 
+Quote Post
GAYVER
сообщение Feb 10 2016, 12:16
Сообщение #20


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

Группа: Свой
Сообщений: 139
Регистрация: 3-04-13
Пользователь №: 76 333



Цитата(Алга @ Feb 10 2016, 14:11) *
Подозреваю, что у Altera может быть эти калибровки идут постоянно,
динамически подстраиваясь под изменения температуры, питания и тд. Tе динамическая подстройка


то же самое я и делал, только для ддр режима у ацп-ки. при этом xapp-ы не читал sm.gif. первоначальная подстройка по включению питания, плюс возможность подстройки в любой момент - только дернуть соответствующую ногу у моего контроллера. а ее можно было дернуть при определенном значении температуры (контроллер под внешний температурный датчик тоже я делал sm.gif), либо же блок управления мог по таймеру или по еще какому прерыванию это сделать. а вот с qdr-ом что то затупил - и кристалл поменялся и требования повыше...
Go to the top of the page
 
+Quote Post
Timmy
сообщение Feb 11 2016, 09:07
Сообщение #21


Знающий
****

Группа: Участник
Сообщений: 835
Регистрация: 9-08-08
Из: Санкт-Петербург
Пользователь №: 39 515



Цитата(GAYVER @ Feb 10 2016, 15:16) *
то же самое я и делал, только для ддр режима у ацп-ки. при этом xapp-ы не читал sm.gif. первоначальная подстройка по включению питания, плюс возможность подстройки в любой момент - только дернуть соответствующую ногу у моего контроллера. а ее можно было дернуть при определенном значении температуры (контроллер под внешний температурный датчик тоже я делал sm.gif), либо же блок управления мог по таймеру или по еще какому прерыванию это сделать. а вот с qdr-ом что то затупил - и кристалл поменялся и требования повыше...

Подстройка выравнивания клока и данных может выполняться непрерывно, для этого клоковый вход подключается к SERDES, как обычная линия данных, и тактируется собой же через IDELAY, в аппнотах это описано подробно.
Go to the top of the page
 
+Quote Post
GAYVER
сообщение Feb 12 2016, 13:55
Сообщение #22


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

Группа: Свой
Сообщений: 139
Регистрация: 3-04-13
Пользователь №: 76 333



Цитата(Timmy @ Feb 11 2016, 12:07) *
Подстройка выравнивания клока и данных может выполняться непрерывно, для этого клоковый вход подключается к SERDES, как обычная линия данных, и тактируется собой же через IDELAY, в аппнотах это описано подробно.


только я не соображу как потом распределяются эти частоты. задача - собрать данное на ИСЕРДЕСЕ в режиме MEMORY Interface Type. На ИСЕРДЕСЕ клоки ЦЛК, ОЦЛК, ЦЛКДИВ. Соответственно как я понимаю:
ДЦЛК = ЦЛК
BitClk_MonClkOut = ОЦЛК
BitClk_RefClkOut = ЦЛКДИВ

в этом случае выполняются все требования - фронты ЦЛК и ОЦЛК разнесены и не получится попадания на момент переключения, и ОЦЛК с ЦЛКДИВом выровнены по фазе.

вот только не знаю - можно ли с выхода ЛВДС буфера так растянуть нетку на ИОДЕЛЕЙ, ИСЕРДЕС (Д вход в этом же пине) и как синхру на ИСЕРДЕС в другом пине
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
Timmy
сообщение Feb 13 2016, 08:23
Сообщение #23


Знающий
****

Группа: Участник
Сообщений: 835
Регистрация: 9-08-08
Из: Санкт-Петербург
Пользователь №: 39 515



Цитата(GAYVER @ Feb 12 2016, 16:55) *
вот только не знаю - можно ли с выхода ЛВДС буфера так растянуть нетку на ИОДЕЛЕЙ, ИСЕРДЕС (Д вход в этом же пине) и как синхру на ИСЕРДЕС в другом пине

А зачем тянуть выход LVDS буфера прямо на синхру? Все линии данных синхронизируются по BitClk_MonClkOut и BitClk_RefClkOut, в XAPP-ах же исходники есть.
Go to the top of the page
 
+Quote Post
GAYVER
сообщение Feb 19 2016, 06:08
Сообщение #24


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

Группа: Свой
Сообщений: 139
Регистрация: 3-04-13
Пользователь №: 76 333



Цитата(Timmy @ Feb 13 2016, 11:23) *
А зачем тянуть выход LVDS буфера прямо на синхру? Все линии данных синхронизируются по BitClk_MonClkOut и BitClk_RefClkOut, в XAPP-ах же исходники есть.


уже разобрались. хилинх предполагает что ДЦЛК и данные уже выровнены (фронт синхры посередине данных) и подстраивает внутрянку с буферов под входную, предполагая что тогда и она будет посередине данного. этот вариант не подходит - синхру с данными надо ровнять вручную
Go to the top of the page
 
+Quote Post
doom13
сообщение Feb 19 2016, 06:48
Сообщение #25


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

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(Алга @ Feb 10 2016, 14:11) *
Нет,
Altera похоже автоматизировала этот процесс, ее ядро. Значит ALTERA здесь лучше подумала.
У Xilinx этот процесс калибровки не автоматизирован- делай сам вручную! О чем я и пишу.
Твой самопальный автомат (или заимствованный из какого-нибудь проекта) будет делать эти калибровки.

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

Так и не понял, что Вы тут хотели сказать?
Ядро SelectIO Interface Wizard работает по тому же принципу, что и ALTLVDS_RX у Altera. Порт bitslip используется для битового сдвига данных, чтобы получить правильное выравнивание. Если битовым сдвигом не удаётся получить правильные данные, то можно ставить задержки на линии "клока" и данных. Автомат будет определять выравнены ли данные и управлять сдвигом данных (о чём я и спрашивал).
Go to the top of the page
 
+Quote Post
Алга
сообщение Feb 19 2016, 08:27
Сообщение #26


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

Группа: Свой
Сообщений: 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лтерой я не работал. Если здесь ядро похоже сделано то грустно.
Go to the top of the page
 
+Quote Post
Timmy
сообщение Feb 19 2016, 21:07
Сообщение #27


Знающий
****

Группа: Участник
Сообщений: 835
Регистрация: 9-08-08
Из: Санкт-Петербург
Пользователь №: 39 515



Цитата(GAYVER @ Feb 19 2016, 09:08) *
уже разобрались. хилинх предполагает что ДЦЛК и данные уже выровнены (фронт синхры посередине данных) и подстраивает внутрянку с буферов под входную, предполагая что тогда и она будет посередине данного. этот вариант не подходит - синхру с данными надо ровнять вручную

Если синхра с данными не выровнена из-за несогласованной длины дорожек, надо в каждый вход вставить IDELAY, откалибровать их всех на старте, а потом динамически выравнивать только клок и данные, таким же образом, как предлагает Xilinx.
Go to the top of the page
 
+Quote Post
Алга
сообщение Feb 21 2016, 08:48
Сообщение #28


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

Группа: Свой
Сообщений: 116
Регистрация: 29-12-04
Пользователь №: 1 739



Цитата(doom13 @ Feb 10 2016, 11:40) *
Для Altera всё понятно, там есть готовое ядро ALTLVDS_RX для приёма таких данных. Есть ли что-то похожее у Xilinx? Или придётся делать свой приёмник?

Уточните, пожалуйста, у Алтеры полностью готовое ядро или "болванка", к которой необходим дополнительный
внешний автомат калибровок (state mashine).
Go to the top of the page
 
+Quote Post
doom13
сообщение Feb 22 2016, 06:33
Сообщение #29


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

Группа: Свой
Сообщений: 1 404
Регистрация: 11-03-11
Из: Минск, Беларусь
Пользователь №: 63 539



Цитата(Алга @ Feb 21 2016, 11:48) *
Уточните, пожалуйста, у Алтеры полностью готовое ядро или "болванка", к которой необходим дополнительный
внешний автомат калибровок (state mashine).

Необходим внешний автомат, только там нельзя ставить задержки на линии клока/данных, вместо этого есть возможность настраивать PLL, если битового сдвига недостаточно для правильного приёма данных
Go to the top of the page
 
+Quote Post
doom13
сообщение May 2 2016, 11:55
Сообщение #30


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

Группа: Свой
Сообщений: 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.

Если можно, расскажите алгоритм работы автомата калибровки (предполагаем, что линии данных и клока могут иметь разную длину).
Go to the top of the page
 
+Quote Post

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

 


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


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