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

 
 
 
Reply to this topicStart new topic
> Идеи по приему данных с 4-бит интерфейса
ataradov
сообщение May 9 2017, 06:53
Сообщение #1


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

Группа: Участник
Сообщений: 1 014
Регистрация: 8-01-07
Из: San Jose, CA
Пользователь №: 24 202



Собираются идеи по приему данных с интерфейса:
1. 4 бита и клок. При этом данные выставляются по фронту и спаду клока (DDR).
2. Максимальная частота клока - 150 МГц, но если не получится, то можно до 100 МГц опустить, но не желательно.
3. Нужно опционально двигать линии данных в пределах 1-10 нс, с шагом 1-2 нс.

Для пункта 3 пока что рассматриваются любые варианты, даже не рекомендуемые для широкого применения, типа задержки на внутренней логике. Внешние решения тоже рассматриваются, только не линии задержки за $10 / канал.

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

После приема ПЛИС будет восстанавливать из этого байтовый поток, выполнять простую фильтрацию и передавать все это на внешний интерфейс. Сильно много ресурсов для этого не нужно, так что чем дешевле решение, тем лучше.

Идеи?

Сообщение отредактировал ataradov - May 9 2017, 06:55
Go to the top of the page
 
+Quote Post
Anton1990
сообщение May 9 2017, 08:14
Сообщение #2


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

Группа: Участник
Сообщений: 155
Регистрация: 26-04-12
Пользователь №: 71 584



Цитата(ataradov @ May 9 2017, 09:53) *
Собираются идеи по приему данных с интерфейса:
1. 4 бита и клок. При этом данные выставляются по фронту и спаду клока (DDR).
2. Максимальная частота клока - 150 МГц, но если не получится, то можно до 100 МГц опустить, но не желательно.
3. Нужно опционально двигать линии данных в пределах 1-10 нс, с шагом 1-2 нс.

Для пункта 3 пока что рассматриваются любые варианты, даже не рекомендуемые для широкого применения, типа задержки на внутренней логике. Внешние решения тоже рассматриваются, только не линии задержки за $10 / канал.

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

После приема ПЛИС будет восстанавливать из этого байтовый поток, выполнять простую фильтрацию и передавать все это на внешний интерфейс. Сильно много ресурсов для этого не нужно, так что чем дешевле решение, тем лучше.

Идеи?


А в чем проблема? частота 150 МГц довольно низнакая (я реально принимал 250 МГц 14 бит с АЦП). Разрядность невысокая. Выравнивание можно и даже нужно замутить на встроенных блоках задержки (если Xilinx). Так что проблем быть не должно если конечно плата разведена более или менее нормально.
Go to the top of the page
 
+Quote Post
aT-DeviLru
сообщение May 9 2017, 11:32
Сообщение #3


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

Группа: Свой
Сообщений: 106
Регистрация: 11-11-10
Из: Санкт-Петербург
Пользователь №: 60 826



Посмотрите application note от Xilinx: xapp524,xapp855,xapp856,xapp860,xapp866,xapp585,xapp774,xapp1064,xapp1071,
потом можно поискать поиском по форуму по названиям xapp-ов, было уже множество тем с разбором приёма такого типа данных.
Даже статья на хабре есть - https://habrahabr.ru/post/313692/
Go to the top of the page
 
+Quote Post
Александр77
сообщение May 9 2017, 12:24
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 608
Регистрация: 10-07-09
Из: Дубна, Московская область
Пользователь №: 51 111



Цитата(ataradov @ May 9 2017, 09:53) *
3. Нужно опционально двигать линии данных в пределах 1-10 нс, с шагом 1-2 нс.

Для пункта 3 пока что рассматриваются любые варианты, даже не рекомендуемые для широкого применения, типа задержки на внутренней логике. Внешние решения тоже рассматриваются, только не линии задержки за $10 / канал.

Выравнивание данных осуществляется пользователем "на глаз" по приему тестовых последовательностей, так что абсолютная точность задержки не важна, нужна просто возможность подвигать все относительно клока.
Идеи?

Если альтера, то прямо для Вас
Go to the top of the page
 
+Quote Post
ataradov
сообщение May 10 2017, 03:26
Сообщение #5


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

Группа: Участник
Сообщений: 1 014
Регистрация: 8-01-07
Из: San Jose, CA
Пользователь №: 24 202



Спасибо всем, буду читать аппноты. Проблема тут одна - я нуб с ПЛИС, поэтому думаю в терминах стандартной логики, и спец. блоки упустил из виду.

К стати, этот форум не доступен из внутренней сети Microchip, так как домен помечен как зловредный в OpenDNS.
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение May 10 2017, 07:06
Сообщение #6


Гуру
******

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



вроде бы внутренние блоки задержки такую дискретность 1-2 нс не дадут.
Возможно придется городить что-то типа сетки частот со сдвигами и выбирать по какой из них щелкать данные для каждого бита, а потом через фифо пересинхронизировать.


не наврал, дадут дискретность даже лучше.
Go to the top of the page
 
+Quote Post
GAYVER
сообщение May 22 2017, 12:29
Сообщение #7


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

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



Цитата(Anton1990 @ May 9 2017, 11:14) *
А в чем проблема? частота 150 МГц довольно низнакая (я реально принимал 250 МГц 14 бит с АЦП). Разрядность невысокая. Выравнивание можно и даже нужно замутить на встроенных блоках задержки (если Xilinx). Так что проблем быть не должно если конечно плата разведена более или менее нормально.


встроенные блоки задержки дают максимальную задержку в 2-3 наны. 32 тапа по (кажись) 80 пикосекунд

когда то собирал модуль автоподстройки данных от ацп для ддр и кюдр интерфейсов. но там черт ногу сломит в коде ))). да и не помню уже особо тонкостей логики функционирования

автору смотреть юзер гайды по ISERDESE b IODELAY
Go to the top of the page
 
+Quote Post

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

 


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


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